如何在 Kubuntu 中重新安装键盘(错误布局)以适应 CSA 键盘(CAN/CSA Z243.200-92),又名:加拿大多语言

如何在 Kubuntu 中重新安装键盘(错误布局)以适应 CSA 键盘(CAN/CSA Z243.200-92),又名:加拿大多语言

我可以下载新的键盘布局定义吗加拿大多语言(CSA 键盘)

这不是我习惯的,而且正如人们所猜测的,它非常烦人。

即使我选择相同的配置设置,键盘的布局也不相同,我不明白为什么。

我正在使用Fedora 34(KDE Plasma Shell 5)我刚刚切换到Ubuntu 21.10我想知道是否有办法重新下载提供配置的文件?

这就是我想要的,但是我缺少蓝色键和粉色键,它们不在它们应该在的位置,与下面的不同图像相比:

维基百科/CSA_键盘

CSA 键盘(维基百科)

我有一个 104 键键盘,目前有这个(错误的)布局,但这个名字是我想要使用的加拿大多语言

104 键键盘(错误)加拿大多语言布局

甚至所谓的第一部分第二部分错了...

第一部分

所谓第一部分 104 键键盘(错误)加拿大多语言布局

第二部分

所谓第二部分 104 键键盘(错误)加拿大多语言布局

答案1

这是我重写 CSA 键盘布局代码的文章。根据 wiki 图片和我的最佳猜测,这两个现在更接近了。

您可以插入/usr/share/X11/xkb/symbols/ca 但是我不会编辑键盘的图像,我不知道如何。

partial
xkb_symbols "csa" {

    name[Group1] = "Canadian Standard";

    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
    key <TLDE>  { [     slash,  backslash,            bar, NoSymbol,
               NoSymbol,     hyphen ]   };
    key <AE01>  { [         1,     exclam,      plusminus, NoSymbol,
              onesuperior, exclamdown ] };
    key <AE02>  { [         2,         at,             at, NoSymbol,
              twosuperior, NoSymbol ]   };
    key <AE03>  { [         3, numbersign,       sterling, NoSymbol,
            threesuperior,   sterling ] };
    key <AE04>  { [         4,     dollar,           currency, NoSymbol,
               onequarter,   Eurosign ] };
    key <AE05>  { [         5,    percent,       currency, NoSymbol,
                  onehalf, threeeighths ]   };
    key <AE06>  { [         6,   question,        notsign, NoSymbol,
            threequarters, fiveeighths ]    };
    key <AE07>  { [         7,  ampersand,      braceleft, NoSymbol,
               NoSymbol, seveneighths ] };
    key <AE08>  { [         8,   asterisk,     braceright, NoSymbol,
               NoSymbol,  trademark ]   };
    key <AE09>  { [         9,  parenleft,    bracketleft, NoSymbol,
               NoSymbol,  plusminus ]   };
    key <AE10>  { [         0, parenright,   bracketright, NoSymbol ] };
    key <AE11>  { [     minus, underscore,        onehalf, NoSymbol,
               NoSymbol, questiondown]  };
    key <AE12>  { [     equal,       plus,        notsign, NoSymbol,
            dead_cedilla, dead_ogonek ] };

    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
    key <AD01>  { [         q,           Q,     NoSymbol, NoSymbol,
           NoSymbol, Greek_OMEGA ]  };
    key <AD02>  { [         w,           W,     NoSymbol, NoSymbol,
              lstroke,     Lstroke ]    };
    key <AD03>  { [         e,           E,     Eurosign, NoSymbol,
                   oe,          OE ]    };
    key <AD04>  { [         r,           R,     NoSymbol, NoSymbol,
                paragraph,  registered ]    };
    key <AD05>  { [         t,           T,     NoSymbol, NoSymbol,
               tslash,      Tslash ]    };
    key <AD06>  { [         y,           Y,     NoSymbol, NoSymbol,
            leftarrow,         yen ]    };
    key <AD07>  { [         u,           U,     NoSymbol, NoSymbol,
                downarrow,     uparrow ]    };
    key <AD08>  { [         i,           I,     NoSymbol, NoSymbol,
               rightarrow,    idotless ]    };
    key <AD09>  { [         o,           O,        section, NoSymbol,
               oslash,    Ooblique ]    };
    key <AD10>  { [         p,           P,      paragraph, NoSymbol,
                thorn,       THORN ]    };

    key.type[group1]="EIGHT_LEVEL";
    key <AD11>  { [dead_circumflex, dead_diaeresis, dead_grave, NoSymbol,
                NoSymbol, dead_abovering ]  };

    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
    key <AD12>  { [  ccedilla,   Ccedilla,     asciitilde, NoSymbol,
           dead_tilde,    dead_macron ] };

    key <AC01>  { [         a,          A,     NoSymbol, NoSymbol,
                   ae,         AE ] };
    key <AC02>  { [         s,          S,     NoSymbol, NoSymbol,
                   ssharp,    section ] };
    key <AC03>  { [         d,          D,     NoSymbol, NoSymbol,
                  eth,        ETH ] };
    key <AC04>  { [         f,          F,     NoSymbol, NoSymbol,
               NoSymbol, ordfeminine ]  };
    key <AC05>  { [         g,          G,     NoSymbol, NoSymbol,
                  eng,        ENG ] };
    key <AC06>  { [         h,          H,     NoSymbol, NoSymbol,
                  hstroke,    Hstroke ] };
    key <AC07>  { [         j,          J,     NoSymbol, NoSymbol,
                U0133,      U0132 ] };
    key <AC08>  { [         k,          K,     NoSymbol, NoSymbol,
                  kra, NoSymbol ]   };
    key <AC09>  { [         l,          L,     NoSymbol, NoSymbol,
                U0140,      U013F ] };

    key.type[group1]="EIGHT_LEVEL";
    key <AC10>  { [ semicolon,          colon,         degree, NoSymbol,
               dead_acute, dead_doubleacute ]   };

    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
    key <AC11>  { [    egrave,         Egrave,      braceleft, NoSymbol,
               NoSymbol,  dead_caron ]  };
    key <BKSL>  { [    agrave,         Agrave,     braceright, NoSymbol,
               NoSymbol,  dead_breve ]  };

    key <LSGT>  { [    ugrave,     Ugrave,         degree, NoSymbol,
               NoSymbol,   brokenbar ]  };

    key.type[group1]="FOUR_LEVEL_SEMIALPHABETIC";
    key <AB01>  { [         z,          Z,  guillemotleft, NoSymbol ]   };
    key <AB02>  { [         x,          X, guillemotright, NoSymbol ]   };

    key.type[group1]="EIGHT_LEVEL_SEMIALPHABETIC";
    key <AB03>  { [         c,          C,     NoSymbol, NoSymbol,
                 cent,   copyright ]    };
    key <AB04>  { [         v,          V,     NoSymbol, NoSymbol,
          leftdoublequotemark,  leftsinglequotemark ]   };
    key <AB05>  { [         b,          B,     NoSymbol, NoSymbol,
         rightdoublequotemark, rightsinglequotemark ]   };
    key <AB06>  { [         n,          N,     NoSymbol, NoSymbol,
                U0149,       U266A ]    };
    key <AB07>  { [         m,          M,             mu, NoSymbol,
                   mu,   masculine ]    };
    key <AB08>  { [     comma, apostrophe,           less, NoSymbol,
               Greek_horizbar, multiply ]   };
    key <AB09>  { [    period,   quotedbl,        greater, NoSymbol,
               periodcentered, division ]   };
    key <AB10>  { [    eacute,     Eacute,     dead_acute, NoSymbol,
               NoSymbol, dead_abovedot ]    };

    include "nbsp(level3s)"

    modifier_map Control{ Control_L };

    include "level3(ralt_switch)"
    include "level5(rctrl_switch)"
};

