do not include empty lines in section fold
This commit is contained in:
parent
ea430330ba
commit
dfa2eaf5ac
2 changed files with 28 additions and 3 deletions
|
|
@ -73,7 +73,7 @@ oop.inherits(FoldMode, BaseFoldMode);
|
|||
return range;
|
||||
}
|
||||
|
||||
if (foldStyle !== "markbeginend")
|
||||
if (foldStyle === "markbegin")
|
||||
return;
|
||||
|
||||
var match = line.match(this.foldingStopMarker);
|
||||
|
|
@ -105,10 +105,11 @@ oop.inherits(FoldMode, BaseFoldMode);
|
|||
var subRange = this.getFoldWidgetRange(session, "all", row);
|
||||
|
||||
if (subRange) {
|
||||
if (subRange.isMultiLine()) {
|
||||
if (subRange.start.row <= startRow) {
|
||||
break;
|
||||
} else if (subRange.isMultiLine()) {
|
||||
row = subRange.end.row;
|
||||
} else if (startIndent == indent) {
|
||||
endRow = row - 1;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -76,6 +76,30 @@ module.exports = {
|
|||
|
||||
assert.range(session.getFoldWidgetRange(0), 0, 2, 2, 7);
|
||||
assert.range(session.getFoldWidgetRange(2), 0, 2, 2, 7);
|
||||
},
|
||||
|
||||
"test: fold sections": function() {
|
||||
var session = new EditSession([
|
||||
'/* section0 */',
|
||||
'{',
|
||||
' /* section1 */',
|
||||
' stuff',
|
||||
' ',
|
||||
' /* section2 */',
|
||||
' ',
|
||||
' stuff',
|
||||
' ',
|
||||
' }',
|
||||
'foo'
|
||||
]);
|
||||
|
||||
var mode = new JavaScriptMode();
|
||||
session.setFoldStyle("markbegin");
|
||||
session.setMode(mode);
|
||||
|
||||
assert.range(session.getFoldWidgetRange(0, true), 0, 14, 10, 3);
|
||||
assert.range(session.getFoldWidgetRange(2, true), 2, 18, 3, 9);
|
||||
assert.range(session.getFoldWidgetRange(5, true), 5, 18, 7, 9);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue