i3에서 Altgr은 바인딩하지 않고 Alt를 바인딩합니다.

i3에서 Altgr은 바인딩하지 않고 Alt를 바인딩합니다.

나는 i3의 대부분의 키 바인딩에 Mod4를 사용하지만 다음과 같은 경우에는 Mod1을 사용합니다.

bindsym Mod1+a workspace a
bindsym Mod1+b workspace b
bindsym Mod1+c workspace c
bindsym Mod1+d workspace d
...

그러나 이는 altgr+<letter>를 사용하여 일부 문자를 입력하므로 바람직하지 않은 alt와 altgr을 모두 바인딩합니다.

xev는 alt가 Alt_L이고 altgr이 Alt_R이라고 말하지만 bindsym Alt_L+a작동하지 않습니다 .

답변1

궁극적으로 그것은 무엇에 달려 있습니다.xmodmapmod1에 대해 표시됩니다. 예를 들어, 그것이 표시되고 Alt_L동일한 Alt_R수정자에 있는 경우 충돌을 피하기 위해 후자를 다른 수정자(사용 가능한 5개 수정자 중)로 이동해야 합니다.

다음은 예를 제공하는 몇 페이지입니다.

사용 시 한 가지 함정은 xmodmap항상 그렇지는 않다는 것입니다.알다 키 기호(예: Alt_R)에 대한 적절한 키코드입니다. 이 문제가 발생하면 일반적으로 다음의 출력을 보고 문제를 해결할 수 있습니다.

xmodmap -pk

열쇠를 위해상징, 스크립트에서 해당 키코드를 할당합니다. 예를 들어, 한 컴퓨터 xmodmap -pk에서는

108         0xffea (Alt_R)  0x0000 (NoSymbol)       0xffea (Alt_R)

이 스크립트를 사용하여

keycode 108 = Alt_R
remove mod1 = Alt_R
add mod3 = Alt_R

출력을 다음과 같이 변경합니다.

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

이에:

xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3        Alt_R (0x6c)
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

(이 특정 시스템의 경우 해결 방법이 필요하지 않습니다.)

관련 정보