특정 키를 고정시키세요

특정 키를 고정시키세요

내가 찾았어xorg에서 고정 키 활성화(훌륭한 데스크탑 관리자)수퍼유저에서는 다음을 통해 고정 키를 활성화할 수 있음을 보여줍니다.

xkbset sticky -twokey

Alt Gr이는 예상대로 작동하지만 제 경우에는 모든 수정자 키 대신 특정 키( )만 고정하는 것을 선호합니다 . 이것을 구성할 수 있나요? 그렇다면: 어디에서?

답변1

X11에서 이를 달성하는 한 가지 방법은 XKB를 사용하고 올바른 Alt 키를 현재 키로 설정하는 것입니다.래치 모드AltGr. 이 문제를 해결하는 방법에는 여러 가지가 있습니다.

옵션 1

현재 키보드 레이아웃을 파일로 내보내고 오른쪽 Alt 키(AltGr)의 동작만 변경한 후 X로 다시 로드하여 기본 레이아웃을 재정의할 수 있습니다.

  1. xkbcomp $DISPLAY current.xkb현재 키보드 레이아웃을 내보내려면 실행하세요 .

  2. 파일을 열고 current.xkb다음 코드 조각을 찾으세요.

    key <RALT> {
        type= "ONE_LEVEL",
        symbols[Group1]= [ ISO_Level3_Shift ]
    };
    
  3. 다음과 같이 변경합니다.

    key <RALT> {
        type= "ONE_LEVEL",
        symbols[Group1]= [ ISO_Level3_Shift ],
        actions[Group1]= [ LatchMods(mods=AltGr) ]
    };
    
  4. 파일을 저장하고 실행하여 xkb current.xkb $DISPLAY새 레이아웃을 적용합니다.

지침

  1. 새 레이아웃은 현재 X 세션에만 적용됩니다. 로그인 후 자동으로 다시 로드할 수 있습니다. 창 관리자를 사용하는 경우에는 또는 xkb current.xkb $DISPLAY에 추가하기만 하면 됩니다 . 데스크탑 환경을 사용하는 경우 데스크탑 환경은 일반적으로 키보드 레이아웃을 자체 방식으로 처리하고 로컬 구성을 재정의할 수 있으므로 이는 약간 까다로울 수 있습니다. . 해당 문서를 확인하거나 시도해 보십시오..xinitrc.xprofile옵션 2다음과 같은.

  2. 여러 키보드 언어를 사용하는 경우 내보낸 각 xkb 파일에 대해 위 단계를 반복하고 적절한 경우 어떻게든(예: 각 언어에 대한 단축키 사용) 로드해야 합니다.

옵션 2

새로운 XKB 옵션을 생성하여 AltGr 키의 원하는 동작을 활성화한 다음 언어 레이아웃과 함께 활성화할 수 있습니다.

  1. /usr/share/X11/xkb/symbolsaltgr다음 내용으로 이름이 지정된 파일을 만듭니다 .

    partial alphanumeric_keys
    xkb_symbols "latch" {
        key <RALT> {
            symbols = [ ISO_Level3_Shift ],
            actions = [ LatchMods(mods=AltGr) ]
        };
    };
    
  2. evdev파일을 열고 /usr/share/X11/xkb/rules다음 줄을 찾으세요 ! option = symbols. 그 뒤에 새 줄을 추가하고 altgr:latch = +altgr(latch)다음과 같이 표시됩니다.

    ! option  = symbols
      altgr:latch = +altgr(latch)
      ...
    

    +altgr(latch)방법다음 위치에 있는 파일의 latch그룹 사용altgr/usr/share/X11/xkb/symbols.

이제 새 옵션을 활성화해야 합니다. 다음 중 하나를 수행할 수 있습니다.

  1. 및 를 해당 언어 및 변형으로 setxkbmap -layout us -variant altgr-intl -option altgr:latch대체하여 새 옵션을 활성화하려면 실행하세요 . 이는 현재 X 세션을 유지하므로(테스트에 유용함) 로그인 시 자동으로 로드되도록 추가 할 수 있습니다 .usaltgr-intl.xinitrc.xprofile

  2. systemd를 사용하는 경우 실행하여 sudo localectl --no-convert set-x11-keymap us pc104 altgr-intl altgr:latch키보드 구성을 업데이트하세요./etc/X11/xorg.conf.d

  3. 데스크톱 환경을 사용하는 경우 키보드 레이아웃이 로드될 때 옵션을 활성화하도록 지시하는 방법이 있을 수 있습니다. 나는 GNOME이 dconf를 사용한다는 것을 알고 있으며 org.gnome.desktop.input-sources.xkb-options.

경고하다

의 XKB 파일은 /usr/share/X11/xkb직접 편집할 수 없으며 시스템 업데이트를 수행할 때 덮어쓸 수 있습니다. XKB 구성을 변경하는 "올바른 방법"은 다음과 같습니다.너무 복잡한필요할 때 새 옵션을 (재)적용하는 스크립트를 생성하는 것이 좋습니다.

관련 정보