Score:2

ตัวเลือก xkb ที่แทนที่รูปแบบแป้นพิมพ์พิเศษ

ธง br

ฉันได้สร้างเค้าโครงแป้นพิมพ์ภาษาสเปนแบบพิเศษที่มีภาษาเยอรมัน à บน 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 ฉันมี ½ ฉันไม่สามารถมองเห็นได้ว่าเกิดอะไรขึ้นกับการตั้งค่าด้านล่าง คุณสามารถช่วย?

// แก้ไขสำหรับแป้นพิมพ์ภาษาสเปนจริงโดย Jon Tombs

alphanumeric_keys เริ่มต้นบางส่วน
xkb_ symbols "พื้นฐาน" {

    รวม "ละติน (type4)"

    ชื่อ[Group1]="สเปน";

    คีย์ <AE01> { [ 1, อัศเจรีย์, บาร์, อัศเจรีย์ ] };
    คีย์ <AE03> { [ 3, จุดกึ่งกลาง, เครื่องหมายตัวเลข, สเตอร์ลิง ] };
    คีย์ <AE04> { [ 4, ดอลลาร์, asciitilde, ดอลลาร์ ] };
    คีย์ <AE06> { [ 6, เครื่องหมาย, ไม่ใช่เครื่องหมาย, ห้าที่แปด ] };
    คีย์ <AE11> { [เครื่องหมายอะพอสทรอฟี, คำถาม, แบ็กสแลช, คำถามลง ] };
    คีย์ <AE12> { [เครื่องหมายอัศเจรีย์, คำถามลง, dead_tilde, asciitilde ] };

    คีย์ <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] };
    คีย์ <AD12> { [ บวก, เครื่องหมายดอกจัน, วงเล็บขวา, dead_macron ] };


    ปุ่ม <AC01> { [ a, A, aring, Aring ] };
    คีย์ <AD03> { [ อี, อี, อี, AE ] };
    คีย์ <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] };
    คีย์ <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] };
    คีย์ <TLDE> { [ ผู้ชาย, ordfeminine, แบ็กสแลช, แบ็กสแลช ] };

    คีย์ <BKSL> { [ ccedilla, Ccedilla, วงเล็บปีกกา, dead_breve ] };

    รวม "ระดับ 3 (ralt_switch)"
};

alphanumeric_keys บางส่วน
xkb_ symbols "winkeys" {

    รวม "es (พื้นฐาน)"
    name[Group1]="ภาษาสเปน (ปุ่ม Win)";
    รวม "เครื่องหมายยูโร (5)"
};

alphanumeric_keys บางส่วน
xkb_ symbols "ซันเดดคีย์" {

    รวม "es (พื้นฐาน)"

    คีย์ <AC11> { [dead_acute, dead_diaeresis, braceleft, braceleft ] };
    คีย์ <AD11> { [dead_grave, dead_circumflex, bracketleft, dead_abovering ] };
};

alphanumeric_keys บางส่วน
xkb_ symbols "sundeadkeys" {

    รวม "es (Sundeadkeys)"

    name[Group1]="ภาษาสเปน (พร้อมปุ่ม Sun dead)";
};

alphanumeric_keys บางส่วน
xkb_ symbols "nodeadkeys" {

    รวม "es (พื้นฐาน)"

    name[Group1]="ภาษาสเปน (ไม่มีปุ่มเสีย)";

    คีย์ <AD11> { [ เกรฟ, asciicircum, วงเล็บซ้าย, องศา ] };
    แป้น <AD12> { [ เครื่องหมายบวก เครื่องหมายดอกจัน วงเล็บขวา มาโครน ] };
    คีย์ <AD03> { [ อี, อี, อี, AE ] };
    คีย์ <AC10> { [ ntilde, Ntilde, asciitilde, dead_doubleacute ] };
    คีย์ <AC10> { [ ntilde, Ntilde, asciitilde, doubleacute ] };
    คีย์ <AC11> { [ เฉียบพลัน, ไดอะรีซิส, สร้อยข้อมือซ้าย, สร้อยข้อมือซ้าย ] };
    คีย์ <BKSL> { [ ccedilla, Ccedilla, วงเล็บปีกกาขวา, breve ] };
    คีย์ <AB10> { [ ลบ, ขีดล่าง, dead_belowdot, abovedot ] };
};

