Ánh xạ lại Caps Lock với xmodmap không hoạt động


10

Khi tôi lập trình, tôi muốn trao đổi các khóa này:

EscTab CtrlCapsLock

Trong ~/.xmodmap, tôi đã chỉ định các ánh xạ lại này:

keycode 66 = Control_L
keycode 37 = Caps_Lock
keycode 23 = Escape
keycode 9 = Tab

Các phím EscapeTabhoán đổi, không có vấn đề, nhưng thay vì Caps_LockControl_Lhoán đổi, cả hai phím đó đều trở thành Caps_Lock.

Dù tôi cố gắng làm gì, các phím Điều khiển không được gán cho Caps_Lock(mã khóa 66). Nếu tôi rời khỏi keycode 66 =, khóa không được gán, nhưng khi tôi gán Control_Lhoặc Control_Rnó không hoạt động. Nhưng, nếu tôi gán một số khóa khác, ví dụ keycode 66 = Tab, nó được gán, không có vấn đề gì.

Giống như xmodmap của nó chỉ không muốn các phím Caps Lock và Control được hoán đổi. Thực sự bực bội. Bất kỳ trợ giúp / con trỏ sẽ thực sự hữu ích.

PS: Tôi đang sử dụng Archlinux.

Câu trả lời:


8

Các xmodmap (1) người đàn ông có một ví dụ cho chính xác này

   !
   ! Swap Caps_Lock and Control_L
   !
   remove Lock = Caps_Lock
   remove Control = Control_L
   keysym Control_L = Caps_Lock
   keysym Caps_Lock = Control_L
   add Lock = Caps_Lock
   add Control = Control_L

nhưng nếu bạn muốn hoàn thành việc đó theo cách bạn đã bắt đầu, tôi nghĩ bạn cần thêm ít nhất các dòng removeadd

   remove Lock = Caps_Lock
   remove Control = Control_L
   keycode 37 = Caps_Lock
   keycode 66 = Control_L
   add Lock = Caps_Lock
   add Control = Control_L

Tôi đoán đó là trường hợp dựa trên đoạn này

   add MODIFIERNAME = KEYSYMNAME ...
           This adds all keys containing the given keysyms  to  the  indi‐
           cated  modifier  map.  The keysym names are evaluated after all
           input expressions are read to make it easy to write expressions
           to swap keys (see the EXAMPLES section).

điều này làm cho âm thanh giống như thay đổi sửa đổi (thay đổi, kiểm soát, v.v.) không được áp dụng cho đến khi bạn cũng chạy nó.

(Và hợp lý như vậy với remove)


Tôi đã đọc manpage và gán lại các phím Caps_Lock và Control_L theo ví dụ. Nhưng, tôi đã tò mò tại sao ánh xạ lại các phím theo cách được đề cập trong OP không hoạt động. Nó là một lỗi hay cái gì đó?
Aby James

Có vẻ như đó là cách nó hoạt động. Xem câu trả lời cập nhật của tôi.
Mikel

4

Câu trả lời liên quan lỏng lẻo: Tôi muốn sắp xếp lại phím khóa mũ để điều khiển bên trái, để điều khiển bên trái thực sự không bị ảnh hưởng. Trang man xmodmap cũng cung cấp giải pháp:

    keycode 66 = Control_L
    clear Lock
    add Control = Control_L
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.