ตำแหน่งที่ถูกต้องที่จะวางxmodmap ~/.Xmodmap
(เพื่อให้การเปลี่ยนแปลงของคุณถูกอ่านเมื่อเริ่มต้น) อยู่ใน~/.xinitrc
(ดูคำอธิบายด้านล่าง) แม้ว่าคุณสามารถวางxmodmap
คำสั่งเป็นรายการเริ่มต้น ( /usr/bin/xmodmap /home/user/.Xmodmap
) ผมสามารถพูดได้ว่าสำหรับ 12.04 (และคงจะ 12.10) ว่าทั้งสองทางเลือกที่แน่นอนจะทำงานเป็นวิธีการอย่างใดอย่างหนึ่งพวกเขาจะอ่านหลังจากที่lightdm
คุณเข้าสู่ระบบด้วย (ฉันเปลี่ยนReturn to Right Shiftและการเปลี่ยนแปลงจะมีผลหลังจากป้อนรหัสผ่านและการเข้าสู่ระบบเท่านั้น)
หมายเหตุ:ถ้าคุณอยู่ใน Xfce ก็ตั้งข้อสังเกตเกี่ยวกับการอย่างเป็นทางการ Xfce คำถามที่พบบ่อยที่คุณอาจต้องสร้างรายการเริ่มต้นแทนการใช้~/.xinitrc
และการที่คุณอาจจะมีความล่าช้าในการดำเนินการเพื่อให้มีการเปลี่ยนแปลงไม่ได้เขียนทับโดยxmodmap
setxkbmap
คุณสามารถใช้ความล่าช้าเพื่อให้บรรลุสิ่งนี้ในรายการเริ่มต้นของคุณ:
/bin/bash -c "sleep 20; /usr/bin/xmodmap /home/$USER/.Xmodmap"
(สำหรับรายการเริ่มต้นจำเป็นต้องระบุพา ธ สัมบูรณ์)
ทุกครั้งที่setxkbmap
มีการเปลี่ยนแปลงรูปแบบแป้นพิมพ์คุณจะต้องเรียกใช้xmodmap ~/.Xmodmap
อีกครั้งในเทอร์มินัล
การสร้าง ~/.xinitrc
สร้างไฟล์ในโฟลเดอร์บ้านของคุณ.xinitrc
ด้วย
touch .xinitrc
และสถานที่ในนั้น:
xmodmap ~/.Xmodmap
Xmodmap
ไฟล์ของคุณไม่ควรมีรายการในxmodmap -e " "
รูปแบบตามที่ใช้ใน terminal เพื่อตั้งค่าชั่วคราว มันจะต้องมีรายการในรูปแบบนี้:
keycode 65 = Tab
keycode 23 = Space
มันก็มักจะทำให้เกิดความสับสนซึ่งของต่างๆX
ไฟล์ (เช่น.xprofile
, .xinitrc
ฯลฯ ) จะอ่านเมื่อเริ่มต้น แต่.xinitrc
ดูเหมือนจะอ่านยังอยู่ภายใต้ 12.04 ในขณะที่.Xmodmap
หรือ.xinputrc
ยังไม่ได้อ่านด้วยตัวเอง