Hi everyone,
I want to fold the following 'code'
# Section 1 ----
for (i in 1:30) { y = i+1 }
# Section 2 ----
# a comment x = y + 1 y = y^2
if (foo) { a = b for (j in 1:3) { b = b + 1 } }
# Section 3 ----
b = c
to fold in the following way: - "sections" in the code are defined by #something----, everything between two section titles should fold when the folding marker of the title line is clicked - blocks are defined with { (and a few other markers) and should fold as expected.
With the following rules I can almost make it work
{ foldingStartMarker = '{'; foldingStopMarker = '}'; foldingIndentedBlockStart = '^#(.*?)-{4,}'; foldingIndentedBlockIgnore = '^(?!#(.*?)-{4,})'; }
the blocks fold, respecting nesting, the sections fold up to the next section, *except* for section 1; there, the `for` block is not indented and is at the same level as the section, therefore folding at section 1 only folds until the start of the for block, not all the way down to section 2. It looks like I am searching for a way to the `foldingIndentedBlock` rule to take precedence over the `foldingStartMarker` rule. Is it possible?
To make it easy to take a stab at it, I created a new bundle and a test file (the language is "testing") which you can get there: https://dl.dropboxusercontent.com/u/1047321/Test.zip
PS: having comments which define sections in the code seems like a general use case. The syntax is in that particular example is defined in the R language by the RStudio IDE. This IDE is becoming common enough that I am receiving code formatted this way a lot.
Thanks in advance for your help!