Ich möchte die Tastenbelegung einiger Tasten auf meiner Tastatur ändern. Ich möchte, dass einige Befehle ausführen und andere verschiedene Tasten aktivieren.
Mit welchen Anwendungen kann ich das machen?
Index:
Standardeinstellungen für Tastatur und Tastenkürzel (in den Systemeinstellungen)
- xkb
xkb
Antwort: askubuntu.com/a/347382/354350Antworten:
xbindkeys ..
Xbindkeys ist ein sehr vielseitiges Programm, mit dem Sie Schlüssel sehr einfach neu zuordnen können. Es verwendet eine Konfigurationsdatei, die sich standardmäßig in Ihrem Home-Verzeichnis befindet, um die Tastenzuordnungen in bestimmte Befehle zu ändern.
Um eine Standard-Konfigurationsdatei zu erstellen, verwenden Sie den Befehl:
Welches druckt die Standard-Konfigurationsdatei. Wenn Sie also die Datei mit den Standardwerten erstellen möchten, verwenden Sie Folgendes:
Damit werden die Standardwerte in eine versteckte Datei mit dem Namen
.xbindkeysrc
in home (~
) gedruckt .Um nun die Tastenzuordnungen tatsächlich zu ändern, müssen wir zunächst den Namen oder das Tastensymbol dieser Tasten kennen.
xbindkeys
Ermöglicht es uns, den-k
Handle zu verwenden, um den Namen eines Schlüssels oder einer Tastenkombination zu finden. Lauf:Und drücken Sie eine Taste oder Tastenkombination. Ihre Ausgabe sieht ungefähr so aus (wenn Sie drücken space):
"No Command"
teilt uns mit, dass der SpaceTaste derzeit kein Befehl zugeordnet ist .Ist der Name des Schlüssels / der Tastenkombination.
die Konfigurationsdatei ..
Öffnen Sie die zuvor erstellte Konfigurationsdatei:
Hier ist ein Auszug aus der Standard-Konfigurationsdatei:
Jede Zeile, die mit beginnt,
#
ist ein Kommentar und wird nicht gelesen oder ausgeführtxbindkeys
.Bisher ist die einzige Zeile, die nicht auskommentiert ist:
Dieser Auszug zeigt die grundlegende Syntax von
xbindkeys
Befehlen:Wie Sie sehen können:
Führt den Befehl aus,
xbindkeys_show
wenn Sie Ctrl+ Shift+ drücken q.Schlüssel an Befehle binden
Versuchen wir nun, ein paar Schlüssel zu binden. Ich empfehle, die gesamte Standarddatei zu löschen, damit sie leer ist. Es enthält voreingestellte Tastenkombinationen, die Sie wahrscheinlich nicht möchten.
Nehmen wir nun an, Sie möchten Ctrl+ verwenden b, um Ihren Browser zu öffnen. Zuerst müssen Sie wissen, wie der Name oder das Schlüsselwort von Ctrl+ blautet. Wie bereits erwähnt, können Sie mithilfe
xbindkeys -k
von den Namen eines Schlüssels oder von Schlüsseln suchen, aber es gibt einen einfacheren Weg. Für einfache Kombinationen wie Ctrl+ können bSie einfach verwenden:Viel einfacher ist es nicht!
Suchen Sie nun den Befehl für Ihren bevorzugten Browser:
Für Firefox:
firefox
Für Chrom:
chromium-browser
Für die Oper:
opera
Erinnern Sie sich an die Syntax von früher? Der
xbindkeys
Befehl zum Starten von Firefox (oder Ihres anderen bevorzugten Browsers), wenn Sie Ctrl+ drücken, blautet:Nun lege das in deine Konfigurationsdatei und speichere sie. Jetzt stellen Sie möglicherweise fest, dass Ihr Befehl noch nicht funktioniert, weil er
xbindkeys
nicht ausgeführt wird. Zum Starten einfachxbindkeys
von einem Terminal aus starten . Ihr Ctrl+ bsollte jetzt Ihren Browser starten!Schlüssel an andere Schlüssel binden
Wenn Sie möchten, dass eine Taste auf Ihrer Tastatur eine andere Taste auf Ihrer Tastatur aufruft, benötigen Sie eine zusätzliche Software, die
xbindkeys
dies nicht unterstützt. Ich kenne zwei Programme, die wir verwenden können,xdotool
undxte
. Ich bevorzuge,xte
also werde ich das benutzen.Es installieren:
Die Syntax für
xte
lautet wie folgt:Beispiele:
So rufen Sie einen einzelnen Tastendruck auf:
xte 'key keyName'
So rufen Sie eine Tastenkombination auf:
xte 'keydown keyName' 'keydown secondKeyName' 'keyup keyName' 'keyup secondKeyName
So rufen Sie eine Maustaste auf:
xte 'mouseclick buttonNumber'
(Wir werden das Finden von Tastennummern etwas später erörtern.)So bewegen Sie die Maus:
xte 'mousemove xCoordinate yCoordinate'
Und mehr! Lesen
man xte
Nachdem Sie den Befehl zum Simulieren von Tastendrücken kennen, können Sie ihn wie folgt aus Ihrem
xbindkeys
Skript aufrufen :Wie Sie vielleicht erraten haben, wird dies aufgerufen,
xte 'key b'
wenn wir Ctrl+ drücken b, wodurch ein Eintrag in ein bDokument eingegeben wird, an dem Sie gerade arbeiten.Ich , was zu beachten ist jedoch, dass
xbindkeys
undxte
nicht immer sehr gut zusammenarbeiten. Manchmal muss man die Tasten genau zur selben Zeit drücken , um ausgegeben zu werden, manchmal funktioniert es einwandfrei. Dies kann oder kann nicht mit Systemkonfiguration und / oder Hardware zu tun haben .. Ich bin nicht sicher. Siehe MaggotBrain Antwort für eine zuverlässigere Art und Weise Schlüssel zu anderen Tasten zu binden.Binden von Maustasten an Befehle
Sie können auch
xbindkeys
Maustasten an Befehle binden (und von dort aus Tastaturkürzel, siehe oben). Das Grundformat für Maustasten sollte Ihnen jetzt bekannt sein:Wo
[command to run]
ist der Befehl, den Sie ausführen möchten, undn
die Nummer der Maustaste, die Sie für diesen Befehl verwenden möchten.Wenn Sie die Nummer Ihrer Maustaste nicht kennen, können Sie
xev
herausfinden, um was es sich handelt:Die Ausgabe wird ungefähr so aussehen:
Wenn ich jede meiner Maustasten drücke.
Zum Beispiel:
Startet Firefox, wenn ich die mittlere Maustaste drücke.
quelle
Xev und xmodmap
Ändern der Tastenkombinationen mit
xev
undxmodmap
.Beide Befehlszeilenanwendungen sind standardmäßig verfügbar, sodass keine zusätzliche Software installiert werden muss.
Xev "erstellt ein Fenster und fordert den X-Server auf, Ereignisse zu senden, wenn etwas mit dem Fenster passiert (z. B. Verschieben, Ändern der Größe, Eingeben, Anklicken usw.)." xev man page
xmodmap ist ein "Programm zum Bearbeiten und Anzeigen der Tastaturmodifikatorzuordnung und der Tastaturzuordnungstabelle, die von Clientanwendungen zum Konvertieren von Ereignistastencodes in Schlüsselsymbole verwendet werden." xmodmap man page
Das folgende Beispiel ordnet die Caps_LockTaste dem Verhalten der EscTaste neu zu (viele vi / vim-Benutzer halten dies für eine nützliche Tastaturzuordnung).
Mit xev
Starten Sie die
xev
Anwendung über ein Terminalfenster ( Ctrl- Alt- t).Die Anwendung wird initialisiert, zeigt eine Reihe von Zeilen an und startet ein leeres Fenster. Behalten Sie das
xev
Anwendungsfenster im Fokus und drücken Sie die Taste, deren Eigenschaften / Verhalten Sie verwenden möchten.Im Terminalfenster sehen Sie mehrere Ausgabezeilen. Notieren Sie sich die 3. zurückgegebene Zeile. Dieser enthält den Namen der Eigenschaft, die Sie auf den anderen Schlüssel verschieben möchten.
In diesem Fall verwendet der EscSchlüssel (Schlüsselcode 9) den Namen "Escape" .
Diesmal suchen wir nach dem verwendeten Schlüsselcode Caps Lock.
Beachten Sie auch hier die 3. Zeile:
Verwendung von xmodmap
Nachdem wir die Informationen zu den Schlüsseln erhalten haben, von denen wir Änderungen vornehmen möchten
xev
, werden wir siexmodmap
zum Ändern der Schlüsselkarten verwenden . Führen Sie am Befehlsterminal ( Ctrl+ Alt+ t) die folgenden Befehle aus:Dieser Befehl ändert das Caps Lock, um dasselbe Verhalten wie zu verwendenEsc
Diese Option druckt eine Keymap-Tabelle als Ausdruck in die Datei
~/.Xmodmap
Aktivieren Sie die Änderungen (nur für diese Anmeldesitzung) mit folgendem Befehl:
Änderungen über Neustarts hinweg persistent machen:
Wenn dies nicht der Fall ist, erstellen Sie eine Datei in Ihrem Basisordner mit dem Namen
.xinitrc
.Fügen Sie die folgende Zeile in die Datei ein und speichern Sie die Datei:
Ändern von Schlüsseln mit unterschiedlichem Statusverhalten
(wie Num Lock)
Besorgen Sie sich die Keymap-Tabelle für die Modifikatortasten (Ausgabe hier abgekürzt)
Wenn Sie ändern, zum Beispiel wollten das Verhalten der Periode auf Del/ PeriodTaste auf der Zifferntastatur, um ein Komma, verwenden Sie den folgenden Befehl ein :
Beachten Sie, dass
mod2
hiermit die Tastenzuordnung verwendet wird, um das Tastenverhalten zu ändern, wenn der Modifikator Num Lockgedrückt wird. Die Syntax hierfür lautet:Ressource
quelle
Ubuntu (In diesem Beispiel verwende ich 16.04) verfügt standardmäßig über zwei Kategorien, die standardmäßig in den Systemeinstellungen festgelegt sind:
Um zu den Systemeinstellungen zu gelangen, klicken Sie oben mit der rechten Maustaste auf das Zahnradsymbol :
Wählen Sie dann Systemeinstellungen :
Hier finden Sie 2 Optionen, mit denen Sie zum Bereich zum Erstellen von Verknüpfungen weitergeleitet werden können.
Wenn Sie die Option Texteingabe finden Sie die müssen wählen Tastatureinstellungen Link auf der der rechten unteren Ecke , die Sie direkt zu den Shortcuts Optionen schicken.
Wenn Sie die Option Tastatur auswählen , müssen Sie auf die Registerkarte Verknüpfungen klicken
Nachdem Sie die Registerkarten Shortcuts erreicht haben, wählen Sie links unten in der Liste die benutzerdefinierten Shortcuts aus:
Und dann klicken Sie auf den Plus - Zeichen an der Unterseite , um Ihre ganz eigene Verknüpfung zu Beginn der Erstellung:
Von da an müssen Sie nur noch den Namen der Verknüpfung hinzufügen (verwechseln Sie nicht den Namen der Verknüpfung mit dem Namen des tatsächlichen Befehls, den Sie ausführen möchten). Und unten im Feld Befehl legen Sie fest, welcher Befehl für diese Verknüpfung ausgeführt wird. Im folgenden Beispiel habe ich die Verknüpfung "Erhabener Text 3" genannt, um zu wissen, worauf sich diese spezielle Verknüpfung bezieht. Und auf dem Befehlsfeld fügte ich den tatsächlichen Befehl hinzu, der ist
subl
.Am Ende wird auf dem Bildschirm Folgendes angezeigt: Da der Verknüpfung noch keine Taste oder Tastenkombination zugewiesen ist, ist sie standardmäßig deaktiviert:
Wir würden dann auf die Meldung "Deaktiviert" klicken, um eine Tastenkombination hinzuzufügen:
In diesem Teil weise ich die Tastenkombination SHIFT+ CTRL+ zu, Ssodass beim Drücken dieser Kombination die Sublime Text App geöffnet wird.
Danach können Sie Ihre Kombination einfach testen, indem Sie die entsprechende Tastenkombination drücken und die App geöffnet sehen:
ANMERKUNG: Für spezielle Kombinationen wie die, mit denen der X-Server beendet werden soll, empfehle ich, den folgenden Link zu besuchen: Wie aktiviere ich Strg-Alt-Rücktaste, um den X-Server zu beenden?
quelle
If you click on the Options button at the bottom right (Found on 13.04 or previous versions)...
Wo befindet sich die Optionsschaltfläche bei Versionen> 13.04?Gehen Sie zu Systemeinstellungen → Keboard , wählen Sie die Registerkarte Verknüpfungen und fügen Sie eine neue benutzerdefinierte Verknüpfung für Ihren Browser hinzu. Wenn Ihr Standard-Brouser Firefox ist, verwenden Sie das
firefox
Befehlsfeld für. Wenn Ihr Standard-Brouser Firefox ist, verwenden Siechromium-browser
und so weiter:quelle
Sie können komplexe Tastenkombinationen (mit mehreren Tasten) erstellen, indem Sie AutoKey über das Software Center installieren . Im Gegensatz zu xmodmap bindet AutoKey die tatsächlichen Tasten auf Ihrer Tastatur nicht neu. Es wird im Hintergrund ausgeführt und fängt Ihre definierten Tastaturkürzel ab. Anschließend werden simulierte Tastendrücke an Ihre Anwendungen gesendet.
Wenn Sie AutoKey zum ersten Mal starten, wird der Dienst im Hintergrund gestartet (das Benachrichtigungssymbol wurde aus Gründen der Einheit nicht aktualisiert, sodass keine visuelle Anzeige erfolgt). Sobald es ausgeführt wird, können Sie die Konfigurationsoberfläche aufrufen, indem Sie den Launcher erneut ausführen:
Öffnen Sie nun Bearbeiten> Einstellungen und wählen Sie "AutoKey bei Anmeldung automatisch starten", um sicherzustellen, dass Ihre Verknüpfungen immer funktionieren, wenn Sie angemeldet sind.
Zuordnung einer Tastenkombination zu einer anderen Tastenkombination
Geben Sie die Tasten, denen Sie zuordnen möchten , in das Textfeld ein.
+
zwischen ihnen (z. B.<ctrl>+c
würde in den meisten Anwendungen kopieren;<ctrl>+c<ctrl>+n<ctrl>+v
würde ein neues Dokument mit der Auswahl erstellen;<shift>+ubuntu
würde den Text "Ubuntu" eingeben).Drücken Sie die "Set" -Taste neben "Hotkey". Dadurch wird ein Dialog aufzurufen , mit dem Sie die Tastenkombination die Sie zuordnen möchten bestimmen können , aus :
Wählen Sie Datei> Speichern
Ein Beispiel für eine abgeschlossene Konfiguration (die gesendet wird,
<enter>
wenn Sie auf drücken<ctrl>+m
) sieht folgendermaßen aus:quelle
Versuche dies:
Installieren Sie ein Programm namens XKeyCaps. Zum Installieren drücken Sie einfach Ctrl+ Alt+ Tauf Ihrer Tastatur, um das Terminal zu öffnen. Führen Sie beim Öffnen die folgenden Befehle aus:
Nach der Installation können Sie xkeycaps an der Eingabeaufforderung ausführen, um das Programm auszuführen. Sobald es ausgeführt wird, wählen Sie das richtige Tastaturlayout und klicken Sie auf OK
Wenn Sie dann die Tastatur auf dem Bildschirm sehen, klicken Sie mit der rechten SMaustaste auf die gewünschte Taste, in Ihrem Fall auf die , und wählen Sie Austauschschlüssel.
Stellen Sie sicher, dass Sie die folgende Zeile zu Ihren Sitzungen hinzufügen, damit sie bei jedem Start automatisch gestartet wird.
Quelle: UFM ytsejam1138
quelle
uname-n
sein solluname -n
?unmae-n
. Ich habe keinen Zugang zu einer Ubuntu-Maschine zum Testen, aber wenn ich das tue, werde ich es weiter überprüfen.Wenn Sie nur die Tasten neu zuordnen möchten, sind die anderen Antworten großartig.
Es gibt jedoch einen anderen Weg, sich dem anzunähern. AutoKey ist ein Tastaturmakroprozessor, mit dem Sie eine beliebige Tastenkombination mit einem Skript verknüpfen können, das fast alles kann, was Sie mit Ihrer Tastatur und vielem mehr tun können.
AutoKey verfügt über einen Skriptrekorder und eine einfache Möglichkeit, grundlegende Schlüsselsequenzen einzugeben. Die Skripte sind jedoch in Python geschrieben und können fast alles ausführen, was Sie codieren können.
Die einfachste Möglichkeit, es zu verwenden, besteht darin, Tastatureingaben an Ihre Anwendungen / Ihren Desktop zu senden. Wenn es auf diese Weise verwendet wird, können das System / die Anwendungen nicht erkennen, dass Sie nicht tippen. Daher ist keine API oder andere Schnittstelle erforderlich. Sie tun nur das, was Sie eingegeben haben.
AutoKey kann auch Phrasen verarbeiten. Wenn Sie eine auslösende Zeichenfolge eingeben, kann diese durch neuen Text ersetzt werden (entweder sofort oder nachdem Sie ein Trennzeichen wie eine neue Zeile oder ein Tabulatorzeichen eingegeben haben).
Es verfügt auch über Fensterfilter, mit denen Sie festlegen können, dass eine bestimmte Phrase oder ein bestimmtes Skript nur in bestimmten Fenstertypen ausgeführt wird (z. B. in Fenstern, deren Titel Mozilla enthält, sodass diese nur in Firefox oder Thunderbird funktionieren).
AutoKey verfügt derzeit über Gtk- und Qt-Versionen.
Bearbeitungen:
Installationsanleitung
Benutzerforum Aktives Benutzerforum.
Es gibt eine Reihe von Beispielskripten im Wiki. Da es sich in erster Linie um eine GUI-App mit vielen Optionen handelt, würden Beispiele viele Screenshots und einen ganzen Artikel erfordern.
Ich habe eine Phrase definiert, die bei der Eingabe von " Jmail! " Diese sofort durch meine ziemlich lange E-Mail-Adresse ersetzt.
Ich habe ein Skript geschrieben, das durch Tippen ausgelöst wird Ctrl- und Pdas nur in Fenstern aktiv ist, deren Titel "Mozilla" enthält. Tippen Ctrl- PÖffnet den Druckdialog (Firefox oder Thunderbird), wählt In Datei drucken und gibt den Namen der nächsten verfügbaren Druckdatei in meine Druckwarteschlange ein (ich nummeriere sie mit 01, 02, ... und das Skript liest die Warteschlange Verzeichnis, findet die letzte Dateinummer und erhöht sie um 1). Ich verwende es mit meiner Duplex- Druckemulationssoftware ( Duplexpr ), um eine Menge Tastenanschläge und Mausbewegungen zu vermeiden .
Ich habe einige andere Skripte von Spielern gesehen, mit denen sie sehr schnell auf Informationen über ihren Charakter und ihre Ressourcen zugreifen können, damit sie sich auf die Aktion konzentrieren können.
quelle
TASTATURTASTEN ALS MAUSTASTEN VERWENDEN
Möglicherweise möchten Sie einer Maustaste eine Tastaturtaste zuordnen. Wenn Sie mit einer Tastaturtaste klicken möchten (nützlich, wenn Sie ein Macbook oder eine fehlerhafte Trackpad-Taste haben), können Sie Folgendes tun.
Installieren Sie einige Dienstprogramme:
Finden Sie den Schlüsselcode für den Schlüssel, den Sie zuordnen möchten:
xev | grep keycode
das Terminal einWenn Sie die gewünschte Taste drücken, wird eine Zeile wie die folgende angezeigt:
Ordnen Sie mithilfe des Schlüsselcodes den Schlüssel erneut zu, um dasselbe wie mit der linken Maustaste zu tun:
xkbset m
xmodmap -e "keycode 64 = Pointer_Button1"
Pointer_Button3
ist die rechte Maustaste undPointer_Button2
ist die Mitte.quelle
Mit xkb
xkb
ist die X Keyboard-Erweiterung. Es ist für die Zuordnung der Tasten Ihrer Tastatur zu den festgelegten Funktionen verantwortlich.xkb
Symbole finden Sie in/usr/share/X11/xkb/symbols/
. Die Modifikatortasten sind zugeordnet/usr/share/X11/xkb/symbols/pc
.Sprich, ich muss die Funktionen
Caps Lock
undLeft Control
Tasten umschalten . Diese Änderungen sind für diepc
Datei erforderlich :Um die neuen Zuordnungen anzuwenden, müssen Sie den
xkb
Cache löschen von/var/lib/xkb
:Starten Sie jetzt einfach Ihre X-Sitzung neu und Sie können loslegen.
Quelle: https://radu.cotescu.com/remapping-keys-in-ubuntu-14.04/
Edit: ein Doing
ls
innerhalb dessymbols
Verzeichnisses ergibt dies:Die Zuordnungen in der Datei
ru
basieren auf der russischen Standardtastatur. Dermacintosh_vndr
Ordner enthält die Zuordnungen für Apple-Tastaturen. Kurz gesagt, dieser Ansatz ist so vielseitig. Mach weiter und spiel damit :)quelle
/usr/share/X11/xkb/symbols/pc
.Es stellte sich heraus, dass es unter der Anwendung "Tastatur" ist.
Wenn Sie das aufrufen, können Sie die Verknüpfungen nach Bedarf ändern ...
Änderung ist ein bisschen seltsam bei der ersten Verwendung. Sie klicken auf die rechte Seite (die Spalte mit Strg-Alt-T, Deaktiviert usw.) und klicken dann auf die tatsächlichen Tasten, z ctrlaltb. oder klicken Sie weg) und die neue Verknüpfung funktioniert jetzt.
quelle
Die Verknüpfung bereits als WWW existiert, es ist einfach ändern Ctrl+ Alt+ b. Sie müssen kein neues erstellen.
quelle
CompizConfig-Einstellungsmanager (CCSM)
Mit CCSM können Sie einige Systemtastenkürzel ändern.
Verwenden Sie zum Installieren das Software Center oder den folgenden Befehl:
Zum Beispiel
Ich habe es verwendet, um die Verknüpfung "Window spread" von der Standardverknüpfung " Super+" Win " Super+ " zu ändern Tab, wie unter Windows 10. Von meiner Antwort auf einen anderen Thread :
quelle
Ich wollte Print Screen drücken, um einen Screenshot mit der
gnome-screenshot
Anwendung zu speichern , wie in MintAber ich wollte es mit dem Terminal machen, nicht mit der GUI, da ich es beim Erstellen einer benutzerdefinierten ISO mit
squashfs
Tools als Standard festlegen möchte .Zuerst habe ich mit dem Befehl gnome-screenshot installiert
Dann habe ich die benutzerdefinierte Verknüpfung mit Einstellungen -> Tastatur -> Benutzerdefinierte Verknüpfungen -> Schaltfläche Hinzufügen (+) -> zugewiesen
Im Dialog:
Klicken Sie auf die Schaltfläche Hinzufügen
Drücken Sie dann die Print screenTaste.
Der Schlüssel ist jetzt gebunden und ich kann die Screenshots nach Bedarf speichern.
Aber nicht mit Terminal, es ist die GUI-Methode
Dann installierte ich
dconf-editor
mitUnd suchen Sie nach
gnome-screenshot
Ich finde meine benutzerdefinierten Tastenkombinationen auf diesem Pfad
Werte von Schlüsseln sind:
Jetzt kopiere ich diese und lösche die benutzerdefinierte GUI-Tastenkombination
Ich öffne das Terminal und tippe diese Befehle
Und voila
Jetzt kann ich Screenshots ohne GUI nur mit
dconf
und Terminal speichern . Ich brauche auch nichtdconf-editor
mehr, es wurde nur installiert, um die Werte zu erhalten.quelle
Ich habe Kevins Lösung (den xmodmap-Ansatz) auf Ubuntu 18.04 ausprobiert. In meinem Fall hat es nicht funktioniert. Doch dieses Verfahren hat es endlich geschafft:
xmodmap .Xmodmap
in einer Datei mit dem Namen.xsession
anstatt.xinitrc
./home/<YOUR_USER_NAME>/.xsession
dem Befehl as hinzu.quelle