Ich denke, Sie sollten Ihre eigene Faltfunktion definieren, so haben Sie mehr Kontrolle darüber, was wann gefaltet wird. Die folgende Falzfunktion Falten function
/ end function
Fall unsensibel und sollte ziemlich einfach für weitere Anforderungen anzupassen:
function! InformixFold() let line = getline(v:lnum) let prev_line = getline(v:lnum-1) if match(line, '^\s*function\s*$') >= 0 return 1 elseif match(prev_line, '^\s*end\s*function\s*$') >= 0 return 0 else return "=" endfunction
Dann foldmethod
auf expr
und foldexpr
auf die Funktion einstellen :
set foldmethod=expr set foldexpr=InformixFold()
Sehen Sie help fold-expr
für mehr.
"Bildschirmfoto":
- FUNCTION | FOR ... | ... | END FOR | END FUNCTION + +-- 5 lines: FUNCTION------------------------------------------------------