Теперь, когда я нажимаю опцию -b, я получу ∫. Мне не нужно вводить специальные символы и нужно сопоставлять опции-b для ярлыков для сертификатов приложений. Есть ли способ сделать это?
Как отключить ввод специальных символов при нажатии клавиши выбора в Mac OS X?
Ответ 1
У меня была такая же проблема, в той же самой IDE.
Решение этого - загрузить Ukulele отсюда:
http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=ukelele
В приложении вы можете создать новый keylayout, используя File → New из текущего источника. Нажатие опции покажет вам место для Option-b красным цветом - это означает, что это мертвая клавиша. Двойной щелчок мышью позволит вам изменить его с мертвой клавиши на выходной ключ. При запросе на вывод вы можете ввести одно и то же (нажав Option-b).
Таким образом, он выдает один и тот же символ, но не будет считаться мертвым ключом, поэтому Intellij может связывать его как ярлык.
Чтобы включить новый макет, вы должны сохранить его в своих форматах ~/Library/Keyboard (это помогает, если вы дадите ему новое имя с помощью клавиатуры → Установить имя клавиатуры), а затем включите его из системных настроек → Язык и Текст.
Ответ 2
С помощью веб-инструмента "в форме, отправьте форму и загрузите исправленную раскладку клавиатуры с отключенной функцией" опция ". Я делюсь рабочим файлом для стандартной раскладки клавиатуры на английском языке:
После включения этого настраиваемого сопоставления, если вы наберете букву с нажатой клавишей "option", в текстовый вывод ничего не печатается. Но "клавиша выбора опции" запускается ОС и обнаруживается вашей IDE. Таким образом, вы получаете то же поведение, что и для других командных клавиш!
- Загрузите файл сопоставления ключей
My Layout.keylayout
. - Переместите его на
~/Library/Keyboard\ Layouts/
- Открыть
System Preferences
→Language & Text
- Перейдите к
Input Sources
→(hit +)
→Select Others
- Вы должны найти
My Layout
в списке и выбрать его.
Шаг 4 может немного измениться в версиях MacOS. Пожалуйста, будьте терпеливы, чтобы найти список раскладок клавиатуры в настройках.
Ответ 3
Вот подробные шаги к ответу Себастьяна Заха. (Я немного пошатнулся, прежде чем я начал работать).
(Альтернативно здесь готовый файл)
- Загрузить Ukelele
- Вы можете запустить его непосредственно из файла .dmg
- Файл → Новый, основанный на текущем исходном источнике (я выбрал США)
- Нажмите кнопку "Модификаторы"
- Выберите каждый модификатор из списка с Вниз вниз или Вправо вниз в столбце Option. (Там может быть как Либо вниз, либо вверх, но AFAIK вы можете оставить их.)
- Нажмите кнопку "минус" для каждого типа
- Перейдите в меню клавиатуры → Установить имя клавиатуры
- Измените имя так или иначе, чтобы было легче идентифицировать
- Перейдите в Файл → Сохранить как
- Сохранить в ~/Library/Клавиатура\Макеты/с суффиксом .keylayout
- Выйти из учетной записи Mac OS
- Войдите в
- Перейти к Системные настройки → Клавиатура → Источники входных данных
- Нажмите кнопку + → Другие → Ваш новый макет должен быть доступен
- Добавить новый макет
- Возможно также оставить оригинальную раскладку клавиатуры и настроить отличный способ переключения
Ответ 4
Используйте Ctrl-Alt-<MNEMONIC>
. IMHO намного проще, чем устанавливать и настраивать отдельное приложение.
Ответ 5
У меня есть решение!
Поместите файл по адресу: ~/Library/KeyBindings/DefaultKeyBinding.dict
as:
/* ~/Library/KeyBindings/DefaultKeyBinding.dict */
{
/* Additional Emacs bindings */
"~f" = "moveWordForward:";
"~b" = "moveWordBackward:";
"~<" = "moveToBeginningOfDocument:";
"~>" = "moveToEndOfDocument:";
"~v" = "pageUp:";
"~d" = "deleteWordForward:";
"~^h" = "deleteWordBackward:";
"~\010" = "deleteWordBackward:"; /* Option-backspace */
"~\177" = "deleteWordBackward:"; /* Option-delete */
/* Escape should really be complete: */
"\033" = "complete:"; /* Escape */
}
Он скроет исходный текстовый ввод. Но вы все равно можете получить это, используя Ctrl-Q перед комбинацией. Так что Ctrl-Q Alt-f дает мне, например. Фактически, я пишу этот ответ с включенной опцией keybindings. Вы также можете добавить другие ключи, которые вам нравятся! Официальная ссылка: https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/EventOverview/TextDefaultsBindings/TextDefaultsBindings.html
Вот хороший список вещей, к которым вы можете привязать: https://www.hcs.harvard.edu/~jrus/site/selectors.html
О, кстати, если вы привяжете ключ к действию undefined, ваше приложение будет иметь утечку памяти, и в течение нескольких секунд у вашей системы будет нехватка памяти. Протестировано на эль-капитане, трудным путем.
Ответ 6
Используя Apple JRE, комбинации клавиш Option будут работать как ярлыки, а не вставлять специальные символы.
Ссылка для скачивания: https://support.apple.com/kb/DL1572?locale=en_US
Это старая устаревшая JRE (основанная на Java 6), но по состоянию на октябрь 2015 года она по-прежнему работает лучше всего с моей установкой JetBrains RubyMine. (Что-нибудь еще, ключи возвращаются к вставке специальных символов.)
Ответ 7
У меня была такая же проблема на новом Macbook с VSCode, который отлично работал на моем старом Macbook. Когда я набрал alt-shift-f для формата, я получил unicode. Я понял, что разница в том, что мой старый Macbook имел английскую клавиатуру вместо стандартного "ABC-Extended". Добавление британской клавиатуры исправило проблему для меня.
Ответ 8
Я нашел подходящее обходное решение. Я использую программное обеспечение Karabiner, чтобы изменить свой правый ключ ввода, чтобы контролировать, когда он удерживается.
Итак, что сделал iv, переназначил ключ опции на элемент управления + cmd +, так как я не знаю никаких команд, которые используют все три модификатора. Теперь я могу сопоставить правильные ярлыки без символов. Но при необходимости вы также можете указать дополнительные ключи
Добавьте это в свой private.xml: (между корнем)
<item>
<name>Change option Key to cmd + control + option</name>
<identifier>private.optiontoelse</identifier>
<autogen>__KeyToKey__
KeyCode::OPTION_L,
KeyCode::OPTION_L, ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__
KeyCode::OPTION_R,
KeyCode::OPTION_R, ModifierFlag::CONTROL_R | ModifierFlag::COMMAND_R</autogen>
</item>
Затем перезагрузите xml и включите опцию в верхней части вкладки "Изменить ключ"
Ответ 9
Используйте ABC в качестве метода ввода вместо ABC-Extended, тогда опция + [ char] сможет использовать ярлык приложения, а не показывать специальный символ.
Ответ 10
Просто используйте ключ esc вместо meta, например, мета-x-карты для esc-x.