diff options
Diffstat (limited to 'js')
-rw-r--r-- | js/codeq/hint.js | 13 | ||||
-rw-r--r-- | js/prolog.js | 2 | ||||
-rw-r--r-- | js/python.js | 2 |
3 files changed, 10 insertions, 7 deletions
diff --git a/js/codeq/hint.js b/js/codeq/hint.js index a94f571..06eceb0 100644 --- a/js/codeq/hint.js +++ b/js/codeq/hint.js @@ -35,14 +35,17 @@ if (!args) return template; return template.replace(/\[%=(\w+)%\]/g, function(match, name) { - return args[name]; + return args[name].toString() + .replace(/&/g, '&') + .replace(/</g, '<') + .replace(/>/g, '>'); }); }, typeHandlers = { 'static': function (type, template, serverHint) { var args = serverHint.args, - jqContainer, jqButton, i, lastIndex; + jqContainer, jqButton, i, N; if (template instanceof Array) { // unwrap the template if there's only one if (template.length == 0) template = ''; else if (template.length == 1) template = template[0] + ''; // it must be a string @@ -52,14 +55,14 @@ jqContainer = $('<div class="hint-static-group"></div>'); jqButton = $('<button type="button">More...</button>'); // TODO: translate "more" jqHints.append(jqContainer); - lastIndex = template.length - 1; + N = template.length; jqContainer.append('<div class="hint-static">' + processTemplate(template[0], args) + '</div>'); jqContainer.append(jqButton); i = 1; jqButton.on('click', function () { var jqNext = $('<div class="hint-static">' + processTemplate(template[i], args) + '</div>'); i++; - if (i < lastIndex) { + if (i < N) { jqButton.before(jqNext); } else { @@ -181,4 +184,4 @@ } }; }; -})();
\ No newline at end of file +})(); diff --git a/js/prolog.js b/js/prolog.js index ecec0f3..29ceb3d 100644 --- a/js/prolog.js +++ b/js/prolog.js @@ -157,7 +157,7 @@ pos = codeq.codePointCount(doc.getRange(firstCharacterPos, changeObj.from)); if (changeObj.removed) { - activityHandler.queueTrace({'typ': 'rm', 'off': pos, 'len': codeq.codePointCount(changeObj.removed)}); + activityHandler.queueTrace({'typ': 'rm', 'off': pos, 'len': codeq.codePointCount(changeObj.removed.join(''))}); } if (changeObj.text) { diff --git a/js/python.js b/js/python.js index d114b7e..fa4943b 100644 --- a/js/python.js +++ b/js/python.js @@ -109,7 +109,7 @@ pos = codeq.codePointCount(doc.getRange(firstCharacterPos, changeObj.from)); if (changeObj.removed) { - activityHandler.queueTrace({'typ': 'rm', 'off': pos, 'len': codeq.codePointCount(changeObj.removed)}); + activityHandler.queueTrace({'typ': 'rm', 'off': pos, 'len': codeq.codePointCount(changeObj.removed.join(''))}); } if (changeObj.text) { |