Am realizat un aspect special al tastaturii spaniole, care include à germană pe AltGr-s și scandinavă æ à (ae, AE), ø à (oe, OE) și Ã¥ à (aring, Aring). ), pe AltGr-e, AltGr-E, AltGr-o, AltGr-O, AltGr-a și, respectiv, AltGr-A. ⬠(EuroSign) a fost mutat de la AltGr-e la AltGr-5.
Acest lucru a funcționat excelent pe Ubuntu Budgie 21.04.De atunci, m-am mutat înapoi la Ubuntu Budgie 20.04 LTS (instalare proaspătă) pe aceeași mașină, am copiat peste aspectul personalizat și am făcut setxkbmap {custom_layout}. Dintr-o dată, pe AltGr-e am â¬, iar pe AltGr-5 am ½. Nu sunt capabil să văd ce nu merge bine cu configurarea de mai jos. Poți să ajuți?
// Modificat pentru o tastatură spaniolă adevărată de Jon Tombs.
chei alfanumerice parțiale implicite
xkb_symbols „de bază” {
include „latină(tip4)”
nume[Group1]="spaniolă";
tasta <AE01> { [ 1, exclam, bar, exclamdown ] };
tasta <AE03> { [ 3, centrat în punct, semn numeric, liră sterlină ] };
cheie <AE04> { [ 4, dolar, asciitilde, dolar ] };
tasta <AE06> { [ 6, ampersand, notsign, cinci optimi ] };
tasta <AE11> { [apostrof, întrebare, bară oblică inversă, întrebare în jos ] };
tasta <AE12> { [exclamdown, questiondown, dead_tilde, asciitilde ] };
cheie <AD11> { [mormânt_mort, circumflex_moar, bracketleft, dead_overing ] };
tasta <AD12> { [ plus, asterisc, bracketright, dead_macron ] };
tasta <AC01> { [ a, A, aring, Aring ] };
tasta <AD03> { [ e, E, ae, AE ] };
cheie <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] };
cheie <AC11> { [dead_acute, dead_dieresis, braceleft, braceleft ] };
tasta <TLDE> { [ masculin, saufeminin, backslash, backslash ] };
cheie <BKSL> { [ ccedilla, Ccedilla, braceright, dead_breve ] };
include „level3(ralt_switch)”
};
chei_alfanumerice parțiale
xkb_symbols „winkeys” {
include "es (de bază)"
name[Group1]="Spaniolă (chei Win)";
include „eurosign(5)”
};
chei_alfanumerice parțiale
xkb_symbols „Sundeadkeys” {
include "es (de bază)"
cheie <AC11> { [dead_acute, dead_dieresis, braceleft, braceleft ] };
cheie <AD11> { [mormânt_mort, circumflex_moar, bracketleft, dead_overing ] };
};
chei_alfanumerice parțiale
xkb_symbols „sundeadkeys” {
include „es(Sundeadkeys)”
name[Group1]="Spaniolă (cu cheile Sun dead)";
};
chei_alfanumerice parțiale
xkb_symbols „nodeadkeys” {
include "es (de bază)"
name[Group1]="Spaniolă (fără chei moarte)";
cheie <AD11> { [ mormânt, asciicircum, bracketleft, grad ] };
tasta <AD12> { [ plus, asterisc, paranteză dreapta, macron ] };
tasta <AD03> { [ e, E, ae, AE ] };
cheie <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] };
cheie <AC10> { [ ntilde, Ntilde, asciitilde, doubleacute ] };
cheie <AC11> { [ acut, dieresis, braceleft, braceleft ] };
cheie <BKSL> { [ ccedilla, Ccedilla, braceright, breve ] };
tasta <AB10> { [ minus, liniuță de subliniere, punct_dedesubt, punct deasupra ] };
};
// Cartografiere spaniolă (notați schimbul R-H)
chei_alfanumerice parțiale
xkb_symbols „dvorak” {
nume[Group1]="Spaniolă (Dvorak)";
tasta <TLDE> {[ masculin, saufeminin, backslash, grad ]};
tasta <AE01> {[ 1, exclam, bar, onesuperior ]};
tasta <AE02> {[ 2, citatbl, at, twosuperior ]};
tasta <AE03> {[ 3, punct centrat, semn numeric, trei superioare ]};
cheia <AE04> {[ 4, dolar, asciitilde, un sfert ]};
tasta <AE05> {[ 5, procente, EuroSign, cinci optimi ]};
tasta <AE06> {[ 6, ampersand, notsign, trei sferturi ]};
tasta <AE07> {[ 7, bară oblică, jumătate, șapte optime ]};
tasta <AE08> {[ 8, parenstânga, o optime, trei optime ]};
tasta <AE09> {[ 9, parenright, asciicircum ]};
tasta <AE10> {[ 0, egal, grav, dead_doubleacute ]};
cheie <AE11> {[ apostrof, întrebare, dead_macron, dead_ogonek ]};
tasta <AE12> {[ exclamdown, questiondown, dead_breve, dead_abovedot ]};
tasta <AD01> {[ punct, două puncte, mai puțin, guillemotleft ]};
tasta <AD02> {[ virgulă, punct și virgulă, mai mare, guillemotright ]};
tasta <AD03> {[ ntilde, Ntilde, lstroke, Lstroke ]};
tasta <AD04> {[ p, P, paragraful ]};
tasta <AD05> {[ y, Y, yen ]};
tasta <AD06> {[ f, F, slash, Tslash ]};
tasta <AD07> {[ g, G, dstroke, Dstroke ]};
tasta <AD08> {[ c, C, cent, copyright ]};
tasta <AD09> {[ h, H, hstroke, Hstroke ]};
cheia <AD10> {[ l, L, sterlină ]};
cheie <AD11> {[ mormânt_mort, circumflex_moar, bracketleft, dead_caron ]};
tasta <AD12> {[ plus, asterisc, paranteză dreapta, plusminus ]};
tasta <AC01> {[ a, A, aring, Aring ]};
tasta <AC02> {[ o, O, oslash, Oslash ]};
tasta <AC04> {[ u, U, aring, Aring ]};
tasta <AC05> {[ i, I, oe, OE ]};
cheia <AC06> {[ d, D, eth, ETH ]};
tasta <AC07> {[ r, R, înregistrat, marcă ]};
cheie <AC08> {[ t, T, ghimpe, THIN ]};
tasta <AC09> {[ n, N, eng, ENG ]};
tasta <AC10> {[ s, S, sharp, secțiune ]};
cheie <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]};
cheie <BKSL> {[ ccedilla, Ccedilla, braceright, dead_cedilla ]};
cheie <LSGT> {[ mai puțin, mai mare, guillemotleft, guillemotright ]};
tasta <AB01> {[ minus, subliniere, cratima, macron ]};
tasta <AB02> {[ q, Q, valută ]};
tasta <AB03> {[ j, J ]};
tasta <AB04> {[ k, K, kra ]};
tasta <AB05> {[ x, X, înmulțire, împărțire ]};
tasta <AB06> {[ b, B ]};
tasta <AB07> {[ m, M, mu ]};
tasta <AB08> {[ w, W ]};
tasta <AB09> {[ v, V ]};
tasta <AB10> {[ z, Z ]};
include „level3(ralt_switch)”
};
chei_alfanumerice parțiale
xkb_symbols „pisica” {
include "es (de bază)"
name[Group1]="Catalană (Spania, cu punct mijlociu L)";
tasta <AC09> { [ l, L, 0x1000140, 0x100013F ] };
};
chei_alfanumerice parțiale
xkb_symbols „ast” {
include "es (de bază)"
name[Group1]="Asturiană (Spania, cu punctul de jos H și punctul de jos L)";
tasta <AC06> { [ h, H, 0x1001E25, 0x1001E24 ] };
tasta <AC09> { [ l, L, 0x1001E37, 0x1001E36 ] };
};
// Copiat de pe macintosh_vndr/es
chei_alfanumerice parțiale
xkb_symbols „mac” {
include "es"
name[Group1]= „Spaniolă (Macintosh)”;
};
chei_alfanumerice parțiale
xkb_symbols „olpc” {
// http://wiki.laptop.org/go/OLPC_Spanish_Keyboard
includeți „noi (de bază)”
nume[Group1]="spaniolă";
tasta <AE00> { [ masculin, saufeminin ] };
tasta <AE01> { [ 1, exclam, bar ] };
tasta <AE02> { [ 2, citatbl, la ] };
cheie <AE03> { [ 3, mormânt_mort, semn numeric, mormânt ] };
tasta <AE05> { [ 5, procente, EuroSign, dead_circumflex ] };
tasta <AE06> { [ 6, ampersand, notsign ] };
tasta <AE07> { [ 7, bară oblică, bară oblică inversă ] };
tasta <AE08> { [ 8, parentleft ] };
tasta <AE09> { [ 9, parenright ] };
tasta <AE10> { [ 0, egal ] };
tasta <AE11> { [ apostrof, întrebare ] };
tasta <AE12> { [ exclamdown, questiondown ] };
tasta <AD03> { [ e, E, ae, AE ] };
cheie <AD11> { [ dead_acute, dead_diaeresis, acute, dead_overing ] };
tasta <AD12> { [ bracketleft, braceleft ] };
tasta <AC01> { [ a, A, aring, Aring ]};
tasta <AC10> { [ ntilde, Ntilde ] };
tasta <AC11> { [ plus, asterisc, dead_tilde ] };
tasta <AC12> { [ bracketright, braceright, section ] };
tasta <AB08> { [ virgulă, punct și virgulă ] };
tasta <AB09> { [ punct, două puncte ] };
tasta <AB10> { [ minus, subliniere ] };
tasta <I219> { [ mai puțin, mai mare, ISO_Next_Group ] };
include „level3(ralt_switch)”
};
chei_alfanumerice parțiale
xkb_symbols „olpcm” {
// Dispoziție de tastatură spaniolă OLPC mecanică (fără membrană).
// A se vedea: http://wiki.laptop.org/go/OLPC_Spanish_Non-membrane_Keyboard
includeți „noi (de bază)”
nume[Group1]="spaniolă";
tasta <AE00> { [ întrebare jos, exclamdown, backslash ] };
tasta <AE01> { [ 1, exclam, bar ] };
tasta <AE02> { [ 2, citatbl, la ] };
cheie <AE03> { [ 3, mormânt_mort, semn numeric, mormânt ] };
cheie <AE04> { [ 4, dolar, asciitilde, dead_tilde ] };
tasta <AE05> { [ 5, procente, EuroSign, dead_circumflex ] };
tasta <AE06> { [ 6, ampersand, notsign ] };
tasta <AE07> { [ 7, bară oblică, bară oblică inversă ] }; // fără etichetă „\” pe olpcm, lăsați pentru compatibilitate
tasta <AE08> { [ 8, parentleft, masculin ] };
tasta <AE09> { [ 9, dreptul părintelui, ordfeminin ] };
tasta <AE10> { [ 0, egal ] };
tasta <AE11> { [ apostrof, întrebare ] };
tasta <AD03> { [ e, E, ae, AE ] };
cheie <AD11> { [ dead_acute, dead_diaeresis, dead_overing, acute ] };
tasta <AD12> { [ plus, asterisc ] };
tasta <AC01> { [ a, A, aring, Aring ]};
tasta <AC10> { [ ntilde, Ntilde ] };
tasta <AC10> { [ ntilde, Ntilde ] };
// nu AC11 sau AC12 pe olpcm
tasta <AB08> { [ virgulă, punct și virgulă ] };
tasta <AB09> { [ punct, două puncte ] };
tasta <AB10> { [ minus, subliniere ] };
tasta <AA02> { [ mai puțin, mai mare ] };
tasta <AA06> { [ bracketleft, braceleft, ccedilla, Ccedilla ] };
tasta <AA07> { [ bracketright, braceright ] };
include „level3(ralt_switch)”
};
chei_alfanumerice parțiale
xkb_symbols „deadtilde” {
include "es (de bază)"
nume[Group1]="Spaniolă (tilde moartă)";
cheie <AE04> { [ 4, dolar, dead_tilde, dolar ] };
};
chei_alfanumerice parțiale
xkb_symbols „olpc2” {
// Varianta modificată a aspectului US International, special pentru Peru
// Contact: Sayamindu Dasgupta <[email protected]>
includeți „ne(olpc)”
nume[Group1]="Spaniolă (OLPC2)";
tasta <AE03> { [ 3, numere, mormânt_mort, mormânt_mort] }; // combinând mormânt
tasta <I236> { [ XF86Start ] };
include „level3(ralt_switch)”
};
// IN PLUS:
chei_alfanumerice parțiale
xkb_symbols „sun_type6” {
includeți „sun_vndr/es(sun_type6)”
};
Ieșirea setxbkmap -query -verbose:
$ setxkbmap -print -verbose
Încercarea de a construi keymap folosind următoarele componente:
coduri cheie: evdev+aliases(qwerty)
tipuri: complete
compat: complet
simboluri: pc+es+inet(evdev)+group(win_space_toggle)+eurosign(e)+terminate(ctrl_alt_bksp)
geometrie: pc(pc105)
xkb_keymap {
xkb_keycodes { include „evdev+aliases(qwerty)” };
xkb_types { include "complet" };
xkb_compat { include "complet" };
xkb_symbols { includ „pc+es+inet(evdev)+group(win_space_toggle)+eurosign(e)+terminate(ctrl_alt_bksp)” };
xkb_geometry { include "pc(pc105)"};
};
Văd că xkb aplică o modificare la eurosign. Presupun că schimbarea se face după citirea fișierului (fișierelor) de aspect al tastaturii de mai sus. Deci întrebarea este cum opresc permanent xkb să facă acea schimbare.
Modificarea nu provine din fișierul de configurare a tastaturii:
$ cat /etc/default/keyboard
# FIȘIER DE CONFIGURARE TASTATURĂ
# Consultați pagina de manual pentru tastatură(5).
XKBMODEL="pc105"
XKBLAYOUT="es"
XKBVARIANT=""
XKBOPTIONS=""
BACKSPACE="ghici"
De asemenea, am încercat să folosesc dconf-editor, conform acest, dar arată doar opțiunile de mai sus, adică fără opțiuni. am incercat si eu:
sudo gsettings set org.gnome.desktop.input-sources xkb-options "['grp:win_space_toggle', 'terminate:ctrl_alt_bksp']"
Nicio bucurie.
Deci ce se întâmplă? Ajutor mult apreciat...
Notă: Localizarea este en-us, în timp ce tastatura este es-es.