1
我试图使用CodeMirror来突出显示某些文本。 这个项目中的不寻常的事情是,我不得不强调的是,我没有预先定义,而是我做了一个web服务调用,webserivice的响应给了我应该突出显示的索引。这是一个NLP项目,Web服务为我提供了特定于上下文的“知识”,这就是我想强调的。代码镜像获取当前字符位置
简单地说我得到JSON与表示字符的位置加以强调
继开始和结束属性的对象是我至今为模式的定义,我编着的“差异”模式
CodeMirror.defineMode("diff", function() {
var i=-1;
return {
token: function(stream) {
i++;
// stream.skipToEnd();
var ch = stream.next();
if (bufferedResponse != null && bufferedResponse != "" && bufferedResponse.allergies != null){
$.each(bufferedResponse.allergies, function(key, value)
{
if (key != null && value != null && value != "")
{
if(i<value.start && i>value.end){
return "minus";
}
}
});
}
}
};
});
CodeMirror.defineMIME("text/x-diff", "diff");
我的问题是我怎样才能得到流的当前相对于字符串(不行)的开始?我的意思是如果stream正在读取第149个字符,我如何检索这个数字? “pos”,“start”和“columns”仅在当前行中给我定位!
这可能使用CodeMirror?