Wählen Sie Zeichen aus, indem Sie eine Taste in Linux gedrückt halten (wie in OSX)

18

Ich habe mich gefragt, ob es ein Add-On für Mac OS X gibt. Meine Muttersprache ist Spanisch, und jetzt lebe ich in einer frankophonen Umgebung. Ich spreche auch viel Englisch, daher brauche ich andere Akzente Insbesondere auf Französisch benutze ich seit zwei Jahren Linux und gelegentlich auch Mac OS X zu Testzwecken.

Ich finde die unter Mac OS X verfügbare Funktionalität sehr nützlich, bei der Sie die Taste gedrückt halten und eine Liste der verfügbaren Optionen für dasselbe Zeichen, verschiedene Akzente oder Satzzeichen angezeigt wird. Kann ich das unter Linux machen?

Zum Beispiel:

Bildbeschreibung hier eingeben

ximbal
quelle
1
Das wäre großartig. Können Sie bitte einen Screenshot dieser Funktionalität posten? Ich denke, es wäre nützlich zu veranschaulichen, wie großartig das ist ...
Jonathan Komar

Antworten:

3

Ich fürchte, ich kenne keine Anwendung, die dies tut. Um eine zu entwickeln, müsste wahrscheinlich eine eigene Eingabemethode erstellt werden (um sie zu ersetzen XIM).

Ich kann Ihnen jedoch eine Alternative anbieten, die für Sie weitaus hilfreicher ist, als nur das Tastenlayout zu ändern. X (through XIM) bietet seit einiger Zeit ein Hilfsprogramm namens XCompose an. Mit XCompose können Sie „exotische“ Zeichen eingeben, indem Sie eine von Ihnen festgelegte führende Taste und anschließend anpassbare Tastenfolgen drücken. Zum Beispiel Composee'ergibt das Zeichen é. Die Standardsequenzen sind größtenteils recht intuitiv, aber der mächtigste Teil von XCompose ist, dass Sie Sequenzen hinzufügen (oder ändern) können, um theoretisch jedes Unicode-Zeichen zu generieren, das Sie für richtig halten.

