笙默考试管理系统-MyExamTest----codemirror(44)
目录
笙默考试管理系统-MyExamTest----codemirror(44)
[一、 笙默考试管理系统-MyExamTest----codemirror](#一、 笙默考试管理系统-MyExamTest----codemirror)
[二、 笙默考试管理系统-MyExamTest----codemirror](#二、 笙默考试管理系统-MyExamTest----codemirror)
[三、 笙默考试管理系统-MyExamTest----codemirror](#三、 笙默考试管理系统-MyExamTest----codemirror)
[四、 笙默考试管理系统-MyExamTest----codemirror](#四、 笙默考试管理系统-MyExamTest----codemirror)
[五、 笙默考试管理系统-MyExamTest----codemirror](#五、 笙默考试管理系统-MyExamTest----codemirror)
- 笙默考试管理系统-MyExamTest----codemirror
addMark: function(mark) {
mark.attach(this);
if (this.marked == null) this.marked = \[\];
this.marked.push(mark);
this.marked.sort(function(a, b){return (a.from || 0) - (b.from || 0);});
},
- 笙默考试管理系统-MyExamTest----codemirror
// Run the given mode's parser over a line, update the styles
// array, which contains alternating fragments of text and CSS
// classes.
highlight: function(mode, state, tabSize) {
var stream = new StringStream(this.text, tabSize), st = this.styles, pos = 0;
var changed = false, curWord = st0, prevWord;
if (this.text == "" && mode.blankLine) mode.blankLine(state);
while (!stream.eol()) {
- 笙默考试管理系统-MyExamTest----codemirror
var style = mode.token(stream, state);
var substr = this.text.slice(stream.start, stream.pos);
stream.start = stream.pos;
- 笙默考试管理系统-MyExamTest----codemirror
if (pos && stpos-1 == style)
stpos-2 += substr;
else if (substr) {
if (!changed && (stpos+1 != style || (pos && stpos-2 != prevWord))) changed = true;
- 笙默考试管理系统-MyExamTest----codemirror
stpos++ = substr; stpos++ = style;
prevWord = curWord; curWord = stpos;