Mercurial > hg > RemoteEditor > vim7
comparison runtime/indent/dtd.vim @ 48:67300faee616 v7-3-618
v7-3-618
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 01 Aug 2012 18:08:28 +0900 |
parents | c16898406ff2 |
children |
comparison
equal
deleted
inserted
replaced
47:6c0584ec21b1 | 48:67300faee616 |
---|---|
1 " Vim indent file | 1 " Vim indent file |
2 " Language: DTD (Document Type Definition for XML) | 2 " Language: DTD (Document Type Definition for XML) |
3 " Maintainer: Nikolai Weibull <now@bitwi.se> | 3 " Maintainer: Nikolai Weibull <now@bitwi.se> |
4 " Latest Revision: 2010-09-21 | 4 " Latest Revision: 2011-07-08 |
5 | 5 |
6 let s:cpo_save = &cpo | 6 let s:cpo_save = &cpo |
7 set cpo&vim | 7 set cpo&vim |
8 | 8 |
9 setlocal indentexpr=GetDTDIndent() | 9 setlocal indentexpr=GetDTDIndent() |
50 function s:indent_to_innermost_parentheses(line, end) | 50 function s:indent_to_innermost_parentheses(line, end) |
51 let token = '(' | 51 let token = '(' |
52 let end = a:end | 52 let end = a:end |
53 let parentheses = [end - 1] | 53 let parentheses = [end - 1] |
54 while token != "" | 54 while token != "" |
55 let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\|#PCDATA\|%[A-Za-z0-9_-]\+;\)[?*+]\=') | 55 let [token, end] = s:lex(a:line, end, '^\%([(),|]\|[A-Za-z0-9_-]\+\|#P\=CDATA\|%[A-Za-z0-9_-]\+;\)[?*+]\=') |
56 if token[0] == '(' | 56 if token[0] == '(' |
57 call add(parentheses, end - 1) | 57 call add(parentheses, end - 1) |
58 elseif token[0] == ')' | 58 elseif token[0] == ')' |
59 if len(parentheses) == 1 | 59 if len(parentheses) == 1 |
60 return [-1, end] | 60 return [-1, end] |
320 " (and hence the user). | 320 " (and hence the user). |
321 return -1 | 321 return -1 |
322 endfunction | 322 endfunction |
323 | 323 |
324 let &cpo = s:cpo_save | 324 let &cpo = s:cpo_save |
325 unlet s:cpo_save |