Wie kann ich eine benutzerdefinierte Tastenkombination hinzufügen?

40

Wie kann ich eine benutzerdefinierte Tastenkombination hinzufügen?

Zum Beispiel würde Ich mag Compose, |, >die Typ - Symbol.

Ich habe versucht, Folgendes hinzuzufügen ~/.XCompose:

# Import default rules from the system Compose file
include "%L"

# Custom definitions
<Multi_key> <bar> <greater> : "▸" U25B8 # Black right-pointing small triangle

Die neue Sequenz kann jedoch nur für xterm verwendet werden.

Die Installation von ibus-table-compose und die anschließende Aktivierung der Eingabemethode Compose in IBus haben das Problem nicht gelöst. IBus ahmte viele komponierte Tonfolgen nach, aber nicht die, die ich erstellt hatte.

ændrük
quelle
Wie tippst du das Symbol jetzt ein? Möglicherweise können Sie den Befehl, mit dem Sie das Symbol eingeben, bestimmten Tasten im Tastaturlayout zuordnen. Mit können Sie das genaue Schlüsselwort eines bestimmten Schlüssels ermitteln xev. Aber das ist natürlich nur meine Vermutung.
Nitin Venkatesh
3
@nitstorm Ich habe es durch Drücken von AltGr +> eingegeben. Dies ist eine benutzerdefinierte Zuordnung, die ich durch Hinzufügen des Schlüsselsymbols U25B8zum Schlüsselcode 60in festgelegt habe ~/.xmodmaprc. Ich frage nicht, wie ich tippe ▸; Ich frage, wie man eine komponierte Tonfolge dafür erstellt.
ændrük

Antworten:

7

Erstellen Sie eine Datei ~/.XCompose(das ist eine Datei, die .XComposein Ihrem "Home" -Ordner benannt ist), die Folgendes enthält:

include "%L"   # import the default Compose file for your locale
<Multi_key> <bar> <greater>     : "▸"

Sehen Sie man 5 Composefür weitere Informationen über das Format dieser Datei.

JanC
quelle
2
Ordentlich! Gibt es eine Möglichkeit, diese Datei erneut zu lesen, ohne X neu zu starten?
Jeremy Kerr
1
Das hört sich vielversprechend an, aber meine ~/.XComposeDatei scheint auch nach dem Neustart keine Wirkung zu haben. Hast du das zum Laufen gebracht?
ændrük
@ Jeremy: Ich bin mir nicht sicher, aber vielleicht funktioniert es, wenn Sie das Tastaturlayout in ein anderes Layout ändern und dann wieder zurück.
9.
1
@ ændrük: Ich scheine mich zu erinnern, dass Gtk / GNOME dumm mit den Einstellungen für das Verfassen von Schlüsseln umgeht (Sie können testen, ob die neue Tastenkombination Verfassen in z. B. xterm funktioniert, um zu bestätigen, dass dies der Fall ist). Ich scheine mich zu erinnern, dass die Problemumgehung etwas mit der Auswahl einer alternativen Eingabemethode zu tun hatte, die das problematische Medling umgeht. vielleicht eine neue frage dazu stellen, denn es ist nicht nur nützlich für dieses, sondern auch für das IIRC, es repariert auch länderspezifische Compose Maps usw.;)
JanC
1
Ab mindestens 18.04 LTS sollte diese Antwort jetzt funktionieren, ohne dass die Eingabemethoden geändert werden müssen.
ændrük
22
  1. Erstellen Sie eine Datei mit dem Namen .XComposein Ihrem Home-Verzeichnis ( ~/.XCompose), die Folgendes enthält:

    # import the default Compose file for your locale
    include "%L"
    
    <Multi_key> <bar> <greater>  : "▸"
    

    Sehen Sie man 5 Composefür weitere Informationen über das Format dieser Datei.

  2. Fügen Sie Folgendes hinzu zu ~/.profile:

    export GTK_IM_MODULE="xim"
    

    Unter Ubuntu 18.04 (möglicherweise auch unter anderen) müssen Sie möglicherweise stattdessen Folgendes verwenden:

    export GTK_IM_MODULE="gtk-im-context-simple"
    
  3. Melden Sie sich ab und wieder an. Oder starten Sie X neu. Oder starten Sie neu.

