Использование Caps Lock как Esc в Mac OS X

Как сделать Caps Lock работать как Esc в Mac OS X?

Ответ 1

Изменить: как описано в этом ответе, более новые версии MacOS теперь имеют встроенную поддержку для повторного связывания Caps Lock с Escape. Таким образом, больше нет необходимости устанавливать стороннее программное обеспечение для достижения этой цели.


Вот моя попытка получить исчерпывающий визуальный ответ (со ссылками) о том, как этого добиться, используя Seil (ранее известный как PCKeyboardHack).

  1. Сначала перейдите в Системные настройки, выберите " Клавиатура", затем вкладку "Клавиатура" (первая вкладка) и нажмите " Клавиши-модификаторы":

Step 1

Во всплывающем диалоговом окне установите Caps Lock Key на No Action:

choose no action

2) Теперь нажмите здесь, чтобы загрузить Seil и установить его:

616b2ffb0d.png

3) После установки у вас будет установлено новое приложение (Mountain Lion и новее), и если вы работаете в более старой ОС, вам, возможно, придется проверить новую панель "Системные настройки":

open seil or the preference pane

4) Установите флажок "Заменить заглавные буквы" и введите "53" в качестве кода клавиши выхода:

set the keyboard code

И вы сделали! Если это не сработает сразу, вам может потребоваться перезагрузить компьютер.

Впечатлительный? Хотите больше контроля?

Вы также можете попробовать KeyRemap4MacBook, который на самом деле является флагманским инструментом переназначения клавиатуры на pqrs.org - он также бесплатный.

Если вам нравятся эти инструменты, вы можете сделать пожертвование. Я не имею к ним никакого отношения, но я уже давно пользуюсь этими инструментами и должен сказать, что ребята отлично справились с этим, добавили новые функции и исправили ошибки.

Вот скриншот, чтобы показать несколько (сотни) предварительно выбираемых опций:

Picture 1.png

В PQRS также есть отличная утилита NoEjectDelay, которую вы можете использовать в сочетании с KeyRemap4MacBook для перепрограммирования клавиши Eject. После небольшой настройки у меня есть возможность переключать AirPort Wifi.

Эти утилиты предлагают неограниченную гибкость при переназначении клавиатуры Mac. Повеселись!

Ответ 2

Так как macOS 10.12.1 можно переназначить Caps Lock на Esc изначально (Системные настройки → Клавиатура → Модификационные клавиши).

введите описание изображения здесь

Ответ 3

Возможно.

Решение 1

Из статьи на TrueAffection.net.

  • Скачайте PCKeyboardHack и установите его.
  • Перейдите к PCKeyboardHack в Системных настройках.
  • Включите "Изменить Caps Lock" и установите код клавиши на 53.

Решение 2

Это решение не включает в себя исправление драйвера клавиатуры, но дает вам конкретное решение Vim.

OS X поддерживает сопоставление ключа Caps Lock с целой связкой ключей, но вы должны сделать это "вручную", редактируя файлы.plist. Процесс описан в этой статье. В качестве дополнения к этой подсказке я предлагаю сначала установить для Caps-Lock значение None в системных настройках, затем вам нужно изменить только одно значение в файле.plist. Кроме того, вы, конечно, можете использовать Редактор списка свойств вместо того, чтобы выполнять шаги преобразования XML.

Хитрость заключается в том, чтобы сопоставить клавишу Caps Lock с клавишей Help (код 6), которой нет на большинстве клавиатур. Но если это так, он будет рассматриваться как клавиша вставки, которую вы, вероятно, в любом случае не используете, поскольку вы спрашиваете о переназначении Caps Lock, чтобы не растягивать руки;)

Затем вы можете сопоставить справку и клавишу Insert с Esc в vim.

map  <Help> <Esc>
map! <Help> <Esc>
map  <Insert> <Esc>
map! <Insert> <Esc>

Это будет работать для gvim (Vim.app). Я не заставил его работать с vim в Терминале, и я не тестировал его с MacVim.

Так что, это довольно сложное, недоделанное решение или установка стороннего взлома. Ваш выбор;)

Изменение: Только что заметил решение 3, если вы используете MacVim, вы можете использовать Ctrl, Option и Command в качестве Esc. С Системными настройками тривиально сопоставить Caps Lock с одной из этих клавиш.

Ответ 4

Теперь гораздо проще сопоставить ключ Caps Lock с Esc с macOS Sierra.

  • Откройте "Системные настройки" → "Клавиатура".

  • Нажмите кнопку "Модификатор ключей" в правом нижнем углу.

  • Нажмите раскрывающееся поле рядом с аппаратным ключом, который вы хотите переназначить, и выберите Escape.

  • Нажмите "ОК" и закройте "Системные настройки".

введите описание изображения здесь

https://9to5mac.com/2016/10/25/remap-escape-key-action-macbook-pro-macos-sierra-10-12-1-modifier-keys/

Ответ 5

Я не был рад ни одному из ответов здесь, и пошел искать решение командной строки.

В macOS Sierra 10.12 Apple представила новый способ для пользователей переназначать ключи.

  • Нет необходимости возиться с системным графическим интерфейсом
  • Никаких особых привилегий не требуется
  • Полностью настраиваемый
  • Нет необходимости устанавливать какую-либо стороннюю хрень, такую как PCKeyboardHack/Seil/Karabiner/KeyRemap4MacBook/DoubleCommand/NoEjectDelay

