Wer immer wieder die gleichen Mausklicks oder Tastatureingaben machen muss, kann diese mit dem kleinen Makrorekorder Xmacro aufzeichnen und später bei Bedarf immer wieder abspielen beziehungsweise wiederholen lassen.
Xmacro liegt bei den meisten Distributionen in den Repositories, man muss es lediglich über den Paketmanager nachinstallieren. Dabei landen gleich mehrere neue Programme auf der Festplatte. Zunächst zeichnet man mit dem Kommandozeilenwerkzeug xmacrorec2 die gewünschten Ereignisse auf:
xmacrorec2 > testrec
Nach seinem Start bittet xmacrorec2 den Nutzer eine Taste zu drücken. Mit dieser kann er gleich die Aufzeichnung beenden. Die vorgeschlagene Taste [Esc] sollte in den meisten Fällen bereits die richtige Wahl sein. Sobald man sie gedrückt hat, beginnt xmacrorec2 unmittelbar mit der Aufnahme. Es zeichnet dabei alle auftretenden Ereignisse auf. Gibt man etwa einen Text in einen Texteditor ein, protokolliert xmacrorec2 jeden einzelnen Tastendruck. Dieses Protokoll landet normalerweise auf der Standardausgabe. Die obige Zeile lenkt diese Daten in die Datei testrec um.
Nach der Aufzeichnung kann man die so aufgezeichneten Aktionen mit xmacroplay wieder abspielen beziehungsweise wiederholen lassen:
xmacroplay -d 100 :0.0 < testrec
Der Parameter -d sorgt dafür, dass xmacroplay wartet, bis es die Aktionen abspielt. Dies gibt dem Anwender die Zeit, beispielsweise einen Texteditor zu aktivieren beziehungsweise ihm den Fokus zu geben. Im obigen Beispiel wartet xmacroplay genau 100 Millisekunden.
Die Aktionen führt das Werkzeug dabei auf dem Display :0.0 aus, wobei es die entsprechenden Aktionen aus der Datei testrec zugefüttert bekommt. Da xmacrorec2 und xmacroplay die Aktionen über die Standardausgabe beziehungsweise Standardeingabe schieben, lassen sie sich auch hervorragend in Shell-Skripte einbinden.
Das Protokoll in der Datei testrec kann man übrigens mit einem bliebigen Texteditor nachbearbeiten. Die Einträge erklärt die Homepage von Xmacro. Neben xmacrorec2 gibt es noch den Bruder xmacrorec, der auch die Aufnahme von Ereignissen auf entfernten Desktops ermöglicht.






