Настраиваемая раскладка клавиатуры: Command + V не вставляется в Safari и Mail

4

Я создал макет пользовательской клавиатуры ( .keylayoutфайл) и переназначен (среди других клавиш) X, Cи Vключи. Тем не менее, я хочу сохранить Cmd + X / C / V, как в QWERTY , потому что это практично, и я к этому привык.

Таким образом, в моем макете я сохранил исходные X, C, Vсопоставления, когда Commandнажимается:

<keyMap index="0">  <!-- No modifiers -->
  ...
  <key code="7" action="y" /> <!-- my modified layout -->
  <key code="8" action="x" />
  <key code="9" action="." />
...
<keyMap index="10">  <!-- command -->
  ...
  <key code="7" output="x" /> <!-- same as qwerty -->
  <key code="8" output="c" />
  <key code="9" output="v" />

Это работает хорошо, за исключением Command+ .(который должен делать Command+ V, т.е. вставлять) в Safari, Mail и некоторых других приложениях Apple ... В этом случае, использование оригинальной Vклавиши (на QWERTY-клавиатуре) работает ...

Я не понимаю, почему это не работает только для этого ярлыка? Я читал, что некоторые Cmd+…ярлыки являются специальными и не могут быть переопределены, но почему он работает с вырезкой / копированием, а не с вставкой? И почему он работает во всех приложениях, кроме Safari и Mail?


Я использовал макет bepo (французский дворак) и отредактировал его в текстовом редакторе. Моя версия на GitHub . Я открыл свой макет в гавайской гитаре, и он показывает это довольно хорошо, есть ли что-нибудь, что я мог бы попробовать с ним отладить / обнаружить проблемы?

Я также пытался открыть + сохранить свой макет с помощью Ukulele, и он больше не работает, он даже не обнаружен в OS X. Я вернулся к своей версии.

Матье Наполи
источник
Вы использовали Ukelele, чтобы сделать свой собственный макет?
Том Гевеке
Нет, я использовал макет bepo (французский дворак) и отредактировал его в текстовом редакторе. Моя версия на github . Я открыл свой макет в гавайской гитаре, и он показывает это довольно хорошо, есть ли что-нибудь, что я мог бы попробовать с ним отладить / обнаружить проблемы?
Матье Наполи,
Вы можете попробовать сохранить его в Ukelele, чтобы увидеть, имеет ли это какое-то значение. Также есть список рассылки Ukelele, где у кого-то может быть идея: groups.google.com/forum/#!forum/ukelele-users
Том Гевеке
@ TomGewecke Я пытался открыть + сохранить свой макет с помощью Ukulele, и он больше не работает, он даже не обнаружен в OS X. Я вернулся к своей версии. Спрошу в списке рассылки спасибо за ссылку.
Матье Наполи
Группа пользователей ukelele не смогла помочь?
Том Гевеке

Ответы:

3

Я не удивлен, что вы можете столкнуться с этой проблемой с Apple Software. В основном Command- .сочетание клавиш используется на Mac OS на протяжении десятилетий , как универсальный «Стой операции» клавиш.

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

Дополнительная информация

Apple впервые представила клавишу Command в 1980 году на компьютере Apple III.

Назначение клавиши «Command» состояло в том, чтобы позволить пользователям вводить команды клавиатуры в приложениях и в операционной системе. В Руководстве по интерфейсу пользователя Macintosh всегда рекомендовалось, чтобы разработчики использовали для этой цели клавишу Command (а не клавиши Control или Option).

Небольшой набор клавиатурных команд (таких как вырезание и вставка, открытие и сохранение) являются стандартными для всех приложений. Если приложению требуется больше ярлыков, чем можно получить с помощью 26 букв английского алфавита, используются двойные модификаторы, такие как Command + Option.

Другая необычная клавиша-модификатор на клавиатуре Macintosh, клавиша Option, служит модификатором как для ввода сочетаний клавиш, так и для ввода текста - она ​​используется для ввода иностранных символов, типографских символов и других специальных символов.

Как упоминалось ранее, Command- .ярлык был когда-то универсальным рекомендуемым ярлыком, но это больше не резервируется macOS. Фактически, в Таблице 67-3 Руководства по интерфейсу macOS для человека теперь перечисляется только одно сочетание клавиш с точкой (.). Это - Control- Option- Command- .сочетание клавиш для увеличения контрастности экрана. Вы можете прочитать об этом в руководстве по программированию доступности для OS X .

Мономет
источник
Ух ты, спасибо, что понял все это, это беспокоило меня уже пять лет! Теперь с вопросами «что я могу сделать» :) (1) Есть ли шанс, что macOS Sierra или будущие macOS это исправят, поскольку этот ярлык больше не зарезервирован? (2) Ты видишь что-нибудь, что я могу сделать?
Матье Наполи
Это только мои первые мысли: (1) Да, есть вероятность, что будущие программные / операционные системы Apple больше не будут использовать Command + . ярлык, особенно по мере того, как разрабатывается новое программное обеспечение - но стимула для его удаления из существующего программного обеспечения может не быть, поскольку многие долгосрочные пользователи (включая меня) все еще по умолчанию используют Command + . ярлык, чтобы остановить процесс, который они только что начали.
Monomeeth
(2) Главное, что вы можете сделать, это изменить ярлык, но я ценю, что вы не захотите этого делать. Но вы, возможно, уже привыкли использовать клавишу CTRL на машинах Windows для вырезания / копирования / вставки и т. Д., Поэтому, возможно ... :) Вы также можете получить некоторое временное облегчение от использования другого браузера и т. Д. (Хотя я довольно Убедитесь, что и Firefox, и Chrome используют ярлык Command + . на Mac для остановки процесса. Другой вариант может заключаться в том, чтобы поиграть с различными настройками на панели «Клавиатура» в Системных настройках (но вы, возможно, уже пробовали это в какой-то момент и имели нет радости).
Мономет
(2) Я на самом деле переназначил Command and Control давным-давно (Системные настройки) и всегда использовал его таким образом. TBH Я никогда не пытался без переназначения, чтобы видеть, будет ли это работать. Чтобы быть ясным, я нажимаю, Ctrl+vи это переводится как Command+.Также я использую Chrome по этой причине, и Airmail тоже. Приложения, в которых есть проблема: Safari, Mail. Приложения Apple, где это работает: Календарь, Заметки, TextEdit, Страницы, Магазин приложений и т. Д. Вот почему я нахожу это таким странным… Только Mail и Safari…
Матье Наполи
Да, и вообще-то (я не пробую это часто, так как я стараюсь избегать этих приложений), вставка работает везде в Mail, кроме как в теле письма (при написании нового письма). В Safari это не работает в адресной строке и в веб-формах (но работает, например, в настройках). Я думаю, что это как-то связано с виджетами приложений или что-то в этом роде ...
Матье Наполи