Ich habe eine Anwendung, die mit GTK + erstellt wurde. Die Anwendung hat eine sehr einfache Oberfläche. Beim Start wird immer das gleiche Fenster mit einigen Eingabesteuerelementen geöffnet.
Wir möchten ein Skript schreiben, um Text in ein paar Felder einzufügen, ein Kontrollkästchen aktivieren und dann auf eine Schaltfläche klicken. Ziemlich einfach und wäre einfach zu tun, wenn eine Befehlszeilenversion der App verfügbar wäre (aber nicht).
Was ist der beste Weg, um programmgesteuert mit einer X-Anwendung zu interagieren?
xdotool
sollte nur in echten Notfällen in Betracht gezogen werden! Das Schreiben von etwas Ernsthaftemxdotool
ist eher ein Schmerz als ein Vergnügen. Bevor Sie versuchen,xdotool
fragen Sie den Entwickler, ob die Anwendung einedbus
Schnittstelle hat. Das würde Ihren Plan viel einfacher machen.xdotool
für verschiedene Aufgaben ohne Probleme. Ich weiß nicht, worauf genau ein Schmerz als ein Vergnügen beruht.xte
Ein Teil von xautomation ist ein weiteres Tool, mit dem Sie mithilfe der XTest-Erweiterung gefälschte X11-Eingaben generieren können.Von der Homepage:
quelle
Xte funktioniert, aber es ist wirklich alt. xdotool befindet sich zumindest in der aktiven Entwicklung.
Ich habe viel über das Generieren von X Windows-Ereignissen studiert, nominell um ein Tastaturmakroprogramm zu entwickeln, das Zeichenfolgen eingeben kann, oder die Zwischenablage in Anwendungen, in denen Sie normalerweise kein Einfügen verwenden können.
Hinweise zur Behandlung von X-Fensterereignissen ... http://www.ict.griffith.edu.au/anthony/info/X/event_handling.txt
Tastaturmakro (mit xte oder xdotool http://www.ict.griffith.edu.au/anthony/software/#keyboard_macro
quelle