自动命令组对组织很有用,但对调试也很有用。可以将它们视为可以随意启用/禁用的小型命名空间。
augroup MyGroup " Clear the autocmds of the current group to prevent them from piling " up each time you reload your vimrc. autocmd! " These autocmds are fired after the filetype of a buffer is defined to " 'foo'. Don't forget to use 'setlocal' (for options) and '<buffer>' " (for mappings) to prevent your settings to leak in other buffers with " a different filetype. autocmd FileType foo setlocal bar=baz autocmd FileType foo nnoremap <buffer> <key> :command<CR> " This autocmd calls 'MyFunction()' everytime Vim tries to create/edit " a buffer tied to a file in /'path/to/project/**/'. autocmd BufNew,BufEnter /path/to/project/**/* call MyFunction() augroup END
请参阅:help autocommand。