我试图找出vim中onoremap函数的语法。
关于c-u的使用,我在本手册的这一行特别感到困惑:
The CTRL-U (<C-U>) is used to remove the range that Vim may insert.
有人可以解释一下吗
这不是onoremap命令的语法的一部分,那就是说明一个特定的映射。该映射是:
原文链接:https://www.f2er.com/bash/387499.htmlonoremap <silent> F :<C-U>normal! 0f(hviw<CR>
所以,当一个运算符待处理的时候使用F键,vim将用onoremap命令的下一个参数中的位来替换它。这从a开始:开始一个ex模式命令。如果在使用映射时有视觉选择,vim将自动插入范围’<,'>所以以下ex命令将适用于视觉选择,使命令行看起来像:
:'<,'>
< C-U>在映射中告诉vim说:在进入之后,控制U组合应该用来清除命令行,消除自动插入的范围,离开命令行看起来像:
:
然后使用剩余的映射。
您可以通过使用V来开始直观的视觉选择,然后:开始输入命令,可以看到这一点。该范围将显示,您可以使用Control U清除它,就像示例映射一样。
vim帮助的部分包含该映射解释其剩余部分。