Den Cursor richtig platzieren

Den Cursor richtig platzieren

Ich bin im Alltag ständig mit dem Tippen beschäftigt <kbd>Keyboard Character</kbd>und möchte in Ubuntu ein Makro einrichten, um automatisch … einzugeben <kbd> </kbd>.

Ich möchte es beispielsweise Shift+ Control+ Koder eine beliebige Kombination aus Tastatursteuerzeichen zuweisen, die nicht zugewiesen ist und von Ubuntu bereits verwendet wird.

Dies war in den Tagen der TSR-Programme (Terminate and Stay Resident) in MS-DOS möglich. In Ubuntu muss es doch auch möglich sein, oder?

Muss ich dazu einen Daemon schreiben?


Ich habe weitere Fragen gefunden, auf die keine Antworten vorliegen:Wie kann ich meinen Tastaturtasten unter Ubuntu Makros zuweisen, ähnlich den Razer-Tastaturmakros unter Windows?,was ist ein guter Maus-/Tastatur-Makrorecorder?

Ich habe eine ähnliche Frage mit einer Antwort gefunden:Kann ich Tastaturkürzel verwenden, um Textmakros zu implementieren?. Die Antwort auf diese Frage konnte jedoch nicht lauten AutoKey.

Antwort1

Ich habe ein bisschen gegoogelt und ein Programm namens AutoKey gefunden (Autokey - Linux-Dienstprogramm für Hotkeys zur Textersetzung) oben auf der Liste.

Anstelle eines Hotkeys mit Ctrl+ Shift+ Khabe ich mich für die Zuweisung der Abkürzung entschieden kz, die automatisch zu erweitert wird <kbd></kbd>+.

Die Installation erfolgt ganz einfach mit:

sudo apt install autokey-gtk

Es wird im Launcher installiert und der Bildschirm ist ziemlich einfach zu verwenden:

Autokey

Antwort2

xdotoolSie können es auch mit einer Flagge verwenden type, etwa so:

bash -c ' sleep 0.5; xdotool getactivewindow  type "<kbd></kbd>"'

Gehen Sie zu Systemeinstellungen->Tastatur->Tastenkombinationen->Benutzerdefiniert und binden Sie diesen Befehl an die gewünschte Tastenkombination. Ich habe gewählt CtrlSuperK. Was hier passiert, ist, dass wir dem Benutzer eine Verzögerung von 0,5 Sekunden geben, um die Tastenkombination freizugeben, und dann xdotooldie Tastenmarkierungs-Tags eingeben, als ob Sie es selbst auf der Tastatur tun würden. Ein sehr einfacher und unkomplizierter Ansatz. Tatsächlich habe ich es gerade verwendet, um diese drei Tasten oben einzugeben.

Beachten Sie, dass xdotooles nicht standardmäßig in Ubuntu enthalten ist. Sie müssen es also über installierensudo apt-get install xdotool

Antwort3

Wenn Sie einekomponierenSie können die Datei als einfaches Dienstprogramm zur Texteinfügung verwenden.

Sie können einige der Modifikatoren in X verwenden. ScheinbarShiftSie können als Modifikator verwenden :

! Ctrl Shift <k> : "<kbd></kbd>"

Aber das funktioniert nicht, zumindest nicht auf meinem Rechner.

Und das hier funktioniert auch nicht (ausgelassen Shift, großgeschrieben K):

! Ctrl <K> : "<kbd></kbd>"

Sie können jedoch Ctrlund Ctrl+ verwenden Alt:

! Ctrl Alt <k> : "<kbd></kbd>"
! Ctrl <k> : "<kbd></kbd>"

Den Cursor richtig platzieren

Die obigen Zuordnungen platzieren den Cursor nach der Zeichenfolge ( |zeigt den Cursor an):

<kbd></kbd>|

Ich denke, es gibt keine universelle Lösung, um den Cursor in das Tag zu setzen. Dafür müsste man ein geeignetes Tool verwenden. In bestimmten Anwendungen kann man den Cursor jedoch in das Tag setzen.

Ich verwende gnome-terminalBash, das Readline-Tastenkombinationen verwendet (ähnlich wie bei Emacs). Ctrl-bist die Tastenkombination, um ein Zeichen zurückzugehen. In meinem Terminal kann ich Ctrl+v bdas Steuerzeichen ^B(U+0002 (Beginn des Textes)) eingeben und erhalten. Geben Sie also sechs dieser Zeichen am Ende der Zeichenfolge ein:

! Ctrl Alt <k> : "<kbd></kbd>^B^B^B^B^B^B"

Der Cursor wird innerhalb des Tags platziertWennSie befinden sich in einer Anwendung, die ^Bkorrekt interpretiert (z. B. Terminals und Emacs):

<kbd>|</kbd>

Verwenden der Compose-Taste

Sie können natürlich auch die Compose-Taste ( <Multi_key>) verwenden, um dasselbe zu erreichen. Verwenden Sie beispielsweise t(„tag“) und k(„keyboard“):

<Multi_key> <t> <k> : "<kbd></kbd>^B^B^B^B^B^B"

Antwort4

Lösung 1:input-remapper-gtk

Hier ist ein modernesgrafischBusy-Wait-freie Lösung, die sowohl unter X11 als auch unter Wayland funktioniert:

  1. sudo apt install input-remapper
  2. Offeninput-remapper-gtk
  3. Geben Sie Ihr Passwort ein
  4. Wählen Sie Ihre Tastatur

Input-Remapper-GTK-Geräte

  1. Klicken Sie auf „Neue Vorgabe“

Input-Remapper-GTK-Voreinstellungen

  1. Klicken Sie auf „+ Hinzufügen“

input-remapper-gtk-Editor hinzufügen

  1. Klicken "

verwandte Informationen