From 0d264abdd070bf28540e12465ee6e36f0d0a06c7 Mon Sep 17 00:00:00 2001 From: David Barnett Date: Mon, 18 Apr 2016 09:15:13 -0700 Subject: vim-patch:ca63501 Update various runtime files. https://github.com/vim/vim/commit/ca63501fbcd1cf9c8aa9ff12c093c95b62a89ed7 --- runtime/indent/html.vim | 54 ++++++++++++++++++++++++++++++++++++------------- runtime/indent/yaml.vim | 10 +++++++-- 2 files changed, 48 insertions(+), 16 deletions(-) (limited to 'runtime/indent') diff --git a/runtime/indent/html.vim b/runtime/indent/html.vim index 7eb963b7b2..8aaf82e21f 100644 --- a/runtime/indent/html.vim +++ b/runtime/indent/html.vim @@ -2,7 +2,7 @@ " Header: "{{{ " Maintainer: Bram Moolenaar " Original Author: Andy Wokula -" Last Change: 2015 Jun 12 +" Last Change: 2015 Sep 25 " Version: 1.0 " Description: HTML indent script with cached state for faster indenting on a " range of lines. @@ -178,13 +178,15 @@ let s:countonly = 0 " 3 "script" " 4 "style" " 5 comment start +" 6 conditional comment start " -1 closing tag " -2 "/pre" " -3 "/script" " -4 "/style" " -5 comment end +" -6 conditional comment end let s:indent_tags = {} -let s:endtags = [0,0,0,0,0,0] " long enough for the highest index +let s:endtags = [0,0,0,0,0,0,0] " long enough for the highest index "}}} " Add a list of tag names for a pair of to "tags". @@ -257,6 +259,7 @@ call s:AddBlockTag('pre', 2) call s:AddBlockTag('script', 3) call s:AddBlockTag('style', 4) call s:AddBlockTag('') +call s:AddBlockTag('') "}}} " Return non-zero when "tagname" is an opening tag, not being a block tag, for @@ -291,7 +294,7 @@ func! s:CountITags(text) let s:nextrel = 0 " relative indent steps for next line [unit &sw]: let s:block = 0 " assume starting outside of a block let s:countonly = 1 " don't change state - call substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|', '\=s:CheckTag(submatch(0))', 'g') + call substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|\|', '\=s:CheckTag(submatch(0))', 'g') let s:countonly = 0 endfunc "}}} @@ -303,7 +306,7 @@ func! s:CountTagsAndState(text) let s:nextrel = 0 " relative indent steps for next line [unit &sw]: let s:block = b:hi_newstate.block - let tmp = substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|', '\=s:CheckTag(submatch(0))', 'g') + let tmp = substitute(a:text, '<\zs/\=\w\+\(-\w\+\)*\>\|\|', '\=s:CheckTag(submatch(0))', 'g') if s:block == 3 let b:hi_newstate.scripttype = s:GetScriptType(matchstr(tmp, '\C.*\zs[^>]*')) endif @@ -425,7 +428,7 @@ func! s:FreshState(lnum) " State: " lnum last indented line == prevnonblank(a:lnum - 1) " block = 0 a:lnum located within special tag: 0:none, 2:
,
-  "			3: