alimuradov.ru

Не печатайте промпты — продиктуйте: голосовой ввод Handy на Ubuntu (Wayland)

Представьте: вы работаете за компьютером и хотите не набирать текст руками, а просто сказать — и слова появились на экране. Не в каком-то специальном приложении, а в любом поле: в редакторе кода, в мессенджере, в браузере, в ChatGPT. Именно это делает Handy.

Что такое Handy

Handy — это бесплатный, open source голосовой ассистент для транскрибации речи в текст. Работает полностью офлайн, на вашем компьютере, без отправки данных в облако.

Как это работает:

  1. Нажимаете горячую клавишу
  2. Говорите что нужно
  3. Отпускаете — и текст появляется в активном окне

Под капотом используется Whisper от OpenAI — одна из лучших моделей распознавания речи. Есть несколько вариантов модели: Small (487 МБ), Medium (492 МБ), Turbo (1600 МБ) и Large (1100 МБ). Также доступна Parakeet V3 — оптимизированная модель для CPU с автоматическим определением языка.

Зачем это нужно

Лично я использую Handy для:

Главное преимущество перед Google Voice или другими сервисами — приватность. Аудио никуда не отправляется. Всё обрабатывается локально на вашем GPU или CPU.

Проблема: Wayland блокирует горячие клавиши

На Ubuntu 24.04 и выше Wayland стал дисплеем по умолчанию. Wayland — это современная замена Xorg, которая лучше защищает безопасность. Но у неё есть особенность: приложения не могут перехватывать глобальные нажатия клавиш.

Это значит, что Handy не может «слушать» вашу клавиатуру. Горячие клавиши не работают, оверлей не появляется, в логах — тишина.

Это не баг Handy — это особенность Wayland. Безопасность имеет свою цену.

Решение: системный менеджер горячих клавиш

Вместо того чтобы Handy сам перехватывал нажатия, мы делегируем это Ubuntu. Системный менеджер горячих клавиш работает на уровне Wayland и может запускать любые команды.

Для GNOME (Ubuntu по умолчанию)

  1. Откройте Настройки → Клавиатура → Просмотр и настройка горячих клавиш
  2. Прокрутите вниз → Пользовательские горячие клавиши
  3. Нажмите + и заполните:
    • Имя: Handy Toggle
    • Команда: handy --toggle-transcription
    • Горячая клавиша: ваша комбинация, например Alt + Space

Для KDE Plasma

  1. Системные настройки → Горячие клавиши → Пользовательские горячие клавиши
  2. Правка → Создать → Глобальная горячая клавиша → Команда/URL
  3. Вкладка Триггер — назначьте комбинацию
  4. Вкладка Действие — команда: handy --toggle-transcription

Для Sway / i3 / Hyprland

Добавьте в конфиг:

# Sway (~/.config/sway/config)
bindsym $mod+o exec handy --toggle-transcription

# Hyprland (~/.config/hypr/hyprland.conf)
bind = $mainMod, O, exec, handy --toggle-transcription

Через сигналы (для продвинутых)

Handy также поддерживает Unix-сигналы. Можно переключать транскрипцию через pkill:

pkill -USR2 -n handy   # Включить/выключить транскрипцию
pkill -USR1 -n handy   # С пост-обработкой

Почему это работает

Когда вы нажимаете горячую клавишу через системный менеджер, Ubuntu сама обрабатывает нажатие и запускает команду handy —toggle-transcription. Wayland разрешает это, потому что инициатором является система, а не приложение.

По сути, вы перехватываете горячую клавишу на уровне ОС и передаёте Handy через аргумент командной строки.

Установка Handy на Ubuntu

Для работы на Wayland также потребуется установить wtype (для ввода текста):

sudo apt install wtype libgtk-layer-shell0

Скачать Handy можно с GitHub Releases — доступны AppImage и DEB-пакет.

Итого

Handy — это мощный офлайн-инструмент для голосового ввода текста. На Wayland (Ubuntu 24.04+) горячие клавиши не работают из коробки, но решается это просто: перехватываем горячую клавишу на уровне системы и передаём команду Handy.

Работает на Ubuntu 24.04, 25.10 и любом дистрибутиве с Wayland. Официальный воркераунд от разработчика.

Источник: GitHub Issue #1239 · handy.computer

Exit mobile version