2

В aquamacs, как мне переназначить ключ capslock в meta? Я могу переназначить команду для управления с помощью:

(setq mac-command-modifier 'ctrl)

Есть ли подобный способ переназначить колпачок?

РЕДАКТИРОВАТЬ: Я знаю, что я могу переназначить ключи в системных настройках, но я действительно хотел бы ограничить ущерб только для аквамаков. Точно так же, как отображение клавиши управления на ctrl, но для capslock.

2 ответа2

2

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

1

Помимо раздела "Системные настройки" «Ключи-модификаторы», я не думаю, что приложение может переопределить поведение клавиши блокировки caps.

Я вполне уверен, что событие ключа Caps Lock не передается приложениям, и при этом они не могут переопределить эффект переключения. Может быть, вы могли бы сделать что-нибудь, с помощью чего вы будете следить за состоянием клавиши caps lock и посылать alt при его изменении ... но это очень запутанно и немного бесполезно (если вы удерживаете клавишу, это не сработает)

Вам действительно нужен ключ блокировки шапки в других приложениях?

Если так, возможно, вы могли бы написать AppleScript, чтобы переключать отображение клавиш Caps Lock? Например, в псевдокоде:

loop forever:
    if frontmost application == "Aquaemacs":
        keys.capslock = "Meta"
    else:
        keys.capslock = "Default

Не должно быть трудностей с использованием AppleScript, код из этой ветки поддержки Apple должен быть хорошим началом:

tell application "System Preferences"
    activate
    set current pane to pane "com.apple.preference.keyboard"
end tell

tell application "System Events"

    tell application process "System Preferences"
        get properties

        click button "Modifier Keys..." of tab group 1 of window "Keyboard & Mouse"
        tell sheet 1 of window "Keyboard & Mouse"
            click pop up button 1
            click menu item "No Action" of menu 1 of pop up button 1
            delay 3
            click button "OK"
        end tell
    end tell
end tell

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .