我想在保存文件时调用命令。 我现在手动调用:make
,但希望在执行:w
和:wq
时调用它。Vim保存然后自动生成?
我也希望在任何不包含Makefile但其父母包含子文件夹的子文件夹中启用此功能。就像这个话题说,但它并没有为我工作:
How to efficiently "make" with Vim
我想在保存文件时调用命令。 我现在手动调用:make
,但希望在执行:w
和:wq
时调用它。Vim保存然后自动生成?
我也希望在任何不包含Makefile但其父母包含子文件夹的子文件夹中启用此功能。就像这个话题说,但它并没有为我工作:
How to efficiently "make" with Vim
:autocmd BufWritePost <buffer> make
“make”这个是作为一个shell命令或vim命令?它可以是一个vim功能? – 2010-09-17 05:51:01
':make'是执行'make' shell命令并读取其输出以确保一切正常工作的vim命令。 – 2010-09-17 07:11:19
如果你想在没有自动命令的情况下保存,可以使用'noautocmd'。例如:'noautocmd wq'。您可以通过'vim〜/ .vimrc'编辑vimrc,然后添加一行:'map
au BufWritePost *.c
\ make
值得指出的是这在〜/ .vimrc中。 – 2010-09-17 04:49:57
@Pablo - 实际上,它出现在'〜/ .vim/filetype.vim'中。 – amphetamachine 2010-09-17 08:13:06
这是一个老问题,但我觉得我应该分享。这里不用我的食谱,效果很好:
let autocompiled_filetypes = [
\ 'php' ] " 'ft2', 'ft3', 'etc'
au BufWritePost * call feedkeys("\<Esc>")
\ | if index(autocompiled_filetypes, &ft) >= 0 |
\ | silent! make % | cw | call feedkeys("\<Enter>")
\ | endif
http://stackoverflow.com/questions/729249/how-to-efficiently-make-with-vim – 2010-09-17 05:56:13