ubuntuusers.de

Eigenes Tastaturlayout erstellen und zu IBus hinzufügen

Status: Gelöst | Ubuntu-Version: Kubuntu 24.04 (Noble Numbat)
Antworten |

15kilovolt

Anmeldungsdatum:
19. Februar 2023

Beiträge: 19

Hallo zusammen,

Ich benutze seit einigen Jahren ein eigenes Tastaturlayout. Es ist quasi ein deutsches Layout, nur dass ich das Y und Z getauscht habe (und einige polnische und tschechische Sonderzeichen als dritte Belegung gesetzt habe).

Für Linux habe ich mir eine Datei gebastelt, welche das angepasste Layout enthält und die ich mit den folgenden Schritten aktivieren kann:

  1. Die vorbereitete Datei (heißt bei mir "de2") nach usr/share/X11/xkb/symbols/ kopieren

  2. Datei /usr/share/X11/xkb/rules/xorg.lst anpassen durch Einfügen einer Zeile: "de2 German (customised)"

  3. Sicherstellen, dass diese Änderung auch in "/usr/share/X11/xkb/rules/base.lst" nachvollzogen wurde (die Dateien scheinen verlinkt zu sein)

  4. Es ist schließlich noch ein zusätzlicher Eintrag jeweils in den Dateien "/usr/share/X11/xkb/rules/base.xml" und "/usr/share/X11/xkb/rules/evdev.xml" notwendig:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
<layout>
  <configItem>
    <name>de2</name>
    <!-- Keyboard indicator for German customised layout -->
    <shortDescription>de2</shortDescription>
    <description>German (c)</description>
    <languageList>
      <iso639Id>deu</iso639Id>
    </languageList>
  </configItem>
  <variantList>
    <variant>
      <configItem>
        <name>standard</name>
        <description>German (customised)</description>
      </configItem>
    </variant>
  </variantList>
</layout>

Nach Ausführung dieser Schritte kann mit dem Kommando:

1
setxkbmap de2

das Layout aktiviert werden.

Das Layout erscheint allerdings nicht in der Liste zur Auswahl der Tastaturlayouts, die von IBus genutzt werden. Offenbar sind IBus und setxkbmap zwei verschiedene Dinge und xmodmap wird eventuell irgendwann gar nicht mehr funktionieren. Deshalb suche ich nach einem Weg, das Layout mit IBus zu realisieren.

Das Erstellen eines neuen Layouts mit IBus scheint irgendwie möglich zu sein: https://wikis.swarthmore.edu/ling073/Making_a_keyboard_layout_using_IBus. Meine Frage: Hat das schonmal jemand gemacht und weiß z. B., wo ich die Datei für das deutsche Layout finden kann? Ich bin bei meiner Suche leider gescheitert. Über sonstige Tips bin ich auch dankbar. Sofern noch Informationen erforderlich sind, kann ich die auch gern angeben.

MfG 15kV

15kilovolt

(Themenstarter)

Anmeldungsdatum:
19. Februar 2023

Beiträge: 19

Hallo zusammen, die Resonanz auf das Thema war jetzt nicht riesig... ich denke mal dass einfach nur sehr wenige Menschen ein angepasstes Tastaturlayout nutzen. Dabei sind es wiederum nur wenige, die ein "einfaches" Layout möchten, im Gegensatz zu einem Layout für asiatische Zeichen.

Ich habe einen neuen Anlauf unternommen und es nun hinbekommen. Da die Vorgehensweise meiner Meinung nach nicht (sonderlich gut) dokumentiert ist, beschreibe ich sie mal wie folgt:

  1. Datei vorbereiten, welche das Layout beschreibt, im Format welches auch xmodmap verwendet (Mein Beispiel für eine QWERTY-Tastatur mit deutschen, polnischen, tschechischen, skandinavischen und romanischen Sonderzeichen: https://pastebin.com/tV0uJVET)

  2. Die fertige Datei mit root-Rechten abspeichern unter:

    1
    /usr/share/X11/xkb/symbols/custom
    
  3. IBus muss nun neu geladen werden mit

    1
    ibus-daemon -r 
    

    Dies bewirkte, dass das neue Tastaturlayout in iBus auswählbar war (nach Suche von "benutzerdefiniert" oder "custom"). Dass es das gewünschte Layout ist, kann mit "Vorschau" überprüft werden. Das Layout erschien jedoch nicht in den Menüs von GNOME oder KDE. Ich habe daher einfach das System neu gestartet, danach war es dort auch verfügbar.

  4. Man kann das Layout auch in einem neuen Eintrag hinzufügen und der richtigen Sprache zuordnen. Dazu muss der Datei

    1
    /usr/share/ibus/component/simple.xml
    

    ein Schnipsel etwa wie folgt hinzugefügt werden:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    <engine>
      <name>xkb:de:deplcsscandic:deu</name>
      <language>de</language>
      <license>GPL</license>
      <author>15 Kilovolt &lt;####@posteo.de&gt;</author>
      <layout>de</layout>
      <layout_variant>deplcsscandic</layout_variant>
      <longname>German (QWERTY with PL, CS, Scandic, Roman keys)</longname>
      <description>German (QWERTY with PL, CS, Scandic, Roman keys)</description>
      <icon>ibus-keyboard</icon>
      <rank>1</rank>
    </engine>
    

Das Layout erschien dann allerdings nur in iBus und nicht in den Menüs von GNOME oder KDE.

Nach der Auswahl des neuen Layouts hatte ich alle anderen Layouts gelöscht. Ich musste auch in diesem Fall das System neustarten, damit die Änderungen systemweit wirksam wurden.

Hoffentlich hilft es jemandem der dasselbe Problem hat und Google bemüht. Mit Ubuntu 24.04 und Fedora 43 erfolgreich getestet.

MfG 15kV

Bearbeitet von schwarzheit:

Bitte verwende in Zukunft Listen, um die Lesbarkeit zu verbessern! Und benutze bitte den Vorschaubutton. Danke.

von.wert

Anmeldungsdatum:
23. Dezember 2020

Beiträge: 14328

Wenn es so funktioniert, aber nur mit XServer, also nicht mehr ewig.

Forum/Syntax (Abschnitt „Listen“)

15kilovolt

(Themenstarter)

Anmeldungsdatum:
19. Februar 2023

Beiträge: 19

von.wert schrieb:

Wenn es so funktioniert, aber nur mit XServer, also nicht mehr ewig.

Oha, tatsächlich läuft mein Ubuntu 24.04 unter x11... das Fedora 43, mit dem ich es auch getestet habe, nutzt allerdings bereits Wayland und auch damit ging es so wie beschrieben.

Sorry dass ich die Formatierung falsch gemacht habe, ich kann den Beitrag leider nicht mehr ändern...

Antworten |