如何为Linux创建自定义键盘布局?

哈桑

理想情况下,我正在寻找一个GUI工具,也许是一个Web应用程序,但是有关为键盘布局创建文本定义的良好文档也很好。这里的正常程序是什么?

这个问题中,询问者已经决定使用“ setxkbmap”。这是推荐的方法吗?是否可以将布局添加到git repo中,以便在需要时可以对其进行更改?

吉勒斯“别再邪恶了”

您可以使用XKeyCaps编辑键盘映射从好的方面来说,XKeyCaps是一个GUI,并且非常成熟。XKeyCaps的缺点是,它只是旧式X窗口键映射接口xmodmap的前端,而不是现代接口XKB的前端

如果需要,可以使用xmodmap很好,但是它不如XKB强大。xmodmap缺少的XKB功能包括:

  • 更好地处理修饰符。X11有许多与修饰符相关的怪癖,包括CapsLock和NumLock被视为修饰符的事实。我对XKB所做的某事与xmodmap不兼容的一个例子是,我使Alt+ CapsLockbe Lock(这就是X11拼写大写锁定的方式),但CapsLock本身不是另一件事xmodmap的不能做的,是有不同的套改性剂影响不同的密钥,例如有ShiftAltGr影响打印字符,但CtrlAlt影响功能键。
  • XKB由可组合模块组成。Xmodmap是单片的。这是伟大的谁想要结合预定义的设置人(“给我一个匈牙利键盘的Ctrl和CapsLock键互换,Alt+WindowsMenu,并为Sun 5键盘的键码”),但你不会在意,因为你制作自己的布局。
  • 如果您热插拔键盘,则将重新应用XKB系统的默认值。这也是XKB的限制,因为重新应用系统默认值,而不是您的用户设置。
  • XKB对非字母语言或多脚本输入有更好的支持。我无法提供详细信息,因为这不是我很了解的主题。
  • 有一些工具可以在布局之间快速切换(例如,具有特定于窗口的布局)或指示仅适用于XKB的当前键盘布局。
  • 我不确定Wayland是否支持xmodmap。

网上有一些XKB GUI编辑器,但我能找到的都是那些被迅速放弃并且不像XKeyCaps那样容易安装的项目。例如,我找不到带有Ubuntu软件包的软件包。

如果您决定手动编写键盘映射,则xmodmap的优势在于它非常简单。您可以阅读手册页,也可以看一个示例,您将很快了解除修饰符的精妙之处之外的所有内容。如果您不知道如何使用xmodmap进行操作,则可能是不可能的。XKB的优点再次在于它更强大。XKB的缺点是它很复杂且文档记录很差。一些建议阅读,如果你想走这条路:

  • 与往常一样,Arch Wiki
  • XKB问题在Unix Stack Exchange上。
  • 尽管XKB配置不可靠,但名称和使用年限仍然是该主题上的最佳资源之一。xkb编译如何工作?可能是有用的补充。
  • X11 Wiki链接的其他资源可能有帮助,也可能没有帮助。
  • xkbcomp -a :0 current.xkb 将您当前的布局转储到文件中。

无论选择哪种方式,键盘映射源都是文本文件或文本文件的集合,都可以很好地与版本控制一起使用。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章