如何设置自定义键盘布局?

我希望我可以设计一个自己的键盘布局(如果单独按下,使用Shift或AltGr为每个键输入指定符号),并在我的XUbuntu 11.04系统中的所有其他布局中设置它。 这该怎么做?

Ubuntu 10.10

我使用美国和泰国布局的本地键盘。
us布局对我来说没问题,但我喜欢有一些额外的德语字符,比如äöü ÄÖÜ这可以很容易地用xmodmap实现,但如果切换到第二个布局,你会发现一些奇怪的结果。

我找到了一个很好的解决方案:创建和使用自定义键盘!

  1. /usr/share/X11/xkb/symbols/选择您最近的偏好,在我的情况下us并用新名称保存: us-de

  2. 删除任何你不需要的东西,并改变,你喜欢什么。 我的档案给us-de

     default xkb_symbols "basic" { name[Group1]= "ASCII with german"; // Alphanumeric section key  { [ grave, asciitilde ] }; key  { [ 1, exclam ] }; key  { [ 2, at, twosuperior ] }; key  { [ 3, numbersign, threesuperior ] }; key  { [ 4, dollar, onequarter ] }; key  { [ 5, percent, onehalf ] }; key  { [ 6, asciicircum, threequarters ] }; key  { [ 7, ampersand ] }; key  { [ 8, asterisk, oneeighth ] }; key  { [ 9, parenleft ] }; key  { [ 0, parenright, degree ] }; key  { [ minus, underscore ] }; key  { [ equal, plus ] }; key  { [ q, Q ] }; key  { [ w, W ] }; key  { [ e, E, EuroSign, cent ] }; key  { [ r, R ] }; key  { [ t, T ] }; key  { [ y, Y ] }; key  { [ u, U, udiaeresis, Udiaeresis ] }; key  { [ i, I ] }; key  { [ o, O, odiaeresis, Odiaeresis ] }; key  { [ p, P ] }; key  { [ bracketleft, braceleft ] }; key  { [ bracketright, braceright ] }; key  { [ a, A, adiaeresis, Adiaeresis ] }; key  { [ s, S ] }; key  { [ d, D ] }; key  { [ f, F ] }; key  { [ g, G ] }; key  { [ h, H ] }; key  { [ j, J ] }; key  { [ k, K ] }; key  { [ l, L ] }; key  { [ semicolon, colon ] }; key  { [ apostrophe, quotedbl ] }; key  { [ z, Z ] }; key  { [ x, X ] }; key  { [ c, C ] }; key  { [ v, V ] }; key  { [ b, B ] }; key  { [ n, N ] }; key  { [ m, M, mu ] }; key  { [ comma, less ] }; key  { [ period, greater ] }; key  { [ slash, question ] }; key  { [ backslash, bar ] }; key  { [ VoidSymbol ] }; // End alphanumeric section include "level3(ralt_switch)" }; 
  3. /usr/share/X11/xkb/rules/evdev.xml修改evdev.xml以便识别您的自定义键盘:搜索并在之前添加以下内容:

       us-de  US-DE  ASCII with german  eng    
    • a) us-deX11/xkb/symbols新键盘布局的文件名
    • b) US-DE这将出现例如。 在指标小程序中
    • c) ASCII with german必须与文件开头的文本一致:
      name[Group1]= "ASCII with german" ; 此文本也会在“布局”下显示为评论
    • d)如果您选择“eng”,您的布局将显示在系统 – >首选项 – >键盘 – >选项卡布局 – >添加 – >按语言 – >英语“变体”下
  4. 注销并再次登录,如果可以找到自定义布局,请检查系统 – >首选项 – >键盘 – >选项卡布局 – >添加 – >按语言 – >英文,开心! 你准备好了! 在这里选择你的第一个和第二个。 在“选项”下添加键盘切换器小程序,您也可以禁用CapsLock键。

  5. 默认键盘会惹恼你,有时会重新出现…如果你想摆脱这个,编辑/var/cache/gdm/$USER/dmrc并将任何现有的东西作为新的默认值: Layout=us-de然后重启。

基于Andy Meier于2010年12月28日在UbuntuForums.com上发布的post 。