Alt+Ctl+FN 키 조합(srvrkey라고도 함)이 Xorg에 하드코딩되어 있습니까?

Alt+Ctl+FN 키 조합(srvrkey라고도 함)이 Xorg에 하드코딩되어 있습니까?

Alt+Ctl+FN키 조합(srvrkey라고도 함)이 Xorg에 하드코딩되어 있습니까?

이 문제켜고 끄는 방법을 설명했습니다. (저는 이미 그것을 알고 있습니다. 단지 숙제를 했다는 것을 보여주기 위해 언급했을 뿐입니다.) 하지만 지금 나에게 필요한 것은 해당 기능을 유지하면서 Alt+FN일반적인 Linux VT 바인딩과 같은 다른 키 조합에 바인딩하는 것입니다. 가능한?

그 이유는 내가 선호하는 leop^H^H^H^H 키보드에는 이러한 Alt+Ctl+FN조합이 실제로 존재하지 않기 때문입니다.

답변1

Alt+Ctl+FN 키 조합(srvrkey라고도 함)이 Xorg에 하드코딩되어 있습니까?

아니요, 그렇지 않습니다. 다음을 통해 구성할 수 있습니다.ikb. 그러나 Xkb를 효과적이고 올바르게 구성하는 방법을 아는 데는 평생이 걸립니다 ;-).

그러나 완전한 클라이언트 측의 간단한 해킹으로서 다음으로 전환할 수 있습니다. [ Alt-F1레이아웃이 너무 달라서 스크립트가 작동하지 않는 경우 Ctrl-Alt-F1마지막에 차이점을 확인하십시오 ]:ed

xkbcomp $DISPLAY - > xkb
cp xkb xkb~
ed xkb <<EOT
/type "CTRL+ALT"/
/Level5/s/Control+//p
w
EOT
xkbcomp - $DISPLAY < xkb

그러나 데스크톱 환경이 변경 사항을 덮어쓸 수 있다는 점에 유의하세요. 또한 해당 옵션을 활성화한 경우(위에서 생성된 파일에서 찾아보세요) Alt-BackspaceX11 서버가 종료될 수 있습니다(일부 편집기에서는 일반적인 키 바인딩).Ctrl-Alt-BackspaceTerminate_Serverxkb

diff xkb~ xkb
...
@@ -376,15 +376,15 @@
     type "CTRL+ALT" {
         modifiers= Shift+Control+Alt+LevelThree;
         map[Shift]= Level2;
         preserve[Shift]= Shift;
         map[LevelThree]= Level3;
         map[Shift+LevelThree]= Level4;
         preserve[Shift+LevelThree]= Shift;
-        map[Control+Alt]= Level5;
+        map[Alt]= Level5;
         level_name[Level1]= "Base";
         level_name[Level2]= "Shift";
         level_name[Level3]= "Alt Base";
         level_name[Level4]= "Shift Alt";
         level_name[Level5]= "Ctrl+Alt";
     };
     type "LOCAL_EIGHT_LEVEL" {

관련 정보