Как поменять несколько букв в Русской раскладке?

Я установил Русскую фонетическую раскладку но несколько букв не стыкуются с привычной раскладкой с Винды. Подскажите пожалуйста как поменять эти буквы.

Например:
w - ш (в)
x - х (ь)

Спасибо за помощь.

Так вы хотите фонетическую раскладку или виндовую? Или есть виндовая фонетическая и именно её вы хотите?

Фонетическую – не Виндовую. Она шла с программой Parawin и я к ней привык как к Виндовой.
Здесь она называется AAТSEEL Student:
Russian keyboard on-line - Virtual, On-screen Russian Keyboard

Спасибо.

Раскладка устанавливается в KDE4?

Добавлено:
Нужно помочь товарищу. Он изначально напряг английский форум. Надо бы лицом в грязь не ударить.

Да, вот картинка которую я выложил на Англ. форум:

Спасибо. Очень раздражает, что все время буквы путаю т.к. надо печатать и на Винде и в Линуксе.

Описание русских раскладок хранится в /usr/share/X11/xkb/symbols/ru, формат файла довольно внятный, попробуйте нужные буквы назначить вручную. Для правки файла нужны права root, а нужно ли для подхвата изменений перезапускать иксы, я не знаю :slight_smile:

Именно то, что я искал. Спасибо!

Вот и замечательно!

К сожалению проблема решилась не до конца. Я поменял несколько клавиш которые не стыковались в файле, но после перезагрузки ничего не изменилось. Похоже, что надо что-то еще сделать чтобы изменения применить.


partial alphanumeric_keys
xkb_symbols "phonetic" {

    name[Group1]= "Russia - Phonetic";

    key <AE01> {                       1,          exclam      ]       };
    key <AE02> {                       2,              at      ]       };
    key <AE03> {                       3,     Cyrillic_io      ]       };
    key <AE04> {                       4,     Cyrillic_IO      ]       };
    key <AE05> {                       5, Cyrillic_hardsign    ]       };
    key <AE06> {                       6, Cyrillic_HARDSIGN    ]       };
    key <AE07> {                       7,       ampersand      ]       };
    key <AE08> {                       8,        asterisk      ]       };
    key <AE09> {                       9,       parenleft      ]       };
    key <AE10> {                       0,      parenright      ]       };
    key <AE11> {                   minus,      underscore      ]       };

    key <AB09> {                  period,         greater      ]       };
    key <AB10> {                   slash,        question      ]       };
    key <AB08> {                   comma,            less      ]       };
//  key <AC10> {               semicolon,           colon      ]       };
    key <AC10> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
//  key <AC11> {              apostrophe,        quotedbl      ]       };
    key <AC11> {            Cyrillic_zhe,       Cyrillic_ZHE   ]       };
    key <LSGT> {                     bar,       brokenbar      ]       };

//  key <TLDE> {             Cyrillic_yu,     Cyrillic_YU      ]       };
    key <TLDE> {             Cyrillic_yo,     Cyrillic_YO      ]       };
    key <LatQ> {             Cyrillic_ya,     Cyrillic_YA      ]       };
    key <LatZ> {             Cyrillic_ze,     Cyrillic_ZE      ]       };
    key <LatS> {             Cyrillic_es,     Cyrillic_ES      ]       };
    key <LatA> {              Cyrillic_a,      Cyrillic_A      ]       };
//  key <LatW> {             Cyrillic_ve,     Cyrillic_VE      ]       };
//  key <LatW> {             Cyrillic_sha,     Cyrillic_SHA    ]       };
    key <LatC> {            Cyrillic_tse,    Cyrillic_TSE      ]       };
//  key <LatX> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
    key <LatX> {            Cyrillic_ha,      Cyrillic_HA      ]       };
    key <LatD> {             Cyrillic_de,     Cyrillic_DE      ]       };
    key <LatE> {             Cyrillic_ie,     Cyrillic_IE      ]       };
