Map Caps Lock เพื่อควบคุมใน Linux Mint


13

ฉันใช้ Linux Mint เวอร์ชันล่าสุดกับ Cinnamon ฉันพยายามที่จะ map Caps LockไปCtrlแต่ฉันไม่สามารถคิดออกว่าจะทำมัน การค้นหาเว็บทั้งหมดที่ฉันทำไปได้นำฉันไปสู่ ​​Linux Mint เวอร์ชันเก่า (ไม่มีตัวเลือกรูปแบบแป้นพิมพ์ในการตั้งค่าของฉัน) ฉันจะทำสิ่งนี้ได้อย่างไร


3
คุณสามารถอัปเดตคำถามของคุณเพื่อระบุว่ารุ่นล่าสุดคืออะไร? คำถามนี้อาจจะอยู่ที่นี่มานานหลายปี
Keith Thompson

ในฐานะที่เป็นแนวทาง ... การเผยแพร่ลินุกซ์ 'ปัจจุบัน' เป็น # 18 (~ 2016) ดังนั้นการอ้างถึง " สิ่งล่าสุด " ของเกือบทุกอย่างในการคำนวณจะทำให้สี ' ข้อเท็จจริง ' จางหายไปอย่างรวดเร็ว (รวมถึงอันนี้)
จะ

คำตอบ:


18

xmodmapคุณสามารถทำได้ด้วย เพิ่มรายการต่อไปนี้ใน~/.xmodmap:

remove Lock = Caps_Lock
keysym Caps_Lock = Control_L
add Control = Control_L

xmodmap ~/.xmodmapและเรียกใช้คำสั่ง คุณสามารถใส่คำสั่งนี้ในไฟล์เริ่มต้นใด ๆ ที่ประมวลผลโดย WM หรือ DE ของคุณ สิ่งนี้จะทำงานใน X แต่มันจะทำงานโดยไม่คำนึงถึงสภาพแวดล้อมแบบกราฟิกที่คุณใช้


สิ่งที่จะเหมาะสำหรับคำสั่งนี้สำหรับผู้ใช้ Linux Mint Cinnamon
Zamicol

18

เจอแล้ว. มันถูกย้ายไปที่ส่วนการตั้งค่าภูมิภาค:

ไปที่การตั้งค่า> การตั้งค่าภูมิภาค> รูปแบบแป้นพิมพ์> การตั้งค่าและขยายส่วนตัวพิมพ์ใหญ่

UPDATE:

ใน Linux Mint 17.1 คุณสามารถไปถึงได้ทาง;

การตั้งค่าระบบ> ฮาร์ดแวร์> แป้นพิมพ์> เลย์เอาต์คีย์บอร์ด> ตัวเลือก> ลักษณะการทำงานของปุ่ม Caps Lock


6

ไม่จำเป็นต้องใช้สิ่งล้าสมัยxmodmapเนื่องจากมีxkbตัวเลือกอยู่แล้ว- ctrl:nocapsเช่นในเทอร์มินัล:

setxkbmap -option ctrl:nocaps

ด้วยคำพังเพย 3 คุณสามารถใช้dconf-editorและเพิ่ม ctrl:nocapsที่คุณXKB ตัวเลือกภายใต้องค์กร> คำพังเพย> เดสก์ทอป> แหล่งสัญญาณ :

ป้อนคำอธิบายรูปภาพที่นี่

หรือเปิดใช้งานCaps Lock เป็น Ctrlในgnome-tweak-toolภายใต้การพิมพ์> ตำแหน่งคีย์ Ctrl :

ป้อนคำอธิบายรูปภาพที่นี่


setxkbmap -option ctrl: nocaps ดูเหมือนว่าจะทำงานได้ดีกับ Debian Jessie ขอบคุณ
JánLalinský

อาจจะคุ้มค่าที่จะกล่าวถึงman keyboardและเป็นที่ตั้งถาวรใน/etc/default/keyboard
jchook