// การทำแผนที่ภาษาสเปน (หมายเหตุการแลกเปลี่ยน R-H)
alphanumeric_keys บางส่วน
xkb_ symbols "dvorak" {

    ชื่อ[Group1]="ภาษาสเปน (Dvorak)";

    คีย์ <TLDE> {[ ผู้ชาย, ordfeminine, แบ็กสแลช, องศา ]};
    คีย์ <AE01> {[ 1, อัศเจรีย์, บาร์, onesuperior ]};
    คีย์ <AE02> {[ 2, quotedbl, at, twosuperior ]};
    คีย์ <AE03> {[ 3, periodcentered, numbersign, threesuperior ]};
    คีย์ <AE04> {[ 4 ดอลลาร์ asciitilde หนึ่งส่วนสี่ ]};
    คีย์ <AE05> {[ 5 เปอร์เซ็นต์ EuroSign ห้าที่แปด ]};
    คีย์ <AE06> {[ 6, เครื่องหมายแอมเปอร์แซนด์, notsign, สามส่วนสี่ ]};
    คีย์ <AE07> {[ 7, ทับ, หนึ่งครึ่ง, เจ็ดในแปด ]};
    คีย์ <AE08> {[ 8, parenleft, oneeighth, threeeighths ]};
    คีย์ <AE09> {[ 9, parenright, asciicircum ]};
    คีย์ <AE10> {[ 0, เท่ากับ, หลุมศพ, dead_doubleacute ]};
    คีย์ <AE11> {[ เครื่องหมายอัญประกาศเดี่ยว, คำถาม, dead_macron, dead_ogonek ]};
    คีย์ <AE12> {[ เครื่องหมายอัศเจรีย์, คำถาม, dead_breve, dead_abovedot ]};

    คีย์ <AD01> {[ จุด, ทวิภาค, น้อยกว่า, guillemotleft ]};
    คีย์ <AD02> {[ จุลภาค อัฒภาค มากกว่า guillemotright ]};
    คีย์ <AD03> {[ ntilde, Ntilde, lstroke, Lstroke ]};
    คีย์ <AD04> {[ p, P, ย่อหน้า ]};
    คีย์ <AD05> {[ y, Y, เยน ]};
    คีย์ <AD06> {[ f, F, tslash, Tslash ]};
    คีย์ <AD07> {[ g, G, dstroke, Dstroke ]};
    คีย์ <AD08> {[ c, C, cent, ลิขสิทธิ์ ]};
    ปุ่ม <AD09> {[ h, H, hstroke, hstroke ]};
    คีย์ <AD10> {[ l, L, สเตอร์ลิง ]};
    คีย์ <AD11> {[ dead_grave, dead_circumflex, bracketleft, dead_caron ]};
    คีย์ <AD12> {[ บวก, เครื่องหมายดอกจัน, วงเล็บขวา, บวกลบ ]};

    ปุ่ม <AC01> {[ a, A, aring, Aring ]};
    ปุ่ม <AC02> {[ o, O, oslash, Oslash ]};
    คีย์ <AC04> {[ u, U, aring, Aring ]};
    คีย์ <AC05> {[ ผม ผม OE OE ]};
    คีย์ <AC06> {[ d, D, eth, ETH ]};
    คีย์ <AC07> {[ r, R, จดทะเบียน, เครื่องหมายการค้า ]};
    คีย์ <AC08> {[ t, T, ธอร์น, THORN ]};
    ปุ่ม <AC09> {[ n, N, eng, ENG ]};
    คีย์ <AC10> {[ s, S, ssharp, ส่วน ]};
    คีย์ <AC11> {[ dead_acute, dead_diaeresis, braceleft, dead_tilde ]};
    คีย์ <BKSL> {[ ccedilla, Ccedilla, วงเล็บปีกกา, dead_cedilla ]};

    คีย์ <LSGT> {[ น้อยกว่า, มากกว่า, guillemotleft, guillemotright ]};
    คีย์ <AB01> {[ ลบ, ขีดล่าง, ยัติภังค์, มาโครน ]};
    คีย์ <AB02> {[ q, Q, สกุลเงิน ]};
    ปุ่ม <AB03> {[ j, J ]};
    คีย์ <AB04> {[ k, K, kra ]};
    คีย์ <AB05> {[ x, X, คูณ, หาร ]};
    ปุ่ม <AB06> {[ b, B ]};
    คีย์ <AB07> {[ ม. ม. ม. ]};
    ปุ่ม <AB08> {[ w, W ]};
    ปุ่ม <AB09> {[ v, V ]};
    ปุ่ม <AB10> {[ z, Z ]};

    รวม "ระดับ 3 (ralt_switch)"
};

