我正在努力为Vim设置一些映射。我想要一个映射来插入一行文本。
我已经做到了: nnoremap åfox oThe quick brown fox jumps over the lazy dog<Esc>]<Space>j
除了最后一部分,它工作正常。]<Space>
被映射为创建新行而不进入插入模式,然后j向下移动一行。这个映射来自vim unimpaired插件。
]<Space>
当我逐步执行所有操作时,该命令在正常的vim编辑器中可以正常工作。
当我将其作为宏执行时,退出插入模式后插入方括号时会遇到问题,因此我必须再次执行相同的命令。这是录制宏的方式。请注意,我在瑞典语键盘上按了两次完全相同的组合(ALT+ 9)]
。
有没有更安全的方法来实现这一目标?
尽管建议使用:noremap
,因为它使映射不受重新映射和递归的影响,但这在伤害您。
为了执行未受损的]<Space>
映射,您必须在:nmap
这里使用(至少在结尾部分使用,但是破坏此映射只会使事情复杂化,并且几乎没有风险,因为其余映射仅使用字母,标准<Esc>
和j
命令)。
是否使用未受损的]Space
默认映射还是内部<Plug>unimpairedBlankDown
目标取决于您自己;后者将允许更改插件映射,而不必修改此映射。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句