วิธีการสลับ esc และ caps lock อย่างถาวรใน xfce / xubuntu


15

ฉันติดตามโพสต์ไปซักพักแล้วและมันบอกว่าจะทำ~/.xmodmapไฟล์แบบนี้:

! Swap caps lock and escape
remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock

ผมและตอนนี้ฉันสามารถสลับescและด้วยการทำcaps lock xmodmap ~/.xmodmapฉันต้องการให้สิ่งนี้เป็นแบบถาวรดังนั้นฉันจึงเพิ่มคำสั่งนั้นลงไป~/.bash_profileแต่ดูเหมือนจะไม่ทำงาน xmodmapฉันยังคงต้องด้วยตนเอง ในฐานะที่เป็นภาษาอังกฤษกลางคันฉันอยากจะลองใช้คีย์บอร์ดใหม่อีกครั้ง} :-) แต่ฉันรู้ว่าต้องมีวิธีที่ดีกว่า ฉันจะทำให้งานนี้ทำงานอย่างถาวรได้อย่างไร

คำตอบ:


13

ดำเนินการ xfce4-settings-manager ในSession and Startup-> Application autostartเพิ่มรายการซึ่งดำเนินการxmodmap ~/.xmodmap

หรือเปลี่ยนชื่อไฟล์เป็น ~/.Xmodmap


ฉันเปลี่ยนชื่อไฟล์ (ใช้งานได้!) แต่ฉันแปลกใจที่วิธีการ. bash_profile ของฉันไม่ทำงาน ฉันคิดว่า bash-fu ของฉันไม่อ่อนแอ: P
Dan Ross

6

xkb มีตัวเลือกที่ทำเช่นนั้น:

caps:swapescape      Swap ESC and Caps Lock

เพื่อให้คุณสามารถเพิ่ม1

/usr/bin/setxkbmap -option "caps:swapescape"

ไปยังรายการ autostart XFCE ของคุณ


1: อาจมีวิธีที่ดีกว่าในการทำเช่นนี้ แต่ฉันไม่ใช่ผู้ใช้ XFCE


เยี่ยมมากฉันจะให้ช็อตเมื่อรีบูตครั้งต่อไป Xmodmap ไม่ทำงานอย่างสมบูรณ์แบบสำหรับฉันฉันต้องเรียกมันด้วยตนเองหลังจากเปลี่ยนภาษาแป้นพิมพ์เช่น ฉันยังไม่ได้อยู่ใน XFCE อีกต่อไป นั่นยอดเยี่ยม แต่ฉันต้องการการควบคุมที่บ้าน (Arch) และประสานงานกับสิ่งที่เพื่อนร่วมงานของฉันใช้ในที่ทำงาน (vanilla Ubuntu) ได้ดียิ่งขึ้น
Dan Ross

@DanRoss - ถ้าคุณใช้gnome (DE เดียวที่ฉันคุ้นเคย) มันง่ายเหมือนการเพิ่มcaps:swapescapeของคุณxkb-options
don_crissti

3

ใน Xfce ใน openSUSE ฉันสลับของฉันEscและCaps Lockปุ่มโดยการแก้ไข/etc/X11/xorg.conf.d/00-keyboard.confไฟล์ตามที่อธิบายไว้ในวิกิพีเดีย ArchLinux ฉันเพิ่มบรรทัดที่ระบุว่า

Option "XkbOptions" "caps:swapescape"

ไปยังส่วนที่ขึ้นต้นด้วย

Section "InputClass"

จากนั้นรีสตาร์ทคอมพิวเตอร์ของฉันและทำโฉนดเสร็จแล้ว

สำรองไฟล์ก่อนที่จะแก้ไข หากคุณทำผิด gui ของคุณอาจไม่เริ่มและคุณจะต้องกู้คืนหรือแก้ไขไฟล์จากพรอมต์คำสั่ง ใน Ubuntu ฉันจำได้ว่าฉันต้องใส่เพิ่มบรรทัดตัวเลือกในไฟล์การกำหนดค่าแป้นพิมพ์ที่มีชื่อแตกต่างกัน


2

การใช้. Xmodmap ไม่ได้ผลสำหรับฉัน

อย่างไรก็ตาม xmodmap man แบบย่อบอกว่ามันใช้งานได้และทำ:

.xmodmaprc

ซึ่งสามารถดำเนินการได้:

xmodmap .xmodmaprc

แก้ไข: ack ... ฉันผิด ... ค่าเริ่มต้นเปลี่ยนไปไม่กี่ปีที่แล้วเป็น. Xmodmap จาก. xmodmaprc การสร้างไฟล์. Xmmap ทำให้ xfce ของฉันโหลด "ตลก" ใน. bash_profile ฉันใส่:

xmodmap .xmodmaprc

จากนั้นก็ใช้งานได้และฉันมีสคริปต์ที่รีสตาร์ท Xfce ของฉันเพื่อให้ใช้งานได้


0

ฉันได้ทำการปรับปรุงที่คล้ายกัน ( /usr/bin/setxkbmap -variant altgr-intl -option 'ctrl:nocaps') โดยการใส่ใน autostart แอปพลิเคชันตามที่กล่าวโดยคำตอบอื่น อย่างไรก็ตามในบางจุดมันก็หยุดทำงานสำหรับฉันดังนั้นนี่เป็นวิธีการทางเลือกของฉัน:

จากเมนูการตั้งค่าเลือก "ไดรฟ์และสื่อแบบถอดได้" จากนั้นเลือกแท็บ "อุปกรณ์อินพุต" เปิดใช้งานตัวเลือกเพื่อ "เรียกใช้โปรแกรมโดยอัตโนมัติเมื่อเชื่อมต่อแป้นพิมพ์ USB" และป้อนคำสั่ง setkbmap ที่คุณต้องการ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.