3

V'íc÷%ã@sbdZddlZddlmZmZmZddlmZmZm	Z	m
Z
mZmZm
Z
mZdgZGdd„deƒZdS)zÕ
    pygments.lexers.teraterm
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for Tera Term macro files.

    :copyright: Copyright 2006-2022 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
éN)Ú
RegexLexerÚincludeÚbygroups)ÚTextÚCommentÚOperatorÚNameÚStringÚNumberÚKeywordÚErrorÚ
TeraTermLexerc@sZeZdZdZdZdZdddgZdgZdgZe	d	ƒe	d
ƒe	dƒe	dƒe	d
ƒe	dƒe	dƒe	dƒe	dƒde
fg
dejfdej
dfgdej
dfdej
fdej
fgdee
jejƒfgdefdeee
jejƒfgdejfgdejfgdeeejƒfd ejfgd!ejfd"ejfd#ejfd$eee
jƒfd%eee
jƒfgd&ejfd'efd(ejfgd)e
jfgd*œZd+d,„Z d-S).r
zE
    For Tera Term macro source code.

    .. versionadded:: 2.4
    zTera Term macrozhttps://ttssh2.osdn.jp/Z
teratermmacroZteratermZttlz*.ttlztext/x-teratermmacroÚcommentsÚlabelsÚcommandszbuiltin-variableszuser-variablesÚ	operatorsznumeric-literalszstring-literalszall-whitespacez\Sz	;[^\r\n]*z/\*z
in-commentz\*/z#popz[^*/]+z[*/]z(?i)^(\s*)(:[a-z0-9_]+)aL(?i)\b(basename|beep|bplusrecv|bplussend|break|bringupbox|callmenu|changedir|checksum16|checksum16file|checksum32|checksum32file|checksum8|checksum8file|clearscreen|clipb2var|closesbox|closett|code2str|connect|continue|crc16|crc16file|crc32|crc32file|cygconnect|delpassword|dirname|dirnamebox|disconnect|dispstr|do|else|elseif|enablekeyb|end|endif|enduntil|endwhile|exec|execcmnd|exit|expandenv|fileclose|fileconcat|filecopy|filecreate|filedelete|filelock|filemarkptr|filenamebox|fileopen|fileread|filereadln|filerename|filesearch|fileseek|fileseekback|filestat|filestrseek|filestrseek2|filetruncate|fileunlock|filewrite|filewriteln|findclose|findfirst|findnext|flushrecv|foldercreate|folderdelete|foldersearch|for|getdate|getdir|getenv|getfileattr|gethostname|getipv4addr|getipv6addr|getmodemstatus|getpassword|getspecialfolder|gettime|gettitle|getttdir|getver|if|ifdefined|include|inputbox|int2str|intdim|ispassword|kmtfinish|kmtget|kmtrecv|kmtsend|listbox|loadkeymap|logautoclosemode|logclose|loginfo|logopen|logpause|logrotate|logstart|logwrite|loop|makepath|messagebox|mpause|next|passwordbox|pause|quickvanrecv|quickvansend|random|recvln|regexoption|restoresetup|return|rotateleft|rotateright|scprecv|scpsend|send|sendbreak|sendbroadcast|sendfile|sendkcode|sendln|sendlnbroadcast|sendlnmulticast|sendmulticast|setbaud|setdate|setdebug|setdir|setdlgpos|setdtr|setecho|setenv|setexitcode|setfileattr|setflowctrl|setmulticastname|setpassword|setrts|setspeed|setsync|settime|settitle|show|showtt|sprintf|sprintf2|statusbox|str2code|str2int|strcompare|strconcat|strcopy|strdim|strinsert|strjoin|strlen|strmatch|strremove|strreplace|strscan|strspecial|strsplit|strtrim|testlink|then|tolower|toupper|unlink|until|uptime|var2clipb|wait|wait4all|waitevent|waitln|waitn|waitrecv|waitregex|while|xmodemrecv|xmodemsend|yesnobox|ymodemrecv|ymodemsend|zmodemrecv|zmodemsend)\bz#(?i)(call|goto)([ \t]+)([a-z0-9_]+)a(?i)(groupmatchstr1|groupmatchstr2|groupmatchstr3|groupmatchstr4|groupmatchstr5|groupmatchstr6|groupmatchstr7|groupmatchstr8|groupmatchstr9|inputstr|matchstr|mtimeout|param1|param2|param3|param4|param5|param6|param7|param8|param9|paramcnt|params|result|timeout)\bz(?i)[a-z_][a-z0-9_]*z(-?)([0-9]+)z(?i)\$[0-9a-f]+z(?i)#(?:[0-9]+|\$[0-9a-f]+)z	'[^'\n]*'z	"[^"\n]*"z('[^']*)(\n)z("[^"]*)(\n)zand|not|or|xorz[!%&*+<=>^~\|\/-]+z[()]z\s+)Úrootrz
in-commentrrzbuiltin-variableszuser-variablesznumeric-literalszstring-literalsrzall-whitespacecCs"tjtjddd|ƒrdSdS)Nrrg{®Gáz„?)ÚreÚsearchr
Útokens)Útext©rú</tmp/pip-build-gk9425m9/Pygments/pygments/lexers/teraterm.pyÚanalyse_textDszTeraTermLexer.analyse_textN)!Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚurlÚaliasesÚ	filenamesÚ	mimetypesrrrÚSingleZ	MultilinerÚ
WhitespacerZLabelrZBuiltinÚVariablerr
ZIntegerZHexr	ZCharÚDoublerÚWordZSymbolrrrrrrr
sT


J


)rrZpygments.lexerrrrZpygments.tokenrrrrr	r
rrÚ__all__r
rrrrÚ<module>	s
(