From 23774c2a41551d07a3a734fb7457cf2ec52f9565 Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Thu, 11 Dec 2014 18:39:16 +0100 Subject: [PATCH] Revert "Use cm.getModeAt in getModeAt" This reverts commit 6776bc0d6f17b6d13f7cf92d312fbb243c954d95. --- src/utils/TokenUtils.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/utils/TokenUtils.js b/src/utils/TokenUtils.js index cd3cd10c09d..163eca38542 100644 --- a/src/utils/TokenUtils.js +++ b/src/utils/TokenUtils.js @@ -33,7 +33,8 @@ define(function (require, exports, module) { "use strict"; - var _ = require("thirdparty/lodash"); + var _ = require("thirdparty/lodash"), + CodeMirror = require("thirdparty/CodeMirror2/lib/codemirror"); var cache, CACHE_MAX_AGE = 1000; // cache for 1 second @@ -203,10 +204,14 @@ define(function (require, exports, module) { * @return {mode:{Object}, name:string} */ function getModeAt(cm, pos) { - var modeData = cm.getModeAt(pos), - name = modeData.name === "xml" ? modeData.configuration : modeData.name; + var outerMode = cm.getMode(), + modeData = CodeMirror.innerMode(outerMode, cm.getTokenAt(pos, true).state), + name; - return {mode: modeData, name: name}; + name = (modeData.mode.name === "xml") ? + modeData.mode.configuration : modeData.mode.name; + + return {mode: modeData.mode, name: name}; } exports.movePrevToken = movePrevToken;