Как переназначить клавиши на клавиатуре mac os

Обновлено: 05.07.2024

Как переназначить одну клавишу клавиатуры Mac OS X на другую без использования каких-либо внешних инструментов? Возможно ли вообще обойтись, не будучи разработчиком Mac? В новой macOS X 10.12 Sierra это оказалось довольно просто, используя небольшую утилиту с именем hidutil .

Проблема

Вам не нравится раскладка клавиатуры Mac или, что еще хуже, вам приходится работать с другой раскладкой на работе, чем дома. В любом случае вы можете установить какой-нибудь внешний инструмент, который сделает переназначение за вас, но, может быть, вам не нравится иметь дополнительное приложение только для переназначения одной клавиши? Моя проблема была связана с наличием английской клавиатуры дома и американской на работе. Хотя IMO не проблема, чтобы привыкнуть к любому из тех, кто переключается между ними ежедневно, это раздражает. В частности, был один ключ, который усложнял задачу с точки зрения разработчика. Это была тильда `. Клавиша тильда находится рядом с 1/! на американской клавиатуре и заменяется знаком раздела § на британской.

Решение

Как оказалось, для macOS X 10.12 Sierra вам не нужно ничего делать, кроме как запустить короткий фрагмент кода, чтобы выполнить необходимое переназначение.

Вот простой пример проблемы, с которой я столкнулся: переназначение §/£ на клавишу `/~.

Как видите, вы должны указать соответствующие значения (идентификатор использования) для HIDKeyboardModifierMappingSrc и HIDKeyboardModifierMappingDst, которые вам нужно будет найти в таблице в официальных документах. Более того, для каждого «идентификатора использования (шестнадцатеричный)» вам придется вычислять побитовое «ИЛИ» с 0x700000000, что в большинстве случаев очень просто, но если вы столкнулись с какими-либо трудностями, вы также можете использовать следующую команду Bash: /p>

Где 0x64 следует заменить значением из столбца "Идентификатор использования (шестнадцатеричный)".

Чтобы проверить текущие/действующие сопоставления, вы можете запустить:

И последнее, но не менее важное. Чтобы сбросить все, что вы настроили, просто выполните:

ПРИМЕЧАНИЕ

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

Автоматически устанавливать пользовательское сопоставление клавиш после каждой перезагрузки

Создайте файл plist, например. /Library/LaunchDaemons/org.custom.keyboard-remap.plist:

Затем загрузите его с помощью sudo launchctl load -w /Library/LaunchDaemons/org.custom.keyboard-remap.plist, чтобы он загружался при каждой перезагрузке системы.

Если вы хотите проверить, успешно ли загружен ваш файл plist, вы можете использовать sudo launchctl list | grep org.custom.keyboard-remap.plist .

ПРИМЕЧАНИЕ. Чтобы выгрузить файл plist из автозапуска системы, используйте sudo launchctl unload /Library/LaunchDaemons/org.custom.keyboard-remap.plist

Проблемы

У меня есть только одна проблема с этой проблемой, которая заключалась в поиске подходящего «идентификатора использования (шестнадцатеричный)» для клавиши § знака раздела. Как оказалось, в документации Apple он был назван Keyboard Non-US \ and |. Чтобы выяснить это, я использовал метод проб и ошибок, так что ничего особенного. Если вы столкнетесь с каким-либо лучшим способом поиска кодов «Идентификатор использования (шестнадцатеричный)», поделитесь им.

В случае получения сообщения об ошибке Invalid property list после загрузки plist-файла вы, скорее всего, пытаетесь использовать старый синтаксис для plist-файла с Program вместо упомянутых ProgramArguments .

Когда Apple разрабатывала клавиатуры MacBook, они, вероятно, думали о том, какие команды мы будем использовать чаще всего, когда назначали ярлыки для определенных функций, но, как и во всем остальном, что используется миллионами людей, фактическое использование не всегда выровнять по назначению, поэтому многие клавиши по умолчанию остаются неиспользованными, а некоторые отсутствующие клавиши остаются желательными. Если у вас есть много неиспользуемых сочетаний клавиш и вы хотели бы заменить их функции чем-то, что вы действительно используете, ниже приведено руководство по переназначению клавиш на вашем Mac.

Какие клавиши можно переназначить?

На клавиатуре Mac есть несколько наборов клавиш, которые выполняют отдельные функции. Вы можете изменить функции некоторых клавиш, но есть и такие, которые нельзя. Среди наборов клавиш, функции которых вы можете легко изменить и переназначить в соответствии с вашими потребностями, есть функциональные клавиши и клавиши-модификаторы.

Функциональные клавиши обычно расположены в верхней части клавиатуры и помечены либо буквой F, за которой следует число (например, F1, F2, F3 и т. д.), либо значком, обозначающим, что они делают (например, значок солнца для яркости и значок динамика для громкости).

