Отключить привязку клавиш по умолчанию

Отключить привязку клавиш по умолчанию

В любом текстовом редакторе, когда я печатаю,
⌥ pон вставляется πв позицию курсора. Таким образом, каждая клавиша при нажатии с опцией вставляет какой-то специальный символ.
⌥ w

Вопрос

Как это отключить?

Почему я хочу это отключить?

  1. Я почти не использую эти символы.
  2. Я ярый пользователь emacs, поэтому я всегда предпочитаю сочетания клавиш вроде
    • ^ Aдля перемещения курсора в начало, вместоHome
    • ^ nна следующую строку, вместо
    • ^ Kубить строку
      Таким образом, я всегда использую Control + Keyдля каждой навигации в тексте.
      Но поскольку у Mac есть некоторые другие функции, Option + Keyя не могу использовать что-то вроде, ⌥ wчтобы скопировать область

Примечание: - Причина, по которой я люблю Mac, а не Linux, помимо Crispy UI, заключается в его встроенной поддержке сочетаний клавиш emacs. Если сочетание клавиш с optionмодификатором будет работать хорошо, любой текстовый редактор будет для меня emacs.

решение1

Сохраните следующее ~/Library/KeyBindings/DefaultKeyBinding.dict(создайте при необходимости).

{ "~a" = (); "~b" = (); "~c" = (); "~d" = (); "~e" = (); "~f" = (); "~g" = (); "~h" = (); "~i" = (); "~j" = (); "~k" = (); "~l" = (); "~m" = (); "~n" = (); "~o" = (); "~p" = (); "~q" = (); "~r" = (); "~s" = (); "~t" = (); "~u" = (); "~v" = (); "~w" = (); "~x" = (); "~y" = (); "~z" = (); }

Это отключает все комбинации ⌥<letter>. Перезапустите приложения, чтобы изменения вступили в силу.

DefaultKeyBinding.dict выше — это список свойств старого стиля 1 , определяющий пары ключ-значение с помощью синтаксиса . В этом случае ключи — это комбинации клавиш для активации метода в значении.{ key = value }

Используются стандартные символы клавиш словаря: ~ alt, ^ control, $ shift, @ command.
Следовательно, ~aозначает ⌥A (alt-A) и ^$1будет ⌃⇧1 (control-shift-1).

Значение для каждой клавиши установлено на ()—пустые скобки без метода. Поскольку DefaultKeyBinding.dict переопределяет /S*/L*/Fr*/AppKit.*/R*/StandardKeyBinding.dict, сочетание клавиш определяется как без метода и, следовательно, ничего не делает. Предпочтительно создать свой собственный файл привязок клавиш, как этот, а не редактировать системный.

1 При желании вы можете использовать новый стиль списка свойств XML — он работает так же.

решение2

Я обнаружил, что использование Unicode hex inputисточника ввода ( System Preferences > Keyboard > Input Sources, затем добавьте источник и выберите Otherпод языками) сработало для меня. Обнаружил это после попытки изменить источники ввода на основе предложения @exmaxx. ПРИМЕЧАНИЕ: Использование ABC (мой вариант по умолчанию) или US не решило проблему для меня.

решение3

Для тех, кто найдет это позже и у кого возникнут проблемы.

Мне это не удалось, а другой вариант с Ukelele имеет свои собственные проблемы (трудно удалить клавиатуру по умолчанию), поэтому я в итоге использовал BetterTouchTool, чтобы заменить сочетания клавиш Option на другие действия.

решение4

Решением также может бытьиспользовать другую раскладку клавиатуры, например U.S.:

  • проблемы с клавишами "alt": U.S. International,ABC
  • решение:U.S.

Измените его в System Preferences -> Keyboard -> Input Sources.


Я нашел решение на Stack Overflowздесьтак что вы можете отдать должное автору, если он вам тоже помог ;)

Связанный контент