在vim中保存文件后,有没有一种无声运行bash命令的方法?

9

现在我每次保存时都使用以下命令来编译coffeescript文件:

au BufWritePost widget.coffee ! ./compile_widget.sh

但是每次保存时都会出现以下提示:

Press ENTER or type command to continue

有没有办法可以保存并且不必按Enter键才能继续?
2个回答

7
我建议使用类似于syntastic的工具。
然而,要回答明确的问题,您需要执行以下操作:
au BufWritePost widget.coffee silent !./compile_widget.sh | redraw

提示由命令的输出触发。 silent 抑制了提示,但这样做后,Vim不会在shell命令之后重新绘制屏幕,因此您无法看到命令的输出。 因此,| redraw 强制Vim重新绘制屏幕。
有关此内容,请参见:help :!

最终我没有使用重绘,因为屏幕上没有刷新任何内容(compile_widget.sh只是在其他地方编译文件)。非常感谢您的出色答案! - Gary Haran

0

你做错了。你不应该要求Vim去做那件事。你应该查看Guard, watchr或其他可以查看磁盘并执行它们的工具。


Watchr有点慢,我很沮丧无法立即在IE中看到我的更改。但你肯定是对的。这种事情应该用像这样的工具来完成。只是我的设置现在太慢了,无法正常工作。 - Gary Haran

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接