Настройка раскладок клавиатуры, немного отличных от русской
Башкирская раскладка
Раскладки клавиатуры в линуксе обычно хранятся в каталоге /usr/share/X11/xkb/symbols/, здесь содержатся текстовые файлы, название которых соответствует стране, использующей данный вид раскладки. Поскольку башкирский алфавит основан на русской кириллице, вносить изменения мы будем в файл "ru".
Открываем терминал, командой $ su root становимся суперпользователем, набираем команду # gedit /usr/share/X11/xkb/symbols/ru
Далее копируем и вставляем в конец файла "ru" строки:
// Bashkort language layout // 2010/03/10 Aky`ulov Azamat <atamaza@mail.ru> // RESPUBLIKA BASHKORTOSTAN partial alphanumeric_keys xkb_symbols "bsh" { include "ru(winkeys)" name[Group1]= "Russia - Bashkort"; key.type[group1]="FOUR_LEVEL_ALPHABETIC"; key <AD03> { [ Cyrillic_u, Cyrillic_U, 0x010004af, 0x010004ae ] }; key <AD04> { [ Cyrillic_ka, Cyrillic_KA, 0x010004a1, 0x010004a0 ] }; key <AD06> { [ Cyrillic_en, Cyrillic_EN, 0x010004a3, 0x010004a2 ] }; key <AD07> { [ Cyrillic_ghe, Cyrillic_GHE, 0x01000493, 0x01000492 ] }; key <AD10> { [ Cyrillic_ze, Cyrillic_ZE, 0x01000499, 0x01000498 ] }; key <AD11> { [ Cyrillic_ha, Cyrillic_HA, 0x010004bb, 0x010004ba ] }; key <AC04> { [ Cyrillic_a, Cyrillic_A, 0x010004d9, 0x010004d8 ] }; key <AC07> { [ Cyrillic_o, Cyrillic_O, 0x01000473, 0x01000472 ] }; key <AB03> { [ Cyrillic_es, Cyrillic_ES, 0x010004ab, 0x010004aa ] }; include "level3(ralt_switch)" };
Сохраняем и закрываем файл "ru".
Далее нам необходимо, чтобы линукс "увидел" нашу раскладку, для этого необходимо кое-что добавить в файл "base.xml", открыв командой # gedit /usr/share/X11/xkb/rules/base.xml. Как правило в Linux уже бывает добавлена татарская раскладка, найдем её - она нам пригодится далее. Копируем всё что связано с татарской раскладкой, вставляем ниже и переделываем скопированные строки под башкирскую раскладку, как показано ниже:
<variant> <configItem> <name>bsh</name> <description>Bashkort</description> <languageList><iso639Id>bsh</iso639Id></languageList> </configItem> </variant>
Далее редактируем файл "base.lst", открыв командой # gedit /usr/share/X11/xkb/rules/base.lst
находим строчку связанную с татарской раскладкой и после нее добавляем строчку:
bsh ru: Bashkort
Далее редактируем файл "symbols.dir", открыв командой # gedit /usr/share/X11/xkb/symbols.dir
Опять же находим строчку связанную с татарской раскладкой и после нее добавляем строчку:
--p----- a------- ru(bsh)
Чтобы включить нашу раскладку нужно будет отредактировать файл /etc/X11/xorg.conf, опцию XkbLayout секции InputDevice нужно изменить следующим образом:
Section "InputDevice" Identifier "Keyboard1" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru,ru(bsh)" Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll,compose:rwin" EndSection
За назначение клавиши переключения раскладок отвечает строчка Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll,compose:rwin" так что каждый может назначить клавишу,или сочетание клавиш, которые ему по душе. В данном случае это клавиша "левый windows". Чтобы запретить автоматическое определение устройств ввода, надо добавить следующие строчку Option "AutoAddDevices" "False" в xorg.conf:
Section "ServerFlags" #DontZap # disable <Ctrl><Alt><BS> (server abort) #DontZoom # disable <Ctrl><Alt><KP_+>/<KP_-> (resolution switching) AllowMouseOpenFail # allows the server to start up even if the mouse does not work Option "AutoAddDevices" "False" EndSection
Далее перезагружаемся и пользуемся. Таким образом, получилась тройная англо-русско-башкирская раскладка, переключаемая левой клавишей "windows".
Если неохота возиться с правкой файла /etc/X11/xorg.conf, то в LXDE можно воспользоваться программой, которая называется fsKbSetting. Запускаем прогу: в терминале вводим команду fskbsetting, далее настраиваем раскладку, выбираем американскую, русскую и башкирскую раскладки, выбираем клавиши переключения раскладок, жмем ОК:
Башкирская раскладка выглядит следующим образом:
Прописные набираются путём нажатия правой Alt + башкирский символ, а заглавные набираются путем одновременного нажатия правого Alt+ левого Shift и + башкирский символ.
Удмуртская раскладка
Раскладки клавиатуры в линуксе обычно хранятся в каталоге /usr/share/X11/xkb/symbols/, здесь содержатся текстовые файлы, название которых соответствует стране, использующей данный вид раскладки. Поскольку удмуртский алфавит основан на русской кириллице, вносить изменения мы будем в файл "ru".
Открываем терминал, командой $ su root становимся суперпользователем, набираем команду # gedit /usr/share/X11/xkb/symbols/ru
Далее копируем и вставляем в конец файла "ru" строки:
partial alphanumeric_keys xkb_symbols "udm" { include "ru(winkeys)" name[Group1]= "Russia - Udmurt"; key.type[group1]="FOUR_LEVEL"; key <AE01> { [ question, exclam, 1, 1 ] }; key <AE02> { [ parenleft, quotedbl, 2, 2 ] }; key <AE03> { [ parenright, numbersign, 3, 3 ] }; key <AE04> { [ colon, semicolon, 4, 4 ] }; key <AE05> { [ asterisk, percent, 5, 5 ] }; key <AE06> { [ 0x010004dd, 0x010004dc, 6, 6 ] }; key <AE07> { [ 0x010004e7, 0x010004e6, 7, 7 ] }; key <AE08> { [ 0x010004f5, 0x010004f4, 8, 8 ] }; key <AE09> { [ 0x010004e5, 0x010004e4, 9, 9 ] }; key <AE10> { [ 0x010004df, 0x010004de, 0, 0 ] }; include "level3(ralt_switch)" };
Сохраняем и закрываем файл "ru". Далее нам необходимо, чтобы линукс "увидел" нашу раскладку, для этого необходимо кое-что добавить в файл "base.xml", открыв командой # gedit /usr/share/X11/xkb/rules/base.xml. Как правило в Linux уже бывает добавлена татарская раскладка, найдем её - она нам пригодится далее. Копируем всё что связано с татарской раскладкой, вставляем ниже и переделываем скопированные строки под удмуртскую раскладку, как показано ниже:
<variant> <configItem> <name>udm</name> <description>Udmurt</description> <languageList><iso639Id>udm</iso639Id></languageList> </configItem> </variant>
Сохраняемся. Далее редактируем файл "base.lst", открыв командой # gedit /usr/share/X11/xkb/rules/base.lst
находим строчку связанную с татарской раскладкой и после нее добавляем строчку:
udm ru: Udmurt
Далее редактируем файл "symbols.dir", открыв командой # gedit /usr/share/X11/xkb/symbols.dir
Опять же находим строчку связанную с татарской раскладкой и после нее добавляем строчку:
--p----- a------- ru(udm)
Чтобы включить нашу раскладку нужно будет отредактировать файл /etc/X11/xorg.conf, опцию XkbLayout секции InputDevice нужно изменить следующим образом:
Section "InputDevice" Identifier "Keyboard1" Driver "kbd" Option "XkbModel" "pc105" Option "XkbLayout" "us,ru,ru(udm)" Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll,compose:rwin" EndSection
За назначение клавиши переключения раскладок отвечает строчка Option "XkbOptions" "grp:lwin_toggle,grp_led:scroll,compose:rwin" так что каждый может назначить клавишу,или сочетание клавиш, которые ему по душе. В данном случае это левая клавиша "windows". Чтобы запретить автоматическое определение устройств ввода, надо добавить следующие строчку Option "AutoAddDevices" "False" в xorg.conf:
Section "ServerFlags" #DontZap # disable <Ctrl><Alt><BS> (server abort) #DontZoom # disable <Ctrl><Alt><KP_+>/<KP_-> (resolution switching) AllowMouseOpenFail # allows the server to start up even if the mouse does not work Option "AutoAddDevices" "False" EndSection
Далее перезагружаемся и пользуемся.
Таким образом, получилась тройная англо-русско-удмуртская раскладка, переключаемая левой клавишей "windows".
Вот так выглядит удмуртская раскладка клавиатуры:
Вид удмуртской раскладки клавиатуры, при нажатой клавише Shift:
Вид удмуртской раскладки,при нажатой клавише AltGr:
Во многих дистрибутивах линукс, в данный момент, хотя удмуртская раскладка и прописана, но она все равно не отображается при выборе раскладок через "Настройка компьютера"->"Оборудование"->"Настройка раскладки клавиатуры", поэтому для включения раскладки все равно придется править файл /etc/X11/xorg.conf.
Если неохота возиться с правкой файла /etc/X11/xorg.conf, то в LXDE можно воспользоваться программой, которая называется fsKbSetting. Возможности программы:
- выбор модели клавиатуры;
- выбор одной или нескольких раскладок;
- выбор вариантов раскладок;
- выбор комбинации клавиш для смены раскладки;
- различные настройки для каждого пользователя;
- сохранение параметров после перезагрузки системы для выбранной сессии;;
- не требует привилегий суперпользователя;
- изменения вступают в силу без перезагрузки.
Запускаем прогу: в терминале вводим команду fskbsetting, далее настраиваем раскладку, выбираем американскую, русскую и удмуртскую раскладки, выбираем клавиши переключения раскладок, жмем ОК.
Кроме удмуртской раскладки существуют и другие раскладки: осетинская, чувашская, якутская, калмыкская, башкирская, раскладка коми. Эти раскладки можно настроить аналогичным способом.