it-swarm.com.de

xdotool Taste für Taste drücken (Optionstaste drücken)

deshalb versuche ich, mit xdotool eine Tastenkombination zu erstellen. Das einzige, was mir fehlt und was ich nicht herausfinden kann, ist Folgendes:

So drücken Sie die Optionstaste auf meiner Tastatur. In einem allgemeineren Fall, und dies würde auch mein Problem lösen, wie man eine Taste mit xdotool basierend auf dem Schlüsselcode drückt (wenn Sie etwas über ein anderes Programm wissen, das dies kann, macht es mir nichts aus, das zu benutzen stattdessen).

Ich habe eine Windows-Tastatur und es gibt diese 'Optionstaste' (zwischen alt gr und right ctrl). Wenn sie gedrückt wird, wird das Rechtsklick-Menü geöffnet (direkt neben der Stelle, an der sich der Schreibcursor befindet). Ich muss drücke diesen Knopf in einem Skript irgendwie. Ich habe herausgefunden (mit showkey -k), dass der Schlüsselcode dieses Schlüssels 127 ist, aber ich kann xdotool nicht dazu bringen, ihn zu drücken.

Irgendwelche Ideen, wie das geht?

PS: Ich weiß, dass ich mit xdotool click 3 einen Rechtsklick simulieren kann, aber das hilft nichts, da der Rechtsklick dann dort stattfindet, wo sich der Mauszeiger befindet, und ich brauche ihn, um dort zu sein, wo sich der Schreibcursor befindet.

Dankeschön :)

2
Tony Vlcek

Problem gelöst dank des Kommentars von Jacob Vlijm.

Der Name der Schaltfläche kann folgendermaßen ermittelt werden: xev ausführen, dann die Schaltfläche drücken und der Name wird in den Klammern angezeigt. In meinem Fall war es das: keycode 135 (keysym 0xff67, Menu), hier ist Menu der Name der Taste.

Dann könnte ich xdotool Menu ausführen. Damit es jedoch mit einer benutzerdefinierten Verknüpfung funktioniert, musste ich sleep davor hinzufügen, sodass ich den folgenden Code erhielt:

sleep 0.5 && xdotool key 'Menu'
sleep 0.01 && xdotool key 's'
sleep 0.01 && xdotool key 'e'

und es funktioniert! :)

Übrigens: Der Zweck dieser ganzen Sache war es, schnell zwischen den Rechtschreibsprachen in Chrome zu wechseln.

2
Tony Vlcek

Beim Hinzufügen einer Tastenkombination unter Ubuntu 18.04 muss explizit ein Unterprozess ausgeführt werden:

/bin/bash -c "sleep 0.4 && xdotool key Menu"
0
grovesteyn