//  key <LatV> {            Cyrillic_zhe,    Cyrillic_ZHE      ]       };
    key <LatV> {             Cyrillic_ve,    Cyrillic_VE       ]       };
    key <LatF> {             Cyrillic_ef,     Cyrillic_EF      ]       };
    key <LatT> {             Cyrillic_te,     Cyrillic_TE      ]       };
    key <LatR> {             Cyrillic_er,     Cyrillic_ER      ]       };
    key <LatN> {             Cyrillic_en,     Cyrillic_EN      ]       };
    key <LatB> {             Cyrillic_be,     Cyrillic_BE      ]       };
    key <LatH> {             Cyrillic_ha,     Cyrillic_HA      ]       };
    key <LatG> {            Cyrillic_ghe,    Cyrillic_GHE      ]       };
    key <LatY> {           Cyrillic_yeru,   Cyrillic_YERU      ]       };
    key <LatM> {             Cyrillic_em,     Cyrillic_EM      ]       };
    key <LatJ> {         Cyrillic_shorti, Cyrillic_SHORTI      ]       };
    key <LatU> {              Cyrillic_u,      Cyrillic_U      ]       };
    key <LatK> {             Cyrillic_ka,     Cyrillic_KA      ]       };
    key <LatI> {              Cyrillic_i,      Cyrillic_I      ]       };
    key <LatO> {              Cyrillic_o,      Cyrillic_O      ]       };
    key <LatL> {             Cyrillic_el,     Cyrillic_EL      ]       };
    key <LatP> {             Cyrillic_pe,     Cyrillic_PE      ]       };

//  key <AD11> {            Cyrillic_sha,    Cyrillic_SHA      ]       };
    key <AD11> {            Cyrillic_yu,    Cyrillic_YU        ]       };
//  key <AE12> {            Cyrillic_che,    Cyrillic_CHE      ]       };
    key <AE12> {        [Cyrillic_hardsign,   Cyrillic_HARDSIGN ]       };
    key <AD12> {          Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
    key <BKSL> {              Cyrillic_e,      Cyrillic_E      ]       };
};

Непонятно. Однажды применив раскладку, изменить её уже не возможно. Перезагрузка, переключение с раскладки на раскладку, добавление нового пользователя - всё бесполезно. Пробовал временно переместить файл /usr/share/X11/xkb/symbols/ru, тоже безрезультатно. Откуда что берётся?!
Отредактировал файл /usr/share/X11/xkb/symbols/ru, но оказалось, что русская буква “Х” назначена двум клавишам, а буква “Ч” вовсе вылетела. После исправления ошибок ничего не изменилось. Вариант такой, по моему более похожий на “AATSEEL Student”, представленный на сайте http://winrus.com/screen_e.htm:


partial alphanumeric_keys
xkb_symbols "phonetic" {

    name[Group1]= "Russia - Phonetic";

    key <AE01> {                       1,          exclam      ]       };
    key <AE02> {                       2,              at      ]       };
    key <AE03> {                       3,      numbersign      ]       };
    key <AE04> {                       4,        quotedbl      ]       };
    key <AE05> {                       5,           colon      ]       };
    key <AE06> {                       6,     asciicircum      ]       };
    key <AE07> {                       7,       ampersand      ]       };
    key <AE08> {                       8,        asterisk      ]       };
    key <AE09> {                       9,       parenleft      ]       };
    key <AE10> {                       0,      parenright      ]       };
    key <AE11> {                   minus,      underscore      ]       };

    key <AB09> {                  period,         greater      ]       };
    key <AB10> {                   slash,        question      ]       };
    key <AB08> {                   comma,            less      ]       };
    key <AC10> {        [Cyrillic_softsign,Cyrillic_SOFTSIGN    ]       };
    key <AC11> {            Cyrillic_zhe,       Cyrillic_ZHE   ]       };
    key <LSGT> {                     bar,       brokenbar      ]       };

    key <TLDE> {             Cyrillic_io,     Cyrillic_IO      ]       };
    key <LatQ> {             Cyrillic_ya,     Cyrillic_YA      ]       };
    key <LatZ> {             Cyrillic_ze,     Cyrillic_ZE      ]       };
    key <LatS> {             Cyrillic_es,     Cyrillic_ES      ]       };
    key <LatA> {              Cyrillic_a,      Cyrillic_A      ]       };
    key <LatW> {             Cyrillic_sha,     Cyrillic_SHA    ]       };
    key <LatC> {            Cyrillic_tse,    Cyrillic_TSE      ]       };
    key <LatX> {            Cyrillic_ha,      Cyrillic_HA      ]       };
    key <LatD> {             Cyrillic_de,     Cyrillic_DE      ]       };
    key <LatE> {             Cyrillic_ie,     Cyrillic_IE      ]       };
    key <LatV> {             Cyrillic_ve,    Cyrillic_VE       ]       };
    key <LatF> {             Cyrillic_ef,     Cyrillic_EF      ]       };
    key <LatT> {             Cyrillic_te,     Cyrillic_TE      ]       };
    key <LatR> {             Cyrillic_er,     Cyrillic_ER      ]       };
    key <LatN> {             Cyrillic_en,     Cyrillic_EN      ]       };
    key <LatB> {             Cyrillic_be,     Cyrillic_BE      ]       };
    key <LatH> {            Cyrillic_che,    Cyrillic_CHE      ]       };
    key <LatG> {            Cyrillic_ghe,    Cyrillic_GHE      ]       };
    key <LatY> {           Cyrillic_yeru,   Cyrillic_YERU      ]       };
    key <LatM> {             Cyrillic_em,     Cyrillic_EM      ]       };
    key <LatJ> {         Cyrillic_shorti, Cyrillic_SHORTI      ]       };
    key <LatU> {              Cyrillic_u,      Cyrillic_U      ]       };
    key <LatK> {             Cyrillic_ka,     Cyrillic_KA      ]       };
    key <LatI> {              Cyrillic_i,      Cyrillic_I      ]       };
    key <LatO> {              Cyrillic_o,      Cyrillic_O      ]       };
    key <LatL> {             Cyrillic_el,     Cyrillic_EL      ]       };
    key <LatP> {             Cyrillic_pe,     Cyrillic_PE      ]       };

    key <AD11> {            Cyrillic_yu,    Cyrillic_YU        ]       };
    key <AE12> {        [Cyrillic_hardsign,   Cyrillic_HARDSIGN ]       };
    key <AD12> {          Cyrillic_shcha,  Cyrillic_SHCHA      ]       };
    key <BKSL> {              Cyrillic_e,      Cyrillic_E      ]       };
};

