Vim-在保存\写入时触发动作\脚本?

Vim-在保存\写入时触发动作\脚本?

这可能对超级用户来说更好,但我认为作为一种交易工具,它可能更适合这里。我发现在 vim 中编辑时,我经常退出,运行我正在测试的一些脚本,然后返回 vim(是的,我知道我可以使用 :!command 从 vim 运行程序)我只是想知道是否有办法在保存文件时挂接某些程序来运行(:w)?

答案1

你可能会发现incron如果你使用 Linux,那么这将会很有趣。

答案2

查看:he :autocmd:he BufWritePost

该行看起来如下:

:autocmd BufWritePost /path/to/file/or/pattern !command <afile>

如果该<afile>东西不起作用,请使用%:p

答案3

我得到了“回到 vim”部分,但我不确定如何点击“:w”命令本身(这将非常方便,因为这对我来说很有反射性)

w | silent execute "! myscript" | redraw!

我认为这对超级用户来说可能也更好。

答案4

这是赤裸裸的自我推销,但我编写了一个 Vim 插件,它将触发某些 shell 脚本在特定 Vimautocmd事件后运行。例如,.bufwritepost.vimhook.sh每次触发命令时,都会(同步)运行名为的脚本BufWritePost。然后,您可以轻松地在该脚本中包含您想要执行的任何任意逻辑。该插件假定这些脚本具有特定的命名约定,并且还支持仅在与特定名称匹配或具有特定扩展名的文件上触发的“钩子”脚本。当然,您可以自由选择autocmd您想要的任何事件,尽管我发现BufWritePost它适合我的大多数用例。

详细信息:https://github.com/ahw/vim-hooks

相关内容