Current File : /home/pacjaorg/public_html/kmm/media/vendor/codemirror/mode/q/q.min.js |
(function(c){typeof exports=="object"&&typeof module=="object"?c(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],c):c(CodeMirror)})(function(c){"use strict";c.defineMode("q",function(f){var p=f.indentUnit,r,x=v(["abs","acos","aj","aj0","all","and","any","asc","asin","asof","atan","attr","avg","avgs","bin","by","ceiling","cols","cor","cos","count","cov","cross","csv","cut","delete","deltas","desc","dev","differ","distinct","div","do","each","ej","enlist","eval","except","exec","exit","exp","fby","fills","first","fkeys","flip","floor","from","get","getenv","group","gtime","hclose","hcount","hdel","hopen","hsym","iasc","idesc","if","ij","in","insert","inter","inv","key","keys","last","like","list","lj","load","log","lower","lsq","ltime","ltrim","mavg","max","maxs","mcount","md5","mdev","med","meta","min","mins","mmax","mmin","mmu","mod","msum","neg","next","not","null","or","over","parse","peach","pj","plist","prd","prds","prev","prior","rand","rank","ratios","raze","read0","read1","reciprocal","reverse","rload","rotate","rsave","rtrim","save","scan","select","set","setenv","show","signum","sin","sqrt","ss","ssr","string","sublist","sum","sums","sv","system","tables","tan","til","trim","txf","type","uj","ungroup","union","update","upper","upsert","value","var","view","views","vs","wavg","where","where","while","within","wj","wj1","wsum","xasc","xbar","xcol","xcols","xdesc","xexp","xgroup","xkey","xlog","xprev","xrank"]),s=/[|/&^!+:\\\-*%$=~#;@><,?_\'\"\[\(\]\)\s{}]/;function v(e){return new RegExp("^("+e.join("|")+")$")}function l(e,n){var t=e.sol(),i=e.next();if(r=null,t){if(i=="/")return(n.tokenize=k)(e,n);if(i=="\\")return e.eol()||/\s/.test(e.peek())?(e.skipToEnd(),/^\\\s*$/.test(e.current())?(n.tokenize=h)(e):n.tokenize=l,"comment"):(n.tokenize=l,"builtin")}if(/\s/.test(i))return e.peek()=="/"?(e.skipToEnd(),"comment"):"whitespace";if(i=='"')return(n.tokenize=a)(e,n);if(i=="`")return e.eatWhile(/[A-Za-z\d_:\/.]/),"symbol";if(i=="."&&/\d/.test(e.peek())||/\d/.test(i)){var o=null;return e.backUp(1),e.match(/^\d{4}\.\d{2}(m|\.\d{2}([DT](\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)?)?)/)||e.match(/^\d+D(\d{2}(:\d{2}(:\d{2}(\.\d{1,9})?)?)?)/)||e.match(/^\d{2}:\d{2}(:\d{2}(\.\d{1,9})?)?/)||e.match(/^\d+[ptuv]{1}/)?o="temporal":(e.match(/^0[NwW]{1}/)||e.match(/^0x[\da-fA-F]*/)||e.match(/^[01]+[b]{1}/)||e.match(/^\d+[chijn]{1}/)||e.match(/-?\d*(\.\d*)?(e[+\-]?\d+)?(e|f)?/))&&(o="number"),o&&(!(i=e.peek())||s.test(i))?o:(e.next(),"error")}return/[A-Za-z]|\./.test(i)?(e.eatWhile(/[A-Za-z._\d]/),x.test(e.current())?"keyword":"variable"):/[|/&^!+:\\\-*%$=~#;@><\.,?_\']/.test(i)||/[{}\(\[\]\)]/.test(i)?null:"error"}function k(e,n){return e.skipToEnd(),/\/\s*$/.test(e.current())?(n.tokenize=m)(e,n):n.tokenize=l,"comment"}function m(e,n){var t=e.sol()&&e.peek()=="\\";return e.skipToEnd(),t&&/^\\\s*$/.test(e.current())&&(n.tokenize=l),"comment"}function h(e){return e.skipToEnd(),"comment"}function a(e,n){for(var t=!1,i,o=!1;i=e.next();){if(i=='"'&&!t){o=!0;break}t=!t&&i=="\\"}return o&&(n.tokenize=l),"string"}function u(e,n,t){e.context={prev:e.context,indent:e.indent,col:t,type:n}}function d(e){e.indent=e.context.indent,e.context=e.context.prev}return{startState:function(){return{tokenize:l,context:null,indent:0,col:0}},token:function(e,n){e.sol()&&(n.context&&n.context.align==null&&(n.context.align=!1),n.indent=e.indentation());var t=n.tokenize(e,n);if(t!="comment"&&n.context&&n.context.align==null&&n.context.type!="pattern"&&(n.context.align=!0),r=="(")u(n,")",e.column());else if(r=="[")u(n,"]",e.column());else if(r=="{")u(n,"}",e.column());else if(/[\]\}\)]/.test(r)){for(;n.context&&n.context.type=="pattern";)d(n);n.context&&r==n.context.type&&d(n)}else r=="."&&n.context&&n.context.type=="pattern"?d(n):/atom|string|variable/.test(t)&&n.context&&(/[\}\]]/.test(n.context.type)?u(n,"pattern",e.column()):n.context.type=="pattern"&&!n.context.align&&(n.context.align=!0,n.context.col=e.column()));return t},indent:function(e,n){var t=n&&n.charAt(0),i=e.context;if(/[\]\}]/.test(t))for(;i&&i.type=="pattern";)i=i.prev;var o=i&&t==i.type;return i?i.type=="pattern"?i.col:i.align?i.col+(o?0:1):i.indent+(o?0:p):0}}}),c.defineMIME("text/x-q","q")});