vim vnoremap: E488 尾随字符

vim vnoremap: E488 Trailing characters

我正在使用vim编程,我只是想做一个评论的快捷方式。

这是我在 .vimrc 中的设置方式:

vnoremap <F7> :%s/^/\/\//g

我只想在每个选定行的前面添加 //。但是,当我在可视模式下按 <F7> 并按 Enter 时,出现错误:

E488 Trailing characters

请注意,当您按下 F7 时,它只是模拟按下字符串中的所有键。一按下:就进入状态

:'<,'>

当它输入所有剩余的命令时,它会进入:

:'<,'>%s/^/\/\//g

这是没有意义的('<,'> 之后的 % 没有意义)。如果您只是从命令中删除 %,它就已经可以工作了。更好的是,在末尾添加 <CR> 这样您就不需要按 Enter:

vnoremap <F7> :s/^/\/\//g<CR>