alphanumeric_keys บางส่วน
xkb_ symbols "แมว" {

    รวม "es (พื้นฐาน)"

    name[Group1]="คาตาลัน (สเปน มีจุดตรงกลาง L)";

    ปุ่ม <AC09> { [ l, L, 0x1000140, 0x100013F ] };
};

alphanumeric_keys บางส่วน
xkb_ symbols "ast" {

    รวม "es (พื้นฐาน)"

    name[Group1]="Asturian (สเปน โดยมีจุดล่าง H และจุดล่าง L)";

    ปุ่ม <AC06> { [ ชั่วโมง, H, 0x1001E25, 0x1001E24 ] };
    ปุ่ม <AC09> { [ l, L, 0x1001E37, 0x1001E36 ] };
};

// คัดลอกมาจาก macintosh_vndr/es
alphanumeric_keys บางส่วน
xkb_ symbols "mac" {
    รวม "เอส"
    name[Group1]= "ภาษาสเปน (แมคอินทอช)";
};

alphanumeric_keys บางส่วน
xkb_ symbols "olpc" {

    // http://wiki.laptop.org/go/OLPC_Spanish_Keyboard

    รวม "เรา (พื้นฐาน)"
    ชื่อ[Group1]="สเปน";

    คีย์ <AE00> { [ ผู้ชาย ordfeminine ] };
    คีย์ <AE01> { [ 1, อัศเจรีย์, แถบ ] };
    คีย์ <AE02> { [ 2, quotedbl, ที่ ] };
    คีย์ <AE03> { [ 3, dead_grave, เครื่องหมายตัวเลข, หลุมฝังศพ ] };
    คีย์ <AE05> { [ 5, เปอร์เซ็นต์, EuroSign, dead_circumflex ] };
    คีย์ <AE06> { [ 6, เครื่องหมาย, notsign ] };
    คีย์ <AE07> { [ 7, ทับ, แบ็กสแลช ] };
    คีย์ <AE08> { [ 8, parenleft ] };
    คีย์ <AE09> { [ 9, parenright ] };
    ปุ่ม <AE10> { [ 0, เท่ากับ ] };
    คีย์ <AE11> { [ อะพอสทรอฟี, คำถาม ] };
    คีย์ <AE12> { [ อัศเจรีย์, คำถามลง ] };

    คีย์ <AD03> { [ อี, อี, อี, AE ] };
    คีย์ <AD11> { [ dead_acute, dead_diaeresis, acute, dead_abovering ] };
    คีย์ <AD12> { [ วงเล็บซ้าย, วงเล็บซ้าย ] };

    คีย์ <AC01> { [ a, A, aring, Aring ]};
    คีย์ <AC10> { [ ทิลเด, ทิลเด ] };
    คีย์ <AC11> { [ บวก, เครื่องหมายดอกจัน, dead_tilde ] };
    คีย์ <AC12> { [ วงเล็บปีกกา, วงเล็บปีกกา, ส่วน ] };

    ปุ่ม <AB08> { [ จุลภาค, เครื่องหมายอัฒภาค ] };
    คีย์ <AB09> { [ มหัพภาค, โคลอน ] };
    ปุ่ม <AB10> { [ ลบ, ขีดล่าง ] };

    คีย์ <I219> { [ น้อยกว่า, มากกว่า, ISO_Next_Group ] };

    รวม "ระดับ 3 (ralt_switch)"
};

