vim如何在命令提示符下输入多个命令

标签 vim command-line ex

如何在 vim 的命令提示符下将以下内容作为单个字符串输入

:let v:errmsg = ""  
:silent! /\cend of .*project gutenberg  
:if v:errmsg != ""  
:echo "Not found"  
:endif  

这不起作用,消息未打印。

:let v:errmsg = ""|:silent! /\cend of .*project gutenberg|:if v:errmsg != ""|:echo "Not found"|:endif  

最佳答案

嗯,问题出在您正在进行的正常搜索上。范围搜索看到 |作为其参数的一部分,因此它不能用于输入另一个命令。因此,将其包装到 :exe 调用中,如下所示:

let v:errmsg = ""|exe 'sil! /\cend of .*project gutenberg'|if v:errmsg != ""|echo "Not found"|endif 

关于vim如何在命令提示符下输入多个命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15732302/

相关文章:

unix - 从命令行嵌套 JSON 运行 Go

vim - 附加到 vim 匹配正则表达式中的行

vim - 通过命令行运行 vim 与在 vim 编辑器中运行它的区别

具有脚本作用域的 vim 函数

VIM 作为 IDE - 建议

eclipse - Eclipse 最有用的 VI/Vim 插件是什么?

vim - 是否可以使用命令 ab 在 vi​​m 中缩写两个单词

vim - 这是vim的bug吗? vit 省略了最后一个字符

c# - 如何以编程方式阅读 PDF 书签

android - 尝试使用 adb 递归地将 Android 文件拉入 Windows PC 时出现特殊文件名问题