Можно ли настроить команду на запуск при переключении на конкретный виртуальный рабочий стол (или действие) в среде KDE?
Я хочу запустить команду для рабочего стола (например, desktop2), которая при переключении на , это изменит языковой макет на английский США . Таким образом, при переключении на рабочий стол2 языковая раскладка автоматически будет английской (США) .
Вы можете переключиться на виртуальный рабочий стол два, используя следующий аргумент командной строки:
wmctrl -s 2
Таким образом, выполнив
wmctrl -s 2 && setxkbmap en
, вы должны переключиться на рабочий стол 2 и изменить свой язык на английский как предложено в вашем примере.
Вы можете использовать программу привязки клавиш, такую как autokey, или пользовательские сочетания клавиш KDE, чтобы установить привязку клавиш для вышеуказанной команды. В качестве альтернативы вы можете сохранить указанную выше команду в текстовом файле, заканчивающемся на .sh, а затем сделать исполняемый файл таким образом, чтобы в нем был активируемый сценарий, который будет переключать рабочие столы и менять языки для вас.
должен переключиться на рабочий стол 2 и изменить язык на английский, как предлагается в вашем примере.
Коммутация - это более длинная команда.
Переход к следующему занятию достаточно прост, используя:
qdbus org.kde.kglobalaccel /component/plasma_desktop invokeShortcut "Next Activity"
Однако, чтобы переключиться на конкретное занятие, вы должны сначала знать его идентификатор, который можно получить:
qdbus org.kde.kactivitymanagerd /ActivityManager/Activities ListActivities
Как только вы узнаете идентификатор действия, вы можете переключиться на это действие с помощью:
qdbus org.kde.kactivitymanagerd /ActivityManager/Activities SetCurrentActivity activity-key-in-previous-step
, а затем связать его с '& amp; & amp; Команда setxkbmap en ', как показано выше, при переключении виртуальных рабочих столов на переключение активности в сочетании с изменением языка.
Также обратите внимание:
export LC_ALL=C
изменит язык системы на английский
Благодаря ответу virtualxtc выше и ответу don_crissti . Для изменения макета загрузите этот почтовый файл , связанный с этой страницей. Распакуйте его в папку в домашней папке. Затем запустите терминал внутри папки и выполните следующие команды:
cmake CMakeLists.txt
make CMakeLists.txt
cmake CMakeLists.txt
sudo make install CMakeLists.txt
(может потребоваться установить make и cmake)
, а затем выполните эту команду, чтобы переключиться на английский:
xkb-switch -s us
и комбинацией может быть
wmctrl -s 1 && xkb-switch -s us
, которой можно назначить горячую клавишу для переключения на desktop2 и английский.