Если это звучит хорошо для вас, посмотрите на hidutil.

Например, чтобы переназначить caps-lock для экранирования, обратитесь к таблице ключей и найдите, что caps-lock имеет код использования 0x39, а escape - код использования 0x29. Поместите эти коды or'd с шестнадцатеричным значением 0x700000000 в исходный код и dest, как это:

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x700000029}]}'

Вы можете добавить другие сопоставления в той же команде. Лично мне нравится переназначать caps-lock в backspace и переназначать backspace для удаления:

hidutil property --set '{"UserKeyMapping":[{"HIDKeyboardModifierMappingSrc":0x700000039,"HIDKeyboardModifierMappingDst":0x70000002A}, {"HIDKeyboardModifierMappingSrc":0x70000002A,"HIDKeyboardModifierMappingDst":0x70000004C}]}'

Чтобы увидеть текущее отображение:

hidutil property --get "UserKeyMapping"

Ваши изменения будут потеряны при перезагрузке системы. Если вы хотите, чтобы они сохранялись, поместите их в скрипт и настройте хук входа в систему:

sudo defaults write com.apple.loginwindow LoginHook /path/to/login_script.sh

Ответ 6

Единственное, что я знаю, как это сделать - привязать Caps Lock к Control, Option или Command. Это можно сделать с помощью панели "Клавиатура и мышь" в Системных настройках. Нажмите "Ключи модификаторов" в левом нижнем углу, и вы сможете переназначить Caps Lock, Control, Option и Command на любой из них.

@Craig: Это говорит о том, что Caps Lock можно использовать как обычный, то есть не переключаемый ключ. На моем MacBook, так как я повторно сопоставил Caps Lock с Control, индикатор Caps Lock никогда не загорается. Он просто действует как клавиша управления.

enter image description here

Ответ 8

Попробовав несколько из этих решений, у меня есть некоторые примечания:

DoubleCommand не позволит вам заменять esc и caps-lock.

PCKeyboardHack позволит вам отображать caplock для выхода, , но не имеет возможности отображать escape-код в caplock. Последние версии позволят вам выполнить полный своп, отредактировав обе клавиши.

Это может быть или не быть достаточным для ваших нужд (я знаю, что это для меня).

Ответ 9

Если вы не хотите устанавливать стороннее приложение, и вы действительно заботитесь об vim внутри iTerm, следующие работы:

Remap CapsLock, чтобы помочь, как описано здесь.

Краткая версия: используйте plutil или аналогично edit ~/Library/Preferences/ByHost/.GlobalPreferences*.plist, он должен выглядеть примерно так:

<key>HIDKeyboardModifierMappingDst</key>
<integer>6</integer>
<key>HIDKeyboardModifierMappingSrc</key>
<integer>0</integer>

Restart! Простой выход из системы и вход в систему не помогли мне.

В iTerm добавьте новое сопоставление ключей для справки: отправьте шестнадцатеричный код 0x1b, что соответствует Escape.

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

Ответ 10

Чтобы поменять ключ эвакуации ключом блокировки (а не только сопоставить один с другим), используя как PCKeyboardHack, так и KeyRemap4MacBook, вы должны следовать инструкциям в этот поток, сопоставляя ключ блокировки колпачка с кодом клавиатуры, который не используется клавиатурой, но учитывается KeyRemap4MacBook (например, 110). Затем в PCKeyboardHack выберите соответствующую опцию, которая отображает этот код для выхода (в случае 110, "Ключ приложения к побегу" ). Вот как выглядят ваши предпочтения KeyRemap4MacBook (при условии, что вы выбрали флажок "Показывать только разрешенные" ).

enter image description here

Я изначально попытался опубликовать эту информацию как отредактирование до cwd отличный ответ, но он был отклонен, Я призываю всех, кто хочет идти по маршруту, который я описываю, чтобы сначала прочитать его ответ.

Ответ 11

Seil еще не работает на macOS Sierra, поэтому я использую Karabiner Elements, загружаюсь из https://pqrs.org/latest/karabiner-elements-latest.dmg.

Либо используйте графический интерфейс, либо поместите следующее в ~/.karabiner.d/configuration/karabiner.json:

{
  "profiles" : [
    {
      "name" : "Default profile",
      "selected" : true,
      "simple_modifications" : {
        "caps_lock" : "escape"
      }
    }
  ]
}

Ответ 12

Вы также можете использовать DoubleCommand для переназначения этого и других ключей.

IIRC, он отобразит Caps Lock на Esc.

Ответ 13

Я нашел этот старый поток в поиске той же функциональности. До сих пор эта утилита была той, которую я нашел, которая, кажется, работает хорошо (на 10.5.6), без особых усилий:

http://www.pqrs.org/tekezo/macosx/keyremap4macbook/extra.html

Ответ 15

Карабин-Elements Мощный и стабильный настройщик клавиатуры для macOS. (Бесплатно)

https://pqrs.org/osx/karabiner/index.html

У меня работал Мохаве, чтобы изменить caps-lock на backspace

Ответ 16

Откройте настройки клавиатуры и нажмите клавиши-модификаторы... вы можете изменить клавишу Caps Lock на control, option, escape или command.

enter image description here