You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1 line
2.1 KiB
1 line
2.1 KiB
"use strict";(self.webpackChunkjupyter_web=self.webpackChunkjupyter_web||[]).push([[402],{70402:(a,l,t)=>{t.r(l),t.d(l,{ebnf:()=>r});var i_slash=0,i_parenthesis=1,n_comment=0,n__string=1,n_characterClass=2;const r={name:"ebnf",startState:function(){return{stringType:null,commentType:null,braced:0,lhs:!0,localState:null,stack:[],inDefinition:!1}},token:function(e,c){if(e){switch(0===c.stack.length&&('"'==e.peek()||"'"==e.peek()?(c.stringType=e.peek(),e.next(),c.stack.unshift(n__string)):e.match("/*")?(c.stack.unshift(n_comment),c.commentType=i_slash):e.match("(*")&&(c.stack.unshift(n_comment),c.commentType=i_parenthesis)),c.stack[0]){case n__string:for(;c.stack[0]===n__string&&!e.eol();)e.peek()===c.stringType?(e.next(),c.stack.shift()):"\\"===e.peek()?(e.next(),e.next()):e.match(/^.[^\\\"\']*/);return c.lhs?"property":"string";case n_comment:for(;c.stack[0]===n_comment&&!e.eol();)c.commentType===i_slash&&e.match("*/")||c.commentType===i_parenthesis&&e.match("*)")?(c.stack.shift(),c.commentType=null):e.match(/^.[^\*]*/);return"comment";case n_characterClass:for(;c.stack[0]===n_characterClass&&!e.eol();)e.match(/^[^\]\\]+/)||e.match(".")||c.stack.shift();return"operator"}var h=e.peek();switch(h){case"[":return e.next(),c.stack.unshift(n_characterClass),"bracket";case":":case"|":case";":return e.next(),"operator";case"%":if(e.match("%%"))return"header";if(e.match(/[%][A-Za-z]+/))return"keyword";if(e.match(/[%][}]/))return"bracket";break;case"/":if(e.match(/[\/][A-Za-z]+/))return"keyword";case"\\":if(e.match(/[\][a-z]+/))return"string.special";case".":if(e.match("."))return"atom";case"*":case"-":case"+":case"^":if(e.match(h))return"atom";case"$":if(e.match("$$"))return"builtin";if(e.match(/[$][0-9]+/))return"variableName.special";case"<":if(e.match(/<<[a-zA-Z_]+>>/))return"builtin"}return e.match("//")?(e.skipToEnd(),"comment"):e.match("return")?"operator":e.match(/^[a-zA-Z_][a-zA-Z0-9_]*/)?e.match(/(?=[\(.])/)?"variable":e.match(/(?=[\s\n]*[:=])/)?"def":"variableName.special":-1!=["[","]","(",")"].indexOf(e.peek())?(e.next(),"bracket"):(e.eatSpace()||e.next(),null)}}}}}]); |