У меня есть приложение, которое построено с использованием GTK +. Приложение имеет очень простой интерфейс. При запуске всегда открывается одно и то же окно с несколькими элементами управления вводом.
Мы хотим написать скрипт для заполнения текста в нескольких полях, установите флажок и нажмите кнопку. Довольно просто, и было бы легко сделать, если бы была доступна версия приложения из командной строки (но это не так).
Каков наилучший способ программного взаимодействия с приложением X?
xdotool
должно рассматриваться только в реальных чрезвычайных случаях! Написание чего-то серьезногоxdotool
- это скорее боль, чем удовольствие. Прежде чем пытатьсяxdotool
спросить разработчика, имеет ли приложениеdbus
интерфейс. Это сделало бы ваш план намного проще.xdotool
для различных задач без проблем. Я не знаю, на чем именно основана боль, а не удовольствие .xte
Часть xautomation - это еще один инструмент, который вы можете использовать для генерации ложного ввода X11 с использованием расширения XTest.С домашней страницы:
источник
Xte работает, но он действительно старый. xdotool как минимум находится в активной разработке.
Я много занимался созданием событий X Windows, номинально для разработки макропрограммы клавиатуры, которая может печатать строки, или буфера обмена в приложениях, которые обычно не позволяют использовать вставку.
Примечания по обработке событий в X Window ... http://www.ict.griffith.edu.au/anthony/info/X/event_handling.txt
Макрос клавиатуры (с использованием xte или xdotool http://www.ict.griffith.edu.au/anthony/software/#keyboard_macro
источник