ฉันจะปิดการใช้งานหรือเปลี่ยนปุ่ม caps lock บนแป้นพิมพ์ได้อย่างไร


10

เรามีคีย์บอร์ดตามหลักสรีรศาสตร์ในที่ทำงานซึ่งฉันไม่คุ้นเคยทั้งหมด ฉันดูเหมือนจะกดปุ่ม capslock ต่อไปในขณะที่ฉันอยู่vimและมันก็เริ่มรำคาญ ฉันจะปิดการใช้งานคีย์นี้และหรือเปลี่ยนเป็นคีย์อื่นได้อย่างไร


ที่เกี่ยวข้อง: Remapping หมวกล็อคที่จะหลบหนีและเมนูเขียนบนคอนโซลลินุกซ์ คุณต้องการสิ่งนี้เฉพาะใน X หรือในคอนโซล OS ของคุณ (อัน?) หรือไม่?
Gilles 'หยุดความชั่วร้าย'

คำตอบ:


7

วิธีปิดใช้งานที่รวดเร็วและสกปรกคือxmodmap:

$ xmodmap -e 'clear Lock'

คำถามต่อไปคือสิ่งที่คุณต้องการจะทำกับมัน? ฉันมักจะทำให้มันเป็นCtrlกุญแจสำคัญ:

$ xmodmap -e 'keycode 66 = Control_L'

ขึ้นอยู่กับ DE / WM ของคุณอาจเป็นไปได้ในการกำหนดค่า GUI ตัวอย่างเช่น Gnome มีตัวเลือก "รูปแบบแป้นพิมพ์" บนแผงควบคุมพร้อมแท็บตัวเลือกที่มีการปรับเปลี่ยนรูปแบบที่คล้ายกันหลายแบบ


Arrr เร็วเกินไป 4 me;) เอาล่ะดังนั้นเพิ่งเพิ่มsetxkbmapคำตอบให้กับฉันแล้ว ...
rozcietrzewiacz

6

xmodmapใช้

การตั้งค่าเพื่อปิดการใช้งาน capslock ของคุณคือ

remove Lock = Caps_Lock

สิ่งนี้จะอยู่ใน.xmodmapไฟล์ของคุณ

ตัวเลือกอื่น - เพื่อปิดการใช้งานชั่วคราวคุณสามารถใช้setxkbmapตัวเลือก:

setxkbmap -option ctrl:nocaps

จากนั้นเมื่อต้องการคืนค่าลักษณะการทำงานปกติ: setxkbmap -option


3

การใช้ xmodmap จะเปลี่ยนการเชื่อมโยงคีย์ขณะที่อยู่ใน X เท่านั้นหากคุณต้องการใช้บนคอนโซลมันต่างกันเล็กน้อย การเปลี่ยนแปลงด้านล่างจะแก้ไข X รวมถึงคอนโซลดังนั้นฉันจึงทำเช่นนี้เสมอ

สำหรับLinux ให้เพิ่มส่วนนี้ใน /etc/rc.local (หรือสร้างสคริปต์ init):

(echo $(dumpkeys |grep -i keymaps); echo keycode 58 = Control) | loadkeys -

สำหรับSolarisบนพีซีที่มีการแก้ไขแป้นพิมพ์ USB /usr/share/lib/keytables/type_6/reset(สำหรับคีย์บอร์ดชนิดอื่นคุณควรแทนที่type_6ด้วยประเภทที่เหมาะสม):

ค้นหาบรรทัดนี้:

key 57   all shiftkeys+capslock

แทนที่ด้วยสิ่งนี้:

key 57   all shiftkeys+leftctrl up shiftkeys+leftctrl

โดยปกติคุณสามารถแทนที่Controlด้วยรหัสที่คุณต้องการ


0

นี่คือส่วนหนึ่งของฉัน.xmodmaprcที่กลายCapsLockเป็นEscและในทางกลับกัน:

clear lock

keycode 9 = Caps_Lock ISO_Next_Group Caps_Lock ISO_Next_Group
keycode 66 = Escape NoSymbol Escape

add lock = Caps_Lock

คุณสามารถตรวจสอบรหัสได้โดยเรียกใช้xevและเพียงแค่กดปุ่มที่คุณต้องการตรวจสอบ


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