Vim,折叠Javascript括号和括号

时间:2016-03-17 14:39:19

标签: javascript regex vim

非常简单的问题

目前,我正在使用vims折叠标记JavaScript来在花括号之间折叠任何东西

  autocmd FileType javascript,typescript,json setlocal foldmarker={,}

虽然经常需要折叠的阵列,但他们用一对[]

包裹起来

我需要告诉vim在{}[]之间折叠任何内容的正则表达式吗?

1 个答案:

答案 0 :(得分:0)

来自:help 'foldmarker'

  

标记是文字字符串(正则表达式太慢)。

作为替代方案,您可以简单地使用其他'foldmethod',例如syntaxindent

或尝试expr

setlocal foldmethod=expr
setlocal foldexpr=getline(v:lnum)=~'[\{\[]\\s*$'&&getline(v:lnum+1)=~'^\\s*[\}\]]'?'<1':1

(未测试的)