Mit Tastenkombinationen fertige Textvorlagen einfügen

1481564028 (12. December 2016)

Im Artikel “Logitech G11 G-Tasten mit g15daemon und xbindkeys unter Linux” habe ich beschrieben, wie mithilfe von Tastenkombinationen oder besonderen Tasten wie die der Logitech G-Tastaturen Programme gestartet werden können. Im Artikel erwähnte ich auch, dass mein Ziel sei, Textvorlagen und “One-Liner” einzufügen. Dies kann gewisse Arbeiten, zum Beispiel auf Konsolen, enorm beschleunigen.

Es gibt zwei (oder möglicherweise noch mehr) Verfahrensweisen, von denen ich die letztere bevorzuge, da die erste fehleranfälliger zu sein scheint.

Mit xvkbd:

Zuerst benötigen wir das Paket:

xvkbd

Mit diesem können wir, mit dem folgenden Befehl bereits Text automatisiert schreiben lassen:

xvkbd -xsendevent -text TEST

Da unter allen Ubuntu-Versionen zwischen 12.04 und 16.10 hierbei folgende Fehler auftreten:

Warning: Cannot convert string "-*-lucidatypewriter-bold-r-*-*-12-*-*-*-*-*-iso8859-1" to type FontStruct
Warning: Cannot convert string "-*-helvetica-bold-r-*-*-12-*-*-*-*-*-iso8859-1" to type FontStruct
Warning: Cannot convert string "-*-helvetica-medium-r-*-*-12-*-*-*-*-*-iso8859-1" to type FontStruct
Warning: Cannot convert string "-*-helvetica-medium-r-*-*-10-*-*-*-*-*-iso8859-1" to type FontStruct
xvkbd: Mode_switch not available as a modifier
xvkbd: although ISO_Level3_Shift is used instead, AltGr may not work correctly

die offensichtlich an fehlenden Schriften liegen, können noch die Pakete

xfonts-75dpi xfonts-100dpi

installiert und mit

xset +fp /usr/share/fonts/X11/75dpi/
xset +fp /usr/share/fonts/X11/100dpi/

aktiviert werden.

Mit xdotool:

Hier benötigen wir das Paket:

xdotool

mit

xdotool type "TEST"

können wir nun bereits automatisch Text tippen lassen.

Ein bekanntes Problem gibt es unter Umständen noch (in meinem Fall bei Ubuntu 16.10 nicht mehr) – die Ausgabe von

sleep 4 && xdotool type 'for i in {1..10}; do echo $i; done'

ergibt beim automatischen tippen

for i in {1..10}˝do echo $i˝done

was logischerweise nicht funktionieren kann. Das liegt mit hoher Wahrscheinlichkeit am Tastaturlayout, welches intern angewendet wird. Eine Lösung ist hier zu finden.

Hat nun alles geklappt, kann xdotool in Verbindung mit xbindkeys und dem g15daemon verwendet werden, um Textvorlagen automatisch im Terminal zu tippen.

Quellen und Referenzen:

http://homepage3.nifty.com/tsato/xvkbd/faq.html
http://superuser.com/questions/1010294/use-xbindkeys-to-auto-fill-forms-or-output-a-template-in-the-terminal
http://askubuntu.com/questions/455762/xbindkeys-wont-work-properly
http://butlerpc.net/blog/2011/01/using-xbindkeys-on-ubuntu-linux-to-remap-key-commands/
https://en.wikipedia.org/wiki/British_and_American_keyboards
http://stackoverflow.com/questions/17853287/xdotool-and-keyboard-layout

Tags: , , ,

Leave a Reply

Your email address will not be published.