Розкладка української латинки в Linux


Кому цікава тема української латинки, хочу поділитися способом швидкого налаштування клавіатури для Linux.


Варіант передбачає роботу з абеткою версії Максима Прудеуса з наступним набором символів:


A B Cц Čч D E F G Ĝґ H I Jй K L M N O P R S Šш T U V Yи Z Žж '

Як програміст, користуюсь версією клавіатури, що базується на мапі "us", оскільки вона дозволяє не змінювати розкладку під час написання коду і відвідування англомовних ресурсів.


В прикладі використовується код `ul` - обрати вільний слот можна в таблиці ISO_639:


https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes#Table_of_all_possible_two_letter_codes


partial alphanumeric_keys

xkb_symbols "ul" {

    include "us(basic)"

    name[Group1]= "Adaptive (UL)";

    key <AB01> { [z, Z, zcaron, Zcaron] };
    key <AB03> { [c, C, ccaron, Ccaron] };
    key <AC02> { [s, S, scaron, Scaron] };
    key <AC05> { [g, G, gcircumflex, Gcircumflex] };

    include "level3(ralt_switch)"
};

У версії Прудеуса, допускається використання літери "ï" замість "ji".

Стандартно ця літера не є частиною вказаної абетки, але на практиці, без неї не зручно писати і читати такі слова як наприклад "jiji".


Додати літеру до розкладки можна так:


key <AD08> { [i, I, idiaeresis, Idiaeresis ] };

Після редагування файлів "/usr/share/X11/xkb/symbols/*" потрібно застосувати зміни командою без атрибутів:


setxkbmap

В середовищі i3, мною використовується конфігурація на правий "alt":


setxkbmap -layout ul,ua
setxkbmap -option 'grp:alt_shift_toggle'

На Fedora 42 / GNOME, я виконую наступні кроки:


1. Додаю до файлу `/usr/share/X11/xkb/rules/evdev.xml` (після `<layoutList>`):


<layout>
  <configItem>
    <name>ul</name>
    <shortDescription>ul</shortDescription>
    <description>Ukrainian (Latin)</description>
    <countryList>
      <iso3166Id>UA</iso3166Id>
    </countryList>
    <languageList>
      <iso639Id>ukr</iso639Id>
    </languageList>
  </configItem>
  <variantList/>
</layout>

2. Щоб не вказувати вручну в графічних налаштуваннях клавіатури:


gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'ua'), ('xkb', 'ul')]"

3. Перезапускаю GDM:


sudo systemctl restart gdm.service

Детальніше про абетку читайте на сайті проєкту:


https://www.ukr-latynka.org


Pobačymos' o/



/uk/