Tutorials/Compose-Taste

From KDE Wiki Sandbox
Revision as of 17:33, 2 June 2020 by Ikoch (talk | contribs)

Einleitung

Die Compose-Taste wird verwendet um Zeichen auf der Tastatur zu tippen, die normalerweise nicht verfügbar sind. Solche Zeichen können "Umlaute", ein "Längezeichen" oder Akzente auf Buchstaben werden:

Weitere Informationen finden Sie in dem Abschnitt Verknüpfungen und weitere Informationen weiter unten.

Die Änderungen werden unter (fast) allen Anwendungen, einschließlich der Arbeitsflächenumgebung, Browser, LibreOffice, sowie viele Konsolen / Nur Text-Anwendungen, funktionieren.

Die folgenden Anweisungen werden eine Compose-Taste einrichten, die auf die rechte Logo-Taste gelegt wird (auf den meisten Tastaturen ist dieses Logo das Windowslogo).

Plasma Workspace

  • Select Input Devices then Keyboard
  • Click the Advanced tab
  • Click the box next to Configure Keyboard Options to enable changing keyboard options
  • Click the icon next to Position of Compose key
  • Click the box next to the desired key to enable it

Konfiguration über das Terminal

̣

Note
This instruction are old and only works in Debian based system. If you know a better way, feel free to edit this wiki page.


Um dies richtig zu tun, werde ich versuchen den "ganzheitlichen" Weg über das Terminal zu gehen:

  • Rekonfigurieren der Konsole für die benutzte Tastatur und Zeichencodierung. Um dies durchzuführen geben Sie dies in ein Text-Terminal oder die Konsole ein.
$ sudo dpkg-reconfigure console-setup
  • Befolgen Sie diese Schritte der Konfiguration:
    • Wählen Sie Ihre Tastatur (hier eine Standard 104 US-Tastatur)
    • Wenn Sie einen !AltGr-Tasten-Ersatz wünschen, wählen Sie ihn

∗ Wählen Sie die Taste, die Ihre Compose-Taste sein soll. Ich benutze die Symboltaste rechts.

Ich würde lieber die Symboltaste links nutzten, aber diese ist in den Konsoleneinstellungen nicht verfügbar. Aber in der grafischen Fenster-Umgebung (KDE Plasma) ist dies möglich.

    • Wählen Sie als Konsolen-Kodierung UTF-8
    • Wählen Sie welcher Zeichensatz auf der Konsole verfügbar sein soll. Ich nutze Kombiniert - Latein, slawisches Kyrillisch, Hebräisch, einfaches Arabisch.

      Ich denke, dass die Auswahl mir die gewünschten Zeichen bietet.

    • Wählen Sie welche Konsolenausgabe Sie wünschen (was immer Sie möchten, um sicher zu gehen kann man die gegebenen aktuellen Standardwerte nutzen)
    • Eine neue Initial RAM-Disk für den nächsten Start wird nun erstellt.

Configuration for GTK Applications (Gnome, Firefox, etc.)

Note
This instruction are probably obsolete. If GTK applications don't work out-of-the-box, please go to the Troubleshooting section.


GTK (such as also Firefox) and Gnome applications use (on an Ubuntu system) usually SCIM as the input method, not XIM (X Input Method) that relies on the configurations from (X)Compose. Therefore, you will often find that the "a" and "o" macron characters can yield the female/male ordinals "ª" and "º". To still make it work, GTK applications need to be "told" to use XIM instead.

"One Off" Configuration

For a single application you can do it by just setting the environment variable GTK_IM_MODULE for the application to be launched to xim:

$ GTK_IM_MODULE=xim firefox

More permanently that can be done for a single shell session like this:

$ export GTK_IM_MODULE=xim

This can, of course, also be persisted for a single user in your ~/.bash_profile, or for all users in /etc/environment. This is, however, the less elegant way, the more elegant way follows below.

Persistent Configuration

  • Copy the setup file /etc/X11/xinit/xinput.d/default to /etc/X11/xinit/xinput.d/xim
$ sudo cp /etc/X11/xinit/xinput.d/default /etc/X11/xinit/xinput.d/xim
  • Edit the file /etc/X11/xinit/xinput.d/xim and set the input method for GNOME and KDE to xim
...
 GTK_IM_MODULE=xim
 QT_IM_MODULE=xim
 ...
  • Create a link for the locale all_ALL (or the desired locale only):
$ sudo ln -sf /etc/X11/xinit/xinput.d/xim /etc/X11/xinit/xinput.d/all_ALL

If you are using a Debian-derived distribution use following instead

$ sudo update-alternatives --verbose --install /etc/X11/xinit/xinput.d/all_ALL xinput-all_ALL /etc/X11/xinit/xinput.d/xim 20
  • After a restart of the X server everything should work.

Optional Tweaking of XCompose Map

Now that you're using XIM, you can further tweak the XCompose input map for further characters, or for characters in more convenient locations, etc.

To do that follow these steps:

  • Create a ~/.XCompose file, and put the following lines into it:
# ~/.XCompose
 # This file defines custom Compose sequences for Unicode characters
# Import default rules from the system Compose file: include "/usr/share/X11/locale/en_US.UTF-8/Compose"
# To put some stuff onto compose key strokes: <Multi_key> <minus> <greater> : "→" U2192 # Compose - > <Multi_key> <colon> <parenright> : "☺" U263A # Compose : ) <Multi_key> <h> <n> <k> : "hugs and kisses" # Compose h n k <Multi_key> <less> < p> : "< p>

" # Compose < p
  • Just log out and in again (no restart necessary), and you can use your new "multi key short strokes" using the compose key to your desire. As you see this even works for creating longer character sequences.

Typing Macrons, Umlauts, Accents, ...

The compose key will be now whatever you have configured it to be, e. g. right logo.

  • Macrons
compose + shift + hyphen then <vowel >

or

compose + underscore then <vowel >

āēīōū ĀĒĪŌŪ


  • Umlauts
compose + shift + <single quote> then <vowel >

or

compose + <double quotes> then <vowel >

äëïöü ÄËÏÖÜ


  • The German Ess-Zet ligature
compose then s and s (twice the "s")
-->
ß


  • More bindings can be found in /usr/share/X11/locale/en_US.UTF-8/Compose

Troubleshooting

Compose key don't work in GTK applications

Delete in .xinputrc the line with the following content: run_im ibus. Then reboot your computer or logout from your user X session.

More Information