这是一个确认,而不是答案:

在 Kubuntu 上选择加拿大法语多语言键盘布局

Kubuntu_CSA


Unity 桌面 20.04 中的加拿大多语言键盘选择

实际布局


与 CSA 键盘设计相比,

CSA_维基百科

大部分 3 级字符(使用 AltGr 键)都是正确的。而部分 4 级字符不正确,如6a-等等é

答案2

加拿大多语言标准 (AKA CAN/CSA Z243.200-92) 至少从 2006 年起就已在 Ubuntu 上存在。CSA 键盘、加拿大法语 ACNOR 和加拿大多语言标准意思相同。

使用文本编辑器检查此文件:

/usr/share/X11/xkb/符号/ca

然后在此文件中搜索:

加拿大多语种(第一部分)

加拿大多语种(第二部分)

两者都必须按此顺序安装。然后您需要配置一个快捷方式,以便在按 Ctrl-Right 时选择第 2 部分。它们配置为 2 个不同的布局。

如果您使用 Gnome,则必须安装“Gnome Tweak Tools”。然后选择“键盘和鼠标”、“键盘布局选项”、更改布局的键,然后选择 Ctrl-Right。

我不是 KDE 用户,但我确信您也可以通过这种方式配置您的 2 种布局。

编辑:这真的很奇怪,我在 Ubuntu 20.04 LTS 上,布局很好!我刚刚添加了欧元符号(键 4,E)并移动了货币符号(键 4)以匹配 Windows 版本。

    partial xkb_symbols "multi" {

    include "ca(fr)"

    name[Group1] = "Canadian Multilingual (1st part)";

    key <TLDE>    { [     slash,  backslash,           bar ]  };
    key <AE01>    { [         1,     exclam ] };
    key <AE02>    { [         2,         at ] };
    key <AE03>    { [         3, numbersign ] };
    key <AE04>    { [         4,     dollar,           currency ] };
    key <AE05>    { [         5,    percent, NoSymbol ]   };
    key <AE06>    { [         6,   question ] };
    key <AE07>    { [         7,  ampersand,    braceleft ]   };
    key <AE08>    { [         8,   asterisk,   braceright ]   };
    key <AE09>    { [         9,  parenleft,  bracketleft ]   };
    key <AE10>    { [         0, parenright, bracketright ]   };
    key <AE11>    { [     minus, underscore ] };
    key <AE12>    { [     equal,       plus,      notsign ]   };
    
    key <AD03>  { [         e,          E,          EuroSign ]  };
    key <AD09>    { [         o,          O ] };
    key <AD10>    { [         p,          P ] };
    key <AD11>    { [dead_circumflex, dead_diaeresis, dead_grave  ]   };
    key <AD12>    { [  ccedilla,   Ccedilla,   asciitilde ]   };

    key <AC10>    { [ semicolon,      colon,     degree ] };
    key <AC11>    { [    egrave,     Egrave ] };
    key <BKSL>    { [    agrave,     Agrave ] };

    key <LSGT>    { [    ugrave,     Ugrave ]     };
    key <AB01>    { [         z,          Z, guillemotleft  ] };
    key <AB02>    { [         x,          X, guillemotright ] };
    key <AB08>    { [     comma, apostrophe,           less ] };
    key <AB09>    { [    period,   quotedbl,        greater ] };
    key <AB10>    { [    eacute,     Eacute ] }; };

