vendor/assets/javascripts/ace/mode-dart.js in ace-rails-ap-4.0.0 vs vendor/assets/javascripts/ace/mode-dart.js in ace-rails-ap-4.0.1
- old
+ new
@@ -97,10 +97,14 @@
this.$rules = {
"start" : [
{
token : "comment",
+ regex : "//$",
+ next : "start"
+ }, {
+ token : "comment",
regex : "//",
next : "singleLineComment"
},
DocCommentHighlightRules.getStartRule("doc-start"),
{
@@ -517,12 +521,12 @@
var token = session.getTokenAt(cursor.row, cursor.column);
var rightToken = session.getTokenAt(cursor.row, cursor.column + 1);
if (leftChar == "\\" && token && /escape/.test(token.type))
return null;
- var stringBefore = token && /string/.test(token.type);
- var stringAfter = !rightToken || /string/.test(rightToken.type);
+ var stringBefore = token && /string|escape/.test(token.type);
+ var stringAfter = !rightToken || /string|escape/.test(rightToken.type);
var pair;
if (rightChar == quote) {
pair = stringBefore !== stringAfter;
} else {
@@ -659,11 +663,11 @@
this.foldingStartMarker = /(\{|\[)[^\}\]]*$|^\s*(\/\*)/;
this.foldingStopMarker = /^[^\[\{]*(\}|\])|^[\s\*]*(\*\/)/;
this.singleLineBlockCommentRe= /^\s*(\/\*).*\*\/\s*$/;
this.tripleStarBlockCommentRe = /^\s*(\/\*\*\*).*\*\/\s*$/;
- this.startRegionRe = /^\s*(\/\*|\/\/)#region\b/;
+ this.startRegionRe = /^\s*(\/\*|\/\/)#?region\b/;
this._getFoldWidgetBase = this.getFoldWidget;
this.getFoldWidget = function(session, foldStyle, row) {
var line = session.getLine(row);
if (this.singleLineBlockCommentRe.test(line)) {
@@ -747,16 +751,15 @@
endRow = row;
}
return new Range(startRow, startColumn, endRow, session.getLine(endRow).length);
};
-
this.getCommentRegionBlock = function(session, line, row) {
var startColumn = line.search(/\s*$/);
var maxRow = session.getLength();
var startRow = row;
- var re = /^\s*(?:\/\*|\/\/)#(end)?region\b/;
+ var re = /^\s*(?:\/\*|\/\/|--)#?(end)?region\b/;
var depth = 1;
while (++row < maxRow) {
line = session.getLine(row);
var m = re.exec(line);
if (!m) continue;