내 키보드 구성은 실제로 어디에서 어떻게 정의됩니까?

내 키보드 구성은 실제로 어디에서 어떻게 정의됩니까?

간결한 버전

<alt>-<KEY>오픈박스(즉, KDE, GNOME 등 없음)가 있는 데비안 10(버스터)에 어떤 기호가 인쇄되는지 결정하는 것은 무엇입니까?


긴 버전

순서대로 들어가면

<q>
<shift>-<q>
<alt>-<q>
<shift>-<alt>-<q>

출력을 얻습니다(예를 들어 xterm 또는 gvim - Firefox에서는 qQqQ만 제공합니다).

qQñÑ

ñÑ이제 이 동작을 정의하는 구성 파일이나 명령을 찾을 수 없기 때문에 특히 출력에 관심이 있습니다 .

$ setxkbmap -print
xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+us+inet(evdev)+level3(ralt_switch)+terminate(ctrl_alt_bksp)"    };
    xkb_geometry  { include "pc(pc105)" };
};

xkb_symbols줄은 기호 파일이 "pc+us+inet(evdev)+level3(ralt_switch)+terminate(ctrl_alt_bksp)"내 레이아웃을 구성한다는 것을 나타내는 것 같습니다. 그러나 여기에는 ntilde또는 가 포함되지 않습니다 Ntilde. 실제로 의 기호 파일에는 /usr/share/X11/xkb/symbols/이러한 문자가 포함되어 있지 않습니다. <alt>-<KEY>및 레벨에 있는 대부분의 키 에도 마찬가지입니다 <shift>-<alt>-<KEY>.


추가 정보

마찬가지로 출력은 xmodmap -pke다음과 같습니다.

[...]
keycode  24 = q Q q Q
keycode  25 = w W w W
keycode  26 = e E e E
[...]

등. 따라서 이는 <alt>-<q>및 에 <shift>-<alt>-<q>의해 각각 주어진 관찰과 일치하지 않습니다 .ñÑ

/usr/share/X11/xkb/symbols/us흥미롭게 도 (백업을 수행한 후) 파일을 편집하면 다음이 포함됩니다.

key <AD01> { [ q, 1, 2, 3]}; 

그런 다음 이 구성을 다시 로드하여 setxkbmap us시퀀스에서 가져옵니다.

<q>
<shift>-<q>
<alt>-<q>
<shift>-<alt>-<q>

산출

q1ñ±

즉, <shift>-<KEY>레벨은 영향을 받지 않고 <shift>-<alt>-<q>동일 <alt>-<1>하게 유지되고 인쇄됩니다.<alt>-<q>


내가 시도한 것

# dpkg-reconfigure keyboard-configuration locales

나는 xkbcomp, setxkbmap 및 많은 관련 매뉴얼 페이지와 웹에서 다음 리소스를 살펴보았습니다.

  1. https://wiki.archlinux.org/index.php/Xorg/Keyboard_configuration
  2. https://web.archive.org/web/20170825051821/http://madduck.net:80/docs/extending-xkb/
  3. https://www.linuxquestions.org/questions/linux-software-2/what-is-the-difference-Between-mode_switch-and-iso_level3_switch-4175465999/
  4. https://www.in-ulm.de/~mascheck/X11/xmodmap.html

나는 xkbcomp와 co의 많은 조합을 시도했습니다. (내 섹션에 설명된 대로다른 포럼에 질문하세요) xkb 외부의 일부 프로그램이 Shift 및 Alt-Shift 수준에서 키보드 구성을 무시하는 것 같다고 가정하겠습니다. 그러나 나는 그것이 무엇인지 전혀 모르고 완전히 막혔으며 이 문제에 대한 도움을 주시면 정말 감사하겠습니다.


내가 왜 신경쓰나요?

us제가 이것을 우연히 발견한 이유는 독일어 움라우트(äöü)에 쉽게 접근할 수 있도록 키보드 레이아웃을 사용자 정의하고 싶었기 때문입니다 . 이전 openSuSE에서는 간단히 파일을 편집하여 이를 달성할 수 있었습니다 /usr/share/X11/xkb/symbols/us.

관련 정보