Your IP : 216.73.216.213
B
ʽ�\ � @ sb d Z ddlmZmZmZ ddlmZmZmZm Z m
Z
mZmZ ddl
mZ dgZG dd� de�ZdS )z�
pygments.lexers.tcl
~~~~~~~~~~~~~~~~~~~
Lexers for Tcl and related languages.
:copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� )�
RegexLexer�include�words)�Text�Comment�Operator�Keyword�Name�String�Number)�shebang_matches�TclLexerc @ s� e Zd ZdZedddd�Zedddd�ZdZdgZdd gZ d
ddgZ
d<dd�Zed�ed�ed�de
fgeee�eeed�eeed�eeed�de
dfde
dfde
dfdejdfdejfd efgd!efd"ejfd#ejfd$ejfd%ejfd&ejfd'efgd(e
d)fd*ed)fd+e
fed�ed�gde
d,fed-�gd.e
d,fed-�gd/e
d,fed-�gdejd0fd1ejfdejd)fgdejd0fd2ejfd/ejd)fgde
d)fed3�ed�ed�gd.e
d)fed4�ed�ed�gd/e
d)fed5�ed�ed�gd6ed)fd7efgd8�Zd9d:� Zd;S )=r
z:
For Tcl source code.
.. versionadded:: 0.10
)�afterZapply�array�breakZcatch�continueZelseif�else�error�eval�expr�forZforeach�global�if� namespace�proc�rename�return�set�switchZthen�traceZunset�updateZuplevelZupvar�variableZvwait�whilez\b)�prefix�suffix)K�appendZbgerror�binaryZcdZchan�clock�close�concatZdde�dict�encoding�eof�exec�exitZfblockedZ
fconfigureZfcopy�fileZ fileevent�flush�formatZgets�glob�history�httpZincr�infoZinterp�join�lappendZlassignZlindexZlinsert�listZllength�loadZloadTkZlrangeZlrepeatZlreplaceZlreverseZlsearchZlsetZlsortZmathfuncZmathopZmemoryZmsgcat�open�package�pidzpkg::createZpkg_mkIndex�platformzplatform::shellZputs�pwdZ re_syntax�readZrefchanZregexp�registryZregsub�scan�seek�socket�source�split�stringZsubst�tell�time�tm�unknownZunloadZTclZtclz*.tclz*.rvtz
text/x-tclztext/x-script.tclzapplication/x-tcl� c C s4 | t d| f|tjd| fdtjd| fdtdfgS )N�paramsz ([\w.-]+)�#�comment)r r ZBuiltin�Variabler )�keyword_cmds_re�builtin_cmds_re�context� rS �D/opt/alt/python37/lib/python3.7/site-packages/pygments/lexers/tcl.py�_gen_command_rules1 s zTclLexer._gen_command_rules�command�basic�dataz\}z -in-bracez-in-bracketz -in-parenz\(�parenz\[�bracketz\{�brace�"rF z(eq|ne|in|ni)\bz/!=|==|<<|>>|<=|>=|&&|\|\||\*\*|[-+~!*/%<>&^|?:]z\s+z0x[a-fA-F0-9]+z0[0-7]+z\d+\.\d+z\d+z\$([\w.:-]+)z
([\w.:-]+)�;z#popz\nz(else|elseif|then)\b)z#popz#poprL z\)z\]z
string-squarez(?s)(\\\\|\\[0-7]+|\\.|[^"\\])z$(?s)(\\\\|\\[0-7]+|\\.|\\\n|[^\]\\])zcommand-in-bracezcommand-in-parenzcommand-in-bracketz .*[^\\]\nz.*\\\n)�rootrV zcommand-in-bracezcommand-in-bracketzcommand-in-parenrW rX rL zparams-in-bracezparams-in-parenzparams-in-bracketrF z
string-squarer[ rY rZ rN c C s
t | d�S )Nz(tcl))r )�textrS rS rT �analyse_text� s zTclLexer.analyse_textN)rK )�__name__�
__module__�__qualname__�__doc__r rP rQ �name�aliases� filenamesZ mimetypesrU r r r
�Doubler �Wordr r ZHex�OctZFloatZIntegerr rO r �tokensr` rS rS rS rT r
s�
N)rd Zpygments.lexerr r r Zpygments.tokenr r r r r r
r Z
pygments.utilr �__all__r
rS rS rS rT �<module>
s
$