오른쪽 Alt를 왼쪽 컨트롤에 매핑

오른쪽 Alt를 왼쪽 컨트롤에 매핑

나는 왼쪽 통제관이라는 직업을 가지면서 right alt주요 업무를 수행할 수 있기를 원합니다 . 그래서 evdev 파일을 다음과 같이 편집했습니다.left controlleft control

<LALT> = 64;
<LCTL> = 37; // original binding 37
<SPCE> = 65;
<RCTL> = 105;
<RALT> = 37; // original binding: 108

그러나 이것은 작동하지 않습니다. 이제 두 키가 모두 작동하지 않습니다 ctrl. 어떻게 해야 하나요?

답변1

<FOO>변경한 키코드 파일은 키를 누를 때 커널 키보드 드라이버가 방출하는 키코드에 의해 XKB 레이아웃( )에 사용되는 기호 코드를 정의하는 XKB 맵입니다. 여기서 코드를 변경해도 해당 키에 의해 생성된 코드는 변경되지 않으며 XKB 레이아웃이 변경된 기호를 볼 때 처리한다고 생각하는 코드가 변경됩니다.

시스템 XKB 파일을 원래 상태로 복원할 수 있다고 가정하면 XKB가 원하는 작업을 수행하는 방식은 표준 레이아웃을 재정의하는 옵션을 로드하는 것입니다. ctrl:ralt_rctrl원하는 것과 가까운 기존 옵션( )이 있습니다 .

  # definition in /usr/share/X11/xkb/rules/evdev
  ctrl:rctrl_ralt       =       +ctrl(rctrl_ralt)
  # similar rule for swapped option?
  ctrl:ralt_rctrl       =       +ctrl(ralt_rctrl)

다음을 사용하여 로드할 수 있습니다 setxkbmap.

$ setxkbmap -option ctrl:ralt_rctrl

이것이 귀하의 요구 사항에 적합하다면 이 명령을 창 관리자 스크립트 .xprofile에 추가하여 영구적으로 만들 수 있습니다. GNOME에서는 추가 단계가 필요할 수 있습니다..xinitrcautorun

Alt_R여전히 as Ctrl_L대신 에 다시 매핑 하려면 Ctrl_R로컬 재정의 절을 만들어야 합니다. 내부의 시작점으로 기존 옵션을 사용하십시오 /usr/share/X11/xkb/symbols/ctrl. 바라보다XKB 수정에 대한 나의 수퍼유저 답변그리고 몇 가지 추가 리소스:

답변2

이 파일은 /usr/share/X11/xkb/keycodes/evdev"evdev 파일"이 아니며 X 키보드 번역 테이블(xkb)의 많은 소스 파일 중 하나입니다. 아니요, 로그인하면 로드되지 않습니다. 대신 컴파일러의 소스 파일 역할을 하며 xkbcomp, X 서버가 시작될 때 컴파일된 파일의 출력이 로드됩니다. 전체 주제는 다소 복잡하므로 임의로 변경하지 말고 제대로 작동할 것이라고 기대하지 마십시오. 또는 자신만의 키맵을 만드는 일반적인 방법은 다음과 같이 작성하는 것입니다.새로운파일을 삭제하고 이전 파일을 제자리에 보관하세요. 예시 보기신뢰할 수 없는 XKB 구성 가이드소개를 해보세요.

~/.Xmodmap올바른 Alt 키를 컨트롤 키로 사용하려면 이 파일을 그대로 두고 다음 두 줄을 사용하여 파일을 만드는 것이 더 좋습니다.

remove mod4 = Alt_R
add control = Alt_R

xmodmap -pk이전 상태를 살펴보고 이를 로드한 다음 xmodmap ~/.Xmodmap다시 실행하여 xmodmap -pk올바르게 보이는지 확인하여 작동하는지 테스트합니다.

결과적으로 right alt키는 여전히 자체 키코드 아래에 표시되지만 수정자로 처리되므로 control다른 키와 결합할 수 있습니다.

일부 디스플레이 관리자는 ~/.Xmodmap로그인 시 기본적으로 로드되며, 일부 새로운 디스플레이 관리자는 이 기능을 잃었으므로 이를 수행하도록 구성해야 합니다.

관련 정보