我的自定义键盘不起作用

我的自定义键盘不起作用

我正在尝试创建一个受程序员的 Dvorak 启发的 Colemak 修改版本,但旨在用 LaTeX 书写。当前的实验版本如下所示。与程序员的 Dvorak 一样,顶部键默认产生符号,而按住 Shift 会产生数字。有时,我想写很多数字,为此需要某种 Caps Lock,但这只会影响顶行,而不会将字母大写。我已将此 Caps Lock 放在“波浪线”按钮上,并将类型“四级”分配给所有我不想受此影响的字符。

但是,我有两个问题:

首先,Caps Lock 适用于符号行,但仍然会将字母大写(即使我将布局放在键盘列表的顶部)。其次,如果我尝试从列表中删除标准键盘,我会收到以下可爱的消息:

激活 XKB 配置时出错。可能存在多种原因。

如果你将此情况报告为错误,请包括

  • xprop -root|grep XKB

  • gsettings 获取 org.gnome.libgnomekbd.keyboard 模型

  • gsettings 获取 org.gnome.libgnomekbd.keyboard 布局

  • gsettings 获取 org.gnome.libgnomekbd.keyboard 选项

我已经查找打字错误好几个小时了。我究竟做错了什么?

default  partial alphanumeric_keys modifier_keys

// Colemak symbols for xkb on X.Org Server 7.x
// 2006-01-01 Shai Coleman, http://colemak.com/

partial alphanumeric_keys
xkb_symbols "coltex" {
    include "us"
    name[Group1]= "English (ColTeX)";

    key.type[Group1]="FOUR_LEVEL";

    key <TLDE> { [ Caps_Lock ]};

    key <AE01> { [            bracketleft, grave ] };
    key <AE02> { [            bracketright,           7 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE03> { [            braceleft,   5 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE04> { [            braceright,       3,            threesuperior ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE05> { [            parenleft,      1,        onesuperior ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE06> { [            ampersand,  9 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE07> { [            percent,    0 ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE08> { [            parenright,     2,           twosuperior ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE09> { [            plus,    4, EuroSign ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };
    key <AE10> { [            minus,   6, sterling ], type[Group1] = "FOUR_LEVEL_ALPHABETIC"  };

    key <AE11> { [        asciicircum, 8 ] };
    key <AE12> { [        numbersign, bar ] };

    key <AD01> { [            q,            Q,      dead_tilde ]};
    key <AD02> { [            w,            W,      dead_circumflex ] };
    key <AD03> { [            f,            F,          dead_grave ] };
    key <AD04> { [            p,            P,          dead_acute ] };
    key <AD05> { [            g,            G,     dead_doubleacute ] };
    key <AD06> { [            j,            J ] };
    key <AD07> { [            l,            L,         leftsinglequotemark  ] };
    key <AD08> { [            u,            U,          rightsinglequotemark ] };
    key <AD09> { [            y,            Y  ] };
    key <AD10> { [       backslash,         exclam  ] };
    key <AD11> { [  equal,    slash ] };
    key <AD12> { [ asterisk, quotedbl   ] };
    key <BKSL> { [    underscore, at  ] };

    key <AC01> { [            a,            A,          eacute,           Eacute ],type[Group1] = "FOUR_LEVEL_ALPHABETIC" };
    key <AC02> { [            r,            R,           aring,            Aring ] };
    key <AC03> { [            s,            S,           oslash,         Ooblique ] };
    key <AC04> { [            t,            T,              ae,               AE ] };
    key <AC05> { [            d,            D, dead_diaeresis ] };
    key <AC06> { [            h,            H ] };
    key <AC07> { [            n,            N,          leftdoublequotemark ] };
    key <AC08> { [            e,            E,          rightdoublequotemark  ] };
    key <AC09> { [            i,            I, guillemotright ] };
    key <AC10> { [            o,            O, guillemotleft  ] };
    key <AC11> { [    dollar,        apostrophe  ] };

    key <AB01> { [            z,            Z, oe, OE ] };
    key <AB02> { [            x,            X,         multiply  ] };
    key <AB03> { [            c,            C,        ccedilla,         Ccedilla ] };
    key <AB04> { [            v,            V,          ssharp ] };
    key <AB05> { [            b,            B ] };
    key <AB06> { [            k,            K  ] };
    key <AB07> { [            m,            M ] };
    key <AB08> { [        comma,         less ] };
    key <AB09> { [       period,      greater  ] };
    key <AB10> { [        semicolon,     colon,    endash,       emdash ] };

    key <CAPS> { [    BackSpace,    BackSpace,       BackSpace,        BackSpace ] };
    key <LSGT> { [        asciitilde,   question, quotedbl,    nobreakspace ] };
    key <SPCE> { [        space,        space,           space,     nobreakspace ] };

    include "level3(ralt_switch)"
};

相关内容