Я сделал специальную испанскую раскладку клавиатуры, включающую немецкую à на AltGr-s и скандинавскую æ à (ae, AE), ø à (oe, OE) и Ã¥ à (aring, Aring). ), на AltGr-e, AltGr-E, AltGr-o, AltGr-O, AltGr-a и AltGr-A соответственно. Знак â (EuroSign) был перемещен из AltGr-e в AltGr-5.
Это отлично работало на Ubuntu Budgie 21.04.С тех пор я вернулся к Ubuntu Budgie 20.04 LTS (свежая установка) на том же компьютере, скопировал пользовательский макет и сделал setxkbmap {custom_layout}. Внезапно на AltGr-e у меня получилось ¬, а на AltGr-5 у меня получилось ½. Я не могу увидеть, что происходит не так с приведенной ниже настройкой. Вы можете помочь?
// Модифицировано для настоящей испанской клавиатуры Джоном Томбсом.
частичные alphanumeric_keys по умолчанию
xkb_symbols "базовый" {
включить "латынь (тип4)"
имя[Группа1]="Испанский";
key <AE01> {[1, восклицательный знак, полоса, восклицательный знак вниз]};
key <AE03> { [ 3, точка в центре, числовой знак, фунты стерлингов ] };
key <AE04> { [ 4, доллар, asciitilde, доллар ] };
key <AE06> {[6, амперсанд, без знака, пять восьмых]};
key <AE11> { [апостроф, вопрос, обратная косая черта, вопрос вниз]};
key <AE12> { [exclamdown, questiondown, dead_tilde, asciitilde]};
key <AD11> {[dead_grave, dead_circumflex, скобка влево, dead_abovering]};
key <AD12> { [плюс, звездочка, правая скобка, dead_macron]};
key <AC01> {[a, A, aring, Aring]};
ключ <AD03> {[e, E, ae, AE]};
key <AC10> {[ntilde, Ntilde, asciitilde, dead_doubleacute]};
key <AC11> {[dead_acute, dead_diaeresis, braceleft, braceleft]};
key <TLDE> { [мужской род, женский род, обратная косая черта, обратная косая черта]};
key <BKSL> {[ccedilla, Ccedilla, braceright, dead_breve]};
включить "level3(ralt_switch)"
};
частичные alphanumeric_keys
xkb_symbols "подмигивающие ключи" {
включить "es (базовый)"
name[Group1]="Испанский (клавиши Win)";
включить "еврознак (5)"
};
частичные alphanumeric_keys
xkb_symbols "Солнечные ключи" {
включить "es (базовый)"
key <AC11> {[dead_acute, dead_diaeresis, braceleft, braceleft]};
key <AD11> {[dead_grave, dead_circumflex, скобка влево, dead_abovering]};
};
частичные alphanumeric_keys
xkb_symbols "солнечные ключи" {
включить "es(Sundeadkeys)"
name[Group1]="Испанский (с мертвыми клавишами Sun)";
};
частичные alphanumeric_keys
xkb_symbols "nodeadkeys" {
включить "es (базовый)"
name[Group1]="Испанский (без мертвых клавиш)";
key <AD11> { [ могила, asciicircum, скобка влево, степень ] };
key <AD12> { [плюс, звездочка, правая квадратная скобка, макрос]};
ключ <AD03> {[e, E, ae, AE]};
key <AC10> {[ntilde, Ntilde, asciitilde, dead_doubleacute]};
key <AC10> {[ntilde, Ntilde, asciitilde, doubleacute]};
key <AC11> {[острый, диэрезисный, braceleft, braceleft]};
key <BKSL> {[ccedilla, Ccedilla, braceright, breve]};
key <AB10> { [минус, подчеркивание, мертвая_нижняя точка, верхняя точка]};
};
// Испанское отображение (обратите внимание на обмен R-H)
частичные alphanumeric_keys
xkb_symbols "дворак" {
name[Group1]="Испанский (Дворак)";
key <TLDE> {[мужской род, женский род, обратная косая черта, степень]};
key <AE01> {[ 1, восклицательный знак, бар, высший уровень]};
key <AE02> {[ 2, quotedbl, at, twosuperior]};
key <AE03> {[ 3, точка в центре, числовой знак, тройка выше]};
ключ <AE04> {[ 4, доллар, asciitilde, одна четверть]};
key <AE05> {[ 5, процентов, EuroSign, пять восьмых]};
key <AE06> {[ 6, амперсанд, незнак, три четверти]};
key <AE07> {[ 7, косая черта, половина, семь восьмых]};
key <AE08> {[ 8, скобка слева, одна восьмая, три восьмых]};
key <AE09> {[ 9, parenright, asciicircum ]};
ключ <AE10> {[ 0, равно, могила, dead_doubleacute ]};
key <AE11> {[апостроф, вопрос, dead_macron, dead_ogonek]};
key <AE12> {[ восклицание, вопрос вниз, dead_breve, dead_abovedot]};
key <AD01> {[точка, двоеточие, меньше, guillemotleft]};
key <AD02> {[ запятая, точка с запятой, больше, правый угол ]};
key <AD03> {[ntilde, Ntilde, lstroke, Lstroke]};
key <AD04> {[p, P, параграф]};
key <AD05> {[y, Y, yen]};
ключ <AD06> {[ f, F, tslash, Tslash ]};
key <AD07> {[ g, G, dstroke, Dstroke ]};
key <AD08> {[c, C, цент, авторское право]};
key <AD09> {[h, H, hstroke, Hstroke ]};
key <AD10> {[l, L, sterling]};
key <AD11> {[ dead_grave, dead_circumflex, скобка влево, dead_caron ]};
key <AD12> {[плюс, звездочка, правая квадратная скобка, плюсминус]};
ключ <AC01> {[ a, A, aring, Aring ]};
клавиша <AC02> {[ о, о, ослэш, ослэш ]};
key <AC04> {[ u, U, aring, Aring ]};
ключ <AC05> {[ i, I, oe, ОЕ ]};
ключ <AC06> {[ d, D, eth, ETH ]};
ключ <AC07> {[ r, R, зарегистрированный товарный знак ]};
клавиша <AC08> {[t, T, thorn, THORN]};
клавиша <AC09> {[n,N,eng,ENG]};
клавиша <AC10> {[s, S, ssharp, section]};
key <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]};
key <BKSL> {[ccedilla, Ccedilla, braceright, dead_cedilla]};
key <LSGT> {[ меньше, больше, guillemotleft, guillemotright ]};
key <AB01> {[ минус, подчеркивание, дефис, макрон ]};
ключ <AB02> {[q, Q, валюта]};
клавиша <AB03> {[ j, J ]};
ключ <AB04> {[к, к, кра]};
клавиша <AB05> {[x, X, умножение, деление]};
клавиша <AB06> {[ b, B ]};
клавиша <AB07> {[м,м,мю]};
клавиша <AB08> {[ w, W ]};
клавиша <AB09> {[ v, V ]};
клавиша <AB10> {[ z, Z ]};
включить "level3(ralt_switch)"
};
частичные alphanumeric_keys
xkb_symbols "кошка" {
включить "es (базовый)"
name[Group1]="Каталонский (Испания, с точкой L посередине)";
ключ <AC09> {[l, L, 0x1000140, 0x100013F]};
};
частичные alphanumeric_keys
xkb_symbols "аст" {
включить "es (базовый)"
name[Group1]="Asturian (Испания, с нижней точкой H и нижней точкой L)";
ключ <AC06> { [h, H, 0x1001E25, 0x1001E24]};
ключ <AC09> {[l, L, 0x1001E37, 0x1001E36]};
};
// Скопировано из macintosh_vndr/es
частичные alphanumeric_keys
xkb_symbols "макинтош" {
включить "эс"
name[Group1]= "Испанский (Macintosh)";
};
частичные alphanumeric_keys
xkb_symbols "olpc" {
// http://wiki.laptop.org/go/OLPC_Spanish_Keyboard
включить "нас (базовый)"
имя[Группа1]="Испанский";
key <AE00> {[мужской род, ordfeminine]};
key <AE01> {[1, восклицательный знак, полоса]};
key <AE02> { [ 2, цитируемая bl, at ] };
key <AE03> { [ 3, dead_grave, numbersign, могила ] };
key <AE05> {[5, процент, EuroSign, dead_circumflex]};
key <AE06> {[6, амперсанд, незнак]};
key <AE07> {[7, косая черта, обратная косая черта]};
ключ <AE08> {[8, parenleft]};
ключ <AE09> {[9, parenright]};
ключ <AE10> {[0, равно]};
key <AE11> {[апостроф, вопрос]};
key <AE12> {[восклицательный знак, вопросительный знак]};
ключ <AD03> {[e, E, ae, AE]};
key <AD11> {[dead_acute, dead_diaeresis, острое, dead_abovering]};
key <AD12> {[ скобка влево, скобка влево ] };
key <AC01> {[a, A, aring, Aring]};
ключ <AC10> {[нтильда, нтильда]};
key <AC11> {[плюс, звездочка, мертвая_тильда]};
key <AC12> {[правая скобка, правая скобка, раздел]};
ключ <AB08> {[запятая, точка с запятой]};
ключ <AB09> {[точка, двоеточие]};
key <AB10> {[минус, подчеркивание]};
key <I219> { [меньше, больше, ISO_Next_Group]};
включить "level3(ralt_switch)"
};
частичные alphanumeric_keys
xkb_symbols "olpcm" {
// Механическая (немембранная) раскладка испанской клавиатуры OLPC.
// См.: http://wiki.laptop.org/go/OLPC_Spanish_Non-membrane_Keyboard
включить "нас (базовый)"
имя[Группа1]="Испанский";
key <AE00> {[вопрос вниз, восклицательный знак, обратная косая черта]};
key <AE01> {[1, восклицательный знак, полоса]};
key <AE02> { [ 2, цитируемая bl, at ] };
key <AE03> { [ 3, dead_grave, numbersign, могила ] };
key <AE04> { [4, доллар, asciitilde, dead_tilde]};
key <AE05> {[5, процент, EuroSign, dead_circumflex]};
key <AE06> {[6, амперсанд, незнак]};
key <AE07> {[7, косая черта, обратная косая черта]}; // нет метки '\' на olpcm, оставить для совместимости
key <AE08> {[8, скобка слева, мужской род]};
key <AE09> {[9, parenright, ordfeminine]};
ключ <AE10> {[0, равно]};
key <AE11> {[апостроф, вопрос]};
ключ <AD03> {[e, E, ae, AE]};
key <AD11> {[dead_acute, dead_diaeresis, dead_abovering, острое]};
key <AD12> {[плюс, звездочка]};
key <AC01> {[a, A, aring, Aring]};
ключ <AC10> {[нтильда, нтильда]};
ключ <AC10> {[нтильда, нтильда]};
// нет AC11 или AC12 на olpcm
ключ <AB08> {[запятая, точка с запятой]};
ключ <AB09> {[точка, двоеточие]};
key <AB10> {[минус, подчеркивание]};
ключ <AA02> {[меньше, больше]};
key <AA06> {[ скобка влево, скобка влево, ccedilla, Ccedilla ] };
key <AA07> {[правая скобка, правая скобка]};
включить "level3(ralt_switch)"
};
частичные alphanumeric_keys
xkb_symbols "мертвая тильда" {
включить "es (базовый)"
name[Group1]="Испанский (мертвая тильда)";
key <AE04> { [4, доллар, мертвая_тильда, доллар]};
};
частичные alphanumeric_keys
xkb_symbols "olpc2" {
// Модифицированный вариант международной раскладки США, специально для Перу
// Контактное лицо: Саяминду Дасгупта <[email protected]>
включить "нас (olpc)"
name[Group1]="Испанский (OLPC2)";
key <AE03> { [ 3, numbersign, dead_grave, dead_grave] }; // объединение могил
ключ <I236> {[XF86Start]};
включить "level3(ralt_switch)"
};
// ДОПОЛНИТЕЛЬНО:
частичные alphanumeric_keys
xkb_symbols "sun_type6" {
включить "sun_vndr/es(sun_type6)"
};
Вывод setxbkmap -query -verbose:
$ setxkbmap -print -verbose
Попытка построить раскладку с использованием следующих компонентов:
коды клавиш: evdev+алиасы(qwerty)
типы: полный
совместимость: полный
символы: pc+es+inet(evdev)+group(win_space_toggle)+еврознак(e)+terminate(ctrl_alt_bksp)
Геометрия: ПК (ПК105)
xkb_keymap {
xkb_keycodes {include "evdev+aliases(qwerty)" };
xkb_types { включить "полный" };
xkb_compat { включить "полный" };
xkb_symbols { include "pc+es+inet(evdev)+group(win_space_toggle)+eurosign(e)+terminate(ctrl_alt_bksp)" };
xkb_geometry { включает "pc (pc105)" };
};
Я вижу, что xkb применяет изменение к еврознаку. Я полагаю, что изменение внесено после прочтения файла раскладки клавиатуры выше. Итак, вопрос в том, как я навсегда остановлю xkb от внесения этого изменения.
Изменение не происходит из файла конфигурации клавиатуры:
$ кошка /etc/по умолчанию/клавиатура
# ФАЙЛ КОНФИГУРАЦИИ КЛАВИАТУРЫ
# Обратитесь к странице руководства по клавиатуре(5).
XKBMODEL="pc105"
XKBLAYOUT="es"
ХКБВАРИАНТ=""
XKBOPTIONS=""
BACKSPACE="угадай"
Я также пытался использовать dconf-editor, согласно это, но он показывает только варианты выше, то есть без вариантов. Я также пробовал:
sudo gsettings set org.gnome.desktop.input-sources xkb-options "['grp:win_space_toggle', 'terminate:ctrl_alt_bksp']"
Никакой радости.
Так, что происходит? Помощь очень ценится...
Примечание. Языковой стандарт — en-us, а клавиатура — es-es.