Применил изменённую раскладку на тестовой системе, установленной на внешнем USB диске. Все буквы расставлены согласно схеме. До этого ни разу не выбирал Фонетическую раскладку.

Оставил “Фонетическую раскладку” как была до редактирования. Дописал в конец файла /usr/share/X11/xkb/symbols/ru всё тоже самое, что постом выше, изменил только


partial alphanumeric_keys
xkb_symbols "phonetic" {

    name[Group1]= "Russia - Phonetic";

на


partial alphanumeric_keys
xkb_symbols "aatseel_student" {

    name[Group1]= "Russia - AATSEEL Student";

Затем выполнил команду


setxkbmap -model pc104 -layout us,ru -variant ,aatseel_student

просто потому, что пункт AATSEEL Student в вариантах раскладки так и не нашёл. Отсюда вопрос: “Как добавить собственную раскладку в варианты раскладки “Раскладка клавиатуры - Параметры системы”?”

Как добавить собственную раскладку? В файлах /usr/share/X11/xkb/rules/base.xml и /usr/share/X11/xkb/rules/evdev.xml интересуют строки:


    <layout>
      <configItem>
        <name>ru</name>
        <shortDescription>Rus</shortDescription>
        <description>Russia</description>
        <languageList><iso639Id>rus</iso639Id></languageList>
      </configItem>
      <variantList>
        <variant>
          <configItem>
            <name>phonetic</name>
            <description>Phonetic</description>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>typewriter</name>
            <description>Typewriter</description>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>legacy</name>
            <description>Legacy</description>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>tt</name>
            <description>Tatar</description>
            <languageList><iso639Id>tat</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>os_legacy</name>
            <description>Ossetian, legacy</description>
            <languageList><iso639Id>oss</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>os_winkeys</name>
            <description>Ossetian, Winkeys</description>
            <languageList><iso639Id>oss</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>cv</name>
            <description>Chuvash</description>
            <languageList><iso639Id>chv</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>cv_latin</name>
            <description>Chuvash Latin</description>
            <languageList><iso639Id>chv</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>udm</name>
            <description>Udmurt</description>
            <languageList><iso639Id>udm</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>kom</name>
            <description>Komi</description>
            <languageList><iso639Id>kom</iso639Id></languageList>
          </configItem>
        </variant>
	<variant>
          <configItem>
            <name>sah</name>
            <description>Yakut</description>
            <languageList><iso639Id>sah</iso639Id></languageList>
          </configItem>
        </variant>
        <variant>
          <configItem>
            <name>xal</name>
            <description>Kalmyk</description>
            <languageList><iso639Id>xal</iso639Id></languageList>
          </configItem>
        </variant>

    <variant>
      <configItem>
        <name>aatseel_student</name>
        <description>ATTSEEL Student</description>
      </configItem>
    </variant>

      </variantList>
    </layout>

http://i10.fastpic.ru/big/2010/1006/0e/b589f5fad20a29a7db92ffbc2dc7250e.jpeg](http://fastpic.ru/)