An XKB layout for the Veqilharxhi alphabet

I have developed an XKB layout for the Veqilharxhi alphabet, as illustrated in the following screenshot:

Veqilharxhi keyboard layout illustration. Press RALT (Right Alt or Alt Gr) to access the secondary letters. For instance, for letter W press RALT + W on the keyboard. For the Albanian letter Ç, press RALT + C, etc.

The keyboard layout may be used in GNU/Linux systems as per the following instructions:

Copy the following layout text into a file called al:

// Veqilharxhi xkb layout (https://arberisht.wordpress.com/2019/09/13/an-xkb-layout-for-the-veqilharxhi-alphabet/)
// ref. layout codes: https://i.stack.imgur.com/lAywU.png
// 2019-09-12

default  partial alphanumeric_keys
xkb_symbols "veqilharxhi" {

    include "us" // inherit any other preferred layout, e.g. French Canadian

    name[Group1]="Albanian (Veqilharxhi)"; // input source name

    // QWERTYUIOP
    key <AD01>	{ [ U105B0, U10589 ] }; // 𐖰, 𐖉
    key <AD02>	{ [ U1059F, U10578, w, W ] }; // 𐖟, 𐕸, w, W
    key <AD03>	{ [ U1059E, U10577 ] }; // 𐖞, 𐕷
    key <AD04>	{ [ U105B1, U1058A, U105B2, U1058B ] }; // 𐖱, 𐖊, 𐖲, 𐖋
    key <AD05>	{ [ U105B5, U1058E, U105B6, U1058F ] }; // 𐖵, 𐖎, 𐖶, 𐖏
    key <AD06>	{ [ U105BB, U10594 ] }; // 𐖻, 𐖔
    key <AD07>	{ [ U105B7, U10590 ] }; // 𐖷, 𐖐
    key <AD08>	{ [ U105A5, U1057E ] }; // 𐖥, 𐕾
    key <AD09>	{ [ U105AE, U10587 ] }; // 𐖮, 𐖇
    key <AD10>	{ [ U105AF, U10588 ] }; // 𐖯, 𐖈

    // ASDFGHJKL
    key <AC01>	{ [ U10597, U10570 ] }; // 𐖗, 𐕰
    key <AC02>	{ [ U105B3, U1058C, U105B4, U1058D ] }; // 𐖳, 𐖌, 𐖴, 𐖍
    key <AC03>	{ [ U1059C, U10575, U1059D, U10576 ] }; // 𐖜, 𐕵, 𐖝, 𐕶
    key <AC04>	{ [ U105A0, U10579 ] }; // 𐖠, 𐕹
    key <AC05>	{ [ U105A1, U1057A, U105A2, U1057B ] }; // 𐖡, 𐕺, 𐖢, 𐕻
    key <AC06>	{ [ U105A3, U1057C ] }; // 𐖣, 𐕼
    key <AC07>	{ [ U105A7, U10580 ] }; // 𐖧, 𐖀
    key <AC08>	{ [ U105A8, U10581 ] }; // 𐖨, 𐖁
    key <AC09>	{ [ U105A9, U10582, U105AA, U10583 ] }; // 𐖩, 𐖂, 𐖪, 𐖃

    // ZXCVBNM
    key <AB01>	{ [ U105BC, U10595, U105BD, U10596 ] }; // 𐖼, 𐖕, 𐖽, 𐖖
    key <AB02>	{ [ U105B9, U10592, U105BA, U10593 ] }; // 𐖹, 𐖒, 𐖺, 𐖓
    key <AB03>	{ [ U1059A, U10573, U1059B, U10574 ] }; // 𐖚, 𐕳, 𐖛, 𐕴
    key <AB04>	{ [ U105B8, U10591 ] }; // 𐖸, 𐖑
    key <AB05>	{ [ U10598, U10571 ] }; // 𐖘, 𐕱
    key <AB06>	{ [ U105AC, U10585, U105AD, U10586 ] }; // 𐖬, 𐖅, 𐖭, 𐖆
    key <AB07>	{ [ U105AB, U10584 ] }; // 𐖫, 𐖄

    include "level3(ralt_switch)"
};

