Lines Matching refs:lnum
41 " Check if the character at lnum:col is inside a string.
42 function s:IsInString(lnum, col) argument
43 return synIDattr(synID(a:lnum, a:col, 1), 'name') == 'jsonString'
46 " Find line above 'lnum' that isn't empty, or in a string.
47 function s:PrevNonBlankNonString(lnum) argument
48 let lnum = prevnonblank(a:lnum)
49 while lnum > 0
51 let line = getline(lnum)
52 if !(s:IsInString(lnum, 1) && s:IsInString(lnum, strlen(line)))
55 let lnum = prevnonblank(lnum - 1)
57 return lnum
60 " Check if line 'lnum' has more opening brackets than closing ones.
61 function s:LineHasOpeningBrackets(lnum) argument
65 let line = getline(a:lnum)
79 function s:Match(lnum, regex) argument
80 let col = match(getline(a:lnum), a:regex) + 1
81 return col > 0 && !s:IsInString(a:lnum, col) ? col : 0
95 " Set up variables for restoring position in file. Could use v:lnum here.
103 let line = getline(v:lnum)
108 if col > 0 && !s:IsInString(v:lnum, col)
115 if col > 0 && !s:IsInString(v:lnum, col)
128 if col > 0 && !s:IsInString(v:lnum, col)
129 call cursor(v:lnum, col)
146 if s:IsInString(v:lnum, matchend(line, '^\s*') + 1)
153 let lnum = prevnonblank(v:lnum - 1)
155 if lnum == 0
160 let line = getline(lnum)
161 let ind = indent(lnum)
164 " if s:Match(lnum, s:block_regex)
165 " return indent(lnum) + shiftwidth()
171 let counts = s:LineHasOpeningBrackets(lnum)
175 call cursor(v:lnum, vcol)