Mercurial > vim
annotate runtime/indent.vim @ 11533:c83dd5fa40d8 v8.0.0649
patch 8.0.0649: when opening a help file the filetype is set several times
commit https://github.com/vim/vim/commit/9049298f8d0bbc237b7c666c7ad6cdabe738e8fc
Author: Bram Moolenaar <Bram@vim.org>
Date: Thu Jun 22 14:16:31 2017 +0200
patch 8.0.0649: when opening a help file the filetype is set several times
Problem: When opening a help file the filetype is set several times.
Solution: When setting the filetype to the same value from a modeline, don't
trigger FileType autocommands. Don't set the filetype to "help"
when it's already set correctly.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Thu, 22 Jun 2017 14:30:03 +0200 |
parents | 19ef2bbf569c |
children | f37561549ec2 |
rev | line source |
---|---|
7 | 1 " Vim support file to switch on loading indent files for file types |
2 " | |
3 " Maintainer: Bram Moolenaar <Bram@vim.org> | |
1549 | 4 " Last Change: 2008 Feb 22 |
7 | 5 |
6 if exists("did_indent_on") | |
7 finish | |
8 endif | |
9 let did_indent_on = 1 | |
10 | |
11 augroup filetypeindent | |
233 | 12 au FileType * call s:LoadIndent() |
13 func! s:LoadIndent() | |
14 if exists("b:undo_indent") | |
15 exe b:undo_indent | |
16 unlet! b:undo_indent b:did_indent | |
17 endif | |
1549 | 18 let s = expand("<amatch>") |
19 if s != "" | |
233 | 20 if exists("b:did_indent") |
21 unlet b:did_indent | |
22 endif | |
1549 | 23 |
24 " When there is a dot it is used to separate filetype names. Thus for | |
25 " "aaa.bbb" load "indent/aaa.vim" and then "indent/bbb.vim". | |
26 for name in split(s, '\.') | |
27 exe 'runtime! indent/' . name . '.vim' | |
28 endfor | |
233 | 29 endif |
30 endfunc | |
7 | 31 augroup END |