ฉันจะสลับ Ctrl ซ้ายกับ Left Alt บนแป้นพิมพ์ได้อย่างไร


39

ไม่มีตัวเลือกดังกล่าวในตัวเลือกเค้าโครงแป้นพิมพ์ที่น่าเศร้า

ฉันจะทำด้วยตนเองได้อย่างไร


1
คำตอบนั้นเป็นคำตอบของฉันที่นี่: askubuntu.com/questions/23491/…
djeikyb

คำตอบ:


47

เมื่อต้องการทำสิ่งนี้ด้วยตนเองคุณต้องการสร้างไฟล์ชื่อ. Xmodmap ในโฮมไดเร็กตอรี่ของคุณ คุณสามารถทำได้โดยใช้คำสั่งจากเทอร์มินัล

~$ gedit ~/.Xmodmap

ที่จะสร้างไฟล์และเปิดใน gedit เพิ่มบรรทัดต่อไปนี้ลงในไฟล์:

clear control
clear mod1
keycode 37 = Alt_L Meta_L
keycode 64 = Control_L
add control = Control_L Control_R
add mod1 = Alt_L Meta_L

บันทึกไฟล์และออกจาก gedit ครั้งต่อไปที่คุณลงชื่อเข้าใช้การแมปใหม่จะใช้งานได้ หากต้องการให้การตั้งค่ามีผลทันทีให้รันคำสั่งต่อไปนี้:

~$ xmodmap ~/.Xmodmap

มีโอกาสที่รหัสข้างต้นแตกต่างกันในคอมพิวเตอร์ของคุณ หากข้างต้นไม่ได้ผลให้ลองเรียกใช้โปรแกรมxevจากบรรทัดคำสั่ง Xev จะสร้างหน้าต่างเล็ก ๆ ใหม่ที่มุมของหน้าจอของคุณ หากคุณเริ่มกดปุ่มบนแป้นพิมพ์ของคุณคุณจะได้รับข้อมูลการจับคู่คีย์ทั้งหมดสำหรับการกดปุ่มนั้น

~$ xev

ตัวอย่างเช่นถ้าฉันกด“ q” เมื่อ xev กำลังทำงานฉันจะได้ผลลัพธ์ต่อไปนี้:

KeyRelease event, serial 33, synthetic NO, window 0x4c00001,
root 0xb6, subw 0x0, time 9127480, (21,-17), root:(22,36),
state 0x0, keycode 24 (keysym 0x71, q), same_screen YES,
XLookupString gives 1 bytes: (71) "q"
XFilterEvent returns: False

keycode 24เป็นข้อมูลที่เราดำเนินการ กดปุ่ม Ctrl ซ้ายและปุ่ม Alt ด้านซ้ายในขณะที่เรียกใช้ xev เพื่อรับรหัสของคุณเพื่อยืนยันว่าเป็นรหัสเดียวกับปุ่มที่ใช้ด้านบน

หวังว่าจะช่วย


ไม่มีไฟล์ใน Ubuntu 16.04
ลด

1
สิ่งนี้เคยทำงานกับ 16.04 แต่ไม่ใช่ใน 17.10 อีกต่อไป
Niklas

2
ฉันต้องวิ่งใหม่xmodmap ~/.Xmodmapทุกครั้งที่ฉันรีบูท ฉันจะทำให้มันเป็นแบบอัตโนมัติได้อย่างไร
Mwirabua Tim

askubuntu.com/a/749662/894748 @MwirabuaTim ตรวจสอบนี้
VnC

16

หากคุณไม่ต้องการเจ็บปวดxmodmapคุณสามารถทำได้ผ่านการตั้งค่าคำพังเพย

sudo apt-get install gnome-tweak-toolเปิดเปิดไปที่พิมพ์และเปลี่ยนตัวเลือกตำแหน่งคีย์ Ctrlเพื่อสลับซ้าย Alt และ Ctrl :

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

คุณอาจจะสามารถทำสิ่งนี้ผ่านgsettingsแต่ไม่แน่ใจว่าชื่อรายการการกำหนดค่าที่แน่นอน


