Repolode
sindresorhus

sindresorhus/KeyboardShortcuts

Swift-пакет для добавления в приложения macOS глобальных настраиваемых пользователем клавиатурных сочетаний с готовым интерфейсом для их записи.

Звёзды
2,736
Форки
253
Открытые issues
3
Последний коммит
2 месяца назад

Что это?

KeyboardShortcuts — Swift-пакет для приложений macOS, которым нужны глобальные клавиатурные сочетания, настраиваемые пользователем. Достаточно один раз определить именованное сочетание, добавить в экран настроек представление-рекордер на SwiftUI или Cocoa и зарегистрировать обработчик нажатия или отпускания клавиши. Пакет сохраняет выбранное сочетание в UserDefaults и предупреждает пользователя, если оно уже используется системой или главным меню приложения.

Пакет поддерживает работу в песочнице и совместим с Mac App Store; запросов разрешений он не показывает. В него также входят средства для отображения записанного сочетания в NSMenuItem, преобразования флагов модификаторов в символы, прослушивания заранее заданных сочетаний и повторения действий, пока клавиша удерживается на macOS 13 и новее.

Пакет предназначен для macOS 10.15 и новее и устанавливается через Swift Package Manager. Среди ограничений — отсутствие поддержки мультимедийных клавиш в приложениях с песочницей и невозможность прослушивать Caps Lock через стандартный API.

Ключевые возможности

  • 01Предоставляет представления-рекордеры SwiftUI Recorder и Cocoa RecorderCocoa для записи сочетаний клавиш.
  • 02Автоматически сохраняет выбранные пользователем сочетания в UserDefaults.
  • 03Предупреждает о конфликтах с системными сочетаниями и главным меню приложения.
  • 04Позволяет отслеживать нажатие и отпускание клавиш.
  • 05Позволяет привязать записанное сочетание к NSMenuItem.
  • 06Устанавливается через Swift Package Manager.

Сценарии использования

  • Добавление настраиваемой пользователем глобальной горячей клавиши в утилиту для строки меню.
  • Настройка сочетаний клавиш пользователями в окне параметров приложения macOS.
  • Добавление в приложение сочетаний клавиш, которые пользователи могут записывать и сохранять с помощью собственного хранилища.

Быстрый старт

  1. 1

    Добавьте пакет в Xcode через вкладку Swift Package Manager, указав URL репозитория

  2. 2

    Зарегистрируйте название сочетания клавиш, затем добавьте представление Recorder на экран настроек

  3. 3

    Отслеживайте сочетание клавиш с помощью onKeyUp или onKeyDown

Что важно знать

  • Работает только в macOS 10.15 и более поздних версиях, поэтому не поддерживает другие платформы.
  • Глобальные сочетания клавиш используют API Carbon, который Apple не заменила, а клавиши мультимедиа не поддерживаются в приложениях в песочнице.

В подборках

Темы

Частые вопросы

Что такое KeyboardShortcuts?
Swift-пакет для добавления в приложения macOS глобальных настраиваемых пользователем клавиатурных сочетаний с готовым интерфейсом для их записи. KeyboardShortcuts — Swift-пакет для приложений macOS, которым нужны глобальные клавиатурные сочетания, настраиваемые пользователем. Достаточно один раз определить именованное сочетание, добавить в экран настроек представление-рекордер на SwiftUI или Cocoa и зарегистрировать обработчик нажатия или отпускания клавиши. Пакет сохраняет выбранное сочетание в UserDefaults и предупреждает пользователя, если оно уже используется системой или главным меню приложения.
KeyboardShortcuts можно использовать бесплатно? Какая у него лицензия?
KeyboardShortcuts распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
KeyboardShortcuts всё ещё поддерживается?
Обновлялся за последние 6 месяцев. Последний коммит в KeyboardShortcuts — 11 сент. 2026 г..
Для чего можно использовать KeyboardShortcuts?
Добавление настраиваемой пользователем глобальной горячей клавиши в утилиту для строки меню. Настройка сочетаний клавиш пользователями в окне параметров приложения macOS. Добавление в приложение сочетаний клавиш, которые пользователи могут записывать и сохранять с помощью собственного хранилища.
Как установить KeyboardShortcuts?
Добавьте пакет в Xcode через вкладку Swift Package Manager, указав URL репозитория Зарегистрируйте название сочетания клавиш, затем добавьте представление Recorder на экран настроек Отслеживайте сочетание клавиш с помощью onKeyUp или onKeyDown
Где скачать KeyboardShortcuts?
Исходный код и инструкции по установке — на GitHub: https://github.com/sindresorhus/KeyboardShortcuts

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Фреймворк логирования для платформ Apple (macOS, iOS, tvOS, watchOS, visionOS), который направляет сообщения в несколько логгеров: консоль, файлы и пользовательские бэкенды.

13,3 тыс.+1 за неделю2,3 тыс.Objective-CBSD-3-ClauseОбновлён 3 дня назад

Контейнер сетки для SwiftUI на Swift, вдохновлённый CSS Grid: поддерживает гибкие, фиксированные и зависящие от содержимого треки, объединение ячеек и явное размещение.

2,1 тыс.+2 за неделю101SwiftMITОбновлён позавчера