2016-12-02 6 views
0

Я использую оптимизированный макет Neo2: https://www.neo-layout.org/Поймай и изменение клавиатуры на макинтош Сьерре подражать раскладку клавиатуры neo2

К сожалению, версия макинтош была основана на карабине (https://pqrs.org/osx/karabiner/), который перестал работать с обновления Sierra. Существует многообещающая новая версия под названием карабинные элементы (https://github.com/tekezo/Karabiner-Elements), которая, надеюсь, решит эту проблему.

Поскольку я не сейчас, когда исправление будет работать на mac sierra, я ищу не общее «быстрое и грязное» решение, которое просто сопоставляет стандартную немецкую клавиатуру с нео-макетом.

  1. Возможно ли поймать события клавиатуры для mac в масштабе всей страны?
  2. Какой язык/рамки я должен использовать, чтобы иметь возможность достичь этого обходного пути?

ответ

1

Я предложил бы использовать KeyBindingsEditor для создания/редактирования файла ключевых привязок, которые должны быть расположены/созданный здесь: {папку пользователя} /Library/KeyBindings/DefaultKeyBinding.dict

Обратите внимание, что ваши привязки клавиш файл должен использовать кодировку UTF-8, и вы должны перезагрузить компьютер после внесения изменений для их вступления в силу.

Кроме того, вот дополнительная информация о custom key bindings in macOS, которая может оказаться полезной.

+0

Конфигурационные файлы, сгенерированные программой, не работали. Но с предоставленной ссылкой я смог выполнить базовое переназначение. Это похоже на возможный вариант. Я попытаюсь снова отобразить клавиши со стрелками. – Xlaech

+0

Удалось ли вам использовать этот подход? –

0

Используя вышеприведенное решение, я смог вернуть свой 4. слой обратно с меньшими проблемами.

Вот что я сделал:

Шаг 1: Создайте DefaultKeyBinding.dict файл (я был неправ, то BindingsEditor работает)

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"  "http://www.apple.com/DTDs/ 
<plist version="1.0"> 
<dict> 
    <key>^a</key> 
    <string>moveDown:</string> 
    <key>^c</key> 
    <string>deleteForward:</string> 
    <key>^e</key> 
    <string>moveForward:</string> 
    <key>^i</key> 
    <string>moveBackward:</string> 
    <key>^l</key> 
    <string>moveUp:</string> 
    <key>^o</key> 
    <string>moveToEndOfLine:</string> 
    <key>^u</key> 
    <string>moveToBeginningOfLine:</string> 
    <key>^v</key> 
    <string>deleteBackward:</string> 
</dict> 
</plist> 

Шаг 2: Переоформления Command_Right в ctrl_left

Settings in Karabiner-Elements

Задачи

Этот подход, похоже, не работает в каждой программе.Отображения в Cmd + * (что я на самом деле хочу не работать) Это всего лишь несколько вопросов, которые я заметил, просто играя (вероятно, из-за CTRL + * premapped ярлыков):

  • В центре внимания искать левые сокращенные работы хорошо, но правая ярлык всегда идет до конца строки
  • для Microsoft Excel App идет полностью с ума, когда с помощью этого ярлыка
  • этот редактор, который я печатаю это в использует другие ярлыки, а

Заключение

Во-первых, я хотел бы упомянуть об этом в блоге: http://slongwell.github.io/articles/2016-09/karabiner-workaround

Такой подход делает работу в определенной степени и, безусловно, вариант, пока Karabiner не решает проблему. Однако, если вы найдете лучшее решение, не стесняйтесь публиковать сообщения здесь.