Teil 1: Deutsche Dokumentation¶
dotool – Installation & Konfiguration (Manjaro / Arch-basiert)¶
Was ist dotool?¶
„dotool“ ist ein Werkzeug zur Simulation von Tastatureingaben. Im Gegensatz zu „xdotool“ kommuniziert es direkt mit dem Kernel über „uinput“ und funktioniert daher universell unter X11 und Wayland.
Installation (Manjaro / Arch)¶
1. Paket installieren¶
pamac build dotool
# oder: yay -S dotool
2. Berechtigungen setzen¶
Damit dotool ohne Root-Rechte tippen darf, muss dein Benutzer in der Gruppe input und eine udev-Regel aktiv sein:
Benutzer zur Gruppe:
sudo gpasswd -a $USER inputudev-Regel:
echo 'KERNEL=="uinput", GROUP="input", MODE="0660", OPTIONS+="static_node=uinput"' \ | sudo tee /etc/udev/rules.d/80-dotool.rules
Regeln neu laden:
sudo udevadm control --reload-rules && sudo udevadm trigger
Wichtig: Danach einmal aus- und neu einloggen, damit die Gruppenrechte aktiv werden.
Konfiguration im Projekt (config/settings.py)¶
# Erzwingt dotool unter X11 (empfohlen für bessere Layout-Stabilität)
x11_input_method_OVERRIDE = "dotool"
# Verzögerung zwischen Anschlägen (in ms)
# 2ms = Standard, sicher für Umlaute (ä, ö, ü, ß)
# 0ms = Maximal schnell (Blitz-Modus)
dotool_typedelay = 2
##Implementierung im Skript
Persistenter Prozess (FIFO)¶
Um den Overhead durch ständiges Neuerstellen des virtuellen Keyboards zu vermeiden, nutzt das Skript eine Pipe (FIFO). Dadurch reagiert dotool verzögerungsfrei.
# Vorbereitung im Hauptskript
mkfifo /tmp/dotool_fifo 2>/dev/null
dotool < /tmp/dotool_fifo &
DOTOOL_PID=$!
Die Eingabe-Funktion¶
do_type() {
local text="$1"
if [[ "$INPUT_METHOD" == "dotool" ]]; then
# Sendet Befehle direkt an den wartenden Prozess
printf 'typedelay %s\ntype %s\n' "$DOTOOL_TYPEDELAY" "$text" > /tmp/dotool_fifo
else
LC_ALL=C.UTF-8 xdotool type --clearmodifiers --delay 12 "$text"
fi
}
##Hinweise & Fehlerbehebung
Fehlende Zeichen: Wenn Umlaute verschluckt werden, erhöhe
dotool_typedelayauf 5 oder 10.Fallback: Ist
dotoolnicht korrekt konfiguriert, weicht das System automatisch aufxdotoolaus.Wayland-Support: Unter Wayland wird
dotoolautomatisch bevorzugt, daxdotooldort nicht funktioniert.