@simon_db

Существует ли решение для переключения раскладка клавиатуры в Window и X11 (wsl2) по комбинации CapsLock?

Всем привет. У меня в WSL2 установлена idea. В Windows 10 она пробрасывается через X11 (XcXsrv). В XcXsrv настроено правило переключение раскладки "-xkblayout us,ru -xkboptions grp:caps_toggle". Данное правило отлично работает, но только если это же правило не стоит для переключения раскладки в Windows. Т.е если в Windows включить смену раскладки по СapsLock, тогда в X11 сеансе не переключается раскладка. Т.е проблема в том, что если настроить единую комбинацию клавиш для переключения раскладки в Windows и X11, то в Windows она переключается, а в приложении, которое отображается через X11 она остается прежней. Видимо Windows перехватывает эту комбинацию и не отправляет ее в X11. Есть ли какое-то решение этого вопроса.

Пробовал работать с переключением ALT + Shift (одновременно в X11 и Windows), но и тут проблемы, в X11 приложении (в данном случае Idea), не воспроизводиться комбинация Ctrl + Shift + Alt + T. Из этой комбинации вылетает Shift, idea думает, что я нажимаю Ctrl+Alt+T.
  • Вопрос задан
  • 237 просмотров
Пригласить эксперта
Ответы на вопрос 1
niknils
@niknils
системный администратор, python-разработчик
можно попробовать сделать комбинацию клавиш для переключения языка в Windows и/или в X11 другой, а затем написать программу, допустим, посредством pyHook или даже PowerShell, которая бы ожидала (слушала) нажатия конкретных клавиш и печатала свои. то есть, нажатием '[Caps Lock]' провоцируется нажатие других клавиш, меняющих язык.

полагаю, лучше запускать такое средство на стороне Windows.

насколько я знаю, через WSH/VBScript это не сделать, так как нет таких средств. возможно, можно вызывать библиотеки через VBScript, но думаю, что варианты с PowerShell (медленный, если из коробки) и pyHook (требует Python) лучше.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы