Хотелось бы, чтобы я мог составить раскладку клавиатуры самостоятельно (указав символы для каждого ключа, который нужно ввести, если он нажат один, с Shift или с AltGr) и установите его среди всех других макетов в моем XUbuntu 11.04 система. Как это сделать?
Ubuntu 10.10
Я использую локальную клавиатуру с расположением в США и Таиланде. Макет us
подходит для меня, но мне нравится иметь дополнительные немецкие символы, такие как äöü ÄÖÜ
. Это можно легко реализовать с помощью xmodmap
, но если вы перейдете ко второму макету, вы увидите некоторые странные результаты.
Я нашел хорошее решение: создайте и используйте свою пользовательскую клавиатуру!
/usr/share/X11/xkb/symbols/
выберите свое ближайшее предпочтение, в моем случае us
и сохраните его с новым именем : us-de
us-de
: default
xkb_symbols "basic" {
name[Group1]= "ASCII with german";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at, twosuperior ] };
key <AE03> { [ 3, numbersign, threesuperior ] };
key <AE04> { [ 4, dollar, onequarter ] };
key <AE05> { [ 5, percent, onehalf ] };
key <AE06> { [ 6, asciicircum, threequarters ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk, oneeighth ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright, degree ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, EuroSign, cent ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M, mu ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ VoidSymbol ] };
// End alphanumeric section
include "level3(ralt_switch)"
};
/usr/share/X11/xkb/rules/evdev.xml
Измените evdev.xml
, чтобы ваша пользовательская клавиатура была распознана: найдите </layoutList>
и добавьте следующее перед </layoutList>
: <layout>
<configItem>
<name>us-de</name> <!-- a) -->
<shortDescription>US-DE</shortDescription> <!-- b) -->
<description>ASCII with german</description> <!-- c) -->
<languageList><iso639Id>eng</iso639Id></languageList> <!-- d) -->
</configItem>
</layout>
a) us-de
- это имя новой раскладки клавиатуры в X11/xkb/symbols
b) US-DE
, это появится, например. в апплете индикатора c) ASCII with german
должен совпадать с текстом в начале вашего файла: name[Group1]= "ASCII with german"
; Этот текст также будет отображаться в виде комментария в разделе «Макеты». D) если вы выберете «eng», ваш макет будет отображаться в меню «Система»> «Настройки»> «Клавиатура->« Макеты »->« Добавить »-« По языкам »-« Английский »в разделе« Варианты » /var/cache/gdm/$USER/dmrc
и поместите все существующее в качестве нового по умолчанию: Layout=us-de
затем перезагрузитесь. На основании сообщения на UbuntuForums.com Энди Мейера от 28 декабря 2010 года .
Ubuntu 10.10
Я использую локальную клавиатуру с расположением в США и Таиланде. Макет us
подходит для меня, но мне нравится иметь дополнительные немецкие символы, такие как äöü ÄÖÜ
. Это можно легко реализовать с помощью xmodmap
, но если вы перейдете ко второму макету, вы увидите некоторые странные результаты.
Я нашел хорошее решение: создайте и используйте свою пользовательскую клавиатуру!
/usr/share/X11/xkb/symbols/
выберите свое ближайшее предпочтение, в моем случае us
и сохраните его с новым именем : us-de
us-de
: default
xkb_symbols "basic" {
name[Group1]= "ASCII with german";
// Alphanumeric section
key <TLDE> { [ grave, asciitilde ] };
key <AE01> { [ 1, exclam ] };
key <AE02> { [ 2, at, twosuperior ] };
key <AE03> { [ 3, numbersign, threesuperior ] };
key <AE04> { [ 4, dollar, onequarter ] };
key <AE05> { [ 5, percent, onehalf ] };
key <AE06> { [ 6, asciicircum, threequarters ] };
key <AE07> { [ 7, ampersand ] };
key <AE08> { [ 8, asterisk, oneeighth ] };
key <AE09> { [ 9, parenleft ] };
key <AE10> { [ 0, parenright, degree ] };
key <AE11> { [ minus, underscore ] };
key <AE12> { [ equal, plus ] };
key <AD01> { [ q, Q ] };
key <AD02> { [ w, W ] };
key <AD03> { [ e, E, EuroSign, cent ] };
key <AD04> { [ r, R ] };
key <AD05> { [ t, T ] };
key <AD06> { [ y, Y ] };
key <AD07> { [ u, U, udiaeresis, Udiaeresis ] };
key <AD08> { [ i, I ] };
key <AD09> { [ o, O, odiaeresis, Odiaeresis ] };
key <AD10> { [ p, P ] };
key <AD11> { [ bracketleft, braceleft ] };
key <AD12> { [ bracketright, braceright ] };
key <AC01> { [ a, A, adiaeresis, Adiaeresis ] };
key <AC02> { [ s, S ] };
key <AC03> { [ d, D ] };
key <AC04> { [ f, F ] };
key <AC05> { [ g, G ] };
key <AC06> { [ h, H ] };
key <AC07> { [ j, J ] };
key <AC08> { [ k, K ] };
key <AC09> { [ l, L ] };
key <AC10> { [ semicolon, colon ] };
key <AC11> { [ apostrophe, quotedbl ] };
key <AB01> { [ z, Z ] };
key <AB02> { [ x, X ] };
key <AB03> { [ c, C ] };
key <AB04> { [ v, V ] };
key <AB05> { [ b, B ] };
key <AB06> { [ n, N ] };
key <AB07> { [ m, M, mu ] };
key <AB08> { [ comma, less ] };
key <AB09> { [ period, greater ] };
key <AB10> { [ slash, question ] };
key <BKSL> { [ backslash, bar ] };
key <CAPS> { [ VoidSymbol ] };
// End alphanumeric section
include "level3(ralt_switch)"
};
/usr/share/X11/xkb/rules/evdev.xml
Измените evdev.xml
, чтобы ваша пользовательская клавиатура была распознана: найдите </layoutList>
и добавьте следующее перед </layoutList>
: <layout>
<configItem>
<name>us-de</name> <!-- a) -->
<shortDescription>US-DE</shortDescription> <!-- b) -->
<description>ASCII with german</description> <!-- c) -->
<languageList><iso639Id>eng</iso639Id></languageList> <!-- d) -->
</configItem>
</layout>
a) us-de
- это имя новой раскладки клавиатуры в X11/xkb/symbols
b) US-DE
, это появится, например. в апплете индикатора c) ASCII with german
должен совпадать с текстом в начале вашего файла: name[Group1]= "ASCII with german"
; Этот текст также будет отображаться в виде комментария в разделе «Макеты». D) если вы выберете «eng», ваш макет будет отображаться в меню «Система»> «Настройки»> «Клавиатура->« Макеты »->« Добавить »-« По языкам »-« Английский »в разделе« Варианты » /var/cache/gdm/$USER/dmrc
и поместите все существующее в качестве нового по умолчанию: Layout=us-de
затем перезагрузитесь. На основании сообщения на UbuntuForums.com Энди Мейера от 28 декабря 2010 года .