Мои триггеры и правила в Karabiner-Elements
За шесть лет ведения блога я упоминал эту программу, как минимум пять раз в разных заметках и вот настала очередь и отдельной заметки про него.
Одна маленькая настройка пережила у меня несколько макбуков, версии macOS и бесконечные эксперименты с автоматизацией. Почти у всех моих систем был короткий срок жизни, а у этой — уже почти десять лет.
У меня нет большой коллекции правил для Karabiner-Elements (рус. Карабинер элементс). За все это время у меня остался, по сути, один и тот же конфиг: я собрал его однажды, немного допилил по дороге и с тех пор почти не менял.
Хороший ремап со временем перестает ощущаться как «кастомизация» и становится такой же естественной частью работы, как трекпад или привычные жесты в BetterTouchTool.
Безусловно, Karabiner-Elements один из самых мощных опенсорсных инструментов для модификации клавиатуры на MacOS. Хотя мой опыт скучнее и поэтому полезнее.
Я использую один и тот же принцип триггеров:
- Супер-кнопка Caps Lock для системных и общих действий
- Ergoemacs-режим для работы в Терминале
- Правый Option команды внутри активного приложения
- Правый Shift вспомогательные команды, если не хватило с правым Option
Как это работает
Я стараюсь не запоминать разные сочетания для одной и той же функции в разных программах. Вместо этого у меня есть свой слой прикладных команд: например, Right Option + S почти везде отвечает за боковую панель.
Дальше под капотом все устроено чуть сложнее. Karabiner-Elements ловит мое сочетание, а BetterTouchTool уже отправляет в активное приложение ту команду, которую оно понимает — либо стандартный шорткат, либо пункт меню.
В итоге мне не нужно помнить, как именно сайдбар открывается в Календаре, Почте или Finder. Я просто нажимаю одно и то же сочетание, а дальше система сама переводит его на язык конкретной программы.
Заодно я перестал делать вид, что правые Option и Shift вообще зачем-то существуют
Гипер-ключ (Hyper Key)
Ну с Caps Lock (рус. капс лок), думаю, что сразу понятно. Это знаменитый режим гипер-ключа, когда при нажатии на капс лок срабатывает комбинация Contol ⌃, Option⌥, Shift ⇧, Command ⌘. И это удобно. Фактически, в большинстве случаев мы редко используем капс и так почему же не сделать его действительно полезным? Это назовем глобальным слоем. В гипер-ключ я добавляю все популярные сочетания, задействованные каждый день: скриншоты и скринкасты.
Если не считать мелочей, конфиг я менял всего один раз: научил Caps Lock работать в двух режимах — как Hyper Key и как обычный Caps Lock.
Правый Options
Правый Options (рус. опшен) у меня отвечает за команды внутри текущего приложения. Если гипер-ключ — это глобальный слой для системных действий, то Right Option — локальный: сюда вынесены сайдбары, навигация, редактирование и другие команды, смысл которых зависит от активной программы.
Демострацию работы можно посмотреть в программе Почта. Фактически, я перенес туда команды в духе Command-сочетаний, но воспринимаю его не как замену Command, а как просто основной модификатор на уровне приложений. Часто бывает, что Command + A у разных программ может быть занят или назначен на что-то другое. Мне удобнее, что будут те команды, которые нужны именно мне.
Ergoemacs
Режим Ergoemacs активируется с помощью пробела и в основном помогает мне в Терминале. Я могу открыть любой текстовый файл в редакторе nano или vim, чтобы быстро удалить ненужные строки.
Правый Shift
Вспомогательные команды через правый Shift (рус. шифт), если больше нечего назначить через правый Options. Хотя у меня, фактически, это используется только для вызова Slidepad. Наверное, когда-нибудь в следующей итерации выбора правил я от него откажусь и просто все запиню в BTT, который уже сделал аналог ремапера для клавиатуры.
Эта система может показаться избыточной, потому что у меня здесь работают сразу Karabiner-Elements и BetterTouchTool. Но входной билет не обязательно должен быть таким дорогим: если вам нужен только практический результат, можно начать вообще с пары удобных сочетаний для скриншотов и не пытаться сразу строить целую клавиатурную философию.
Чтобы использовать мой конфиг достаточно его скачать и закинуть в скрытую папку:
/Users/username/.config/karabiner/karabiner.jsonЕще по теме
- Официальный сайт программы
- База пользовательских правил