Клавиши-модификаторы, с другой стороны, представляют собой наборы клавиш, которые вы используете в сочетании с другой клавишей для выполнения определенных функций, таких как клавиши CMD, CTRL, Caps Lock, Shift и Option.

Что делают функциональные клавиши?

Традиционно функциональные клавиши предназначались для быстрого доступа к системным командам, обычно скрытым под запутанными меню и подменю; однако, поскольку они не часто используются обычным пользователем, функциональные клавиши все чаще переназначаются, чтобы обеспечить быстрый доступ к основным инструментам настройки (таким как регулировка яркости или громкости), хотя их традиционные функции не были полностью удалены, а вместо этого просто делегированы на заднее сиденье. .*

Например, в текущем дизайне клавиатуры Mac

  1. Нажатие F1 уменьшает яркость.
  2. Нажатие F2 увеличивает яркость.
  3. Нажатие F3 позволяет переключиться в режим просмотра «Открыть», чтобы увидеть все запущенные программы или приложения.
  4. Нажатие клавиши F4 обеспечивает быстрый доступ к инструментам для бизнеса, общения и Интернета.
  5. Нажатие F7 позволяет перематывать просматриваемое видео назад.
  6. При нажатии F8 отображаются эскизы текущих рабочих мест.
  7. Нажатие F9 запускает «Управление полетом».
  8. При нажатии F10 отображаются все открытые окна активного приложения.
  9. Нажатие F11 скрывает все открытые окна и показывает рабочий стол.
  10. Нажатие F12 показывает или скрывает сводку.

*Чтобы использовать традиционные функции функциональных клавиш, необходимо нажать F1 или F2 вместе с клавишей Fn.

**К клавишам F5 и F6 по умолчанию не привязана какая-либо конкретная функция.

Что делают ключи-модификаторы?

  1. Command+A, чтобы выбрать все элементы в активном окне
  2. Command+C, чтобы скопировать выделенные элементы.
  3. Command+X Вырезает выбранные элементы.
  4. Command+F, чтобы открыть диалоговое окно «Найти».
  5. Command+I, чтобы показать дополнительную информацию о выбранном в данный момент элементе.
  6. Command+M, чтобы свернуть активное окно
  7. Command+Z для отмены предыдущего действия
  8. Command+V, чтобы вставить элементы, ранее вырезанные или скопированные
  9. Command+O, чтобы открыть выбранный элемент
  10. Command+W, чтобы закрыть активное окно

Кнопки-модификаторы используются не только в качестве сочетаний клавиш для общесистемных команд, но и для выполнения команд, специфичных для приложения, таких как:

  1. Command+Option+Пробел, чтобы открыть меню «В центре внимания».
  2. Command+Shift+A, чтобы открыть папку «Приложения».
  3. Command+Shift+U, чтобы открыть папку «Утилиты».
  4. Command+Shift+I для подключения к вашему iDisk
  5. Shift–Command–(?), которая открывает меню «Справка».

Как переназначить клавиши на вашем Mac

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

Чтобы переназначить функциональные клавиши и изменить их работу,

Перейти в меню Apple

  1. Откройте «Системные настройки».
  2. Перейдите на вкладку "Клавиатура".
  3. Выберите «Ярлыки».
  4. Выберите «Использовать все клавиши F1, F2 и т. п. как стандартные функциональные клавиши».

Чтобы переназначить клавиши-модификаторы и назначить новые комбинации клавиш для быстрых клавиш,

  1. Выполните шаги 1–3.
  2. Нажмите «Ключи-модификаторы».
  3. Выберите клавишу-модификатор, функцию которой вы хотите изменить.
  4. Выберите новое действие, которое должна выполнять клавиша-модификатор при нажатии.

