OSX 10.9.5 — разные раскладки клавиатуры для каждого приложения

Из того, что я вижу в Google, раньше был способ настроить его так, чтобы каждое приложение/окно могло иметь свою собственную раскладку клавиатуры. У меня есть два разных приложения, и мне нужны разные макеты для каждого (Дворак для одного и США для другого).

Похоже, что эта функция могла быть удалена где-то между тем, что я вижу в Google, и текущей версией 10.9.5. Есть ли другой способ сделать это сейчас?

Если вам нужно сделать это на уровне приложения, а не на основе документа, как показал Buscar웃, вы, вероятно, могли бы использовать комбинацию AppleScript и Keyboard Maestro . Раньше у меня была такая установка, и она работала хорошо. У меня нет кода в моей текущей системе, но, вероятно, я мог бы выкопать его из резервных копий.

Ответы (4)

Я также использую переключение клавиатуры.

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

клавиатура

Это предполагает, что вы установили источники ввода на клавиатуре sys pref, и вы также можете выбрать «Автоматически переключаться на источник ввода документов», если хотите.

Автопереключение:

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

Этот параметр появляется только при добавлении второго источника ввода.

источник ввода

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

Если вы используете для этого Keyboard Maestro, используйте действие «Установить раскладку клавиатуры» вместо AppleScript. Он мгновенно меняет макет, не открывая меню.

Как предложил @LeeJoramo, вы можете использовать Keyboard Maestro и некоторый AppleScript, чтобы включить желаемую раскладку при переключении на определенное приложение. Например, вот макрос KM, который устанавливает мою раскладку клавиатуры на «Греческий», когда я переключаюсь на TextMate:

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

Скрипт, заимствованный из этого ответа StackOverflow :

tell application "System Events" to tell process "SystemUIServer"
    tell (menu bar item 1 of menu bar 1 whose description is "text input")
        select
        tell menu 1
            click (first menu item whose title contains "Greek")
        end tell
    end tell
end tell
Отличный! Спасибо за предоставленный код. Следует отметить, что если вы используете популярную утилиту пунктов меню Bartender , этот скрипт не будет работать. Я не уверен, есть ли обходной путь.
Отлично спасибо! Я могу сделать то же самое без яблочного скрипта, в Keyboard Maestro теперь есть действие под названием «Активировать раскладку клавиатуры».

Есть приложение, которое может это сделать, но я сам не пробовал: AutoKeyboard

http://www.macupdate.com/app/mac/51829/автоклавиатура

Я использую это и работает очень хорошо.