Добавить Compose ключ к OS X

10

Я хочу изменить одну из моих клавиш на клавиатуре на клавишу Compose, чтобы я мог легко вводить общие акценты или символы, например: Compose+ e+ '-> é.

Могу ли я изменить настройку или установить программу, чтобы добавить эту функцию? Например, я хотел бы использовать Caps Lockкак Compose.

MikeyB
источник
1
Если вы работаете в OS X Lion, удержание буквенной клавиши по умолчанию выдаст вам список общих акцентированных символов, которые вы можете выбрать с помощью цифровых клавиш.
Дан Джей
1
Только в определенных приложениях. И только те, которые Apple выбрала для вас, что, как правило, неполное.
MikeyB
1
Этот вопрос (и ответ) также имеет отношение: superuser.com/questions/202695/real-compose-key-on-mac-os
elaichi
1
FWIW, предварительно одобренный список Apple, из которых можно выбрать акцентированные символы, вы можете взломать .
Даниил

Ответы:

20

Я написал полную статью, объясняющую, как установить реальный ключ композиции ( например, Right Option + '+ eé), используя комбинацию KeyRemap4MacBook и определенных правил ввода Какао.

Шаг 1: выберите ключ Compose

Выберите клавишу Compose, чтобы она была легко доступна, но не мешала вам делать то, что вы обычно делаете. Я использую Right Optionключ как мой ключ Compose. У меня уже есть Left Optionключ, поэтому нужный мне немного бесполезен. И это как-то соответствует положению Composeклавиши на старых клавиатурах Sun.

Это было бы Right Optionна клавиатуре Mac. Я рекомендую это.

Шаг 2: переназначить ключ Compose

Проблема в том, что настройки клавиатуры Mac OS X:

  • не позволяйте различать Left Optionи Right Optionключи
  • только позволяет переназначить клавиши-модификаторы на другую клавишу-модификатор (или вообще ничего)

К счастью, есть KeyRemap4MacBook, который позволяет вам делать вещи очень низкого уровня с помощью клавиатуры. Установите это.

Теперь мы переназначим наш ключ компоновки на то, что будет понимать следующий слой. Я выбрал Shift Control F13для этого. Маловероятно, что вам понадобится эта комбинация клавиш.

В файле ~/Library/Application Support/KeyRemap4MacBook/private.xmlположить следующее:

<?xml version="1.0"?>
<root>
  <item>
    <name>Send Shift-Ctrl-F13 for Right Option</name>
    <identifier>private.send_shift_ctrl_f13_for_ropt</identifier>
    <autogen>--KeyToKey-- KeyCode::OPTION_R,
                          KeyCode::F13, ModifierFlag::SHIFT_L
                                      | ModifierFlag::CONTROL_L
    </autogen>
  </item>
</root>

Наконец, в Системных настройках откройте настройки KeyRemap4MacBook и нажмите кнопку ReloadXML . Затем активируйте новую опцию.

Шаг 3: создайте составные привязки

Последний шаг - создание фактических привязок. Я решил импортировать правила из /usr/share/X11/locale/en_US.UTF-8/Composeмоей системы Debian.

Боб Карес написал сценарий, который позволяет преобразовывать правила создания X11 в привязки клавиш Какао.

Либо конвертируйте Composeсвой собственный файл, используя скрипт Боба, либо загрузите мой DefaultKeyBinding.dict из статьи . Сохраните это в ~/Library/KeyBindings/DefaultKeyBinding.dict.

Будьте осторожны: по умолчанию сценарий Боба использует F13вместо этого, Shift Ctrl F13поэтому DefaultKeyBinding.dictвам нужно изменить:

"\UF710"

в:

"^$\UF710"

Если по какой-то причине вы решили пойти на другую комбинацию, прочитайте эту статью Xah Lee, чтобы узнать правильный синтаксис.

Сэм Хоцевар
источник
Содержание ссылки выглядит как отличное решение этой проблемы, но ответы на вопрос «Другой вопрос» должны быть не просто ссылкой. Это нормально, чтобы включить ссылку, но, пожалуйста, суммируйте или извлеките ее в ответе. Идея состоит в том, чтобы сделать ответ самостоятельно.
Даниэль
@DanielLawson уверен, это имеет смысл; Я обновлю свой ответ.
Сэм Хочевар
Там я скопировал большую часть статьи. Я могу сделать это, так как у меня есть это :-)
Сэм Хочевар
Действительно потрясающий ответ; +50 интернетов. (Серьезно, я даю эту награду, как только система позволяет мне)
Даниэль
Рад, что вы указали ссылку, потому что теперь она мертва! (Вы можете обновить его, если он был перемещен.)
wchargin
13

Функция «мертвых ключей», аналогичная той, которую вы хотите, уже существует по умолчанию. Чтобы получить букву é, нажмите Option ⌥+ e, затем e.

