사용자 정의 setxkbmap 옵션 추가

사용자 정의 setxkbmap 옵션 추가

setxkbmap을 사용하여 왼쪽 Shift와 왼쪽 Control 교체xkbcomp와 일부 수정자 키를 교환하는 방법을 설명합니다. 그러나 전체 레이아웃 정의와 함께 xkbcomp를 사용하는 대신 사용자 정의 setxkbmap 옵션을 추가하고 싶습니다. 마찬가지로 setxkbmap -option local:swap_lwin_lctrl/usr/share/X11/xkb(패키지가 업그레이드되면 덮어쓰게 됨)의 기존 파일을 수정하지 않고 오른쪽 win과 오른쪽 제어권을 바꾸고 싶습니다.

답변1

나는 같은 문제를 가지고있다. 문서에서 올바른 구문은 다음과 같다고 추측할 수 있습니다.

$ setxkbmap -I$HOME/.config/xkb -option mine:accent

참고: ~-I옵션 에서는 사용할 수 없습니다.

그리고

~/.config/xkb/symbols/azerty_altgr

partial default
xkb_symbols "accent" {
    include "level3(ralt_switch)"
    key <AE02>  { [  NoSymbol, NoSymbol, eacute,      NoSymbol ] };
    key <AE07>  { [  NoSymbol, NoSymbol, egrave,      NoSymbol ] };
    key <AE09>  { [  NoSymbol, NoSymbol, asciicircum, NoSymbol ] };
    key <AE10>  { [  NoSymbol, NoSymbol, agrave,      NoSymbol ] };
};

또는 가지고 있는 어떤 기호 파일이든

~/.config/xkb/rules/evdev

! option        =   symbols
  mine:accent   =   +azerty_altgr(accent)

불행히도 작동하지 않습니다.


내가 찾은 유일한 해결책은 다음과 같습니다. 위와 동일한 파일을 사용하십시오. 모든 기본 옵션 설정 을 사용하십시오 setxkbmap -option caps:swapescape,whatever. 그 다음에:

$ setxkbmap -print > tempfile.txt

tempfile.txt줄에 사용자 정의 옵션을 추가하도록 편집하십시오 xkb_symbols.

xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+us+fr:2+inet(evdev)+capslock(swapescape)+azerty_altgr(accent)"  };
    xkb_geometry  { include "pc(pc104)" };
};

마침내:

xkbcomp -I$HOME/.config/xkb tempfile.txt $DISPLAY

이는 다양한 옵션으로 일반화될 수 있습니다. 이 솔루션은 다음과 같이 더 이상 사용되지 않습니다.아치리눅스 위키.

관련 정보