partial xkb_symbols "multi-2gr" {

    name[Group1] = "Canadian Multilingual (2nd part)";

    key <TLDE>    { [    NoSymbol,      hyphen ]  };
    key <AE01>    { [   onesuperior,  exclamdown ]    };
    key <AE02>    { [   twosuperior,  NoSymbol ]  };
    key <AE03>    { [ threesuperior,    sterling ]    };
    key <AE04>    { [    onequarter,    EuroSign ]    };
    key <AE05>    { [       onehalf,threeeighths ]    };
    key <AE06>    { [ threequarters, fiveeighths ]    };
    key <AE07>    { [    NoSymbol,seveneighths ]  };
    key <AE08>    { [    NoSymbol,   trademark ]  };
    key <AE09>    { [    NoSymbol,   plusminus ]  };

    key <AE11>    { [    NoSymbol, questiondown]  };
    key <AE12>    { [  dead_cedilla, dead_ogonek ]    };

    key <AD01>    { [ NoSymbol,    Greek_OMEGA ]  };
    key <AD02>    { [    lstroke,        Lstroke ]    };
    key <AD03>    { [         oe,             OE ]    };
    key <AD04>    { [  paragraph,     registered ]    };
    key <AD05>    { [     tslash,         Tslash ]    };
    key <AD06>    { [  leftarrow,            yen ]    };
    key <AD07>    { [  downarrow,        uparrow ]    };
    key <AD08>    { [ rightarrow,       idotless ]    };
    key <AD09>    { [     oslash,       Ooblique ]    };
    key <AD10>    { [      thorn,          THORN ]    };
    key <AD11>    { [ NoSymbol, dead_abovering ]  };
    key <AD12>    { [ dead_tilde,    dead_macron ]    };

    key <AC01>    { [         ae,          AE ]   };
    key <AC02>    { [     ssharp,     section ]   };
    key <AC03>    { [        eth,         ETH ]   };
    key <AC04>    { [ NoSymbol, ordfeminine ] };
    key <AC05>    { [        eng,         ENG ]   };
    key <AC06>    { [    hstroke,     Hstroke ]   };
    key <AC07>    { [      U0133,       U0132 ]   };
    key <AC08>    { [        kra,  NoSymbol ] };
    key <AC09>    { [      U0140,       U013F ]   };
    key <AC10>    { [ dead_acute, dead_doubleacute ]  };
    key <AC11>    { [ NoSymbol,  dead_caron ] };
    key <BKSL>    { [ NoSymbol,  dead_breve ] };


    key <LSGT>    { [ NoSymbol,   brokenbar ] };

    key <AB03>    { [       cent,   copyright ]   };
    key <AB04>    { [  leftdoublequotemark,  leftsinglequotemark ]    };
    key <AB05>    { [ rightdoublequotemark, rightsinglequotemark ]    };
    key <AB06>    { [      U0149,       U266A ]   };
    key <AB07>    { [         mu,   masculine ]   };
    key <AB08>    { [ Greek_horizbar, multiply ]  };
    key <AB09>    { [ periodcentered, division ]  };
    key <AB10>    { [ NoSymbol, dead_abovedot ]   }; };

相关内容