如何在Vim中保存文件后自动执行shell命令?

发布于 2024-10-11 08:08:27 字数 99 浏览 2 评论 0原文

这是因为我想在每次文件保存后自动运行测试。

我查看了 autocmdBufWritePost 但无法使其工作。

This is because I'd like to automatically run tests after each file save.

I have looked at autocmd and BufWritePost but cannot make it work.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

陌路终见情 2024-10-18 08:08:27

保存任何文件后,将运行 run_tests.sh,当前文件名作为唯一参数:

:autocmd BufWritePost * !run_tests.sh <afile>

查看自动命令:

:autocmd BufWritePost *

并使用以下命令删除先前的所有自动命令:

:autocmd! BufWritePost *

This runs run_tests.sh after any file is saved, with the current filename as the only parameter:

:autocmd BufWritePost * !run_tests.sh <afile>

View the auto-command with:

:autocmd BufWritePost *

And remove all auto-commands from the previous with:

:autocmd! BufWritePost *
世界和平 2024-10-18 08:08:27

将其放入您的 .vimrc 文件中:(

raml2html doc/api.raml > public/api_doc.html 作为命令示例)

autocmd BufWritePost,FileWritePost *.raml silent! !raml2html doc/api.raml > public/api_doc.html

注意:

  • silent!< 如果您使用 vim7.3 -,/code> 将隐藏此命令的所有输出
  • :silent,如果使用 vim7.3+,则 silent!
  • 需要退出并重新启动vim,使.vimrc生效。

put this into your .vimrc file:

(take raml2html doc/api.raml > public/api_doc.html as a command example)

autocmd BufWritePost,FileWritePost *.raml silent! !raml2html doc/api.raml > public/api_doc.html

notice:

  • silent! will hide all the output of this command
  • :silent if you are using vim7.3-, and silent! if using vim7.3+
  • need to quit and restart vim, to make .vimrc take effect.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文