From a47cdf25f6400414ad07de88ded4f3d5108bb9bf Mon Sep 17 00:00:00 2001 From: Sergey Chikuyonok Date: Wed, 17 Oct 2012 02:51:39 +0400 Subject: [PATCH] Updated Emmet with latest CM2 plugin --- src/lib/emmet.min.js | 382 +++++++++++++++++++++---------------------- 1 file changed, 191 insertions(+), 191 deletions(-) diff --git a/src/lib/emmet.min.js b/src/lib/emmet.min.js index 02e867c..81b98cc 100644 --- a/src/lib/emmet.min.js +++ b/src/lib/emmet.min.js @@ -1,74 +1,74 @@ -var _=function(){function g(a,b,c){if(a===b)return a!==0||1/a==1/b;if(a==null||b==null)return a===b;if(a._chain)a=a._wrapped;if(b._chain)b=b._wrapped;if(a.isEqual&&k.isFunction(a.isEqual))return a.isEqual(b);if(b.isEqual&&k.isFunction(b.isEqual))return b.isEqual(a);var e=h.call(a);if(e!=h.call(b))return!1;switch(e){case "[object String]":return a==String(b);case "[object Number]":return a!=+a?b!=+b:a==0?1/a==1/b:a==+b;case "[object Date]":case "[object Boolean]":return+a==+b;case "[object RegExp]":return a.source== -b.source&&a.global==b.global&&a.multiline==b.multiline&&a.ignoreCase==b.ignoreCase}if(typeof a!="object"||typeof b!="object")return!1;for(var d=c.length;d--;)if(c[d]==a)return!0;c.push(a);var d=0,j=!0;if(e=="[object Array]"){if(d=a.length,j=d==b.length)for(;d--;)if(!(j=d in a==d in b&&g(a[d],b[d],c)))break}else{if("constructor"in a!="constructor"in b||a.constructor!=b.constructor)return!1;for(var v in a)if(k.has(a,v)&&(d++,!(j=k.has(b,v)&&g(a[v],b[v],c))))break;if(j){for(v in b)if(k.has(b,v)&&!d--)break; -j=!d}}c.pop();return j}var d=this,f=d._,i={},c=Array.prototype,b=Object.prototype,a=c.slice,e=c.unshift,h=b.toString,j=b.hasOwnProperty,l=c.forEach,o=c.map,m=c.reduce,n=c.reduceRight,p=c.filter,q=c.every,s=c.some,t=c.indexOf,r=c.lastIndexOf,b=Array.isArray,v=Object.keys,y=Function.prototype.bind,k=function(a){return new z(a)};if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports)exports=module.exports=k;exports._=k}else d._=k;k.VERSION="1.3.3";var u=k.each=k.forEach=function(a, -b,c){if(a!=null)if(l&&a.forEach===l)a.forEach(b,c);else if(a.length===+a.length)for(var e=0,h=a.length;e2;a==null&&(a=[]);if(m&& -a.reduce===m)return e&&(b=k.bind(b,e)),h?a.reduce(b,c):a.reduce(b);u(a,function(a,d,k){h?c=b.call(e,c,a,d,k):(c=a,h=!0)});if(!h)throw new TypeError("Reduce of empty array with no initial value");return c};k.reduceRight=k.foldr=function(a,b,c,e){var h=arguments.length>2;a==null&&(a=[]);if(n&&a.reduceRight===n)return e&&(b=k.bind(b,e)),h?a.reduceRight(b,c):a.reduceRight(b);var d=k.toArray(a).reverse();e&&!h&&(b=k.bind(b,e));return h?k.reduce(d,b,c,e):k.reduce(d,b)};k.find=k.detect=function(a,b,c){var e; -D(a,function(a,h,d){if(b.call(c,a,h,d))return e=a,!0});return e};k.filter=k.select=function(a,b,c){var e=[];if(a==null)return e;if(p&&a.filter===p)return a.filter(b,c);u(a,function(a,h,d){b.call(c,a,h,d)&&(e[e.length]=a)});return e};k.reject=function(a,b,c){var e=[];if(a==null)return e;u(a,function(a,h,d){b.call(c,a,h,d)||(e[e.length]=a)});return e};k.every=k.all=function(a,b,c){var e=!0;if(a==null)return e;if(q&&a.every===q)return a.every(b,c);u(a,function(a,h,d){if(!(e=e&&b.call(c,a,h,d)))return i}); -return!!e};var D=k.some=k.any=function(a,b,c){b||(b=k.identity);var e=!1;if(a==null)return e;if(s&&a.some===s)return a.some(b,c);u(a,function(a,h,d){if(e||(e=b.call(c,a,h,d)))return i});return!!e};k.include=k.contains=function(a,b){var c=!1;return a==null?c:t&&a.indexOf===t?a.indexOf(b)!=-1:c=D(a,function(a){return a===b})};k.invoke=function(b,c){var e=a.call(arguments,2);return k.map(b,function(a){return(k.isFunction(c)?c||a:a[c]).apply(a,e)})};k.pluck=function(a,b){return k.map(a,function(a){return a[b]})}; -k.max=function(a,b,c){if(!b&&k.isArray(a)&&a[0]===+a[0])return Math.max.apply(Math,a);if(!b&&k.isEmpty(a))return-Infinity;var e={computed:-Infinity};u(a,function(a,h,d){h=b?b.call(c,a,h,d):a;h>=e.computed&&(e={value:a,computed:h})});return e.value};k.min=function(a,b,c){if(!b&&k.isArray(a)&&a[0]===+a[0])return Math.min.apply(Math,a);if(!b&&k.isEmpty(a))return Infinity;var e={computed:Infinity};u(a,function(a,h,d){h=b?b.call(c,a,h,d):a;he?1:0}),"value")};k.groupBy=function(a,b){var c={},e=k.isFunction(b)?b:function(a){return a[b]};u(a,function(a,b){var h=e(a,b);(c[h]||(c[h]=[])).push(a)}); -return c};k.sortedIndex=function(a,b,c){c||(c=k.identity);for(var e=0,h=a.length;e>1;c(a[d])=0})})};k.difference=function(b){var c=k.flatten(a.call(arguments,1),!0);return k.filter(b,function(a){return!k.include(c,a)})};k.zip=function(){for(var b=a.call(arguments),c=k.max(k.pluck(b,"length")), -e=Array(c),h=0;h2;a==null&&(a=[]);if(m&& +a.reduce===m)return e&&(b=k.bind(b,e)),d?a.reduce(b,c):a.reduce(b);u(a,function(a,j,k){d?c=b.call(e,c,a,j,k):(c=a,d=!0)});if(!d)throw new TypeError("Reduce of empty array with no initial value");return c};k.reduceRight=k.foldr=function(a,b,c,e){var d=arguments.length>2;a==null&&(a=[]);if(n&&a.reduceRight===n)return e&&(b=k.bind(b,e)),d?a.reduceRight(b,c):a.reduceRight(b);var j=k.toArray(a).reverse();e&&!d&&(b=k.bind(b,e));return d?k.reduce(j,b,c,e):k.reduce(j,b)};k.find=k.detect=function(a,b,c){var e; +D(a,function(a,d,j){if(b.call(c,a,d,j))return e=a,!0});return e};k.filter=k.select=function(a,b,c){var e=[];if(a==null)return e;if(o&&a.filter===o)return a.filter(b,c);u(a,function(a,d,j){b.call(c,a,d,j)&&(e[e.length]=a)});return e};k.reject=function(a,b,c){var e=[];if(a==null)return e;u(a,function(a,d,j){b.call(c,a,d,j)||(e[e.length]=a)});return e};k.every=k.all=function(a,b,c){var e=!0;if(a==null)return e;if(q&&a.every===q)return a.every(b,c);u(a,function(a,d,j){if(!(e=e&&b.call(c,a,d,j)))return h}); +return!!e};var D=k.some=k.any=function(a,b,c){b||(b=k.identity);var e=!1;if(a==null)return e;if(s&&a.some===s)return a.some(b,c);u(a,function(a,d,j){if(e||(e=b.call(c,a,d,j)))return h});return!!e};k.include=k.contains=function(a,b){var c=!1;return a==null?c:t&&a.indexOf===t?a.indexOf(b)!=-1:c=D(a,function(a){return a===b})};k.invoke=function(b,c){var e=a.call(arguments,2);return k.map(b,function(a){return(k.isFunction(c)?c||a:a[c]).apply(a,e)})};k.pluck=function(a,b){return k.map(a,function(a){return a[b]})}; +k.max=function(a,b,c){if(!b&&k.isArray(a)&&a[0]===+a[0])return Math.max.apply(Math,a);if(!b&&k.isEmpty(a))return-Infinity;var e={computed:-Infinity};u(a,function(a,d,j){d=b?b.call(c,a,d,j):a;d>=e.computed&&(e={value:a,computed:d})});return e.value};k.min=function(a,b,c){if(!b&&k.isArray(a)&&a[0]===+a[0])return Math.min.apply(Math,a);if(!b&&k.isEmpty(a))return Infinity;var e={computed:Infinity};u(a,function(a,d,j){d=b?b.call(c,a,d,j):a;de?1:0}),"value")};k.groupBy=function(a,b){var c={},e=k.isFunction(b)?b:function(a){return a[b]};u(a,function(a,b){var d=e(a,b);(c[d]||(c[d]=[])).push(a)}); +return c};k.sortedIndex=function(a,b,c){c||(c=k.identity);for(var e=0,d=a.length;e>1;c(a[j])=0})})};k.difference=function(b){var c=k.flatten(a.call(arguments,1),!0);return k.filter(b,function(a){return!k.include(c,a)})};k.zip=function(){for(var b=a.call(arguments),c=k.max(k.pluck(b,"length")), +e=Array(c),d=0;d=0;c--)b=[a[c].apply(this,b)];return b[0]}};k.after=function(a,b){return a<=0?b():function(){if(--a<1)return b.apply(this,arguments)}};k.keys=v||function(a){if(a!==Object(a))throw new TypeError("Invalid object");var b=[],c;for(c in a)k.has(a,c)&&(b[b.length]=c);return b};k.values=function(a){return k.map(a,k.identity)};k.functions=k.methods=function(a){var b=[],c;for(c in a)k.isFunction(a[c])&&b.push(c);return b.sort()};k.extend=function(b){u(a.call(arguments, 1),function(a){for(var c in a)b[c]=a[c]});return b};k.pick=function(b){var c={};u(k.flatten(a.call(arguments,1)),function(a){a in b&&(c[a]=b[a])});return c};k.defaults=function(b){u(a.call(arguments,1),function(a){for(var c in a)b[c]==null&&(b[c]=a[c])});return b};k.clone=function(a){return!k.isObject(a)?a:k.isArray(a)?a.slice():k.extend({},a)};k.tap=function(a,b){b(a);return a};k.isEqual=function(a,b){return g(a,b,[])};k.isEmpty=function(a){if(a==null)return!0;if(k.isArray(a)||k.isString(a))return a.length=== -0;for(var b in a)if(k.has(a,b))return!1;return!0};k.isElement=function(a){return!!(a&&a.nodeType==1)};k.isArray=b||function(a){return h.call(a)=="[object Array]"};k.isObject=function(a){return a===Object(a)};k.isArguments=function(a){return h.call(a)=="[object Arguments]"};if(!k.isArguments(arguments))k.isArguments=function(a){return!(!a||!k.has(a,"callee"))};k.isFunction=function(a){return h.call(a)=="[object Function]"};k.isString=function(a){return h.call(a)=="[object String]"};k.isNumber=function(a){return h.call(a)== -"[object Number]"};k.isFinite=function(a){return k.isNumber(a)&&isFinite(a)};k.isNaN=function(a){return a!==a};k.isBoolean=function(a){return a===!0||a===!1||h.call(a)=="[object Boolean]"};k.isDate=function(a){return h.call(a)=="[object Date]"};k.isRegExp=function(a){return h.call(a)=="[object RegExp]"};k.isNull=function(a){return a===null};k.isUndefined=function(a){return a===void 0};k.has=function(a,b){return j.call(a,b)};k.noConflict=function(){d._=f;return this};k.identity=function(a){return a}; +0;for(var b in a)if(k.has(a,b))return!1;return!0};k.isElement=function(a){return!!(a&&a.nodeType==1)};k.isArray=b||function(a){return j.call(a)=="[object Array]"};k.isObject=function(a){return a===Object(a)};k.isArguments=function(a){return j.call(a)=="[object Arguments]"};if(!k.isArguments(arguments))k.isArguments=function(a){return!(!a||!k.has(a,"callee"))};k.isFunction=function(a){return j.call(a)=="[object Function]"};k.isString=function(a){return j.call(a)=="[object String]"};k.isNumber=function(a){return j.call(a)== +"[object Number]"};k.isFinite=function(a){return k.isNumber(a)&&isFinite(a)};k.isNaN=function(a){return a!==a};k.isBoolean=function(a){return a===!0||a===!1||j.call(a)=="[object Boolean]"};k.isDate=function(a){return j.call(a)=="[object Date]"};k.isRegExp=function(a){return j.call(a)=="[object RegExp]"};k.isNull=function(a){return a===null};k.isUndefined=function(a){return a===void 0};k.has=function(a,b){return i.call(a,b)};k.noConflict=function(){d._=f;return this};k.identity=function(a){return a}; k.times=function(a,b,c){for(var e=0;e/g,">").replace(/"/g,""").replace(/'/g,"'").replace(/\//g,"/")};k.result=function(a,b){if(a==null)return null;var c=a[b];return k.isFunction(c)?c.call(a):c};k.mixin=function(a){u(k.functions(a),function(b){F(b,k[b]=a[b])})};var G=0;k.uniqueId=function(a){var b=G++;return a?a+b:b};k.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g, escape:/<%-([\s\S]+?)%>/g};var w=/.^/,x={"\\":"\\","'":"'",r:"\r",n:"\n",t:"\t",u2028:"\u2028",u2029:"\u2029"},A;for(A in x)x[x[A]]=A;var H=/\\|'|\r|\n|\t|\u2028|\u2029/g,I=/\\(\\|'|r|n|t|u2028|u2029)/g,B=function(a){return a.replace(I,function(a,b){return x[b]})};k.template=function(a,b,c){c=k.defaults(c||{},k.templateSettings);a="__p+='"+a.replace(H,function(a){return"\\"+x[a]}).replace(c.escape||w,function(a,b){return"'+\n_.escape("+B(b)+")+\n'"}).replace(c.interpolate||w,function(a,b){return"'+\n("+ B(b)+")+\n'"}).replace(c.evaluate||w,function(a,b){return"';\n"+B(b)+"\n;__p+='"})+"';\n";c.variable||(a="with(obj||{}){\n"+a+"}\n");var a="var __p='';var print=function(){__p+=Array.prototype.join.call(arguments, '')};\n"+a+"return __p;\n",e=new Function(c.variable||"obj","_",a);if(b)return e(b,k);b=function(a){return e.call(this,a,k)};b.source="function("+(c.variable||"obj")+"){\n"+a+"}";return b};k.chain=function(a){return k(a).chain()};var z=function(a){this._wrapped=a};k.prototype=z.prototype; var C=function(a,b){return b?k(a).chain():a},F=function(b,c){z.prototype[b]=function(){var b=a.call(arguments);e.call(b,this._wrapped);return C(c.apply(k,b),this._chain)}};k.mixin(k);u(["pop","push","reverse","shift","sort","splice","unshift"],function(a){var b=c[a];z.prototype[a]=function(){var c=this._wrapped;b.apply(c,arguments);var e=c.length;(a=="shift"||a=="splice")&&e===0&&delete c[0];return C(c,this._chain)}});u(["concat","join","slice"],function(a){var b=c[a];z.prototype[a]=function(){return C(b.apply(this._wrapped, -arguments),this._chain)}});z.prototype.chain=function(){this._chain=!0;return this};z.prototype.value=function(){return this._wrapped};return k}.call({}),emmet=function(g){function d(b,c,e){var d;d=c&&c.hasOwnProperty("constructor")?c.constructor:function(){b.apply(this,arguments)};_.extend(d,b);a.prototype=b.prototype;d.prototype=new a;c&&_.extend(d.prototype,c);e&&_.extend(d,e);d.prototype.constructor=d;d.__super__=b.prototype;return d}var f=g._;if(!f)try{f=_}catch(i){}if(!f)try{f=require("underscore")}catch(c){}if(!f)throw"Cannot access to Underscore.js lib"; -var b={_:f},a=function(){},e=null;return{define:function(a,c){a in b||(b[a]=_.isFunction(c)?this.exec(c):c)},require:function(a){!(a in b)&&e&&e(a);return b[a]},exec:function(a,b){return a.call(b||g,_.bind(this.require,this),_,this)},extend:function(a,b){var c=d(this,a,b);c.extend=this.extend;if(a.hasOwnProperty("toString"))c.prototype.toString=a.toString;return c},expandAbbreviation:function(a,b,c,e){if(!a)return"";var b=b||"html",c=c||"plain",d=this.require("filters"),i=this.require("utils"),f= -this.require("abbreviationParser"),c=this.require("profile").get(c,b);this.require("tabStops").resetTabstopIndex();a=d.extractFromAbbreviation(a);e=f.parse(a[0],{syntax:b,contextNode:e});b=d.composeList(b,c,a[1]);d.apply(e,b,c);return i.replaceVariables(e.toString())},defaultSyntax:function(){return"html"},defaultProfile:function(){return"plain"},log:function(){g.console&&g.console.log&&g.console.log.apply(g.console,arguments)},setModuleLoader:function(a){e=a}}}(this); +arguments),this._chain)}});z.prototype.chain=function(){this._chain=!0;return this};z.prototype.value=function(){return this._wrapped};return k}.call({}),emmet=function(g){function d(b,c,e){var d;d=c&&c.hasOwnProperty("constructor")?c.constructor:function(){b.apply(this,arguments)};_.extend(d,b);a.prototype=b.prototype;d.prototype=new a;c&&_.extend(d.prototype,c);e&&_.extend(d,e);d.prototype.constructor=d;d.__super__=b.prototype;return d}var f=g._;if(!f)try{f=_}catch(h){}if(!f)try{f=require("underscore")}catch(c){}if(!f)throw"Cannot access to Underscore.js lib"; +var b={_:f},a=function(){},e=null;return{define:function(a,c){a in b||(b[a]=_.isFunction(c)?this.exec(c):c)},require:function(a){!(a in b)&&e&&e(a);return b[a]},exec:function(a,b){return a.call(b||g,_.bind(this.require,this),_,this)},extend:function(a,b){var c=d(this,a,b);c.extend=this.extend;if(a.hasOwnProperty("toString"))c.prototype.toString=a.toString;return c},expandAbbreviation:function(a,b,c,e){if(!a)return"";var b=b||"html",c=c||"plain",d=this.require("filters"),h=this.require("utils"),f= +this.require("abbreviationParser"),c=this.require("profile").get(c,b);this.require("tabStops").resetTabstopIndex();a=d.extractFromAbbreviation(a);e=f.parse(a[0],{syntax:b,contextNode:e});b=d.composeList(b,c,a[1]);d.apply(e,b,c);return h.replaceVariables(e.toString())},defaultSyntax:function(){return"html"},defaultProfile:function(){return"plain"},log:function(){g.console&&g.console.log&&g.console.log.apply(g.console,arguments)},setModuleLoader:function(a){e=a}}}(this); if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports)exports=module.exports=emmet;exports.emmet=emmet} -emmet.define("abbreviationParser",function(g,d){function f(){this.parent=null;this.children=[];this._attributes=[];this.abbreviation="";this.counter=1;this._name=null;this._text="";this.repeatCount=1;this.hasImplicitRepeat=!1;this._data={};this.padding=this.content=this.end=this.start=""}function i(a){return a.substring(1,a.length-1)}function c(a){for(var a=g("utils").trim(a),b=new f,e=b.addChild(),h,j=g("stringStream").create(a),a=1E3,m;!j.eol()&&--a>0;)switch(h=j.peek(),h){case "(":j.start=j.pos; -if(j.skipToPair("(",")"))h=c(i(j.current())),(m=j.match(/^\*(\d+)?/,!0))&&e._setRepeat(m[1]),d.each(h.children,function(a){e.addChild(a)});else throw'Invalid abbreviation: mo matching ")" found for character at '+j.pos;break;case ">":e=e.addChild();j.next();break;case "+":e=e.parent.addChild();j.next();break;case "^":h=e.parent||e;e=(h.parent||h).addChild();j.next();break;default:j.start=j.pos,j.eatWhile(function(a){if(a=="["||a=="{"){if(j.skipToPair(a,p[a]))return j.backUp(1),!0;throw'Invalid abbreviation: mo matching "'+ -p[a]+'" found for character at '+j.pos;}return a=="+"?(j.next(),a=j.eol()||~"+>^*".indexOf(j.peek()),j.backUp(1),a):a!="("&&o(a)}),e.setAbbreviation(j.current()),j.start=j.pos}if(a<1)throw"Endless loop detected";return b}function b(a){var a=g("utils").trim(a),b=[],a=g("stringStream").create(a);for(a.eatSpace();!a.eol();)if(a.start=a.pos,a.eatWhile(n)){var c=a.current(),e="";if(a.peek()=="="){a.next();a.start=a.pos;var d=a.peek();if(d=='"'||d=="'"){a.next();a:{for(var e=a,h=void 0;h=e.next();)if(h=== -d){e=!0;break a}e=!1}if(e)e=a.current(),e=e.substring(1,e.length-1);else throw"Invalid attribute value";}else if(a.eatWhile(/[^\s\]]/))e=a.current();else throw"Invalid attribute value";}b.push({name:c,value:e});a.eatSpace()}else break;return b}function a(a){for(var c=[],d={"#":"id",".":"class"},h=null,j=g("stringStream").create(a);!j.eol();)switch(j.peek()){case "#":case ".":if(h===null)h=j.pos;var f=d[j.peek()];j.next();j.start=j.pos;j.eatWhile(n);c.push({name:f,value:j.current()});break;case "[":if(h=== -null)h=j.pos;j.start=j.pos;if(!j.skipToPair("[","]"))throw"Invalid attribute set definition";c=c.concat(b(i(j.current())));break;default:j.next()}return!c.length?null:{element:a.substring(0,h),attributes:e(c)}}function e(a){var a=d.map(a,function(a){return d.clone(a)}),b={};return d.filter(a,function(a){if(!(a.name in b))return b[a.name]=a;var c=b[a.name];a.name.toLowerCase()=="class"?c.value+=(c.value.length?" ":"")+a.value:c.value=a.value;return!1})}function h(a){if(!~a.indexOf("{"))return null; -for(var b=g("stringStream").create(a);!b.eol();)switch(b.peek()){case "[":case "(":b.skipToPair(b.peek(),p[b.peek()]);break;case "{":return b.start=b.pos,b.skipToPair("{","}"),{element:a.substring(0,b.start),text:i(b.current())};default:b.next()}}function j(a){for(var b=a.children.length-1,c,e;b>=0;b--)if(e=a.children[b],e.isRepeating()){c=e.repeatCount;e.repeatCount=1;for(e.updateProperty("counter",1);--c>0;)e.parent.addChild(e.clone(),b+1).updateProperty("counter",c+1)}d.each(a.children,j);return a} -function l(a){for(var b=a.children.length-1;b>=0;b--){var c=a.children[b];c.isGroup()?c.replace(l(c).children):c.isEmpty()&&c.remove()}d.each(a.children,l);return a}function o(a){var b=a.charCodeAt(0);return b>64&&b<91||b>96&&b<123||b>47&&b<58||"#.*:$-_!@|".indexOf(a)!=-1}var m=/^[\w\-\$\:@\!]+\+?$/i,n=/[\w\-:\$]/,p={"[":"]","(":")","{":"}"},q=Array.prototype.splice,s=[],t=[],r=[];f.prototype={addChild:function(a,b){a=a||new f;a.parent=this;d.isUndefined(b)?this.children.push(a):this.children.splice(b, +emmet.define("abbreviationParser",function(g,d){function f(){this.parent=null;this.children=[];this._attributes=[];this.abbreviation="";this.counter=1;this._name=null;this._text="";this.repeatCount=1;this.hasImplicitRepeat=!1;this._data={};this.padding=this.content=this.end=this.start=""}function h(a){return a.substring(1,a.length-1)}function c(a){for(var a=g("utils").trim(a),b=new f,e=b.addChild(),j,i=g("stringStream").create(a),a=1E3,m;!i.eol()&&--a>0;)switch(j=i.peek(),j){case "(":i.start=i.pos; +if(i.skipToPair("(",")"))j=c(h(i.current())),(m=i.match(/^\*(\d+)?/,!0))&&e._setRepeat(m[1]),d.each(j.children,function(a){e.addChild(a)});else throw'Invalid abbreviation: mo matching ")" found for character at '+i.pos;break;case ">":e=e.addChild();i.next();break;case "+":e=e.parent.addChild();i.next();break;case "^":j=e.parent||e;e=(j.parent||j).addChild();i.next();break;default:i.start=i.pos,i.eatWhile(function(a){if(a=="["||a=="{"){if(i.skipToPair(a,o[a]))return i.backUp(1),!0;throw'Invalid abbreviation: mo matching "'+ +o[a]+'" found for character at '+i.pos;}return a=="+"?(i.next(),a=i.eol()||~"+>^*".indexOf(i.peek()),i.backUp(1),a):a!="("&&p(a)}),e.setAbbreviation(i.current()),i.start=i.pos}if(a<1)throw"Endless loop detected";return b}function b(a){var a=g("utils").trim(a),b=[],a=g("stringStream").create(a);for(a.eatSpace();!a.eol();)if(a.start=a.pos,a.eatWhile(n)){var c=a.current(),e="";if(a.peek()=="="){a.next();a.start=a.pos;var d=a.peek();if(d=='"'||d=="'"){a.next();a:{for(var e=a,j=void 0;j=e.next();)if(j=== +d){e=!0;break a}e=!1}if(e)e=a.current(),e=e.substring(1,e.length-1);else throw"Invalid attribute value";}else if(a.eatWhile(/[^\s\]]/))e=a.current();else throw"Invalid attribute value";}b.push({name:c,value:e});a.eatSpace()}else break;return b}function a(a){for(var c=[],d={"#":"id",".":"class"},j=null,i=g("stringStream").create(a);!i.eol();)switch(i.peek()){case "#":case ".":if(j===null)j=i.pos;var f=d[i.peek()];i.next();i.start=i.pos;i.eatWhile(n);c.push({name:f,value:i.current()});break;case "[":if(j=== +null)j=i.pos;i.start=i.pos;if(!i.skipToPair("[","]"))throw"Invalid attribute set definition";c=c.concat(b(h(i.current())));break;default:i.next()}return!c.length?null:{element:a.substring(0,j),attributes:e(c)}}function e(a){var a=d.map(a,function(a){return d.clone(a)}),b={};return d.filter(a,function(a){if(!(a.name in b))return b[a.name]=a;var c=b[a.name];a.name.toLowerCase()=="class"?c.value+=(c.value.length?" ":"")+a.value:c.value=a.value;return!1})}function j(a){if(!~a.indexOf("{"))return null; +for(var b=g("stringStream").create(a);!b.eol();)switch(b.peek()){case "[":case "(":b.skipToPair(b.peek(),o[b.peek()]);break;case "{":return b.start=b.pos,b.skipToPair("{","}"),{element:a.substring(0,b.start),text:h(b.current())};default:b.next()}}function i(a){for(var b=a.children.length-1,c,e;b>=0;b--)if(e=a.children[b],e.isRepeating()){c=e.repeatCount;e.repeatCount=1;for(e.updateProperty("counter",1);--c>0;)e.parent.addChild(e.clone(),b+1).updateProperty("counter",c+1)}d.each(a.children,i);return a} +function l(a){for(var b=a.children.length-1;b>=0;b--){var c=a.children[b];c.isGroup()?c.replace(l(c).children):c.isEmpty()&&c.remove()}d.each(a.children,l);return a}function p(a){var b=a.charCodeAt(0);return b>64&&b<91||b>96&&b<123||b>47&&b<58||"#.*:$-_!@|".indexOf(a)!=-1}var m=/^[\w\-\$\:@\!]+\+?$/i,n=/[\w\-:\$]/,o={"[":"]","(":")","{":"}"},q=Array.prototype.splice,s=[],t=[],r=[];f.prototype={addChild:function(a,b){a=a||new f;a.parent=this;d.isUndefined(b)?this.children.push(a):this.children.splice(b, 0,a);return a},clone:function(){var a=new f;d.each(["abbreviation","counter","_name","_text","repeatCount","hasImplicitRepeat","start","end","content","padding"],function(b){a[b]=this[b]},this);a._attributes=d.map(this._attributes,function(a){return d.clone(a)});a._data=d.clone(this._data);a.children=d.map(this.children,function(b){b=b.clone();b.parent=a;return b});return a},remove:function(){if(this.parent)this.parent.children=d.without(this.parent.children,this);return this},replace:function(){var a= this.parent,b=d.indexOf(a.children,this),c=d.flatten(arguments);q.apply(a.children,[b,1].concat(c));d.each(c,function(b){b.parent=a})},updateProperty:function(a,b){this[a]=b;d.each(this.children,function(c){c.updateProperty(a,b)})},find:function(a){return this.findAll(a)[0]},findAll:function(a){if(!d.isFunction(a))var b=a.toLowerCase(),a=function(a){return a.name().toLowerCase()==b};var c=[];d.each(this.children,function(b){a(b)&&c.push(b);c=c.concat(b.findAll(a))});return d.compact(c)},data:function(a, b){if(arguments.length==2&&(this._data[a]=b,a=="resource"&&g("elements").is(b,"snippet")&&(this.content=b.data,this._text)))this.content=g("abbreviationUtils").insertChildContent(b.data,this._text);return this._data[a]},name:function(){var a=this.matchedResource();return g("elements").is(a,"element")?a.name:this._name},attributeList:function(){var a=[],b=this.matchedResource();g("elements").is(b,"element")&&d.isArray(b.attributes)&&(a=a.concat(b.attributes));return e(a.concat(this._attributes))}, attribute:function(a,b){if(arguments.length==2){var c=d.indexOf(d.pluck(this._attributes,"name"),a.toLowerCase());if(~c)this._attributes[c].value=b}return(d.find(this.attributeList(),function(b){return b.name==a})||{}).value},matchedResource:function(){return this.data("resource")},index:function(){return this.parent?d.indexOf(this.parent.children,this):-1},_setRepeat:function(a){a?this.repeatCount=parseInt(a,10)||1:this.hasImplicitRepeat=!0},setAbbreviation:function(b){var c=this;this.abbreviation= -b=(b||"").replace(/\*(\d+)?$/,function(a,b){c._setRepeat(b);return""});var e=h(b);if(e)b=e.element,this.content=this._text=e.text;if(e=a(b))b=e.element,this._attributes=e.attributes;if((this._name=b)&&!m.test(this._name))throw"Invalid abbreviation";},toString:function(){var a=g("utils"),b=this.start,c=this.end,e=this.content,h=this;d.each(r,function(a){b=a(b,h,"start");e=a(e,h,"content");c=a(c,h,"end")});var j=d.map(this.children,function(a){return a.toString()}).join(""),e=g("abbreviationUtils").insertChildContent(e, -j,{keepVariable:!1});return b+a.padString(e,this.padding)+c},hasEmptyChildren:function(){return!!d.find(this.children,function(a){return a.isEmpty()})},hasImplicitName:function(){return!this._name&&!this.isTextNode()},isGroup:function(){return!this.abbreviation},isEmpty:function(){return!this.abbreviation&&!this.children.length},isRepeating:function(){return this.repeatCount>1||this.hasImplicitRepeat},isTextNode:function(){return!this.name()&&!this.attributeList().length},isElement:function(){return!this.isEmpty()&& -!this.isTextNode()},deepestChild:function(){if(!this.children.length)return null;for(var a=this;a.children.length;)a=d.last(a.children);return a}};r.push(function(a,b){return g("utils").replaceCounter(a,b.counter)});return{parse:function(a,b){var b=b||{},e=c(a);if(b.contextNode){e._name=b.contextNode.name;var h={};d.each(e._attributes,function(a){h[a.name]=a});d.each(b.contextNode.attributes,function(a){a.name in h?h[a.name].value=a.value:(a=d.clone(a),e._attributes.push(a),h[a.name]=a)})}d.each(s, -function(a){a(e,b)});e=l(j(e));d.each(t,function(a){a(e,b)});return e},AbbreviationNode:f,addPreprocessor:function(a){d.include(s,a)||s.push(a)},removeFilter:function(a){preprocessor=d.without(s,a)},addPostprocessor:function(a){d.include(t,a)||t.push(a)},removePostprocessor:function(a){t=d.without(t,a)},addOutputProcessor:function(a){d.include(r,a)||r.push(a)},removeOutputProcessor:function(a){r=d.without(r,a)},isAllowedChar:function(a){a=String(a);return o(a)||~">+^[](){}".indexOf(a)}}}); -emmet.exec(function(g,d){function f(i,c){var b=g("resources"),a=g("elements"),e=g("abbreviationParser");d.each(d.clone(i.children),function(h){var j=b.getMatchedResource(h,c);if(d.isString(j))h.data("resource",a.create("snippet",j));else if(a.is(j,"reference")){j=e.parse(j.data,{syntax:c});if(h.repeatCount>1){var i=j.findAll(function(a){return a.hasImplicitRepeat});d.each(i,function(a){a.repeatCount=h.repeatCount;a.hasImplicitRepeat=!1})}var g=j.deepestChild();g&&d.each(h.children,function(a){g.addChild(a)}); -h.replace(j.children)}else h.data("resource",j);f(h,c)})}g("abbreviationParser").addPreprocessor(function(d,c){var b=c.syntax||emmet.defaultSyntax();f(d,b)})}); -emmet.exec(function(g,d){function f(a){for(var b=g("range"),c=[],a=g("stringStream").create(a);!a.eol();){if(a.peek()=="\\")a.next();else if(a.start=a.pos,a.match(e,!0)){c.push(b.create(a.start,e));continue}a.next()}return c}function i(a,b){var c=g("utils"),e=f(a);e.reverse();d.each(e,function(e){a=c.replaceSubstring(a,b,e)});return a}function c(a){return f(a.content).length?!0:!!d.find(a.attributeList(),function(a){return!!f(a.value).length})}function b(a,b,e){var f=a.findAll(function(a){return c(a)}); -c(a)&&f.unshift(a);f.length?d.each(f,function(a){a.content=i(a.content,b);d.each(a._attributes,function(a){a.value=i(a.value,b)})}):(a=a.deepestChild()||a,a.content=e?b:g("abbreviationUtils").insertChildContent(a.content,b))}var a=g("abbreviationParser"),e="$#";a.addPreprocessor(function(a,b){if(b.pastedContent){var c=g("utils"),e=d.map(c.splitByLines(b.pastedContent,!0),c.trim);a.findAll(function(a){if(a.hasImplicitRepeat)return a.data("paste",e),a.repeatCount=e.length})}});a.addPostprocessor(function(a, -c){!a.findAll(function(a){var c=a.data("paste"),e="";d.isArray(c)?e=c[a.counter-1]:d.isFunction(c)?e=c(a.counter-1,a.content):c&&(e=c);e&&b(a,e,!!a.data("pasteOverwrites"));a.data("paste",null);return!d.isUndefined(c)}).length&&c.pastedContent&&b(a,c.pastedContent)})});emmet.exec(function(g,d){function f(i){var c=g("tagName");d.each(i.children,function(b){if(b.hasImplicitName()||b.data("forceNameResolving"))b._name=c.resolve(b.parent.name());f(b)});return i}g("abbreviationParser").addPostprocessor(f)}); -emmet.define("cssParser",function(g,d){function f(a){return typeof a!=="undefined"}function i(){return{"char":h.chnum,line:h.linenum}}function c(a,b,c){var e=h,c=c||{};j.push({charstart:f(c["char"])?c["char"]:e.chnum,charend:f(c.charend)?c.charend:e.chnum,linestart:f(c.line)?c.line:e.linenum,lineend:f(c.lineend)?c.lineend:e.linenum,value:a,type:b||a})}function b(a,b){var c=h,e=b||{},d=f(e["char"])?e["char"]:c.chnum,e=f(e.line)?e.line:c.linenum;return{name:"ParseError",message:a+" at line "+(e+1)+ -" char "+(d+1),walker:c,tokens:j}}function a(a){var b=h,e=b.ch,d=i(),j=a?a+e:e,e=b.nextChar();for(a&&(d["char"]-=a.length);o(e)||m(e);)j+=e,e=b.nextChar();c(j,"identifier",d)}function e(){var e=h.ch;if(e===" "||e==="\t"){for(var d=h.ch,j="",f=i();d===" "||d==="\t";)j+=d,d=h.nextChar();c(j,"white",f)}else{if(e==="/"){var d=h,e=f=d.ch,g,r=i();g=d.nextChar();if(g!=="*")r.charend=r["char"],r.lineend=r.line,j=c(e,e,r);else{for(;!(f==="*"&&g==="/");)e+=g,f=g,g=d.nextChar();e+=g;d.nextChar();c(e,"comment", -r)}return j}if(e==='"'||e==="'"){d=h;e=f=j=d.ch;r=i();for(j=d.nextChar();j!==f;){if(j==="\n")if(g=d.nextChar(),g==="\\")e+=j+g;else throw b("Unterminated string",r);else e+=j==="\\"?j+d.nextChar():j;j=d.nextChar()}e+=j;d.nextChar();c(e,"string",r)}else if(e==="("){d=h;j=d.ch;f=0;e=j;g=i();for(j=d.nextChar();j!==")"&&!f;){if(j==="(")f++;else if(j===")")f--;else if(j===!1)throw b("Unterminated brace",g);e+=j;j=d.nextChar()}e+=j;d.nextChar();c(e,"brace",g)}else{if(e==="-"||e==="."||m(e)){j=h;f=j.ch; -e=i();g=f;var r=g===".",v,f=j.nextChar();v=!m(f);if(r&&v)e.charend=e["char"],e.lineend=e.line,d=c(g,".",e);else if(g==="-"&&v)d=a("-");else{for(;f!==!1&&(m(f)||!r&&f===".");)f==="."&&(r=!0),g+=f,f=j.nextChar();c(g,"number",e)}return d}if(o(e))return a();if(l(e))return d=h,e=d.ch,j=i(),g=d.nextChar(),g==="="&&l(e,!0)?(e+=g,c(e,"match",j),d.nextChar(),f=void 0):(j.charend=j["char"]+1,j.lineend=j.line,c(e,e,j)),f;if(e==="\n")c("line"),h.nextChar();else throw b("Unrecognized character");}}}var h,j=[], -l,o,m;h={lines:null,total_lines:0,linenum:-1,line:"",ch:"",chnum:-1,init:function(a){var b=h;b.lines=a.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n");b.total_lines=b.lines.length;b.chnum=-1;b.linenum=-1;b.ch="";b.line="";b.nextLine();b.nextChar()},nextLine:function(){this.linenum+=1;this.line=this.total_lines<=this.linenum?!1:this.lines[this.linenum];if(this.chnum!==-1)this.chnum=0;return this.line},nextChar:function(){for(this.chnum+=1;this.line.charAt(this.chnum)==="";){if(this.nextLine()=== -!1)return this.ch=!1;this.chnum=-1;return this.ch="\n"}return this.ch=this.line.charAt(this.chnum)},peek:function(){return this.line.charAt(this.chnum+1)}};o=function(a){return a=="&"||a==="_"||a==="-"||a>="a"&&a<="z"||a>="A"&&a<="Z"};m=function(a){return a!==!1&&a>="0"&&a<="9"};l=function(){for(var a="{}[]()+*=.,;:>~|\\%$#@^!".split(""),b="*^|$~".split(""),c={},e={},d=0;d")):null:a.match("--")?d(c("comment","--\>")):a.match("DOCTYPE",!0,!0)?(a.eatWhile(/[\w\._\-]/),d(b(1))):null;else if(a.eat("?"))return a.eatWhile(/[\w\._\-]/),e.tokenize=c("meta","?>"),"meta";else{y=a.eat("/")?"closeTag":"openTag";a.eatSpace();for(v="";h=a.eat(/[^\s\u00a0=<>\"\'\/?]/);)v+=h;e.tokenize=f;return"tag"}else return h== -"&"?(a.eat("#")?a.eat("x")?a.eatWhile(/[a-fA-F\d]/)&&a.eat(";"):a.eatWhile(/[\d]/)&&a.eat(";"):a.eatWhile(/[\w\.\-:]/)&&a.eat(";"))?"atom":"error":(a.eatWhile(/[^&<]/),"text")}function f(a,b){var c=a.next();return c==">"||c=="/"&&a.eat(">")?(b.tokenize=d,y=c==">"?"endTag":"selfcloseTag","tag"):c=="="?(y="equals",null):/[\'\"]/.test(c)?(b.tokenize=i(c),b.tokenize(a,b)):(a.eatWhile(/[^\s\u00a0=<>\"\'\/?]/),"word")}function i(a){return function(b,c){for(;!b.eol();)if(b.next()==a){c.tokenize=f;break}return"string"}} -function c(a,b){return function(c,e){for(;!c.eol();){if(c.match(b)){e.tokenize=d;break}c.next()}return a}}function b(a){return function(c,e){for(var h;(h=c.next())!=null;)if(h=="<")return e.tokenize=b(a+1),e.tokenize(c,e);else if(h==">")if(a==1){e.tokenize=d;break}else return e.tokenize=b(a-1),e.tokenize(c,e);return"meta"}}function a(){for(var a=arguments.length-1;a>=0;a--)k.cc.push(arguments[a])}function e(){a.apply(null,arguments);return!0}function h(){if(k.context)k.context=k.context.prev}function j(a){if(a== -"openTag")return k.tagName=v,e(n,l(k.startOfLine));else if(a=="closeTag")return a=!1,k.context?k.context.tagName!=v&&(r.implicitlyClosed.hasOwnProperty(k.context.tagName.toLowerCase())&&h(),a=!k.context||k.context.tagName!=v):a=!0,a&&(u="error"),e(o(a));return e()}function l(a){return function(b){if(b=="selfcloseTag"||b=="endTag"&&r.autoSelfClosers.hasOwnProperty(k.tagName.toLowerCase()))return m(k.tagName.toLowerCase()),e();if(b=="endTag"){m(k.tagName.toLowerCase());var b=k.tagName,c=r.doNotIndent.hasOwnProperty(b)|| -k.context&&k.context.noIndent;k.context={prev:k.context,tagName:b,indent:k.indented,startOfLine:a,noIndent:c}}return e()}}function o(a){return function(b){a&&(u="error");if(b=="endTag")return h(),e();u="error";return e(arguments.callee)}}function m(a){for(var b;;){if(!k.context)break;b=k.context.tagName.toLowerCase();if(!r.contextGrabbers.hasOwnProperty(b)||!r.contextGrabbers[b].hasOwnProperty(a))break;h()}}function n(b){if(b=="word")return u="attribute",e(p,n);if(b=="endTag"||b=="selfcloseTag")return a(); -u="error";return e(n)}function p(b){if(b=="equals")return e(q,n);r.allowMissing||(u="error");return b=="endTag"||b=="selfcloseTag"?a():e()}function q(b){if(b=="string")return e(s);if(b=="word"&&r.allowUnquoted)return u="string",e();u="error";return b=="endTag"||b=="selfCloseTag"?a():e()}function s(b){return b=="string"?e(s):a()}function t(a,b){if(a.sol())b.startOfLine=!0,b.indented=0;if(a.eatSpace())return null;u=y=v=null;var c=b.tokenize(a,b);b.type=y;if((c||y)&&c!="comment")for(k=b;;)if((b.cc.pop()|| -j)(y||c))break;b.startOfLine=!1;return u||c}var r={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!0,allowMissing:!0},v=null,y=null,k=null,u;return{parse:function(a,b){for(var b=b||0,c={tokenize:d,cc:[],indented:0,startOfLine:!0,tagName:null,context:null},e=g("stringStream").create(a),h=[];!e.eol();)h.push({type:t(e,c),start:e.start+b,end:e.pos+b}),e.start=e.pos;return h}}}); -emmet.define("utils",function(g,d){function f(c){this._data=[];this.length=0;c&&this.append(c)}var i="${0}";f.prototype={append:function(c){this._data.push(c);this.length+=c.length},toString:function(){return this._data.join("")},valueOf:function(){return this.toString()}};return{reTag:/<\/?[\w:\-]+(?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*\s*(\/?)>$/,endsWithTag:function(c){return this.reTag.test(c)},isNumeric:function(c){typeof c=="string"&&(c=c.charCodeAt(0));return c&&c>47&& +b=(b||"").replace(/\*(\d+)?$/,function(a,b){c._setRepeat(b);return""});var e=j(b);if(e)b=e.element,this.content=this._text=e.text;if(e=a(b))b=e.element,this._attributes=e.attributes;if((this._name=b)&&!m.test(this._name))throw"Invalid abbreviation";},toString:function(){var a=g("utils"),b=this.start,c=this.end,e=this.content,j=this;d.each(r,function(a){b=a(b,j,"start");e=a(e,j,"content");c=a(c,j,"end")});var i=d.map(this.children,function(a){return a.toString()}).join(""),e=g("abbreviationUtils").insertChildContent(e, +i,{keepVariable:!1});return b+a.padString(e,this.padding)+c},hasEmptyChildren:function(){return!!d.find(this.children,function(a){return a.isEmpty()})},hasImplicitName:function(){return!this._name&&!this.isTextNode()},isGroup:function(){return!this.abbreviation},isEmpty:function(){return!this.abbreviation&&!this.children.length},isRepeating:function(){return this.repeatCount>1||this.hasImplicitRepeat},isTextNode:function(){return!this.name()&&!this.attributeList().length},isElement:function(){return!this.isEmpty()&& +!this.isTextNode()},deepestChild:function(){if(!this.children.length)return null;for(var a=this;a.children.length;)a=d.last(a.children);return a}};r.push(function(a,b){return g("utils").replaceCounter(a,b.counter)});return{parse:function(a,b){var b=b||{},e=c(a);if(b.contextNode){e._name=b.contextNode.name;var j={};d.each(e._attributes,function(a){j[a.name]=a});d.each(b.contextNode.attributes,function(a){a.name in j?j[a.name].value=a.value:(a=d.clone(a),e._attributes.push(a),j[a.name]=a)})}d.each(s, +function(a){a(e,b)});e=l(i(e));d.each(t,function(a){a(e,b)});return e},AbbreviationNode:f,addPreprocessor:function(a){d.include(s,a)||s.push(a)},removeFilter:function(a){preprocessor=d.without(s,a)},addPostprocessor:function(a){d.include(t,a)||t.push(a)},removePostprocessor:function(a){t=d.without(t,a)},addOutputProcessor:function(a){d.include(r,a)||r.push(a)},removeOutputProcessor:function(a){r=d.without(r,a)},isAllowedChar:function(a){a=String(a);return p(a)||~">+^[](){}".indexOf(a)}}}); +emmet.exec(function(g,d){function f(h,c){var b=g("resources"),a=g("elements"),e=g("abbreviationParser");d.each(d.clone(h.children),function(j){var i=b.getMatchedResource(j,c);if(d.isString(i))j.data("resource",a.create("snippet",i));else if(a.is(i,"reference")){i=e.parse(i.data,{syntax:c});if(j.repeatCount>1){var h=i.findAll(function(a){return a.hasImplicitRepeat});d.each(h,function(a){a.repeatCount=j.repeatCount;a.hasImplicitRepeat=!1})}var g=i.deepestChild();g&&d.each(j.children,function(a){g.addChild(a)}); +j.replace(i.children)}else j.data("resource",i);f(j,c)})}g("abbreviationParser").addPreprocessor(function(d,c){var b=c.syntax||emmet.defaultSyntax();f(d,b)})}); +emmet.exec(function(g,d){function f(a){for(var b=g("range"),c=[],a=g("stringStream").create(a);!a.eol();){if(a.peek()=="\\")a.next();else if(a.start=a.pos,a.match(e,!0)){c.push(b.create(a.start,e));continue}a.next()}return c}function h(a,b){var c=g("utils"),e=f(a);e.reverse();d.each(e,function(e){a=c.replaceSubstring(a,b,e)});return a}function c(a){return f(a.content).length?!0:!!d.find(a.attributeList(),function(a){return!!f(a.value).length})}function b(a,b,e){var f=a.findAll(function(a){return c(a)}); +c(a)&&f.unshift(a);f.length?d.each(f,function(a){a.content=h(a.content,b);d.each(a._attributes,function(a){a.value=h(a.value,b)})}):(a=a.deepestChild()||a,a.content=e?b:g("abbreviationUtils").insertChildContent(a.content,b))}var a=g("abbreviationParser"),e="$#";a.addPreprocessor(function(a,b){if(b.pastedContent){var c=g("utils"),e=d.map(c.splitByLines(b.pastedContent,!0),c.trim);a.findAll(function(a){if(a.hasImplicitRepeat)return a.data("paste",e),a.repeatCount=e.length})}});a.addPostprocessor(function(a, +c){!a.findAll(function(a){var c=a.data("paste"),e="";d.isArray(c)?e=c[a.counter-1]:d.isFunction(c)?e=c(a.counter-1,a.content):c&&(e=c);e&&b(a,e,!!a.data("pasteOverwrites"));a.data("paste",null);return!d.isUndefined(c)}).length&&c.pastedContent&&b(a,c.pastedContent)})});emmet.exec(function(g,d){function f(h){var c=g("tagName");d.each(h.children,function(b){if(b.hasImplicitName()||b.data("forceNameResolving"))b._name=c.resolve(b.parent.name());f(b)});return h}g("abbreviationParser").addPostprocessor(f)}); +emmet.define("cssParser",function(g,d){function f(a){return typeof a!=="undefined"}function h(){return{"char":j.chnum,line:j.linenum}}function c(a,b,c){var e=j,c=c||{};i.push({charstart:f(c["char"])?c["char"]:e.chnum,charend:f(c.charend)?c.charend:e.chnum,linestart:f(c.line)?c.line:e.linenum,lineend:f(c.lineend)?c.lineend:e.linenum,value:a,type:b||a})}function b(a,b){var c=j,e=b||{},d=f(e["char"])?e["char"]:c.chnum,e=f(e.line)?e.line:c.linenum;return{name:"ParseError",message:a+" at line "+(e+1)+ +" char "+(d+1),walker:c,tokens:i}}function a(a){var b=j,e=b.ch,d=h(),i=a?a+e:e,e=b.nextChar();for(a&&(d["char"]-=a.length);p(e)||m(e);)i+=e,e=b.nextChar();c(i,"identifier",d)}function e(){var e=j.ch;if(e===" "||e==="\t"){for(var d=j.ch,i="",f=h();d===" "||d==="\t";)i+=d,d=j.nextChar();c(i,"white",f)}else{if(e==="/"){var d=j,e=f=d.ch,g,r=h();g=d.nextChar();if(g!=="*")r.charend=r["char"],r.lineend=r.line,i=c(e,e,r);else{for(;!(f==="*"&&g==="/");)e+=g,f=g,g=d.nextChar();e+=g;d.nextChar();c(e,"comment", +r)}return i}if(e==='"'||e==="'"){d=j;e=f=i=d.ch;r=h();for(i=d.nextChar();i!==f;){if(i==="\n")if(g=d.nextChar(),g==="\\")e+=i+g;else throw b("Unterminated string",r);else e+=i==="\\"?i+d.nextChar():i;i=d.nextChar()}e+=i;d.nextChar();c(e,"string",r)}else if(e==="("){d=j;i=d.ch;f=0;e=i;g=h();for(i=d.nextChar();i!==")"&&!f;){if(i==="(")f++;else if(i===")")f--;else if(i===!1)throw b("Unterminated brace",g);e+=i;i=d.nextChar()}e+=i;d.nextChar();c(e,"brace",g)}else{if(e==="-"||e==="."||m(e)){i=j;f=i.ch; +e=h();g=f;var r=g===".",v,f=i.nextChar();v=!m(f);if(r&&v)e.charend=e["char"],e.lineend=e.line,d=c(g,".",e);else if(g==="-"&&v)d=a("-");else{for(;f!==!1&&(m(f)||!r&&f===".");)f==="."&&(r=!0),g+=f,f=i.nextChar();c(g,"number",e)}return d}if(p(e))return a();if(l(e))return d=j,e=d.ch,i=h(),g=d.nextChar(),g==="="&&l(e,!0)?(e+=g,c(e,"match",i),d.nextChar(),f=void 0):(i.charend=i["char"]+1,i.lineend=i.line,c(e,e,i)),f;if(e==="\n")c("line"),j.nextChar();else throw b("Unrecognized character");}}}var j,i=[], +l,p,m;j={lines:null,total_lines:0,linenum:-1,line:"",ch:"",chnum:-1,init:function(a){var b=j;b.lines=a.replace(/\r\n/g,"\n").replace(/\r/g,"\n").split("\n");b.total_lines=b.lines.length;b.chnum=-1;b.linenum=-1;b.ch="";b.line="";b.nextLine();b.nextChar()},nextLine:function(){this.linenum+=1;this.line=this.total_lines<=this.linenum?!1:this.lines[this.linenum];if(this.chnum!==-1)this.chnum=0;return this.line},nextChar:function(){for(this.chnum+=1;this.line.charAt(this.chnum)==="";){if(this.nextLine()=== +!1)return this.ch=!1;this.chnum=-1;return this.ch="\n"}return this.ch=this.line.charAt(this.chnum)},peek:function(){return this.line.charAt(this.chnum+1)}};p=function(a){return a=="&"||a==="_"||a==="-"||a>="a"&&a<="z"||a>="A"&&a<="Z"};m=function(a){return a!==!1&&a>="0"&&a<="9"};l=function(){for(var a="{}[]()+*=.,;:>~|\\%$#@^!".split(""),b="*^|$~".split(""),c={},e={},d=0;d")):null:a.match("--")?d(c("comment","--\>")):a.match("DOCTYPE",!0,!0)?(a.eatWhile(/[\w\._\-]/),d(b(1))):null;else if(a.eat("?"))return a.eatWhile(/[\w\._\-]/),e.tokenize=c("meta","?>"),"meta";else{y=a.eat("/")?"closeTag":"openTag";a.eatSpace();for(v="";j=a.eat(/[^\s\u00a0=<>\"\'\/?]/);)v+=j;e.tokenize=f;return"tag"}else return j== +"&"?(a.eat("#")?a.eat("x")?a.eatWhile(/[a-fA-F\d]/)&&a.eat(";"):a.eatWhile(/[\d]/)&&a.eat(";"):a.eatWhile(/[\w\.\-:]/)&&a.eat(";"))?"atom":"error":(a.eatWhile(/[^&<]/),"text")}function f(a,b){var c=a.next();return c==">"||c=="/"&&a.eat(">")?(b.tokenize=d,y=c==">"?"endTag":"selfcloseTag","tag"):c=="="?(y="equals",null):/[\'\"]/.test(c)?(b.tokenize=h(c),b.tokenize(a,b)):(a.eatWhile(/[^\s\u00a0=<>\"\'\/?]/),"word")}function h(a){return function(b,c){for(;!b.eol();)if(b.next()==a){c.tokenize=f;break}return"string"}} +function c(a,b){return function(c,e){for(;!c.eol();){if(c.match(b)){e.tokenize=d;break}c.next()}return a}}function b(a){return function(c,e){for(var j;(j=c.next())!=null;)if(j=="<")return e.tokenize=b(a+1),e.tokenize(c,e);else if(j==">")if(a==1){e.tokenize=d;break}else return e.tokenize=b(a-1),e.tokenize(c,e);return"meta"}}function a(){for(var a=arguments.length-1;a>=0;a--)k.cc.push(arguments[a])}function e(){a.apply(null,arguments);return!0}function j(){if(k.context)k.context=k.context.prev}function i(a){if(a== +"openTag")return k.tagName=v,e(n,l(k.startOfLine));else if(a=="closeTag")return a=!1,k.context?k.context.tagName!=v&&(r.implicitlyClosed.hasOwnProperty(k.context.tagName.toLowerCase())&&j(),a=!k.context||k.context.tagName!=v):a=!0,a&&(u="error"),e(p(a));return e()}function l(a){return function(b){if(b=="selfcloseTag"||b=="endTag"&&r.autoSelfClosers.hasOwnProperty(k.tagName.toLowerCase()))return m(k.tagName.toLowerCase()),e();if(b=="endTag"){m(k.tagName.toLowerCase());var b=k.tagName,c=r.doNotIndent.hasOwnProperty(b)|| +k.context&&k.context.noIndent;k.context={prev:k.context,tagName:b,indent:k.indented,startOfLine:a,noIndent:c}}return e()}}function p(a){return function(b){a&&(u="error");if(b=="endTag")return j(),e();u="error";return e(arguments.callee)}}function m(a){for(var b;;){if(!k.context)break;b=k.context.tagName.toLowerCase();if(!r.contextGrabbers.hasOwnProperty(b)||!r.contextGrabbers[b].hasOwnProperty(a))break;j()}}function n(b){if(b=="word")return u="attribute",e(o,n);if(b=="endTag"||b=="selfcloseTag")return a(); +u="error";return e(n)}function o(b){if(b=="equals")return e(q,n);r.allowMissing||(u="error");return b=="endTag"||b=="selfcloseTag"?a():e()}function q(b){if(b=="string")return e(s);if(b=="word"&&r.allowUnquoted)return u="string",e();u="error";return b=="endTag"||b=="selfCloseTag"?a():e()}function s(b){return b=="string"?e(s):a()}function t(a,b){if(a.sol())b.startOfLine=!0,b.indented=0;if(a.eatSpace())return null;u=y=v=null;var c=b.tokenize(a,b);b.type=y;if((c||y)&&c!="comment")for(k=b;;)if((b.cc.pop()|| +i)(y||c))break;b.startOfLine=!1;return u||c}var r={autoSelfClosers:{},implicitlyClosed:{},contextGrabbers:{},doNotIndent:{},allowUnquoted:!0,allowMissing:!0},v=null,y=null,k=null,u;return{parse:function(a,b){for(var b=b||0,c={tokenize:d,cc:[],indented:0,startOfLine:!0,tagName:null,context:null},e=g("stringStream").create(a),j=[];!e.eol();)j.push({type:t(e,c),start:e.start+b,end:e.pos+b}),e.start=e.pos;return j}}}); +emmet.define("utils",function(g,d){function f(c){this._data=[];this.length=0;c&&this.append(c)}var h="${0}";f.prototype={append:function(c){this._data.push(c);this.length+=c.length},toString:function(){return this._data.join("")},valueOf:function(){return this.toString()}};return{reTag:/<\/?[\w:\-]+(?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*\s*(\/?)>$/,endsWithTag:function(c){return this.reTag.test(c)},isNumeric:function(c){typeof c=="string"&&(c=c.charCodeAt(0));return c&&c>47&& c<58},trim:function(c){return(c||"").replace(/^\s+|\s+$/g,"")},getNewline:function(){var c=g("resources");if(!c)return"\n";c=c.getVariable("newline");return d.isString(c)?c:"\n"},setNewline:function(c){var b=g("resources");b.setVariable("newline",c);b.setVariable("nl",c)},splitByLines:function(c,b){var a=this.getNewline(),a=(c||"").replace(/\r\n/g,"\n").replace(/\n\r/g,"\n").replace(/\r/g,"\n").replace(/\n/g,a).split(a);b&&(a=d.filter(a,function(a){return a.length&&!!this.trim(a)},this));return a}, -normalizeNewline:function(c){return this.splitByLines(c).join(this.getNewline())},repeatString:function(c,b){for(var a=[],e=0;ee++;)a+="0";return a+c},unindentString:function(c, -b){for(var a=this.splitByLines(c),e=0;ee++;)a+="0";return a+c},unindentString:function(c, +b){for(var a=this.splitByLines(c),e=0;ec.length?c:c.substring(0,a)+b+c.substring(e)},narrowToNonSpace:function(c,b,a){b=g("range").create(b,a);for(a=/[\s\n\r\u00a0]/;b.start -b.start;)if(b.end--,!a.test(c.charAt(b.end))){b.end++;break}return b},findNewlineBounds:function(c,b){for(var a=c.length,e=0,d=a-1,j=b-1;j>0;j--){var f=c.charAt(j);if(f=="\n"||f=="\r"){e=j+1;break}}for(j=b;j0;i--){var f=c.charAt(i);if(f=="\n"||f=="\r"){e=i+1;break}}for(i=b;i=this.start}, intersection:function(d){if(this.overlap(d)){var c=Math.max(d.start,this.start);return new f(c,Math.min(d.end,this.end)-c)}return null},union:function(d){if(this.overlap(d)){var c=Math.min(d.start,this.start);return new f(c,Math.max(d.end,this.end)-c)}return null},inside:function(d){return this.start<=d&&this.end>d},include:function(d){return this.start<=d.start&&this.end>=d.end},substring:function(d){return this.length()>0?d.substring(this.start,this.end):""},clone:function(){return new f(this.start, this.length())},toArray:function(){return[this.start,this.end]},toString:function(){return"{"+this.start+", "+this.length()+"}"}};return{create:function(g,c){if(d.isUndefined(g)||g===null)return null;if(g instanceof f)return g;if(d.isObject(g)&&"start"in g&&"end"in g)c=g.end-g.start,g=g.start;return new f(g,c)},create2:function(f,c){d.isNumber(f)&&d.isNumber(c)&&(c-=f);return this.create(f,c)}}}); @@ -78,111 +78,111 @@ emmet.define("tokenIterator",function(g,d){function f(d){this.tokens=d;this._pos emmet.define("stringStream",function(){function g(d){this.pos=this.start=0;this.string=d}g.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==0},peek:function(){return this.string.charAt(this.pos)},next:function(){if(this.posf},eatSpace:function(){for(var d=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>d},skipToEnd:function(){this.pos=this.string.length},skipTo:function(d){d=this.string.indexOf(d,this.pos);if(d>-1)return this.pos=d,!0},skipToPair:function(d,f){for(var g=0,c,b=this.pos,a=this.string.length;b/,h={},j={},l=g("handlerList").create();return{setVocabulary:function(a,c){c==b?h=a:j=a},getVocabulary:f,getResource:function(e,d,h){return c(a,e,d,h)||c(b,e,d,h)},getAbbreviation:function(a,b){b=b||"";return this.getResource(a,"abbreviations",b)||this.getResource(a,"abbreviations",b.replace(/\-/g,":"))},getSnippet:function(a,b){b=b||"";return this.getResource(a,"snippets",b)||this.getResource(a,"snippets",b.replace(/\-/g, -":"))},getMatchedResource:function(a,b){return l.exec(null,d.toArray(arguments))||this.getAbbreviation(b,a.name())||this.getSnippet(b,a.name())},getVariable:function(c){return i(a,"variables",c)[0]||i(b,"variables",c)[0]},setVariable:function(a,b){var c=f("user")||{};if(!("variables"in c))c.variables={};c.variables[a]=b;this.setVocabulary(c,"user")},getSubset:function(c,e){return i(a,c,e)[0]||i(b,c,e)[0]},hasSyntax:function(c){return c in f(a)||c in f(b)},addResolver:function(a,b){l.add(a,b)},removeResolver:function(a){l.remove(a)}}}); -emmet.define("actions",function(g,d){function f(c){return g("utils").trim(c.charAt(0).toUpperCase()+c.substring(1).replace(/_[a-z]/g,function(b){return" "+b.charAt(1).toUpperCase()}))}var i={};return{add:function(c,b,a){c=c.toLowerCase();a=a||{};if(!a.label)a.label=f(c);i[c]={name:c,fn:b,options:a}},get:function(c){return i[c.toLowerCase()]},run:function(c,b){d.isArray(b)||(b=d.rest(arguments));var a=this.get(c);return a?a.fn.apply(emmet,b):(emmet.log('Action "%s" is not defined',c),!1)},getAll:function(){return i}, -getList:function(){return d.values(this.getAll())},getMenu:function(c){var b=[],c=c||[];d.each(this.getList(),function(a){if(!a.options.hidden&&!d.include(c,a.name)){var e=f(a.name),h=b;if(a.options.label)for(var j=a.options.label.split("/"),e=j.pop(),g,i;g=j.shift();)i=d.find(h,function(a){return a.type=="submenu"&&a.name==g}),i||(i={name:g,type:"submenu",items:[]},h.push(i)),h=i.items;h.push({type:"action",name:a.name,label:e})}});return b},getActionNameForMenuTitle:function(c,b){var a=null;d.find(b|| +emmet.define("resources",function(g,d){function f(a){return a==b?j:i}function h(b,c,e){var d=f(b),i=[],h=null;d&&c in d&&(h=d[c],e in h&&i.push(h[e]));var l=null;h&&"extends"in h?l=h:b==a&&c in j&&"extends"in j[c]&&(l=j[c]);if(l){if(!l["extends"]||!l["extends"].__emmet_parsed__){c=l["extends"].split(",");h=g("utils");for(b=0;b/,j={},i={},l=g("handlerList").create();return{setVocabulary:function(a,c){c==b?j=a:i=a},getVocabulary:f,getResource:function(e,d,j){return c(a,e,d,j)||c(b,e,d,j)},getAbbreviation:function(a,b){b=b||"";return this.getResource(a,"abbreviations",b)||this.getResource(a,"abbreviations",b.replace(/\-/g,":"))},getSnippet:function(a,b){b=b||"";return this.getResource(a,"snippets",b)||this.getResource(a,"snippets",b.replace(/\-/g, +":"))},getMatchedResource:function(a,b){return l.exec(null,d.toArray(arguments))||this.getAbbreviation(b,a.name())||this.getSnippet(b,a.name())},getVariable:function(c){return h(a,"variables",c)[0]||h(b,"variables",c)[0]},setVariable:function(a,b){var c=f("user")||{};if(!("variables"in c))c.variables={};c.variables[a]=b;this.setVocabulary(c,"user")},getSubset:function(c,e){return h(a,c,e)[0]||h(b,c,e)[0]},hasSyntax:function(c){return c in f(a)||c in f(b)},addResolver:function(a,b){l.add(a,b)},removeResolver:function(a){l.remove(a)}}}); +emmet.define("actions",function(g,d){function f(c){return g("utils").trim(c.charAt(0).toUpperCase()+c.substring(1).replace(/_[a-z]/g,function(b){return" "+b.charAt(1).toUpperCase()}))}var h={};return{add:function(c,b,a){c=c.toLowerCase();a=a||{};if(!a.label)a.label=f(c);h[c]={name:c,fn:b,options:a}},get:function(c){return h[c.toLowerCase()]},run:function(c,b){d.isArray(b)||(b=d.rest(arguments));var a=this.get(c);return a?a.fn.apply(emmet,b):(emmet.log('Action "%s" is not defined',c),!1)},getAll:function(){return h}, +getList:function(){return d.values(this.getAll())},getMenu:function(c){var b=[],c=c||[];d.each(this.getList(),function(a){if(!a.options.hidden&&!d.include(c,a.name)){var e=f(a.name),j=b;if(a.options.label)for(var i=a.options.label.split("/"),e=i.pop(),g,h;g=i.shift();)h=d.find(j,function(a){return a.type=="submenu"&&a.name==g}),h||(h={name:g,type:"submenu",items:[]},j.push(h)),j=h.items;j.push({type:"action",name:a.name,label:e})}});return b},getActionNameForMenuTitle:function(c,b){var a=null;d.find(b|| this.getMenu(),function(b){if(b.type=="action"){if(b.label==c||b.name==c)return a=b.name}else return a=this.getActionNameForMenuTitle(c,b.items)},this);return a||null}}}); -emmet.define("profile",function(g,d){function f(a){d.extend(this,e,a)}function i(a,b){switch(String(b||"").toLowerCase()){case "lower":return a.toLowerCase();case "upper":return a.toUpperCase()}return a}function c(b,c){return a[b.toLowerCase()]=new f(c)}function b(){c("xhtml");c("html",{self_closing_tag:!1});c("xml",{self_closing_tag:!0,tag_nl:!0});c("plain",{tag_nl:!1,indent:!1,place_cursor:!1});c("line",{tag_nl:!1,indent:!1})}var a={},e={tag_case:"asis",attr_case:"asis",attr_quotes:"double",tag_nl:"decide", -tag_nl_leaf:!1,place_cursor:!0,indent:!0,inline_break:3,self_closing_tag:"xhtml",filters:""};f.prototype={tagName:function(a){return i(a,this.tag_case)},attributeName:function(a){return i(a,this.attr_case)},attributeQuote:function(){return this.attr_quotes=="single"?"'":'"'},selfClosing:function(){return this.self_closing_tag=="xhtml"?" /":this.self_closing_tag===!0?"/":""},cursor:function(){return this.place_cursor?g("utils").getCaretPlaceholder():""}};b();return{create:function(a,b){return arguments.length== -2?c(a,b):new f(d.defaults(a||{},e))},get:function(b,c){if(c&&d.isString(b)){var e=g("resources").getSubset(c,"profile");e&&(b=e)}return!b?a.plain:b instanceof f?b:d.isString(b)&&b.toLowerCase()in a?a[b.toLowerCase()]:this.create(b)},remove:function(b){b=(b||"").toLowerCase();b in a&&delete a[b]},reset:function(){a={};b()},stringCase:i}}); +emmet.define("profile",function(g,d){function f(a){d.extend(this,e,a)}function h(a,b){switch(String(b||"").toLowerCase()){case "lower":return a.toLowerCase();case "upper":return a.toUpperCase()}return a}function c(b,c){return a[b.toLowerCase()]=new f(c)}function b(){c("xhtml");c("html",{self_closing_tag:!1});c("xml",{self_closing_tag:!0,tag_nl:!0});c("plain",{tag_nl:!1,indent:!1,place_cursor:!1});c("line",{tag_nl:!1,indent:!1})}var a={},e={tag_case:"asis",attr_case:"asis",attr_quotes:"double",tag_nl:"decide", +tag_nl_leaf:!1,place_cursor:!0,indent:!0,inline_break:3,self_closing_tag:"xhtml",filters:""};f.prototype={tagName:function(a){return h(a,this.tag_case)},attributeName:function(a){return h(a,this.attr_case)},attributeQuote:function(){return this.attr_quotes=="single"?"'":'"'},selfClosing:function(){return this.self_closing_tag=="xhtml"?" /":this.self_closing_tag===!0?"/":""},cursor:function(){return this.place_cursor?g("utils").getCaretPlaceholder():""}};b();return{create:function(a,b){return arguments.length== +2?c(a,b):new f(d.defaults(a||{},e))},get:function(b,c){if(c&&d.isString(b)){var e=g("resources").getSubset(c,"profile");e&&(b=e)}return!b?a.plain:b instanceof f?b:d.isString(b)&&b.toLowerCase()in a?a[b.toLowerCase()]:this.create(b)},remove:function(b){b=(b||"").toLowerCase();b in a&&delete a[b]},reset:function(){a={};b()},stringCase:h}}); emmet.define("editorUtils",function(g){return{isInsideTag:function(d,f){for(var g=/^<\/?\w[\w\:\-]*.*?>/,c=f;c>-1;){if(d.charAt(c)=="<")break;c--}return c!=-1&&(g=g.exec(d.substring(c)))&&f>c&&f"&&e.endsWithTag(d.substring(0,f+1)))){i=f+1;break}}return i!=-1&&!a&&!b&&!c?d.substring(i):""},getImageSize:function(d){var f=function(){return d.charCodeAt(g++)};if(d.substr(0,8)==="\u0089PNG\r\n\u001a\n"){var g=d.indexOf("IHDR")+4;return{width:f()<<24|f()<<16|f()<<8|f(),height:f()<<24|f()<<16|f()<<8|f()}}else if(d.substr(0,4)==="GIF8")return g=6,{width:f()|f()<<8,height:f()|f()<<8};else if(d.substr(0,2)==="\u00ff\u00d8")for(var g=2,c=d.length;g=192&&b<=207&&!(b&4)&&!(b&8))return g+=1,{height:f()<<8|f(),width:f()<<8|f()};else g+=a-2}},captureContext:function(d){if(String(d.getSyntax())in{html:1,xml:1,xsl:1}){var f=g("html_matcher").getTags(String(d.getContent()),d.getCaretPos(),String(d.getProfileName()));if(f&&f[0]&&f[0].type=="tag"){for(var d=/([\w\-:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g,i=f[0],f=i.full_tag.replace(/^<[\w\-\:]+/,""),i={name:i.name,attributes:[]}, -c;c=d.exec(f);)i.attributes.push({name:c[1],value:c[2]});return i}}return null},findExpressionBounds:function(d,f){for(var i=String(d.getContent()),c=i.length,b=d.getCaretPos()-1,a=b+1;b>=0&&f(i.charAt(b),b,i);)b--;for(;ab)return g("range").create([++b,a])},compoundUpdate:function(d,f){if(f){var g=d.getSelectionRange();d.replaceContent(f.data,f.start,f.end,!0);d.createSelection(f.caret,f.caret+g.end-g.start);return!0}return!1}}}); -emmet.define("abbreviationUtils",function(g,d){return{isSnippet:function(d){return g("elements").is(d.matchedResource(),"snippet")},isUnary:function(d){var i=d.matchedResource();return d.children.length||this.isSnippet(d)?!1:i&&i.is_empty||g("tagName").isEmptyElement(d.name())},isInline:function(d){return d.isTextNode()||!d.name()||g("tagName").isInlineLevel(d.name())},isBlock:function(d){return g("elements").is(d.matchedResource(),"snippet")||!this.isInline(d)},hasTagsInContent:function(d){return g("utils").matchesTag(d.content)}, -hasBlockChildren:function(f){return this.hasTagsInContent(f)&&this.isBlock(f)||d.any(f.children,function(d){return this.isBlock(d)},this)},insertChildContent:function(f,i,c){var c=d.extend({keepVariable:!0,appendIfNoChild:!0},c||{}),b=!1,a=g("utils"),f=a.replaceVariables(f,function(e,d,j){var g=e;d=="child"&&(g=a.padString(i,a.getLinePaddingFromPosition(f,j.start)),b=!0,c.keepVariable&&(g+=e));return g});!b&&c.appendIfNoChild&&(f+=i);return f}}}); -emmet.define("base64",function(){return{encode:function(g){for(var d=[],f,i,c,b,a,e,h=0,j=g.length;h>2,f=(f&3)<<4|i>>4,i=(i&15)<<2|c>>6,c&=63,isNaN(a)?i=c=64:isNaN(e)&&(c=64),d.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(b)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(f)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(i)+ -"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(c));return d.join("")},decode:function(g){var d,f,i,c,b,a=0,e=0,h=[],j=g.length;if(!g)return g;g+="";do d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)), -i=d<<18|f<<12|c<<6|b,d=i>>16&255,f=i>>8&255,i&=255,c==64?h[e++]=String.fromCharCode(d):b==64?h[e++]=String.fromCharCode(d,f):h[e++]=String.fromCharCode(d,f,i);while(ac||b.start<=c&& -b.end>c?(e=a.start,d=b.end):(e=a.end,d=b.start);return[e,d]}function b(a,b,e){m.opening_tag=a;m.closing_tag=b;a=c(a,b,e||0);m.start_ix=a[0];m.end_ix=a[1];return m.start_ix!=-1?[m.start_ix,m.end_ix]:null}function a(a,b,j,i){function v(b,c){arguments.length==1&&(c=w);return a.substr(c,b.length)==b}function m(b){for(;b--;)if(a.charAt(b)=="<"&&v("<\!--",b))break;return b}i=i||c;g(j);var j=[],k=[],o=null,l=null,n=a.length,p,w;j.last=k.last=function(){return this[this.length-1]};for(w=b;w--&&w>=0;)if(p= -a.charAt(w),p=="<"){var x=a.substring(w,n);if(p=x.match(h))p=d(p,w),p.startb?l=p:k.push(p);else if(p=x.match(e))if(p=d(p,w),p.unary){if(p.startb)return i(p,null,b)}else if(k.last()&&k.last().name==p.name)k.pop();else{o=p;break}else if(x.indexOf("<\!--")==0&&(p=x.search("--\>")+w+3,w=b))return i(f(w,p))}else p=="-"&&v("--\>")&&(w=m(w));if(!o)return i(null);if(!l)for(w=b;w")+2);else if(p=="-"&&v("--\>")&&(!j.last()||j.last().type!="comment"))return p=w+3,i(f(m(w),p));return i(o,l,b)}var e=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,h=/^<\/([\w\:\-]+)[^>]*>/,j=i("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed");i("address,applet,blockquote,button,center,dd,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul"); -i("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var");var l=i("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr"),o="xhtml",m={opening_tag:null,closing_tag:null,start_ix:-1,end_ix:-1},n=function(c,e,d){return a(c,e,d,b)};n.start_tag=e;n.end_tag=h;n.find=function(b,c,e){return a(b,c,e)};n.getTags=function(b,c,e){return a(b,c,e,function(a,b){return[a,b]})};n.last_match= -m;try{emmet.define("html_matcher",function(){return n})}catch(p){}})(); -emmet.define("tabStops",function(g,d){var f=100,i=0,c={replaceCarets:!1,escape:function(b){return"\\"+b},tabstop:function(b){return b.token},variable:function(b){return b.token}};g("abbreviationParser").addOutputProcessor(function(b,a){var c=0,d=g("tabStops"),j=g("utils"),b=d.processText(b,{tabstop:function(a){var b=parseInt(a.group);if(b==0)return"${0}";b>c&&(c=b);return a.placeholder?"${"+(b+i)+":"+a.placeholder+"}":"${"+(b+i)+"}"}}),b=j.replaceVariables(b,d.variablesResolver(a));i+=c+1;return b}); -return{extract:function(b,a){var e=g("utils"),h={carets:""},j=[],a=d.extend({},c,a,{tabstop:function(a){var b=a.token,c="";if(a.placeholder=="cursor")j.push({start:a.start,end:a.start+b.length,group:"carets",value:""});else{if("placeholder"in a)h[a.group]=a.placeholder;a.group in h&&(c=h[a.group]);j.push({start:a.start,end:a.start+b.length,group:a.group,value:c})}return b}});a.replaceCarets&&(b=b.replace(RegExp(e.escapeForRegexp(e.getCaretPlaceholder()),"g"),"${0:cursor}"));var b=this.processText(b, -a),f=e.stringBuilder(),i=0,e=d.map(j,function(a){f.append(b.substring(i,a.start));var c=f.length,e=h[a.group]||"";f.append(e);i=a.end;return{group:a.group,start:c,end:c+e.length}});f.append(b.substring(i));return{text:f.toString(),tabstops:d.sortBy(e,"start")}},processText:function(b,a){for(var a=d.extend({},c,a),e=g("utils").stringBuilder(),h=g("stringStream").create(b),j,f;j=h.next();)if(j=="\\"&&!h.eol())e.append(a.escape(h.next()));else{f=j;if(j=="$")if(h.start=h.pos-1,h.match(/^[0-9]+/))f=a.tabstop({start:e.length, -group:h.current().substr(1),token:h.current()});else if(j=h.match(/^\{([a-z_\-][\w\-]*)\}/))f=a.variable({start:e.length,name:j[1],token:h.current()});else if(j=h.match(/^\{([0-9]+)(:.+?)?\}/)){f={start:e.length,group:j[1],token:h.current()};if(j[2])f.placeholder=j[2].substr(1);f=a.tabstop(f)}e.append(f)}return e.toString()},upgrade:function(b,a){var c=0,h={tabstop:function(b){var d=parseInt(b.group);d>c&&(c=d);return b.placeholder?"${"+(d+a)+":"+b.placeholder+"}":"${"+(d+a)+"}"}};d.each(["start", -"end","content"],function(a){b[a]=this.processText(b[a],h)},this);return c},variablesResolver:function(b){var a={},c=g("resources");return function(h,j){if(j=="child")return h;if(j=="cursor")return g("utils").getCaretPlaceholder();var i=b.attribute(j);if(!d.isUndefined(i))return i;if(i=c.getVariable(j))return i;a[j]||(a[j]=f++);return"${"+a[j]+":"+j+"}"}},resetPlaceholderCounter:function(){console.log("deprecated");f=100},resetTabstopIndex:function(){i=0;f=100}}}); -emmet.define("preferences",function(g,d){var f={},i={},c=null,b=null;return{define:function(a,b,c){var j=a;d.isString(a)&&(j={},j[a]={value:b,description:c});d.each(j,function(a,b){i[b]=d.isObject(a)&&"value"in a&&d.keys(a).length<3?a:{value:a}})},set:function(a,b){var c=a;d.isString(a)&&(c={},c[a]=b);d.each(c,function(a,b){if(!(b in i))throw'Property "'+b+'" is not defined. You should define it first with `define` method of current module';if(a!==i[b].value){switch(typeof i[b].value){case "boolean":var c= -a;d.isString(c)?(c=c.toLowerCase(),a=c=="yes"||c=="true"||c=="1"):a=!!c;break;case "number":a=parseInt(a+"",10)||0;break;default:a+=""}f[b]=a}else b in f&&delete f[b]})},get:function(a){if(a in f)return f[a];if(a in i)return i[a].value},getArray:function(a){a=this.get(a);d.isUndefined(a)||(a=d.map(a.split(","),g("utils").trim),a.length||(a=null));return a},description:function(a){return a in i?i[a].description:void 0},remove:function(a){d.isArray(a)||(a=[a]);d.each(a,function(a){a in f&&delete f[a]; -a in i&&delete i[a]})},list:function(){return d.map(d.keys(i).sort(),function(a){return{name:a,value:this.get(a),type:typeof i[a].value,description:i[a].description}},this)},load:function(a){d.each(a,function(a,b){this.set(b,a)},this)},exportModified:function(){return d.clone(f)},reset:function(){f={}},_startTest:function(){c=i;b=f;i={};f={}},_stopTest:function(){i=c;f=b}}}); -emmet.define("filters",function(g,d){function f(c){return!c?[]:d.isString(c)?c.split(/[\|,]/g):c}var i={};return{add:function(c,b){i[c]=b},apply:function(c,b,a){var e=g("utils"),a=g("profile").get(a);d.each(f(b),function(b){(b=e.trim(b.toLowerCase()))&&b in i&&(c=i[b](c,a))});return c},composeList:function(c,b,a){b=g("profile").get(b);c=f(b.filters||g("resources").getSubset(c,"filters")||"html");a&&(c=c.concat(f(a)));if(!c||!c.length)c=f("html");return c},extractFromAbbreviation:function(c){var b= +emmet.define("actionUtils",function(g){return{mimeTypes:{gif:"image/gif",png:"image/png",jpg:"image/jpeg",jpeg:"image/jpeg",svg:"image/svg+xml",html:"text/html",htm:"text/html"},extractAbbreviation:function(d){for(var f=d.length,h=-1,c=0,b=0,a=0,e=g("utils"),j=g("abbreviationParser");;){f--;if(f<0){h=0;break}var i=d.charAt(f);if(i=="]")b++;else if(i=="["){if(!b){h=f+1;break}b--}else if(i=="}")a++;else if(i=="{"){if(!a){h=f+1;break}a--}else if(i==")")c++;else if(i=="("){if(!c){h=f+1;break}c--}else if(!b&& +!a&&(!j.isAllowedChar(i)||i==">"&&e.endsWithTag(d.substring(0,f+1)))){h=f+1;break}}return h!=-1&&!a&&!b&&!c?d.substring(h):""},getImageSize:function(d){var f=function(){return d.charCodeAt(g++)};if(d.substr(0,8)==="\u0089PNG\r\n\u001a\n"){var g=d.indexOf("IHDR")+4;return{width:f()<<24|f()<<16|f()<<8|f(),height:f()<<24|f()<<16|f()<<8|f()}}else if(d.substr(0,4)==="GIF8")return g=6,{width:f()|f()<<8,height:f()|f()<<8};else if(d.substr(0,2)==="\u00ff\u00d8")for(var g=2,c=d.length;g=192&&b<=207&&!(b&4)&&!(b&8))return g+=1,{height:f()<<8|f(),width:f()<<8|f()};else g+=a-2}},captureContext:function(d){if(String(d.getSyntax())in{html:1,xml:1,xsl:1}){var f=g("html_matcher").getTags(String(d.getContent()),d.getCaretPos(),String(d.getProfileName()));if(f&&f[0]&&f[0].type=="tag"){for(var d=/([\w\-:]+)(?:\s*=\s*(?:(?:"((?:\\.|[^"])*)")|(?:'((?:\\.|[^'])*)')|([^>\s]+)))?/g,h=f[0],f=h.full_tag.replace(/^<[\w\-\:]+/,""),h={name:h.name,attributes:[]}, +c;c=d.exec(f);)h.attributes.push({name:c[1],value:c[2]});return h}}return null},findExpressionBounds:function(d,f){for(var h=String(d.getContent()),c=h.length,b=d.getCaretPos()-1,a=b+1;b>=0&&f(h.charAt(b),b,h);)b--;for(;ab)return g("range").create([++b,a])},compoundUpdate:function(d,f){if(f){var g=d.getSelectionRange();d.replaceContent(f.data,f.start,f.end,!0);d.createSelection(f.caret,f.caret+g.end-g.start);return!0}return!1}}}); +emmet.define("abbreviationUtils",function(g,d){return{isSnippet:function(d){return g("elements").is(d.matchedResource(),"snippet")},isUnary:function(d){var h=d.matchedResource();return d.children.length||this.isSnippet(d)?!1:h&&h.is_empty||g("tagName").isEmptyElement(d.name())},isInline:function(d){return d.isTextNode()||!d.name()||g("tagName").isInlineLevel(d.name())},isBlock:function(d){return g("elements").is(d.matchedResource(),"snippet")||!this.isInline(d)},hasTagsInContent:function(d){return g("utils").matchesTag(d.content)}, +hasBlockChildren:function(g){return this.hasTagsInContent(g)&&this.isBlock(g)||d.any(g.children,function(d){return this.isBlock(d)},this)},insertChildContent:function(f,h,c){var c=d.extend({keepVariable:!0,appendIfNoChild:!0},c||{}),b=!1,a=g("utils"),f=a.replaceVariables(f,function(e,d,i){var g=e;d=="child"&&(g=a.padString(h,a.getLinePaddingFromPosition(f,i.start)),b=!0,c.keepVariable&&(g+=e));return g});!b&&c.appendIfNoChild&&(f+=h);return f}}}); +emmet.define("base64",function(){return{encode:function(g){for(var d=[],f,h,c,b,a,e,j=0,i=g.length;j>2,f=(f&3)<<4|h>>4,h=(h&15)<<2|c>>6,c&=63,isNaN(a)?h=c=64:isNaN(e)&&(c=64),d.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(b)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(f)+"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(h)+ +"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".charAt(c));return d.join("")},decode:function(g){var d,f,h,c,b,a=0,e=0,j=[],i=g.length;if(!g)return g;g+="";do d="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),c="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)),b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(g.charAt(a++)), +h=d<<18|f<<12|c<<6|b,d=h>>16&255,f=h>>8&255,h&=255,c==64?j[e++]=String.fromCharCode(d):b==64?j[e++]=String.fromCharCode(d,f):j[e++]=String.fromCharCode(d,f,h);while(ac||b.start<=c&& +b.end>c?(e=a.start,d=b.end):(e=a.end,d=b.start);return[e,d]}function b(a,b,e){m.opening_tag=a;m.closing_tag=b;a=c(a,b,e||0);m.start_ix=a[0];m.end_ix=a[1];return m.start_ix!=-1?[m.start_ix,m.end_ix]:null}function a(a,b,i,h){function v(b,c){arguments.length==1&&(c=w);return a.substr(c,b.length)==b}function m(b){for(;b--;)if(a.charAt(b)=="<"&&v("<\!--",b))break;return b}h=h||c;g(i);var i=[],k=[],l=null,p=null,n=a.length,o,w;i.last=k.last=function(){return this[this.length-1]};for(w=b;w--&&w>=0;)if(o= +a.charAt(w),o=="<"){var x=a.substring(w,n);if(o=x.match(j))o=d(o,w),o.startb?p=o:k.push(o);else if(o=x.match(e))if(o=d(o,w),o.unary){if(o.startb)return h(o,null,b)}else if(k.last()&&k.last().name==o.name)k.pop();else{l=o;break}else if(x.indexOf("<\!--")==0&&(o=x.search("--\>")+w+3,w=b))return h(f(w,o))}else o=="-"&&v("--\>")&&(w=m(w));if(!l)return h(null);if(!p)for(w=b;w")+2);else if(o=="-"&&v("--\>")&&(!i.last()||i.last().type!="comment"))return o=w+3,h(f(m(w),o));return h(l,p,b)}var e=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,j=/^<\/([\w\:\-]+)[^>]*>/,i=h("area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed");h("address,applet,blockquote,button,center,dd,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,isindex,li,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul"); +h("a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var");var l=h("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr"),p="xhtml",m={opening_tag:null,closing_tag:null,start_ix:-1,end_ix:-1},n=function(c,e,d){return a(c,e,d,b)};n.start_tag=e;n.end_tag=j;n.find=function(b,c,e){return a(b,c,e)};n.getTags=function(b,c,e){return a(b,c,e,function(a,b){return[a,b]})};n.last_match= +m;try{emmet.define("html_matcher",function(){return n})}catch(o){}})(); +emmet.define("tabStops",function(g,d){var f=100,h=0,c={replaceCarets:!1,escape:function(b){return"\\"+b},tabstop:function(b){return b.token},variable:function(b){return b.token}};g("abbreviationParser").addOutputProcessor(function(b,a){var c=0,d=g("tabStops"),i=g("utils"),b=d.processText(b,{tabstop:function(a){var b=parseInt(a.group);if(b==0)return"${0}";b>c&&(c=b);return a.placeholder?"${"+(b+h)+":"+a.placeholder+"}":"${"+(b+h)+"}"}}),b=i.replaceVariables(b,d.variablesResolver(a));h+=c+1;return b}); +return{extract:function(b,a){var e=g("utils"),j={carets:""},i=[],a=d.extend({},c,a,{tabstop:function(a){var b=a.token,c="";if(a.placeholder=="cursor")i.push({start:a.start,end:a.start+b.length,group:"carets",value:""});else{if("placeholder"in a)j[a.group]=a.placeholder;a.group in j&&(c=j[a.group]);i.push({start:a.start,end:a.start+b.length,group:a.group,value:c})}return b}});a.replaceCarets&&(b=b.replace(RegExp(e.escapeForRegexp(e.getCaretPlaceholder()),"g"),"${0:cursor}"));var b=this.processText(b, +a),f=e.stringBuilder(),h=0,e=d.map(i,function(a){f.append(b.substring(h,a.start));var c=f.length,e=j[a.group]||"";f.append(e);h=a.end;return{group:a.group,start:c,end:c+e.length}});f.append(b.substring(h));return{text:f.toString(),tabstops:d.sortBy(e,"start")}},processText:function(b,a){for(var a=d.extend({},c,a),e=g("utils").stringBuilder(),j=g("stringStream").create(b),i,f;i=j.next();)if(i=="\\"&&!j.eol())e.append(a.escape(j.next()));else{f=i;if(i=="$")if(j.start=j.pos-1,j.match(/^[0-9]+/))f=a.tabstop({start:e.length, +group:j.current().substr(1),token:j.current()});else if(i=j.match(/^\{([a-z_\-][\w\-]*)\}/))f=a.variable({start:e.length,name:i[1],token:j.current()});else if(i=j.match(/^\{([0-9]+)(:.+?)?\}/)){f={start:e.length,group:i[1],token:j.current()};if(i[2])f.placeholder=i[2].substr(1);f=a.tabstop(f)}e.append(f)}return e.toString()},upgrade:function(b,a){var c=0,j={tabstop:function(b){var d=parseInt(b.group);d>c&&(c=d);return b.placeholder?"${"+(d+a)+":"+b.placeholder+"}":"${"+(d+a)+"}"}};d.each(["start", +"end","content"],function(a){b[a]=this.processText(b[a],j)},this);return c},variablesResolver:function(b){var a={},c=g("resources");return function(j,i){if(i=="child")return j;if(i=="cursor")return g("utils").getCaretPlaceholder();var h=b.attribute(i);if(!d.isUndefined(h))return h;if(h=c.getVariable(i))return h;a[i]||(a[i]=f++);return"${"+a[i]+":"+i+"}"}},resetPlaceholderCounter:function(){console.log("deprecated");f=100},resetTabstopIndex:function(){h=0;f=100}}}); +emmet.define("preferences",function(g,d){var f={},h={},c=null,b=null;return{define:function(a,b,c){var i=a;d.isString(a)&&(i={},i[a]={value:b,description:c});d.each(i,function(a,b){h[b]=d.isObject(a)&&"value"in a&&d.keys(a).length<3?a:{value:a}})},set:function(a,b){var c=a;d.isString(a)&&(c={},c[a]=b);d.each(c,function(a,b){if(!(b in h))throw'Property "'+b+'" is not defined. You should define it first with `define` method of current module';if(a!==h[b].value){switch(typeof h[b].value){case "boolean":var c= +a;d.isString(c)?(c=c.toLowerCase(),a=c=="yes"||c=="true"||c=="1"):a=!!c;break;case "number":a=parseInt(a+"",10)||0;break;default:a+=""}f[b]=a}else b in f&&delete f[b]})},get:function(a){if(a in f)return f[a];if(a in h)return h[a].value},getArray:function(a){a=this.get(a);d.isUndefined(a)||(a=d.map(a.split(","),g("utils").trim),a.length||(a=null));return a},description:function(a){return a in h?h[a].description:void 0},remove:function(a){d.isArray(a)||(a=[a]);d.each(a,function(a){a in f&&delete f[a]; +a in h&&delete h[a]})},list:function(){return d.map(d.keys(h).sort(),function(a){return{name:a,value:this.get(a),type:typeof h[a].value,description:h[a].description}},this)},load:function(a){d.each(a,function(a,b){this.set(b,a)},this)},exportModified:function(){return d.clone(f)},reset:function(){f={}},_startTest:function(){c=h;b=f;h={};f={}},_stopTest:function(){h=c;f=b}}}); +emmet.define("filters",function(g,d){function f(c){return!c?[]:d.isString(c)?c.split(/[\|,]/g):c}var h={};return{add:function(c,b){h[c]=b},apply:function(c,b,a){var e=g("utils"),a=g("profile").get(a);d.each(f(b),function(b){(b=e.trim(b.toLowerCase()))&&b in h&&(c=h[b](c,a))});return c},composeList:function(c,b,a){b=g("profile").get(b);c=f(b.filters||g("resources").getSubset(c,"filters")||"html");a&&(c=c.concat(f(a)));if(!c||!c.length)c=f("html");return c},extractFromAbbreviation:function(c){var b= "",c=c.replace(/\|([\w\|\-]+)$/,function(a,c){b=c;return""});return[c,f(b)]}}}); -emmet.define("elements",function(g,d){function f(a){return{data:a}}var i={},c=/([\w\-]+)\s*=\s*(['"])(.*?)\2/g,b={add:function(a,b){var c=this;i[a]=function(){var d=b.apply(c,arguments);if(d)d.type=a;return d}},get:function(a){return i[a]},create:function(a){var b=[].slice.call(arguments,1),c=this.get(a);return c?c.apply(this,b):null},is:function(a,b){return a&&a.type===b}};b.add("element",function(a,b,h){var f={name:a,is_empty:!!h};if(b)if(f.attributes=[],d.isArray(b))f.attributes=b;else if(d.isString(b))for(;a= -c.exec(b);)f.attributes.push({name:a[1],value:a[3]});else d.each(b,function(a,b){f.attributes.push({name:b,value:a})});return f});b.add("snippet",f);b.add("reference",f);b.add("empty",function(){return{}});return b}); -emmet.define("editTree",function(g,d,f){function i(a,b){this.options=d.extend({offset:0},b);this.source=a;this._children=[];this._positions={name:0};this.initialize.apply(this,arguments)}function c(a,b,c){this.parent=a;this._name=b.value;this._value=c?c.value:"";this._positions={name:b.start,value:c?c.start:-1};this.initialize.apply(this,arguments)}var b=g("range").create;i.extend=f.extend;i.prototype={initialize:function(){},_updateSource:function(a,c,f){var j=b(c,d.isUndefined(f)?0:f-c),i=a.length- -j.length(),o=function(a){d.each(a,function(b,c){b>=j.end&&(a[c]+=i)})};o(this._positions);d.each(this.list(),function(a){o(a._positions)});this.source=g("utils").replaceSubstring(this.source,a,j)},add:function(a,b){var d=new c(a,b);this._children.push(d);return d},get:function(a){return d.isNumber(a)?this.list()[a]:d.isString(a)?d.find(this.list(),function(b){return b.name()===a}):a},getAll:function(a){d.isArray(a)||(a=[a]);var b=[],c=[];d.each(a,function(a){d.isString(a)?b.push(a):d.isNumber(a)&& +emmet.define("elements",function(g,d){function f(a){return{data:a}}var h={},c=/([\w\-]+)\s*=\s*(['"])(.*?)\2/g,b={add:function(a,b){var c=this;h[a]=function(){var d=b.apply(c,arguments);if(d)d.type=a;return d}},get:function(a){return h[a]},create:function(a){var b=[].slice.call(arguments,1),c=this.get(a);return c?c.apply(this,b):null},is:function(a,b){return a&&a.type===b}};b.add("element",function(a,b,f){var g={name:a,is_empty:!!f};if(b)if(g.attributes=[],d.isArray(b))g.attributes=b;else if(d.isString(b))for(;a= +c.exec(b);)g.attributes.push({name:a[1],value:a[3]});else d.each(b,function(a,b){g.attributes.push({name:b,value:a})});return g});b.add("snippet",f);b.add("reference",f);b.add("empty",function(){return{}});return b}); +emmet.define("editTree",function(g,d,f){function h(a,b){this.options=d.extend({offset:0},b);this.source=a;this._children=[];this._positions={name:0};this.initialize.apply(this,arguments)}function c(a,b,c){this.parent=a;this._name=b.value;this._value=c?c.value:"";this._positions={name:b.start,value:c?c.start:-1};this.initialize.apply(this,arguments)}var b=g("range").create;h.extend=f.extend;h.prototype={initialize:function(){},_updateSource:function(a,c,f){var i=b(c,d.isUndefined(f)?0:f-c),h=a.length- +i.length(),p=function(a){d.each(a,function(b,c){b>=i.end&&(a[c]+=h)})};p(this._positions);d.each(this.list(),function(a){p(a._positions)});this.source=g("utils").replaceSubstring(this.source,a,i)},add:function(a,b){var d=new c(a,b);this._children.push(d);return d},get:function(a){return d.isNumber(a)?this.list()[a]:d.isString(a)?d.find(this.list(),function(b){return b.name()===a}):a},getAll:function(a){d.isArray(a)||(a=[a]);var b=[],c=[];d.each(a,function(a){d.isString(a)?b.push(a):d.isNumber(a)&& c.push(a)});return d.filter(this.list(),function(a,f){return d.include(c,f)||d.include(b,a.name())})},value:function(a,b,c){var f=this.get(a);if(f)return f.value(b);if(!d.isUndefined(b))return this.add(a,b,c)},values:function(a){return d.map(this.getAll(a),function(a){return a.value()})},remove:function(a){if(a=this.get(a))this._updateSource("",a.fullRange()),this._children=d.without(this._children,a)},list:function(){return this._children},indexOf:function(a){return d.indexOf(this.list(),this.get(a))}, name:function(a){if(!d.isUndefined(a)&&this._name!==(a=String(a)))this._updateSource(a,this._positions.name,this._positions.name+this._name.length),this._name=a;return this._name},nameRange:function(a){return b(this._positions.name+(a?this.options.offset:0),this.name())},range:function(a){return b(a?this.options.offset:0,this.toString())},itemFromPosition:function(a,b){return d.find(this.list(),function(c){return c.range(b).inside(a)})},toString:function(){return this.source}};c.extend=f.extend;c.prototype= {initialize:function(){},_pos:function(a,b){return a+(b?this.parent.options.offset:0)},value:function(a){if(!d.isUndefined(a)&&this._value!==(a=String(a)))this.parent._updateSource(a,this.valueRange()),this._value=a;return this._value},name:function(a){if(!d.isUndefined(a)&&this._name!==(a=String(a)))this.parent._updateSource(a,this.nameRange()),this._name=a;return this._name},namePosition:function(a){return this._pos(this._positions.name,a)},valuePosition:function(a){return this._pos(this._positions.value, -a)},range:function(a){return b(this.namePosition(a),this.toString())},fullRange:function(a){return this.range(a)},nameRange:function(a){return b(this.namePosition(a),this.name())},valueRange:function(a){return b(this.valuePosition(a),this.value())},toString:function(){return this.name()+this.value()},valueOf:function(){return this.toString()}};return{EditContainer:i,EditElement:c,createToken:function(a,b,c){a={start:a||0,value:b||"",type:c};a.end=a.start+a.value.length;return a}}}); -emmet.define("cssEditTree",function(g,d){function f(a,b){return g("range").create(a,b)}function i(a,b){var b=b||e|h,c=["white","line"];if((b&h)==h)for(;a.length&&d.include(c,d.last(a).type);)a.pop();if((b&e)==e)for(;a.length&&d.include(c,a[0].type);)a.shift();return a}function c(a){var b=["white","line",":"],c=[],g,j;a.nextUntil(function(){return!d.include(b,this.itemNext().type)});for(j=a.current().end;g=a.next();){if(g.type=="}"||g.type==";")return i(c,e|(g.type=="}"?h:0)),c.length?(j=c[0].start, -a=d.last(c).end):a=j,f(j,a-j);c.push(g)}if(c.length)return f(c[0].start,d.last(c).end-c[0].start)}function b(a){var b=g("stringStream").create(a),c=[],e=/[\s\u00a0,]/,h=function(){b.next();c.push(f(b.start,b.current()));b.start=b.pos};b.eatSpace();for(b.start=b.pos;a=b.next();)if(a=='"'||a=="'"){b.next();if(!b.skipTo(a))break;h()}else if(a=="("){b.backUp(1);if(!b.skipToPair("(",")"))break;b.backUp(1);h()}else if(e.test(a))c.push(f(b.start,b.current().length-1)),b.eatWhile(e),b.start=b.pos;h();return d.chain(c).filter(function(a){return!!a.length()}).uniq(!1, -function(a){return a.toString()}).value()}var a={styleBefore:"\n\t",styleSeparator:": ",offset:0},e=1,h=2,j=g("editTree").EditContainer.extend({initialize:function(b){d.defaults(this.options,a);var e=g("editTree"),h=g("tokenIterator").create(g("cssParser").parse(b)),j,q=[],s;for(j=h.position();s=h.next();){if(s.type=="{")break;q.push(s)}i(q);q.length?(j=q[0].start,q=d.last(q).end):q=j;j=f(j,q-j);this._positions.name=j.start;this._name=j.substring(b);if(!h.current()||h.current().type!="{")throw"Invalid CSS rule"; -for(this._positions.contentStart=h.position()+1;j=h.next();){if(q=j.type=="identifier")a:{q=h.tokens;s=h._i+1;for(var t=q.length;s1)e.styleBefore="\n"+d.last(f);e.styleSeparator=b.substring(e.nameRange().end,e.valuePosition());e.styleBefore=d.last(e.styleBefore.split("*/"));e.styleSeparator=e.styleSeparator.replace(/\/\*.*?\*\//g,"");a=e.range().end})},add:function(a,b,c){var e=this.list(),f=this._positions.contentStart,h=d.pick(this.options,"styleBefore", -"styleSeparator"),j=g("editTree");if(d.isUndefined(c))c=e.length;var i=e[c];if(i)f=i.fullRange().start;else if(i=e[c-1])i.end(";"),f=i.range().end;i&&(h=d.pick(i,"styleBefore","styleSeparator"));a=j.createToken(f+h.styleBefore.length,a);b=j.createToken(a.end+h.styleSeparator.length,b);j=new l(this,a,b,j.createToken(b.end,";"));d.extend(j,h);this._updateSource(j.styleBefore+j.toString(),f);this._children.splice(c,0,j);return j}}),l=g("editTree").EditElement.extend({initialize:function(a,b,c,e){this.styleBefore= +a)},range:function(a){return b(this.namePosition(a),this.toString())},fullRange:function(a){return this.range(a)},nameRange:function(a){return b(this.namePosition(a),this.name())},valueRange:function(a){return b(this.valuePosition(a),this.value())},toString:function(){return this.name()+this.value()},valueOf:function(){return this.toString()}};return{EditContainer:h,EditElement:c,createToken:function(a,b,c){a={start:a||0,value:b||"",type:c};a.end=a.start+a.value.length;return a}}}); +emmet.define("cssEditTree",function(g,d){function f(a,b){return g("range").create(a,b)}function h(a,b){var b=b||e|j,c=["white","line"];if((b&j)==j)for(;a.length&&d.include(c,d.last(a).type);)a.pop();if((b&e)==e)for(;a.length&&d.include(c,a[0].type);)a.shift();return a}function c(a){var b=["white","line",":"],c=[],g,i;a.nextUntil(function(){return!d.include(b,this.itemNext().type)});for(i=a.current().end;g=a.next();){if(g.type=="}"||g.type==";")return h(c,e|(g.type=="}"?j:0)),c.length?(i=c[0].start, +a=d.last(c).end):a=i,f(i,a-i);c.push(g)}if(c.length)return f(c[0].start,d.last(c).end-c[0].start)}function b(a){var b=g("stringStream").create(a),c=[],e=/[\s\u00a0,]/,i=function(){b.next();c.push(f(b.start,b.current()));b.start=b.pos};b.eatSpace();for(b.start=b.pos;a=b.next();)if(a=='"'||a=="'"){b.next();if(!b.skipTo(a))break;i()}else if(a=="("){b.backUp(1);if(!b.skipToPair("(",")"))break;b.backUp(1);i()}else if(e.test(a))c.push(f(b.start,b.current().length-1)),b.eatWhile(e),b.start=b.pos;i();return d.chain(c).filter(function(a){return!!a.length()}).uniq(!1, +function(a){return a.toString()}).value()}var a={styleBefore:"\n\t",styleSeparator:": ",offset:0},e=1,j=2,i=g("editTree").EditContainer.extend({initialize:function(b){d.defaults(this.options,a);var e=g("editTree"),i=g("tokenIterator").create(g("cssParser").parse(b)),j,q=[],s;for(j=i.position();s=i.next();){if(s.type=="{")break;q.push(s)}h(q);q.length?(j=q[0].start,q=d.last(q).end):q=j;j=f(j,q-j);this._positions.name=j.start;this._name=j.substring(b);if(!i.current()||i.current().type!="{")throw"Invalid CSS rule"; +for(this._positions.contentStart=i.position()+1;j=i.next();){if(q=j.type=="identifier")a:{q=i.tokens;s=i._i+1;for(var t=q.length;s1)e.styleBefore="\n"+d.last(f);e.styleSeparator=b.substring(e.nameRange().end,e.valuePosition());e.styleBefore=d.last(e.styleBefore.split("*/"));e.styleSeparator=e.styleSeparator.replace(/\/\*.*?\*\//g,"");a=e.range().end})},add:function(a,b,c){var e=this.list(),f=this._positions.contentStart,i=d.pick(this.options,"styleBefore", +"styleSeparator"),j=g("editTree");if(d.isUndefined(c))c=e.length;var h=e[c];if(h)f=h.fullRange().start;else if(h=e[c-1])h.end(";"),f=h.range().end;h&&(i=d.pick(h,"styleBefore","styleSeparator"));a=j.createToken(f+i.styleBefore.length,a);b=j.createToken(a.end+i.styleSeparator.length,b);j=new l(this,a,b,j.createToken(b.end,";"));d.extend(j,i);this._updateSource(j.styleBefore+j.toString(),f);this._children.splice(c,0,j);return j}}),l=g("editTree").EditElement.extend({initialize:function(a,b,c,e){this.styleBefore= a.options.styleBefore;this.styleSeparator=a.options.styleSeparator;this._end=e.value;this._positions.end=e.start},valueParts:function(a){var c=b(this.value());if(a){var e=this.valuePosition(!0);d.each(c,function(a){a.shift(e)})}return c},end:function(a){if(!d.isUndefined(a)&&this._end!==a)this.parent._updateSource(a,this._positions.end,this._positions.end+this._end.length),this._end=a;return this._end},fullRange:function(a){a=this.range(a);a.start-=this.styleBefore.length;return a},toString:function(){return this.name()+ -this.styleSeparator+this.value()+this.end()}});return{parse:function(a,b){return new j(a,b)},parseFromPosition:function(a,b,c){c=this.extractRule(a,b,c);return!c||!c.inside(b)?null:this.parse(c.substring(a),{offset:c.start})},extractRule:function(a,b,c){for(var e="",d=a.length,f=-1,h;b>=0;){h=a.charAt(b);if(h=="{"){f=b;break}else if(h=="}"&&!c){b++;break}b--}for(;b=0;){h=a.charAt(b);if("{}/\\<>\n\r".indexOf(h)!= +this.styleSeparator+this.value()+this.end()}});return{parse:function(a,b){return new i(a,b)},parseFromPosition:function(a,b,c){c=this.extractRule(a,b,c);return!c||!c.inside(b)?null:this.parse(c.substring(a),{offset:c.start})},extractRule:function(a,b,c){for(var e="",d=a.length,f=-1,i;b>=0;){i=a.charAt(b);if(i=="{"){f=b;break}else if(i=="}"&&!c){b++;break}b--}for(;b=0;){i=a.charAt(b);if("{}/\\<>\n\r".indexOf(i)!= -1)break;b--}c=a.substring(b+1,f).replace(/^[\s\n\r]+/m,"");return g("range").create(f-c.length,e.length+c.length)}return null},baseName:function(a){return a.replace(/^\s*\-\w+\-/,"")},findParts:b}}); -emmet.define("xmlEditTree",function(g,d){var f={styleBefore:" ",styleSeparator:"=",styleQuote:'"',offset:0},i=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/m,c=g("editTree").EditContainer.extend({initialize:function(a){d.defaults(this.options,f);this._positions.name=1;var c=null,h=g("xmlParser").parse(a),j=g("range");d.each(h,function(d){d.value=j.create(d).substring(a);switch(d.type){case "tag":if(/^<[^\/]+/.test(d.value))this._name=d.value.substring(1); -break;case "attribute":c&&this._children.push(new b(this,c));c=d;break;case "string":this._children.push(new b(this,c,d)),c=null}},this);c&&this._children.push(new b(this,c));this._saveStyle()},_saveStyle:function(){var a=this.nameRange().end,b=this.source;d.each(this.list(),function(c){c.styleBefore=b.substring(a,c.namePosition());if(c.valuePosition()!==-1)c.styleSeparator=b.substring(c.namePosition()+c.name().length,c.valuePosition()-c.styleQuote.length);a=c.range().end})},add:function(a,c,f){var j= -this.list(),i=this.nameRange().end,o=g("editTree"),m=d.pick(this.options,"styleBefore","styleSeparator","styleQuote");if(d.isUndefined(f))f=j.length;var n=j[f];if(n)i=n.fullRange().start;else if(n=j[f-1])i=n.range().end;n&&(m=d.pick(n,"styleBefore","styleSeparator","styleQuote"));c=m.styleQuote+c+m.styleQuote;a=new b(this,o.createToken(i+m.styleBefore.length,a),o.createToken(i+m.styleBefore.length+a.length+m.styleSeparator.length,c));d.extend(a,m);this._updateSource(a.styleBefore+a.toString(),i); +emmet.define("xmlEditTree",function(g,d){var f={styleBefore:" ",styleSeparator:"=",styleQuote:'"',offset:0},h=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/m,c=g("editTree").EditContainer.extend({initialize:function(a){d.defaults(this.options,f);this._positions.name=1;var c=null,j=g("xmlParser").parse(a),i=g("range");d.each(j,function(d){d.value=i.create(d).substring(a);switch(d.type){case "tag":if(/^<[^\/]+/.test(d.value))this._name=d.value.substring(1); +break;case "attribute":c&&this._children.push(new b(this,c));c=d;break;case "string":this._children.push(new b(this,c,d)),c=null}},this);c&&this._children.push(new b(this,c));this._saveStyle()},_saveStyle:function(){var a=this.nameRange().end,b=this.source;d.each(this.list(),function(c){c.styleBefore=b.substring(a,c.namePosition());if(c.valuePosition()!==-1)c.styleSeparator=b.substring(c.namePosition()+c.name().length,c.valuePosition()-c.styleQuote.length);a=c.range().end})},add:function(a,c,f){var i= +this.list(),h=this.nameRange().end,p=g("editTree"),m=d.pick(this.options,"styleBefore","styleSeparator","styleQuote");if(d.isUndefined(f))f=i.length;var n=i[f];if(n)h=n.fullRange().start;else if(n=i[f-1])h=n.range().end;n&&(m=d.pick(n,"styleBefore","styleSeparator","styleQuote"));c=m.styleQuote+c+m.styleQuote;a=new b(this,p.createToken(h+m.styleBefore.length,a),p.createToken(h+m.styleBefore.length+a.length+m.styleSeparator.length,c));d.extend(a,m);this._updateSource(a.styleBefore+a.toString(),h); this._children.splice(f,0,a);return a}}),b=g("editTree").EditElement.extend({initialize:function(a,b,c){this.styleBefore=a.options.styleBefore;this.styleSeparator=a.options.styleSeparator;b="";a=a.options.styleQuote;if(c)b=c.value,a=b.charAt(0),a=='"'||a=="'"?b=b.substring(1):a="",a&&b.charAt(b.length-1)==a&&(b=b.substring(0,b.length-1));this.styleQuote=a;this._value=b;this._positions.value=c?c.start+a.length:-1},fullRange:function(a){a=this.range(a);a.start-=this.styleBefore.length;return a},toString:function(){return this.name()+ -this.styleSeparator+this.styleQuote+this.value()+this.styleQuote}});return{parse:function(a,b){return new c(a,b)},parseFromPosition:function(a,b,c){c=this.extractTag(a,b,c);return!c||!c.inside(b)?null:this.parse(c.substring(a),{offset:c.start})},extractTag:function(a,b,c){var d=a.length,f,o=g("range"),m=Math.min(2E3,d),n=null,p=function(b){var c;if(a.charAt(b)=="<"&&(c=a.substr(b,m).match(i)))return o.create(b,c[0])};for(f=b;f>=0;f--)if(n=p(f))break;if(n&&(n.inside(b)||c))return n;if(!n&&c)return null; -for(f=b;f=a++;)if(b.substr(a,d.length)==d){i=a+d.length;break}}return f!=-1&&i!=-1?g("range").create(f,i-f):null}function c(b,a,c,d){function f(b){return b.replace(RegExp("^"+p.escapeForRegexp(a)+"\\s*"), -function(a){m-=a.length;return""}).replace(RegExp("\\s*"+p.escapeForRegexp(c)+"$"),"")}var l=g("editorUtils"),o=l.outputInfo(b).content,m=b.getCaretPos(),n=null,p=g("utils");(n=i(o,m,a,c))&&n.overlap(d)?(d=n,n=f(d.substring(o))):(n=a+" "+d.substring(o).replace(RegExp(p.escapeForRegexp(a)+"\\s*|\\s*"+p.escapeForRegexp(c),"g"),"")+" "+c,m+=a.length+1);return n!==null?(b.setCaretPos(d.start),b.replaceContent(l.unindent(b,n),d.start,d.end),b.setCaretPos(m),!0):!1}g("actions").add("toggle_comment",function(b){var a= -g("editorUtils").outputInfo(b);if(a.syntax=="css"){var d=b.getCaretPos(),h=g("html_matcher").getTags(a.content,d);if(h&&h[0]&&h[0].type=="tag"&&h[0].start<=d&&h[0].end>=d)a.syntax="html"}if(a.syntax=="css"){h=g("range").create(b.getSelectionRange());a=g("editorUtils").outputInfo(b);if(!h.length()&&(d=g("cssEditTree").parseFromPosition(a.content,b.getCaretPos())))h=(h=f(d,b.getCaretPos()))?h.range(!0):g("range").create(d.nameRange(!0).start,d.source);h.length()||(h=g("range").create(b.getCurrentLineRange()), -g("utils").narrowToNonSpace(a.content,h));b=c(b,"/*","*/",h)}else{a=g("range").create(b.getSelectionRange());d=g("editorUtils").outputInfo(b);if(!a.length()&&(d=g("html_matcher").getTags(d.content,b.getCaretPos(),d.profile))&&d[0])a.start=d[0].start,a.end=d[1]?d[1].end:d[0].end;b=c(b,"<\!--","--\>",a)}return b})}); -emmet.exec(function(g){function d(d,g,c){function b(b){for(var c=b;c>=0;){var d=a.charAt(c);if(d=="\n"||d=="\r")break;c--}return a.substring(c,b)}for(var g=g||1,c=d.getCaretPos()+(c||0),a=String(d.getContent()),d=a.length,e=-1,h=/^\s+$/;c<=d&&c>=0;){c+=g;var j=a.charAt(c),l=a.charAt(c+1),o=a.charAt(c-1);switch(j){case '"':case "'":l==j&&o=="="&&(e=c+1);break;case ">":l=="<"&&(e=c+1);break;case "\n":case "\r":h.test(b(c-1))&&(e=c)}if(e!=-1)break}return e}g=g("actions");g.add("prev_edit_point",function(f){var g= +this.styleSeparator+this.styleQuote+this.value()+this.styleQuote}});return{parse:function(a,b){return new c(a,b)},parseFromPosition:function(a,b,c){c=this.extractTag(a,b,c);return!c||!c.inside(b)?null:this.parse(c.substring(a),{offset:c.start})},extractTag:function(a,b,c){var d=a.length,f,p=g("range"),m=Math.min(2E3,d),n=null,o=function(b){var c;if(a.charAt(b)=="<"&&(c=a.substr(b,m).match(h)))return p.create(b,c[0])};for(f=b;f>=0;f--)if(n=o(f))break;if(n&&(n.inside(b)||c))return n;if(!n&&c)return null; +for(f=b;f=a++;)if(b.substr(a,d.length)==d){h=a+d.length;break}}return f!=-1&&h!=-1?g("range").create(f,h-f):null}function c(b,a,c,d){function f(b){return b.replace(RegExp("^"+o.escapeForRegexp(a)+"\\s*"), +function(a){m-=a.length;return""}).replace(RegExp("\\s*"+o.escapeForRegexp(c)+"$"),"")}var l=g("editorUtils"),p=l.outputInfo(b).content,m=b.getCaretPos(),n=null,o=g("utils");(n=h(p,m,a,c))&&n.overlap(d)?(d=n,n=f(d.substring(p))):(n=a+" "+d.substring(p).replace(RegExp(o.escapeForRegexp(a)+"\\s*|\\s*"+o.escapeForRegexp(c),"g"),"")+" "+c,m+=a.length+1);return n!==null?(b.setCaretPos(d.start),b.replaceContent(l.unindent(b,n),d.start,d.end),b.setCaretPos(m),!0):!1}g("actions").add("toggle_comment",function(b){var a= +g("editorUtils").outputInfo(b);if(a.syntax=="css"){var d=b.getCaretPos(),j=g("html_matcher").getTags(a.content,d);if(j&&j[0]&&j[0].type=="tag"&&j[0].start<=d&&j[0].end>=d)a.syntax="html"}if(a.syntax=="css"){j=g("range").create(b.getSelectionRange());a=g("editorUtils").outputInfo(b);if(!j.length()&&(d=g("cssEditTree").parseFromPosition(a.content,b.getCaretPos())))j=(j=f(d,b.getCaretPos()))?j.range(!0):g("range").create(d.nameRange(!0).start,d.source);j.length()||(j=g("range").create(b.getCurrentLineRange()), +g("utils").narrowToNonSpace(a.content,j));b=c(b,"/*","*/",j)}else{a=g("range").create(b.getSelectionRange());d=g("editorUtils").outputInfo(b);if(!a.length()&&(d=g("html_matcher").getTags(d.content,b.getCaretPos(),d.profile))&&d[0])a.start=d[0].start,a.end=d[1]?d[1].end:d[0].end;b=c(b,"<\!--","--\>",a)}return b})}); +emmet.exec(function(g){function d(d,g,c){function b(b){for(var c=b;c>=0;){var d=a.charAt(c);if(d=="\n"||d=="\r")break;c--}return a.substring(c,b)}for(var g=g||1,c=d.getCaretPos()+(c||0),a=String(d.getContent()),d=a.length,e=-1,j=/^\s+$/;c<=d&&c>=0;){c+=g;var i=a.charAt(c),l=a.charAt(c+1),p=a.charAt(c-1);switch(i){case '"':case "'":l==i&&p=="="&&(e=c+1);break;case ">":l=="<"&&(e=c+1);break;case "\n":case "\r":j.test(b(c-1))&&(e=c)}if(e!=-1)break}return e}g=g("actions");g.add("prev_edit_point",function(f){var g= f.getCaretPos(),c=d(f,-1);c==g&&(c=d(f,-1,-2));return c!=-1?(f.setCaretPos(c),!0):!1},{label:"Previous Edit Point"});g.add("next_edit_point",function(f){var g=d(f,1);g!=-1&&f.setCaretPos(g)})}); -emmet.exec(function(g,d){function f(a,b,c,d){var e=g("range"),f=g("editorUtils").outputInfo(a).content,j=f.length,h,i=e.create(-1,0),l=e.create(a.getSelectionRange());h=l.start;for(var m=1E5;h>=0&&h0;){if(e=c(f,h,b)){if(i.equal(e))break;i=e.clone();if(h=d(e.substring(f),e.start,l.clone()))return a.createSelection(h.start,h.end),!0;else h=b?e.start:e.end-1}h+=b?-1:1}return!1}function i(a){var b=!0;return f(a,!1,function(a,c){if(b){b=!1;var d;a:{d=c;for(var e;d>=0;){if(e=h(a,d)){d=e;break a}d--}d= -null}return d}else return h(a,c)},function(a,b,c){return e(a,b,c,!1)})}function c(a){return f(a,!0,h,function(a,b,c){return e(a,b,c,!0)})}function b(b,c,e){var e=e||0,f=g("range"),h=[],k=-1,i="",l="",m,o;d.each(c,function(c){switch(c.type){case "tag":o=b.substring(c.start,c.end);/^<[\w\:\-]/.test(o)&&h.push(f.create({start:c.start+1,end:c.end}));break;case "attribute":k=c.start;i=b.substring(c.start,c.end);break;case "string":h.push(f.create(k,c.end-k)),m=f.create(c),l=m.substring(b),j(l.charAt(0))&& -m.start++,j(l.charAt(l.length-1))&&m.end--,h.push(m),i=="class"&&(h=h.concat(a(m.substring(b),m.start)))}});d.each(h,function(a){a.shift(e)});return d.chain(h).filter(function(a){return!!a.length()}).uniq(!1,function(a){return a.toString()}).value()}function a(a,b){var b=b||0,c=[],d=g("stringStream").create(a),e=g("range");d.eatSpace();d.start=d.pos;for(var f;f=d.next();)if(/[\s\u00a0]/.test(f))c.push(e.create(d.start+b,d.pos-d.start-1)),d.eatSpace(),d.start=d.pos;c.push(e.create(d.start+b,d.pos- -d.start));return c}function e(a,c,e,f){a=b(a,g("xmlParser").parse(a),c);f&&a.reverse();return(c=d.find(a,function(a){return a.equal(e)}))?(f=d.indexOf(a,c),f1)?f[1]:d.find(a,function(a){return a.end>e.end})}function h(a,b){var c;if(a.charAt(b)=="<"&&(c=a.substring(b,a.length).match(p)))return g("range").create(b,c[0])}function j(a){return a=='"'||a=="'"}function l(a){var b= -a.valueRange(!0),c=[a.range(!0),b],e=g("stringStream"),f=g("cssEditTree"),j=g("range"),h=a.value();d.each(a.valueParts(),function(a){var g=a.clone();c.push(g.shift(b.start));var i=e.create(a.substring(h));if(i.match(/^[\w\-]+\(/,!0)){i.start=i.pos;i.skipToPair("(",")");var l=i.current();c.push(j.create(g.start+i.start,l));d.each(f.findParts(l),function(a){c.push(j.create(g.start+i.start+a.start,a.substring(l)))})}});return d.chain(c).filter(function(a){return!!a.length()}).uniq(!1,function(a){return a.toString()}).value()} -function o(a,b,c){var e=null,f=null,g=a.list(),j,h;c?(g.reverse(),j=function(a){return a.range(!0).start<=b.start},h=function(a){return a.start=b.end},h=function(a){return a.end>b.start});for(;e=d.find(g,j);){a=l(e);c&&a.reverse();if(f=d.find(a,function(a){return a.equal(b)})){if(f=d.indexOf(a,f),f!=a.length-1){f=a[f+1];break}}else{f=d.filter(a,function(a){return a.inside(b.end)});if(f.length>1){f=f[1];break}if(f=d.find(a,h))break}f=null;b.start=b.end= -c?e.range(!0).start-1:e.range(!0).end+1}return f}function m(a,b,c){a=g("cssEditTree").parse(a,{offset:b});b=a.nameRange(!0);return c.endb.start)?b:a}var p=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,q=g("actions");q.add("select_next_item",function(a){return a.getSyntax()=="css"?f(a,!1,g("cssEditTree").extractRule,m):i(a)});q.add("select_previous_item", +emmet.exec(function(g,d){function f(a,b,c,d){var e=g("range"),f=g("editorUtils").outputInfo(a).content,i=f.length,j,h=e.create(-1,0),l=e.create(a.getSelectionRange());j=l.start;for(var m=1E5;j>=0&&j0;){if(e=c(f,j,b)){if(h.equal(e))break;h=e.clone();if(j=d(e.substring(f),e.start,l.clone()))return a.createSelection(j.start,j.end),!0;else j=b?e.start:e.end-1}j+=b?-1:1}return!1}function h(a){var b=!0;return f(a,!1,function(a,c){if(b){b=!1;var d;a:{d=c;for(var e;d>=0;){if(e=j(a,d)){d=e;break a}d--}d= +null}return d}else return j(a,c)},function(a,b,c){return e(a,b,c,!1)})}function c(a){return f(a,!0,j,function(a,b,c){return e(a,b,c,!0)})}function b(b,c,e){var e=e||0,f=g("range"),j=[],k=-1,h="",l="",m,p;d.each(c,function(c){switch(c.type){case "tag":p=b.substring(c.start,c.end);/^<[\w\:\-]/.test(p)&&j.push(f.create({start:c.start+1,end:c.end}));break;case "attribute":k=c.start;h=b.substring(c.start,c.end);break;case "string":j.push(f.create(k,c.end-k)),m=f.create(c),l=m.substring(b),i(l.charAt(0))&& +m.start++,i(l.charAt(l.length-1))&&m.end--,j.push(m),h=="class"&&(j=j.concat(a(m.substring(b),m.start)))}});d.each(j,function(a){a.shift(e)});return d.chain(j).filter(function(a){return!!a.length()}).uniq(!1,function(a){return a.toString()}).value()}function a(a,b){var b=b||0,c=[],d=g("stringStream").create(a),e=g("range");d.eatSpace();d.start=d.pos;for(var f;f=d.next();)if(/[\s\u00a0]/.test(f))c.push(e.create(d.start+b,d.pos-d.start-1)),d.eatSpace(),d.start=d.pos;c.push(e.create(d.start+b,d.pos- +d.start));return c}function e(a,c,e,f){a=b(a,g("xmlParser").parse(a),c);f&&a.reverse();return(c=d.find(a,function(a){return a.equal(e)}))?(f=d.indexOf(a,c),f1)?f[1]:d.find(a,function(a){return a.end>e.end})}function j(a,b){var c;if(a.charAt(b)=="<"&&(c=a.substring(b,a.length).match(o)))return g("range").create(b,c[0])}function i(a){return a=='"'||a=="'"}function l(a){var b= +a.valueRange(!0),c=[a.range(!0),b],e=g("stringStream"),f=g("cssEditTree"),i=g("range"),j=a.value();d.each(a.valueParts(),function(a){var g=a.clone();c.push(g.shift(b.start));var h=e.create(a.substring(j));if(h.match(/^[\w\-]+\(/,!0)){h.start=h.pos;h.skipToPair("(",")");var l=h.current();c.push(i.create(g.start+h.start,l));d.each(f.findParts(l),function(a){c.push(i.create(g.start+h.start+a.start,a.substring(l)))})}});return d.chain(c).filter(function(a){return!!a.length()}).uniq(!1,function(a){return a.toString()}).value()} +function p(a,b,c){var e=null,f=null,g=a.list(),i,j;c?(g.reverse(),i=function(a){return a.range(!0).start<=b.start},j=function(a){return a.start=b.end},j=function(a){return a.end>b.start});for(;e=d.find(g,i);){a=l(e);c&&a.reverse();if(f=d.find(a,function(a){return a.equal(b)})){if(f=d.indexOf(a,f),f!=a.length-1){f=a[f+1];break}}else{f=d.filter(a,function(a){return a.inside(b.end)});if(f.length>1){f=f[1];break}if(f=d.find(a,j))break}f=null;b.start=b.end= +c?e.range(!0).start-1:e.range(!0).end+1}return f}function m(a,b,c){a=g("cssEditTree").parse(a,{offset:b});b=a.nameRange(!0);return c.endb.start)?b:a}var o=/^<([\w\:\-]+)((?:\s+[\w\-:]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)>/,q=g("actions");q.add("select_next_item",function(a){return a.getSyntax()=="css"?f(a,!1,g("cssEditTree").extractRule,m):h(a)});q.add("select_previous_item", function(a){return a.getSyntax()=="css"?f(a,!0,g("cssEditTree").extractRule,n):c(a)})}); -emmet.exec(function(g){function d(c,b,a){var b=String((b||"out").toLowerCase()),d=g("editorUtils").outputInfo(c,a),a=d.syntax,f=g("range"),j=f.create(c.getSelectionRange()),d=d.content,l=null,l=i.last_match.opening_tag,o=i.last_match.closing_tag;if(b=="in"&&l&&j.length())if(o)l.start==j.start?d.charAt(l.end)=="<"?(b=f.create(i.find(d,l.end+1,a)),l=b.start==l.end&&b.end==o.start?f.create(i(d,l.end+1,a)):f.create(l.end,o.start-l.end)):l=f.create(l.end,o.start-l.end):(b=d.substring(0,o.start).indexOf("<", -l.end),l=f.create(i(d,b!=-1?b+1:l.end,a)));else return!1;else l=f.create(i(d,j.end,a));return l&&l.start!=-1?(c.createSelection(l.start,l.end),!0):!1}var f=g("actions"),i=g("html_matcher");f.add("match_pair",d,{hidden:!0});f.add("match_pair_inward",function(c){return d(c,"in")},{label:"HTML/Match Pair Tag (inward)"});f.add("match_pair_outward",function(c){return d(c,"out")},{label:"HTML/Match Pair Tag (outward)"});f.add("matching_pair",function(c){var b=String(c.getContent()),a=c.getCaretPos();b.charAt(a)== -"<"&&a++;var d=i.getTags(b,a,String(c.getProfileName()));if(d&&d[0]&&(b=d[0],d=d[1]))if(b.start<=a&&b.end>=a)return c.setCaretPos(d.start),!0;else if(d.start<=a&&d.end>=a)return c.setCaretPos(b.start),!0;return!1},{label:"HTML/Go To Matching Tag Pair"})}); -emmet.exec(function(g){g("actions").add("remove_tag",function(d){var f=g("utils"),i=g("editorUtils").outputInfo(d),c=g("html_matcher").getTags(i.content,d.getCaretPos(),i.profile);if(c&&c[0]){if(c[1]){var b=f.narrowToNonSpace(i.content,c[0].end,c[1].start-c[0].end),a=f.findNewlineBounds(i.content,b.start),a=f.getLinePadding(a.substring(i.content)),i=b.substring(i.content),i=f.unindentString(i,a);d.replaceContent(f.getCaretPlaceholder()+f.escapeText(i),c[0].start,c[1].end)}else d.replaceContent(f.getCaretPlaceholder(), +emmet.exec(function(g){function d(c,b,a){var b=String((b||"out").toLowerCase()),d=g("editorUtils").outputInfo(c,a),a=d.syntax,f=g("range"),i=f.create(c.getSelectionRange()),d=d.content,l=null,l=h.last_match.opening_tag,p=h.last_match.closing_tag;if(b=="in"&&l&&i.length())if(p)l.start==i.start?d.charAt(l.end)=="<"?(b=f.create(h.find(d,l.end+1,a)),l=b.start==l.end&&b.end==p.start?f.create(h(d,l.end+1,a)):f.create(l.end,p.start-l.end)):l=f.create(l.end,p.start-l.end):(b=d.substring(0,p.start).indexOf("<", +l.end),l=f.create(h(d,b!=-1?b+1:l.end,a)));else return!1;else l=f.create(h(d,i.end,a));return l&&l.start!=-1?(c.createSelection(l.start,l.end),!0):!1}var f=g("actions"),h=g("html_matcher");f.add("match_pair",d,{hidden:!0});f.add("match_pair_inward",function(c){return d(c,"in")},{label:"HTML/Match Pair Tag (inward)"});f.add("match_pair_outward",function(c){return d(c,"out")},{label:"HTML/Match Pair Tag (outward)"});f.add("matching_pair",function(c){var b=String(c.getContent()),a=c.getCaretPos();b.charAt(a)== +"<"&&a++;var d=h.getTags(b,a,String(c.getProfileName()));if(d&&d[0]&&(b=d[0],d=d[1]))if(b.start<=a&&b.end>=a)return c.setCaretPos(d.start),!0;else if(d.start<=a&&d.end>=a)return c.setCaretPos(b.start),!0;return!1},{label:"HTML/Go To Matching Tag Pair"})}); +emmet.exec(function(g){g("actions").add("remove_tag",function(d){var f=g("utils"),h=g("editorUtils").outputInfo(d),c=g("html_matcher").getTags(h.content,d.getCaretPos(),h.profile);if(c&&c[0]){if(c[1]){var b=f.narrowToNonSpace(h.content,c[0].end,c[1].start-c[0].end),a=f.findNewlineBounds(h.content,b.start),a=f.getLinePadding(a.substring(h.content)),h=b.substring(h.content),h=f.unindentString(h,a);d.replaceContent(f.getCaretPlaceholder()+f.escapeText(h),c[0].start,c[1].end)}else d.replaceContent(f.getCaretPlaceholder(), c[0].start,c[0].end);return!0}return!1},{label:"HTML/Remove Tag"})}); -emmet.exec(function(g){g("actions").add("split_join_tag",function(d,f){var i=g("html_matcher"),c=g("editorUtils").outputInfo(d,null,f),b=g("profile").get(c.profile);if((i=i.getTags(c.content,d.getCaretPos(),c.profile))&&i[0]){if(i[1]){c=g("utils");b=i[0].full_tag.replace(/\s*>$/,(b.self_closing_tag===!0?"/":" /")+">");if(b.length+i[0].start$/,">")+b+"";d.replaceContent(b,i[0].start,i[0].end)}i=!0}else i=!1;return i},{label:"HTML/Split\\Join Tag Declaration"})}); -emmet.define("reflectCSSValue",function(g,d){function f(b){var a=g("cssEditTree"),d=g("editorUtils").outputInfo(b),b=b.getCaretPos();if(a=a.parseFromPosition(d.content,b))if(d=a.itemFromPosition(b,!0)){var f=a.source,j=a.options.offset,b=b-j-d.range().start;c.exec(!1,[d]);if(f!==a.source)return{data:a.source,start:j,end:j+f.length,caret:j+d.range().start+b}}}function i(b){var b=g("cssEditTree").baseName(b),a;if(b=="opacity"||b=="filter")return/^(?:\-\w+\-)?(?:opacity|filter)$/;else if(a=b.match(/^border-radius-(top|bottom)(left|right)/))return RegExp("^(?:\\-\\w+\\-)?(?:"+ -b+"|border-"+a[1]+"-"+a[2]+"-radius)$");else if(a=b.match(/^border-(top|bottom)-(left|right)-radius/))return RegExp("^(?:\\-\\w+\\-)?(?:"+b+"|border-radius-"+a[1]+a[2]+")$");return RegExp("^(?:\\-\\w+\\-)?"+b+"$")}var c=g("handlerList").create();g("actions").add("reflect_css_value",function(b){return b.getSyntax()!="css"?!1:g("actionUtils").compoundUpdate(b,f(b))},{label:"CSS/Reflect Value"});c.add(function(b){var a=i(b.name());d.each(b.parent.list(),function(c){if(a.test(c.name())){var d;var f=b.name(), -i=b.value(),o=c.name();d=c.value();var m=g("cssEditTree"),n=g("utils"),f=m.baseName(f),o=m.baseName(o);d=f=="opacity"&&o=="filter"?d.replace(/opacity=[^)]*/i,"opacity="+Math.floor(parseFloat(i)*100)):f=="filter"&&o=="opacity"?(f=i.match(/opacity=([^)]*)/i))?n.prettifyNumber(parseInt(f[1])/100):d:i;c.value(d)}})},{order:-1});return{addHandler:function(b,a){c.add(b,a)},removeHandler:function(b){c.remove(b,options)}}}); -emmet.exec(function(g){g("actions").add("evaluate_math_expression",function(d){var f=g("actionUtils"),i=g("utils"),c=String(d.getContent()),b=g("range").create(d.getSelectionRange());b.length()||(b=f.findExpressionBounds(d,function(a){return i.isNumeric(a)||".+-*/\\".indexOf(a)!=-1}));if(b&&b.length()){f=b.substring(c);f=f.replace(/([\d\.\-]+)\\([\d\.\-]+)/g,"Math.round($1/$2)");try{var a=i.prettifyNumber((new Function("return "+f))());d.replaceContent(a,b.start,b.end);d.setCaretPos(b.start+a.length); +emmet.exec(function(g){g("actions").add("split_join_tag",function(d,f){var h=g("html_matcher"),c=g("editorUtils").outputInfo(d,null,f),b=g("profile").get(c.profile);if((h=h.getTags(c.content,d.getCaretPos(),c.profile))&&h[0]){if(h[1]){c=g("utils");b=h[0].full_tag.replace(/\s*>$/,(b.self_closing_tag===!0?"/":" /")+">");if(b.length+h[0].start$/,">")+b+"";d.replaceContent(b,h[0].start,h[0].end)}h=!0}else h=!1;return h},{label:"HTML/Split\\Join Tag Declaration"})}); +emmet.define("reflectCSSValue",function(g,d){function f(b){var a=g("cssEditTree"),d=g("editorUtils").outputInfo(b),b=b.getCaretPos();if(a=a.parseFromPosition(d.content,b))if(d=a.itemFromPosition(b,!0)){var f=a.source,i=a.options.offset,b=b-i-d.range().start;c.exec(!1,[d]);if(f!==a.source)return{data:a.source,start:i,end:i+f.length,caret:i+d.range().start+b}}}function h(b){var b=g("cssEditTree").baseName(b),a;if(b=="opacity"||b=="filter")return/^(?:\-\w+\-)?(?:opacity|filter)$/;else if(a=b.match(/^border-radius-(top|bottom)(left|right)/))return RegExp("^(?:\\-\\w+\\-)?(?:"+ +b+"|border-"+a[1]+"-"+a[2]+"-radius)$");else if(a=b.match(/^border-(top|bottom)-(left|right)-radius/))return RegExp("^(?:\\-\\w+\\-)?(?:"+b+"|border-radius-"+a[1]+a[2]+")$");return RegExp("^(?:\\-\\w+\\-)?"+b+"$")}var c=g("handlerList").create();g("actions").add("reflect_css_value",function(b){return b.getSyntax()!="css"?!1:g("actionUtils").compoundUpdate(b,f(b))},{label:"CSS/Reflect Value"});c.add(function(b){var a=h(b.name());d.each(b.parent.list(),function(c){if(a.test(c.name())){var d;var f=b.name(), +h=b.value(),p=c.name();d=c.value();var m=g("cssEditTree"),n=g("utils"),f=m.baseName(f),p=m.baseName(p);d=f=="opacity"&&p=="filter"?d.replace(/opacity=[^)]*/i,"opacity="+Math.floor(parseFloat(h)*100)):f=="filter"&&p=="opacity"?(f=h.match(/opacity=([^)]*)/i))?n.prettifyNumber(parseInt(f[1])/100):d:h;c.value(d)}})},{order:-1});return{addHandler:function(b,a){c.add(b,a)},removeHandler:function(b){c.remove(b,options)}}}); +emmet.exec(function(g){g("actions").add("evaluate_math_expression",function(d){var f=g("actionUtils"),h=g("utils"),c=String(d.getContent()),b=g("range").create(d.getSelectionRange());b.length()||(b=f.findExpressionBounds(d,function(a){return h.isNumeric(a)||".+-*/\\".indexOf(a)!=-1}));if(b&&b.length()){f=b.substring(c);f=f.replace(/([\d\.\-]+)\\([\d\.\-]+)/g,"Math.round($1/$2)");try{var a=h.prettifyNumber((new Function("return "+f))());d.replaceContent(a,b.start,b.end);d.setCaretPos(b.start+a.length); return!0}catch(e){}}return!1},{label:"Numbers/Evaluate Math Expression"})}); -emmet.exec(function(g,d){function f(b,a){var c=g("utils"),f=!1,j=!1,l=g("actionUtils").findExpressionBounds(b,function(a,b,d){return c.isNumeric(a)?!0:a=="."?!c.isNumeric(d.charAt(b+1))?!1:j?!1:j=!0:a=="-"?f?!1:f=!0:!1});if(l&&l.length()){var o=l.substring(String(b.getContent())),m=parseFloat(o);if(!d.isNaN(m)){m=c.prettifyNumber(m+a);if(/^(\-?)0+[1-9]/.test(o)){var n="";RegExp.$1&&(n="-",m=m.substring(1));m=m.split(".");m[0]=c.zeroPadString(m[0],i(o));m=n+m.join(".")}b.replaceContent(m,l.start,l.end); -b.createSelection(l.start,l.start+m.length);return!0}}return!1}function i(b){b=b.replace(/^\-/,"");return~b.indexOf(".")?b.split(".")[0].length:b.length}var c=g("actions");d.each([1,-1,10,-10,0.1,-0.1],function(b){var a=b>0?"increment":"decrement";c.add(a+"_number_by_"+String(Math.abs(b)).replace(".","").substring(0,2),function(a){return f(a,b)},{label:"Numbers/"+a.charAt(0).toUpperCase()+a.substring(1)+" number by "+Math.abs(b)})})}); -emmet.exec(function(g,d){var f=g("actions"),i=g("preferences");i.define("css.closeBraceIndentation","\n","Indentation before closing brace of CSS rule. Some users prefereindented closing brace of CSS rule for better readability. This preference\u2019s value will be automatically inserted before closing brace when user adds newline in newly created CSS rule (e.g. when \u201cInsert formatted linebreak\u201d action will be performed in CSS file). If you\u2019re such user, you may want to write put a value like \\n\\t in this preference."); -f.add("insert_formatted_line_break_only",function(c){var b=g("utils"),a=g("resources"),e=g("editorUtils").outputInfo(c),f=c.getCaretPos(),j=b.getNewline();if(d.include(["html","xml","xsl"],e.syntax)){if(a=a.getVariable("indentation"),e=g("html_matcher").getTags(e.content,f,e.profile),e[0]&&e[1]&&e[0].type=="tag"&&e[0].end==f&&e[1].start==f)return c.replaceContent(j+a+b.getCaretPlaceholder()+j,f),!0}else if(e.syntax=="css"&&(e=e.content,f&&e.charAt(f-1)=="{")){var l=i.get("css.closeBraceIndentation"), -a=a.getVariable("indentation"),o=e.charAt(f)=="}";if(!o)for(var m=f,n=e.length,p;ma.length?c.replaceContent(b+i,h,h,!0):c.replaceContent(b,h)}return!0},{hidden:!0})}); -emmet.exec(function(g){g("actions").add("merge_lines",function(d){var f=g("html_matcher"),i=g("utils"),c=g("editorUtils").outputInfo(d),b=g("range").create(d.getSelectionRange());if(!b.length()&&(f=f(c.content,d.getCaretPos(),c.profile)))b.start=f[0],b.end=f[1];if(b.length()){c=b.substring(c.content);i=i.splitByLines(c);for(c=1;c=0;)if(d("src=",b,c)){if(b=b.substr(c).match(/^(src=(["'])?)([^'"<>\s]+)\1?/))i=b[3],c+=b[1].length;break}else if(d("url(",b,c)){if(b=b.substr(c).match(/^(url\((['"])?)([^'"\)\s]+)\1?/))i=b[3],c+=b[1].length;break}if(i)if(d("data:",i))if(b=String(f.prompt("Enter path to file (absolute or relative)"))){var a= -g("file"),e=a.createPath(f.getFilePath(),b);if(!e)throw"Can't save file";a.save(e,g("base64").decode(i.replace(/^data\:.+?;.+?,/,"")));f.replaceContent("$0"+b,c,c+i.length);f=!0}else f=!1;else{b=g("file");a=g("actionUtils");e=f.getFilePath();if(e===null)throw"You should save your file before using this action";e=b.locateFile(e,i);if(e===null)throw"Can't find "+i+" file";var h=g("base64").encode(String(b.read(e)));if(!h)throw"Can't encode file content to base64";h="data:"+(a.mimeTypes[String(b.getExt(e))]|| -"application/octet-stream")+";base64,"+h;f.replaceContent("$0"+h,c,c+i.length);f=!0}else f=!1;return f},{label:"Encode\\Decode data:URL image"})}); -emmet.exec(function(g,d){function f(d,c){var b;if(c){if(/^data:/.test(c))b=g("base64").decode(c.replace(/^data\:.+?;.+?,/,""));else{b=g("file");var a=b.locateFile(d.getFilePath(),c);if(a===null)throw"Can't find "+c+" file";b=String(b.read(a))}return g("actionUtils").getImageSize(b)}}g("actions").add("update_image_size",function(i){var c;if(String(i.getSyntax())=="css")a:{c=i.getCaretPos();var b=g("editorUtils").outputInfo(i);if(b=g("cssEditTree").parseFromPosition(b.content,c,!0)){var a=b.itemFromPosition(c, -!0),e;if(a&&(e=/url\((["']?)(.+?)\1\)/i.exec(a.value()||"")))if(e=f(i,e[2])){a=b.range(!0);b.value("width",e.width+"px");b.value("height",e.height+"px",b.indexOf("width")+1);c=d.extend(a,{data:b.toString(),caret:c});break a}}c=null}else a:{c=i.getCaretPos();b=g("editorUtils").outputInfo(i);if((b=g("xmlEditTree").parseFromPosition(b.content,c,!0))&&b.name().toLowerCase()=="img")if(e=f(i,b.value("src"))){a=b.range(!0);b.value("width",e.width);b.value("height",e.height,b.indexOf("width")+1);c=d.extend(a, -{data:b.toString(),caret:c});break a}c=null}return g("actionUtils").compoundUpdate(i,c)})}); -emmet.define("cssResolver",function(g,d){function f(a){var b=a&&a.charCodeAt(0);return a&&a=="."||b>47&&b<58}function i(a){a=g("utils").trim(a);if(~a.indexOf("/*")||/[\n\r]/.test(a))return!1;if(!/^[a-z0-9\-]+\s*\:/i.test(a))return!1;a=g("tabStops").processText(a,{replaceCarets:!0,tabstop:function(){return"value"}});return a.split(":").length==2}function c(a){var b=g("utils"),a=b.trim(a);if(a.indexOf(":")==-1)return{name:a,value:p};a=a.split(":");return{name:b.trim(a.shift()),value:b.trim(a.join(":")).replace(/^(\$\{0\}|\$0)(\s*;?)$/, -"${1}$2")}}function b(a,b){var c=m[b];c||(c=d.find(m,function(a){return a.prefix==b}));return c&&c.supports&&d.include(c.supports,a)}function a(a,c){var e=[];d.each(m,function(c,d){b(a,d)&&e.push(d)});!e.length&&!c&&d.each(m,function(a,b){a.obsolete||e.push(b)});return e}function e(a,b){d.isString(b)&&(b={prefix:b});m[a]=d.extend({},o,b)}function h(a,b){if(b){var c=q.get(b+"."+a);if(!d.isUndefined(c))return c}return q.get("css."+a)}function j(a,b,c){if(!d.isString(a))a=a.data;if(!i(a))return a;b&& -(~a.indexOf(";")?a=a.split(";").join(" !important;"):a+=" !important");b=a.indexOf(":");a=a.substring(0,b).replace(/\s+$/,"")+h("valueSeparator",c)+g("utils").trim(a.substring(b+1));return a.replace(/\s*;\s*$/,h("propertyEnd",c))}var l=null,o={prefix:"emmet",obsolete:!1,transformName:function(a){return"-"+this.prefix+"-"+a},supports:null},m={},n={p:"%",e:"em",x:"ex"},p="${1};",q=g("preferences");q.define("css.valueSeparator",": ","Defines a symbol that should be placed between CSS property and value when expanding CSS abbreviations."); +emmet.exec(function(g,d){function f(b,a){var c=g("utils"),f=!1,i=!1,l=g("actionUtils").findExpressionBounds(b,function(a,b,d){return c.isNumeric(a)?!0:a=="."?!c.isNumeric(d.charAt(b+1))?!1:i?!1:i=!0:a=="-"?f?!1:f=!0:!1});if(l&&l.length()){var p=l.substring(String(b.getContent())),m=parseFloat(p);if(!d.isNaN(m)){m=c.prettifyNumber(m+a);if(/^(\-?)0+[1-9]/.test(p)){var n="";RegExp.$1&&(n="-",m=m.substring(1));m=m.split(".");m[0]=c.zeroPadString(m[0],h(p));m=n+m.join(".")}b.replaceContent(m,l.start,l.end); +b.createSelection(l.start,l.start+m.length);return!0}}return!1}function h(b){b=b.replace(/^\-/,"");return~b.indexOf(".")?b.split(".")[0].length:b.length}var c=g("actions");d.each([1,-1,10,-10,0.1,-0.1],function(b){var a=b>0?"increment":"decrement";c.add(a+"_number_by_"+String(Math.abs(b)).replace(".","").substring(0,2),function(a){return f(a,b)},{label:"Numbers/"+a.charAt(0).toUpperCase()+a.substring(1)+" number by "+Math.abs(b)})})}); +emmet.exec(function(g,d){var f=g("actions"),h=g("preferences");h.define("css.closeBraceIndentation","\n","Indentation before closing brace of CSS rule. Some users prefereindented closing brace of CSS rule for better readability. This preference\u2019s value will be automatically inserted before closing brace when user adds newline in newly created CSS rule (e.g. when \u201cInsert formatted linebreak\u201d action will be performed in CSS file). If you\u2019re such user, you may want to write put a value like \\n\\t in this preference."); +f.add("insert_formatted_line_break_only",function(c){var b=g("utils"),a=g("resources"),e=g("editorUtils").outputInfo(c),f=c.getCaretPos(),i=b.getNewline();if(d.include(["html","xml","xsl"],e.syntax)){if(a=a.getVariable("indentation"),e=g("html_matcher").getTags(e.content,f,e.profile),e[0]&&e[1]&&e[0].type=="tag"&&e[0].end==f&&e[1].start==f)return c.replaceContent(i+a+b.getCaretPlaceholder()+i,f),!0}else if(e.syntax=="css"&&(e=e.content,f&&e.charAt(f-1)=="{")){var l=h.get("css.closeBraceIndentation"), +a=a.getVariable("indentation"),p=e.charAt(f)=="}";if(!p)for(var m=f,n=e.length,o;ma.length?c.replaceContent(b+h,j,j,!0):c.replaceContent(b,j)}return!0},{hidden:!0})}); +emmet.exec(function(g){g("actions").add("merge_lines",function(d){var f=g("html_matcher"),h=g("utils"),c=g("editorUtils").outputInfo(d),b=g("range").create(d.getSelectionRange());if(!b.length()&&(f=f(c.content,d.getCaretPos(),c.profile)))b.start=f[0],b.end=f[1];if(b.length()){c=b.substring(c.content);h=h.splitByLines(c);for(c=1;c=0;)if(d("src=",b,c)){if(b=b.substr(c).match(/^(src=(["'])?)([^'"<>\s]+)\1?/))h=b[3],c+=b[1].length;break}else if(d("url(",b,c)){if(b=b.substr(c).match(/^(url\((['"])?)([^'"\)\s]+)\1?/))h=b[3],c+=b[1].length;break}if(h)if(d("data:",h))if(b=String(f.prompt("Enter path to file (absolute or relative)"))){var a= +g("file"),e=a.createPath(f.getFilePath(),b);if(!e)throw"Can't save file";a.save(e,g("base64").decode(h.replace(/^data\:.+?;.+?,/,"")));f.replaceContent("$0"+b,c,c+h.length);f=!0}else f=!1;else{b=g("file");a=g("actionUtils");e=f.getFilePath();if(e===null)throw"You should save your file before using this action";e=b.locateFile(e,h);if(e===null)throw"Can't find "+h+" file";var j=g("base64").encode(String(b.read(e)));if(!j)throw"Can't encode file content to base64";j="data:"+(a.mimeTypes[String(b.getExt(e))]|| +"application/octet-stream")+";base64,"+j;f.replaceContent("$0"+j,c,c+h.length);f=!0}else f=!1;return f},{label:"Encode\\Decode data:URL image"})}); +emmet.exec(function(g,d){function f(d,c){var b;if(c){if(/^data:/.test(c))b=g("base64").decode(c.replace(/^data\:.+?;.+?,/,""));else{b=g("file");var a=b.locateFile(d.getFilePath(),c);if(a===null)throw"Can't find "+c+" file";b=String(b.read(a))}return g("actionUtils").getImageSize(b)}}g("actions").add("update_image_size",function(h){var c;if(String(h.getSyntax())=="css")a:{c=h.getCaretPos();var b=g("editorUtils").outputInfo(h);if(b=g("cssEditTree").parseFromPosition(b.content,c,!0)){var a=b.itemFromPosition(c, +!0),e;if(a&&(e=/url\((["']?)(.+?)\1\)/i.exec(a.value()||"")))if(e=f(h,e[2])){a=b.range(!0);b.value("width",e.width+"px");b.value("height",e.height+"px",b.indexOf("width")+1);c=d.extend(a,{data:b.toString(),caret:c});break a}}c=null}else a:{c=h.getCaretPos();b=g("editorUtils").outputInfo(h);if((b=g("xmlEditTree").parseFromPosition(b.content,c,!0))&&b.name().toLowerCase()=="img")if(e=f(h,b.value("src"))){a=b.range(!0);b.value("width",e.width);b.value("height",e.height,b.indexOf("width")+1);c=d.extend(a, +{data:b.toString(),caret:c});break a}c=null}return g("actionUtils").compoundUpdate(h,c)})}); +emmet.define("cssResolver",function(g,d){function f(a){var b=a&&a.charCodeAt(0);return a&&a=="."||b>47&&b<58}function h(a){a=g("utils").trim(a);if(~a.indexOf("/*")||/[\n\r]/.test(a))return!1;if(!/^[a-z0-9\-]+\s*\:/i.test(a))return!1;a=g("tabStops").processText(a,{replaceCarets:!0,tabstop:function(){return"value"}});return a.split(":").length==2}function c(a){var b=g("utils"),a=b.trim(a);if(a.indexOf(":")==-1)return{name:a,value:o};a=a.split(":");return{name:b.trim(a.shift()),value:b.trim(a.join(":")).replace(/^(\$\{0\}|\$0)(\s*;?)$/, +"${1}$2")}}function b(a,b){var c=m[b];c||(c=d.find(m,function(a){return a.prefix==b}));return c&&c.supports&&d.include(c.supports,a)}function a(a,c){var e=[];d.each(m,function(c,d){b(a,d)&&e.push(d)});!e.length&&!c&&d.each(m,function(a,b){a.obsolete||e.push(b)});return e}function e(a,b){d.isString(b)&&(b={prefix:b});m[a]=d.extend({},p,b)}function j(a,b){if(b){var c=q.get(b+"."+a);if(!d.isUndefined(c))return c}return q.get("css."+a)}function i(a,b,c){if(!d.isString(a))a=a.data;if(!h(a))return a;b&& +(~a.indexOf(";")?a=a.split(";").join(" !important;"):a+=" !important");b=a.indexOf(":");a=a.substring(0,b).replace(/\s+$/,"")+j("valueSeparator",c)+g("utils").trim(a.substring(b+1));return a.replace(/\s*;\s*$/,j("propertyEnd",c))}var l=null,p={prefix:"emmet",obsolete:!1,transformName:function(a){return"-"+this.prefix+"-"+a},supports:null},m={},n={p:"%",e:"em",x:"ex"},o="${1};",q=g("preferences");q.define("css.valueSeparator",": ","Defines a symbol that should be placed between CSS property and value when expanding CSS abbreviations."); q.define("css.propertyEnd",";","Defines a symbol that should be placed at the end of CSS property when expanding CSS abbreviations.");q.define("stylus.valueSeparator"," ","Defines a symbol that should be placed between CSS property and value when expanding CSS abbreviations in Stylus dialect.");q.define("stylus.propertyEnd","","Defines a symbol that should be placed at the end of CSS property when expanding CSS abbreviations in Stylus dialect.");q.define("sass.propertyEnd","","Defines a symbol that should be placed at the end of CSS property when expanding CSS abbreviations in SASS dialect."); q.define("css.autoInsertVendorPrefixes",!0,"Automatically generate vendor-prefixed copies of expanded CSS property. By default, Emmet will generate vendor-prefixed NaN(e.g. -bxsh). With this option enabled, you don\u2019t need dashes before abbreviations: Emmet will produce vendor-prefixed properties for you.");var s=d.template("A comma-separated list of CSS properties that may have <%= vendor %> vendor prefix. This list is used to generate a list of prefixed properties when expanding -property abbreviations. Empty list means that all possible CSS values may have <%= vendor %> prefix."); d.each({webkit:"animation-delay, animation-direction, animation-duration, animation-fill-mode, animation-iteration-count, animation-name, animation-play-state, animation-timing-function, appearance, backface-visibility, background-clip, background-composite, background-origin, background-size, border-fit, border-horizontal-spacing, border-image, border-vertical-spacing, box-align, box-direction, box-flex, box-flex-group, box-lines, box-ordinal-group, box-orient, box-pack, box-reflect, box-shadow, color-correction, column-break-after, column-break-before, column-break-inside, column-count, column-gap, column-rule-color, column-rule-style, column-rule-width, column-span, column-width, dashboard-region, font-smoothing, highlight, hyphenate-character, hyphenate-limit-after, hyphenate-limit-before, hyphens, line-box-contain, line-break, line-clamp, locale, margin-before-collapse, margin-after-collapse, marquee-direction, marquee-increment, marquee-repetition, marquee-style, mask-attachment, mask-box-image, mask-box-image-outset, mask-box-image-repeat, mask-box-image-slice, mask-box-image-source, mask-box-image-width, mask-clip, mask-composite, mask-image, mask-origin, mask-position, mask-repeat, mask-size, nbsp-mode, perspective, perspective-origin, rtl-ordering, text-combine, text-decorations-in-effect, text-emphasis-color, text-emphasis-position, text-emphasis-style, text-fill-color, text-orientation, text-security, text-stroke-color, text-stroke-width, transform, transition, transform-origin, transform-style, transition-delay, transition-duration, transition-property, transition-timing-function, user-drag, user-modify, user-select, writing-mode, svg-shadow, box-sizing, border-radius", @@ -192,47 +192,47 @@ o:"dashboard-region, animation, animation-delay, animation-direction, animation- function(a,b){q.define("css."+b+"Properties",a,s({vendor:b}))});q.define("css.unitlessProperties","z-index, line-height, opacity, font-weight","The list of properties whose values \u200b\u200bmust not contain units.");e("w",{prefix:"webkit",supports:q.getArray("css.webkitProperties")});e("m",{prefix:"moz",supports:q.getArray("css.mozProperties")});e("s",{prefix:"ms",supports:q.getArray("css.msProperties")});e("o",{prefix:"o",supports:q.getArray("css.oProperties")});var t=["css","less","sass","scss", "stylus"];g("resources").addResolver(function(a,b){return d.include(t,b)&&a.isElement()?l.expandToSnippet(a.abbreviation,b):null});var r=g("expandAbbreviation");r.addHandler(function(a,b,c){if(!d.include(t,b))return!1;var e=a.getSelectionRange().end,f=r.findAbbreviation(a);return f&&(b=emmet.expandAbbreviation(f,b,c))?(f=e-f.length,c=e,a.getContent().charAt(e)==";"&&b.charAt(b.length-1)==";"&&c++,a.replaceContent(b,f,c),!0):!1});return l={addPrefix:e,supportsPrefix:b,prefixed:function(a,c){return b(a, c)?"-"+c+"-"+a:a},listPrefixes:function(){return d.map(m,function(a){return a.prefix})},getPrefix:function(a){return m[a]},removePrefix:function(a){a in m&&delete m[a]},addUnitAlias:function(a,b){n[a]=b},getUnitAlias:function(a){return n[a]},removeUnitAlias:function(a){a in n&&delete n[a]},extractPrefixes:function(a){if(a.charAt(0)!="-")return{property:a,prefixes:null};for(var b=1,c=a.length,d,e=[];bbackground-color property with gradient first color as fallback for old browsers."); -g("expandAbbreviation").addHandler(function(a,b,c){var d=g("editorUtils").outputInfo(a,b,c);if(d.syntax!="css")return!1;var c=a.getCaretPos(),e=d.content,d=m(e,c);if(d.property){var f=l(d.property);if(f){var b=d.rule.options.offset||0,h=b+d.rule.toString().length;if(/[\n\r]/.test(d.property.value())){var i=d.property.valueRange(!0).start+f.valueRange.end,e=g("utils").replaceSubstring(e,";",i),c=m(e,c);c.property&&(f=l(c.property),d=c)}d.property.end(";");j(d.property,f.gradient,f.valueRange);a.replaceContent(d.rule.toString(), -b,h,!0);return!0}}return o(a,b)});g("reflectCSSValue").addHandler(function(a){var b=g("utils"),c=l(a);if(!c)return!1;var f=a.value(),j=function(a){return b.replaceSubstring(f,a,c.valueRange)};d.each(a.parent.getAll(e(a.name())),function(b){if(b!==a){var d=b.value().match(/^\s*(\-([a-z]+)\-)?linear\-gradient/);d?b.value(j(p.toString(c.gradient,d[2]||""))):b.value().match(/\s*\-webkit\-gradient/)&&b.value(j(p.oldWebkitLinearGradient(c.gradient)))}});return!0});return p={parse:function(a){var b=null; -g("utils").trim(a).replace(/^([\w\-]+)\((.+?)\)$/,function(a,c,e){c=c.toLowerCase().replace(/^\-[a-z]+\-/,"");if(c=="linear-gradient"||c=="lg"){for(var a=n[0],e=g("stringStream").create(g("utils").trim(e)),c=[],j;j=e.next();)e.peek()==","?(c.push(e.current()),e.next(),e.eatSpace(),e.start=e.pos):j=="("&&e.skipTo(")");c.push(e.current());c=d.compact(d.map(c,f));if(c.length){if(q.test(c[0])||s.test(c[0]))a=c.shift();b={type:"linear",direction:a,colorStops:d.map(c,i)}}else b=null;return""}return a}); +g("expandAbbreviation").addHandler(function(a,b,c){var d=g("editorUtils").outputInfo(a,b,c);if(d.syntax!="css")return!1;var c=a.getCaretPos(),e=d.content,d=m(e,c);if(d.property){var f=l(d.property);if(f){var b=d.rule.options.offset||0,j=b+d.rule.toString().length;if(/[\n\r]/.test(d.property.value())){var h=d.property.valueRange(!0).start+f.valueRange.end,e=g("utils").replaceSubstring(e,";",h),c=m(e,c);c.property&&(f=l(c.property),d=c)}d.property.end(";");i(d.property,f.gradient,f.valueRange);a.replaceContent(d.rule.toString(), +b,j,!0);return!0}}return p(a,b)});g("reflectCSSValue").addHandler(function(a){var b=g("utils"),c=l(a);if(!c)return!1;var f=a.value(),i=function(a){return b.replaceSubstring(f,a,c.valueRange)};d.each(a.parent.getAll(e(a.name())),function(b){if(b!==a){var d=b.value().match(/^\s*(\-([a-z]+)\-)?linear\-gradient/);d?b.value(i(o.toString(c.gradient,d[2]||""))):b.value().match(/\s*\-webkit\-gradient/)&&b.value(i(o.oldWebkitLinearGradient(c.gradient)))}});return!0});return o={parse:function(a){var b=null; +g("utils").trim(a).replace(/^([\w\-]+)\((.+?)\)$/,function(a,c,e){c=c.toLowerCase().replace(/^\-[a-z]+\-/,"");if(c=="linear-gradient"||c=="lg"){for(var a=n[0],e=g("stringStream").create(g("utils").trim(e)),c=[],i;i=e.next();)e.peek()==","?(c.push(e.current()),e.next(),e.eatSpace(),e.start=e.pos):i=="("&&e.skipTo(")");c.push(e.current());c=d.compact(d.map(c,f));if(c.length){if(q.test(c[0])||s.test(c[0]))a=c.shift();b={type:"linear",direction:a,colorStops:d.map(c,h)}}else b=null;return""}return a}); return b},oldWebkitLinearGradient:function(b){d.isString(b)&&(b=this.parse(b));if(!b)return null;var e=d.map(b.colorStops,d.clone);d.each(e,function(a){if("position"in a)if(~a.position.indexOf(".")||a.unit=="%")a.position=parseFloat(a.position)/(a.unit=="%"?100:1);else throw"Can't convert color stop '"+(a.position+(a.unit||""))+"'";});c(e);e=d.map(e,function(a,b){return!a.position&&!b?"from("+a.color+")":a.position==1&&b==e.length-1?"to("+a.color+")":"color-stop("+a.position.toFixed(2).replace(/\.?0+$/, "")+", "+a.color+")"});return"-webkit-gradient(linear, "+a(b.direction)+", "+e.join(", ")+")"},toString:function(a,b){if(a.type=="linear"){var c=(b?"-"+b+"-":"")+"linear-gradient",e=d.map(a.colorStops,function(a){return a.color+("position"in a?" "+a.position+(a.unit||""):"")});a.direction&&(!t.get("css.gradient.omitDefaultDirection")||!d.include(n,a.direction))&&e.unshift(a.direction);return c+"("+e.join(", ")+")"}}}}); -emmet.exec(function(g,d){var f=g("handlerList").create(),i=g("resources");d.extend(i,{addGenerator:function(c,b,a){d.isString(c)&&(c=RegExp(c));f.add(function(a,d){var f;return(f=c.exec(a.name()))?b(f,a,d):null},a)}});i.addResolver(function(c,b){return f.exec(null,d.toArray(arguments))})}); +emmet.exec(function(g,d){var f=g("handlerList").create(),h=g("resources");d.extend(h,{addGenerator:function(c,b,a){d.isString(c)&&(c=RegExp(c));f.add(function(a,d){var f;return(f=c.exec(a.name()))?b(f,a,d):null},a)}});h.addResolver(function(c,b){return f.exec(null,d.toArray(arguments))})}); emmet.define("tagName",function(g,d){var f={empty:"area,base,basefont,br,col,frame,hr,img,input,isindex,link,meta,param,embed,keygen,command".split(","),blockLevel:"address,applet,blockquote,button,center,dd,del,dir,div,dl,dt,fieldset,form,frameset,hr,iframe,ins,isindex,li,link,map,menu,noframes,noscript,object,ol,p,pre,script,table,tbody,td,tfoot,th,thead,tr,ul,h1,h2,h3,h4,h5,h6".split(","),inlineLevel:"a,abbr,acronym,applet,b,basefont,bdo,big,br,button,cite,code,del,dfn,em,font,i,iframe,img,input,ins,kbd,label,map,object,q,s,samp,select,small,span,strike,strong,sub,sup,textarea,tt,u,var".split(",")}, -i={ul:"li",ol:"li",table:"tr",tr:"td",tbody:"tr",thead:"tr",tfoot:"tr",colgroup:"col",select:"option",optgroup:"option",audio:"source",video:"source",object:"param",map:"area"};return{resolve:function(c){c=(c||"").toLowerCase();return c in i?this.getMapping(c):this.isInlineLevel(c)?"span":"div"},getMapping:function(c){return i[c.toLowerCase()]},isInlineLevel:function(c){return this.isTypeOf(c,"inlineLevel")},isBlockLevel:function(c){return this.isTypeOf(c,"blockLevel")},isEmptyElement:function(c){return this.isTypeOf(c, -"empty")},isTypeOf:function(c,b){return d.include(f[b],c)},addMapping:function(c,b){i[c]=b},removeMapping:function(c){c in i&&delete i[c]},addElementToCollection:function(c,b){f[b]||(f[b]=[]);var a=this.getCollection(b);d.include(a,c)||a.push(c)},removeElementFromCollection:function(c,b){b in f&&(f[b]=d.without(this.getCollection(b),c))},getCollection:function(c){return f[c]}}}); -emmet.exec(function(g,d){function f(){return{element:e.get("bem.elementSeparator"),modifier:e.get("bem.modifierSeparator")}}function i(a){if(g("abbreviationUtils").isSnippet(a))return a;a.__bem={block:"",element:"",modifier:""};var e=c(a.attribute("class")).split(" "),h=/^[a-z]\-/i;a.__bem.block=d.find(e,function(a){return h.test(a)});if(!a.__bem.block)h=/^[a-z]/i,a.__bem.block=d.find(e,function(a){return h.test(a)})||"";e=d.chain(e).map(function(c){var d;d=b(c,a,"element");d=b(d,a,"modifier");var e= -"",g="",h="",c=f();~d.indexOf(c.element)?(e=d.split(c.element),h=e[1].split(c.modifier),e=e[0],g=h.shift(),h=h.join(c.modifier)):~d.indexOf(c.modifier)&&(h=d.split(c.modifier),e=h.shift(),h=h.join(c.modifier));if(e||g||h){if(!e)e=a.__bem.block;d=e;var i=[];g&&(d+=c.element+g);i.push(d);h&&i.push(d+c.modifier+h);a.__bem.block=e;a.__bem.element=g;a.__bem.modifier=h;c=i}else c=d;return c}).flatten().uniq().value();a.attribute("class",e.join(" "));return a}function c(a){var b=g("utils"),a=(" "+(a||"")+ -" ").replace(/\s+/g," "),c=e.get("bem.shortElementPrefix");c&&(c=RegExp("\\s("+b.escapeForRegexp(c)+"+)","g"),a=a.replace(c,function(a,c){return" "+b.repeatString(f().element,c.length)}));return b.trim(a)}function b(a,b,c){var d=f(),e=RegExp("^("+d[c]+")+","g");if(e.test(a)){for(var g=0,e=a.replace(e,function(a){g=a.length/d[c].length;return""}),h=b;h.parent&&g--;)h=h.parent;if(!h||!h.__bem)h=b;if(h&&h.__bem)return a=h.__bem.block,c=="modifier"&&h.__bem.element&&(a+=d.element+h.__bem.element),a+d[c]+ -e}return a}function a(b,c){b.name&&i(b,c);var e=g("abbreviationUtils");d.each(b.children,function(b){a(b,c);!e.isSnippet(b)&&b.start&&(h=!0)});return b}var e=g("preferences");e.define("bem.elementSeparator","__","Class name\u2019s element separator.");e.define("bem.modifierSeparator","_","Class name\u2019s modifier separator.");e.define("bem.shortElementPrefix","-","Symbol for describing short \u201cblock-element\u201d notation. Class names prefixed with this symbol will be treated as element name for parent\u2018s block name. Each symbol instance traverses one level up in parsed tree for block name lookup. Empty value will disable short notation."); -var h=!1;g("filters").add("bem",function(b,c){h=!1;b=a(b,c);h&&(b=g("filters").apply(b,"html",c));return b})}); -emmet.exec(function(g,d){function f(b,a,e){var f=g("utils"),j=c.get("filter.commentTrigger");if(j=="*"||d.find(j.split(","),function(a){return!!b.attribute(f.trim(a))}))j={node:b,name:b.name(),padding:b.parent?b.parent.padding:"",attr:function(a,c,d){return(a=b.attribute(a))?(c||"")+a+(d||""):""}},a=f.normalizeNewline(a?a(j):""),e=f.normalizeNewline(e?e(j):""),b.start=b.start.replace(//,">"+e)}function i(b,a,c){var h=g("abbreviationUtils");d.each(b.children,function(b){h.isBlock(b)&& -f(b,a,c);i(b,a,c)});return b}var c=g("preferences");c.define("filter.commentAfter",'\n<\!-- /<%= attr("id", "#") %><%= attr("class", ".") %> --\>',"A definition of comment that should be placed after matched element when comment filter is applied. This definition is an ERB-style template passed to _.template() function (see Underscore.js docs for details). In template context, the following properties and functions are availabe:\n
  • attr(name, before, after) \u2013 a function that outputsspecified attribute value concatenated with before and after strings. If attribute doesn't exists, the empty string will be returned.
  • node \u2013 current node (instance of AbbreviationNode)
  • name \u2013 name of current tag
  • padding \u2013 current string padding, can be used for formatting
"); +h={ul:"li",ol:"li",table:"tr",tr:"td",tbody:"tr",thead:"tr",tfoot:"tr",colgroup:"col",select:"option",optgroup:"option",audio:"source",video:"source",object:"param",map:"area"};return{resolve:function(c){c=(c||"").toLowerCase();return c in h?this.getMapping(c):this.isInlineLevel(c)?"span":"div"},getMapping:function(c){return h[c.toLowerCase()]},isInlineLevel:function(c){return this.isTypeOf(c,"inlineLevel")},isBlockLevel:function(c){return this.isTypeOf(c,"blockLevel")},isEmptyElement:function(c){return this.isTypeOf(c, +"empty")},isTypeOf:function(c,b){return d.include(f[b],c)},addMapping:function(c,b){h[c]=b},removeMapping:function(c){c in h&&delete h[c]},addElementToCollection:function(c,b){f[b]||(f[b]=[]);var a=this.getCollection(b);d.include(a,c)||a.push(c)},removeElementFromCollection:function(c,b){b in f&&(f[b]=d.without(this.getCollection(b),c))},getCollection:function(c){return f[c]}}}); +emmet.exec(function(g,d){function f(){return{element:e.get("bem.elementSeparator"),modifier:e.get("bem.modifierSeparator")}}function h(a){if(g("abbreviationUtils").isSnippet(a))return a;a.__bem={block:"",element:"",modifier:""};var e=c(a.attribute("class")).split(" "),j=/^[a-z]\-/i;a.__bem.block=d.find(e,function(a){return j.test(a)});if(!a.__bem.block)j=/^[a-z]/i,a.__bem.block=d.find(e,function(a){return j.test(a)})||"";e=d.chain(e).map(function(c){var d;d=b(c,a,"element");d=b(d,a,"modifier");var e= +"",g="",j="",c=f();~d.indexOf(c.element)?(e=d.split(c.element),j=e[1].split(c.modifier),e=e[0],g=j.shift(),j=j.join(c.modifier)):~d.indexOf(c.modifier)&&(j=d.split(c.modifier),e=j.shift(),j=j.join(c.modifier));if(e||g||j){if(!e)e=a.__bem.block;d=e;var h=[];g&&(d+=c.element+g);h.push(d);j&&h.push(d+c.modifier+j);a.__bem.block=e;a.__bem.element=g;a.__bem.modifier=j;c=h}else c=d;return c}).flatten().uniq().value();a.attribute("class",e.join(" "));return a}function c(a){var b=g("utils"),a=(" "+(a||"")+ +" ").replace(/\s+/g," "),c=e.get("bem.shortElementPrefix");c&&(c=RegExp("\\s("+b.escapeForRegexp(c)+"+)","g"),a=a.replace(c,function(a,c){return" "+b.repeatString(f().element,c.length)}));return b.trim(a)}function b(a,b,c){var d=f(),e=RegExp("^("+d[c]+")+","g");if(e.test(a)){for(var g=0,e=a.replace(e,function(a){g=a.length/d[c].length;return""}),j=b;j.parent&&g--;)j=j.parent;if(!j||!j.__bem)j=b;if(j&&j.__bem)return a=j.__bem.block,c=="modifier"&&j.__bem.element&&(a+=d.element+j.__bem.element),a+d[c]+ +e}return a}function a(b,c){b.name&&h(b,c);var e=g("abbreviationUtils");d.each(b.children,function(b){a(b,c);!e.isSnippet(b)&&b.start&&(j=!0)});return b}var e=g("preferences");e.define("bem.elementSeparator","__","Class name\u2019s element separator.");e.define("bem.modifierSeparator","_","Class name\u2019s modifier separator.");e.define("bem.shortElementPrefix","-","Symbol for describing short \u201cblock-element\u201d notation. Class names prefixed with this symbol will be treated as element name for parent\u2018s block name. Each symbol instance traverses one level up in parsed tree for block name lookup. Empty value will disable short notation."); +var j=!1;g("filters").add("bem",function(b,c){j=!1;b=a(b,c);j&&(b=g("filters").apply(b,"html",c));return b})}); +emmet.exec(function(g,d){function f(b,a,e){var f=g("utils"),i=c.get("filter.commentTrigger");if(i=="*"||d.find(i.split(","),function(a){return!!b.attribute(f.trim(a))}))i={node:b,name:b.name(),padding:b.parent?b.parent.padding:"",attr:function(a,c,d){return(a=b.attribute(a))?(c||"")+a+(d||""):""}},a=f.normalizeNewline(a?a(i):""),e=f.normalizeNewline(e?e(i):""),b.start=b.start.replace(//,">"+e)}function h(b,a,c){var j=g("abbreviationUtils");d.each(b.children,function(b){j.isBlock(b)&& +f(b,a,c);h(b,a,c)});return b}var c=g("preferences");c.define("filter.commentAfter",'\n<\!-- /<%= attr("id", "#") %><%= attr("class", ".") %> --\>',"A definition of comment that should be placed after matched element when comment filter is applied. This definition is an ERB-style template passed to _.template() function (see Underscore.js docs for details). In template context, the following properties and functions are availabe:\n
  • attr(name, before, after) \u2013 a function that outputsspecified attribute value concatenated with before and after strings. If attribute doesn't exists, the empty string will be returned.
  • node \u2013 current node (instance of AbbreviationNode)
  • name \u2013 name of current tag
  • padding \u2013 current string padding, can be used for formatting
"); c.define("filter.commentBefore","","A definition of comment that should be placed before matched element when comment filter is applied. For more info, read description of filter.commentAfter property");c.define("filter.commentTrigger","id, class","A comma-separated list of attribute names that should exist in abbreviatoin where comment should be added. If you wish to add comment for every element, set this option to *");g("filters").add("c",function(b){var a= -d.template(c.get("filter.commentBefore")),e=d.template(c.get("filter.commentAfter"));return i(b,a,e)})});emmet.exec(function(g,d){function f(c){return c.replace(/([<>&])/g,function(b,a){return i[a]})}var i={"<":"<",">":">","&":"&"};g("filters").add("e",function b(a){d.each(a.children,function(a){a.start=f(a.start);a.end=f(a.end);a.content=f(a.content);b(a)});return a})}); -emmet.exec(function(g,d){function f(){return g("resources").getVariable("indentation")}function i(b){return b.parent&&!b.parent.parent&&!b.index()}function c(b,a){var c=g("abbreviationUtils");if(a.tag_nl===!0||c.isBlock(b))return!0;if(!b.parent||!a.inline_break)return!1;var f=0;return!!d.find(b.parent.children,function(b){b.isTextNode()||!c.isInline(b)?f=0:c.isInline(b)&&f++;if(f>=a.inline_break)return!0})}g("filters").add("_format",function a(e,h,j){var j=j||0,l=g("abbreviationUtils");d.each(e.children, -function(d){if(l.isSnippet(d)){if(!i(d))d.start=g("utils").getNewline()+d.start}else{d.start=d.end="%s";var e=g("utils"),n=g("abbreviationUtils"),p=n.isUnary(d),e=e.getNewline();if(h.tag_nl!==!1){var q=h.tag_nl===!0&&(h.tag_nl_leaf||d.children.length);if(!d.isTextNode()){if(c(d,h)){if(!i(d)&&(!n.isSnippet(d.parent)||d.index()))d.start=e+d.start;if(n.hasBlockChildren(d)||d.children.length&&c(d.children[0],h)||q&&!p)d.end=e+d.end;if(n.hasTagsInContent(d)||q&&!d.children.length&&!p)d.start+=e+f()}else if(n.isInline(d)&& -d.parent&&g("abbreviationUtils").hasBlockChildren(d.parent)&&!i(d))d.start=e+d.start;else if(n.isInline(d)&&n.hasBlockChildren(d))d.end=e+d.end;d.padding=f()}}}a(d,h,j+1)});return e})}); -emmet.exec(function(g,d){function f(f,c){var b="",a=[],e=c.attributeQuote(),h=c.cursor();d.each(f.attributeList(),function(d){var f=c.attributeName(d.name);switch(f.toLowerCase()){case "id":b+="#"+(d.value||h);break;case "class":b+="."+g("utils").trim(d.value||h).replace(/\s+/g,".");break;default:a.push(":"+f+" => "+e+(d.value||h)+e)}});a.length&&(b+="{"+a.join(", ")+"}");return b}g("filters").add("haml",function c(b,a,e){var e=e||0,h=g("abbreviationUtils");e||(b=g("filters").apply(b,"_format",a)); -d.each(b.children,function(b){if(!h.isSnippet(b)&&b.parent){var d=g("abbreviationUtils"),o=g("utils"),m=f(b,a),n=a.cursor(),d=d.isUnary(b),p=a.self_closing_tag&&d?"/":"",q="",q="%"+a.tagName(b.name());q.toLowerCase()=="%div"&&m&&m.indexOf("{")==-1&&(q="");b.end="";b.start=o.replaceSubstring(b.start,q+m+p+" ",b.start.indexOf("%s"),"%s");!b.children.length&&!d&&(b.start+=n)}c(b,a,e+1)});return b})}); -emmet.exec(function(g,d){function f(f,c){var b=c.attributeQuote(),a=c.cursor();return d.map(f.attributeList(),function(d){return" "+c.attributeName(d.name)+"="+b+(d.value||a)+b}).join("")}g("filters").add("html",function c(b,a,e){var e=e||0,h=g("abbreviationUtils");e||(b=g("filters").apply(b,"_format",a));d.each(b.children,function(b){if(!h.isSnippet(b)&&b.parent){var d=g("abbreviationUtils"),o=g("utils"),m=f(b,a),n=a.cursor(),d=d.isUnary(b),p="",q="";if(!b.isTextNode()){var s=a.tagName(b.name()); -d?(p="<"+s+m+a.selfClosing()+">",b.end=""):(p="<"+s+m+">",q="")}b.start=o.replaceSubstring(b.start,p,b.start.indexOf("%s"),"%s");b.end=o.replaceSubstring(b.end,q,b.end.indexOf("%s"),"%s");!b.children.length&&!d&&b.content.indexOf(n)==-1&&(b.start+=n)}c(b,a,e+1)});return b})}); -emmet.exec(function(g,d){var f=/^\s+/,i=/[\n\r]/g;g("filters").add("s",function b(a){var e=g("abbreviationUtils");d.each(a.children,function(a){if(!e.isSnippet(a))a.start=a.start.replace(f,""),a.end=a.end.replace(f,"");a.start=a.start.replace(i,"");a.end=a.end.replace(i,"");a.content=a.content.replace(i,"");b(a)});return a})}); +d.template(c.get("filter.commentBefore")),e=d.template(c.get("filter.commentAfter"));return h(b,a,e)})});emmet.exec(function(g,d){function f(c){return c.replace(/([<>&])/g,function(b,a){return h[a]})}var h={"<":"<",">":">","&":"&"};g("filters").add("e",function b(a){d.each(a.children,function(a){a.start=f(a.start);a.end=f(a.end);a.content=f(a.content);b(a)});return a})}); +emmet.exec(function(g,d){function f(){return g("resources").getVariable("indentation")}function h(b){return b.parent&&!b.parent.parent&&!b.index()}function c(b,a){var c=g("abbreviationUtils");if(a.tag_nl===!0||c.isBlock(b))return!0;if(!b.parent||!a.inline_break)return!1;var f=0;return!!d.find(b.parent.children,function(b){b.isTextNode()||!c.isInline(b)?f=0:c.isInline(b)&&f++;if(f>=a.inline_break)return!0})}g("filters").add("_format",function a(e,j,i){var i=i||0,l=g("abbreviationUtils");d.each(e.children, +function(d){if(l.isSnippet(d)){if(!h(d))d.start=g("utils").getNewline()+d.start}else{d.start=d.end="%s";var e=g("utils"),n=g("abbreviationUtils"),o=n.isUnary(d),e=e.getNewline();if(j.tag_nl!==!1){var q=j.tag_nl===!0&&(j.tag_nl_leaf||d.children.length);if(!d.isTextNode()){if(c(d,j)){if(!h(d)&&(!n.isSnippet(d.parent)||d.index()))d.start=e+d.start;if(n.hasBlockChildren(d)||d.children.length&&c(d.children[0],j)||q&&!o)d.end=e+d.end;if(n.hasTagsInContent(d)||q&&!d.children.length&&!o)d.start+=e+f()}else if(n.isInline(d)&& +d.parent&&g("abbreviationUtils").hasBlockChildren(d.parent)&&!h(d))d.start=e+d.start;else if(n.isInline(d)&&n.hasBlockChildren(d))d.end=e+d.end;d.padding=f()}}}a(d,j,i+1)});return e})}); +emmet.exec(function(g,d){function f(f,c){var b="",a=[],e=c.attributeQuote(),j=c.cursor();d.each(f.attributeList(),function(d){var f=c.attributeName(d.name);switch(f.toLowerCase()){case "id":b+="#"+(d.value||j);break;case "class":b+="."+g("utils").trim(d.value||j).replace(/\s+/g,".");break;default:a.push(":"+f+" => "+e+(d.value||j)+e)}});a.length&&(b+="{"+a.join(", ")+"}");return b}g("filters").add("haml",function c(b,a,e){var e=e||0,j=g("abbreviationUtils");e||(b=g("filters").apply(b,"_format",a)); +d.each(b.children,function(b){if(!j.isSnippet(b)&&b.parent){var d=g("abbreviationUtils"),p=g("utils"),m=f(b,a),n=a.cursor(),d=d.isUnary(b),o=a.self_closing_tag&&d?"/":"",q="",q="%"+a.tagName(b.name());q.toLowerCase()=="%div"&&m&&m.indexOf("{")==-1&&(q="");b.end="";b.start=p.replaceSubstring(b.start,q+m+o+" ",b.start.indexOf("%s"),"%s");!b.children.length&&!d&&(b.start+=n)}c(b,a,e+1)});return b})}); +emmet.exec(function(g,d){function f(f,c){var b=c.attributeQuote(),a=c.cursor();return d.map(f.attributeList(),function(d){return" "+c.attributeName(d.name)+"="+b+(d.value||a)+b}).join("")}g("filters").add("html",function c(b,a,e){var e=e||0,j=g("abbreviationUtils");e||(b=g("filters").apply(b,"_format",a));d.each(b.children,function(b){if(!j.isSnippet(b)&&b.parent){var d=g("abbreviationUtils"),p=g("utils"),m=f(b,a),n=a.cursor(),d=d.isUnary(b),o="",q="";if(!b.isTextNode()){var s=a.tagName(b.name()); +d?(o="<"+s+m+a.selfClosing()+">",b.end=""):(o="<"+s+m+">",q="")}b.start=p.replaceSubstring(b.start,o,b.start.indexOf("%s"),"%s");b.end=p.replaceSubstring(b.end,q,b.end.indexOf("%s"),"%s");!b.children.length&&!d&&b.content.indexOf(n)==-1&&(b.start+=n)}c(b,a,e+1)});return b})}); +emmet.exec(function(g,d){var f=/^\s+/,h=/[\n\r]/g;g("filters").add("s",function b(a){var e=g("abbreviationUtils");d.each(a.children,function(a){if(!e.isSnippet(a))a.start=a.start.replace(f,""),a.end=a.end.replace(f,"");a.start=a.start.replace(h,"");a.end=a.end.replace(h,"");a.content=a.content.replace(h,"");b(a)});return a})}); emmet.exec(function(g,d){function f(g,c){d.each(g.children,function(b){if(b.content)b.content=b.content.replace(c,"");f(b,c)});return g}g("preferences").define("filter.trimRegexp","[\\s|\\u00a0]*[\\d|#|\\-|*|\\u2022]+\\.?\\s*","Regular expression used to remove list markers (numbers, dashes, bullets, etc.) in t (trim) filter. The trim filter is useful for wrapping with abbreviation lists, pased from other documents (for example, Word documents).");g("filters").add("t",function(d){var c= RegExp(g("preferences").get("filter.trimRegexp"));return f(d,c)})});emmet.exec(function(g,d){var f={"xsl:variable":1,"xsl:with-param":1};g("filters").add("xsl",function c(b){var a=g("abbreviationUtils");d.each(b.children,function(b){if(!a.isSnippet(b)&&(b.name()||"").toLowerCase()in f&&b.children.length)b.start=b.start.replace(/\s+select\s*=\s*(['"]).*?\1/,"");c(b)});return b})}); -emmet.exec(function(g,d){function f(a,b){return Math.round(Math.random()*(b-a)+a)}function i(a,b){for(var c=a.length,e=Math.min(c,b),g=[];g.length3&&b<=6?f(0,1):b>6&&b<=12?f(0,2):f(1,4);d.each(i(d.range(c)),function(b){a[b]+= -","})}g("abbreviationParser").addPreprocessor(function(d){var g=/^(?:lorem|lipsum)(\d*)$/i,l;d.findAll(function(d){if(d._name&&(l=d._name.match(g))){var h=l[1]||30;d._name="";d.data("forceNameResolving",d.isRepeating()||d.attributeList().length);d.data("pasteOverwrites",!0);d.data("paste",function(d){var g=[],j=0;d||(d=a.slice(0,h+1),d.length>5&&(d[4]+=","),j+=d.length,g.push(c(d,".")));for(;j3&&b<=6?f(0,1):b>6&&b<=12?f(0,2):f(1,4);d.each(h(d.range(c)),function(b){a[b]+= +","})}g("abbreviationParser").addPreprocessor(function(d){var g=/^(?:lorem|lipsum)(\d*)$/i,l;d.findAll(function(d){if(d._name&&(l=d._name.match(g))){var j=l[1]||30;d._name="";d.data("forceNameResolving",d.isRepeating()||d.attributeList().length);d.data("pasteOverwrites",!0);d.data("paste",function(d){var g=[],i=0;d||(d=a.slice(0,j+1),d.length>5&&(d[4]+=","),i+=d.length,g.push(c(d,".")));for(;i',tmatch:"tm",tn:'',tname:"tn",call:'',ap:'',api:"",imp:'',inc:'',ch:"","xsl:when":'',wh:"xsl:when",ot:"","if":'',par:'',pare:'',"var":'',vare:'', wp:'',key:'',elem:'',attr:'',attrs:'',cp:'',co:'',val:'',each:'',"for":"each",tex:"",com:"",msg:'',fall:"",num:'',nam:'', pres:'',strip:'',proc:'',sort:'',"choose+":"xsl:choose>xsl:when+xsl:otherwise"}},haml:{filters:"haml","extends":"html"},scss:{"extends":"css"},sass:{"extends":"css"},less:{"extends":"css"},stylus:{"extends":"css"}},"system"); -emmet.define("cm-editor-proxy",function(g,d){var f={"Cmd-E":"expand_abbreviation",Tab:"expand_abbreviation","Cmd-D":"match_pair_outward","Shift-Cmd-D":"match_pair_inward","Shift-Cmd-A":"wrap_with_abbreviation","Ctrl-Alt-Right":"next_edit_point","Ctrl-Alt-Left":"prev_edit_point","Cmd-L":"select_line","Cmd-Shift-M":"merge_lines","Cmd-/":"toggle_comment","Cmd-J":"split_join_tag","Cmd-K":"remove_tag","Shift-Cmd-Y":"evaluate_math_expression","Ctrl-Up":"increment_number_by_1","Ctrl-Down":"decrement_number_by_1", -"Alt-Up":"increment_number_by_01","Alt-Down":"decrement_number_by_01","Ctrl-Alt-Up":"increment_number_by_10","Ctrl-Alt-Down":"decrement_number_by_10","Cmd-.":"select_next_item","Cmd-,":"select_previous_item","Cmd-B":"reflect_css_value",Enter:"insert_formatted_line_break"},i={"text/html":"html","application/xml":"xml","text/xsl":"xsl","text/css":"css","text/x-less":"less"};if(!(/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent)||/Mac/.test(navigator.platform))){var c= -{};d.each(f,function(a,b){c[b.replace("Cmd","Ctrl")]=a});f=c}CodeMirror.defaults.profile="html";var b={context:null,getSelectionRange:function(){var a=this.getCaretPos();return{start:a,end:a+this.getSelection().length}},createSelection:function(a,b){a==b?this.context.setCursor(this.context.posFromIndex(a)):this.context.setSelection(this.context.posFromIndex(a),this.context.posFromIndex(b))},getCurrentLineRange:function(){var a=this.context.getCursor(!0);return{start:this.context.indexFromPos({line:a.line, -ch:0}),end:this.context.indexFromPos({line:a.line,ch:this.context.getLine(a.line).length})}},getCaretPos:function(){return this.context.indexFromPos(this.context.getCursor(!0))},setCaretPos:function(a){this.createSelection(a,a)},getCurrentLine:function(){return this.context.getLine(this.context.getCursor(!0).line)||""},replaceContent:function(a,b,c,f){d.isUndefined(c)&&(c=d.isUndefined(b)?content.length:b);d.isUndefined(b)&&(b=0);var i=g("utils");f||(a=i.padString(a,i.getLinePaddingFromPosition(this.getContent(), -b)));var f=g("tabStops").extract(a,{escape:function(a){return a}}),a=f.text,o=f.tabstops[0];o?(o.start+=b,o.end+=b):o={start:a.length+b,end:a.length+b};var m=this;this.context.compoundChange(function(){m.context.replaceRange(a,m.context.posFromIndex(b),m.context.posFromIndex(c));m.createSelection(o.start,o.end)})},getContent:function(){return this.context.getValue()},getSyntax:function(){var a=this.context.getOption("mode");a in i&&(a=i[a]);var b=this.getCaretPos();g("resources").hasSyntax(a)||(a= -"html");if(a=="html"){var c=g("html_matcher").getTags(this.getContent(),b);c&&c[0]&&c[0].type=="tag"&&c[0].name.toLowerCase()=="style"&&c[0].end<=b&&c[1].start>=b&&(a="css")}return a},getProfileName:function(){if(this.context.getOption("profile"))return this.context.getOption("profile");switch(this.getSyntax()){case "xml":case "xsl":return"xml";case "html":var a=g("resources").getVariable("profile");a||(a=this.getContent().search(/]+XHTML/i)!=-1?"xhtml":"html");return a}return"xhtml"}, -prompt:function(a){return prompt(a)},getSelection:function(){return this.context.getSelection()||""},getFilePath:function(){return location.href},setupContext:function(a){this.context=a;var b="\t";a.getOption("indentWithTabs")||(b=g("utils").repeatString(" ",a.getOption("indentUnit")));g("resources").setVariable("indentation",b)}};if(!CodeMirror.defaults.extraKeys)CodeMirror.defaults.extraKeys={};d.each(f,function(a,c){var d="emmet."+a;CodeMirror.commands[d]||(CodeMirror.commands[d]=function(c){a:{b.setupContext(c); -try{g("actions").run(a,b);(a=="next_edit_point"||a=="prev_edit_point")&&c.replaceSelection("");break a}catch(d){}throw CodeMirror.Pass;}return!0});CodeMirror.defaults.extraKeys[c]=d});return b}); \ No newline at end of file +emmet.define("cm-editor-proxy",function(g,d){var f=/AppleWebKit/.test(navigator.userAgent)&&/Mobile\/\w+/.test(navigator.userAgent)||/Mac/.test(navigator.platform),h={"text/html":"html","application/xml":"xml","text/xsl":"xsl","text/css":"css","text/x-less":"less"};CodeMirror.defaults.profile="html";var c={context:null,getSelectionRange:function(){var b=this.getCaretPos();return{start:b,end:b+this.getSelection().length}},createSelection:function(b,a){b==a?this.context.setCursor(this.context.posFromIndex(b)): +this.context.setSelection(this.context.posFromIndex(b),this.context.posFromIndex(a))},getCurrentLineRange:function(){var b=this.context.getCursor(!0);return{start:this.context.indexFromPos({line:b.line,ch:0}),end:this.context.indexFromPos({line:b.line,ch:this.context.getLine(b.line).length})}},getCaretPos:function(){return this.context.indexFromPos(this.context.getCursor(!0))},setCaretPos:function(b){this.createSelection(b,b)},getCurrentLine:function(){return this.context.getLine(this.context.getCursor(!0).line)|| +""},replaceContent:function(b,a,c,f){d.isUndefined(c)&&(c=d.isUndefined(a)?content.length:a);d.isUndefined(a)&&(a=0);var i=g("utils");f||(b=i.padString(b,i.getLinePaddingFromPosition(this.getContent(),a)));var f=g("tabStops").extract(b,{escape:function(a){return a}}),b=f.text,h=f.tabstops[0];h?(h.start+=a,h.end+=a):h={start:b.length+a,end:b.length+a};var p=this;this.context.compoundChange(function(){p.context.replaceRange(b,p.context.posFromIndex(a),p.context.posFromIndex(c));p.createSelection(h.start, +h.end)})},getContent:function(){return this.context.getValue()},getSyntax:function(){var b=this.context.getOption("mode");b in h&&(b=h[b]);var a=this.getCaretPos();g("resources").hasSyntax(b)||(b="html");if(b=="html"){var c=g("html_matcher").getTags(this.getContent(),a);c&&c[0]&&c[0].type=="tag"&&c[0].name.toLowerCase()=="style"&&c[0].end<=a&&c[1].start>=a&&(b="css")}return b},getProfileName:function(){if(this.context.getOption("profile"))return this.context.getOption("profile");switch(this.getSyntax()){case "xml":case "xsl":return"xml"; +case "html":var b=g("resources").getVariable("profile");b||(b=this.getContent().search(/]+XHTML/i)!=-1?"xhtml":"html");return b}return"xhtml"},prompt:function(b){return prompt(b)},getSelection:function(){return this.context.getSelection()||""},getFilePath:function(){return location.href},setupContext:function(b){this.context=b;var a="\t";b.getOption("indentWithTabs")||(a=g("utils").repeatString(" ",b.getOption("indentUnit")));g("resources").setVariable("indentation",a)},addAction:function(b, +a){var d="emmet."+b;CodeMirror.commands[d]||(CodeMirror.commands[d]=function(a){a:{c.setupContext(a);try{g("actions").run(b,c);(b=="next_edit_point"||b=="prev_edit_point")&&a.replaceSelection("");break a}catch(d){}throw CodeMirror.Pass;}return!0});if(a){if(!CodeMirror.defaults.extraKeys)CodeMirror.defaults.extraKeys={};f||(a=a.replace("Cmd","Ctrl"));CodeMirror.defaults.extraKeys[a]=d}}};d.each({"Cmd-E":"expand_abbreviation",Tab:"expand_abbreviation_with_tab","Cmd-D":"match_pair_outward","Shift-Cmd-D":"match_pair_inward", +"Shift-Cmd-A":"wrap_with_abbreviation","Ctrl-Alt-Right":"next_edit_point","Ctrl-Alt-Left":"prev_edit_point","Cmd-L":"select_line","Cmd-Shift-M":"merge_lines","Cmd-/":"toggle_comment","Cmd-J":"split_join_tag","Cmd-K":"remove_tag","Shift-Cmd-Y":"evaluate_math_expression","Ctrl-Up":"increment_number_by_1","Ctrl-Down":"decrement_number_by_1","Alt-Up":"increment_number_by_01","Alt-Down":"decrement_number_by_01","Ctrl-Alt-Up":"increment_number_by_10","Ctrl-Alt-Down":"decrement_number_by_10","Cmd-.":"select_next_item", +"Cmd-,":"select_previous_item","Cmd-B":"reflect_css_value",Enter:"insert_formatted_line_break"},c.addAction);return c}); \ No newline at end of file