- decisions/2026-05-05-mac-dictation-groq-hammerspoon.md: полный план, грабли с раскладкой, fallback на whisper-cpp, восстановление на новом Mac - notes/ru-geoblocked-services.md: реестр CDN с RU-блоком (cdn.spokenly, dl.wisprflow и пр.) + принципы обхода - snippets/mac-dictation/: рабочая версия скриптов и init.lua Триггер — одиночный Fn, Groq cloud first → tiny local fallback, вставка через hs.eventtap.event keycode 9 (минует ru-keymap warnings). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
24 lines
1.2 KiB
Markdown
24 lines
1.2 KiB
Markdown
# Mac Dictation — Hammerspoon + Groq
|
|
|
|
Текущая рабочая версия (2026-05-05) скриптов для голосовой диктовки в любое поле macOS через Groq Whisper API.
|
|
|
|
## Файлы
|
|
- `groq-dictate.sh` → `~/bin/groq-dictate.sh` (chmod +x)
|
|
- `dictation-doctor.sh` → `~/bin/dictation-doctor.sh` (chmod +x)
|
|
- `init.lua` → `~/.hammerspoon/init.lua`
|
|
|
|
## Как это работает
|
|
- **Fn (Globe)** — одиночное нажатие, toggle (старт/стоп записи)
|
|
- Запись через `ffmpeg avfoundation :0` → `/tmp/groq-dictate.wav`
|
|
- Транскрипция: **Groq Whisper-large-v3-turbo** (cloud), fallback → **whisper-cpp tiny** (local 31MB)
|
|
- Результат → pasteboard → `hs.eventtap.event.newKeyEvent({"cmd"}, 9, true|false):post()` (⌘V на физический keycode 9 = V)
|
|
|
|
## Полный гайд
|
|
[`decisions/2026-05-05-mac-dictation-groq-hammerspoon.md`](../../decisions/2026-05-05-mac-dictation-groq-hammerspoon.md) — детали, грабли, восстановление на новом Mac.
|
|
|
|
## Если сломалось
|
|
```bash
|
|
~/bin/dictation-doctor.sh
|
|
```
|
|
Покажет что сломано (Hammerspoon / TCC / Groq / mic / Fn behavior).
|