长按可大写

长按可大写

麦角霉素键盘有一个很好的功能,他们描述如下:

在此输入图像描述

双功能键

点击您的 Z 键,它会按预期发送字母 Z。按住它......它会变成Alt。这就是双功能键的力量:点击时,它们会发送一个字符。持有时,它们充当修饰符。 Alt、Ctrl 和其他按键从未如此简单。

我已经配置了我的键盘,以便每个字母在按住时都变成大写版本(因此,轻击a会产生“a”,较长的轻击会产生“A”),但我并不总是能够访问该键盘并且我很怀念这个功能。

有什么方法可以独立于硬件实现同样的事情吗?

有一个很相似的东西AutoHotkey 存在(参见还这里),但我正在寻找 Unix(最好是 KDE)解决方案。

也许有一些东西自动键

答案1

我参加聚会迟到了,但我做了自己的解决方案,因为我找不到合适的方法来模仿莫尔斯电码AutoHotkey 的功能。尽管它使用低级别权限来读取 /dev 输出。

这是 /dev/input/event 的输出示例

Event: time 1677080541.072921, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9d
Event: time 1677080541.072921, type 1 (EV_KEY), code 97 (KEY_RIGHTCTRL), value 1
Event: time 1677080541.072921, -------------- SYN_REPORT ------------
Event: time 1677080541.319094, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9d
Event: time 1677080541.319094, type 1 (EV_KEY), code 97 (KEY_RIGHTCTRL), value 2
Event: time 1677080541.319094, -------------- SYN_REPORT ------------
Event: time 1677080541.348759, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9d
Event: time 1677080541.348759, type 1 (EV_KEY), code 97 (KEY_RIGHTCTRL), value 2
Event: time 1677080541.348759, -------------- SYN_REPORT ------------
Event: time 1677080541.379604, type 4 (EV_MSC), code 4 (MSC_SCAN), value 9d
Event: time 1677080541.379604, type 1 (EV_KEY), code 97 (KEY_RIGHTCTRL), value 0

输出依次为 1(按键按下)、2(按键保持)和 0(按键释放)。使用它,我能够制作一个简单的脚本来根据击键中的某些模式发送命令。我专门为与媒体控件一起使用而制作了这个,但如果调整时间,它可以提供此功能。这是github

编辑:这也可能是兴趣,这是一个使用的解决方案AHK_X11

相关内容