我已经安装了Snippets Vim插件。假设我正在编辑C
文件。当我在插入模式下键入if<tab>
时,文本会扩展为
if (/* condition */)
{
}
现在,我处于select
模式(状态行中显示为--select--
)。
我的~/.vimrc
:snoremap <c-f> <bs>
中有一个映射,这意味着当我处于选择模式时,我想使用Ctrl-f删除文本。
但是,当我键入<c-f>
来删除文本时,文本会按预期删除,但我会根据需要进入正常模式而不是插入模式。
那么,有人能够解决这个问题吗?
还有更多 - 添加这个mappping:
vnoremap <c-f> <bs>
<c-f>
根本不起作用。请帮助。
答案 0 :(得分:0)
选择模式(:help Select-mode
)的帮助说:
Printable characters, <NL> and <CR> cause the selection to be deleted, and Vim enters Insert mode. The typed character is inserted.
我没有看到任何其他情况,其中选择模式中的命令通过输入插入模式结束(虽然我当然可能遗漏了一些东西)。
所以这个可能是插件的特性,但它也可能就是选择模式处理命令的方式。在此期间,您可以在i
映射的末尾添加<c-f>
:
snoremap <c-f> <bs>i