Ein weiterer xdotool-Vorschlag, der in Debian Jessie 8.7 (Januar 2017) funktioniert:
xdotool click --delay 0 --clearmodifiers 2
- xdotool verarbeitet im Gegensatz zu xvkbd Mehrbyte-Strings (zB UTF-8).
xdotool click
simuliert einen tatsächlichen Klick, so dass Sie nicht selbst klicken müssen xdotool type
, um an der Mausposition einzufügen , wie Sie es bei Verwendung von oder xvkbd getan hätten.
Das einzige Problem ist, dass --clearmodifiers
jeder Modifikator (Strg / Alt / Umschalt / Meta), den Sie nach der Simulation des Klicks verwenden, "gedrückt" wird. Selbst mit --delay 0
(statt 12 ms) dauert die Ausführung des Befehls etwas. Wenn Sie die Tasten vorzeitig loslassen, werden Ihre Modifikatoren erneut "gedrückt" und bleiben dort hängen, bis Sie die eigentliche Taste erneut drücken und loslassen.
Daher muss man ein bisschen "langsam" sein (50ms?), Um die Modifikatoren freizugeben, wenn man welche verwendet.
Sie können dies testen, indem Sie Ihre Tastenkombination einrichten, sie in einem Texteditor verwenden und dann eine Taste (z. B. a
oder einen Pfeil) drücken . Der Buchstabe sollte in Kleinbuchstaben angezeigt werden. Wenn etwas anderes passiert, sind Sie zu schnell und ein Modifikator bleibt hängen (z. B. Umschalt, wenn er in Großbuchstaben geschrieben ist, Strg, wenn Sie den gesamten Text ausgewählt haben, Alt, wenn Sie ein Menü geöffnet haben). Drücken Sie die Modifikatoren erneut und lassen Sie sie wieder los, um sie zurückzusetzen.
Wenn Sie zu schnell sind, können Sie den Vorschlag von ilkerk verwenden:
sh -c 'sleep 0.3 && xdotool type --clearmodifiers --delay 0 "`xsel`"'
Dann müssen Sie sie in weniger als 300 ms loslassen und eine halbe Sekunde warten, bis der Text angezeigt wird.
Verwenden xdotool type
bedeutet auch, dass Sie den Text so einfügen, als ob Sie tippen würden, an der Position des Textcursors und nicht am Mauszeiger. Sie können dies ändern, click
wenn Sie das übliche Verhalten beim Klicken mit der mittleren Maustaste bevorzugen.
(Dieser Beitrag wurde so gestaltet, dass Neulinge die in den Kommentaren verteilten Puzzleteile nicht mehr teilen müssen.)