Current File : /home/pacjaorg/public_html/kmm/media/vendor/codemirror/mode/mumps/mumps.min.js |
(function(i){typeof exports=="object"&&typeof module=="object"?i(require("../../lib/codemirror")):typeof define=="function"&&define.amd?define(["../../lib/codemirror"],i):i(CodeMirror)})(function(i){"use strict";i.defineMode("mumps",function(){function o(e){return new RegExp("^(("+e.join(")|(")+"))\\b","i")}var t=new RegExp("^[\\+\\-\\*/&#!_?\\\\<>=\\'\\[\\]]"),$=new RegExp("^(('=)|(<=)|(>=)|('>)|('<)|([[)|(]])|(^$))"),c=new RegExp("^[\\.,:]"),l=new RegExp("[()]"),d=new RegExp("^[%A-Za-z][A-Za-z0-9]*"),f=["break","close","do","else","for","goto","halt","hang","if","job","kill","lock","merge","new","open","quit","read","set","tcommit","trollback","tstart","use","view","write","xecute","b","c","d","e","f","g","h","i","j","k","l","m","n","o","q","r","s","tc","tro","ts","u","v","w","x"],u=["\\$ascii","\\$char","\\$data","\\$ecode","\\$estack","\\$etrap","\\$extract","\\$find","\\$fnumber","\\$get","\\$horolog","\\$io","\\$increment","\\$job","\\$justify","\\$length","\\$name","\\$next","\\$order","\\$piece","\\$qlength","\\$qsubscript","\\$query","\\$quit","\\$random","\\$reverse","\\$select","\\$stack","\\$test","\\$text","\\$translate","\\$view","\\$x","\\$y","\\$a","\\$c","\\$d","\\$e","\\$ec","\\$es","\\$et","\\$f","\\$fn","\\$g","\\$h","\\$i","\\$j","\\$l","\\$n","\\$na","\\$o","\\$p","\\$q","\\$ql","\\$qs","\\$r","\\$re","\\$s","\\$st","\\$t","\\$tr","\\$v","\\$z"],a=o(u),m=o(f);function s(e,n){e.sol()&&(n.label=!0,n.commandMode=0);var r=e.peek();return r==" "||r==" "?(n.label=!1,n.commandMode==0?n.commandMode=1:(n.commandMode<0||n.commandMode==2)&&(n.commandMode=0)):r!="."&&n.commandMode>0&&(r==":"?n.commandMode=-1:n.commandMode=2),(r==="("||r===" ")&&(n.label=!1),r===";"?(e.skipToEnd(),"comment"):e.match(/^[-+]?\d+(\.\d+)?([eE][-+]?\d+)?/)?"number":r=='"'?e.skipTo('"')?(e.next(),"string"):(e.skipToEnd(),"error"):e.match($)||e.match(t)?"operator":e.match(c)?null:l.test(r)?(e.next(),"bracket"):n.commandMode>0&&e.match(m)?"variable-2":e.match(a)?"builtin":e.match(d)?"variable":r==="$"||r==="^"?(e.next(),"builtin"):r==="@"?(e.next(),"string-2"):/[\w%]/.test(r)?(e.eatWhile(/[\w%]/),"variable"):(e.next(),"error")}return{startState:function(){return{label:!1,commandMode:0}},token:function(e,n){var r=s(e,n);return n.label?"tag":r}}}),i.defineMIME("text/x-mumps","mumps")});