Are they supposed to work?
This seems to match more than I expect:
"scope": "(meta.parens | meta.brackets | meta.braces) (meta.parens | meta.brackets | meta.braces) punctuation.section"
E.g. it simply matches everything with just meta.parens
.
I expect it to be equal to a permutation: any one of the three on the first place, any one of the three on the second, one nested inside another. If I list all the permutations manually, it does work:
"scope": "meta.parens meta.parens punctuation.section, meta.parens meta.brackets punctuation.section, meta.parens meta.braces punctuation.section, meta.brackets meta.parens punctuation.section, meta.brackets meta.brackets punctuation.section, meta.brackets meta.braces punctuation.section, meta.braces meta.parens punctuation.section, meta.braces meta.brackets punctuation.section, meta.braces meta.braces punctuation.section"
This doesn’t match meta.parens punctuation.section
but does match meta.parens meta.parens punctuation.section
, just as I expect.
Thanks!