dan_waterworth
quelle
3
Ich habe festgestellt, dass ich mit dieser Lösung Strg-Umschalt-u nicht mehr verwenden kann, um Unicode-Zeichen nach Nummer einzufügen. Ich gehe davon aus, dass dies etwas Allgemeines vom Gnome-Zeug zum X-Zeug umschaltet, das durch diese ~ / .XCompose-Datei konfiguriert wird. Gibt es auch eine Möglichkeit, das Gnome-Material zu ändern? Ich möchte diese Strg-Umschalt-u-Funktion beibehalten.
Alfe
2
@Alfe Verwenden von UIM wie unten in den Ubuntu-Foren vorgeschlagen: .XCompose-Datei, die in 11.04 nicht gelesen wurde GNOME funktioniert für mich mit den Standardeinstellungen in Debian jessie / sid (siehe im-config(8) zur Anpassung). Das heißt, die .XCompose-Einstellungen funktionieren sowohl in GTK- (GNOME) als auch in Qt- (KDE) Anwendungen, und .XCompose und Strg + Umschalt + U funktionieren beide in GTK-Anwendungen (wie Eclipse).
PointedEars
Danke! Also hast du nur apt-getdas uimPaket oder musstest du etwas anderes konfigurieren?
Alfe
1
Ich habe versucht, dies für einige Zeit zum Laufen zu bringen, aber ohne Erfolg. Es wäre sehr hilfreich zu hören, was genau Sie neben der Installation des uim-Pakets getan haben. Zumindest könnte dies helfen, um sicherzustellen, dass Ihr Weg unter Ubuntu 12.04 nicht funktioniert.
Alfe
@dan_waterford Hallo, ich habe diese Frage gerade hier gestellt und hatte es "möglich duplizieren" zu dieser Frage. Ich habe Ihre Antwort jedoch ausprobiert und konnte sie nicht zum Laufen bringen. Irgendwelche Ideen? :)
Owen_R
9

Unter Ubuntu 14.04 habe ich Folgendes getan:

1) installiert , uimdie Software - Manager, andere Pakete wie uim-xim, uim-gtk2, uim-gtk3und uim-qtwerden automatisch installiert. Siehe https://launchpad.net/ubuntu/+source/uim .

2) Definieren Sie Umgebungsvariablen, indem Sie die nächsten Zeilen hinzufügen. Auf ~/.profilediese Weise gelten die benutzerdefinierten Zusammenstellungsschlüsselfolgen nur für den aktuellen Benutzer:

# Restart the X-server after making alterations using:
# $ sudo restart lightdm
# It seems only GTK_IM_MODULE or QT_IM_MODULE needs to be defined.
export GTK_IM_MODULE="uim"
export QT_IM_MODULE="uim"

Die ~/.XCompose-Datei vom OP sollte nach einem Neustart von 1) Ubuntu oder 2) nur dem X-Server durch Ausführen des folgenden Befehls in einem Terminal funktionieren:

$ sudo restart lightdm

NB: Ein Neustart ist nur nach dem Ändern der ~/.profileDatei erforderlich. Die Änderungen ~/.XComposewerden beim nächsten Start einer Anwendung (Terminal, Gedit usw.) wirksam.

Geben Sie den folgenden Befehl in Ihr Terminal ein, um zu überprüfen, ob die Umgebungsvariablen richtig eingestellt sind:

$ printenv | grep IM_MODULE

Vielen Dank an:

Informationen zu benutzerdefinierten Tastenkombinationen:

Informationen zur benutzerdefinierten Tastaturzuordnung:

Beispieldateien .Xcomposezum Nachahmen von Window US InternationalTastaturen:

Meine Herren
quelle