diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 13:18:03 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 13:18:03 +0000 |
commit | afce081b90c1e2c50c3507758c7558a0dfa1f33e (patch) | |
tree | 3fb840f0bd9de41b463443ddf17131a0ad77f226 /runtime/ftplugin.vim | |
parent | Initial commit. (diff) | |
download | vim-upstream.tar.xz vim-upstream.zip |
Adding upstream version 2:8.2.2434.upstream/2%8.2.2434upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | runtime/ftplugin.vim | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/runtime/ftplugin.vim b/runtime/ftplugin.vim new file mode 100644 index 0000000..a434b93 --- /dev/null +++ b/runtime/ftplugin.vim @@ -0,0 +1,35 @@ +" Vim support file to switch on loading plugins for file types +" +" Maintainer: Bram Moolenaar <Bram@vim.org> +" Last change: 2006 Apr 30 + +if exists("did_load_ftplugin") + finish +endif +let did_load_ftplugin = 1 + +augroup filetypeplugin + au FileType * call s:LoadFTPlugin() + + func! s:LoadFTPlugin() + if exists("b:undo_ftplugin") + exe b:undo_ftplugin + unlet! b:undo_ftplugin b:did_ftplugin + endif + + let s = expand("<amatch>") + if s != "" + if &cpo =~# "S" && exists("b:did_ftplugin") + " In compatible mode options are reset to the global values, need to + " set the local values also when a plugin was already used. + unlet b:did_ftplugin + endif + + " When there is a dot it is used to separate filetype names. Thus for + " "aaa.bbb" load "aaa" and then "bbb". + for name in split(s, '\.') + exe 'runtime! ftplugin/' . name . '.vim ftplugin/' . name . '_*.vim ftplugin/' . name . '/*.vim' + endfor + endif + endfunc +augroup END |