这个问题与安装 Xubuntu 16.04.3 LTS 和当前内核 4.4.0-116-generic x86_64 有关。我正在运行联想笔记本电脑 W530,键盘是德国键盘(QWERTZU)。
创刊号
我安装了一个商业程序的新版本,该程序在键盘输入方面与我迄今为止使用的所有其他 Ubuntu 程序(包括该程序的先前版本)不同:它抑制了死键,即,按两次这些键不会单独产生这些重音,按一次这些键后再按一个已知的带有该重音的字符也不会产生带有该字符的重音版本。
不幸的是,该程序中经常使用插入符号 ^、akut ´ 和 gravis `。我联系了该程序的支持人员。他们无法在 Ubuntu 18.04 上重现此问题,并要求我提供键盘和语言设置的确切设置。
在缩小问题范围的试验过程中出现了一些问题
我搜索了很久,仍然没有找到一种方法来明确地传达我的计算机上有效的语言设置。我仍在寻找一些命令或列出哪些系统文件来明确地传达这些系统设置。我只能从 GUI 程序中截取屏幕截图来设置键盘设置和国家/地区设置。
在试验键盘时,为了在其他程序(如 LibreOffice、Mousepad 和 Thunderbird)中传达其结果,我尝试了 、 和 组合键中的所有键,Shift并Alt仔细AltGr观察了是否存在“死键”以及在哪里存在“死键”(如果下一个字符与该特殊功能结合使用,则会产生一个动作)。
我发现了以下结果:
最上行下方的按键产生(例如在鼠标垫或 Thunderbird 中)
shifted: ° ! " § $ % & / ( ) = ? `
unshifted: ^ 1 2 3 4 5 6 7 8 9 0 ß ´
shift+AltGr: ″ ¡ ⅛ £ ¤ ⅜ ⅝ ⅞ ™ ± ° ¿ ˛
with AltGr: ′ ¹ ² ³ ¼ ½ ¬ { [ ] } \ ¸
Tab 键行:
shifted: Q W E R T Z U I O P Ü *
unshifted: q w e r t z u i o p ü +
shift+AltGr: Ω Ł € ® Ŧ ¥ ↑ ı Ø Þ ° ¯
with AltGr: @ ł € ¶ ŧ ← ↓ → ø þ " ~
大写锁定键行
shifted: A S D F G H J K L Ö Ä '
unshifted: a s d f g h j k l ö ä #
shift+AltGr: Æ ẞ Ð ª Ŋ Ħ ˙ & Ł ̣ ˇ ˘ (the one belonging to J the last three Ö, Ä and ' and act like dead keys for certain other keys like ȧạčŏ)
with AltGr: æ ſ ð đ ŋ ħ ̣ ĸ ł ˝ ^ ’ (those belonging to j, ö and ä act like dead keys for certain other keys like ạőĉ)
Shift 键所在行
shifted: > Y X C V B N M ; : _
unshifted: < y x c v b n m , . -
shift+AltGr: ¦ › ‹ © ‚ ‘ ’ º × ÷ —
with AltGr: | » « ¢ „ “ ” µ · … – (the tree dots are produced by AltGr+.)
经过大量的实验,我最终一定是搞混了什么,因为现在我再也无法产生AltGr和Shift的AltGr结果了。我一定是无意中改变了一些东西——但那到底是什么,我怎么才能回到以前的样子呢?
我的问题
我如何明确地传达我当前键盘配置的实际设置?1a. 运行哪些命令来传达它们的输出?1b. 我应该传达哪些系统文件的内容?
我怎样才能将组合键的功能恢复AltGr到以前的样子(如上所述)?
关于在 Ubuntu 环境中学习编程的更多问题
如果有人读了这篇文章,可以从编程的角度向我解释一下如何处理这些死键:根据我读过的一篇文章(指新的 Wayland 系统),程序可以通过不同的方式了解键盘操作,当它们具有焦点时:一种是返回“未消化”的键盘事件,另一种是处理“消化的键盘事件”,即只有在按下死键的字符后才会发生事件,结果是带有重音的字符(如果按下两次或第二个字符为空格,则为重音本身)。但我不知道我的哪个应用程序使用了 Wayland,据我所知,大多数 Ubuntu 应用程序要么使用 GTK,要么使用 QT,而这些都依赖于 X-Window,而 X-Window 可能是 Wayland 的前身。对它们之间关系的一些澄清也将非常有帮助。
- 为了获取主要的“未消化”键事件,需要调用的函数名称是什么?为了获取“消化”键盘操作,需要调用的函数名称是什么?
答案1
这只是第 2 部分的部分答案:“我如何将 AltGr 组合键的工作恢复到以前的状态(如上所述)?”
- 使用可以执行 sudo 的帐户登录。
- 发出命令
sudo dpkg-reconfigure keyboard-configuration
- 这将带您浏览与终端式控制台上的初始安装类似的屏幕。要导航到该
ok
选项,请使用标签关键是。在屏幕上使用这些设置(每个屏幕一个问题) - 这些解剖学特征的模型:通用的PC 评分标准 105 项(国际)
- 塔斯塔特的受益者:德文
- 口味:德文(第一个给定的选择)
- 味道,作为 AltGr 的功能:关税标准
- 创作-品味:无创作品味
- 关于 Ctl-Alt-Delete 的问题:不
终端上显示了这些消息:
Your console font configuration will be updated the next time your system boots. If you want to update it now, run 'setupcon' from a virtual console.
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
insserv: script lpd: service cups already provided!
update-initramfs: deferring update (trigger activated)
Trigger für initramfs-tools (0.122ubuntu8.13) werden verarbeitet ...
update-initramfs: Generating /boot/initrd.img-4.4.0-140-generic
您必须重新启动才能使这些设置生效。
然而,两天后我遇到了同样的问题,而且我没有调整中间的设置:AltGr 组合键不再起作用。由于我的解决方法需要相当多的步骤,因此一些如何防止这种情况的分析将非常有帮助。这些是我发现的一些系统设置,它们可能会告诉您一些有关键盘和语言设置的信息但他们有什么问题呢?
a@W530:~$ echo $LANG
de_DE.UTF-8
a@W530:~$ locale
LANG=de_DE.UTF-8
LANGUAGE=de_DE
LC_CTYPE="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_PAPER="de_DE.UTF-8"
LC_NAME="de_DE.UTF-8"
LC_ADDRESS="de_DE.UTF-8"
LC_TELEPHONE="de_DE.UTF-8"
LC_MEASUREMENT="de_DE.UTF-8"
LC_IDENTIFICATION="de_DE.UTF-8"
LC_ALL=
a@W530:~$ xmodmap -pk
There are 10 KeySyms per KeyCode; KeyCodes range from 8 to 255.
KeyCode Keysym (Keysym) ...
Value Value (Name) ...
8
9 0xff1b (Escape) 0x0000 (NoSymbol) 0xff1b (Escape)
10 0x0031 (1) 0x0021 (exclam) 0x0031 (1) 0x0021 (exclam)0x00b9 (onesuperior) 0x00a1 (exclamdown)
11 0x0032 (2) 0x0022 (quotedbl) 0x0032 (2) 0x0040 (at) 0x00b2 (twosuperior) 0x0ac3 (oneeighth)
12 0x0033 (3) 0x00a7 (section) 0x0033 (3) 0x0023 (numbersign) 0x00b3 (threesuperior) 0x00a3 (sterling)
13 0x0034 (4) 0x0024 (dollar) 0x0034 (4) 0x0024 (dollar)0x00bc (onequarter) 0x00a4 (currency)
14 0x0035 (5) 0x0025 (percent) 0x0035 (5) 0x0025 (percent) 0x00bd (onehalf) 0x0ac4 (threeeighths)
15 0x0036 (6) 0x0026 (ampersand) 0x0036 (6) 0x005e (asciicircum) 0x00ac (notsign) 0x0ac5 (fiveeighths)
16 0x0037 (7) 0x002f (slash) 0x0037 (7) 0x0026 (ampersand) 0x007b (braceleft) 0x0ac6 (seveneighths)
17 0x0038 (8) 0x0028 (parenleft) 0x0038 (8) 0x002a (asterisk) 0x005b (bracketleft) 0x0ac9 (trademark)
18 0x0039 (9) 0x0029 (parenright) 0x0039 (9) 0x0028 (parenleft) 0x005d (bracketright) 0x00b1 (plusminus)
19 0x0030 (0) 0x003d (equal) 0x0030 (0) 0x0029 (parenright) 0x007d (braceright) 0x00b0 (degree)
20 0x00df (ssharp) 0x003f (question) 0x002d (minus) 0x005f (underscore) 0x005c (backslash) 0x00bf (questiondown) 0x1001e9e (U1E9E)
21 0xfe51 (dead_acute) 0xfe50 (dead_grave) 0x003d (equal) 0x002b (plus) 0xfe5b (dead_cedilla) 0xfe5c (dead_ogonek)
22 0xff08 (BackSpace) 0xff08 (BackSpace) 0xff08 (BackSpace) 0xff08 (BackSpace)
23 0xff09 (Tab) 0xfe20 (ISO_Left_Tab) 0xff09 (Tab) 0xfe20 (ISO_Left_Tab)
24 0x0071 (q) 0x0051 (Q) 0x0071 (q) 0x0051 (Q) 0x0040 (at) 0x07d9 (Greek_OMEGA)
25 0x0077 (w) 0x0057 (W) 0x0077 (w) 0x0057 (W) 0x01b3 (lstroke) 0x01a3 (Lstroke)
26 0x0065 (e) 0x0045 (E) 0x0065 (e) 0x0045 (E) 0x20ac (EuroSign) 0x20ac (EuroSign)
27 0x0072 (r) 0x0052 (R) 0x0072 (r) 0x0052 (R) 0x00b6 (paragraph) 0x00ae (registered)
28 0x0074 (t) 0x0054 (T) 0x0074 (t) 0x0054 (T) 0x03bc (tslash) 0x03ac (Tslash)
29 0x007a (z) 0x005a (Z) 0x0079 (y) 0x0059 (Y) 0x08fb (leftarrow) 0x00a5 (yen)
30 0x0075 (u) 0x0055 (U) 0x0075 (u) 0x0055 (U) 0x08fe (downarrow) 0x08fc (uparrow)
31 0x0069 (i) 0x0049 (I) 0x0069 (i) 0x0049 (I) 0x08fd (rightarrow) 0x02b9 (idotless)
32 0x006f (o) 0x004f (O) 0x006f (o) 0x004f (O) 0x00f8 (oslash) 0x00d8 (Oslash)
33 0x0070 (p) 0x0050 (P) 0x0070 (p) 0x0050 (P) 0x00fe (thorn) 0x00de (THORN)
34 0x00fc (udiaeresis) 0x00dc (Udiaeresis) 0x005b (bracketleft) 0x007b (braceleft) 0xfe57 (dead_diaeresis) 0xfe58 (dead_abovering)
35 0x002b (plus) 0x002a (asterisk) 0x005d (bracketright) 0x007d (braceright) 0x007e (asciitilde) 0x00af (macron)
36 0xff0d (Return) 0x0000 (NoSymbol) 0xff0d (Return)
37 0xffe3 (Control_L) 0x0000 (NoSymbol) 0xffe3 (Control_L)
38 0x0061 (a) 0x0041 (A) 0x0061 (a) 0x0041 (A) 0x00e6 (ae) 0x00c6 (AE)
39 0x0073 (s) 0x0053 (S) 0x0073 (s) 0x0053 (S) 0x100017f (U017F) 0x1001e9e (U1E9E)
40 0x0064 (d) 0x0044 (D) 0x0064 (d) 0x0044 (D) 0x00f0 (eth) 0x00d0 (ETH)
41 0x0066 (f) 0x0046 (F) 0x0066 (f) 0x0046 (F) 0x01f0 (dstroke) 0x00aa (ordfeminine)
42 0x0067 (g) 0x0047 (G) 0x0067 (g) 0x0047 (G) 0x03bf (eng) 0x03bd (ENG)
43 0x0068 (h) 0x0048 (H) 0x0068 (h) 0x0048 (H) 0x02b1 (hstroke) 0x02a1 (Hstroke)
44 0x006a (j) 0x004a (J) 0x006a (j) 0x004a (J) 0xfe60 (dead_belowdot) 0xfe56 (dead_abovedot)
45 0x006b (k) 0x004b (K) 0x006b (k) 0x004b (K) 0x03a2 (kra) 0x0026 (ampersand)
46 0x006c (l) 0x004c (L) 0x006c (l) 0x004c (L) 0x01b3 (lstroke) 0x01a3 (Lstroke)
47 0x00f6 (odiaeresis) 0x00d6 (Odiaeresis) 0x003b (semicolon) 0x003a (colon) 0xfe59 (dead_doubleacute) 0xfe60 (dead_belowdot)
48 0x00e4 (adiaeresis) 0x00c4 (Adiaeresis) 0x0027 (apostrophe) 0x0022 (quotedbl) 0xfe52 (dead_circumflex) 0xfe5a (dead_caron)
49 0xfe52 (dead_circumflex) 0x00b0 (degree) 0x0060 (grave) 0x007e (asciitilde) 0x1002032 (U2032) 0x1002033 (U2033)
50 0xffe1 (Shift_L) 0x0000 (NoSymbol) 0xffe1 (Shift_L)
51 0x0023 (numbersign) 0x0027 (apostrophe) 0x005c (backslash) 0x007c (bar) 0x0ad1 (rightsinglequotemark) 0xfe55 (dead_breve)
52 0x0079 (y) 0x0059 (Y) 0x007a (z) 0x005a (Z) 0x00bb (guillemotright) 0x100203a (U203A)
53 0x0078 (x) 0x0058 (X) 0x0078 (x) 0x0058 (X) 0x00ab (guillemotleft) 0x1002039 (U2039)
54 0x0063 (c) 0x0043 (C) 0x0063 (c) 0x0043 (C) 0x00a2 (cent) 0x00a9 (copyright)
55 0x0076 (v) 0x0056 (V) 0x0076 (v) 0x0056 (V) 0x0afe (doublelowquotemark) 0x0afd (singlelowquotemark)
56 0x0062 (b) 0x0042 (B) 0x0062 (b) 0x0042 (B) 0x0ad2 (leftdoublequotemark) 0x0ad0 (leftsinglequotemark)
57 0x006e (n) 0x004e (N) 0x006e (n) 0x004e (N) 0x0ad3 (rightdoublequotemark) 0x0ad1 (rightsinglequotemark)
58 0x006d (m) 0x004d (M) 0x006d (m) 0x004d (M) 0x00b5 (mu) 0x00ba (masculine)
59 0x002c (comma) 0x003b (semicolon) 0x002c (comma) 0x003c (less) 0x00b7 (periodcentered) 0x00d7 (multiply)
60 0x002e (period) 0x003a (colon) 0x002e (period) 0x003e (greater)0x1002026 (U2026) 0x00f7 (division)
61 0x002d (minus) 0x005f (underscore) 0x002f (slash) 0x003f (question) 0x0aaa (endash) 0x0aa9 (emdash)
62 0xffe2 (Shift_R) 0x0000 (NoSymbol) 0xffe2 (Shift_R)
63 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0x1008fe21 (XF86ClearGrab) 0xffaa (KP_Multiply) 0xffaa (KP_Multiply) 0x1008fe21 (XF86ClearGrab)
64 0xffe9 (Alt_L) 0xffe7 (Meta_L) 0xffe9 (Alt_L) 0xffe7 (Meta_L)
65 0x0020 (space) 0x0000 (NoSymbol) 0x0020 (space)
66 0xffe5 (Caps_Lock) 0x0000 (NoSymbol) 0xffe5 (Caps_Lock)
67 0xffbe (F1) 0xffbe (F1) 0xffbe (F1) 0xffbe (F1) 0xffbe (F1) 0xffbe (F1) 0x1008fe01 (XF86Switch_VT_1) 0xffbe (F1) 0xffbe (F1) 0x1008fe01 (XF86Switch_VT_1)
68 0xffbf (F2) 0xffbf (F2) 0xffbf (F2) 0xffbf (F2) 0xffbf (F2) 0xffbf (F2) 0x1008fe02 (XF86Switch_VT_2) 0xffbf (F2) 0xffbf (F2) 0x1008fe02 (XF86Switch_VT_2)
69 0xffc0 (F3) 0xffc0 (F3) 0xffc0 (F3) 0xffc0 (F3) 0xffc0 (F3) 0xffc0 (F3) 0x1008fe03 (XF86Switch_VT_3) 0xffc0 (F3) 0xffc0 (F3) 0x1008fe03 (XF86Switch_VT_3)
70 0xffc1 (F4) 0xffc1 (F4) 0xffc1 (F4) 0xffc1 (F4) 0xffc1 (F4) 0xffc1 (F4) 0x1008fe04 (XF86Switch_VT_4) 0xffc1 (F4) 0xffc1 (F4) 0x1008fe04 (XF86Switch_VT_4)
71 0xffc2 (F5) 0xffc2 (F5) 0xffc2 (F5) 0xffc2 (F5) 0xffc2 (F5) 0xffc2 (F5) 0x1008fe05 (XF86Switch_VT_5) 0xffc2 (F5) 0xffc2 (F5) 0x1008fe05 (XF86Switch_VT_5)
72 0xffc3 (F6) 0xffc3 (F6) 0xffc3 (F6) 0xffc3 (F6) 0xffc3 (F6) 0xffc3 (F6) 0x1008fe06 (XF86Switch_VT_6) 0xffc3 (F6) 0xffc3 (F6) 0x1008fe06 (XF86Switch_VT_6)
73 0xffc4 (F7) 0xffc4 (F7) 0xffc4 (F7) 0xffc4 (F7) 0xffc4 (F7) 0xffc4 (F7) 0x1008fe07 (XF86Switch_VT_7) 0xffc4 (F7) 0xffc4 (F7) 0x1008fe07 (XF86Switch_VT_7)
74 0xffc5 (F8) 0xffc5 (F8) 0xffc5 (F8) 0xffc5 (F8) 0xffc5 (F8) 0xffc5 (F8) 0x1008fe08 (XF86Switch_VT_8) 0xffc5 (F8) 0xffc5 (F8) 0x1008fe08 (XF86Switch_VT_8)
75 0xffc6 (F9) 0xffc6 (F9) 0xffc6 (F9) 0xffc6 (F9) 0xffc6 (F9) 0xffc6 (F9) 0x1008fe09 (XF86Switch_VT_9) 0xffc6 (F9) 0xffc6 (F9) 0x1008fe09 (XF86Switch_VT_9)
76 0xffc7 (F10) 0xffc7 (F10) 0xffc7 (F10) 0xffc7 (F10) 0xffc7 (F10) 0xffc7 (F10) 0x1008fe0a (XF86Switch_VT_10) 0xffc7 (F10) 0xffc7 (F10) 0x1008fe0a (XF86Switch_VT_10)
77 0xff7f (Num_Lock) 0x0000 (NoSymbol) 0xff7f (Num_Lock)
78 0xff14 (Scroll_Lock) 0x0000 (NoSymbol) 0xff14 (Scroll_Lock)
79 0xff95 (KP_Home) 0xffb7 (KP_7) 0xff95 (KP_Home) 0xffb7 (KP_7)
80 0xff97 (KP_Up) 0xffb8 (KP_8) 0xff97 (KP_Up) 0xffb8 (KP_8)
81 0xff9a (KP_Prior) 0xffb9 (KP_9) 0xff9a (KP_Prior) 0xffb9 (KP_9)
82 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0x1008fe23 (XF86Prev_VMode) 0xffad (KP_Subtract) 0xffad (KP_Subtract) 0x1008fe23 (XF86Prev_VMode)
83 0xff96 (KP_Left) 0xffb4 (KP_4) 0xff96 (KP_Left) 0xffb4 (KP_4)
84 0xff9d (KP_Begin) 0xffb5 (KP_5) 0xff9d (KP_Begin) 0xffb5 (KP_5)
85 0xff98 (KP_Right) 0xffb6 (KP_6) 0xff98 (KP_Right) 0xffb6 (KP_6)
86 0xffab (KP_Add) 0xffab (KP_Add) 0xffab (KP_Add) 0xffab (KP_Add)0xffab (KP_Add) 0xffab (KP_Add) 0x1008fe22 (XF86Next_VMode) 0xffab (KP_Add)0xffab (KP_Add) 0x1008fe22 (XF86Next_VMode)
87 0xff9c (KP_End) 0xffb1 (KP_1) 0xff9c (KP_End) 0xffb1 (KP_1)
88 0xff99 (KP_Down) 0xffb2 (KP_2) 0xff99 (KP_Down) 0xffb2 (KP_2)
89 0xff9b (KP_Next) 0xffb3 (KP_3) 0xff9b (KP_Next) 0xffb3 (KP_3)
90 0xff9e (KP_Insert) 0xffb0 (KP_0) 0xff9e (KP_Insert) 0xffb0 (KP_0)
91 0xff9f (KP_Delete) 0xffac (KP_Separator) 0xff9f (KP_Delete) 0xffac (KP_Separator)
92 0xfe03 (ISO_Level3_Shift) 0x0000 (NoSymbol) 0xfe03 (ISO_Level3_Shift)
93
94 0x003c (less) 0x003e (greater) 0x003c (less) 0x003e (greater) 0x007c (bar) 0x00a6 (brokenbar) 0x007c (bar) 0x00a6 (brokenbar)
95 0xffc8 (F11) 0xffc8 (F11) 0xffc8 (F11) 0xffc8 (F11) 0xffc8 (F11) 0xffc8 (F11) 0x1008fe0b (XF86Switch_VT_11) 0xffc8 (F11) 0xffc8 (F11) 0x1008fe0b (XF86Switch_VT_11)
96 0xffc9 (F12) 0xffc9 (F12) 0xffc9 (F12) 0xffc9 (F12) 0xffc9 (F12) 0xffc9 (F12) 0x1008fe0c (XF86Switch_VT_12) 0xffc9 (F12) 0xffc9 (F12) 0x1008fe0c (XF86Switch_VT_12)
97
98 0xff26 (Katakana) 0x0000 (NoSymbol) 0xff26 (Katakana)
99 0xff25 (Hiragana) 0x0000 (NoSymbol) 0xff25 (Hiragana)
100 0xff23 (Henkan_Mode) 0x0000 (NoSymbol) 0xff23 (Henkan_Mode)
101 0xff27 (Hiragana_Katakana) 0x0000 (NoSymbol) 0xff27 (Hiragana_Katakana)
102 0xff22 (Muhenkan) 0x0000 (NoSymbol) 0xff22 (Muhenkan)
103
104 0xff8d (KP_Enter) 0x0000 (NoSymbol) 0xff8d (KP_Enter)
105 0xffe4 (Control_R) 0x0000 (NoSymbol) 0xffe4 (Control_R)
106 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0x1008fe20 (XF86Ungrab) 0xffaf (KP_Divide) 0xffaf (KP_Divide) 0x1008fe20 (XF86Ungrab)
107 0xff61 (Print) 0xff15 (Sys_Req) 0xff61 (Print) 0xff15 (Sys_Req)
108 0xfe03 (ISO_Level3_Shift) 0x0000 (NoSymbol) 0xfe03 (ISO_Level3_Shift)
109 0xff0a (Linefeed) 0x0000 (NoSymbol) 0xff0a (Linefeed)
110 0xff50 (Home) 0x0000 (NoSymbol) 0xff50 (Home)
111 0xff52 (Up) 0x0000 (NoSymbol) 0xff52 (Up)
112 0xff55 (Prior) 0x0000 (NoSymbol) 0xff55 (Prior)
113 0xff51 (Left) 0x0000 (NoSymbol) 0xff51 (Left)
114 0xff53 (Right) 0x0000 (NoSymbol) 0xff53 (Right)
115 0xff57 (End) 0x0000 (NoSymbol) 0xff57 (End)
116 0xff54 (Down) 0x0000 (NoSymbol) 0xff54 (Down)
117 0xff56 (Next) 0x0000 (NoSymbol) 0xff56 (Next)
118 0xff63 (Insert) 0x0000 (NoSymbol) 0xff63 (Insert)
119 0xffff (Delete) 0x0000 (NoSymbol) 0xffff (Delete)
120
121 0x1008ff12 (XF86AudioMute) 0x0000 (NoSymbol) 0x1008ff12 (XF86AudioMute)
122 0x1008ff11 (XF86AudioLowerVolume) 0x0000 (NoSymbol) 0x1008ff11 (XF86AudioLowerVolume)
123 0x1008ff13 (XF86AudioRaiseVolume) 0x0000 (NoSymbol) 0x1008ff13 (XF86AudioRaiseVolume)
124 0x1008ff2a (XF86PowerOff) 0x0000 (NoSymbol) 0x1008ff2a (XF86PowerOff)
125 0xffbd (KP_Equal) 0x0000 (NoSymbol) 0xffbd (KP_Equal)
126 0x00b1 (plusminus) 0x0000 (NoSymbol) 0x00b1 (plusminus)
127 0xff13 (Pause) 0xff6b (Break) 0xff13 (Pause) 0xff6b (Break)
128 0x1008ff4a (XF86LaunchA) 0x0000 (NoSymbol) 0x1008ff4a (XF86LaunchA)
129 0xffae (KP_Decimal) 0xffae (KP_Decimal) 0xffae (KP_Decimal) 0xffae (KP_Decimal)
130 0xff31 (Hangul) 0x0000 (NoSymbol) 0xff31 (Hangul)
131 0xff34 (Hangul_Hanja) 0x0000 (NoSymbol) 0xff34 (Hangul_Hanja)
132
133 0xffeb (Super_L) 0x0000 (NoSymbol) 0xffeb (Super_L)
134 0xffec (Super_R) 0x0000 (NoSymbol) 0xffec (Super_R)
135 0xff67 (Menu) 0x0000 (NoSymbol) 0xff67 (Menu)
136 0xff69 (Cancel) 0x0000 (NoSymbol) 0xff69 (Cancel)
137 0xff66 (Redo) 0x0000 (NoSymbol) 0xff66 (Redo)
138 0x1005ff70 (SunProps) 0x0000 (NoSymbol) 0x1005ff70 (SunProps)
139 0xff65 (Undo) 0x0000 (NoSymbol) 0xff65 (Undo)
140 0x1005ff71 (SunFront) 0x0000 (NoSymbol) 0x1005ff71 (SunFront)
141 0x1008ff57 (XF86Copy) 0x0000 (NoSymbol) 0x1008ff57 (XF86Copy)
142 0x1008ff6b (XF86Open) 0x0000 (NoSymbol) 0x1008ff6b (XF86Open)
143 0x1008ff6d (XF86Paste) 0x0000 (NoSymbol) 0x1008ff6d (XF86Paste)
144 0xff68 (Find) 0x0000 (NoSymbol) 0xff68 (Find)
145 0x1008ff58 (XF86Cut) 0x0000 (NoSymbol) 0x1008ff58 (XF86Cut)
146 0xff6a (Help) 0x0000 (NoSymbol) 0xff6a (Help)
147 0x1008ff65 (XF86MenuKB) 0x0000 (NoSymbol) 0x1008ff65 (XF86MenuKB)
148 0x1008ff1d (XF86Calculator) 0x0000 (NoSymbol) 0x1008ff1d (XF86Calculator)
149
150 0x1008ff2f (XF86Sleep) 0x0000 (NoSymbol) 0x1008ff2f (XF86Sleep)
151 0x1008ff2b (XF86WakeUp) 0x0000 (NoSymbol) 0x1008ff2b (XF86WakeUp)
152 0x1008ff5d (XF86Explorer) 0x0000 (NoSymbol) 0x1008ff5d (XF86Explorer)
153 0x1008ff7b (XF86Send) 0x0000 (NoSymbol) 0x1008ff7b (XF86Send)
154
155 0x1008ff8a (XF86Xfer) 0x0000 (NoSymbol) 0x1008ff8a (XF86Xfer)
156 0x1008ff41 (XF86Launch1) 0x0000 (NoSymbol) 0x1008ff41 (XF86Launch1)
157 0x1008ff42 (XF86Launch2) 0x0000 (NoSymbol) 0x1008ff42 (XF86Launch2)
158 0x1008ff2e (XF86WWW) 0x0000 (NoSymbol) 0x1008ff2e (XF86WWW)
159 0x1008ff5a (XF86DOS) 0x0000 (NoSymbol) 0x1008ff5a (XF86DOS)
160 0x1008ff2d (XF86ScreenSaver) 0x0000 (NoSymbol) 0x1008ff2d (XF86ScreenSaver)
161 0x1008ff74 (XF86RotateWindows) 0x0000 (NoSymbol) 0x1008ff74 (XF86RotateWindows)
162 0x1008ff7f (XF86TaskPane) 0x0000 (NoSymbol) 0x1008ff7f (XF86TaskPane)
163 0x1008ff19 (XF86Mail) 0x0000 (NoSymbol) 0x1008ff19 (XF86Mail)
164 0x1008ff30 (XF86Favorites) 0x0000 (NoSymbol) 0x1008ff30 (XF86Favorites)
165 0x1008ff33 (XF86MyComputer) 0x0000 (NoSymbol) 0x1008ff33 (XF86MyComputer)
166 0x1008ff26 (XF86Back) 0x0000 (NoSymbol) 0x1008ff26 (XF86Back)
167 0x1008ff27 (XF86Forward) 0x0000 (NoSymbol) 0x1008ff27 (XF86Forward)
168
169 0x1008ff2c (XF86Eject) 0x0000 (NoSymbol) 0x1008ff2c (XF86Eject)
170 0x1008ff2c (XF86Eject) 0x1008ff2c (XF86Eject) 0x1008ff2c (XF86Eject) 0x1008ff2c (XF86Eject)
171 0x1008ff17 (XF86AudioNext) 0x0000 (NoSymbol) 0x1008ff17 (XF86AudioNext)
172 0x1008ff14 (XF86AudioPlay) 0x1008ff31 (XF86AudioPause) 0x1008ff14 (XF86AudioPlay) 0x1008ff31 (XF86AudioPause)
173 0x1008ff16 (XF86AudioPrev) 0x0000 (NoSymbol) 0x1008ff16 (XF86AudioPrev)
174 0x1008ff15 (XF86AudioStop) 0x1008ff2c (XF86Eject) 0x1008ff15 (XF86AudioStop) 0x1008ff2c (XF86Eject)
175 0x1008ff1c (XF86AudioRecord) 0x0000 (NoSymbol) 0x1008ff1c (XF86AudioRecord)
176 0x1008ff3e (XF86AudioRewind) 0x0000 (NoSymbol) 0x1008ff3e (XF86AudioRewind)
177 0x1008ff6e (XF86Phone) 0x0000 (NoSymbol) 0x1008ff6e (XF86Phone)
178
179 0x1008ff81 (XF86Tools) 0x0000 (NoSymbol) 0x1008ff81 (XF86Tools)
180 0x1008ff18 (XF86HomePage) 0x0000 (NoSymbol) 0x1008ff18 (XF86HomePage)
181 0x1008ff73 (XF86Reload) 0x0000 (NoSymbol) 0x1008ff73 (XF86Reload)
182 0x1008ff56 (XF86Close) 0x0000 (NoSymbol) 0x1008ff56 (XF86Close)
183
184
185 0x1008ff78 (XF86ScrollUp) 0x0000 (NoSymbol) 0x1008ff78 (XF86ScrollUp)
186 0x1008ff79 (XF86ScrollDown) 0x0000 (NoSymbol) 0x1008ff79 (XF86ScrollDown)
187 0x0028 (parenleft) 0x0000 (NoSymbol) 0x0028 (parenleft)
188 0x0029 (parenright) 0x0000 (NoSymbol) 0x0029 (parenright)
189 0x1008ff68 (XF86New) 0x0000 (NoSymbol) 0x1008ff68 (XF86New)
190 0xff66 (Redo) 0x0000 (NoSymbol) 0xff66 (Redo)
191 0x1008ff81 (XF86Tools) 0x0000 (NoSymbol) 0x1008ff81 (XF86Tools)
192 0x1008ff45 (XF86Launch5) 0x0000 (NoSymbol) 0x1008ff45 (XF86Launch5)
193 0x1008ff46 (XF86Launch6) 0x0000 (NoSymbol) 0x1008ff46 (XF86Launch6)
194 0x1008ff47 (XF86Launch7) 0x0000 (NoSymbol) 0x1008ff47 (XF86Launch7)
195 0x1008ff48 (XF86Launch8) 0x0000 (NoSymbol) 0x1008ff48 (XF86Launch8)
196 0x1008ff49 (XF86Launch9) 0x0000 (NoSymbol) 0x1008ff49 (XF86Launch9)
197
198 0x1008ffb2 (XF86AudioMicMute) 0x0000 (NoSymbol) 0x1008ffb2 (XF86AudioMicMute)
199 0x1008ffa9 (XF86TouchpadToggle) 0x0000 (NoSymbol) 0x1008ffa9 (XF86TouchpadToggle)
200 0x1008ffb0 (XF86TouchpadOn) 0x0000 (NoSymbol) 0x1008ffb0 (XF86TouchpadOn)
201 0x1008ffb1 (XF86TouchpadOff) 0x0000 (NoSymbol) 0x1008ffb1 (XF86TouchpadOff)
202
203 0xff7e (Mode_switch) 0x0000 (NoSymbol) 0xff7e (Mode_switch)
204 0x0000 (NoSymbol) 0xffe9 (Alt_L) 0x0000 (NoSymbol) 0xffe9 (Alt_L)
205 0x0000 (NoSymbol) 0xffe7 (Meta_L) 0x0000 (NoSymbol) 0xffe7 (Meta_L)
206 0x0000 (NoSymbol) 0xffeb (Super_L) 0x0000 (NoSymbol) 0xffeb (Super_L)
207 0x0000 (NoSymbol) 0xffed (Hyper_L) 0x0000 (NoSymbol) 0xffed (Hyper_L)
208 0x1008ff14 (XF86AudioPlay) 0x0000 (NoSymbol) 0x1008ff14 (XF86AudioPlay)
209 0x1008ff31 (XF86AudioPause) 0x0000 (NoSymbol) 0x1008ff31 (XF86AudioPause)
210 0x1008ff43 (XF86Launch3) 0x0000 (NoSymbol) 0x1008ff43 (XF86Launch3)
211 0x1008ff44 (XF86Launch4) 0x0000 (NoSymbol) 0x1008ff44 (XF86Launch4)
212 0x1008ff4b (XF86LaunchB) 0x0000 (NoSymbol) 0x1008ff4b (XF86LaunchB)
213 0x1008ffa7 (XF86Suspend) 0x0000 (NoSymbol) 0x1008ffa7 (XF86Suspend)
214 0x1008ff56 (XF86Close) 0x0000 (NoSymbol) 0x1008ff56 (XF86Close)
215 0x1008ff14 (XF86AudioPlay) 0x0000 (NoSymbol) 0x1008ff14 (XF86AudioPlay)
216 0x1008ff97 (XF86AudioForward) 0x0000 (NoSymbol) 0x1008ff97 (XF86AudioForward)
217
218 0xff61 (Print) 0x0000 (NoSymbol) 0xff61 (Print)
219
220 0x1008ff8f (XF86WebCam) 0x0000 (NoSymbol) 0x1008ff8f (XF86WebCam)
221
222
223 0x1008ff19 (XF86Mail) 0x0000 (NoSymbol) 0x1008ff19 (XF86Mail)
224 0x1008ff8e (XF86Messenger) 0x0000 (NoSymbol) 0x1008ff8e (XF86Messenger)
225 0x1008ff1b (XF86Search) 0x0000 (NoSymbol) 0x1008ff1b (XF86Search)
226 0x1008ff5f (XF86Go) 0x0000 (NoSymbol) 0x1008ff5f (XF86Go)
227 0x1008ff3c (XF86Finance) 0x0000 (NoSymbol) 0x1008ff3c (XF86Finance)
228 0x1008ff5e (XF86Game) 0x0000 (NoSymbol) 0x1008ff5e (XF86Game)
229 0x1008ff36 (XF86Shop) 0x0000 (NoSymbol) 0x1008ff36 (XF86Shop)
230
231 0xff69 (Cancel) 0x0000 (NoSymbol) 0xff69 (Cancel)
232 0x1008ff03 (XF86MonBrightnessDown) 0x0000 (NoSymbol) 0x1008ff03 (XF86MonBrightnessDown)
233 0x1008ff02 (XF86MonBrightnessUp) 0x0000 (NoSymbol) 0x1008ff02 (XF86MonBrightnessUp)
234 0x1008ff32 (XF86AudioMedia) 0x0000 (NoSymbol) 0x1008ff32 (XF86AudioMedia)
235 0x1008ff59 (XF86Display) 0x0000 (NoSymbol) 0x1008ff59 (XF86Display)
236 0x1008ff04 (XF86KbdLightOnOff) 0x0000 (NoSymbol) 0x1008ff04 (XF86KbdLightOnOff)
237 0x1008ff06 (XF86KbdBrightnessDown) 0x0000 (NoSymbol) 0x1008ff06 (XF86KbdBrightnessDown)
238 0x1008ff05 (XF86KbdBrightnessUp) 0x0000 (NoSymbol) 0x1008ff05 (XF86KbdBrightnessUp)
239 0x1008ff7b (XF86Send) 0x0000 (NoSymbol) 0x1008ff7b (XF86Send)
240 0x1008ff72 (XF86Reply) 0x0000 (NoSymbol) 0x1008ff72 (XF86Reply)
241 0x1008ff90 (XF86MailForward) 0x0000 (NoSymbol) 0x1008ff90 (XF86MailForward)
242 0x1008ff77 (XF86Save) 0x0000 (NoSymbol) 0x1008ff77 (XF86Save)
243 0x1008ff5b (XF86Documents) 0x0000 (NoSymbol) 0x1008ff5b (XF86Documents)
244 0x1008ff93 (XF86Battery) 0x0000 (NoSymbol) 0x1008ff93 (XF86Battery)
245 0x1008ff94 (XF86Bluetooth) 0x0000 (NoSymbol) 0x1008ff94 (XF86Bluetooth)
246 0x1008ff95 (XF86WLAN) 0x0000 (NoSymbol) 0x1008ff95 (XF86WLAN)
247
248
249
250
251
252
253
254
255
a@W530:~$ xmodmap -pp
There are 12 pointer buttons defined.
Physical Button
Button Code
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 10
11 11
12 12
a@W530:~$
真正奇怪的是,当我使用管理员账户登录时,AltGr 组合键仍然有效。但是,当我切换回普通用户账户后,AltGr 不再起作用。
在为这个问题苦苦挣扎了好一阵子之后,我找到了命令xev -event keyboard
。奇怪的是,当我使用 AltGr 不起作用的正常账户登录时,这会产生不同的结果。然后这个命令返回
FocusOut 事件,序列 37,合成 NO,窗口 0x3c00001,模式 NotifyGrab,细节 NotifyAncestor
FocusIn 事件,序列 37,合成 NO,窗口 0x3c00001,模式 NotifyUngrab,细节 NotifyAncestor
KeymapNotify 事件,序列 37,合成 NO,窗口 0x0,键:99 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0
而对于管理帐户,AltGr 可以工作并允许我到达它返回的键盘的第三级:
KeyPress 事件,序列 37,合成 NO,窗口 0x2c00001,根 0x124,subw 0x0,时间 7442734,(-338,129),根:(533,615),状态 0x0,键码 108(keysym 0xfe03,ISO_Level3_Shift),same_screen YES,XKeysymToKeycode 返回键码:92 XLookupString 给出 0 个字节:XmbLookupString 给出 0 个字节:XFilterEvent 返回:False
KeyRelease 事件,序列 37,合成 NO,窗口 0x2c00001,根 0x124,subw 0x0,时间 7442804,(-338,129),根:(533,615),状态 0x80,键码 108(keysym 0xfe03,ISO_Level3_Shift),same_screen YES,XKeysymToKeycode 返回键码:92 XLookupString 给出 0 个字节:XFilterEvent 返回:False
这次有两个事件:一个是按下 Alt 键时,另一个是释放 Alt 键时,如图所示。如果我在 AltGr 上还按下了另一个键,按下该键并释放它会产生额外的按下和释放事件,这与 Shift 键的情况类似。
从第二个答案如何在 Ubuntu 16.04 上启用 Alt-Gr?我们学会了改变替代字符键在 系统设置 > 键盘 > 快捷方式 > 打字到 AltGr。我有一个德语键盘,对话框也使用德语。因此我这样做了:
答案2
答案3
有一些配置文件~/.config/xfce4/
与键盘配置有关,从其中出现的“key”可以看出。它们按用户工作,从它们在文件系统中的位置可以看出。AltGr为用户工作gast
,所以我寻找了包含单词“key”的配置文件。
a@v:~$ grep -l -r 'key' /home/gast/.config/xfce4/
/home/gast/.config/xfce4/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
/home/gast/.config/xfce4/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml
/home/gast/.config/xfce4/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
/home/gast/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
/home/gast/.config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml
/home/gast/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml
a@v:~$
因为我有一个用户帐户“a”,其中键组合的键盘映射AltGr不起作用,而我有一个 gast 帐户,它们可以正常工作,所以我将这些文件的内容与它们的对应文件进行了比较。
在这样做时,我注意到这/home/a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
是阻止用户“a”使用AltGr组合键的原因。有一行
<property name="ISO_Level3_Shift" type="string" value="xfce4-screenshooter -cmw"/>
其中将xfce4-sceenshooter
与AltGr键关联。显然ISO_Level3_Shift
是该键的名称,该名称也出现在 的输出中xev
(作为该键起作用的用户)。另一个中.config/xfce4/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml
没有对 的引用ISO_Level3_Shift
。此文件的两个版本之间还存在其他几个差异。因此,我将该文件从有效的用户复制到了AltGr组合键无效的用户“a”。
但是,完成此操作后,AltGr-Keys 不会立即对用户“a”起作用。我不得不使用xfce4-keyboard-settings
删除“Tastenkürzel für die Belegungsänderung”(左侧下拉选择框)的设置:这两个框都必须指示减号,这显然意味着无。