Raimondi

Untitled

Jan 21st, 2012
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
VIM 0.85 KB | None | 0 0
  1. let g:fold_levels = {}
  2. function! JFolds(lnum)
  3.   let line = getline(a:lnum)
  4.   let next_line = getline(a:lnum + 1)
  5.   let g:fold_levels.line = line
  6.   let g:fold_levels.next = next_line
  7.   if line =~ '^\s\+\%(describe\|it\)'
  8.     let lead = matchstr(line, '^\s\+')
  9.     let g:fold_levels.lead = len(lead)
  10.     let g:fold_levels[lead] = lead
  11.     echom '1:a1 ' . string(g:fold_levels)
  12.     return 'a1'
  13.   elseif line =~ '^\s\+});.*'
  14.     let lead = matchstr(line, '^\s\+\ze\});')
  15.     let g:fold_levels.lead = len(lead)
  16.     if has_key(g:fold_levels, lead)
  17.       call remove(g:fold_levels, lead)
  18.       echom '2:s1 ' . string(g:fold_levels)
  19.       return 's1'
  20.     endif
  21.     echom '3: = ' . string(g:fold_levels)
  22.     return '='
  23.   else
  24.     echom '4: = ' . string(g:fold_levels)
  25.     return '='
  26.   endif
  27. endfunction
  28.  
  29. set fdm=expr
  30. set fde=JFolds(v:lnum)
  31. set debug=msg
Advertisement
Add Comment
Please, Sign In to add comment