He añadido una nueva sección al /usr/share/X11/xkb/symbols/il
archivo. Luego agregué una referencia de la sección /usr/share/X11/xkb/rules/base.lst
y la actualicé sudo dpkg-reconfigure xkb-data
. Sin embargo, incluso después de reiniciar el sistema (Kubuntu 20.04 LTS), la nueva distribución del teclado no está disponible en la Configuración del sistema de KDE.
Aquí hay un resumen del sistema y los cambios que he realizado:
$ # Running the current Ubuntu LTS
$ cat /etc/issue
Ubuntu 20.04.3 LTS \n \l
$ # Kernel up to date
$ uname -a
Linux matrix-lenovo 5.11.0-38-generic #42~20.04.1-Ubuntu SMP Tue Sep 28 20:41:07 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
$ # Using X11, not Wayland
$ loginctl show-session $(loginctl|grep $(whoami) |awk '{print $1}') -p Type
Type=x11
$ # Emptied XKB cache
$ ls -la /var/lib/xkb
total 12
drwxr-xr-x 2 root root 4096 Oct 27 12:31 .
drwxr-xr-x 89 root root 4096 Oct 26 08:19 ..
-rw-r--r-- 1 root root 644 Jul 6 13:17 README.compiled
$ # Added "Potsatzi" Hebrew layout to XKB rules
$ grep Hebrew /usr/share/X11/xkb/rules/base.lst
il Hebrew
lyx il: Hebrew (lyx)
phonetic il: Hebrew (phonetic)
biblical il: Hebrew (Biblical, Tiro)
potsatzi il: Hebrew (Potsatzi)
$ # Added "Potsatzi" Hebrew layout to Hebrew XKB symbols file
$ diff /usr/share/X11/xkb/symbols/il.bak /usr/share/X11/xkb/symbols/il
140a141,205
> // Based on lyx, with additional useful directional characters
> // See table here: https://dotancohen.com/howto/rtl_right_to_left.html
> partial alphanumeric_keys
> xkb_symbols "potsatzi" {
> name[Group1]= "Hebrew (Potsatzi)";
>
> key <TLDE> { [ semicolon, asciitilde ] };
> // On some key (e.g. AD01, right below) there is not yet mapping for the
> // second shift level. Since I could not figure a simple way to map this
> // to "emit nothing", it is currently mapped to the same letter of the
> // first shift level (avoiding mapping may risk it be used by a character
> // from a different group).
> key <AD01> { [ slash, slash ] };
> key <AD02> { [ apostrophe, apostrophe ] };
> key <AD03> { [ hebrew_qoph, 0x10005b8 ] }; // Qamats
> key <AD04> { [ hebrew_resh, 0x10005bc ] }; // Dagesh/Shuruq
> key <AD05> { [ hebrew_aleph, 0x100200e ] }; // LRM
> key <AD06> { [ hebrew_tet, 0x100200f ] }; // RLM
> key <AD07> { [ hebrew_waw, 0x10005b9 ] }; // Holam
> key <AD08> { [ hebrew_finalnun, 0x100202a ] }; // ADDED by potsatzi LRE
> key <AD09> { [ hebrew_finalmem, 0x100202b ] }; // ADDED by potsatzi RLE
> key <AD10> { [ hebrew_pe, 0x10005b7 ] }; // Patah
>
> key <AC01> { [ hebrew_shin, 0x10005b0 ] }; // Sheva
> key <AC02> { [ hebrew_dalet, 0x10005bc ] }; // Dagesh/Shuruq
> key <AC03> { [ hebrew_gimel, hebrew_gimel ] };
> key <AC04> { [ hebrew_kaph, hebrew_kaph ] };
> key <AC05> { [ hebrew_ayin, 0x10005c2 ] }; // Sin dot
> key <AC06> { [ hebrew_yod, 0x10005c1 ] }; // Shin dot
> key <AC07> { [ hebrew_chet, 0x10005b4 ] }; // Hiriq
> key <AC08> { [ hebrew_lamed, 0x10020aa ] }; // NIS
> key <AC09> { [ hebrew_finalkaph, 0x100202c ] }; // ADDED by potsatzi PDF
> key <AC10> { [ hebrew_finalpe, colon ] };
> key <AC11> { [ comma, quotedbl ] };
>
> key <AB01> { [ hebrew_zain, hebrew_zain ] };
> key <AB02> { [ hebrew_samech,0x10005b6 ] }; // Segol
> key <AB03> { [ hebrew_bet, 0x10005bb ] }; // Qubuts
> key <AB04> { [ hebrew_he, 0x10005b1 ] }; // H. Segol
> key <AB05> { [ hebrew_nun, 0x10005b2 ] }; // H. Patah
> key <AB06> { [ hebrew_mem, 0x10005b3 ] }; // H. Qamats
> key <AB07> { [ hebrew_zade, 0x10005b5 ] }; // Tsere
> key <AB08> { [ hebrew_taw, greater ] };
> key <AB09> { [ hebrew_finalzade, less ] };
> key <AB10> { [ period, question ] };
>
> // Note the parens mirroring below:
> key <AD11> { [ bracketright, braceright ] };
> key <AD12> { [ bracketleft, braceleft ] };
> key <AE01> { [ 1, exclam ] };
> key <AE02> { [ 2, at ] };
> key <AE03> { [ 3, numbersign ] };
> key <AE04> { [ 4, dollar ] };
> key <AE05> { [ 5, percent ] };
> key <AE06> { [ 6, asciicircum ] };
> key <AE07> { [ 7, ampersand ] };
> key <AE08> { [ 8, asterisk ] };
> key <AE09> { [ 9, parenright ] };
> key <AE10> { [ 0, parenleft ] };
>
> key <AE11> { [ minus, 0x10005be ] }; // H. Hiphen
> key <AE12> { [ equal, plus ] };
> };
>
>
La potsatzi
sección del /usr/share/X11/xkb/symbols/il
archivo es copiar y pegar (bueno, tirar y pegar en VIM) de la sección anterior, con los siguientes cambios:
- El nombre fue cambiado en dos lugares de
lyx
apotsatzi
. - Limpieza de espacios en blanco
- Agregué tres puntos de código Unicode en las ubicaciones de caracteres de desplazamiento, esas líneas tienen el comentario
ADDED by potsatzi
con el nombre del carácter agregado.
Además de agregar el alias a /usr/share/X11/xkb/rules/base.lst
, eliminar archivos de caché /var/lib/xkb/
y reiniciar el sistema, ¿qué más debo hacer para que el sistema reconozca la nueva variante de diseño?
Respuesta1
He encontradoeste informe de erroreso me señaló /usr/share/X11/xkb/rules/evdev.xml
. Agregar las siguientes líneas al archivo, además de todos los demás esfuerzos mencionados en la pregunta OP, resolvió el problema después de reiniciar:
<variant>
<configItem>
<name>potsatzi</name>
<description>Hebrew (Potsatzi)</description>
</configItem>
</variant>
¡¡¡Ahora tengo mis tres caracteres adicionales en el teclado!!!