Apple's Siri voices sound very natural and are great for learning.
demo.mov
Steps to set up:
| #!/usr/bin/env bash | |
| # Script to facilitate batched review of dependabot PRs | |
| # Change these values | |
| TITLE="Bump actions/checkout from 5 to 6" | |
| COMMENT="Breaking change is a new minimum Actions Runner version for Docker container action scenarios. Should not impact existing usage." | |
| gh search prs \ | |
| --state=open \ |
| ORG="nextstrain" | |
| repos=$(gh api --paginate \ | |
| -H "Accept: application/vnd.github+json" \ | |
| -H "X-GitHub-Api-Version: 2022-11-28" \ | |
| "/orgs/$ORG/repos?per_page=100" \ | |
| | jq -r '.[].name') | |
| declare -A hook_repos |
| import iso639 | |
| import json | |
| import langdetect | |
| import tiktoken | |
| REQUIRED_LANGUAGES = ["zh-cn"] | |
| # Minimum for required languages | |
| # Maximum for optional languages | |
| TOKENS_PER_LANGUAGE = 20 |
| Create a new file in the test's temp directory. | |
| $ cat newfile.txt | |
| cat: .*: No such file or directory (re) | |
| [1] | |
| $ echo "hello" > newfile.txt | |
| Create a new file in the test runner's temp directory (shared). | |
| $ cat "$TMP"/newfile.txt |
| // Paste in browser console and run | |
| async function deleteStaleBranches(delay=500) { | |
| var stale_branches = document.getElementsByClassName('js-branch-delete-button'); | |
| for (var i = 0; i < stale_branches.length; i++) | |
| { | |
| stale_branches.item(i).click(); | |
| await new Promise(r => setTimeout(r, delay)); | |
| } | |
| } |
| #!/bin/bash | |
| # | |
| # Wyze cameras store video files in a folder hierarchy. This script creates a time lapse video file per hour. | |
| date_folder="$1" | |
| for hour_folder in $(ls "$date_folder") | |
| do | |
| echo "$date_folder-$hour_folder" | |
| for hour_video in $(ls "$date_folder/$hour_folder" | grep -v "\-800k\.mp4") |
| for ext in 360 MP4 JPG THM LRV | |
| do | |
| mkdir $ext | |
| mv *.$ext $ext | |
| done |
| import requests | |
| import json | |
| GH_GRAPHQL_URL = 'https://api.github.com/graphql' | |
| TOKEN = '' # add your PAT with read:org and write:org scope | |
| def get_json_result(query): | |
| headers={'Authorization': f'token {TOKEN}'} | |
| r = requests.post(GH_GRAPHQL_URL, json={'query': query}, headers=headers) |