").text().length}function formattingCount(string){return string.length-skipFormattingCount(string)}function supportAnimations(){var animation=false,animationstring="animation",keyframeprefix="",domPrefixes="Webkit Moz O ms Khtml".split(" "),pfx="",elm=document.createElement("div");if(elm.style.animationName){animation=true}if(animation===false){for(var i=0;i)])+\b/g;var email_re=/((([^<>('")[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,})))/g;var command_re=/('[^']*'|"(\\"|[^"])*"|\/(\\\/|[^\/])+\/[gimy]*|(\\ |[^ ])+|[\w-]+)/g;var format_begin_re=/(\[\[[gbiuso]*;[^;]*;[^\]]*\])/i;var format_last_re=/\[\[[gbiuso]*;[^;]*;[^\]]*\]?$/i;$.terminal={valid_color:function(color){return color.match(color_hex_re)||$.inArray(color.toLowerCase(),color_names)!==-1},escape_regex:function(string){var special=/([\^\$\[\]\(\)\+\*\.\|])/g;return string.replace(special,"\\$1")},have_formatting:function(str){return str.match(format_re)},is_formatting:function(str){return str.match(format_full_re)},format_split:function(str){return str.split(format_split_re)},split_equal:function(str,length){var formatting=false;var in_text=false;var braket=0;var prev_format="";var result=[];var array=str.replace(format_re,function(_,format,text){var semicolons=format.match(/;/g).length;if(semicolons==2){semicolons=";;"}else if(semicolons==3){semicolons=";"}else{semicolons=""}return"[["+format+semicolons+text.replace(/\\\]/g,"]").replace(/\n/g,"\\n")+"]"+text+"]"}).split(/\n/g);for(var i=0,len=array.length;i/g,">").replace(/ /g," ").replace(/\t/g," ")},format:function(str,options){var settings=$.extend({},{linksNoReferrer:false},options||{});if(typeof str==="string"){var splited=$.terminal.format_split(str);if(splited&&splited.length>1){str=$.map(splited,function(text){if(text===""){return text}else if(text.substring(0,1)==="["){return text.replace(format_parts_re,function(s,style,color,background,_class,data_text,text){if(text===""){return""}text=text.replace(/\\]/g,"]");var style_str="";if(style.indexOf("b")!==-1){style_str+="font-weight:bold;"}var text_decoration=[];if(style.indexOf("u")!==-1){text_decoration.push("underline")}if(style.indexOf("s")!==-1){text_decoration.push("line-through")}if(style.indexOf("o")!==-1){text_decoration.push("overline")}if(text_decoration.length){style_str+="text-decoration:"+text_decoration.join(" ")+";"
2 | }if(style.indexOf("i")!==-1){style_str+="font-style:italic;"}if($.terminal.valid_color(color)){style_str+="color:"+color+";";if(style.indexOf("g")!==-1){style_str+="text-shadow:0 0 5px "+color+";"}}if($.terminal.valid_color(background)){style_str+="background-color:"+background}var data;if(data_text===""){data=text}else{data=data_text.replace(/]/g,"]")}var result=''+text+"";return result})}else{return""+text+""}}).join("")}return $.map(str.split(/(<\/?span[^>]*>)/g),function(string){if(!string.match(/span/)){return string.replace(url_re,function(link){var comma=link.match(/\.$/);link=link.replace(/\.$/,"");return''+link+""+(comma?".":"")}).replace(email_re,'$1')}else{return string}}).join("").replace(/ <\/span>/g," ")}else{return""}},escape_brackets:function(string){return string.replace(/\[/g,"[").replace(/\]/g,"]")},strip:function(str){return str.replace(format_parts_re,"$6")},active:function(){return terminals.front()},overtyping:function(string){return string.replace(/((?:_\x08.|.\x08_)+)/g,function(full,g){return"[[u;;]"+full.replace(/_x08|\x08_|_\u0008|\u0008_/g,"")+"]"}).replace(/((?:.\x08.)+)/g,function(full,g){return"[[b;#fff;]"+full.replace(/(.)(?:\x08|\u0008)(.)/g,function(full,g1,g2){return g2})+"]"})},ansi_colors:{normal:{black:"#000",red:"#A00",green:"#008400",yellow:"#A50",blue:"#00A",magenta:"#A0A",cyan:"#0AA",white:"#AAA"},faited:{black:"#000",red:"#640000",green:"#006100",yellow:"#737300",blue:"#000087",magenta:"#650065",cyan:"#008787",white:"#818181"},bold:{black:"#000",red:"#F55",green:"#44D544",yellow:"#FF5",blue:"#55F",magenta:"#F5F",cyan:"#5FF",white:"#FFF"},palette:["#000000","#AA0000","#00AA00","#AA5500","#0000AA","#AA00AA","#00AAAA","#AAAAAA","#555555","#FF5555","#55FF55","#FFFF55","#5555FF","#FF55FF","#55FFFF","#FFFFFF","#000000","#00005F","#000087","#0000AF","#0000D7","#0000FF","#005F00","#005F5F","#005F87","#005FAF","#005FD7","#005FFF","#008700","#00875F","#008787","#0087AF","#0087D7","#00AF00","#00AF5F","#00AF87","#00AFAF","#00AFD7","#00AFFF","#00D700","#00D75F","#00D787","#00D7AF","#00D7D7","#00D7FF","#00FF00","#00FF5F","#00FF87","#00FFAF","#00FFD7","#00FFFF","#5F0000","#5F005F","#5F0087","#5F00AF","#5F00D7","#5F00FF","#5F5F00","#5F5F5F","#5F5F87","#5F5FAF","#5F5FD7","#5F5FFF","#5F8700","#5F875F","#5F8787","#5F87AF","#5F87D7","#5F87FF","#5FAF00","#5FAF5F","#5FAF87","#5FAFAF","#5FAFD7","#5FAFFF","#5FD700","#5FD75F","#5FD787","#5FD7AF","#5FD7D7","#5FD7FF","#5FFF00","#5FFF5F","#5FFF87","#5FFFAF","#5FFFD7","#5FFFFF","#870000","#87005F","#870087","#8700AF","#8700D7","#8700FF","#875F00","#875F5F","#875F87","#875FAF","#875FD7","#875FFF","#878700","#87875F","#878787","#8787AF","#8787D7","#8787FF","#87AF00","#87AF5F","#87AF87","#87AFAF","#87AFD7","#87AFFF","#87D700","#87D75F","#87D787","#87D7AF","#87D7D7","#87D7FF","#87FF00","#87FF5F","#87FF87","#87FFAF","#87FFD7","#87FFFF","#AF0000","#AF005F","#AF0087","#AF00AF","#AF00D7","#AF00FF","#AF5F00","#AF5F5F","#AF5F87","#AF5FAF","#AF5FD7","#AF5FFF","#AF8700","#AF875F","#AF8787","#AF87AF","#AF87D7","#AF87FF","#AFAF00","#AFAF5F","#AFAF87","#AFAFAF","#AFAFD7","#AFAFFF","#AFD700","#AFD75F","#AFD787","#AFD7AF","#AFD7D7","#AFD7FF","#AFFF00","#AFFF5F","#AFFF87","#AFFFAF","#AFFFD7","#AFFFFF","#D70000","#D7005F","#D70087","#D700AF","#D700D7","#D700FF","#D75F00","#D75F5F","#D75F87","#D75FAF","#D75FD7","#D75FFF","#D78700","#D7875F","#D78787","#D787AF","#D787D7","#D787FF","#D7AF00","#D7AF5F","#D7AF87","#D7AFAF","#D7AFD7","#D7AFFF","#D7D700","#D7D75F","#D7D787","#D7D7AF","#D7D7D7","#D7D7FF","#D7FF00","#D7FF5F","#D7FF87","#D7FFAF","#D7FFD7","#D7FFFF","#FF0000","#FF005F","#FF0087","#FF00AF","#FF00D7","#FF00FF","#FF5F00","#FF5F5F","#FF5F87","#FF5FAF","#FF5FD7","#FF5FFF","#FF8700","#FF875F","#FF8787","#FF87AF","#FF87D7","#FF87FF","#FFAF00","#FFAF5F","#FFAF87","#FFAFAF","#FFAFD7","#FFAFFF","#FFD700","#FFD75F","#FFD787","#FFD7AF","#FFD7D7","#FFD7FF","#FFFF00","#FFFF5F","#FFFF87","#FFFFAF","#FFFFD7","#FFFFFF","#080808","#121212","#1C1C1C","#262626","#303030","#3A3A3A","#444444","#4E4E4E","#585858","#626262","#6C6C6C","#767676","#808080","#8A8A8A","#949494","#9E9E9E","#A8A8A8","#B2B2B2","#BCBCBC","#C6C6C6","#D0D0D0","#DADADA","#E4E4E4","#EEEEEE"]},from_ansi:function(){var color={30:"black",31:"red",32:"green",33:"yellow",34:"blue",35:"magenta",36:"cyan",37:"white",39:"white"};var background={40:"black",41:"red",42:"green",43:"yellow",44:"blue",45:"magenta",46:"cyan",47:"white",49:"black"};function format_ansi(code){var controls=code.split(";");var num;var faited=false;var reverse=false;var bold=false;var styles=[];var output_color="";var output_background="";var _8bit_color=false;var _8bit_background=false;var process_8bit=false;var palette=$.terminal.ansi_colors.palette;for(var i in controls){num=parseInt(controls[i],10);switch(num){case 1:styles.push("b");bold=true;faited=false;break;case 4:styles.push("u");break;case 3:styles.push("i");break;case 5:process_8bit=true;break;case 38:_8bit_color=true;break;case 48:_8bit_background=true;break;case 2:faited=true;bold=false;break;case 7:reverse=true;break;default:if(_8bit_color&&process_8bit&&palette[num-1]){output_color=palette[num-1]}else if(color[num]){output_color=color[num]}if(_8bit_background&&process_8bit&&palette[num-1]){output_background=palette[num-1]}else if(background[num]){output_background=background[num]}}if(num!==5){process_8bit=false}}if(reverse){if(output_color&&output_background){var tmp=output_background;output_background=output_color;output_color=tmp}else{output_color="black";output_background="white"}}var colors,backgrounds;if(bold){colors=backgrounds=$.terminal.ansi_colors.bold}else if(faited){colors=backgrounds=$.terminal.ansi_colors.faited}else{colors=backgrounds=$.terminal.ansi_colors.normal}return[styles.join(""),_8bit_color?output_color:colors[output_color],_8bit_background?output_background:backgrounds[output_background]]}return function(input){var splitted=input.split(/(\x1B\[[0-9;]*[A-Za-z])/g);if(splitted.length==1){return input}var output=[];if(splitted.length>3&&splitted.slice(0,3).join("")=="[0m"){splitted=splitted.slice(3)}var inside=false,next,prev_color,prev_background,code,match;for(var i=0;iFooBarBaz'," formatting");string="http://terminal.jcubic.pl/examples.php https://www.google.com/?q=jquery%20terminal";assert($.terminal.format(string)==='http://terminal.jcubic.pl/examples.phphttps://www.google.com/?q=jquery%20terminal'," urls");string="foo@bar.com baz.quux@example.com";assert($.terminal.format(string)==='foo@bar.combaz.quux@example.com'," emails");string="-_-[[biugs;#fff;#000]Foo]-_-[[i;;;foo]Bar]-_-[[ous;;]Baz]-_-";assert($.terminal.strip(string)==="-_-Foo-_-Bar-_-Baz-_-","$.terminal.strip");string="[[bui;#fff;]Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nulla sed dolor nisl, in suscipit justo. Donec a enim et est porttitor semper at vitae augue. Proin at nulla at dui mattis mattis. Nam a volutpat ante. Aliquam consequat dui eu sem convallis ullamcorper. Nulla suscipit, massa vitae suscipit ornare, tellus] est [[b;;#f00]consequat nunc, quis blandit elit odio eu arcu. Nam a urna nec nisl varius sodales. Mauris iaculis tincidunt orci id commodo. Aliquam] non magna quis [[i;;]tortor malesuada aliquam] eget ut lacus. Nam ut vestibulum est. Praesent volutpat tellus in eros dapibus elementum. Nam laoreet risus non nulla mollis ac luctus [[ub;#fff;]felis dapibus. Pellentesque mattis elementum augue non sollicitudin. Nullam lobortis fermentum elit ac mollis. Nam ac varius risus. Cras faucibus euismod nulla, ac auctor diam rutrum sit amet. Nulla vel odio erat], ac mattis enim.";term.echo("$.terminal.split_equal");var cols=[10,40,60,400];for(var i=cols.length;i--;){var lines=$.terminal.split_equal(string,cols[i]);var success=true;for(var j=0;jcols[i]){success=false;break}}assert(success," split "+cols[i])}}};$.fn.visible=function(){return this.css("visibility","visible")};$.fn.hidden=function(){return this.css("visibility","hidden")};var ids={};$.jrpc=function(url,method,params,success,error){ids[url]=ids[url]||0;var request=$.json_stringify({jsonrpc:"2.0",method:method,params:params,id:++ids[url]});return $.ajax({url:url,data:request,success:function(result,status,jqXHR){var content_type=jqXHR.getResponseHeader("Content-Type");if(!content_type.match(/application\/json/)){if(console&&console.warn){console.warn("Response Content-Type is not application/json")}else{throw new Error("WARN: Response Content-Type is not application/json")}}var json;try{json=$.parseJSON(result)}catch(e){if(error){error(jqXHR,"Invalid JSON",e)}else{throw new Error("Invalid JSON")}return}success(json,status,jqXHR)},error:error,contentType:"application/json",dataType:"text",async:true,cache:false,type:"POST"})};function is_scrolled_into_view(elem){var docViewTop=$(window).scrollTop();var docViewBottom=docViewTop+$(window).height();var elemTop=$(elem).offset().top;var elemBottom=elemTop+$(elem).height();return elemBottom>=docViewTop&&elemTop<=docViewBottom}function char_size(){var temp=$('