根据vim文档,:silent可以使用该命令来避免hit-enter提示。
问题是我想让一个接受范围作为输入的命令静音,这不起作用,因为范围被传递给:silent而不是命令本身。
例子
要打开当前文件或选择中的 url,我在我的 中使用以下映射.vimrc:
noremap <leader>u :w !urlview<cr>
Run Code Online (Sandbox Code Playgroud)
where:w !urlview将当前文件或选择通过管道传输到urlview标准输入。
现在,为了避免hit-enter提示,我补充说:
noremap <leader>u :silent w !urlview<cr>
Run Code Online (Sandbox Code Playgroud)
当使用选择调用时,正确响应:
E481: No range allowed
Run Code Online (Sandbox Code Playgroud)
有关如何规避此问题的任何线索?
您可以修改映射以在初始键入命令:silent 后插入:w,就像您在交互式键入时可能会做的那样:
:noremap <leader>u :w<Home>silent <End> !urlview<CR>
Run Code Online (Sandbox Code Playgroud)