После нажатия + eвы увидите ´выделенный символ (на моем компьютере он желтый). Нажмите любую букву, которая будет иметь этот знак ударения (это будет зависеть от вашего языка клавиатуры, для EN-US это é, ú, í, ó и á), и вы получите акцентированную версию буквы. Возможны и другие акценты: + `дает акравеобразный акцент (`` `), + eдает резкий акцент ( ´), + uдает диарез / умлаут (¨), + iдает акцентирующий круговой акцент (ˆ) и + nдает тильду (~). Неамериканские раскладки клавиатуры (в частности валлийский) имеют больше акцентов и позволяют больше букв для тех же акцентов. Просмотр клавиатуры полезен, чтобы помочь выяснить, какие комбинации в настоящее время поддерживаются в вашем макете.

Если вы находитесь на Lion, как упомянул @djacobson, вы можете удерживать некоторые буквы, чтобы увидеть различные варианты акцентированных букв.

Cajunluke
источник
если вы используете другую раскладку клавиатуры, это может быть не так ⌥+e. Чтобы увидеть, какой это, откройте программу «Просмотр клавиатуры» (на значке на панели задач) и нажмите . Клавиши, обозначенные желтым цветом, обозначают композиционные символы
Ciprian Tomoiagă
2

Клавиша Compose на выделенной раскладке клавиатуры

Я написал US custom , раскладку клавиатуры, которая реализует клавишу compose.

В Mac OS X есть два способа реализации клавиши compose: Либо можно реализовать с помощью либо текстовой системы Какао (как уже было описано в наиболее полезном ответе Сэма Хочевара), либо с помощью специальной раскладки клавиатуры. Оба метода имеют свои плюсы и минусы:

  • Реализация составной клавиши с текстовой системой Какао будет работать независимо от выбранной раскладки клавиатуры. Настройки текстовой системы Какао в DefaultKeyBinding.dictфайле, для сравнения, легко изменяются.
  • Реализация составной клавиши с раскладкой клавиатуры будет работать во всей ОС в любом приложении, а не только в приложениях Какао. Его можно включать и выключать с помощью пользовательского интерфейса, выбрав другую раскладку клавиатуры. Существует визуальная обратная связь при наборе составной комбинации (что немного меняет поведение).

Установка раскладки клавиатуры проста:

  1. Скачайте и откройте uscustom.2012-08-28.zip .
  2. Перемещение файлов UScustom.keylayoutи UScustom.icnsни к одному из:
    • /Library/Keyboard Layouts/ (для всех пользователей)
    • ~/Library/Keyboard Layouts/ (только для вас не требуются права администратора)
  3. Активируйте пользовательскую раскладку клавиатуры США на вкладке « Источники ввода » на панели « Язык и текстовые предпочтения», чтобы затем выбрать ее из пункта строки меню источников ввода - ее значок показывает флаг США с небольшим символом «С» для «пользовательского» или «для» сочинять » США пользовательский значок.

Клавиша составления пользовательской раскладки клавиатуры США сопоставлена ​​с двумя разными клавишами:

  • В ISO §есть клавиша compose (это избыточная клавиша клавиатуры ISO; в клавиатуре ISO клавиша возврата имеет форму перевернутой заглавной буквы L).
  • Есть еще один ключ сочинения в Shift+ Control+ F13. Это то же самое сопоставление, которое выбрал Сэм Хоцевар, поэтому, если вы хотите переназначить ключ составления на правильный ключ опции, вы можете точно следовать подробным объяснениям, описанным в его ответе.

Назначение композиции для кепслока

Если вы хотите назначить композе клавише CapsLock (как в оригинале вопрос), вам нужно Такаяма Фумихико в PCKeyboardHack в дополнение к KeyRemap4MacBook:

  1. Установите PCKeyboardHack.
  2. Откройте панель настроек PCKeyboardHack.
  3. Установите флажок « Изменить Caps Lock» .
  4. DoubleClick на клавиатурном от изменения Caps Lock и ввести 10(ISO §).

Это работает с пользовательской клавиатурой США . Чтобы назначить клавишу составления текстовой системы Какао (как тщательно описано Сэмом Хочеваром) на capslock, вам нужно сделать еще один шаг:

С KeyRemap4MacBook переназначьте ISO §на Shift+ Control+ F13(или там, где ваш ключ создания). Для этого выполните шаги, тщательно объясненные Сэмом Хочеваром, но изменив код, который должен быть помещен в ~/Library/Application Support/KeyRemap4MacBook/private.xmlэто:

<?xml version="1.0"?>
<root>
<item>
  <name>Send Shift-Ctrl-F13 for ISO Section</name>
  <identifier>private.send_shift_ctrl_f13_for_iso_section</identifier>
  <autogen>
    --KeyToKey--
    KeyCode::UK_SECTION, ModifierFlag::NONE,
    KeyCode::F13, ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L
  </autogen>
</item>
</root>
маш
источник
0

Что не так с методом ввода символов с акцентом по умолчанию (по состоянию на 10,7 Lion)

Просто удерживайте букву, и список альтернатив покажет.

Александр - Восстановить Монику
источник
4
Этот метод ввода резко замедляет скорость набора текста. Также: apple.stackexchange.com/questions/31487/add-compose-key-to-os-x/…
MikeyB