alphanumeric_keys บางส่วน
xkb_ symbols "olpcm" {

    // รูปแบบแป้นพิมพ์ภาษาสเปนแบบกลไก (ไม่ใช่เมมเบรน)
    // ดู: http://wiki.laptop.org/go/OLPC_Spanish_Non-membrane_Keyboard

    รวม "เรา (พื้นฐาน)"
    ชื่อ[Group1]="สเปน";

    คีย์ <AE00> { [ คำถาม, อัศเจรีย์, แบ็กสแลช ] };
    คีย์ <AE01> { [ 1, อัศเจรีย์, แถบ ] };
    คีย์ <AE02> { [ 2, quotedbl, ที่ ] };
    คีย์ <AE03> { [ 3, dead_grave, เครื่องหมายตัวเลข, หลุมฝังศพ ] };
    คีย์ <AE04> { [ 4, ดอลลาร์, asciitilde, dead_tilde ] };
    คีย์ <AE05> { [ 5, เปอร์เซ็นต์, EuroSign, dead_circumflex ] };
    คีย์ <AE06> { [ 6, เครื่องหมาย, notsign ] };
    คีย์ <AE07> { [ 7, ทับ, แบ็กสแลช ] }; // ไม่มีป้ายกำกับ '\' บน olpcm ปล่อยให้เข้ากันได้
    คีย์ <AE08> { [ 8, parenleft, ผู้ชาย ] };
    คีย์ <AE09> { [ 9, parenright, ordfeminine ] };
    ปุ่ม <AE10> { [ 0, เท่ากับ ] };
    คีย์ <AE11> { [ อะพอสทรอฟี, คำถาม ] };

    คีย์ <AD03> { [ อี, อี, อี, AE ] };
    คีย์ <AD11> { [ dead_acute, dead_diaeresis, dead_abovering, acute ] };
    คีย์ <AD12> { [ บวก, เครื่องหมายดอกจัน ] };

    คีย์ <AC01> { [ a, A, aring, Aring ]};
    คีย์ <AC10> { [ ทิลเด, ทิลเด ] };
    คีย์ <AC10> { [ ทิลเด, ทิลเด ] };
    // ไม่มี AC11 หรือ AC12 บน olpcm

    ปุ่ม <AB08> { [ จุลภาค, เครื่องหมายอัฒภาค ] };
    คีย์ <AB09> { [ มหัพภาค, โคลอน ] };
    ปุ่ม <AB10> { [ ลบ, ขีดล่าง ] };

    ปุ่ม <AA02> { [ น้อยกว่า, มากกว่า ] };
    คีย์ <AA06> { [ วงเล็บซ้าย, วงเล็บซ้าย, ccedilla, Ccedilla ] };
    คีย์ <AA07> { [ วงเล็บปีกกา, วงเล็บปีกกา ] };

    รวม "ระดับ 3 (ralt_switch)"
};

alphanumeric_keys บางส่วน
xkb_ symbols "deadtilde" {

    รวม "es (พื้นฐาน)"

    name[Group1]="ภาษาสเปน (ตัวหนอนตาย)";

    คีย์ <AE04> { [ 4, ดอลลาร์, dead_tilde, ดอลลาร์ ] };
};

alphanumeric_keys บางส่วน
xkb_ symbols "olpc2" {

    // รูปแบบที่ปรับเปลี่ยนของเค้าโครง US International โดยเฉพาะสำหรับเปรู
    // ติดต่อ: Sayamindu Dasgupta <sayamindu@laptop.org>

    รวม "เรา (olpc)"
    ชื่อ[Group1]="ภาษาสเปน (OLPC2)";

    คีย์ <AE03> { [ 3, เครื่องหมายตัวเลข, dead_grave, dead_grave] }; // รวมหลุมฝังศพ
    ปุ่ม <I236> { [ XF86Start ] };

    รวม "ระดับ 3 (ralt_switch)"
};

// พิเศษ:

alphanumeric_keys บางส่วน
    xkb_ symbols "sun_type6" {
    รวม "sun_vndr/es(sun_type6)"
};

ผลลัพธ์ของ setxbkmap -query -verbose:

    $ setxkbmap - พิมพ์ - verbose
