Я использую Karabiner на Mac OS X, чтобы некоторые из моих клавиш работали как полумодификаторы: например, нажатие Enter — это Enter, но удержание — это Meta. Легко ли сделать то же самое в Linux?
PS. Я имею в виду: я хочу иметь возможность использовать клавишу Enter и как клавишу-модификатор, и как клавишу Enter, в зависимости от того, удерживается ли она или нажата и отпущена. (Это не то же самое, что залипающие клавиши.)
решение1
Два варианта
я используюДомашний модификатордля достижения этого. Разработчик также предлагает xcapeкак альтернатива.
Сравнение
Разработчик At Home Modifier говорит следующее о xcape.
Плюсы: Не нужно перекомпилировать для каждого обновления X-сервера или xf86-input-evdev. Код меньше.
Минусы: Может быть недоступно для Wayland, так как расширения XTest и Record могут быть удалены. Вероятно, мешает другим программам, которые используют расширение Record, например AutoKey или xnee.
Мой опыт
Я использовал оба. Лично я предпочитаю At Home Modifier по нескольким причинам.
- Очень просто настроить At Home Modifier с помощью
xorg.conf
правила. Таким образом, его можно применять к определенным клавиатурам, оставляя другие клавиатуры в покое. - At Home Modifier действует на системном уровне, то есть он лучше работает в многопользовательских средах (если только вам не нужны другие настройки, в этом случае xcape может быть более подходящим).
- At Home Modifier сопоставляет клавишу-модификатор (например, Meta) с «нажатой» клавишей (например, Enter), тогда как xcape делает наоборот. Когда X не запущен, например, на консоли или в диспетчере дисплеев, я бы предпочел иметь доступ к «реальной» резервной клавише, например, Enter. Я бы использовал ее гораздо чаще в таких ситуациях.
Первый плюс xcape, упомянутый выше, может повлиять на вас, а может и нет, в зависимости от вашего дистрибутива. Если вы немедленно обновите Ubuntu (я так сделал), вам может потребоваться перекомпилировать At Home Modifier самостоятельно, если ppa отстает (он отставал на несколько месяцев по крайней мере один раз). Если вы используете Arch Linux, пакет AUR обновлен и достаточно прост для повышения номера версии. Старая версия в любом случае, как правило, совместима.