重新映射 vim 中的修饰键

Remap modifiers key in vim

我使用 xmodmap 将我的大写锁定重新映射到超级键作为 mod3。 这是 xmodmap

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

那么是否可以将 vim 中的这个 mod3 密钥重新映射为领导者。

不,很遗憾不是。 Vim 仅理解 ShiftCtrlAlt 修饰符(参见 :help key-notation),并且 您只能将修饰符与常规键组合使用 ,例如<C-a> 作为 Ctrl + A.

在终端中,Vim 甚至不会注册唯一修改键的按键;不会向它发送任何事件。在 GVIM 中,这在技术上是可行的,但 Vim 使用统一的输入模型,故意忽略某些 GUI 功能 (:help design-not)。

这适用于映射以及 Leader 键。您需要选择非修饰键,或修饰键+组合键。