xmodmap으로 Caps Lock 재 맵핑이 작동하지 않습니다


10

프로그래밍 할 때이 키를 교환하고 싶습니다.

EscTab CtrlCapsLock

에서 ~/.xmodmap다음과 같이 다시 매핑을 지정했습니다.

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

EscapeTab키 교환, 아무 문제지만, 대신 Caps_LockControl_L스와핑, 모두 그 열쇠가된다 Caps_Lock.

내가 무엇을 시도하든 Control 키는 할당되지 않습니다 Caps_Lock(키 코드 66). 나는두면 keycode 66 =, 키는 않은 할당,하지만 내가 할당 할 때 Control_LControl_R, 그냥 일을하지 않습니다. 그러나 다른 키를 할당하면 (예 keycode 66 = Tab:) 아무런 문제가 없습니다.

xmodmap과 마찬가지로 Caps Lock 및 Control 키가 바뀌기를 원하지 않습니다. 정말 실망 스럽습니다. 모든 도움 / 포인터가 정말 도움이 될 것입니다.

추신 : 저는 Archlinux를 사용하고 있습니다.

답변:


8

xmodmap을 (1) 매뉴얼 페이지는 정확히 이것에 대한 예를 가지고

   !
   ! 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

당신이 당신이 시작하는 방법을 일을 완료하려면하지만, 난 당신이 적어도 추가 할 필요가 있다고 생각 remove하고 add선을

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

이 단락을 기반으로 한 경우라고 생각합니다.

   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).

수정 자 변경 (시프트, 컨트롤 등)이 실행될 때까지 적용되지 않는 것처럼 들립니다.

(와 논리적으로 동일 remove)


맨 페이지를 읽고 예제에 따라 Caps_Lock 및 Control_L 키를 다시 할당했습니다. 그러나 OP에서 언급 한 방식으로 키를 다시 매핑하는 것이 왜 효과가 없는지 궁금했습니다. 버그입니까?
Aby James

그것이 작동하는 방식 인 것 같습니다. 업데이트 된 답변을 참조하십시오.
Mikel

4

느슨하게 관련된 답변 : 실제 왼쪽 컨트롤을 그대로 유지하면서 caps lock 키를 왼쪽 컨트롤에 다시 매핑하고 싶었습니다. xmodmap 매뉴얼 페이지에서도 솔루션을 제공합니다.

    keycode 66 = Control_L
    clear Lock
    add Control = Control_L
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.