xdotool
— хорошее приложение X, я обычно использую его для создания макрокоманд (типа Alt+ F4или Ctrl+ Wили Ctrl+ Alt+ Backspaceили что-то в этом роде).
Это действительно просто и удобно, но я не знаю ни одной совместимой с Wayland программы, подобной этой. Есть ли способ отправлять сигналы ввода мыши и клавиатуры в Wayland прямо сейчас, как xdotool
для X?
В настоящее время он в основном работает с XWayland, но не все команды работают (например, Alt+ F4, xevможет даже считывать ввод Alt+ F4, но это не приводит к завершению приложения, как нажатие его на клавиатуре), также есть проблема потенциального отказа от использования XWayland.
решение1
решение2
xdotool
Теперь на Wayland есть еще одна опция для подобной функциональности,wtype
инструмент.
Более подробную информацию об используемом протоколе Wayland wtype
можно найти вэтот пост в блоге.
решение3
Нет, такие функции были явно исключены из дизайна Wayland по соображениям безопасности. (Чтение ввода других программ является самой большой проблемой, но отправка поддельных вводных данных в другие программы также может привести к проблемам.)
Тем не менее, я ожидаю, что некоторые Wayland WM в конечном итоге реализуют какую-то функцию макросов; в конце концов, ониволянеобходимо поддерживать экранную клавиатуру и голосовое управление (для обеспечения доступности).
Но если бы такая функция существовала, это зависело бы от того, какой компоновщик Wayland вы используете: Weston? KDE KWin? GNOME Shell? Enlightenment? В Wayland нет разделения «сервер отображения – оконный менеджер»; оконный менеджерявляетсясервер Wayland и решает, какие функции реализовать (либо как подпротоколы Wayland, либо как API D-Bus или т.п.).
решение4
Я только что потратил пару часов на установку KDE 6 на Arch и установку dotool plusновый, kdotool.
Между dotool для вывода и kdotool, который использует скрипты kwin и интерфейсы dbus, я снова могу делать то, что я сейчас делаю с xdotool и devilspie2 на xfce. Проверяйте имена окон, чтобы фильтровать действия в ответ на горячие клавиши, находите мышь и перемещайте вещи, куда мне нужно, и выводите щелчки или текст в нужное окно.
У меня все еще есть важная задача после того, как KDE 6 и Wayland станут немного более стабильными и получат более широкую поддержку, но теперь я вижу будущее после X11, которым я доволен.