3

สำหรับ LinuxMint 17 ที่มี KDE นั่นคือ: การตั้งค่าระบบ> อุปกรณ์ป้อนข้อมูล> คีย์บอร์ด> ขั้นสูง> ตำแหน่งปุ่ม Ctrl


3

ฉันตระหนักดีว่านี้แล้วมีคำตอบที่ได้รับการยอมรับ แต่นี่คือหนทางที่แท้จริงหนึ่งที่จะเปลี่ยนแปลงไปCaps Lock ctrlสิ่งนี้ใช้ได้กับ Linux ทุกรุ่นทุก distros สำหรับทั้งระบบ (คอนโซล, X, อะไรก็ตาม) มันทำให้การทำแผนที่ในเคอร์เนลที่มันควรจะเป็น

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

เพิ่มลงในสคริปต์เริ่มต้น (เช่น/etc/rc.localหรือสร้างของคุณเอง)

บนเดเบียน (และอนุพันธ์) dumpkeys / loadkeys เป็นส่วนหนึ่งของkbdแพ็คเกจหากด้วยเหตุผลบางอย่างมันยังไม่ได้ติดตั้ง


Unf ฉันไม่สามารถใช้งานได้กับ Linux Mint 18.1 พยายามทั้งสองด้วยตนเองเป็นรูทและเพิ่มลง/etc/rc.localในและลองล็อกเอาต์และรีสตาร์ท
Roy Truelove

ไม่สามารถใช้กับ Debian Jessie ของฉันได้
JánLalinský

1

ใน Mint 17.2 ให้เลือกการตั้งค่า -> คีย์บอร์ด -> เลย์เอาต์ -> ตัวเลือกเลือกการทำงานของปุ่ม Caps Lock เลือก "ทำให้ Caps Lock เป็นตัวควบคุมเพิ่มเติม"


0

การอัพเดตเธรดนี้สำหรับ Linux Mint 18.3 (เบต้า) เนื่องจากตัวเลือกนี้ดูเหมือนจะเป็นเป้าหมายที่เคลื่อนไหว

  1. คลิกที่ Control Center จาก Start Menu และเลือกปุ่ม Keyboard
  2. ในหน้าต่างป๊อปอัพเลือกแท็บเลย์เอาต์
  3. ในหน้าต่างเลย์เอาต์ คลิกที่ปุ่มตัวเลือกไปทางด้านล่าง
  4. ในรายการตัวเลือกขยายอันที่ระบุว่า "ตำแหน่งคีย์ Ctrl"
  5. ที่ด้านล่างเลือกช่องทำเครื่องหมายถัดจาก "สลับ Ctrl และ Caps Lock"

0

นี่คือรุ่นกลั่น:

0) ตรวจสอบว่า Caps Lock ปิดอยู่

1) สร้างไฟล์ต่อไปนี้:

/etc/udev/hwdb.d/10-caps-modifier.hwdb
---
evdev:atkbd:dmi:*            # built-in keyboard: match all AT keyboards for now
  KEYBOARD_KEY_3a=leftctrl   # bind capslock to leftctrl

2) เรียกใช้คำสั่งต่อไปนี้:

$ systemd-hwdb update

3) เรียกใช้คำสั่งต่อไปนี้เพื่อให้การแมปใหม่มีผลทันที:

$ udevadm trigger

สิ่งนี้ถูกทดสอบบน Ubuntu 18.04.2 LTS ที่ใช้ Xfce การแมปใหม่ทำงานได้ดีในคอนโซล tty และระบบอินพุต X

ขอขอบคุณที่หน้านี้สำหรับรายละเอียดทั้งหมด: https://wiki.archlinux.org/index.php/Map_scancodes_to_keycodesแต่ใช้ความพยายามอย่างมากในการแยกวิเคราะห์สิ่งที่จำเป็นต้องทำจริง ๆ

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