저는 Keychron K2 기계식 키보드를 가지고 있는데, 키보드 오른쪽에 있는 키는 다음과 같습니다.
좀 더 표준적인 레이아웃으로 바꾸고 싶습니다. 위에서 아래로 Light Toggle
, Home
, Page Up
, Page Down
및 가 있습니다 End
.
한번은 xev
키 코드를 검색하고 xmodmap
이를 원하는 대로 바꾸기 위한 작은 스크립트를 작성한 적이 있습니다.
#!/bin/bash
xmodmap -e "keycode 110 = Next" && xmodmap -e "keycode 112 = Home" && xmodmap -e "keycode 117 = Prior"
스크립트는 시작 시 실행되며 예상대로 정확하게 작동합니다.
문제는 이 키보드가 유선과 블루투스가 모두 가능하다는 점이다. 유선 모드와 블루투스 모드 사이를 전환하거나 그 반대로 전환하면 키가 기본 위치로 돌아가므로 위 스크립트를 수동으로 다시 실행해야 합니다. xev
두 경우 모두 키 코드가 동일하다는 것을 보여줍니다. 사용 중인 키보드 모드에 관계없이 이러한 키를 바꿀 수 있도록 이 문제를 해결하는 더 좋은 방법이 있습니까?
답변1
불행하게도 Linux Mint(및 Ubuntu 파생 제품)에서는 xmodmap
키보드를 연결하거나 분리하거나 새 키보드가 감지될 때마다 재설정이 발생합니다. 나와 같은 듀얼 모드 키보드를 사용하면 시스템은 이 키보드가 두 개의 별도 키보드라는 것을 인식하고 xmodmap
이 시점에서 재설정됩니다.
해결책은 다음을 사용하여 pc
파일을 편집하는 것입니다 /usr/share/X11/xkb/symbols/
.
$ sudo nano /usr/share/X11/xkb/symbols/pc
그런 다음 77, 78, 81행을...에서 다음으로 변경합니다.
key <HOME> { [ Home ] };
key <PGUP> { [ Prior ] };
key <PGDN> { [ Next ] };
... 도착하다:
key <HOME> { [ Next ] };
key <PGUP> { [ Home ] };
key <PGDN> { [ Prior ] };
이렇게 하면 해당 키에 대한 변경 사항이 하드코딩됩니다.모두건반.