ó
xiù\c           @   s…   d  Z  d d l Z d d l m Z m Z m Z d d l m Z m Z m	 Z	 m
 Z
 m Z m Z m Z d g Z d e f d „  ƒ  YZ d S(   sÕ   
    pygments.lexers.teraterm
    ~~~~~~~~~~~~~~~~~~~~~~~~

    Lexer for Tera Term macro files.

    :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
iÿÿÿÿN(   t
   RegexLexert   includet   bygroups(   t   Textt   Commentt   Operatort   Namet   Stringt   Numbert   Keywordt   TeraTermLexerc           B   sJ  e  Z d  Z d Z d d d g Z d g Z d g Z i e d ƒ e d ƒ e d	 ƒ e d
 ƒ e d ƒ e d ƒ e d ƒ e d ƒ e d ƒ d e f g
 d 6d e	 j
 f d e	 j d f g d 6d e	 j d f d e	 j f d e	 j f g d 6d e e e j ƒ f g d 6d e f d e e e e j ƒ f g d	 6d e j f g d
 6d e j f g d 6d e e e j ƒ f d e j f g d 6d  e j f d! e j
 d" f d# e j d$ f g d 6d% e j f d& e f g d' 6d! e j
 d f e d' ƒ g d" 6d# e j d f e d' ƒ g d$ 6d( e j f d) e f d* e j f g d 6d+ e f g d 6Z d, „  Z RS(-   sb   
    For `Tera Term <https://ttssh2.osdn.jp/>`_ macro source code.

    .. versionadded:: 2.4
    s   Tera Term macrot   ttlt   teratermt   teratermmacros   *.ttls   text/x-teratermmacrot   commentst   labelst   commandss   builtin-variabless   user-variablest	   operatorss   numeric-literalss   string-literalss   all-whitespaces   [^\s]t   roots	   ;[^\r\n]*s   /\*s
   in-comments   \*/s   #pops   [^*/]+s   [*/]s   (?i)^(\s*)(:[0-9a-z_]+)sC  (?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|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)\bs#   (?i)(call|goto)([ \t]+)([0-9a-z_]+)s  (?i)(groupmatchstr1|groupmatchstr2|groupmatchstr3|groupmatchstr4|groupmatchstr5|groupmatchstr6|groupmatchstr7|groupmatchstr8|groupmatchstr9|param1|param2|param3|param4|param5|param6|param7|param8|param9|paramcnt|params|inputstr|matchstr|mtimeout|result|timeout)\bs   (?i)[A-Z_][A-Z0-9_]*s   (-?)([0-9]+)s   (?i)\$[0-9a-f]+s   (?i)#(?:[0-9]+|\$[0-9a-f]+)t   's   in-single-stringt   "s   in-double-strings
   [\\][\\nt]t   .s   in-general-strings   and|not|or|xors   [!%&*+<=>^~\|\/-]+s   [()]s   [\s]+c         C   s8   d } t  j t j d d d |  ƒ r4 | d 7} n  | S(   Ng        R   i    g333333ã?(   t   ret   searchR
   t   tokens(   t   textt   result(    (    s7   lib/python2.7/site-packages/pygments/lexers/teraterm.pyt   analyse_textš   s    !(   t   __name__t
   __module__t   __doc__t   namet   aliasest	   filenamest	   mimetypesR   R   R   t   Singlet	   MultilineR   R   t   LabelR	   t   Builtint   VariableR   R   t   Integert   HexR   t   Chart   Doublet   Escapet   Wordt   SymbolR   R   (    (    (    s7   lib/python2.7/site-packages/pygments/lexers/teraterm.pyR
      sZ   											'	(   R   R   t   pygments.lexerR    R   R   t   pygments.tokenR   R   R   R   R   R   R	   t   __all__R
   (    (    (    s7   lib/python2.7/site-packages/pygments/lexers/teraterm.pyt   <module>
   s
   4	