В macOS можно очень удобно назначить переключение раскладки на Caps Lock (а когда нужно включить именно Caps — просто зажать его). Из-за специфики работы приходится работать на Windows, а потому захотелось подобного решения, и оно есть — AutoHotkey.
Скачиваем AutoHotkey с официального сайта.
Открываем в проводнике директорию с автозапуском:
%USERPROFILE%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
Создаем новый текстовый файл с таким содержимым:
SendMode Input
SetWorkingDir %A_ScriptDir% CapsLock::Send, {Alt Down}{Shift Down}{Shift Up}{Alt Up}{Ctrl Down}{Shift Down}{Shift Up}{Ctrl Up}
Переименовываем файл в caps_to_change_kb_layout.ahk
(название любое, расширение должно быть ahk
).
Запускаем файл. Впоследствии он будет запускаться автоматически при входе в систему.
P.S. Можно указать в скрипте только нужную комбинацию для переключения раскладки — Ctrl+Shift или Alt+Shift. Локально я использую Ctrl+Shift, а на удаленных серверах по RDP по умолчанию настроен Alt+Shift, поэтому в скрипте обрабатываются одновременно оба варианта.
P.P.S. Переключение раскладки по Caps Lock не работает в оснастке Active Directory и иногда слетает при подключении по RDP (в последнем случае нужно просто через ПКМ по иконке AutoHotkey в трее перезапустить скрипт).