空格作为修饰键 XKB

Wil*_*iam 7 keyboard xorg

背景:

最终,我正在尝试设置类似于此演示的自定义单手键盘布局(单击one-handed typing demo)。

XKB 用于许多 linux 发行版。维基百科对xkb.

在人机界面中,X 键盘扩展或 XKB 是 X Window 系统的一部分,它扩展了通过 X Window 系统核心协议提供的控制键盘的能力。这个扩展的主要特点是:

不幸的是,要实现此功能,我必须使空格键成为修饰符。

问题:

您将如何在 XKB 程序中将空格键设置为修饰符?

http://www.charvolant.org/~doug/xkb/html/node3.html

默认情况下,空间似乎无法成为修饰符。

小智 5

我发现Space2Ctrl是执行此重新映射的最佳工具。非常简单,不需要任何配置,并且按预期工作,没有过多的延迟。我尝试了keydouble,但在屏幕上显示空间之前它引入了明显的延迟


sar*_*old 3

我认为你会遇到巨大的困难来“点击太空”;坚持转变'行为。

也就是说,您可以使用xkbcomp :0.0将当前的键盘映射从服务器转储到文件server-0_0.xkb,并且我认为我看到了一种让空格键充当修饰符的简单方法:

key <LALT> {         [           Alt_L,          Meta_L ] };
key <SPCE> {         [           space ] };
....
modifier_map Mod1 { <LALT> };
modifier_map Lock { <CAPS> };
Run Code Online (Sandbox Code Playgroud)

尝试替换spaceMod5(或任何最有意义的修饰键),然后添加新modifier_map行:

key <LALT> {         [           Alt_L,          Meta_L ] };
key <SPCE> {         [           Meta5 ] };
....
modifier_map Mod1 { <LALT> };
modifier_map Lock { <CAPS> };
modifier_map Meta5 { <SPCE> };
Run Code Online (Sandbox Code Playgroud)

这是未经测试的,但感觉是正确的。

但我不知道你如何才能得到一个普通的旧空间。我建议将其完全映射到另一个键。