Контроль синергии программно
Я пытаюсь переключить switchInDirection () из оконного менеджера (dwm, написано в c). Поскольку, похоже, нет способа управлять синергетическими действиями из командной строки, я попытался запустить соответствующие комбинации клавиш из wm.
Сценарий: super+,
событие on (запятая), которое перехватывается wm, должно запустить еще одно сочетание клавиш, которое ожидает synergys. По какой-то причине XTestFakeKeyEvent
(функция xlib) вообще не работала, а симуляция нажатия клавиш XSendEvent
не работает с модификаторами, поэтому мне пришлось сделать системный вызов xdotool:
xdotool keyup comma key control+alt+shift+F11 // note the required comma key up;
Кажется, что он работает как POC, но в какой-то момент он вызовет segfault в синергии. Обратите внимание, что запуск одной и той же комбинации клавиш без xdotool не приводит к segfault.
Какие у меня есть варианты?
Редактировать: одним из очевидных решений было бы прослушивание super+,
события с синергией в первую очередь и обработка логики там (будь то переключение экрана или отправка другой комбинации клавиш в dwm). Это должно работать, но подразумевает различные конфигурации dwm для сервера и клиента, поскольку super+,
dwm все равно должен обрабатывать их в клиенте (в противном случае управление клиентом через его собственную клавиатуру не будет работать должным образом).
0 ответов на вопрос
Похожие вопросы
-
9
В чем разница между командами "su -s" и "sudo -s"?
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
4
Каковы различия между основными дистрибутивами Linux? Я замечу?
-
-
2
Ограничить использование процессора для Flash в Firefox?
-
2
Как мне заставить мой микрофон работать под Debian GNOME?
-
2
Конки установки - образцы / идеи?
-
3
Каковы различия между оконными менеджерами Linux?
-
7
Есть ли в Mac OS X эквивалент Ctrl + Tab?
-
2
ThunderBird / Синхронизация освещения с SE k770i
-
4
Файловая система Linux