我使用foldmethod=marker并有映射进入<!-- {{{ -->和<!-- }}} -->我希望折叠开始和结束的地方.我将开始标记放在带有开始块标记的行上:
<div id="topmenu"> <!-- {{{ -->
因此,当它折叠时,我立即看到折叠包含什么,而无需添加额外的评论.
对于CSS来说,它更容易,我只是使用foldmarker={,}并且所有定义都是自动折叠的,这显示了我可以在需要时打开的所有类,标签和ID的清晰列表.实际上我的所有CSS文件最后都有这一行:
/* vim: set fdm=marker fmr={,}: */
您还可以直观地选择要折叠的区域,zf如果您愿意,也可以按.
我在我的vimrc中在缩进和标记之间切换..
let g:FoldMethod = 0
map <leader>ff :call ToggleFold()<cr>
fun! ToggleFold()
    if g:FoldMethod == 0
        exe 'set foldmethod=indent'
        let g:FoldMethod = 1
    else
        exe 'set foldmethod=marker'
        let g:FoldMethod = 0
    endif
endfun
缩进适用于大多数美化的html但是我使用标记用于文件的大型声明目录样式折叠.根据谁编写文件,一个将比另一个更好地工作,因此您需要快速访问这两个文件.