Skip to content

Repository files navigation

Keyboop

wrong layout? keyboop. Бесплатный open-source переключатель раскладки для macOS, который чинит кракозябры — и при этом не трогает твой буфер обмена. А ещё набирает текст голосом. Целиком на твоём Mac.

Набрал ghbdtn вместо привет? Keyboop молча всё расколдует — прямо во время набора или по границе слова. Не угадал — поправь хоткеем: последнее слово, последние N слов или всё, что настучал за последние T секунд. Плюс автозамена сниппетов и локальная диктовка.

Чем отличается

  • 🧼 Не ломает буфер обмена. Главная болезнь Punto Switcher — clipboard. Keyboop печатает исправленный текст напрямую, буфер не трогает вообще.
  • 🎙 Голосовой набор — локально. Whisper и Parakeet (Neural Engine) на твоём Mac: зажал хоткей, продиктовал, отпустил — текст на месте. Ни байта в сеть.
  • 🌐 Перевод выделенного. ⌃⌥T — перевод встаёт на место выделения, через Apple Translation, тоже на устройстве (macOS 15+).
  • Гибкое окно отката. Не только последнее слово, а N слов / фраза / время — одним хоткеем. Этого нет ни у кого.
  • ✍️ Сниппеты. Набрал сокращение — получил e-mail, подпись, любую фразу. Раскладка и регистр не важны.
  • 🔒 Локально и приватно. Из того, что ты печатаешь и говоришь, наружу не уходит ничего. Open source — можно проверить каждое слово.
  • 🍎 Современно. Apple Silicon, нотаризовано Apple, автообновления, свой канал фидбэка прямо из приложения.

Установка

Скачай DMG на keyboop.com — перетащи в Программы, разреши доступ к клавиатуре, для голоса выбери модель. Обновляется само.

Требуется: Apple Silicon (M1 и новее) — macOS 14+, либо Intel — macOS 13+. На Intel работает всё, кроме движка распознавания Parakeet: он живёт на нейропроцессоре Apple, которого в Intel-маках нет. Голосовой набор там идёт через Whisper на процессоре, медленнее и теплее, поэтому в настройках подскажем выбрать модель полегче.

Сборка из исходников

Нужны Xcode Command Line Tools и три внешние зависимости — их код чужой, в этот репозиторий он не входит, положи рядом в vendor/:

mkdir -p vendor && cd vendor

# 1. whisper.cpp — распознавание речи.
git clone https://github.com/ggml-org/whisper.cpp
cd whisper.cpp
cmake -B build-macos14 -DCMAKE_OSX_DEPLOYMENT_TARGET=14.0 -DCMAKE_BUILD_TYPE=Release \
  -DBUILD_SHARED_LIBS=OFF -DWHISPER_BUILD_EXAMPLES=OFF -DWHISPER_BUILD_TESTS=OFF \
  -DWHISPER_BUILD_SERVER=OFF
cmake --build build-macos14 -j
cd ..

⚠️ Флаг CMAKE_OSX_DEPLOYMENT_TARGET=14.0 обязателен. Без него cmake берёт версию той системы, на которой ты собираешь, и ggml-metal жёстко связывается с классом из macOS 15 — на macOS 14 приложение молча умрёт ещё до main(). Проверено на живых пользователях, чинилось экстренным релизом.

Ещё две:

  • Sparkle (автообновления) → vendor/sparkle/Sparkle.frameworkрелизы
  • FluidAudio (Parakeet на Neural Engine) → vendor/fluidaudio-prebuilt/ со libFluidAudio.a, Modules/ и include/исходники

Дальше:

bash build-app.sh      # dev-сборка (self-signed) → Keyboop.app
bash install-local.sh  # то же + установка в /Applications

Готовые релизы подписаны Developer ID и нотаризованы Apple — скрипт релиза завязан на личные ключи и в репозиторий не входит.

Авторы

Ivan Smetanin — идея, продукт, руки и все опечатки в этом репозитории.

Claude (Anthropic) — соавтор кода. Единственный участник проекта, который физически не способен набрать «ghbdtn», — именно поэтому ему и доверили это чинить.

Да, программу для исправления человеческого ввода писали человек и нейросеть: один печатает с ошибками, второй не печатает вообще. Вместе — как раз одна полноценная клавиатура. Ирония замечена, задокументирована и оставлена в проде.

Лицензия

MIT. Бесплатно — для всех, кто живёт на нескольких раскладках. А если в остальной галактике тоже мучаются с кракозябрами — и для них.

About

wrong layout? keyboop. — free, open-source macOS layout switcher that doesn't break your clipboard. keyboop.com

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages