Русский

Может ли Karabiner-Elements назначить игровой контроллер?

Загрузить InputConfig в Mac App StoreЭто приложение полностью бесплатное. Создавать учётную запись не нужно. Нет подписок, нет сложных загрузок, и ничего не заблокировано. Оптимизировано для Apple Silicon.

Отчасти, и меньше, чем нужно большинству людей. Karabiner-Elements это лучший настройщик клавиатуры на Mac, бесплатный и с открытым исходным кодом, и он построен вокруг клавиатур и мышей. Начиная с версии 14.13, вышедшей в декабре 2023 года, он также читает некоторые геймпады: в его заметках к выпуску сказано, что устройства DirectInput поддерживаются, а XInput не поддерживаются вовсе, а более поздние версии добавили мёртвую зону для использования стика геймпада как указателя. Поэтому появится ли ваш геймпад, зависит от самого геймпада и его режима. Другой распространённый путь это геймпад, который может притворяться клавиатурой, например 8BitDo Zero 2 в режиме клавиатуры, который настраивают многие пользователи Anki. Если нужно, чтобы контроллер посылал клавиши и двигал мышь во всех приложениях, короче путь через программу назначения для контроллеров, например InputConfig.

Версия InputConfig 1.7, ожидаемая в октябре 2026 года, будет полностью доступна на русском языке.

Шаги

  1. Установите InputConfig и разрешите доступ Универсальный доступ.
  2. Сопрягите контроллер обычным способом. Он остаётся контроллером.
  3. Добавьте строку, нажмите Scan, нажмите кнопку и выберите клавишу, которую она должна посылать.
  4. Нажмите Включить (Activate). Работает во всех приложениях.

Назначьте контроллер на клавиши с помощью программы для контроллеров

  • Вы: Установите InputConfig, разрешите доступ Универсальный доступ и сопрягите контроллер обычным способом. Добавьте строку, нажмите Scan, нажмите кнопку и выберите клавишу, которую она должна посылать.
  • InputConfig: Читает геймпад как контроллер и посылает выбранную клавишу. Стики могут двигать мышь или четыре клавиши.
  • Проверка: Нажмите Включить (Activate), затем нажмите кнопку в любом приложении. Клавиша придёт туда.

Для Anki в частности, в руководстве по Anki есть готовая раскладка.

Главное окно InputConfig с выбранным пресетом Desktop Navigation: строки слева перечисляют управление контроллера, справа клавишу или щелчок, который оно посылает.
Figure 1. Главное окно InputConfig: каждая строка называет управление и клавишу или щелчок, которые оно посылает.

Используйте оба: один для клавиш, другой для контроллеров

Они не конкурируют. Используйте Karabiner-Elements для клавиатуры, например Caps Lock на Escape, а InputConfig для контроллера, MIDI-устройств и дополнительных кнопок мыши.

InputConfig добавляет задачу клавише и оставляет на месте её собственную, поэтому он не может поменять местами две клавиши, а это как раз то, для чего создан Karabiner. Он слушает клавиатуру, не блокируя и не переназначая саму клавишу, а клавиши с любой клавиатуры считаются одной и той же клавишей.

Выберите правильный инструмент для задачи с клавиатурой

Большинство тех, кто ищет альтернативу Karabiner-Elements, хотят чего-то проще или того, что не ставит драйвер. Правильный ответ зависит от задачи:

  • Поменять местами Caps Lock, Control, Option, Command или Globe. macOS делает это в Системных настройках, Клавиатура, Сочетания клавиш, Modifier Keys. Ничего ставить не нужно.
  • Превратить одну клавишу в другую до следующей перезагрузки. Собственная команда macOS hidutil в Terminal, показана ниже.
  • Клавиша Hyper на Caps Lock. Небольшое приложение Hyperkey или правило в Karabiner-Elements.
  • Макросы, горячие клавиши и правила для приложений с визуальным редактором. BetterTouchTool или Keyboard Maestro, оба платные.
  • Переназначение со слоями, записанное в файле конфигурации. Kanata, бесплатный и с открытым исходным кодом. На Mac он опирается на тот же драйвер виртуальной клавиатуры, что и Karabiner-Elements.
  • Дать задачу запасным клавишам, кнопкам мыши, контроллеру или MIDI-пэду. InputConfig, бесплатное приложение, которое я делаю. Он не ставит драйвер и хорошо справляется с F13 до F19, удерживаемыми правыми модификаторами и разной задачей для одной клавиши в каждом приложении.

