From 4c524dc9731aced4f21b8c71139616a9be127e48 Mon Sep 17 00:00:00 2001 From: Collie Tsai Date: Tue, 1 Sep 2026 04:08:03 +0800 Subject: [PATCH] refactor(voice): cut over to OpenWhispr --- .github/workflows/test-distros.yaml | 12 + README.md | 23 +- home/.chezmoidata/packages.yaml | 1 - home/.chezmoiexternal.toml | 7 - home/.chezmoiremove | 6 +- .../dot_config/fish/completions/asr-mode.fish | 5 + .../fish/completions/voxtype-mode.fish | 5 - home/dot_config/fish/functions/asr-mode.fish | 174 +++++++++++++++ .../fish/functions/voxtype-mode.fish | 207 ------------------ .../fish/functions/voxtype-post-process.fish | 6 - home/dot_config/hypr/hyprland.lua.tmpl | 3 - home/dot_config/voxtype/config.toml | 30 --- 12 files changed, 209 insertions(+), 270 deletions(-) create mode 100644 home/dot_config/fish/completions/asr-mode.fish delete mode 100644 home/dot_config/fish/completions/voxtype-mode.fish create mode 100644 home/dot_config/fish/functions/asr-mode.fish delete mode 100644 home/dot_config/fish/functions/voxtype-mode.fish delete mode 100644 home/dot_config/fish/functions/voxtype-post-process.fish delete mode 100644 home/dot_config/voxtype/config.toml diff --git a/.github/workflows/test-distros.yaml b/.github/workflows/test-distros.yaml index 5b53710..3f5e1a8 100644 --- a/.github/workflows/test-distros.yaml +++ b/.github/workflows/test-distros.yaml @@ -27,6 +27,10 @@ jobs: grep -Fq openwhispr-binds.lua /home/dev/.config/hypr/hyprland.lua command -v wl-copy command -v wtype + fish -n /home/dev/.config/fish/functions/asr-mode.fish + fish -c 'source /home/dev/.config/fish/functions/asr-mode.fish; asr-mode --help' | grep -Fq 'asr-mode {sensevoice|qwen-1.7b|off}' + ! command -v voxtype + test ! -e /home/dev/.config/voxtype ! id -nG dev | grep -qw input test ! -e /etc/udev/rules.d/70-uinput.rules ! command -v ydotoold @@ -50,6 +54,10 @@ jobs: grep -Fq openwhispr-binds.lua /home/ubuntu/.config/hypr/hyprland.lua command -v wl-copy command -v wtype + fish -n /home/ubuntu/.config/fish/functions/asr-mode.fish + fish -c 'source /home/ubuntu/.config/fish/functions/asr-mode.fish; asr-mode --help' | grep -Fq 'asr-mode {sensevoice|qwen-1.7b|off}' + ! command -v voxtype + test ! -e /home/ubuntu/.config/voxtype ! id -nG ubuntu | grep -qw input test ! -e /etc/udev/rules.d/70-uinput.rules ! command -v ydotoold @@ -69,6 +77,10 @@ jobs: binary="$HOME/.local/libexec/openwhispr/OpenWhispr.app/Contents/MacOS/OpenWhispr" test -x "$binary" file "$binary" | grep -q "$(uname -m)" + fish -n "$HOME/.config/fish/functions/asr-mode.fish" + fish -c "source '$HOME/.config/fish/functions/asr-mode.fish'; asr-mode --help" | grep -Fq 'asr-mode {sensevoice|qwen-1.7b|off}' + test ! -e "$HOME/.local/libexec/voxtype" + test ! -e "$HOME/.config/voxtype" windows: name: windows:latest diff --git a/README.md b/README.md index 4ce03e3..76b0551 100644 --- a/README.md +++ b/README.md @@ -84,7 +84,7 @@ chezmoi init --apply collieiscute -v | `SUPER+C` | close window | | `SUPER+M` | exit Hyprland | | `SUPER+V` | toggle floating | -| hold `F13` | Voxtype push-to-talk dictation | +| tap `F13` | OpenWhispr dictation toggle | | `SUPER+P` | pseudotile | | `SUPER+RETURN` | true fullscreen | | `SUPER+N` | toggle Noctalia notifications | @@ -105,21 +105,24 @@ chezmoi init --apply collieiscute -v | `XF86Audio*` | volume / mute / mic mute | | `XF86MonBrightness*` | screen brightness | -Voice dictation supports Arch Linux x86_64 and Apple silicon macOS. Select -`voxtype-mode sensevoice` for the CPU-only SenseVoice model or -`voxtype-mode qwen-1.7b` for the GPU-backed Qwen3-ASR model; missing models -download only when selected. Run `voxtype-mode off` before gaming to stop and -verify every managed ASR process, releasing the GPU. `voxtype-mode --help` -lists the same commands in Fish. +Voice dictation uses OpenWhispr on Arch Linux x86_64 and macOS. Select +`asr-mode sensevoice` for the CPU-only SenseVoice model or `asr-mode qwen-1.7b` +for the GPU-backed Qwen3-ASR model; missing models download only when selected. +Run `asr-mode off` before gaming to stop CrispASR, close port 8080, and release +its GPU memory. OpenWhispr remains in the tray; quit it separately when its UI +and shortcut are not needed. -Linux uses the Hyprland `F13` binding. On macOS, `F13` is handled by VoxType; -allow Microphone and Accessibility access when macOS prompts for them. +Set OpenWhispr to Self-Hosted `http://127.0.0.1:8080/v1`, model `local-asr`, and +F13 tap mode. Linux uses its native Hyprland binding and `wtype`; macOS requires +Microphone and Accessibility access. OpenWhispr 1.9.2 may still show a ydotool +setup warning on Linux; `wtype` is already preferred, so do not add the `input` +group or daemon just to dismiss it. ### AeroSpace (macOS) | Bind | Action | |---|---| -| hold `F13` | Voxtype push-to-talk dictation | +| tap `F13` | OpenWhispr dictation toggle | | `Cmd+Option+H/J/K/L` | swap workspace windows left/down/up/right, keeping workspace numbers fixed | | `Cmd+Option+S` | toggle the dedicated `magic` workspace | | `Cmd+Option+Shift+S` | move window to the `magic` workspace | diff --git a/home/.chezmoidata/packages.yaml b/home/.chezmoidata/packages.yaml index bb64ef3..e936a24 100644 --- a/home/.chezmoidata/packages.yaml +++ b/home/.chezmoidata/packages.yaml @@ -79,7 +79,6 @@ packages: - ttf-jetbrains-mono-nerd - typst - unzip - - voxtype-bin - wireplumber - wget - wl-clipboard diff --git a/home/.chezmoiexternal.toml b/home/.chezmoiexternal.toml index 8bf730e..da5d90e 100644 --- a/home/.chezmoiexternal.toml +++ b/home/.chezmoiexternal.toml @@ -58,13 +58,6 @@ include = ["crispasr-linux-x86_64-vulkan/crispasr", "crispasr-linux-x86_64-vulka checksum.sha256 = "081e814933ab3d1e1b3ab4da46243d6fc8fe9a6cc89d98ae05b0e2157fe59ad6" checksum.size = 70198311 {{ else if eq .chezmoi.os "darwin" -}} -[".local/libexec/voxtype/voxtype"] -type = "file" -url = "https://github.com/peteonrails/voxtype/releases/download/v0.7.5/voxtype-0.7.5-macos-universal" -executable = true -checksum.sha256 = "12e794655f0e0efadceb92e6313cec2c618c571892490368d0b90194cc27cc6e" -checksum.size = 24338816 - [".local/libexec/openwhispr"] type = "archive" exact = true diff --git a/home/.chezmoiremove b/home/.chezmoiremove index 0d456f0..163b659 100644 --- a/home/.chezmoiremove +++ b/home/.chezmoiremove @@ -2,6 +2,11 @@ .config/cursor-flags.conf .config/alacritty/catppuccin-mocha.toml .config/kitty/themes/catppuccin-macchiato.conf +.config/fish/completions/voxtype-mode.fish +.config/fish/functions/voxtype-mode.fish +.config/fish/functions/voxtype-post-process.fish +.config/voxtype +.local/libexec/voxtype {{ if eq .chezmoi.os "linux" }} .config/hypr/hypridle.conf .config/hypr/hyprlock.conf @@ -15,7 +20,6 @@ .config/waybar/themes/frappe.css .local/bin/dropbox.py .local/lib/dropbox/dropbox.py -.local/libexec/voxtype {{ if eq .chezmoi.osRelease.id "arch" }} .config/noctalia/templates/alacritty.toml .config/noctalia/templates/ghostty diff --git a/home/dot_config/fish/completions/asr-mode.fish b/home/dot_config/fish/completions/asr-mode.fish new file mode 100644 index 0000000..29adcd9 --- /dev/null +++ b/home/dot_config/fish/completions/asr-mode.fish @@ -0,0 +1,5 @@ +complete -c asr-mode -f +complete -c asr-mode -s h -l help -d 'Show help' +complete -c asr-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a sensevoice -d 'SenseVoice Small Q8_0 (CPU)' +complete -c asr-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a qwen-1.7b -d 'Qwen3-ASR 1.7B Q8_0 (GPU)' +complete -c asr-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a off -d 'Stop CrispASR and release its resources' diff --git a/home/dot_config/fish/completions/voxtype-mode.fish b/home/dot_config/fish/completions/voxtype-mode.fish deleted file mode 100644 index 3712d23..0000000 --- a/home/dot_config/fish/completions/voxtype-mode.fish +++ /dev/null @@ -1,5 +0,0 @@ -complete -c voxtype-mode -f -complete -c voxtype-mode -s h -l help -d 'Show help' -complete -c voxtype-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a sensevoice -d 'SenseVoice Small Q8_0 (CPU)' -complete -c voxtype-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a qwen-1.7b -d 'Qwen3-ASR 1.7B Q8_0 (GPU)' -complete -c voxtype-mode -n 'not __fish_seen_subcommand_from sensevoice qwen-1.7b off' -a off -d 'Stop all managed ASR processes' diff --git a/home/dot_config/fish/functions/asr-mode.fish b/home/dot_config/fish/functions/asr-mode.fish new file mode 100644 index 0000000..77aebc0 --- /dev/null +++ b/home/dot_config/fish/functions/asr-mode.fish @@ -0,0 +1,174 @@ +function __asr_download_model --argument-names label url file + test -f "$file" + and return + + command mkdir -p (command dirname "$file") + or return + echo "Downloading $label..." + command curl --fail --location --retry 3 --output "$file" "$url" + or begin + command rm -f -- "$file" + return 1 + end +end + +function __asr_stop_managed --argument-names os + if test $os = Linux + command systemctl --user stop crispasr.service \ + voxtype-active.service voxtype-asr.service voxtype-qwen.service voxtype.service \ + >/dev/null 2>&1 + else + for label in com.collie.crispasr com.collie.voxtype.active com.collie.voxtype.asr + command launchctl remove $label >/dev/null 2>&1 + or true + end + return + end + or true +end + +function asr-mode --description 'Switch CrispASR model or stop ASR' + argparse h/help -- $argv + or return 2 + + if set -q _flag_help + printf '%s\n' \ + 'Usage: asr-mode {sensevoice|qwen-1.7b|off}' \ + '' \ + ' sensevoice SenseVoice Small Q8_0 (CPU)' \ + ' qwen-1.7b Qwen3-ASR 1.7B Q8_0 (GPU)' \ + ' off Stop CrispASR and verify PID and port 8080 are gone' \ + '' \ + 'OpenWhispr remains running; this command controls CrispASR only.' + return + end + + if test (count $argv) -ne 1 + echo 'Usage: asr-mode {sensevoice|qwen-1.7b|off}' >&2 + return 2 + end + set -l mode $argv[1] + contains -- $mode sensevoice qwen-1.7b off + or begin + echo "asr-mode: unknown mode: $mode" >&2 + return 2 + end + + set -l os (uname -s) + contains -- $os Linux Darwin + or begin + echo "asr-mode: unsupported platform: $os" >&2 + return 1 + end + + set -l dependencies curl pgrep + if test $os = Linux + set -a dependencies systemctl + test $mode = off + or set -a dependencies systemd-run + else + set -a dependencies launchctl + end + for dependency in $dependencies + command -q $dependency + or begin + echo "asr-mode: missing $dependency" >&2 + return 1 + end + end + if test $os = Linux + command systemctl --user show-environment >/dev/null + or begin + echo 'asr-mode: systemd user manager is unavailable' >&2 + return 1 + end + end + + set -l unit crispasr.service + set -l label com.collie.crispasr + set -l health http://127.0.0.1:8080/health + set -l data_home "$XDG_DATA_HOME" + test -n "$data_home" + or set data_home "$HOME/.local/share" + # Reuse the existing models; moving 2.76 GB adds no value. + set -l model_dir "$data_home/voxtype/models" + set -l crisp "$HOME/.local/libexec/crispasr/crispasr" + set -l process_pattern "^"(string escape --style=regex -- "$crisp")"( |\$)" + + if test $mode = off + __asr_stop_managed $os + if test $os = Linux + if command systemctl --user is-active --quiet $unit + echo "asr-mode: $unit is still active" >&2 + return 1 + end + else if command launchctl list $label >/dev/null 2>&1 + echo "asr-mode: $label is still loaded" >&2 + return 1 + end + if command pgrep -u (id -u) -f "$process_pattern" >/dev/null + echo 'asr-mode: CrispASR is still running' >&2 + return 1 + end + if command curl --fail --silent --max-time 1 "$health" >/dev/null 2>&1 + echo 'asr-mode: port 8080 health endpoint is still reachable' >&2 + return 1 + end + return + end + + test -x "$crisp" + or begin + echo 'asr-mode: missing CrispASR; run chezmoi apply' >&2 + return 1 + end + + set -l backend + set -l server_mode + set -l model + switch $mode + case sensevoice + set backend sensevoice + set server_mode -ng + set model "$model_dir/sensevoice-small-q8_0.gguf" + __asr_download_model \ + 'SenseVoice Small Q8_0 (252 MB)' \ + https://huggingface.co/cstr/sensevoice-small-GGUF/resolve/e14d94223aef728879f08dfb4d5f20fe873b22ef/sensevoice-small-q8_0.gguf \ + "$model" + or return + case qwen-1.7b + set backend qwen3 + set server_mode --gpu-backend vulkan + test $os = Darwin + and set server_mode --gpu-backend metal + set model "$model_dir/qwen3-asr-1.7b-q8_0.gguf" + __asr_download_model \ + 'Qwen3-ASR 1.7B Q8_0 (2.51 GB)' \ + https://huggingface.co/cstr/qwen3-asr-1.7b-GGUF/resolve/674df5d44b50a63e7102a18895ed20e3f91de301/qwen3-asr-1.7b-q8_0.gguf \ + "$model" + or return + end + + set -l server_cmd "$crisp" --server --backend $backend $server_mode \ + --lid-backend off -m "$model" --host 127.0.0.1 --port 8080 + __asr_stop_managed $os + if test $os = Linux + command systemd-run --user --quiet --collect --service-type=exec --unit=$unit -- $server_cmd + else + command launchctl submit -l $label -- $server_cmd + end + or return + + command curl --fail --silent --retry 30 --retry-delay 1 --retry-connrefused \ + --max-time 2 "$health" >/dev/null + or begin + __asr_stop_managed $os + echo 'asr-mode: CrispASR did not become ready' >&2 + return 1 + end + if not command pgrep -u (id -u) -f "$process_pattern" >/dev/null + __asr_stop_managed $os + echo 'asr-mode: CrispASR process is not running' >&2 + return 1 + end +end diff --git a/home/dot_config/fish/functions/voxtype-mode.fish b/home/dot_config/fish/functions/voxtype-mode.fish deleted file mode 100644 index 6b3ab01..0000000 --- a/home/dot_config/fish/functions/voxtype-mode.fish +++ /dev/null @@ -1,207 +0,0 @@ -function __voxtype_download_model --argument-names label url file - test -f "$file" - and return - - command mkdir -p (command dirname "$file") - or return - echo "Downloading $label..." - command curl --fail --location --retry 3 --output "$file" "$url" - or begin - command rm -f -- "$file" - return 1 - end -end - -function __voxtype_stop_macos - for label in com.collie.voxtype.active com.collie.voxtype.asr - command launchctl remove $label >/dev/null 2>&1 - or true - end -end - -function voxtype-mode --description 'Switch VoxType ASR model or stop ASR' - argparse h/help -- $argv - or return 2 - - if set -q _flag_help - printf '%s\n' \ - 'Usage: voxtype-mode MODE' \ - '' \ - 'Modes:' \ - ' sensevoice SenseVoice Small Q8_0 (CPU)' \ - ' qwen-1.7b Qwen3-ASR 1.7B Q8_0 (GPU)' \ - ' off Stop and verify all managed ASR processes' \ - '' \ - 'A missing model is downloaded only when that mode is selected.' - return - end - - if test (count $argv) -ne 1 - echo 'Usage: voxtype-mode {sensevoice|qwen-1.7b|off}' >&2 - return 2 - end - set -l mode $argv[1] - contains -- $mode sensevoice qwen-1.7b off - or begin - echo "voxtype-mode: unknown mode: $mode" >&2 - return 2 - end - - set -l os (uname -s) - contains -- $os Linux Darwin - or begin - echo "voxtype-mode: unsupported platform: $os" >&2 - return 1 - end - - if test $os = Linux - for dependency in systemctl pgrep - command -q $dependency - or begin - echo "voxtype-mode: missing $dependency" >&2 - return 1 - end - end - systemctl --user show-environment >/dev/null - or begin - echo 'voxtype-mode: systemd user manager is unavailable' >&2 - return 1 - end - if test $mode != off; and not command -q systemd-run - echo 'voxtype-mode: missing systemd-run' >&2 - return 1 - end - else - for dependency in launchctl pgrep - command -q $dependency - or begin - echo "voxtype-mode: missing $dependency" >&2 - return 1 - end - end - end - - set -l active_unit voxtype-active.service - set -l asr_unit voxtype-asr.service - set -l data_home "$XDG_DATA_HOME" - test -n "$data_home" - or set data_home "$HOME/.local/share" - set -l data_dir "$data_home/voxtype/models" - set -l crisp "$HOME/.local/libexec/crispasr/crispasr" - set -l voxtype /usr/bin/voxtype - set -l process_pattern (string join '|' \ - /usr/bin/voxtype '/usr/lib/voxtype/voxtype-[^ ]+' \ - (string escape --style=regex -- "$crisp")) - - if test $os = Darwin - set voxtype "$HOME/.local/libexec/voxtype/voxtype" - set process_pattern (string join '|' \ - (string escape --style=regex -- "$voxtype") \ - (string escape --style=regex -- "$crisp")) - end - set process_pattern "^($process_pattern)( |\$)" - - if test $mode = off - if test $os = Linux - systemctl --user stop $active_unit $asr_unit voxtype-qwen.service voxtype.service >/dev/null 2>&1 - or true - for unit in $active_unit $asr_unit voxtype-qwen.service voxtype.service - if systemctl --user is-active --quiet $unit - echo "voxtype-mode: $unit is still active" >&2 - return 1 - end - end - else - __voxtype_stop_macos - for label in com.collie.voxtype.active com.collie.voxtype.asr - if launchctl list $label >/dev/null 2>&1 - echo "voxtype-mode: $label is still active" >&2 - return 1 - end - end - end - if pgrep -u (id -u) -f "$process_pattern" >/dev/null - echo 'voxtype-mode: an ASR process is still running' >&2 - if test $os = Linux - pgrep -a -u (id -u) -f "$process_pattern" >&2 - else - pgrep -fl -u (id -u) "$process_pattern" >&2 - end - return 1 - end - return - end - - test -x "$voxtype" -a -x "$crisp" - or begin - echo 'voxtype-mode: missing VoxType or CrispASR; run chezmoi apply' >&2 - return 1 - end - - set -l backend - set -l server_mode - set -l model - switch $mode - case sensevoice - set backend sensevoice - set server_mode -ng - set model "$data_dir/sensevoice-small-q8_0.gguf" - __voxtype_download_model \ - 'SenseVoice Small Q8_0 (252 MB)' \ - https://huggingface.co/cstr/sensevoice-small-GGUF/resolve/e14d94223aef728879f08dfb4d5f20fe873b22ef/sensevoice-small-q8_0.gguf \ - "$model" - or return - case qwen-1.7b - set backend qwen3 - set server_mode --gpu-backend vulkan - test $os = Darwin - and set server_mode --gpu-backend metal - set model "$data_dir/qwen3-asr-1.7b-q8_0.gguf" - __voxtype_download_model \ - 'Qwen3-ASR 1.7B Q8_0 (2.51 GB)' \ - https://huggingface.co/cstr/qwen3-asr-1.7b-GGUF/resolve/674df5d44b50a63e7102a18895ed20e3f91de301/qwen3-asr-1.7b-q8_0.gguf \ - "$model" - or return - end - - set -l server_cmd "$crisp" --server --backend $backend $server_mode \ - --lid-backend off -m "$model" --host 127.0.0.1 --port 8080 - if test $os = Linux - systemctl --user stop $active_unit $asr_unit voxtype-qwen.service voxtype.service >/dev/null 2>&1 - or true - systemd-run --user --quiet --collect --service-type=exec --unit=$asr_unit -- $server_cmd - else - __voxtype_stop_macos - launchctl submit -l com.collie.voxtype.asr -- $server_cmd - end - or return - - curl --fail --silent --retry 30 --retry-delay 1 --retry-connrefused \ - --max-time 2 http://127.0.0.1:8080/health >/dev/null - or begin - if test $os = Linux - systemctl --user stop $asr_unit >/dev/null 2>&1 - else - __voxtype_stop_macos - end - echo 'voxtype-mode: CrispASR did not become ready' >&2 - return 1 - end - - set -l daemon_cmd "$voxtype" daemon - test $os = Darwin - and set daemon_cmd /usr/bin/env VOXTYPE_HOTKEY_ENABLED=true VOXTYPE_HOTKEY=F13 "$voxtype" daemon - if test $os = Linux - systemd-run --user --quiet --collect --service-type=exec --unit=$active_unit -- $daemon_cmd - else - launchctl submit -l com.collie.voxtype.active -- $daemon_cmd - end - or begin - if test $os = Linux - systemctl --user stop $asr_unit >/dev/null 2>&1 - else - __voxtype_stop_macos - end - return 1 - end -end diff --git a/home/dot_config/fish/functions/voxtype-post-process.fish b/home/dot_config/fish/functions/voxtype-post-process.fish deleted file mode 100644 index cd6caae..0000000 --- a/home/dot_config/fish/functions/voxtype-post-process.fish +++ /dev/null @@ -1,6 +0,0 @@ -function voxtype-post-process --description 'Convert dictation to Taiwan Traditional Chinese with CJK spacing' - opencc -c s2twp.json \ - | perl -CSD -pe 's/([\p{Han}])([A-Za-z0-9])/$1 $2/g; s/([A-Za-z0-9])([\p{Han}])/$1 $2/g' - set -l statuses $pipestatus - test $statuses[1] -eq 0 -a $statuses[2] -eq 0 -end diff --git a/home/dot_config/hypr/hyprland.lua.tmpl b/home/dot_config/hypr/hyprland.lua.tmpl index fd2868e..0597e14 100644 --- a/home/dot_config/hypr/hyprland.lua.tmpl +++ b/home/dot_config/hypr/hyprland.lua.tmpl @@ -57,7 +57,6 @@ hl.monitor({ local terminal = "kitty" local fileManager = "nautilus" local noctalia = "noctalia msg" -local voxtype = "voxtype record" ------------------- @@ -234,8 +233,6 @@ hl.bind(mainMod .. " + C", hl.dsp.window.close()) hl.bind(mainMod .. " + M", hl.dsp.exit()) hl.bind(mainMod .. " + E", hl.dsp.exec_cmd(fileManager)) hl.bind(mainMod .. " + V", hl.dsp.window.float({ action = "toggle" })) -hl.bind("XF86Tools", hl.dsp.exec_cmd(voxtype .. " start"), { description = "Start voice dictation" }) -hl.bind("XF86Tools", hl.dsp.exec_cmd(voxtype .. " stop"), { description = "Stop voice dictation", release = true }) hl.bind(mainMod .. " + space", hl.dsp.exec_cmd(noctalia .. " panel-toggle launcher")) hl.bind(mainMod .. " + P", hl.dsp.window.pseudo()) hl.bind(secondMod .. " + J", hl.dsp.layout("togglesplit")) diff --git a/home/dot_config/voxtype/config.toml b/home/dot_config/voxtype/config.toml deleted file mode 100644 index 9219c5f..0000000 --- a/home/dot_config/voxtype/config.toml +++ /dev/null @@ -1,30 +0,0 @@ -# Voxtype v0.7.5 configuration reference: -# https://github.com/peteonrails/voxtype/blob/v0.7.5/docs/CONFIGURATION.md -engine = "whisper" - -[hotkey] -enabled = false - -[audio] -device = "default" -sample_rate = 16000 -max_duration_secs = 60 - -[whisper] -backend = "remote" -language = "auto" -remote_endpoint = "http://127.0.0.1:8080" -remote_model = "local-asr" -remote_timeout_secs = 60 - -[output] -mode = "type" -fallback_to_clipboard = true - -[output.post_process] -command = "fish -c voxtype-post-process" -timeout_ms = 5000 - -[text] -spoken_punctuation = true -filter_filler_words = false