summaryrefslogtreecommitdiffstats
path: root/runtime/indent.vim
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/indent.vim')
-rw-r--r--runtime/indent.vim32
1 files changed, 32 insertions, 0 deletions
diff --git a/runtime/indent.vim b/runtime/indent.vim
new file mode 100644
index 0000000..a324995
--- /dev/null
+++ b/runtime/indent.vim
@@ -0,0 +1,32 @@
+" Vim support file to switch on loading indent files for file types
+"
+" Maintainer: Bram Moolenaar <Bram@vim.org>
+" Last Change: 2022 Feb 11
+
+if exists("did_indent_on")
+ finish
+endif
+let did_indent_on = 1
+
+augroup filetypeindent
+ au FileType * call s:LoadIndent()
+augroup END
+
+def s:LoadIndent()
+ if exists("b:undo_indent")
+ legacy exe b:undo_indent
+ unlet! b:undo_indent b:did_indent
+ endif
+ var s = expand("<amatch>")
+ if s != ""
+ if exists("b:did_indent")
+ unlet b:did_indent
+ endif
+
+ # When there is a dot it is used to separate filetype names. Thus for
+ # "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim".
+ for name in split(s, '\.')
+ exe 'runtime! indent/' .. name .. '.vim'
+ endfor
+ endif
+enddef