Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 1 | " Vim support file to switch on loading indent files for file types |
| 2 | " |
Christian Brabandt | e978b45 | 2023-08-13 10:33:05 +0200 | [diff] [blame] | 3 | " Maintainer: The Vim Project <https://github.com/vim/vim> |
| 4 | " Last Change: 2023 Aug 10 |
| 5 | " Former Maintainer: Bram Moolenaar <Bram@vim.org> |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 6 | |
| 7 | if exists("did_indent_on") |
| 8 | finish |
| 9 | endif |
| 10 | let did_indent_on = 1 |
| 11 | |
| 12 | augroup filetypeindent |
Bram Moolenaar | 582fd85 | 2005-03-28 20:58:01 +0000 | [diff] [blame] | 13 | au FileType * call s:LoadIndent() |
Bram Moolenaar | 071d427 | 2004-06-13 20:20:40 +0000 | [diff] [blame] | 14 | augroup END |
Bram Moolenaar | 3e79c97 | 2022-02-04 19:48:06 +0000 | [diff] [blame] | 15 | |
| 16 | def s:LoadIndent() |
| 17 | if exists("b:undo_indent") |
Bram Moolenaar | 92f645b | 2022-02-11 13:29:40 +0000 | [diff] [blame] | 18 | legacy exe b:undo_indent |
Bram Moolenaar | 3e79c97 | 2022-02-04 19:48:06 +0000 | [diff] [blame] | 19 | unlet! b:undo_indent b:did_indent |
| 20 | endif |
| 21 | var s = expand("<amatch>") |
| 22 | if s != "" |
| 23 | if exists("b:did_indent") |
| 24 | unlet b:did_indent |
| 25 | endif |
| 26 | |
| 27 | # When there is a dot it is used to separate filetype names. Thus for |
| 28 | # "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim". |
| 29 | for name in split(s, '\.') |
| 30 | exe 'runtime! indent/' .. name .. '.vim' |
| 31 | endfor |
| 32 | endif |
| 33 | enddef |