ฉันจะหารายการของxkb_symbolsและความหมายได้อย่างไร
หากต้องการชี้แจงให้ฉันยกตัวอย่างบางอย่างสำหรับxkb_symbols :
dead_acutedollarDownDeleteadiaeresisAdiaeresisdead_circumflexKP_0(KP_น่าจะเป็นคำนำหน้าสำหรับสัญลักษณ์ "แผ่นตัวเลข")KP_divide- .... (อื่น ๆ อีกมากมาย)
อ่านArch Wikiนี้ฉันเข้าใจว่าxkb_symbolsเป็นตัวเลขจริง หมายเลขเหล่านั้นสำหรับxkb_symbolsถูกกำหนดให้กับการแทนค่าสตริงบางแห่ง ( นี่คือคำถามหลัก: ที่ไหน? ) ตัวอย่างเช่นเราสามารถดูได้/usr/include/X11/keysymdef.hว่าหลาย ๆ คน#definesมีคุณสมบัติต่อไปนี้:
#define XK_KP_0 0xffb0
ในขณะที่อย่างน้อยฉันสามารถหาXK_KP_0ซึ่งดูเหมือนว่าจะ resample KP_0(เป็นที่เรียบง่ายอีกครั้งนำหน้า) ผมยังมีข้อมูลเกี่ยวกับไม่มีสัญลักษณ์อื่น ๆ เช่น (เช่นdead_circumflex, dollarฯลฯ ... )
ฉันต้องการรายการการแทนค่าสตริงที่กำหนดเช่นเพื่อสร้างปรับหรือแก้ไขเค้าโครงแป้นพิมพ์ แน่นอนว่าฉันสามารถรับข้อมูลเชิงลึกบางอย่างจากการดูไฟล์เค้าโครงแป้นพิมพ์ที่มีอยู่แล้ว แต่จำเป็นต้องมีการอ้างอิงถึง ด้วยเหตุนี้ฉันจึงขอคนที่นี่เพื่อชี้ให้ฉันเห็น
พื้นหลังเพิ่มเติม
ในแฟ้มซึ่งใช้ในการกำหนดปรับและปรับเปลี่ยนรูปแบบแป้นพิมพ์ตั้งอยู่ที่นี่/usr/share/X11/xkb/symbols/เช่นตัวอย่างde(ภาษาเยอรมัน) แป้นพิมพ์เค้าโครงxkb_symbolsถูกนำมาใช้อย่างหนัก/usr/share/X11/xkb/symbols/de
ในหลักการนี้เป็นลักษณะไฟล์ดังกล่าว (การเป็นส่วนหนึ่งของdeไฟล์):
// อ้างอิงจากคีย์บอร์ดแม็พจากไฟล์ 'xkb / symbols / de'
ค่าเริ่มต้น
xkb_symbols "พื้นฐาน" {
รวมถึง "ละติน (type4)"
ชื่อ [กลุ่มที่ 1] = "เยอรมัน";
สำคัญ {[2, ที่ยกมา bl, twosuperior, oneeighth]};
คีย์ {[3, ส่วน, threesuperior, sterling]};
คีย์ {[4, ดอลลาร์, หนึ่งค่าใช้จ่าย, สกุลเงิน]};
....
....
};
ฉันอยากจะรู้ว่ารายการของ xkb_symbols เหมือนquotedbl, twosuperiorใช้ในตัวอย่างข้างต้น
/usr/include/X11/keysymdef.h circle, downstile, upstile, downtack, uptack, quad, jot, identicalพวกเขาทำงานในไคลเอนต์ X11 ส่วนใหญ่ แต่ไม่ได้อยู่ในคนอื่น ๆ (เช่นurxvt) ดังนั้นฉันจึงแทนที่พวกเขาด้วยหมายเลข Unicode ของพวกเขาUXXXXและตอนนี้พวกเขาทำงานในลูกค้าทั้งหมด
/usr/include/X11/keysymdef.hมีทั้งหมด หลังจากนั้นคุณมีอะไรอีก