为什么键盘有4个布局的限制?


9

我只是发现我不能为键盘添加超过4种布局。Googling透露这是一个普遍的限制(至少对于GNU / Linux而言),唯一的解决方法是对脚本使用某些骇人听闻的方式。这背后真的有技术原因吗?如果是,那是什么?



到2018年底,某些台式机仍存在此限制。Gnome允许我配置更多布局,但XFCE则不行。我认为至少Gnome解决了htorque的答案中提到的问题,并且XFCE中的代码落后于可能的上游。
LiveWireBT

Answers:


9

引用Peter Hutterer(在X.Org工作的Red Hat员工):

有关此功能以及为何尚未实现的一些信息:Te 4组限制由协议线路格式强制。只有通过向XKB添加其他请求和事件并重写客户端以切换到新的XKB版本,才能添加对4个以上组的支持。另外,必须确保与旧协议的兼容性,以便当前的XKB客户端仍可以在新的XKB版本中正常运行。

这既复杂又非常耗时。当然,欢迎自愿者解决这个问题。

[...]

它在协议的某些位中进行了编码,而其他位则用于其他信息。因此,对于高于4的任何内容,您在请求/事件中都需要额外的字节,而添加额外的字节则需要修改协议。然后,您必须与仅了解4个组的客户打交道,如果第5组上有键盘,该如何处理。

为什么我们在这一层之上没有hack-我不知道...这肯定是有史以来最弱的限制。:D


更加奇怪的是,通过使用脚本,您实际上可以使用4个以上的代码。
Mussnoon 2011年

如果您使用的是unix.se,也可以在这里发布答案,以便我也可以在这里接受它:unix.stackexchange.com/questions/5963/…– Mussnoon
2011年

我不是,得自己回答。;-)
htorque 2011年

3

我经常用英语,德语,瑞典语和中文写作。这是四点,但是我也在学习俄语,希望通过GUI进行额外的切换。同时,脚本是可行的解决方案:

http://ubuntuforums.org/showthread.php?p=10333055#post10333055

可能有人注意到,使用俄语时,可以选择“标准”俄语键盘布局,也可以选择更方便(对于我们中的学习者)与QWERTY配对的语音布局。

而且,我们许多人都使用某种形式的Dvorak,这也占了上风。

因此,我的计算机如下所示:

键盘布局:

美国Dvorak(编程人员)瑞典语德语俄语俄语语音

另外还有一个带有ibus切换按钮的中文拼音键盘图标。


0

该协议为键盘切换预留了两位。这比许多人需要的多两个。我见过的大多数用户切换键盘布局都使用两个键盘。当地布局和国际布局。国际布局通常处理所有需要的键的组合。剩下一个多余的位。我见过用户使用三种布局,但通常从未使用过一种。

我对您需要超过四个布局的操作以及不断变化的键映射的工作方式感兴趣。我发现很难使用户习惯两种布局,即使它解决了国际化方面的问题。


4
出于所有应有的尊重,这不是一个正确的答案。语言学家,语言爱好者以及正在学习一种或两种其他语言的双语或三语人士都需要此功能。测试或尝试新布局(例如Dvorak)时也可能需要它。但是,为什么人们需要四个以上的输入布局并不重要。事实是他们这样做。
Teekin

@HelgiHrafnGunnarsson这样的协议是在带宽非常有限且稀疏分配位时创建的。我相信我的帖子解释了可能使用的推理。我与许多使用一种布局的双语人员一起工作。有许多可用的多语言布局,与您每次切换语言时更改布局相比,键入它们可能更容易。
BillThor
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.