Navigate to

/usr/share/X11/xkb/symbols 

and see if there already exists a file called al in that directory.

If an al file exists, open it up to append the source code above by executing the following command:

sudo gedit /usr/share/X11/xkb/symbols/al 

If an al file does not exist, merely copy the al file you created to the directory above using the command:

sudo cp <location of your al file> /usr/share/X11/xkb/symbols 

Once you have added or appended the source layout above, save and exit gedit. From the terminal, open up the evdev.xml rules to append the Veqilharxhi variant under the Albanian layout. Execute the following command:

sudo gedit /usr/share/X11/xkb/rules/evdev.xml

In the file, find the layout section on Albanian, and add the highlighted variant below. In my Pop_OS distro of Ubuntu, I have an Albanian layout, an Albanian (Plisi) variant, and I added my Albanian (Veqilharxhi) variant as well. Feel free to copy the layout structure below and paste (with caution!) into evdev.xml:

    <layout>
      <configItem>
        <name>al</name>
        
        <shortDescription>sq</shortDescription>
        <description>Albanian</description>
        <languageList>
          <iso639Id>alb</iso639Id>
        </languageList>
      </configItem>
      <variantList>
        <variant>
          <configItem>
            <name>plisi</name>
            <description>Albanian (Plisi)</description>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>veqilharxhi</name>
            <description>Albanian (Veqilharxhi)</description>
          </configItem>
        </variant>
      </variantList>
    </layout>

Log out of your profile and log back in for the new layout to take effect. Alternatively, restart your machine. Then, add the new input source as you would for any other keyboard layout under Settings > Region & Language.

Ultimately, you would require the Veqilharxhi (a.k.a. Vithkuqi) font, which I have developed and released under a SIL licence. See this post to download the true-type font (which you can immediately install on your GNU/Linux distro).


Së fundi, përfundova së zhvilluari një model tastiere për alfabetin e Veqilharxhit për sistemet operative GNU/Linux bazuar mbi shabllonin e tastierave latine, kryesisht asaj amerikane QWERTY.

Për ta aktivizuar këtë tastierë në kompjuterin tuaj, ruani përmbajtjen e mëposhtme në një skedar të quajtur al:

// Model tastiere xkb për gërmat e Veqilharxhit (https://arberisht.wordpress.com/2019/09/13/an-xkb-layout-for-the-veqilharxhi-alphabet/)
// 2019-09-12

