我尝试过使用foldmethod = syntax
,但if折叠了函数的括号和几乎所有其他内容,但没有多行注释。没有折叠级别可以满足我的要求。我希望它只折叠多行评论。不幸的是,这个功能已经不起作用了。
我也试着把它作为单行评论,但后来它折叠了所有内容,尽管我加了星号。
autocmd FileType cpp setlocal foldmethod=expr foldexpr=getline(v:lnum)=~'^\s*//'
autocmd FileType cpp setlocal foldmethod=expr foldexpr=getline(v:lnum)=~'^\s*/*'
像这样的普通正则表达式也不起的作用
/\*.*?\*/
如果您只想折叠多行注释,那么以下内容就足够了:
" in after/ftplugin/cpp.vim
setlocal foldmethod=marker
setlocal foldmarker=/*,*/
参见:help 'foldmethod'
和:help 'foldmarker'
。