กำลังพยายามสร้างคีย์แมปโดยใช้ส่วนประกอบต่อไปนี้:
คีย์โค้ด: evdev+aliases(qwerty)
ประเภท: สมบูรณ์
เข้ากันได้: สมบูรณ์
สัญลักษณ์: pc+es+inet(evdev)+group(win_space_toggle)+eurosign(e)+terminate(ctrl_alt_bksp)
รูปทรงเรขาคณิต: พีซี (pc105)
xkb_keymap {
    xkb_keycodes { รวม "evdev+aliases(qwerty)" };
    xkb_types { รวม "สมบูรณ์" };
    xkb_compat { รวม "สมบูรณ์" };
    xkb_ symbols { รวม "pc+es+inet(evdev)+group(win_space_toggle)+eurosign(e)+terminate(ctrl_alt_bksp)" };
    xkb_geometry { รวม "พีซี (pc105)" };
};

ฉันเห็นว่า xkb ใช้การเปลี่ยนแปลงกับสัญลักษณ์ยูโร ฉันคิดว่าการเปลี่ยนแปลงเกิดขึ้นหลังจากอ่านไฟล์เค้าโครงแป้นพิมพ์ (es) ด้านบน ดังนั้นคำถามคือฉันจะหยุด xkb อย่างถาวรจากการเปลี่ยนแปลงนั้นได้อย่างไร

การเปลี่ยนแปลงไม่ได้มาจากไฟล์กำหนดค่าแป้นพิมพ์:

$ cat /etc/default/keyboard 
# ไฟล์กำหนดค่าแป้นพิมพ์

# ดูหน้าคู่มือคีย์บอร์ด (5)

XKBMODEL="pc105"
XKBLAYOUT="เอส"
XKBVARIANT=""
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

Andra avatar
tr flag
ผลลัพธ์ของ `setxkbmap -query` ก่อนการเปลี่ยนแปลงเหล่านี้คืออะไร
ElToro1966 avatar
br flag
ผลลัพธ์ของ setxkbmap -query เพิ่มด้านบน
ElToro1966 avatar
br flag
อา. ตอนนี้ฉันเข้าใจแล้วว่าทำไมจึงมี EuroSign ตัวเลือกเขียนทับสิ่งที่อยู่ในไฟล์ใช่ไหม เครื่องหมาย ½ บน AltGr-5 ยังคงเป็นปริศนาอยู่
Andra avatar
tr flag
การปรับเปลี่ยนนี้เปลี่ยนแปลงอะไรหรือไม่? ลอง `setxkbmap -print -verbose 10`
ElToro1966 avatar
br flag
@Andra ฉันได้ชี้แจงคำถามแล้ว ฉันทำการเปลี่ยนแปลงโดยตรงในไฟล์รูปแบบแป้นพิมพ์ (es) เพื่อทำการเปลี่ยนแปลงตามต้องการ ใช้งานได้กับการติดตั้ง Ubuntu รุ่นเก่า ตอนนี้ ฉันเห็นว่า xkb ทำการเปลี่ยนแปลงเครื่องหมายยูโรผ่านตัวเลือกต่างๆ ฉันคิดว่าเกิดขึ้นหลังจากอ่านรูปแบบแป้นพิมพ์แล้ว ฉันเดาว่าฉันต้องหยุด xkb จากการเปลี่ยนแปลงนั้นและทุกอย่างจะทำงานได้ ขอบคุณ.
vanadium avatar
cn flag
คุณลองปิดใช้งานตัวเลือกแป้นพิมพ์สำหรับเครื่องหมายยูโรที่เครื่องปลายทางโดยใช้ setxkbmap หรือไม่ - บางทีการปรับแต่งของคุณอาจทำงานได้ตามที่คาดไว้
ElToro1966 avatar
br flag
@vanadium ใช้งานได้! ถ้าฉันทำ $ sudo setxkbmap - ตัวเลือก มันจะกำจัดตัวเลือกก่อนหน้าทั้งหมดและ $ sudo setxkbmap - ตัวเลือก Eurosign:5 ฉันได้รับเครื่องหมายยูโรบน AltGr-5 อย่างไรก็ตาม การดำเนินการนี้จะไม่คงอยู่ตลอดการรีสตาร์ท หลังจากรีสตาร์ท ฉันได้รับผลลัพธ์ตามคำตอบด้านล่าง ฉันจะทำให้ถาวรได้อย่างไร ขอบคุณ.
vanadium avatar
cn flag
ควรเป็น /etc/default/keyboard แต่ Xorg สามารถลบล้างได้เช่นกัน (เช่นเดียวกับ Gnome ที่แทนที่สำหรับผู้ใช้ปัจจุบัน)

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา