我可以在Linux上使用第二个键盘启动宏和快捷方式吗?

umbro_tracksuit

我有一个小数字键盘,除了我的常规键盘外,我想用它来启动宏和快捷方式。我可以将宏和快捷方式附加到这些键上(例如,数字键盘1最小化活动窗口),但是我的主键盘数字键盘也激活了快捷键。

我希望有一种方法可以让辅助键盘完全独立发挥作用,然后将快捷方式附加到该辅助键盘上。

这是我从中得到的输出xinput

⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ LVT Recon gaming mouse                    id=10   [slave  pointer  (2)]
⎜   ↳ LVT Recon gaming mouse                    id=11   [slave  pointer  (2)]
⎜   ↳ Corsair Corsair K30A Gaming Keyboard      id=13   [slave  pointer  (2)]
⎜   ↳ SIGMACHIP USB Keyboard                    id=18   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ Sleep Button                              id=9    [slave  keyboard (3)]
    ↳ Corsair Corsair K30A Gaming Keyboard      id=12   [slave  keyboard (3)]
    ↳ Corsair Corsair K30A Gaming Keyboard      id=14   [slave  keyboard (3)]
    ↳ LVT Recon gaming mouse                    id=15   [slave  keyboard (3)]
    ↳ Corsair Corsair K30A Gaming Keyboard      id=16   [slave  keyboard (3)]
    ↳ SIGMACHIP USB Keyboard                    id=17   [slave  keyboard (3)]
    ↳ SIGMACHIP USB Keyboard                    id=19   [slave  keyboard (3)]
乌尔里希·施瓦兹(Ulrich Schwarz)

尽管我的其他答案可能适用于大多数Linux,即使它们已经使用了很多年,但SystemD和udev实际上使事情变得更容易:

  • 用于lsusb查找附加键盘的供应商和产品代码。(在我的情况下,这是供应商145F,产品0177。请确保字母大写。)

  • 创建一个文件/etc/udev/hwdb.d/90-extra-keyboard.hwdb,其内容类似于以下内容:

evdev:input:b0003v145Fp0177*
 KEYBOARD_KEY_7005b=stopcd

第一行标识设备:v后面的四个字母是供应商代码,p后面的四个字母是产品代码,来自上一步。每隔一行将扫描代码映射到符号名称。要获取扫描代码,请运行evtest

Event: time 1553711252.888538, -------------- SYN_REPORT ------------
Event: time 1553711257.656558, type 4 (EV_MSC), code 4 (MSC_SCAN), value 70059
Event: time 1553711257.656558, type 1 (EV_KEY), code 79 (KEY_KP1), value 1

要找出用于符号名称的内容,请查看中的#define KEY_…列表/usr/include/linux/input-event-codes.h

#define KEY_PLAYPAUSE           164
#define KEY_PREVIOUSSONG        165
#define KEY_STOPCD              166
#define KEY_RECORD              167
  • 通过运行重新构建和加载内部数据库 systemd-hwdb update; udevadm trigger

  • 通过evtest再次运行或在设置中分配快捷方式来验证新设置是否有效

在应用程序中尝试此操作时,请记住,如果您的桌面环境已使用该快捷方式,则该应用程序甚至都不会看到按键。

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

带有第二个键盘布局的活动的“超级”键快捷方式

可以将第二个快捷键添加到 Anaconda 键盘映射中吗?

我可以在第二个硬盘D上安装Ubuntu吗?

我可以使用第二个条件订购数据透视表吗?

我可以在第二个侧边栏中使用多个<aside>标签吗?

我可以在第二个事件中使用onclick吗?

在Android上停止我的第二个文本字段的键盘提示

可以在一台双核计算机上结合使用Linux(一个内核)和裸机固件(第二个内核)吗?

冻结第二个我启动它

我可以选择导航链接中的第二个链接吗

我可以在android studio中同时打开第二个模拟器吗

我可以让UIButton的action方法采用第二个参数吗?

我可以为 wordpress 创建第二个自定义标签系统吗?

无法使用“ startActivityForResult”启动第二个活动

我可以立即停止第一个 UIView 动画并在同一视图上启动第二个动画吗?

以“独立方式”在第二个内部驱动器上安装Ubuntu(无启动选项)

输入框提示第二个数据条目存储数据,我们可以让它存储在第一个条目上吗?

我可以恢复`~/` 快捷方式吗?

我可以将我的应用程序的第二个版本放到 Google Play 商店吗

我的ISP可以看到我从第二个路由器下载的内容吗?

我可以在不损失性能的情况下为单个GPU使用第二个PCI-E插槽吗?

我可以使用第二个OpenGL上下文在3D场景顶部渲染UI吗?

MySQL:我可以使用 INNER JOIN 查找属于第二个表中定义的类别的表的项目吗?

在PsychoPy中:我可以为第二个循环更改文本组件的高度吗?

我可以将Windows默认的第二个显示器行为设置为“扩展这些显示”吗?

我可以将Windows Update设置为将第二个驱动器用于将来的更新吗?

我的 Word 宏找不到第二个单词

使用第二个元素

在第二个bash脚本中执行的bash脚本上的键盘输入