ฉันพยายามที่จะใช้เครื่องมือปรับแต่งใน Ubuntu gnome 15.10 และมันจะไม่สนใจ "การแลกเปลี่ยนคีย์ซ้ายสลับกับการควบคุมซ้าย" ความคิดใด ๆ ฉันกำลังพยายามเปลี่ยน L-SUPER แต่คิดว่ามันเป็นรหัสเดียวกัน
Dori

กำหลอด แต่บางทีคุณต้องรีสตาร์ทหรือออกจากระบบและกลับเข้าสู่ระบบจัดการหน้าต่าง?
hwjp

ลองสิ่งนี้และไม่ต่าง ...
Dori

4
ดูเหมือนว่า "Typing" ถูกลบใน Ubuntu 17.10 ตอนนี้อยู่ใน "Keyboard & Mouse" -> "ตัวเลือกเค้าโครงเพิ่มเติม"
Wurstsalat

อยู่ภายใต้ "ตัวเลือกเค้าโครงเพิ่มเติม" ตอนนี้
ZiglioUK

10

เพียงแค่สร้าง ~ / .Xmodmap โดยใช้โปรแกรมแก้ไขข้อความอย่างง่ายและรีสตาร์ท Xserver


!
! based on: http://www.emacswiki.org/emacs/SwapControlAltAndCapsLock#toc8
!

!----------------------------------------------------------
! Swap Control and Alt keys, both sides
!----------------------------------------------------------

! First clear all modifiers & control
clear control
clear mod1
clear mod4

! Swap Control_L and Alt_L
keycode  64 = Control_L
keycode  37 = Alt_L Meta_L

! Menu becomes Alt_R Meta_R (AltGr)
keycode 135 = Alt_R Meta_R

! Define Control_R and Alt_R similar to Control_L and Alt_L
keycode 108 = Control_L
keycode 105 = Alt_L Meta_L

! We need to set keycodes first, as some programs (emacs!) read
! the key names and seem to ignore what's below.
add mod1    = Alt_L Alt_R Meta_L Meta_R
add mod4    = Super_L Super_R
add control = Control_L Control_R


!------------------------------------------
! Caps_Lock becomes an additional BackSpace
!------------------------------------------
remove lock = Caps_Lock
keysym Caps_Lock = BackSpace

สิ่งนี้ทำงานได้ดีเหมือนกับ Crouton Ubuntu Unity บน Chromebook ฉันต้องวิ่งxmodmap ~/.Xmodmapเพื่อให้มันโหลด ฉันไม่แน่ใจว่าฉันต้องทำอย่างไรในการรีบูตแต่ละครั้ง
swt83

@ swt83: คุณอาจสนใจสิ่งนี้: github.com/frgomes/carpalxซึ่งสาธิตวิธีการกำหนดแป้นพิมพ์ใหม่ทั้งหมดหากคุณต้องการ
Richard Gomes

0

หากคุณต้องการให้ปุ่ม Ctrl อยู่ในตำแหน่งปกติในขณะที่ใช้แอปพลิเคชันเทอร์มินัลเทียบกับแอป GUI ของคุณคุณสามารถดู Kinto ได้

https://github.com/rbreaves/kinto

นี่คือส่วนสำคัญของสิ่งที่มันทำมันค่อนข้างง่าย แต่ฉันสร้างตัวติดตั้ง Kinto ที่ใช้ systemd และทำงานบนระบบที่ใช้ x11 ซึ่งจะสร้างบริการ / สคริปต์ด้วย xprop ที่ฟังชื่อแอปที่ใช้งานของคุณ

https://gist.github.com/rbreaves/f4cf8a991eaeea893999964f5e83eebb

ฉันต้องการสนับสนุน Wayland และ x11 ด้วยโซลูชันเดียว แต่ xprop ไม่ได้มีความหมายสำหรับโลกนั้น

นี่เป็นการพิสูจน์แนวคิดสำหรับ KDE Plasma 5 Wayland https://github.com/rbreaves/applet-window-title/commit/ff17e694579a52a9848d6bea87b2d11f22033718

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