Vim autocmd适用于FocusGained但不适用于BufWritePost

时间:2018-06-11 16:50:23

标签: vim

我在.vimrc

中得到了这个
au FocusGained * echo "hello world"

它有效 - 当我切换到我的vim窗口时,我看到"你好世界"在状态栏中。但是,如果我将其切换为:

au BufWritePost * echo "hello world"

然后使用:w," hello world"保存文件。没有显示。为什么不呢?

1 个答案:

答案 0 :(得分:0)

Per @ jeremysprofile的评论,如果我切换到BufWriteCmd,这可以有效:

au BufWriteCmd * w | echo "hello world"

请注意,我必须使用w |前缀来运行" write"的默认行为。在运行我需要的命令之前执行命令。就我而言,我想运行vim-fireplace Require命令,因此它也有助于使用silent!前缀:

au BufWriteCmd *.clj w | silent! Require