javascriptphpcodemirrorcode-foldingcodemirror-modes

How to use Codemirror codefolding without "["?


I would like to use Codemirror codefolding to fold just { and } as well as comments. The only problem I am having is it also codefolds the brackets [ and ]. The square brackets are almost always part of one line statements and I do not wish to use codefolding for them. How can I prevent that?

In codemirror/addon/fold/brace-fold.js I tried commenting out these lines:

if (startCh == null) {
    startToken = "[", endToken = "]";
    startCh = findOpening("[");
  }

but that still does not prevent codefolding for square brackets. Also, any ideas what addon/fold/indent-fold.js does? I am not sure whether I should include that file.

N.B. I am using Codefolding for both JavaScript and PHP modes.

EDIT

Here's a demonstration of Codemirror codefolding.


Solution

  • The OP code is just fine.

    According to comments the problem was coming from a cached version of the file, making the modification seem like they are not working.

    To prevent this kind of problem in the futur, note that hitting F5 will not clear cache. You need to use ctrl+F5. Another good option I use is in the developer tools (I use Chrome but it is certainly there in other browsers too), you can set the browser to clear cache whenever the devtools is open. Since the tab is almost always open when testing your website, this makes cache problems never happen...