Terminal: Поменять Caps Lock на F18 до следующей перезагрузки.

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000006D}]}'

Что происходит: Caps Lock теперь посылает F18, который InputConfig может прочитать как вход. Перезагрузка возвращает Caps Lock. На странице правые клавиши Command и Option больше команд, которые можно вставить.

Если ваш 8BitDo не появляется в Karabiner-Elements

Поднимайтесь по этой лестнице, начиная с самого простого шага:

  1. Проверьте режим. В заметках к выпуску Karabiner-Elements сказано, что поддержка геймпадов покрывает только устройства DirectInput, поэтому геймпад в другом режиме может не появиться.
  2. Используйте режим клавиатуры. У 8BitDo с таким режимом, например Zero 2 или Micro, в нём устройство появляется как клавиатура.
  3. Разрешите Мониторинг ввода. Karabiner-Elements нужен доступ Мониторинг ввода, чтобы видеть пульт в режиме клавиатуры.
  4. Используйте его как контроллер. InputConfig читает геймпады 8BitDo в режимах, перечисленных на странице подключения 8BitDo.

Коротко

  • Клавиатуры. Используйте Karabiner-Elements или встроенные в macOS Modifier Keys и hidutil.
  • Контроллеры. Используйте программу назначения контроллеров, например InputConfig.
  • Оба на одном Mac. Они не конкурируют.

Karabiner меняет то, чем является клавиша, а InputConfig даёт управлению задачу.

Вопросы

Поддерживает ли Karabiner-Elements контроллеры Xbox или PS5?

Не как программа назначения контроллеров. В заметках к выпуску сказано, что он читает геймпады DirectInput, а не XInput, поэтому всё зависит от геймпада и его режима. Программа назначения контроллеров вроде InputConfig читает контроллеры Xbox и PS5 напрямую.

Можно ли использовать контроллер 8BitDo с Karabiner-Elements?

Надёжно только модель, которая может переключиться в режим клавиатуры, например 8BitDo Zero 2. В обычных режимах он игровой контроллер, который InputConfig читает напрямую.

Как настроить пульт Anki на Mac с Karabiner-Elements?

Сопрягите пульт в режиме клавиатуры, дайте Karabiner-Elements доступ Мониторинг ввода и напишите правило, которое превращает каждую клавишу пульта в Space, 1, 2 или 4. Проще сопрячь его в одном из режимов контроллера и использовать программу назначения. На странице пульта Anki есть оба варианта.

Почему мой 8BitDo не появляется в Karabiner-Elements?

Karabiner-Elements создан для клавиатур и мышей, а в заметках к выпуску сказано, что поддержка геймпадов покрывает только устройства DirectInput, поэтому геймпад в другом режиме может не появиться. 8BitDo с режимом клавиатуры, например Zero 2 или Micro, появляется в нём как клавиатура. Чтобы использовать его как контроллер, InputConfig читает его напрямую.

Есть ли альтернатива Karabiner-Elements без драйвера?

Для замены клавиш-модификаторов сам macOS: Системные настройки, Клавиатура, Сочетания клавиш, Modifier Keys. Чтобы поменять одну клавишу на другую до перезагрузки, есть встроенная команда hidutil. Чтобы дать задачу запасным клавишам, кнопкам мыши и контроллерам, есть InputConfig: он не ставит драйвер и добавляет задачу клавише, а не заменяет её.

Ещё на русском

Подробные руководства на английском

Кто это пишет. Ryleigh Newman разрабатывает InputConfig и каждый день управляет своим Mac с помощью геймпада, потому что руки плохо слушаются. Эта страница переведена с английского. Если на Mac выбран русский язык, основные кнопки и меню приложения показываются по-русски; на этой странице они названы так же, с английским названием в скобках. Остальная часть приложения и сайта на английском языке.

Эта страница на других языках: English, Čeština, Dansk, Deutsch, Español, Suomi, Français, עברית, Magyar, Bahasa Indonesia, Italiano, 日本語, Norsk, Nederlands, Polski, Português, Slovenčina, Svenska, ไทย, Türkçe, Українська, Tiếng Việt, 简体中文

Загрузить InputConfig в Mac App StoreБесплатно. macOS 14 или новее. Без учётной записи, ничего не покидает ваш Mac. Исходный код на GitHub.