Der Aufbau von Sequenzen wird durch einfache Textdateien getan (die Sie entweder setzen in $HOME/.XComposeoder dass Sie an anderer Stelle setzen , aber haben $HOME/.XComposeQuelle (Sie können meine ganze Setup schauen hier , wenn Sie interessiert sind, sehen sich speziell an XComposeund die Dateien unter compose/.) Im Folgenden ist ein Ausschnitt aus meinem persönlichen $HOME/.XCompose:

include "%L"     # This enables all the default bindings
include "/home/halosghost/.compose/greek.compose" # some greek characters

Und jetzt ein Ausschnitt aus dem greek.composeoben genannten (beachten Sie, dass dies mit Sicherheit nicht die ergonomischsten oder effizientesten Sequenzen sind, die Sie verwenden können, sondern nur ein Beispiel):

# Lower case
<Multi_key> <a> <l> <p> <h> <a>     : "α"   U03B1   # Alpha
<Multi_key> <b> <e> <t> <a>         : "β"   U03B2   # Beta
<Multi_key> <d> <e> <l> <t> <a>     : "δ"   U03B4   # Delta
<Multi_key> <g> <a> <m> <m> <a>     : "γ"   U03B3   # Gamma
<Multi_key> <l> <a> <m> <b> <d> <a> : "λ"   U03BB   # Lambda
<Multi_key> <p> <i>                 : "π"   U03C0   # Pi
<Multi_key> <m> <u>                 : "µ"   U03BC   # Mu

Sie sehen, dass das Format dieser Dateien eigentlich sehr einfach ist (obwohl es einige Fälle gibt, in denen Sie nicht das Zeichen selbst, sondern einen Namen dafür verwenden (z. B. <period>anstatt <.>)).

Mit dem oben genannten kann ich jetzt eingeben Capsmu, um zu generieren µ(beachten Sie, dass mein Verfassen-Schlüssel auf festgelegt ist Caps).

Sie haben nicht erwähnt, welche Distribution Sie verwenden (oder welche Sie verwenden möchten), aber XCompose wird mit xorg ausgeliefert, sodass Sie es nur einrichten müssen. Die entsprechende Lektüre zum Einrichten von "Verfassen mit" XIMfinden Sie hier . Sie sollten jedoch auch beachten, XIMdass das Programm heutzutage ziemlich in die Jahre gekommen ist und möglicherweise nicht die beste Option ist. Es gibt auch mindestens ein anderes IME, das Compose-Sequenzen unterstützt (obwohl es eine etwas andere Implementierung verwendet): IBus .

Ich persönlich benutze XIMund hoffe, dies zu tun, bis ich zu wayland wechsle (wo ich hoffe, dass ein rundum besseres IME auf mich wartet²), aber dies ist Linux; Eine Größe passt nicht für alle, und Sie sollten das verwenden, was für Ihren Workflow am besten geeignet ist (im Rahmen des Zumutbaren ).


  1. Über diesen Link können Sie auf einfache Weise festlegen, welche Taste Sie für das Verfassen verwenden (vorausgesetzt, Ihre Tastatur ist nicht esoterisch genug, um eine dedizierte Verfassen-Taste zu haben), indem Sie den folgenden Befehl (für Caps) ausführen :

    setxkbmap -option compose:caps
    
  2. Ich kann träumen, richtig?

Zum Schluss wurden alle „exotischen“ Zeichen in diesem Beitrag (einschließlich é, „,“, µ, ¹ und ²) mit XCompose generiert.

HalosGhost
quelle
Was, würden Sie sagen, wären die Unterschiede zwischen XIM und der Verwendung des Compose-Schlüssels? Verstehen Sie mich bitte nicht falsch, aber es scheint, als würde man einen benutzerdefinierten Schlüsselsequenz-Mapper einrichten, anstatt den zu verwenden, der bereits vorhanden ist Für mich ist es selbstverständlich, benutzerdefinierte Schlüssel zu haben, aber ich glaube, Sie können dies auch mit dem Compose Key erreichen. Ich verwende eine Linux Mint auf Debian-Basis als Distribution. Am Ende würde ich wahrscheinlich etwas einrichten, wie Sie vorschlagen, aber es wäre pädagogisch für mich, die Unterschiede zu lernen. Vielen Dank für die Antwort.
Ximbal
Ich denke, Sie sind ein wenig verwirrt über das Setup (was sehr wohl meine Schuld sein kann). XIMist ein IME, der den Compose-Schlüssel anbietet. Die von mir erwähnten und vorgestellten benutzerdefinierten Sequenzen sind nicht vom Compose-Schlüssel getrennt, sondern von mir persönlich hinzugefügte Erweiterungen. Mit der ersten includeZeile, die ich aus diesem .XComposeSnippet gezeigt habe, erhalten Sie alle Standard-Compose-Sequenzen und fügen nach Belieben weitere hinzu (wobei manchmal einige Standardeinstellungen außer Kraft gesetzt werden).
HalosGhost
1
Ich werde es versuchen, ich
melde
0

Möglicherweise möchten Sie Ihren Erstellungsschlüssel aktivieren . Auf diese Weise können Sie Zeichen mit Symbolen erstellen, die wie Teile des Verbunds aussehen. Ich verwende Alt Grals Verfassen-Schlüssel, aber normalerweise ist es möglich, einen geeigneten, nicht verwendeten Schlüssel auszuwählen.

Zum Beispiel Compose o /wird ø geben, Compose a `wird à geben und so weiter.

Dies unterscheidet sich stark von der Verwendung von Dead Keys , bei denen Akzentzeichen nur dann als eigenständige Zeichen angezeigt werden, wenn sie zweimal hintereinander gedrückt werden. Dies ist normalerweise für Programmierer äußerst frustrierend.

Die Compose Key-Funktionalität gibt es schon seit langer Zeit (ich glaube, sie ist auf "echten" Sun-Terminals erschienen). Es ist in den meisten (vielen? Allen?) GUIs auf Linux-basierten Systemen integriert. Ich kenne und benutze entsprechende Software für Windows.

Roaima
quelle
1
Ich kenne die Verwendung von Compose Key, finde es jedoch nicht so offensichtlich, sich 15 verschiedene Tastenkombinationen für alle möglichen Zeichen zu merken. Ich weiß, es ist eine Lösung, die funktioniert und die es schon lange gibt, aber Ich habe es ausprobiert und am Ende vergesse ich die wichtigsten Sequenzen und viele andere Dinge, auf die ich mich konzentrieren muss. Danke, dass du versucht hast zu antworten.
Ximbal
1
Compose ist, wie in meinem Beitrag erwähnt, eine Funktion des XIMIME (X Input Module). Einige andere IMEs bieten ähnliche Funktionen (wie IBus), aber jede GUI, die XIMfür die Eingabe verwendet wird (Sie können beides festlegen GTKund Qtverwenden XIM), unterstützt Compose, wenn Sie es eingerichtet haben.
HalosGhost