i7iUm dZddlZddlmZmZmZmZmZddlm Z m Z m Z m Z m Z mZmZmZmZmZddlmZgdZGddeZGd d eZGd d eZGd deZGddeZGddeZGddeZy)z pygments.lexers.basic ~~~~~~~~~~~~~~~~~~~~~ Lexers for BASIC like languages (other than VB.net). :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS. :license: BSD, see LICENSE for details. N) RegexLexerbygroupsdefaultwordsinclude) CommentErrorKeywordNameNumber PunctuationOperatorStringText Whitespace)_vbscript_builtins)BlitzBasicLexer BlitzMaxLexer MonkeyLexerCbmBasicV2Lexer QBasicLexer VBScriptLexer BBCBasicLexerc eZdZdZdZdZddgZdgZdgZdZ d Z d Z d Z d Z d e de de de d ZedzZej"ej$zZdefdeeefdej0fdej2fdej6dfdej:fdej:fdej<fdej>fdej@fde de!fd e"fd!e#jHfd"ejJfd#e d$ee&jNee"e#jPfd%e d&e d$ee&jNee&jRfeee#jTee&jVe!ee"ee&jVe#jPee&jVee" feee#jXee&jVe!ee"ee&jVe#jPee&jV fd'e d$ee&jNee#jPfd(e&jVfd)e&jZfd*e&j\fe/d+d,d,-e#j`fe/d.d,d,-e&jNfd e d$e#jXfgd/ej6fd0ej6d1fd2ej6fgd3Z1y4)5rz# For BlitzMax source code. BlitzMaxhttp://blitzbasic.comblitzmaxbmaxz*.bmxz text/x-bmxz1.4z\b(Shl|Shr|Sar|Mod)\bz @{1,2}|[!#$%]z&\b(Int|Byte|Short|Float|Double|Long)\b [a-z_]\w*(z)(?:(?:([ \t]*)(z?)|([ \t]*:[ \t]*\b(?:Shl|Shr|Sar|Mod)\b)|([ \t]*)(:)([ \t]*)(?:z|(z)))(?:([ \t]*)(Ptr))?)z?((?:[ \t]|\.\.\n)*)([(])\s+z (\.\.)(\n)z'.*?\nz*([ \t]*)\bRem\n(\n|.)*?\s*\bEnd([ \t]*)Rem"string[0-9]+\.[0-9]*(?!\.)z\.[0-9]*(?!\.)[0-9]+ \$[0-9a-f]+\%[10]+z(?:(?:(:)?([ \t]*)(:?z"|([+\-*/&|~]))|Or|And|Not|[=<>^]))z [(),.:\[\]]z (?:#[\w \t]*)z(?:\?[\w \t]*)z\b(New)\b([ \t]?)([(]?)()z$\b(Import|Framework|Module)([ \t]+)(\.z\b(Type|Extends)([ \t]+)(z \b(Ptr)\bz#\b(Pi|True|False|Null|Self|Super)\bz\b(Local|Global|Const|Field)\b)TNullMethodExceptionTNullFunctionExceptionTNullObjectExceptionTArrayBoundsExceptionTRuntimeException\bprefixsuffix)EStrict SuperStrictModule ModuleInfoEndReturnContinueExitPublicPrivateVarVarPtrChrLenAscSizeOfSgnAbsMinMaxNewReleaseDeleteIncbin IncbinPtr IncbinLen FrameworkIncludeImportExtern EndExternFunction EndFunctionTypeEndTypeExtendsMethod EndMethodAbstractFinalIfThenElseElseIfEndIfForToNextStepEachInWhileWendEndWhileRepeatUntilForeverSelectCaseDefault EndSelectTryCatchEndTryThrowAssertGotoDefDataReadData RestoreData"""C?#popz[^"]+rootr#N)2__name__ __module__ __qualname____doc__nameurlaliases filenames mimetypes version_added bmax_vopwords bmax_sktypes bmax_lktypes bmax_namebmax_var bmax_funcre MULTILINE IGNORECASEflagsrrrrSingle MultilinerDoubler FloatIntegerHexBinrr r LabelPreprocr ReservedClass NamespacerRrTVariableConstant Declarationr Exceptiontokens^/mnt/ssd/data/python-lab/ChefSystem/venv/lib/python3.12/site-packages/pygments/lexers/basic.pyrrs  D !C6"G IIM,M#L++7.9+E[]H77I LL2== (EZ HT:6 7  ' :G> S (-U <   )A  .q9 vFMM " V]]F + v}} % w@FrrceZdZdZdZdZgdZddgZdgZdZ d Z d Z d e d e d e dZ e je jzZdefdej&fdej*dfdej.fdej.fdej0fdej2fdej4fedddefdefdefde dej>fde de e!jDeejFfd e de e!jDeej>fd!e d"e eeeeejFfde d#e ejHee!jJeeeejFee fd$e e e!jDeejHee!jJeeeejF fd%e de e!jDeejFfd&e!jLfd'e!jNfed(dde!jDfe e ejPee!jJeeeejFfgd)ej*fd*ej*d+fd,ej*fgd-Z)y.)/rz% For BlitzBasic source code. BlitzBasicr) blitzbasicb3dbplusz*.bbz*.declsz text/x-bb2.0z @{1,2}|[#$%]z[a-z]\w*r z )(?:([ \t]*)(z)|([ \t]*)([.])([ \t]*)(?:(z)))?r!z;.*?\nr"r#r$\.[0-9]+(?!\.)r%r&r')ShlShrSarModOrAndNotrDrCHandleIntrStrFirstLastBeforeAfterr/r0z([+\-*/~=<>^])z [(),:\[\]\\]z \.([ \t]*)(r(z\b(New)\b([ \t]+)(z\b(Gosub|Goto)\b([ \t]+)(z"\b(Object)\b([ \t]*)([.])([ \t]*)(z)\bz\b([ \t]*)(\()z\b(Function)\b([ \t]+)z\b(Type)([ \t]+)(z\b(Pi|True|False|Null)\bz"\b(Local|Global|Const|Field|Dim)\b)#r7r8r:r?r@rArGrIInsertrNrRrTr[r\r]r^r_r`rarbrcEachrerfrhrirjrkrlrmrtGosubDataReadRestorerxryrz[^"\n]+r{N)*r}r~rrrrrrrr bb_sktypesbb_namebb_varrrrrrrrrrr rrrrrrr r rrr rrrRrTrrrrrrrrros D !C,G#I IM JG7)= 4OPWyX\]F LL2== (EZ  ' &-- * $fll 3  -  ' VZZ (  $ 8 /    ) k *G9A & 3"7)1 - g&& DJJ ? A)'! 4 g&& DJJ ? A27)3 ? h KTZZ P R6(. ) dmmZz; $**j+G H'vh / g&& DMM:w|| +z4::G H"'! , g&& DJJ ? A)'*:*: ; 2G4G4G H < EJRW Y     XdmmZ(+z4::O Pc3 jFMM " V]]F +  ' k:Frrc ReZdZdZdZdgZdgZdgZdZdZ dZ d Z d Z d Z d Zd Zd Zej$Zgdefdefdej,dfdej.fdej.dfdej2dfdej6fdej6fdej8fdej:fdej<fdedej@fdejBfde"jFfde"jHfd e"jHjJfd!e"jLfd"e'ejPee"jPefd#ejBfd$e'ejRedfd%e'ejBed&fd'e'ejBed(fd)ejBfd*ejBfd+ejBfd,e*fd-e+fd.e+jXfd/e*fe de"jLfe de"jZfe de"j\fd0e de"jZfd1e*d&fdefd2e*dfd3e*d4fged5e"jPfedej@fe de"j^fd6e'e*eej8ee*fd7ed4fd8e*d9fd:e*d4fd;ed4fe0d4g e de"jLfe de"j\feej@fdefd1e*d&fdejbfdej2d4fgd?ej,d9fd@ej,d4fd;ej,fdAej,fgdBZ2yC)Drz! For Monkey source code. Monkeymonkeyz*.monkeyz text/x-monkeyz%https://blitzresearch.itch.io/monkeyx1.6rz[A-Z]\w*z[A-Z_][A-Z0-9_]*z [a-z0-9_]*z+(?:Int|Float|String|Bool|Object|Array|Void)z[?%#$]r!z'.*z (?i)^#rem\bcommentz6(?i)^(?:#If|#ElseIf|#Else|#EndIf|#End|#Print|#Error)\bz^# variablesr"r#r$rr%z\$[0-9a-fA-Z]+r'r/z(?i)\b(?:Try|Catch|Throw)\b Throwablez(?i)\b(?:Null|True|False)\bz(?i)\b(?:Self|Super)\bz\b(?:HOST|LANG|TARGET|CONFIG)\bz(?i)^(Import)(\s+)(.*)(\n)z(?i)^Strict\b.*\nz#(?i)(Const|Local|Global|Field)(\s+)z1(?i)(New|Class|Interface|Extends|Implements)(\s+) classnamez(?i)(Function|Method)(\s+)funcnamezB(?i)(?:End|Return|Public|Private|Extern|Property|Final|Abstract)\bz(?i)(?:If|Then|Else|ElseIf|EndIf|Select|Case|Default|While|Wend|Repeat|Until|Forever|For|To|Until|Step|EachIn|Next|Exit|Continue)(?=\s)z(?i)\b(?:Module|Inline)\bz[\[\]]z.<=|>=|<>|\*=|/=|\+=|-=|&=|~=|\|=|[-&*/^+=<>|~]z(?i)(?:Not|Mod|Shl|Shr|And|Or)z [(){}!#,.:]z(?i):z\(z\)rzr)z(\[)(\s*)(\d*)(\s*)(\])z\s+(?!<)\n,z[^"~]+z~q|~n|~r|~t|~z|~~z (?i)^#rem.*?z (?i)^#end.*?z.+)r|rrrr#rN)3r}r~rrrrrrrr name_variable name_function name_constant name_class name_module keyword_typekeyword_type_specialrrrrrrrrrr rrrrr rTrr rBuiltinPseudorrrrr rWordrRrrrEscaperrrrrrs DjG I !I 1CM MM'MJKAL$ LLE: Z : W  : W.. : : G X: GOO[ 1: &-- *: %fll 3:  -:  ':  +!: " $#: &<. #W\\ 2': *,W-=-= >+: ,4>> *-: 0,T\\ :1: 2' (;(; <3: 40 ?5: 8+ g''T^^Z P R9: <"7#3#3 4=: >4 g)): 6  E?: BB g&& 3[ BC: F+ g&& 3Z AG: J"#*#3#3 5K: P% '.&6&6  8Q: ^*7+;+; <_: b $c: f? Ig: h/ >i: j[ )k: nr "DMM 2o: pr "DMM 2q: rr "DMM 2s: x]O2 & 6 ; , Z K - K (   R $.. 1b !7<< 0 B  , ' k:v~~z; W Y*f - ; ( ; ' J ' FO  r "DMM 2r "DMM 2%& 6 Z ; , ; ( FO  & !6== 1 6==& ) g// 9 g// 8 G%% & G%% &  eFrrc eZdZdZdZdgZdgZdZdZe jZ dde jfd efd ej fd ej"fd ej&fd efdej*fdefdej0fdefdefg iZdZy)rz# For CBM BASIC V2 sources. z CBM BASIC V2cbmbas*.basz-https://en.wikipedia.org/wiki/Commodore_BASICrr|zrem.*\nr!znew|run|end|for|to|next|step|go(to|sub)?|on|return|stop|cont|if|then|input#?|read|wait|load|save|verify|poke|sys|print#?|list|clr|cmd|open|close|get#?zdata|restore|dim|let|def|fnzktab|spc|sgn|int|abs|usr|fre|pos|sqr|rnd|log|exp|cos|sin|tan|atn|peek|len|val|asc|(str|chr|left|right|mid)\$z [-+*/^<>=]z not|and|orz "[^"\n]*.z\d+|[-+]?\d*\.\d*(e[-+]?\d+)?z[(),:;]z\w+[$%]?c2tjd|ryy)Nz^\d+g?)rmatchtexts r analyse_textzCbmBasicV2Lexer.analyse_text\s 88GT " #rN)r}r~rrrrrrrrrrrrrr rrr rrrrr rr rrrrrrr=s DjG I 9CM MME   ( Z /070@0@ B,W-@-@ A=>Bll L H % HMM * 6 " -v|| <  % $  F&rrcLeZdZdZdZddgZddgZdgZdZd Z d Z d Z d Z d Z dZdZdefdej"fdeej"ej(ej"ej,fdeej"ej(ej"fdej.j0fdej,fdej4fdeej8ej"ej8fdeej:ej"ej.ej"efdeej:ej"ej.ej"ej.j0fdeej:ej"ej.j0fdeej"ej.j0ej"efdeej8ej"ej(fdeej8ej"ej(fededed ed!ed"ed#d$ej.j0fd%ej(fd&e jBfd'e jBfd(e jDjFfd(e jDfd)efd*e$fd+ej.j0fgd,jKd-jMe'e(jRe ej:fgd,jKd-jMe'e(jRe ej8fgd,jKd-jMe'e(jRe ejTfgd,jKd-jMe'e(jRe ejVfgd.jKd-jMe'e(jReej8fgd.jKd-jMeefgd/Z,d0Z-y1)2rz! For QBasic source code. QBasicqbasicbasicz*.BASrz text/basicz$https://en.wikipedia.org/wiki/QBasicr)DATALET)UABSASCATNCDBLCHR$CINTCLNGzCOMMAND$COSCSNGCSRLINCVDCVDMBFCVICVLCVSCVSMBFDATE$zENVIRON$EOFERDEVzERDEV$ERLERREXPFILEATTRFIXFREFREEFILEzHEX$INKEY$INPzINPUT$INSTRINTzIOCTL$LBOUNDzLCASE$LEFT$LENLOCLOFLOGLPOSzLTRIM$MID$zMKD$zMKDMBF$zMKI$zMKL$zMKS$zMKSMBF$zOCT$PEEKPENPLAYPMAPPOINTPOSRIGHT$RNDzRTRIM$SADDSCREENSEEKSETMEMSGNSINzSPACE$SPCSQRSTICKSTR$STRIGSTRING$TABTANTIME$TIMERUBOUNDzUCASE$VALVARPTRzVARPTR$VARSEG)$DYNAMICz$INCLUDE$STATIC)ANDEQVIMPNOTORXOR)BEEPBLOADBSAVECALLz CALL ABSOLUTEzCALL INTERRUPTCALLSCHAINCHDIRCIRCLECLEARCLOSECLSCOLORCOMCOMMONCONSTrrDECLAREzDEF FNzDEF SEGDEFDBLDEFINTDEFLNGDEFSNGDEFSTRDEFDIMDOLOOPDRAWENDENVIRONERASEERROREXITFIELDFILESFORNEXTFUNCTIONGETGOSUBGOTOIFTHENINPUTzINPUT #IOCTLKEYr`KILLrLINEz LINE INPUTz LINE INPUT #LOCATELOCKUNLOCKLPRINTLSETrMKDIRNAMEzON COMzON ERRORzON KEYzON PENzON PLAYzON STRIGzON TIMERz ON UEVENTONOPENzOPEN COMz OPTION BASEOUTPAINTPALETTEPCOPYrrPOKEPRESETPRINTzPRINT #z PRINT USINGPSETPUTrt RANDOMIZEREADREDIMREMRESETRESTORERESUMERETURNRMDIRRSETRUNrrz SELECT CASESHAREDSHELLSLEEPSOUNDSTATICSTOPr#SUBSWAPSYSTEMr'r(TROFFTRONTYPEUEVENTreVIEWWAITWHILEWENDWIDTHWINDOWWRITE)#ACCESSALIASANYAPPENDASBASEBINARYBYVALCASECDECLDOUBLEELSEELSEIFENDIFINTEGERISLISTLOCALLONGrMMODrWOFFrjOUTPUTRANDOMSIGNALSINGLESTEPSTRINGr]TOUNTILUSINGrz\n+r!z^(\s*)(\d*)(\s*)(REM .*)$z^(\s*)(\d+)(\s*)z(?=[\s]*)(\w+)(?=[\s]*=)z(?=[^"]*)\'.*$z "[^\n"]*"z"(END)(\s+)(FUNCTION|IF|SELECT|SUB)z (DECLARE)(\s+)([A-Z]+)(\s+)(\S+)z (DIM)(\s+)(SHARED)(\s+)([^\s(]+)z(DIM)(\s+)([^\s(]+)z^(\s*)([a-zA-Z_]+)(\s*)(\=)z(GOTO|GOSUB)(\s+)(\w+\:?)z(SUB)(\s+)(\w+\:?) declarations functions metacommands operators statementskeywordsz[a-zA-Z_]\w*[$@#&!]z[a-zA-Z_]\w*\:z\-?\d*\.\d+[@|#]?z \-?\d+[@|#]z\-?\d+#?z'!=|==|:=|\.=|<<|>>|[-~+/\\*%=<>&^|?:!.]z [\[\]{}(),;]z[\w]+z\b({})(?=\(|\b)|z\b({})\b)r|rrrrrrcd|vsd|vryy)Nr-r.?rrs rrzQBasicLexer.analyse_texts  d!2"3rN).r}r~rrrrrrrrrrrrrrrrrr rrrrGlobalrrr rrrrr rrLongr formatjoinmaprescaperrrrrrrrrcs D!G'"II 0CM"LI 7L9IJ.HTN T__ % ) dootzz4??nn& '! dootzz4?? C E ($--*>*> ?  / 6== ) 2 g&&9I9I J L 0 g))4??DMMoot- .1 g))4??DMMoot}}';';= >$ g))4??DMMfdej>fdej>fdej@fde jBfde"fgd ej6fdej6d!fd e#dfgd"Z$d#Z%y$)%rzy BBC Basic was supplied on the BBC Micro, and later Acorn RISC OS. It is also used by BBC Basic For Windows. )w OTHERWISEr/DIVEORrr3rRrbrrrr%rr]OPENINPTRPAGETIMELOMEMHIMEMrACSADVALrASNrBGETrCOUNTDEGrrEVALrEXTFALSEFNrYINKEYrrr LNrr2OPENUPOPENOUTPIrrRADrrrr r&rTRUEUSRr*VPOSrzGET$rr rrr"r$rrrrrrrBPUTr8r:r=r>CLGr?rrJrKrNrOENDPROCENVELOPErVrZr[GCOLr\r^rrMODEMOVErWrjVDUPLOTrrPROCrvrxREPEATREPORTrzr|rrCOLOURTRACErrOSCLI)/WHENOFENDCASErENDWHILErr<FILLORIGINr RECTANGLErrrMOUSEQUITSYSINSTALLLIBRARYTINTELLIPSEBEATSTEMPOVOICESVOICESTEREOOVERLAYrAUTOCRUNCHDELETEEDITHELPrLOADLVARNEWOLDRENUMBERSAVETEXTLOADTEXTSAVETWINTWINOrSUMBEATz BBC Basicbbcbasicz*.bbcz(https://www.bbcbasic.co.uk/bbcbasic.htmlrr%z (\*)([^\n]*)codez (REM)([^\n]*)rr|r!rz%(DEF)(\s*)(FN|PROC)([A-Za-z_@][\w@]*)z(FN|PROC)([A-Za-z_@][\w@]*)z#(GOTO|GOSUB|THEN|RESTORE)(\s*)(\d+)z (TRUE|FALSE)z>(PAGE|LOMEM|HIMEM|TIME|WIDTH|ERL|ERR|REPORT\$|POS|VPOS|VOICES)r"r#z %[01]{1,32}z&[0-9a-f]{1,8}z"[+-]?[0-9]+\.[0-9]*(E[+-]?[0-9]+)?z[+-]?\.[0-9]+(E[+-]?[0-9]+)?z[+-]?[0-9]+E[+-]?[0-9]+z[+-]?\d+z([A-Za-z_@][\w@]*[%$]?)z1([+\-]=|[$!|?+\-*/%^=><();]|>=|<=|<>|<<|>>|>>>|,)rrz)r|rr#cJ|jds|jdryy)Nz10REM >zREM >r) startswithrs rrzBBCBasicLexer.analyse_texts" ??9 %)A*BrN)&r}r~rr base_keywordsbasic5_keywordsrrrrrr rrr rrSpecialrrrrrrRrrrrr rrrrrrr rrrrrrr3s9M$BO DlG I 4CM #  gnngoo 6 8 FO   g))7>> : < J ' Z 7?? #6 g)):))4==: ;, gt}} - /4 gz4:: 6 8g.. / N ^^ = !7 + ? #W - &-- * FJJ ' vzz * 2FLL A ,fll ; ' 6 &.. ) ' 7 A8 LG$ L ' 6==& ) E6 " [2Fhrr)rrpygments.lexerrrrrrpygments.tokenrr r r r r rrrrpygments.lexersr__all__rrrrrrrrrrr)s HH444. <UJUpKjK\}*}@#j#LJ*JZ@J@F]J]r