我花了几个小时尝试让它工作,但我不知道我做错了什么。我必须承认,我对 Ubuntu 还很陌生,所以我可能忽略了一些显而易见的东西。
我在这里读过几个关于同一件事的问题和答案,但没有一个答案能帮助我。
我正在尝试设置自定义键盘布局,因为我来自丹麦,我们有三个可笑的字母(Æ、ø 和 å),我需要时不时地写它们。
我希望能得到一些帮助的是,当我进入这个文件夹时:
/usr/share/X11/xkb/symbols/
并编辑“us”文件,我在其中进行了以下更改:
key <AE05> { [ 5, percent ] };
更改为:
key <AE05> { [ J, percent ] };
然后我仍然无法改变布局。我这样做只是为了让这个该死的布局做点什么(这样每当我在键盘上按下“5”时它就会写出“J”)。理想情况下,我想映射
- æ 至ALTGR+a
- ø 至ALTGR+s 和
- å 至ALTGR+d
但我想,如果我甚至无法将“5”改为“J”,那么我应该先让它工作起来。
是的...我使用的是正确版本的英文键盘 - 称为“英语(美国,国际带死键)”。我也尝试修改常规英文键盘(称为“英语(美国)”),但运气也一样差。
以下是来自‘us’文件的布局代码:
partial alphanumeric_keys
73 xkb_symbols "intl" {
74
75 name[Group1]= "English (US, international with dead keys)";
76
77 include "us(basic)"
78
79 key <TLDE> { [dead_grave, dead_tilde, grave, asciitilde ] };
80 key <AE01> { [ 1, exclam, exclamdown, onesuperior ] };
81 key <AE02> { [ 2, at, twosuperior, dead_doubleacute ] };
82 key <AE03> { [ 3, numbersign, threesuperior, dead_macron ] };
83 key <AE04> { [ 4, dollar, currency, sterling ] };
84 key <AE05> { [ J, percent, EuroSign, dead_cedilla ] };
85 key <AE06> { [ 6, dead_circumflex, onequarter, asciicircum ] };
86 key <AE07> { [ 7, ampersand, onehalf, dead_horn ] };
87 key <AE08> { [ 8, asterisk, threequarters, dead_ogonek ] };
88 key <AE09> { [ 9, parenleft, leftsinglequotemark, dead_breve ] };
89 key <AE10> { [ 0, parenright, rightsinglequotemark, dead_abovering ] };
90 key <AE11> { [ minus, underscore, yen, dead_belowdot ] };
91 key <AE12> { [ equal, plus, multiply, division ] };
92
93 key <AD01> { [ q, Q, adiaeresis, Adiaeresis ] };
94 key <AD02> { [ w, W, aring, Aring ] };
95 key <AD03> { [ e, E, eacute, Eacute ] };
96 key <AD04> { [ r, R, registered, registered ] };
97 key <AD05> { [ t, T, thorn, THORN ] };
98 key <AD06> { [ y, Y, udiaeresis, Udiaeresis ] };
99 key <AD07> { [ u, U, uacute, Uacute ] };
100 key <AD08> { [ i, I, iacute, Iacute ] };
101 key <AD09> { [ o, O, oacute, Oacute ] };
102 key <AD10> { [ p, P, odiaeresis, Odiaeresis ] };
103 key <AD11> { [ bracketleft, braceleft, guillemotleft, leftdoublequotemark ] };
104 key <AD12> { [bracketright, braceright, guillemotright, rightdoublequotemark ] };
105
106 key <AC01> { [ a, A, aacute, Aacute ] };
107 key <AC02> { [ s, S, ssharp, section ] };
108 key <AC03> { [ d, D, eth, ETH ] };
109 key <AC04> { [ f, F, f, F ] };
110 key <AC05> { [ g, G, g, G ] };
111 key <AC06> { [ h, H, h, H ] };
112 key <AC07> { [ j, J, j, J ] };
113 key <AC08> { [ k, K, oe, OE ] };
114
115 key <AC09> { [ l, L, oslash, Ooblique ] };
116 key <AC10> { [ semicolon, colon, paragraph, degree ] };
117 key <AC11> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] };
118
119 key <AB01> { [ z, Z, ae, AE ] };
120 key <AB02> { [ x, X, x, X ] };
121 key <AB03> { [ c, C, copyright, cent ] };
122 key <AB04> { [ v, V, v, V ] };
123 key <AB05> { [ b, B, b, B ] };
124 key <AB06> { [ n, N, ntilde, Ntilde ] };
125 key <AB07> { [ m, M, mu, mu ] };
126 key <AB08> { [ comma, less, ccedilla, Ccedilla ] };
127 key <AB09> { [ period, greater, dead_abovedot, dead_caron ] };
128 key <AB10> { [ slash, question, questiondown, dead_hook ] };
129 key <BKSL> { [ backslash, bar, notsign, brokenbar ] };
130
131 key <LSGT> { [ backslash, bar, backslash, bar ] };
132
133 include "level3(ralt_switch)"
134 };
答案1
删除 xkb 缓存。
笔记:
要加载布局菜单的更改,只需关闭 gnome-keyboard-preferences 并重新加载,无需重新启动窗口管理器。
Ubuntu 版本 (13.10) 中有一个变化,导致在修改“/usr/share/X11/xkb/symbols”目录中的文件后键盘设置缓存不会刷新。看起来更改没有应用。要强制刷新缓存,应该从“/var/lib/xkb”中删除 *.xkm 文件。参考:如何:自定义键盘布局定义:
sudo rm /var/lib/xkb/*.xkm
或者
sudo dpkg-reconfigure xkb-data
这是对该主题的抄袭:如何添加新的键盘布局(自定义键盘布局定义)