19

Есть ли способ привязать Alt Shift для переключения раскладки клавиатуры на OS X?

8 ответов8

18

По умолчанию в OS X, вращение через раскладки клавиатуры определяется как Ctrl+пробел. Это отображение отключено в пользу триггера для Spotlight.

Чтобы изменить это сопоставление по умолчанию, вам нужно перейти в Системные настройки-> Оборудование-> Клавиатура и мышь-> Сочетания клавиш. Там вы найдете пункт списка для меню ввода. Установите флажок, и он станет активным. Оттуда дважды щелкните по предопределенному ярлыку в правой части списка. После того, как существующий ярлык выбран и доступен для редактирования, вы можете ввести предпочитаемую последовательность ярлыков.

К сожалению, alt+shift сам по себе не допускается в качестве ярлыка. Вам нужно иметь неконтролирующий ключ в миксе. Самое близкое, что вы можете придумать, - это использовать alt+z (используя «z», который находится рядом со смещением на левой стороне клавиатуры). У вас также есть возможность установить ярлык для обратного порядка вращения. Alt+Shift+Z является естественным вариантом для этого.

14

Используйте Карабинер (изначально KeyRemap4MacBook). Поиск option shift pc . Отметив первый флажок, вы сможете переназначить поведение ПК.

настройка языка переключения стиля ПК в Карабинере alt+shift

11

Настройщик клавиатуры Karabiner для OS X может отображать alt-shift (или ctrl-shift) для переключения языков

1

Я обнаружил, что небольшая утилита MLSwitcher [2] позволит вам сделать именно это и прекрасно работает под macOS 10.13 High Sierra. Доступно бесплатно в App Store.

Более подробная информация здесь: http://bluezbox.com/mlswitcher2.html

1

В некоторых локалях command-space и option-command-space по умолчанию изменяют источники ввода. Вы можете включить или изменить сочетания клавиш в Системных настройках:

Тем не менее, ярлыки не позволяют вводить ярлыки, такие как опция-shift. Если вы действительно хотите использовать option-shift, вы можете сопоставить его с комбинацией клавиш, такой как option-command-space, с помощью KeyRemap4MacBook. Это срабатывает при отпускании смены:

<autogen>__KeyOverlaidModifier__ KeyCode::SHIFT_L, ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::NONE, KeyCode::SHIFT_L, ModifierFlag::OPTION_L, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyOverlaidModifier__ KeyCode::SHIFT_R, ModifierFlag::OPTION_R | ModifierFlag::SHIFT_R | ModifierFlag::NONE, KeyCode::SHIFT_R, ModifierFlag::OPTION_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

Это срабатывает, когда вы нажимаете клавишу shift, но для этого нужно нажать клавишу shift перед опцией для таких клавиш, как option-shift- [:

<autogen>__KeyToKey__ KeyCode::SHIFT_L | ModifierFlag::SHIFT_L | ModifierFlag::OPTION_L | ModifierFlag::NONE, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>
<autogen>__KeyToKey__ KeyCode::SHIFT_R | ModifierFlag::SHIFT_R | ModifierFlag::OPTION_R | ModifierFlag::NONE, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>

Это требует нажатия опции и одновременного переключения:

<autogen>__SimultaneousKeyPresses__ KeyCode::OPTION_L, KeyCode::SHIFT_L, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>
<autogen>__SimultaneousKeyPresses__ KeyCode::OPTION_R, KeyCode::SHIFT_R, KeyCode::SPACE, ModifierFlag::OPTION_L | ModifierFlag::COMMAND_L</autogen>
1

Также, если вы ищете Cmd+Shift, Punto Switcher (после отключения автопереключения языка) может привязать переключение языка к Cmd+Shift.

0

Карабинер, упомянутый @wayfarer, помог мне. Вот правило для сопоставления Ctrl-Shift и Ctrl-Space:

{
    "description": "Swithch input language by ctrl-shift",
    "manipulators": [
        {
            "from": {
                "key_code": "left_shift",
                "modifiers": {
                    "mandatory": [
                        "left_control"
                    ]
                }
            },
            "to": [
                {
                    "key_code": "spacebar",
                    "modifiers": [
                        "left_control"
                    ]
                } 
            ],
            "type": "basic"
        },
       {
            "from": {
                "key_code": "right_shift",
                "modifiers": {
                    "mandatory": [
                        "right_control"
                    ]
                }
            },
            "to": [
                {
                    "key_code": "spacebar",
                    "modifiers": [
                        "left_control"
                    ]
                } 
            ],
            "type": "basic"
        }
    ]
}
0

я изменил мину - \ что почти альт - сдвиг, просто сдвинут на один ключ вправо (работает с моей MacBookPro международной клавиатурой, то мы клавиатура больше сдвига влево и \ ключ над клавишем ⏎)

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