Коми раскладка клавиатуры для Linux

Материал из Wiki FU-Lab
Перейти к: навигация, поиск

Во всех дистрибутивах Linux есть коми раскладка клавиатуры.

Ubuntu.png

В большинстве случаев коми буквы набираются с помощью AltGr (правый ALT) + "о, и". Если вам нужно изменить раскладку, то в терминале с root откройте файл: /usr/share/X11/xkb/symbols/ru, например, с помощью редактора gedit:

gedit /usr/share/X11/xkb/symbols/ru

Далее найдите описание коми клавиатуры. В Ubuntu, Mint и многих других дистрибутивах (кроме НауЛинукс) эти строки выглядят так:

// Komi language layout
// based on
// russian standard keyboard
// Vlad Shakhov <lumpen.intellectual@gmail.com>
// Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>

partial alphanumeric_keys 
xkb_symbols "kom" {

   include "ru(winkeys)"

   name[Group1]= "Komi";

   key.type[group1]="FOUR_LEVEL_ALPHABETIC";

// cyrilllic o with diaeresis 
   key <AC07> { [ Cyrillic_o, Cyrillic_O, U04E7, U04E6 ] };
    
// hard I as additional key for soft Cyrillic_I 
   key <AB05> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] };

   include "level3(ralt_switch)"
};

Допустим, решили, что на "-" будет набираться "ӧ", а на "=" - "і". Вам необходимо добавить 2 строчки (выделено жирным) в этот файл, сохранить его и перегрузить сеанс пользователя:

// Komi language layout
// based on
// russian standard keyboard
// Vlad Shakhov <lumpen.intellectual@gmail.com>
// Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>

partial alphanumeric_keys 
xkb_symbols "kom" {

   include "ru(winkeys)"

   name[Group1]= "Komi";

   key.type[group1]="FOUR_LEVEL_ALPHABETIC";

   key <AE12> { [ U04E7, U04E6,   equal, plus] }; 
   key <AE11> { [ U0456, U0406,   minus, underscore ] };

// cyrilllic o with diaeresis 
   key <AC07> { [ Cyrillic_o, Cyrillic_O, U04E7, U04E6 ] };
    
// hard I as additional key for soft Cyrillic_I 
   key <AB05> { [ Cyrillic_i, Cyrillic_I, Ukrainian_i, Ukrainian_I ] };

   include "level3(ralt_switch)"
};

Можно сделать "универсальную" раскладку, при этом в файле ru коми часть может выглядеть вот так:

// Komi language layout
// based on
// russian standard keyboard
// Vlad Shakhov <lumpen.intellectual@gmail.com>
// Last Changes 2007/10/23 by Vlad Shakhov <lumpen.intellectual@gmail.com>

