Linux 上的双重角色密钥

Linux 上的双重角色密钥

我想将该Shift密钥用作双重角色密钥,例如具有以下两个功能:

  1. 正常Shift,例如左Shift+T结果是大写 'T'
  2. 作为一个\键,即如果按下并释放而没有任何其他键,它应该打印“\”。

另一个例子金沙SpaceShift一起

在 Linux 中可以实现这个功能吗?

答案1

xcape (https://github.com/alols/xcape) 允许使用修饰键作为快捷键。该程序作为守护进程运行,并且应该以某种方式自动启动。

语法很简单,在我的例子中是

xcape -t 200 -e 'Shift_L=backslash;Shift_R=End'

符号可以取自http://wiki.linuxquestions.org/wiki/List_of_Keysyms_Recognised_by_Xmodmapxmodmap -pm,修饰语是(我认为)中的修饰语。

请注意,守护进程不会与其他实例通信,因此为了编辑设置,必须终止旧设置。

有一个名为 ksuperkey 的分叉包,它与默认设置和 kde 自动启动文件相同,用于退出 kde 菜单。目前似乎有更多适用于 ksuperkey 的现成包(tinyurl.com/jcagjxv),但未来可能会发生变化,因为它将被 kde 窗口管理器本身的实现所取代(tinyurl.com/hcbku6b)

答案2

是的,仅适用于 X 而不是真实终端,您需要使用 xev 和 xmodmap(如果不在您的默认发行版中,请安装它),这些更改将在 X 注销后消失,因此您可以在桌面初始化脚本配置下保留它们。

请检查此处的答案:https://askubuntu.com/questions/24916/how-do-i-remap-certain-keys-or-devices

您无法轻松地重新映射终端上的按键,因为它将遵循 /usr/share/locale/* 中的键盘映射文件,而且修改起来也不太容易,此外,X 使用不同的键盘映射,但支持用户模式和系统覆盖。xev 和 xmodpam 是用户模式修改,但您可以在 /etc/X11/xorg.conf.d/ 的 InputClass 部分下创建 xorg 脚本。

希望能够帮助解决你的问题!

答案3

对于那些对“双键”功能感兴趣的人没有X,仅在 CLI(命令行界面)上,有一种解决方案是使用适当的键盘。优点是,例如双键 SPACE = CONTROL(如果与另一个键一起按下)将在插入的所有其他操作系统计算机上工作(MacOs、Windows、Linux...)。例如[UHK Keyboard can do this as part of their "UHK Agent" configuration software.][1](我是不是隶属于这家公司。)我只是认为这是一个非常直接的解决方案。我不知道如何在 Linux 的命令行界面上实现“双重角色键”,而且似乎没有。至少没有太多的头痛和修修补补。

相关内容