Додати клавішу Compose в OS X


10

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

Чи є налаштування, яке я можу змінити, або програма, яку я можу встановити, щоб додати цю функцію? Наприклад, я хотів би використовувати Caps Lockяк Compose.


1
Якщо ви перебуваєте в OS X Lion, утримуючи буквену клавішу, за замовчуванням надається список загальних наголошених символів, з яких ви можете вибрати за допомогою цифрових клавіш.
Dan J

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 впевнений, що це має сенс; Я оновлю свою відповідь.
sam hocevar

Там я скопіював більшу частину статті. Я можу це зробити, оскільки володію цим :-)
sam hocevar

Воістину приголомшлива відповідь; +50 мереж. (Серйозно, я даю цього щедрого, як тільки система мене дозволить)
Даніель

Радий, що ви наклали посилання, тому що він тепер мертвий! (Ви можете поновити його, якщо він переміщений.)
wchargin

13

Функція "мертвих клавіш", схожа на ту, яку ви хочете, вже існує за замовчуванням. Щоб отримати літеру, натисніть Option ⌥+ e, а потім e.

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

Якщо ви перебуваєте на Леві, як згадував @djacobson, ви можете утримувати кілька літер, щоб побачити різні варіанти акцентування цього листа.


якщо ви використовуєте іншу розкладку клавіатури, це може бути не так ⌥+e. Щоб побачити, що це таке, відкрийте переглядач клавіатури (зі значка лотка мови) та натисніть . Жовті клавіші позначають композиційні символи
Ciprian Tomoiagă

2

Клацніть клавішу на виділеній клавіатурі

Я написав американський звичай , розкладку клавіатури, яка реалізує клавішу compose.

У Mac OS X існують два способи реалізації клавіші компонування: або можна реалізувати або з текстовою системою какао (як уже описано у найбільш корисній відповіді Сем Хочевар), або з виділеною розкладкою клавіатури. Обидва методи мають свої плюси і мінуси:

  • Реалізація ключового ключа за допомогою текстової системи Какао працюватиме незалежно від обраної клавіатури. Параметри текстової системи какао у DefaultKeyBinding.dictфайлі порівняно легко змінюються.
  • Реалізація ключових клавіш із розкладкою клавіатури працюватиме на всій ОС у будь-якій програмі, а не лише у програмах Cocoa. Його можна вмикати та вимикати за допомогою інтерфейсу користувача, вибравши іншу розкладку клавіатури. Існує візуальний зворотний зв'язок під час набору композиції (що трохи змінює поведінку).

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

  1. Завантажте та відкрийте uscustom.2012-08-28.zip .
  2. Перемістіть файли UScustom.keylayoutта UScustom.icnsбудь-яке з:
    • /Library/Keyboard Layouts/ (для всіх користувачів)
    • ~/Library/Keyboard Layouts/ (лише для вас, не потрібні права адміністратора)
  3. Активуйте власну розкладку клавіатури США на вкладці " Джерела введення" на панелі " Налаштування мови та тексту" , щоб потім вибрати її з пункту меню вхідних джерел - її піктограма показує прапор США з невеликою літерою C для "користувацького" або для " скласти »: Американський спеціальний значок.

Компонентний ключ власної розкладки клавіатури США відображається на дві різні клавіші:

  • На ISO є клавіша складання §(тобто клавіша надлишку клавіатури ISO; клавіатури ISO - це ті, де клавіша повернення має форму перевернутої великої літери L).
  • Існує ще одна клавіша для складання Shift+ Control+ F13. Це те саме відображення, яке вибрав Сем Хочевар, тому якщо ви хочете перезаписати потрібний вам ключ клавіші, тоді ви можете точно слідувати ретельним поясненням, описаним у його відповіді.

Призначення композиції до шапки

Якщо ви хочете призначити композицію клавіші caplock (як в оригінальному запитанні), вам потрібен PCKeyboardHack Takayama Fumihiko на додаток до KeyRemap4MacBook:

  1. Встановіть PCKeyboardHack.
  2. Відкрийте панель налаштувань PCKeyboardHack.
  3. Установіть прапорець Змінити Caps Lock .
  4. Подвійне клацання по клавіатурного від зміни Caps Lock і ввести10 (ISO §).

Це працює з композиційним клавішем розкладки клавіатури США . Для того, щоб призначити текстовій системі какао-композиційного ключа (як ретельно описано Сем Хочеваром) в замку, вам потрібен ще один крок:

За допомогою 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 Лева)

Просто затримайте лист і з’явиться список альтернатив.


4
Цей спосіб введення різко уповільнює швидкість введення тексту. Також: apple.stackexchange.com/questions/31487/add-compose-key-to-os-x/…
MikeyB
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.