Arch Linux에서 Caps Lock 키를 Esc 키로 매핑하는 방법 리눅스에서 Caps Lock키를 Esc(이스케이프)에 매핑하고 싶습니다 .

내 OS는 Arch Linux amd64, Gnome ENV입니다.

아치 리눅스에서 Caps Lock키를 Esc(이스케이프)에 매핑하고 싶습니다 . 나는 명령을 실행 :

xmodmap -e 'clear Lock' -e 'keycode 0x42 = Escape'

잘 작동하지만 잠시 후 Caps Lock 키가 다시 작동합니다. 그리고 명령을 다시 실행해야합니다.

나는이 솔루션이 1 년 전에 잘 작동했다고 확신합니다. 내 문제가 뭐야? 아치 리눅스 OS에서 Caps Lock 키를 Escape 키로 영원히 매핑하도록 도와 줄 수 있습니까?



답변

다음 중 하나 (복잡성 증가) :

  1. setxkbmap키를 다시 매핑하는 데 사용 합니다 (데몬이 필요하지 않으며 데스크탑 환경 또는 창 관리자와 무관합니다). 전과 명령을 추가하는 것을 잊지 마십시오 exec gnome-session당신의 (또는 유사) 라인 ~/.xinitrc또는 ~/.xsession:

    setxkbmap -option caps:escape
    

setxkbmapextra / xorg-setxkbmap 패키지에서 찾을 수 있습니다 .

  1. dconf-editororg.gnome.desktop.input-sources.xkb-optionscaps:escape위에서 언급 한 필드에 추가하십시오 .
  2. gnome-session-settings → 시작 프로그램 → 추가 → 이름 = 이탈하기 위해 캡 잠금 재 맵핑, command =setxkbmap -option caps:escape
  3. 사용자 정의 키보드 레이아웃 생성

참고로, 와에 대한 grep ping /usr/share/X11/xkb/rules을 통해 XKB 규칙을 얻었습니다 .capsesc


답변

에서 사용하기 X위해 Arch Wiki Gnome 페이지에는 XkbOptions사용하여 키보드수정하는 지침 이 있습니다 .

dconf-editor를 사용하여 org.gnome.desktop.input-sources.xkb-options라는 키로 이동하여 원하는 XkbOptions (예 : ‘caps : swapescape’)를 목록에 추가하십시오.

콘솔 에서 동일한 효과를위한 사용자 정의 키맵 을 만들 수 있습니다 . 위해 필요한 변화와 개인 키 맵을 작성 CapsLock하고 Escape/usr/share/kbd/keymaps/i386/qwerty/yourmap다음 tar그와의 라인을 포함 /etc/vconsole.conf호출하기를 :

KEYMAP=yourmap

답변

Xorg.conf

파일을 편집하여이 작업을 수행 할 수 있습니다 /etc/X11/xorg.conf.d/00-keyboard.conf.

예제 파일 :

Section "InputClass"
        Identifier      "system-keyboard"
        MatchIsKeyboard     "on"
        Option          "XkbLayout" "us"
        Option          "XkbModel"  "pc104"
        Option          "XkbOptions" "caps:swapescape"
EndSection

예를 들어 caps:swapcaps,terminate:ctrl_alt_bkspesc와 caps를 바꾸고를 사용 하여 X를 강제 종료 할 수 있도록 여러 XkbOptions를 지정할 수 있습니다 CtrlAlt Backspace. 이에 대한 자세한 정보는에서 찾을 수 있습니다 man xkeyboard-config.

GUI

그놈 조정 도구 (gnome-tweak-tool 패키지)를 사용할 수도 있습니다. 를 클릭 Typing한 다음 Ctrl position메뉴 에서 원하는 것을 선택 하십시오 (아래 이미지 참조).


답변

xmodmap을 사용할 수 있습니다. 당신의 ~/.Xmodmap:

remove Lock = Caps_Lock
keysym Escape = Caps_Lock
keysym Caps_Lock = Escape
add Lock = Caps_Lock

(X를 시작할 때을 사용해야합니다 ~/.Xmodmap)


답변

! 위의 답변이 효과가없는 이유를 모르겠습니다. 여기 나를 위해 일하는 것이 있습니다. ~ / .Xmodmap에서

! 66 is the keycode of Caps_Lock
clear    Lock
keycode  66 = Escape

그리고

$ xmodmap ~/.Xmodmap

Fedora와 비 Gnome 창 관리자를 사용하고 있습니다. HTH


답변

파일 /etc/X11/xorg.conf.d/00-keyboard.conf을 사용하여 자동 생성 할 수도 있습니다 systemd-localed. 다음 명령을 사용하십시오.

localectl set-x11-keymap us "" "" caps:escape

또는 다른 유용한 옵션을 포함하여 :

localectl set-x11-keymap us,de "" "" caps:escape,grp:alt_caps_toggle,grp_led:caps,lv3:ralt_switch_multikey,terminate:ctrl_alt_bksp,eurosign:e,rupeesign:4

빠른 설명 :

  • CapsLk 기능 Esc
  • 두 개의 키보드 레이아웃을 전환합니다 us/ deAlt+CapsLk
  • CapsLk LED 는 활성화 된 레이아웃을 나타냅니다
  • 오른쪽 Alt ( RAlt)는 “멀티 키”입니다 ( 키 작성 참조 ).
    • RAlt+ e생성
    • RAlt+ 4생성 (방법과 유사 Shift+가 4생성 $)
  • Ctrl+ Alt+ Backspace명 X