default  partial alphanumeric_keys
xkb_symbols "veqilharxhi" {

    include "us" // bazuar në shabllonin e tastierës amerikane

    name[Group1]="Albanian (Veqilharxhi)"; // emri që shfaqet në sistemin operativ

    // QWERTYUIOP
    key <AD01>	{ [ U105B0, U10589 ] }; // 𐖰, 𐖉
    key <AD02>	{ [ U1059F, U10578, w, W ] }; // 𐖟, 𐕸, w, W
    key <AD03>	{ [ U1059E, U10577 ] }; // 𐖞, 𐕷
    key <AD04>	{ [ U105B1, U1058A, U105B2, U1058B ] }; // 𐖱, 𐖊, 𐖲, 𐖋
    key <AD05>	{ [ U105B5, U1058E, U105B6, U1058F ] }; // 𐖵, 𐖎, 𐖶, 𐖏
    key <AD06>	{ [ U105BB, U10594 ] }; // 𐖻, 𐖔
    key <AD07>	{ [ U105B7, U10590 ] }; // 𐖷, 𐖐
    key <AD08>	{ [ U105A5, U1057E ] }; // 𐖥, 𐕾
    key <AD09>	{ [ U105AE, U10587 ] }; // 𐖮, 𐖇
    key <AD10>	{ [ U105AF, U10588 ] }; // 𐖯, 𐖈

    // ASDFGHJKL
    key <AC01>	{ [ U10597, U10570 ] }; // 𐖗, 𐕰
    key <AC02>	{ [ U105B3, U1058C, U105B4, U1058D ] }; // 𐖳, 𐖌, 𐖴, 𐖍
    key <AC03>	{ [ U1059C, U10575, U1059D, U10576 ] }; // 𐖜, 𐕵, 𐖝, 𐕶
    key <AC04>	{ [ U105A0, U10579 ] }; // 𐖠, 𐕹
    key <AC05>	{ [ U105A1, U1057A, U105A2, U1057B ] }; // 𐖡, 𐕺, 𐖢, 𐕻
    key <AC06>	{ [ U105A3, U1057C ] }; // 𐖣, 𐕼
    key <AC07>	{ [ U105A7, U10580 ] }; // 𐖧, 𐖀
    key <AC08>	{ [ U105A8, U10581 ] }; // 𐖨, 𐖁
    key <AC09>	{ [ U105A9, U10582, U105AA, U10583 ] }; // 𐖩, 𐖂, 𐖪, 𐖃

    // ZXCVBNM
    key <AB01>	{ [ U105BC, U10595, U105BD, U10596 ] }; // 𐖼, 𐖕, 𐖽, 𐖖
    key <AB02>	{ [ U105B9, U10592, U105BA, U10593 ] }; // 𐖹, 𐖒, 𐖺, 𐖓
    key <AB03>	{ [ U1059A, U10573, U1059B, U10574 ] }; // 𐖚, 𐕳, 𐖛, 𐕴
    key <AB04>	{ [ U105B8, U10591 ] }; // 𐖸, 𐖑
    key <AB05>	{ [ U10598, U10571 ] }; // 𐖘, 𐕱
    key <AB06>	{ [ U105AC, U10585, U105AD, U10586 ] }; // 𐖬, 𐖅, 𐖭, 𐖆
    key <AB07>	{ [ U105AB, U10584 ] }; // 𐖫, 𐖄

    include "level3(ralt_switch)" 
};

Futuni në terminal dhe ekzekutoni komandën e mëposhtme:

ls -al /usr/share/X11/xkb/symbols/al   

Nëse skedari al ekziston, atëhere hapeni nëpërmjet komandës

sudo gedit /usr/share/X11/xkb/symbols/al 

dhe shtoni kodin e mësipërm në fund të skedarit al. Nëse ky skedar nuk ekziston, atëherë kopjoni skedarin al nga direktoria ku e krijuat fillimisht tek direktoria symbols nëpërmjet komandës:

sudo cp <vendndodhja e skedarit tuaj al> /usr/share/X11/xkb/symbols 

Paskësaj, azhurnoni skedarin evdev.xml duke ekzekutuar komandën

sudo gedit /usr/share/X11/xkb/rules/evdev.xml

dhe duke shtuar kodin e mëposhtëm pas rreshtit ku gjindet teksti <layoutlist>:

    <layout>
      <configItem>
        <name>al</name>
        
        <shortDescription>sq</shortDescription>
        <description>Albanian</description>
        <languageList>
          <iso639Id>alb</iso639Id>
        </languageList>
      </configItem>
      <variantList>
        <variant>
          <configItem>
            <name>plisi</name>
            <description>Albanian (Plisi)</description>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>veqilharxhi</name>
            <description>Albanian (Veqilharxhi)</description>
          </configItem>
        </variant>
      </variantList>
    </layout>

Për të aktivizuar tastierën e sapo krijuar, nevojitet rinisja e kompjuterit. Në mënyrë që të shfaqen gërmat e alfabetit të Veqilharxhit, nevojitet të instaloni tipin elektronik që kam zhvilluar dhe publikuar në bazë të liçencës SIL e që mund ta shkarkoni falas këtu.

2 thoughts on “An XKB layout for the Veqilharxhi alphabet”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s