Это работает для общесистемных команд; однако вы также можете переназначить клавиши для выполнения определенных функций в определенных приложениях.

  1. Выполните шаги 1–4.
  2. Выберите «Ярлыки приложений».
  3. Нажмите кнопку "Добавить" (со значком "плюс").
  4. Нажмите "Приложение".
      1. Выберите приложение, для которого вы хотите использовать новое сочетание клавиш.
      2. Если вы не можете найти нужное приложение в списке, выберите «Другое», а затем найдите приложение с помощью диалогового окна «Открыть» (обратите внимание, что некоторые приложения не позволяют пользователям создавать собственные сочетания клавиш).< /li>
      3. Если вы хотите использовать один и тот же ярлык для нескольких приложений, выберите «Все приложения».
        1. Перейдите к полю "Название меню".
            1. Введите команду меню, для которой вы хотите создать новый ярлык, например, «Объединить все окна».
            2. Если для доступа к команде меню, для которой вы хотите сделать ярлык, требуется несколько шагов, введите команду меню в точном порядке шагов, которые вам нужно сделать для доступа к этой конкретной команде, с разделением каждого шага символом «>». " персонаж. Например, если вы хотите создать ярлык для команды «Экспорт в PDF», введите «Файл > Экспорт в PDF» в поле «Название меню».
              1. После этого перейдите в поле "Сочетание клавиш" и нажмите комбинацию клавиш, которую вы хотите использовать для своего пользовательского сочетания клавиш.
              2. Нажмите "Добавить".
              3. Выполните те же действия, если хотите создать отдельные сочетания клавиш для определенных приложений.

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

              Раньше я использовал Karabiner для переназначения Right Alt на Right Control (как пользователь Emacs я использую Control НАМНОГО чаще, чем Alt), но обновление до Sierra сломало это. Переход на более раннюю версию невозможен.

              Как вручную переназначить ключи в Sierra? Я специально хотел бы переназначить Right Alt на Right Control.


              4 ответа 4

              Техническая заметка Apple TN2450 описывает, как переназначить клавиши. Выполнение следующей команды переназначит Right Alt на Right Control.

              Обратите внимание, что приведенная выше команда не переключает правый Alt и правый элемент управления. Они оба будут Right Control. Если у вас MacBook, вы не заметите этого, пока не подключите внешнюю клавиатуру. Если вы хотите переключить правый Alt и правый элемент управления, вам нужно добавить вторую команду переключения, как показано ниже.

              В таблице внизу Технической заметки есть список шестнадцатеричных значений для каждого ключа. Чтобы обобщить приведенный выше ответ для переключения любых клавиш, вы должны или шестнадцатеричное значение из этого списка вместе с 0x700000000 . Следующий код Python демонстрирует один из способов сделать это.


              @Cᴀʟʟᴏᴅᴀᴄɪᴛʏ, чтобы сбросить любой ключ, просто снова запустите команду со значением этого ключа как в Src, так и в Dst .

              Это возвращается при перезагрузке. Я могу повторно запускать эту команду при каждой загрузке, но я бы предпочел этого не делать. Есть ли способ сделать это постоянным?

              @StevenC.Howell К сожалению, этот список неполный. Я хочу переназначить клавишу меню на клавиатуре Windows, чтобы она работала как вторая командная клавиша.

              Более общий и удобный подход — использовать Karabiner-Elements, версию Karabiner, которая работает на Sierra.


              Краткий обзор Karabiner-Elements. Он работает на macOS High Sierra 10.13.3 (17D102). Я успешно поменял местами правые клавиши Command и Option.

              Сторонние приложения никогда не бывают "более общими". Зачем кому-то загромождать свою систему приложениями, которые делают то, что встроено прямо в ОС?

              @Bachsau носит более общий характер и позволяет делать множество других вещей, например. настройка комбинаций клавиш, макросов и профилей или использование общих и/или разделенных конфигураций сопоставления для любых внутренних и внешних клавиатур.

              @Bachsau У меня разные профили для каждой из моих клавиатур, поэтому они работают одинаково. Очень хорошее приложение

              Это дополнение к ответу Стивена С. Хауэлла.

              У меня новый MacBook Pro со скандинавской клавиатурой. В этой новой модели больше нет клавиши Esc, что для меня является существенным недостатком.

              Я обнаружил, что следующее переведет клавишу § (вверху слева, слева от 1 и выше клавиши табуляции), которую, я не думаю, что когда-либо использовал для чего-либо до сегодняшнего дня, для создания Esc.

              В документации Apple (ссылка на ответ Стивена) это помечено как "Клавиатура не для США \ и |" (0x64).

              При этом коды клавиш перебираются и меняются один за другим в надежде, что методом проб и ошибок вы сможете найти ключ, который не особенно полезен для вас. Попробуйте ввести что-нибудь, когда вас попросят — если вместо того, что вы ожидали, вы получите g, значит, вы нашли правильный код клавиши. (Измените 0x70000000a на что-то другое, если g вам не подходит. Может быть, вы хотите переназначить клавишу g?) Когда вы закончите печатать, просто нажмите Enter, чтобы перейти к следующей клавише.

              Что бы это ни стоило, последняя команда в цикле — это то, как вы удаляете все настройки UserKeyMapping:

              Когда вы сначала запускаете свойство hidutil --get UserKeyMapping, оно создает

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

              (Если вы не знакомы с Терминалом, просто скопируйте/вставьте что-то из for до тех пор, пока не будет выполнено в приглашении bash$ или аналогичном.)

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

              Если некоторым читателям неудобно делать это самостоятельно, вот быстрый скрипт, который сделает это за вас. Опять же, просто скопируйте/вставьте это в приглашение Терминала.

              Очевидно, что если вы получили ключ, отличный от 0x700000064, вам нужно изменить его в скрипте или в файле ~/bin/userkeymapping, который он создает, если вы уже запускали вышеуказанное.

              Переназначение клавиатуры Windows mac

              В последние несколько дней я обнаружил, что использую на своем Mac клавиатуру, предназначенную для пользователей Windows. Причина такого изменения заключалась в том, что клавиатура моего MacBook Pro вызывала боль в запястье. Частично виноват в этом небольшой ход клавиш на клавиатуре MacBook.

              У меня так получилось, что благодаря моей последней сборке Hackintosh у меня появилась проводная клавиатура AmazonBasics, поэтому я решил использовать ее на своем Mac. Я сразу же почувствовал облегчение в запястьях, но, поскольку эта клавиатура была разработана для Windows, а не для Mac, переключатель представлял собой совершенно новую проблему.

              Вместо понятных клавиш ⌃, ⌥ и ⌘ мне были представлены клавиши Control, Windows и Alt. Все клавиши-модификаторы на клавиатуре Windows отображаются 1: 1 с клавишами на Mac с точки зрения функциональности. Например, клавиша Control (⌃) делает на Mac то же самое, что и в Windows, клавиша Option (⌥) на Mac делает то же самое, что и клавиша Alt в Windows, а клавиша Command (⌘) на Mac. делает то же самое, что и клавиша Windows.

              Это порядок, а не функция

              Проблема не в функциях клавиш, потому что, как мы уже обсуждали, с чисто функциональной точки зрения все клавиши-модификаторы (Control, Option, Command) сопоставляются 1:1. Проблема связана с их расположением на клавиатуре.

              Различия в расположении клавиш-модификаторов между Mac и Windows:

              Макинтош: ⌃ | ⌥ | ⌘

              Windows: ⌃ | ⌘ | ⌥

              Такая мелочь, перестановка клавиш Command и Option, может вызвать проблемы у тех, кто годами печатает на Mac. К счастью, эту проблему можно решить очень просто.

              Видеопрохождение

              < /p>

              Как переназначить клавиши-модификаторы в OS X

              Шаг 1. Откройте «Системные настройки» → «Клавиатура» → «Клавиши-модификаторы».

              Клавиши-модификаторы Системные настройки Клавиатуры

              Шаг 2. Выберите стороннюю клавиатуру Windows в раскрывающемся списке Выберите клавиатуру.

              Переназначение клавиатуры Windows Keys Mac Preferences

              Шаг 3. Для параметра Option (⌥) выберите ⌘ Command.

              Шаг 4. Для настройки клавиши Command (⌘) выберите (⌥) Option.

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

              Суть в том, что существует множество отличных клавиатур, предназначенных для использования на компьютерах с Windows. Нет никаких причин, по которым вы не сможете использовать отличную клавиатуру только потому, что она изначально была разработана для Windows. Воспользуйтесь возможностью переназначить ключи-модификаторы в Системных настройках OS X. В конце концов, это сэкономит время, нервы и избавит вас от необходимости переучивать то, что может занять годы мышечной памяти.

              Рекомендации по клавиатуре

              Проводная клавиатура AmazonBasics достойна своей цены, но я поклонник механических клавиатур с переключателями Cherry MX Brown. Эти переключатели производят тактильный эффект «щелчка», но не слишком громкие. Моя любимая клавиатура Cherry MX Brown от Das Keyboard. К счастью, Das Keyboard выпускает версии своих клавиатур для пользователей Windows и Mac.

              Чтобы узнать больше о клавиатурах, обязательно ознакомьтесь с обзором клавиатуры Джереми. Какой тип клавиатуры вы используете на своем Mac?

              FTC: мы используем автоматические партнерские ссылки, приносящие доход. Подробнее.

              Вы читаете 9to5Mac — экспертов, которые день за днем ​​сообщают новости об Apple и окружающей ее экосистеме. Обязательно заходите на нашу домашнюю страницу, чтобы быть в курсе всех последних новостей, и следите за новостями 9to5Mac в Twitter, Facebook и LinkedIn, чтобы оставаться в курсе событий. Не знаете, с чего начать? Ознакомьтесь с нашими эксклюзивными историями, обзорами, практическими рекомендациями и подпишитесь на наш канал YouTube

              Mac

              Линейка Apple Mac состоит из MacBook, MacBook Air, MacBook Pro, iMac, Mac Pro и Mac Mini. Mac использует macOS для своей операционной системы.

              Как

              Подборка руководств, советов и рекомендаций от команды 9to5Mac, которые помогут вам починить и получить максимальную отдачу от вашего любимого оборудования.

              Читайте также: