blob: d0813268d852041f12d4ebbdda0261651522addf [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim support file to switch on loading plugins for file types
2"
3" Maintainer: Bram Moolenaar <Bram@vim.org>
Bram Moolenaar293ee4d2004-12-09 21:34:53 +00004" Last change: 2004 Nov 22
Bram Moolenaar071d4272004-06-13 20:20:40 +00005
6if exists("did_load_ftplugin")
7 finish
8endif
9let did_load_ftplugin = 1
10
11augroup filetypeplugin
12 au FileType * call s:LoadFTPlugin()
13 func! s:LoadFTPlugin()
14 if expand("<amatch>") != ""
15 if exists("b:undo_ftplugin")
16 exe b:undo_ftplugin
Bram Moolenaar293ee4d2004-12-09 21:34:53 +000017 unlet! b:undo_ftplugin b:did_ftplugin
Bram Moolenaar071d4272004-06-13 20:20:40 +000018 endif
19 if &cpo =~# "S" && exists("b:did_ftplugin")
20 " In compatible mode options are reset to the global values, need to
21 " set the local values also when a plugin was already used.
22 unlet b:did_ftplugin
23 endif
24 runtime! ftplugin/<amatch>.vim ftplugin/<amatch>_*.vim ftplugin/<amatch>/*.vim
25 endif
26 endfunc
27augroup END