На маке можно ввести любой из многих десятков тысяч символов, которые входят в таблицу Юникода. Для этого навскидку можно назвать четыре способа: общесистемное окно «Символы», всплывающая панель «Эмодзи и символы», список автозамены в «Системных настройках» и — высший пилотаж — своя клавиатурная раскладка. Однако есть и пятый, наиболее компромиссный способ: достаточно чуть подредактировать один настроечный файл — и все необходимые символы будут доступны на расстоянии одного нажатия удобной для вас клавиши.

Многие из вас наверняка знают о функции Press and Hold, когда при удержании некоторых клавиш-букв всплывает небольшая панель схожих символов (по аналогии с тем, как это происходит в iOS). Более полно эта функция реализована для латинских алфавитов: например, при нажатии на клавишу с латинской A, E, I, O или U всплывает панель со всеми вариантами этой буквы, оснащенными различными диакритическими знаками, допустимыми для включенного вами языка ввода. Впрочем, для русского языка этот «фокус» работает с буквами Е и Ь, для которых, соответственно, становятся доступными для альтернативного ввода буквы Ё и Ъ.

Однако мало кто знает, что набор символов, доступных через такую всплывающую панель, можно гибко настраивать на свое усмотрение. Допустим, весьма удобно вводить символы валют, удерживая ту же букву Р (от слова «рубль»):

osx-type-n-hold-01

Или — спецсимволы, начиная с логотипа Apple, по нажатию на клавишу Ф (она же латинская A):

osx-type-n-hold-02

Как это сделать? Элементарно. Пойдем по пунктам.

Шаг 1. Откройте папку /System/Library/Input Methods/PressAndHold.app/Contents/Resources (она находится внутри служебной утилиты PressAndHold, которая и отвечает за работу всплывающей панели альтернативных символов).

Шаг 2. Если вы хотите настроить русскую клавиатурную раскладку, найдите в открытой папке файл Keyboard-ru.plist, скопируйте его на рабочий стол и откройте в любом удобном для вас текстовом редакторе.

Шаг 3. Практически в самом начале файла вы увидите фрагменты кода с фразой Roman-Accent-Е, Roman-Accent-Ь — именно здесь и настраиваются буквы, по нажатию на которые должна срабатывать панель PressAndHold. Вот полный фрагмент кода, который нас интересует:

<key>Roman-Accent-Е</key>
<dict>
    <key>Direction</key>
    <string>right</string>
    <key>Keycaps</key>
    <string>Ё Е</string>
    <key>Strings</key>
    <string>Ё Е</string>
</dict>

Красным отмечены те элементы, которые вам нужно заменить при настройке своих букв. Например, если вы хотите настроить русскую букву Р на ввод разных валютных знаков (рубли, доллары, евро, фунты стерлингов, гривны), в наш файл нужно вставить такой код:

<key>Roman-Accent-Р</key>
<dict>
    <key>Direction</key>
    <string>left</string>
    <key>Keycaps</key>
    <string>₽ $ € £ ₴</string>
    <key>Strings</key>
    <string>₽ $ € £ ₴</string>
</dict>

Для настройки буквы Ф для ввода спецсимволов, используемых в меню OS X, в файл нужно добавить такой код:

<key>Roman-Accent-Ф</key>
    <dict>
    <key>Direction</key>
    <string>left</string>
    <key>Keycaps</key>
    <string> ⌘ ⌥ ⇧ ^ ⎋ ⏏ ⌫ ↑ ⇡ ↖ ⇞ ⇥</string>
    <key>Strings</key>
    <string> ⌘ ⌥ ⇧ ^ ⎋ ⏏ ⌫ ↑ ⇡ ↖ ⇞ ⇥</string>
</dict>

Шаг 4. Повторите то же самое для строчных букв, если хотите набирать те же наборы спецсимволов, вне зависимости от регистра. Сохраните файл и перенесите его в ту же папку (система попросит пароль администратора).

Все! Ничего даже перезагружать не нужно — просто перейдите в любое приложение, где можно ввести какой-нибудь текст, и проверьте, как работают клавиши Р и Ф, если их ненадолго удержать нажатыми. Круто, правда? :)

К сожалению, описанный метод прекрасно работает только с буквами. Как привязать панель Press and Hold к цифрам и пунктуационным знакам, пока остается загадкой.

Не работает Press and Hold?

Бывает и так, что функция вызова панели альтернативных символов не работает. Самых очевидных причин этого всего две. Во-первых, в настройках системы может быть отключена функция повторного ввода символов при удержании клавиш. В этом случае ползунок «Автоповтор клавиши» нужно сдвинуть вправо от положения «Выкл.».

osx-type-n-hold-03

Вторая причина — вы могли когда-то отключить функцию Press and Hold вручную, например через «Терминал». Чтобы включить ее, введите в «Терминале» команду defaults write com.sublimetext.3 ApplePressAndHoldEnabled -bool true и перезапустите либо текстовые приложения, либо OS X целиком. После этого все должно будет заработать.

Наслаждайтесь. ;)