X11에서 영구적으로 키보드 레이아웃 설정

X11에서 영구적으로 키보드 레이아웃 설정

내 PC에는 정신과 의사가 필요합니다.

그것은 iMac(일종의)이라고 확신합니다.

진지하게: "부작용"이 있는 일부 업그레이드로 인해 갑자기 나타난 문제가 있지만 실제로 무슨 일이 일어났는지 모르겠습니다.

물론, 다소 복잡한 설정이 있습니다.

  • Windows 7을 실행하는 X64 PC
  • 버추얼박스목이 없는Debian을 실행하는 가상 머신(확장)
  • X11 전달을 사용하여 SSH(KiTTY)를 통해 VM에 액세스합니다.
  • 보통 저는 명령줄에서 작업하지만 때로는 그래픽 프로그램을 사용합니다.
  • Xclient를 서비스하기 위해 호스트에 현재 버전의 VcXserv가 설치되어 있습니다.

이것은 수년 동안 작동했습니다.

이제 갑자기 내 키보드가 X 클라이언트에 대해서만 "이상하게 작동"하기 시작했습니다(일반 SSH 터미널은 영향을 받지 않음).

여기저기 많이 파헤친 끝에 다음과 같은 것을 발견했습니다.

이것은 다음의 출력입니다 setxkbmap -print -verbose 10.

Setting verbose level to 10
locale is C
Trying to load rules file ./rules/xorg...
Trying to load rules file /usr/share/X11/xkb/rules/xorg...
Success.
Applied rules from xorg:
rules:      xorg
model:      macintosh
layout:     it
options:    grab:break_actions
Trying to build keymap using the following components:
keycodes:   macintosh+aliases(qwerty)
types:      complete+numpad(mac)
compat:     complete+xfree86(grab_break)
symbols:    pc+macintosh_vndr/it+inet(apple)
geometry:   macintosh(macintosh)
xkb_keymap {
        xkb_keycodes  { include "macintosh+aliases(qwerty)"     };
        xkb_types     { include "complete+numpad(mac)"  };
        xkb_compat    { include "complete+xfree86(grab_break)"  };
        xkb_symbols   { include "pc+macintosh_vndr/it+inet(apple)"      };
        xkb_geometry  { include "macintosh(macintosh)"  };
};

물론 setxkbmap -model pc105 -layout it문제는 해결되지만 다음 VM 부팅 시에는 문제가 다시 발생합니다.

이것을 영구적으로 설정하려면 어떻게 해야 합니까? (VM에 로컬 xserver가 없으므로 ~/.xinitrc유사한 파일이 없습니다 )

나는 또한 무슨 일이 일어 났는지 이해하고 싶습니다. 누군가가 어디를 볼지 제안할 수 있나요?

답변1

X에 대한 시스템 기본값을 설정해 보십시오.

$ sudo localectl set-x11-keymap it pc105

... 호스트의 Xserver에만 영향을 미칠 수 있지만 먼저 시도해 보세요. 부작용으로 불안정한 감지의 일부일 수 있는 동등한 콘솔 키맵을 설정합니다.

그래도 작동하지 않으면 a 또는 setxkbmap | xkbcomp에서 적절한 루틴을 실행하십시오 .~/.profile~/.bashrc

 if [ -n $DISPLAY ] ; then
   setxkbmap -model pc105 -layout it -print | xkbcomp - $DISPLAY
 fi

이는 SSH 세션에 로그인할 때 실행되므로 이후에 실행하는 모든 그래픽 프로그램은 올바른 키맵을 얻어야 합니다.

관련 정보