现在我的折叠线看起来像这样:
+-- 123 lines: doSomeStuff();--------------------------
+-- 345 lines: doSomeOtherStuff();---------------------
我想删除一行实际内容之前的所有内容(+-- xxx 行:),使其更像 Notepad++/Eclipse 视觉方式 - 现在它太难阅读了,我实际上不在乎我有多少行有一定的折叠:) 那么有没有调整折叠线格式的命令?
是的,foldtext
romainl 已经提到的函数返回一个要在闭合折叠中显示的字符串(换句话说,就是你所看到的)。
您可以修改 fold 功能以显示您觉得有趣的任何内容。例如,
function! MyFoldText() " {{{
let line = getline(v:foldstart)
let nucolwidth = &fdc + &number * &numberwidth
let windowwidth = winwidth(0) - nucolwidth - 3
let foldedlinecount = v:foldend - v:foldstart
" expand tabs into spaces
let onetab = strpart(' ', 0, &tabstop)
let line = substitute(line, '\t', onetab, 'g')
let line = strpart(line, 0, windowwidth - 2 -len(foldedlinecount))
let fillcharcount = windowwidth - len(line) - len(foldedlinecount)
return line . '…' . repeat(" ",fillcharcount) . foldedlinecount . '…' . ' '
endfunction " }}}
set foldtext=MyFoldText()
将返回与此类似的内容
" Basic settings --------------------------------------------- {{{... 6 ...
表示折叠中有 6 行(包括带有关闭折叠标记的行)
:help fold-foldtext
拥有您需要的所有信息。