1(function(a){if(typeof exports=="object"&&typeof module=="object")a(require("../../lib/codemirror"));else if(typeof define=="function"&&define.amd)define(["../../lib/codemirror"],a);else a(CodeMirror)})(function(a){"use strict";a.defineMode("smarty",function(b,c){var d=c.rightDelimiter||"}";var e=c.leftDelimiter||"{";var f=c.version||2;var g=a.getMode(b,c.baseMode||"null");var h=["debug","extends","function","include","literal"];var i={operatorChars:/[+\-*&%=<>!?]/,validIdentifier:/[a-zA-Z0-9_]/,stringChar:/['"]/};var j;function k(a,b){j=b;return a}function l(a,b,c){b.tokenize=c;return c(a,b)}function m(a,b){if(b==null)b=a.pos;return f===3&&e=="{"&&(b==a.string.length||/\s/.test(a.string.charAt(b)))}function n(a,b){var c=a.string;for(var f=a.pos;;){var h=c.indexOf(e,f);f=h+e.length;if(h==-1||!m(a,h+e.length))break}if(h==a.pos){a.match(e);if(a.eat("*")){return l(a,b,q("comment","*"+d))}else{b.depth++;b.tokenize=o;j="startTag";return"tag"}}if(h>-1)a.string=c.slice(0,h);var i=g.token(a,b.base);if(h>-1)a.string=c;return i}function o(a,b){if(a.match(d,true)){if(f===3){b.depth--;if(b.depth<=0){b.tokenize=n}}else{b.tokenize=n}return k("tag",null)}if(a.match(e,true)){b.depth++;return k("tag","startTag")}var c=a.next();if(c=="$"){a.eatWhile(i.validIdentifier);return k("variable-2","variable")}else if(c=="|"){return k("operator","pipe")}else if(c=="."){return k("operator","property")}else if(i.stringChar.test(c)){b.tokenize=p(c);return k("string","string")}else if(i.operatorChars.test(c)){a.eatWhile(i.operatorChars);return k("operator","operator")}else if(c=="["||c=="]"){return k("bracket","bracket")}else if(c=="("||c==")"){return k("bracket","operator")}else if(/\d/.test(c)){a.eatWhile(/\d/);return k("number","number")}else{if(b.last=="variable"){if(c=="@"){a.eatWhile(i.validIdentifier);return k("property","property")}else if(c=="|"){a.eatWhile(i.validIdentifier);return k("qualifier","modifier")}}else if(b.last=="pipe"){a.eatWhile(i.validIdentifier);return k("qualifier","modifier")}else if(b.last=="whitespace"){a.eatWhile(i.validIdentifier);return k("attribute","modifier")}if(b.last=="property"){a.eatWhile(i.validIdentifier);return k("property",null)}else if(/\s/.test(c)){j="whitespace";return null}var g="";if(c!="/"){g+=c}var l=null;while(l=a.eat(i.validIdentifier)){g+=l}for(var m=0,o=h.length;m<o;m++){if(h[m]==g){return k("keyword","keyword")}}if(/\s/.test(c)){return null}return k("tag","tag")}}function p(a){return function(b,c){var d=null;var e=null;while(!b.eol()){e=b.peek();if(b.next()==a&&d!=="\\"){c.tokenize=o;break}d=e}return"string"}}function q(a,b){return function(c,d){while(!c.eol()){if(c.match(b)){d.tokenize=n;break}c.next()}return a}}return{startState:function(){return{base:a.startState(g),tokenize:n,last:null,depth:0}},copyState:function(b){return{base:a.copyState(g,b.base),tokenize:b.tokenize,last:b.last,depth:b.depth}},innerMode:function(a){if(a.tokenize==n)return{mode:g,state:a.base}},token:function(a,b){var c=b.tokenize(a,b);b.last=j;return c},indent:function(b,c,d){if(b.tokenize==n&&g.indent)return g.indent(b.base,c,d);else return a.Pass},blockCommentStart:e+"*",blockCommentEnd:"*"+d}});a.defineMIME("text/x-smarty","smarty")});
2//# sourceMappingURL=smarty.min.js.map