Как сделать нециклическое переключение раскладок

в 15:09, , рубрики: Песочница, метки: , ,

Вот этот пост побудил меня таки поделиться рецептом от одной особенности OS X. Меня дико раздражало отсутствие возможности настроить нециклическое переключение языков ввода. Привычка к такому способу переключения завелась уже давно, уж очень удобно. Для Linux эта функциональность вполне стандартна. Как там в мире Windows я уж не знаю, давно не заходил. Штатно, думаю, не работает, но запилить легко.

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

  • CapsLock — английский
  • Shift+CapsLock — русский

Это позволяет вообще не задумываться о текущем языке. Надо писать по-русски — нажал Shift+Caps и пишешь себе. При очередном обновлении ноута переполз на MacBook. И тут… Неожиданного было много, что-то настроил, к чему-то привык, благо iTerm2 позволяет сделать quake-like консоль. Но переключение раскладок все никак не поддавалось. Но, как оказалось, решение простое до безобразия.

Рецепт:

  1. Ставим karabiner и Seil
  2. В seil маппим CapsLock на Application key
    Как сделать нециклическое переключение раскладок - 1
  3. А теперь главная магия. В karabiner правим private.xml, добавляя вот такую штуку:
        <item>
            <name>English by application key, Russian by shift_l + application key</name>
            <identifier>private.change_input_source_english_russian</identifier>
            <autogen>
                __KeyToKey__
                KeyCode::PC_APPLICATION, ModifierFlag::NONE,
                KeyCode::VK_CHANGE_INPUTSOURCE_US
            </autogen>
            <autogen>
                __KeyToKey__
                KeyCode::PC_APPLICATION, ModifierFlag::SHIFT_L | ModifierFlag::NONE,
                KeyCode::VK_CHANGE_INPUTSOURCE_RUSSIAN
            </autogen>
            <autogen>
                __KeyToKey__
                KeyCode::PC_APPLICATION, ModifierFlag::SHIFT_R | ModifierFlag::NONE,
                KeyCode::VK_CHANGE_INPUTSOURCE_RUSSIAN
            </autogen>
    
        </item>
    

  4. Сохраняем. После чего на первой вкладке настроек karabiner активируем наш пункт:

    Как сделать нециклическое переключение раскладок - 2

Готово!

Теперь остается не найденным решение для копирования выделением и вставкой средней кнопкой мыши.

Автор: лейтенант Буэндиа

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js