annotate runtime/indent/mp.vim @ 7:3fc0f57ecb91 v7.0001

updated for version 7.0001
author vimboss
date Sun, 13 Jun 2004 20:20:40 +0000
parents
children dd6c2497c997
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
1 " MetaPost indent file
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
2 " Language: MetaPost
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
3 " Maintainer: Eugene Minkovskii <emin@mccme.ru>
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
4 " Last Change: 2003 Nov 21
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
5 " Version: 0.1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
6 " ==========================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
7
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
8 " Identation Rules: {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
9 " First of all, MetaPost language don't expect any identation rules.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
10 " This screept need for you only if you (not MetaPost) need to do
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
11 " exactly code. If you don't need to use indentation, see
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
12 " :help filetype-indent-off
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
13 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
14 " Note: Every rules of identation in MetaPost or TeX languages (and in some
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
15 " other of course) is very subjective. I can release only my vision of this
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
16 " promlem.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
17 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
18 " ..........................................................................
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
19 " Example of correct (by me) identation {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
20 " shiftwidth=4
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
21 " ==========================================================================
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
22 " for i=0 upto 99:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
23 " z[i] = (0,1u) rotated (i*360/100);
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
24 " endfor
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
25 " draw z0 -- z10 -- z20
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
26 " withpen ... % <- 2sw because breaked line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
27 " withcolor ...; % <- same as previous
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
28 " draw z0 for i=1 upto 99:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
29 " -- z[i] % <- 1sw from left end of 'for' satement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
30 " endfor withpen ... % <- 0sw from left end of 'for' satement
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
31 " withcolor ...; % <- 2sw because breaked line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
32 " draw if One: % <- This is internal if (like 'for' above)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
33 " one
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
34 " elsif Other:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
35 " other
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
36 " fi withpen ...;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
37 " if one: % <- This is external if
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
38 " draw one;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
39 " elseif other:
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
40 " draw other;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
41 " fi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
42 " draw z0; draw z1;
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
43 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
44 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
45
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
46 " Only load this indent file when no other was loaded.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
47 if exists("b:did_indent")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
48 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
49 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
50 let b:did_indent = 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
51
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
52 setlocal indentexpr=GetMetaPostIndent()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
53 setlocal indentkeys+=;,<:>,=if,=for,=def,=end,=else,=fi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
54
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
55 " Only define the function once.
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
56 if exists("*GetMetaPostIndent")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
57 finish
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
58 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
59
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
60 " Auxiliary Definitions: {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
61 function! MetaNextNonblankNoncomment(pos)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
62 " Like nextnonblank() but ignore comment lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
63 let tmp = nextnonblank(a:pos)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
64 while tmp && getline(tmp) =~ '^\s*%'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
65 let tmp = nextnonblank(tmp+1)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
66 endwhile
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
67 return tmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
68 endfunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
69
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
70 function! MetaPrevNonblankNoncomment(pos)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
71 " Like prevnonblank() but ignore comment lines
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
72 let tmp = prevnonblank(a:pos)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
73 while tmp && getline(tmp) =~ '^\s*%'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
74 let tmp = prevnonblank(tmp-1)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
75 endwhile
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
76 return tmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
77 endfunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
78
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
79 function! MetaSearchNoncomment(pattern, ...)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
80 " Like search() but ignore commented areas
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
81 if a:0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
82 let flags = a:1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
83 elseif &wrapscan
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
84 let flags = "w"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
85 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
86 let flags = "W"
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
87 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
88 let cl = line(".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
89 let cc = col(".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
90 let tmp = search(a:pattern, flags)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
91 while tmp && synIDattr(synID(line("."), col("."), 1), "name") =~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
92 \ 'm[fp]\(Comment\|TeXinsert\|String\)'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
93 let tmp = search(a:pattern, flags)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
94 endwhile
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
95 if !tmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
96 call cursor(cl,cc)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
97 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
98 return tmp
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
99 endfunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
100 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
101
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
102 function! GetMetaPostIndent()
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
103 " not indent in comment ???
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
104 if synIDattr(synID(line("."), col("."), 1), "name") =~
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
105 \ 'm[fp]\(Comment\|TeXinsert\|String\)'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
106 return -1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
107 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
108 " Some RegExps: {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
109 " end_of_item: all of end by ';'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
110 " + all of end by :endfor, :enddef, :endfig, :endgroup, :fi
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
111 " + all of start by :beginfig(num), :begingroup
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
112 " + all of start by :for, :if, :else, :elseif and end by ':'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
113 " + all of start by :def, :vardef and end by '='
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
114 let end_of_item = '\(' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
115 \ ';\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
116 \ '\<\(end\(for\|def\|fig\|group\)\|fi\)\>\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
117 \ '\<begin\(group\>\|fig\s*(\s*\d\+\s*)\)\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
118 \ '\<\(for\|if\|else\(if\)\=\)\>.\+:\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
119 \ '\<\(var\)\=def\>.\+=' . '\)'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
120 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
121 " Save: current position {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
122 let cl = line (".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
123 let cc = col (".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
124 let cs = getline(".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
125 " if it is :beginfig or :endfig use zero indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
126 if cs =~ '^\s*\(begin\|end\)fig\>'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
127 return 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
128 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
129 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
130 " Initialise: ind variable {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
131 " search previous item not in current line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
132 let p_semicol_l = MetaSearchNoncomment(end_of_item,"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
133 while p_semicol_l == cl
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
134 let p_semicol_l = MetaSearchNoncomment(end_of_item,"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
135 endwhile
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
136 " if this is first item in program use zero indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
137 if !p_semicol_l
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
138 return 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
139 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
140 " if this is multiline item, remember first indent
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
141 if MetaNextNonblankNoncomment(p_semicol_l+1) < cl
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
142 let ind = indent(MetaNextNonblankNoncomment(p_semicol_l+1))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
143 " else --- search pre-previous item for search first line in previous item
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
144 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
145 " search pre-previous item not in current line
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
146 let pp_semicol_l = MetaSearchNoncomment(end_of_item,"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
147 while pp_semicol_l == p_semicol_l
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
148 let pp_semicol_l = MetaSearchNoncomment(end_of_item,"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
149 endwhile
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
150 " if we find pre-previous item, remember indent of previous item
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
151 " else --- remember zero
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
152 if pp_semicol_l
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
153 let ind = indent(MetaNextNonblankNoncomment(line(".")+1))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
154 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
155 let ind = 0
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
156 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
157 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
158 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
159 " Increase Indent: {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
160 " if it is an internal/external :for or :if statements {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
161 let pnn_s = getline(MetaPrevNonblankNoncomment(cl-1))
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
162 if pnn_s =~ '\<\(for\|if\)\>.\+:\s*\($\|%\)'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
163 let ind = match(pnn_s, '\<\(for\|if\)\>.\+:\s*\($\|%\)') + &sw
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
164 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
165 " if it is a :def, :vardef, :beginfig, :begingroup, :else, :elseif {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
166 elseif pnn_s =~ '^\s*\(' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
167 \ '\(var\)\=def\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
168 \ 'begin\(group\|fig\s*(\s*\d\+\s*)\)\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
169 \ 'else\(if\)\=' . '\)\>'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
170 let ind = ind + &sw
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
171 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
172 " if it is a broken line {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
173 elseif pnn_s !~ end_of_item.'\s*\($\|%\)'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
174 let ind = ind + (2 * &sw)
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
175 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
176 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
177 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
178 " Decrease Indent: {{{1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
179 " if this is :endfor or :enddef statements {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
180 " this is correct because :def cannot be inside :for
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
181 if cs =~ '\<end\(for\|def\)\=\>'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
182 call MetaSearchNoncomment('\<for\>.\+:\s*\($\|%\)' . '\|' .
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
183 \ '^\s*\(var\)\=def\>',"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
184 if col(".") > 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
185 let ind = col(".") - 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
186 else
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
187 let ind = indent(".")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
188 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
189 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
190 " if this is :fi, :else, :elseif statements {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
191 elseif cs =~ '\<\(else\(if\)\=\|fi\)\>'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
192 call MetaSearchNoncomment('\<if\>.\+:\s*\($\|%\)',"bW")
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
193 let ind = col(".") - 1
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
194 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
195 " if this is :endgroup statement {{{2
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
196 elseif cs =~ '^\s*endgroup\>'
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
197 let ind = ind - &sw
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
198 endif
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
199 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
200 " }}}
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
201
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
202 return ind
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
203 endfunction
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
204 "
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
205
3fc0f57ecb91 updated for version 7.0001
vimboss
parents:
diff changeset
206 " vim:sw=2:fdm=marker