partial alphanumeric_keys 
xkb_symbols "kom" {

   include "ru(winkeys)"

   name[Group1]= "Komi";

   key.type[group1]="FOUR_LEVEL_ALPHABETIC";

   key <TLDE> { [ Cyrillic_io,       Cyrillic_IO, 	 U04ED, U04EC ] };
   key <AE01> { [ 1,	              exclam,	         U0495,	U0494 ] };
   key <AE02> { [ 2,	              quotedbl,	         U04C2,	U04C1 ] };
   key <AE03> { [ 3,	              numerosign,	 U045E,	U040E ] };
   key <AE04> { [ 4,	              semicolon,	 U04D1,	U04D0 ] };
   key <AE05> { [ 5,	              percent,	         U04D7,	U04D6 ] };
   key <AE06> { [ 6,	              colon,		 U04CC,	U04CB ] };
   key <AE07> { [ 7,	              question,	         U04FD,	U04FC ] };
   key <AE08> { [ 8,	              asterisk,	         U04C6, U04C5 ] };
   key <AE09> { [ 9,	              parenleft,	 U04B3,	U04B2 ] };
   key <AE10> { [ 0,	              parenright,	 U0499,	U0498 ] };
   key <AE11> { [ minus,	      underscore,	 U04CA,	U04C9 ] };
   key <AE12> { [ equal,	      plus,		 U049B,	U049A ] };
   key <AD01> { [ Cyrillic_shorti,   Cyrillic_SHORTI,   U04E5, U04E4 ] };
   key <AD02> { [ U0446,             U0426,             U04F3, U04F2 ] }; //Cyr_tse
   key <AD03> { [ Cyrillic_u,        Cyrillic_U,        U04F1, U04F0 ] };
   key <AD04> { [ Cyrillic_ka,       Cyrillic_KA,       U04D9, U04D8 ] };
   key <AD05> { [ Cyrillic_ie,       Cyrillic_IE,       U04A1, U04A0 ] };
   key <AD06> { [ Cyrillic_en,       Cyrillic_EN,       U050B, U050A ] };
   key <AD07> { [ Cyrillic_ghe,      Cyrillic_GHE,      U04A5, U04A4 ] };
   key <AD08> { [ Cyrillic_sha,      Cyrillic_SHA,      U0458, U0408 ] };
   key <AD09> { [ U0449,             U0429,             U04AB, U04AA ] }; //Cyr_shcha
   key <AD10> { [ Cyrillic_ze,       Cyrillic_ZE,       U0505, U0504 ] };
   key <AD11> { [ Cyrillic_ha,       Cyrillic_HA,       U0507, U0506 ] };
   key <AD12> { [ Cyrillic_hardsign, Cyrillic_HARDSIGN, U04DF, U04DE ] };
   key <BKSL> { [ backslash,          slash,            U04B7, U04B6 ] };
   key <AC01> { [ Cyrillic_ef,       Cyrillic_EF,       U04BB, U04BA ] };
   key <AC02> { [ Cyrillic_yeru,     Cyrillic_YERU,     U04F9, U04F8 ] };
   key <AC03> { [ Cyrillic_ve,       Cyrillic_VE,       U04AF, U04AE ] };
   key <AC04> { [ Cyrillic_a,        Cyrillic_A,        U04D3, U04D2 ] };
   key <AC05> { [ Cyrillic_pe,       Cyrillic_PE,       U04C4, U04C3 ] };
   key <AC06> { [ Cyrillic_er,       Cyrillic_ER,       U0493, U0492 ] }; 
   key	<AC07> { [ Cyrillic_o,	      Cyrillic_O,	 U04E7, U04E6 ] };
   key <AC08> { [ Cyrillic_el,       Cyrillic_EL,       U0509, U0508 ] };
   key <AC09> { [ Cyrillic_de,       Cyrillic_DE,       U0501, U0500 ] };
   key <AC10> { [ Cyrillic_zhe,      Cyrillic_ZHE,      U0497, U0496 ] };
   key <AC11> { [ Cyrillic_e,        Cyrillic_E,        U04E9, U04E8 ] };
   key <AB01> { [ Cyrillic_ya,       Cyrillic_YA,       U04D5, U04D4 ] };
   key <AB02> { [ Cyrillic_che,      Cyrillic_CHE,      U04F5, U04F4 ] };
   key <AB03> { [ Cyrillic_es,       Cyrillic_ES,       U050D, U050C ] };
   key <AB04> { [ Cyrillic_em,       Cyrillic_EM,       U04C8, U04C7 ] };
   key <AB05> { [ Cyrillic_i,	      Cyrillic_I,        U0456, U0406 ] };
   key	<AB06> { [ Cyrillic_te,       Cyrillic_TE,       U050F, U050E ] };
   key	<AB07> { [ Cyrillic_softsign, Cyrillic_SOFTSIGN, U0463, U0462 ] };
   key	<AB08> { [ Cyrillic_be,       Cyrillic_BE,       U0503, U0502 ]	};
   key	<AB09> { [ Cyrillic_yu,       Cyrillic_YU,       U04DD, U04DC ]	};
   key <AB10> { [ period,            comma,             U02BC, U003F ] };

   include "level3(ralt_switch)"
};