// This file is part of the “jQuery.Syntax” project, and is distributed under the MIT License. RegExp.prototype.indexOf||(RegExp.indexOf=function(a,b){return a.indexOf(a)+a.index});RegExp.prototype.escape||(RegExp.escape=function(a){return a.replace(/[-{}()*+?.\^$|,#s]/g,“\$&”)});String.prototype.repeat||(String.prototype.repeat=function(a){return Array(a+1).join(this)});Syntax.innerText=function(a){var b;if(!a)return“”;if(“BR”==a.nodeName)return“n”;a.textContent?b=a.textContent:document.body.innerText&&(b=a.innerText);return b.replace(/rn?/g,“n”)}; Syntax.extractTextFromSelection=function(a){for(var b=“”,c=0;c<a.rangeCount;c+=1)var d=a.getRangeAt©.toString(),b=b+d;return b};Syntax.copyCode=function(a){var b=window.getSelection(),b=Syntax.extractTextFromSelection(b);a.clipboardData.setData(“text/plain”,b);return!1}; Syntax.extractElementMatches=function(a,b){var c=[];b=b||0;(function(a){for(var e=0;a;e++){var f=null,g=a;3===g.nodeType||4===g.nodeType?b+=g.nodeValue.length:1===g.nodeType&&(f=Syntax.innerText(g),c.push(new Syntax.Match(b,f.length,{klass:g.className,force:!0,element:g,allow:“*”},f)));8!==g.nodeType&&g.children&&arguments.callee(g.childNodes,b)}})(a);c.shift();return c}; Syntax.extractMatches=function(){var a=arguments;return function(b,c){for(var d=[],e=0;e<a.length;e+=1){var f=a,g=e+1;null!=f&&(“undefined”!=typeof f.index&&(g=f.index),f.debug&&console.log(“extractMatches”,f,g,b,b),0.length&&(f.brush?d.push(Syntax.Brush.buildTree(f,b,RegExp.indexOf(b,g))):(f=jQuery.extend({owner:c.owner},f),d.push(new Syntax.Match(RegExp.indexOf(b,g),b.length,f,b)))))}return d}}; Syntax.lib.webLinkProcess=function(a,b){b&&(a=“www.google.com/search?btnI=I&q=”+encodeURIComponent(a+“ ”));return function(b,d,e){if(!1===e.linkify)return b;d=document.createElement(“a”);d.href=a+encodeURIComponent(Syntax.innerText(b));for(d.className=b.className;0c
“ exceeds end of value ”+this.endOffset);b&&(d=b(d,this));return d}; Syntax.Match.prototype.canContain=function(a){return a.expression.force?!0:this.complete?!1:a.expression.only?!0:“undefined”===typeof this.expression.allow||jQuery.isArray(this.expression.disallow)&&-1!==jQuery.inArray(a.expression.klass,this.expression.disallow)?!1:“*”===this.expression.allow||jQuery.isArray(this.expression.allow)&&-1!==jQuery.inArray(a.expression.klass,this.expression.allow)?!0:!1}; Syntax.Match.prototype.canHaveChild=function(a){if(a=a.expression.only){for(var b=this;null!==b;){if(-1!==jQuery.inArray(b.expression.klass,a))return!0;if((b=b.parent)&&b.complete)break}return!1}return!0};Syntax.Match.prototype._splice=function(a,b){return this.canHaveChild(b)?(this.children.splice(a,0,b),b.parent=this,b.expression.owner||(b.expression.owner=this.expression.owner),this):null}; Syntax.Match.prototype.insert=function(a,b){if(!this.contains(a))return null;if(b){for(var c=this,d=0;d