使用新的(2019)微软人体工学键盘 - 如何将表情符号和办公键映射到可用的东西?

使用新的(2019)微软人体工学键盘 - 如何将表情符号和办公键映射到可用的东西?

我买了一个“Microsoft Ergonomic”键盘来替换我用过的 Microsoft Natural。他们将“Win”键移至左侧,并将新的“Office”和“Emoji”键放在右侧: Alt、Office、Emoji - 新按键

默认情况下,xorg 似乎无法识别这些键(至少在我使用的 Ubuntu 20.04 上)。

我正在寻找如何映射这些键的提示。我在自定义键盘快捷键中大量使用了 Win-... 组合,因此我反复按这些键)。我更喜欢让 Office 键的行为与 Win 的习惯相同(如果我记得的话,超级),并将表情符号映射为一些新的修饰符。

我试过evtest;它会发出一些组合键。下面的两个报告均来自一次按键。

(办公室)

Event: time 1604935916.773242, -------------- SYN_REPORT ------------
Event: time 1604935919.037417, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1604935919.037417, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
Event: time 1604935919.037417, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1
Event: time 1604935919.037417, type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 1
Event: time 1604935919.037417, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
Event: time 1604935919.037417, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 1
Event: time 1604935919.037417, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e3
Event: time 1604935919.037417, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 1

(表情符号)

Event: time 1604935938.159725, -------------- SYN_REPORT ------------
Event: time 1604935942.720256, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1604935942.720256, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 1
Event: time 1604935942.720256, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1
Event: time 1604935942.720256, type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 1
Event: time 1604935942.720256, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
Event: time 1604935942.720256, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 1
Event: time 1604935942.720256, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e3
Event: time 1604935942.720256, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 1
Event: time 1604935942.720256, -------------- SYN_REPORT ------------
Event: time 1604935942.728233, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002c
Event: time 1604935942.728233, type 1 (EV_KEY), code 57 (KEY_SPACE), value 1
Event: time 1604935942.728233, -------------- SYN_REPORT ------------
^X@s^[^@Event: time 1604935942.872415, type 4 (EV_MSC), code 4 (MSC_SCAN), value 7002c
Event: time 1604935942.872415, type 1 (EV_KEY), code 57 (KEY_SPACE), value 0
Event: time 1604935942.872415, -------------- SYN_REPORT ------------
Event: time 1604935942.880280, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e0
Event: time 1604935942.880280, type 1 (EV_KEY), code 29 (KEY_LEFTCTRL), value 0
Event: time 1604935942.880280, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e1
Event: time 1604935942.880280, type 1 (EV_KEY), code 42 (KEY_LEFTSHIFT), value 0
Event: time 1604935942.880280, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e2
Event: time 1604935942.880280, type 1 (EV_KEY), code 56 (KEY_LEFTALT), value 0
Event: time 1604935942.880280, type 4 (EV_MSC), code 4 (MSC_SCAN), value 700e3
Event: time 1604935942.880280, type 1 (EV_KEY), code 125 (KEY_LEFTMETA), value 0
Event: time 1604935942.880280, -------------- SYN_REPORT ------------

答案1

我刚刚购买了 Microsoft 人体工学键盘,并且正在使用 Pop!_OS。我有同样的问题,并且此页面恰好是顶部搜索结果,所以这就是我得到的:

“MS Office”键是Shift+ Ctrl+ Alt+Super组合键。您需要将其与另一个键组合起来形成完整的快捷键,因此按MS Office+A相当于 Shift+ Ctrl+ Alt+ Super+ A

“Emoji”键本身相当于MS Office+SpaceShift+ Ctrl+ Alt+ Super+ Space

您的 Linux 风格可能会有所不同,但基于 Gnome 的环境(例如 Pop!_OS)在其“设置”应用程序中有一个“键盘”部分,允许您将所有类型的行为分配给您选择的键盘快捷键。
这允许您将多个快捷方式映射到单个操作,因此您可以同时使用Super+FShift+ Ctrl+ Alt+ Super+F打开文件管理器,这可用于近似xbindkeys+xautomation组合将提供的内容。

让我们列出一些其他奇怪的键映射。

  • 按键上方的“放大镜”键Pause会发出 Shift+ Super+Touchpad toggle快捷键。
  • 键上方的“锁定”图标Delete会发出 Super+L快捷方式。
  • 旁边的“重叠窗口”图标会发出一个 Super+Tab快捷方式。
  • 它旁边的图标会发出一个 Shift+ Super+S快捷方式,旨在调出可配置的屏幕截图 UI。
  • 左上角的123键分别发出Super+ 1Super+2Super+ 3,在许多环境中,通过打开应用程序栏中的前三个应用程序,它们应该已经按预期工作。

在将所有这些内容映射到我的口味之后,我剩下要做的就是调整Compose key要使用的设置Right Alt,这样我就可以再次输入奇怪的带重音的小字符。

答案2

我使用Ubuntu包xbindkeys结合该包xautomation来完成这个任务。我不知道是否evtest为配置提供兼容的输出。我的选择是xev。从 CLI 启动,它会在终端上打印键码、键描述和按钮编号。我还听说有一个xbindkeys-config更容易设置的软件包,但我没有使用它。这是一个小示例配置,当我使用特殊的鼠标按钮时,我用于将 CTRL+PgUP 和 CTRL+PgDOW 发送到浏览器,以便在打开的选项卡之间进行切换。

"xte 'usleep 100000' 'keydown Control_R' 'key Page_Up' 'keyup Control_R'"
   b:8 + Release # mouse-button 8

"xte 'usleep 100000' 'keydown Control_R' 'key Page_Down' 'keyup Control_R'"
   b:9 + Release # mouse-button 9

相关内容