如何解除 Super 或 Logo 键的绑定以便应用程序可以使用?

如何解除 Super 或 Logo 键的绑定以便应用程序可以使用?

我在 Lubuntu 17.04 上运行 kubuntu-desktop。我想在应用程序中使用 Super 键,但它目前会激活桌面应用程序菜单。

我看了看

系统设置->工作区->快捷方式->全局快捷方式->Plasma。

但它只显示Alt+F1绑定。Alternate 字段为空。

在此处输入图片描述

答案1

使用 xmodmap 的乐趣

当您按下键盘上的按键时,有几个地方会定义会发生什么。键盘本身、内核、X 或其他显示管理器。为了实现您的目标,我们可以教 X 以不同的方式处理 Super 键。

Super 键通常映射到 Mod4。因此,当您按下 Mod4+Tab 时,您可能希望能够切换不同的窗口。并非总是如此,但很多时候应用程序会忽略此修饰键,或者不会接收它。

您可以选择调整 Super 键的处理方式。如果这样做,您很可能希望用其他键替换该功能。这是为了确保您可以继续执行诸如前面的 Mod4+Tab 示例或其他常见组合之类的操作。

如果您想查看 X 如何使用您当前的修饰符,您可以使用以下命令打印它们xmodmap

$ xmodmap
xmodmap:  up to 4 keys per modifier, (keycodes in parentheses):

shift       Shift_L (0x32),  Shift_R (0x3e)
lock        Caps_Lock (0x42)
control     Control_L (0x25),  Control_R (0x69)
mod1        Alt_L (0x40),  Alt_R (0x6c),  Meta_L (0xcd)
mod2        Num_Lock (0x4d)
mod3      
mod4        Super_L (0x85),  Super_R (0x86),  Super_L (0xce),  Hyper_L (0xcf)
mod5        ISO_Level3_Shift (0x5c),  Mode_switch (0xcb)

在这里,我们可以看到所有超级键和 Hyper 键都映射到 Mod4。如果您的键盘有左超级键和右超级键,您甚至可以只调整其中一个。例如,您可以将超级左键从 Mod4 中移除,同时将超级右键保留为普通超级键。

你应该花点时间研究一下其他人是如何使用修饰键多年来,我逐渐熟悉了这个想法以及人们学会充分利用它的方法。这个想法是,你清除修饰符,然后再添加回去。你可以设置一些东西,例如,~/.xmodmaprc然后运行xmodmap ~/.xmodmaprc

# .xmodmaprc
clear mod4
clear control

add mod4 = Super_R
add control = Super_L
add control = Control_L
add control = Control_R 

为什么不一开始就使用 Control 键呢?很有可能您的 Super 键旁边有一个 Control 键,因此您可以自行寻找其他修饰键(例如 Mod3)的用途并使用它。其他人则以相当巧妙的方式使用 Mod2 或 Mod5 来增加可用的修饰键数量。

xmodmap一旦一切按您想要的方式进行,您就可以通过在文件中添加以下行来在每次登录时使用 X 和您的用户激活这些设置~/.xinitrc

xmodmap ~/.xmodmaprc

将 Super_L 键重新映射为非 Mod4 的一部分而是另一个修饰符组的一部分后,全局键盘快捷键应该会采用您的组合键。

可能相关的问题

虽然实际上是一个 Gnome 错误(?),但可以这个问题或类似的事情发生在你身上?你更可能想要这个 Plasma 配置解决方法,标题为“如何阻止 Meta 打开 KDE Plasma 的启动器?”:

正如所暗示的这里,编辑~/.config/kwinrc,在底部添加以下几行。  

[ModifierOnlyShortcuts]
Meta=

 

然后使用 重新启动 kwin kwin_x11 --replace & disown

相关内容