xmodmap: Alt_R을 Mod3 그룹에 추가

xmodmap: Alt_R을 Mod3 그룹에 추가

+ 에 영향을 주지 않고 특정 i3 작업을 Alt_R+ 에 바인딩하고 싶습니다 . 두 Alt 키 모두 수정자 그룹 에 연결됩니다 .spaceAlt_LspaceMod1

$ xmodmap -pm | grep mod1
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)

그래서 나는 Alt_R그것을 제거 하고 (현재 비어 있음) Mod1에 추가하려고 합니다.Mod3

하지만 삭제를 실행하려고 하면 다음 오류가 발생합니다.

$ xmodmap -e 'remove Mod1 = Alt_R'
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  118 (X_SetModifierMapping)
  Value in failed request:  0x17
  Serial number of failed request:  11
  Current serial number in output stream:  11

나는 이것을 시도했고 mod1같은 Mod1결과를 얻었습니다. 나는 심지어 시도했다 clear:

$ xmodmap -e 'clear Mod1'
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  118 (X_SetModifierMapping)
  Value in failed request:  0x17
  Serial number of failed request:  8
  Current serial number in output stream:  8

내가 뭘 잘못했나요?

답변1

나는 거의 동일한 작업(i3과 함께 사용하기 위해 하이퍼 바인딩)을 시도하고 있는데 동일한 오류가 발생합니다. 수정자를 설정하기 전에 지우는 것이 나에게 효과적이었습니다.

아직 작업 중이지만 현재 내 xmodmap은 다음과 같습니다.

keycode   8 =
keycode   9 = Escape NoSymbol Escape
[...]
keycode 254 = XF86WWAN NoSymbol XF86WWAN
keycode 255 = XF86RFKill NoSymbol XF86RFKill

clear shift
clear lock
clear control
clear mod1
clear mod2
clear mod3
clear mod4
clear mod5

add shift =      Shift_L  Shift_R
add lock  =      Caps_Lock
add control =    Control_L  Control_R
add mod1    =    Alt_L Meta_L
add mod2    =    Num_Lock
add mod3    =    Hyper_L Hyper_R
add mod4    =    Super_L Super_R
add mod5    =    ISO_Level3_Shift Mode_switch

관련 정보