From 6e1aefff56c274b5d7ce212cc20118615382dacd Mon Sep 17 00:00:00 2001 From: rmsmith Date: Tue, 21 Jan 2014 09:41:15 +0200 Subject: [PATCH] Add missing `$id` to those Modes that are missing it. I've found that the set of modes in this PR did not set their `$id`. The side-effect of that is that when one of these modes is the current mode of an EditSession, and one calls `session.getOption('mode')` the returned value was incorrect. It goes up the prototype chain so you'd get something like 'ace/mode/text' or 'ace/mode/html' in most cases. This fixes that so that if, for example, the mode is set to 'ace/mode/django', the value returned by the option will be 'ace/mode/django' --- lib/ace/mode/apache_conf.js | 1 + lib/ace/mode/django.js | 4 ++++ lib/ace/mode/glsl.js | 4 ++++ lib/ace/mode/livescript.js | 1 + lib/ace/mode/luapage.js | 4 ++++ lib/ace/mode/lucene.js | 4 ++++ lib/ace/mode/mel.js | 2 +- lib/ace/mode/properties.js | 4 ++++ 8 files changed, 23 insertions(+), 1 deletion(-) diff --git a/lib/ace/mode/apache_conf.js b/lib/ace/mode/apache_conf.js index 9ed734f4..29437ef0 100644 --- a/lib/ace/mode/apache_conf.js +++ b/lib/ace/mode/apache_conf.js @@ -55,6 +55,7 @@ oop.inherits(Mode, TextMode); (function() { this.lineCommentStart = "#"; + this.$id = "ace/mode/apache_conf"; // Extra logic goes here. }).call(Mode.prototype); diff --git a/lib/ace/mode/django.js b/lib/ace/mode/django.js index 4a68bb7b..6f0c5abe 100644 --- a/lib/ace/mode/django.js +++ b/lib/ace/mode/django.js @@ -112,5 +112,9 @@ var Mode = function() { }; oop.inherits(Mode, HtmlMode); +(function() { + this.$id = "ace/mode/django"; +}).call(Mode.prototype); + exports.Mode = Mode; }); \ No newline at end of file diff --git a/lib/ace/mode/glsl.js b/lib/ace/mode/glsl.js index 202ec9f7..d15f94ab 100644 --- a/lib/ace/mode/glsl.js +++ b/lib/ace/mode/glsl.js @@ -49,5 +49,9 @@ var Mode = function() { }; oop.inherits(Mode, CMode); +(function() { + this.$id = "ace/mode/glsl"; +}).call(Mode.prototype); + exports.Mode = Mode; }); diff --git a/lib/ace/mode/livescript.js b/lib/ace/mode/livescript.js index 5f759d9e..d692a6d3 100644 --- a/lib/ace/mode/livescript.js +++ b/lib/ace/mode/livescript.js @@ -9,6 +9,7 @@ define(function(require, exports, module){ if (that = require('../mode/matching_brace_outdent')) { this.$outdent = new that.MatchingBraceOutdent; } + this.$id = "ace/mode/livescript"; } indenter = RegExp('(?:[({[=:]|[-~]>|\\b(?:e(?:lse|xport)|d(?:o|efault)|t(?:ry|hen)|finally|import(?:\\s*all)?|const|var|let|new|catch(?:\\s*' + identifier + ')?))\\s*$'); prototype.getNextLineIndent = function(state, line, tab){ diff --git a/lib/ace/mode/luapage.js b/lib/ace/mode/luapage.js index b6f65480..93c1ff56 100644 --- a/lib/ace/mode/luapage.js +++ b/lib/ace/mode/luapage.js @@ -17,5 +17,9 @@ var Mode = function() { }; oop.inherits(Mode, HtmlMode); +(function() { + this.$id = "ace/mode/luapage"; +}).call(Mode.prototype); + exports.Mode = Mode; }); \ No newline at end of file diff --git a/lib/ace/mode/lucene.js b/lib/ace/mode/lucene.js index 9beed95b..7c10e611 100644 --- a/lib/ace/mode/lucene.js +++ b/lib/ace/mode/lucene.js @@ -12,5 +12,9 @@ var Mode = function() { oop.inherits(Mode, TextMode); +(function() { + this.$id = "ace/mode/lucene"; +}).call(Mode.prototype); + exports.Mode = Mode; }); \ No newline at end of file diff --git a/lib/ace/mode/mel.js b/lib/ace/mode/mel.js index d6a2bdc4..d892a1a5 100644 --- a/lib/ace/mode/mel.js +++ b/lib/ace/mode/mel.js @@ -49,7 +49,7 @@ oop.inherits(Mode, TextMode); this.lineCommentStart = "//"; this.blockComment = {start: "/*", end: "*/"}; - + this.$id = "ace/mode/mel"; }).call(Mode.prototype); exports.Mode = Mode; diff --git a/lib/ace/mode/properties.js b/lib/ace/mode/properties.js index 0f89b75b..aeeadfde 100644 --- a/lib/ace/mode/properties.js +++ b/lib/ace/mode/properties.js @@ -41,5 +41,9 @@ var Mode = function() { }; oop.inherits(Mode, TextMode); +(function() { + this.$id = "ace/mode/properties"; +}).call(Mode.prototype); + exports.Mode = Mode; });