저는 아치 리눅스를 사용하고 있습니다. X11의 일반 DELL 101 키 USB 키보드에서는 특정 키 조합이 작동하지만 기계식 게임 키보드에서는 작동하지 않는 이유를 알아내려고 완전히 막혔습니다. 나는 2개의 키보드(ttesports 및 Corsair K60)를 가지고 있는데 모두 X11에서 똑같은 방식으로 작동하지 않습니다. ++ Ctrl, ++ 및 CapsLock LED 를 제외하고 모두 작동합니다 .AltFnCtrlAltBackspace
키보드는 구성 파일의 다음 섹션을 통해 구성됩니다.
Section "InputClass"
Identifier "system-keyboard"
Driver "evdev"
MatchIsKeyboard "on"
Option "XkbLayout" "us,ru"
Option "XkbOptions" "grp:lalt_lshift_toggle,terminate:ctrl_alt_bksp"
EndSection
진단을 위해 DELL과 ttesports 키보드를 모두 연결했습니다. Ctrl++ 를 클릭했을 Alt때 차이점이 무엇인지 확인하려고 합니다 F2. xev
어떤 이벤트가 생성되었는지 추적하는 데 사용합니다 . Ctrl++ 를 누르면 두 키보드 모두 동일한 출력(직렬 제외)을 생성하지만 DELL 키보드만 VT2로 전환되고 ttesports는 화면을 변경하지 않고 유지합니다 Alt. F2출력은 다음과 같습니다
KeyRelease event, serial 36, synthetic NO, window 0x2000001,
root 0x287, subw 0x0, time 74514015, (2239,-23), root:(2385,850),
state 0xc, keycode 68 (keysym 0x1008fe02, XF86Switch_VT_2), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
내가 아는 한, 두 키보드 모두 콘솔 모드(X11 아님)에서 동일한 방식으로 작동합니다. 즉, 모든 단축키가 내가 아는 한 잘 작동한다는 의미입니다.
한 키보드는 VT를 전환하고 다른 키보드는 전환하지 않는 이유를 어떻게 추적할 수 있습니까?
편집하다:또한 CapsLock 동작을 추적해 보았습니다. showkey
콘솔에서 명령을 사용합니다 . 두 키보드 중 하나에서 CapsLock 버튼을 사용하면 누르거나 놓을 때 키코드 58이 표시됩니다. 하지만:
- CapsLockCapsLock 상태를 전환하려면 아무 키보드나 누르십시오 .
- DELL 키보드를 누르면 CapsLockDELL 키보드의 CalsLock LED만 전환됩니다.
- ttesports 키보드를 누르면 CapsLock실제 CapsLock 상태가 전환되지만 CapsLock LED는 두 키보드에서 전환되지 않습니다.
- CapsLockDell 키보드의 CapsLock LED가 켜져 있을 때 키보드를 누르면 꺼지지 않지만 실제 CapsLock 상태는 꺼집니다.