
                              S r SSKrSSKJrJrJrJr  SSKJrJ	r	J
r
JrJrJrJr  / SQr " S S\5      r " S S	\5      r " S
 S\5      rg)a  
pygments.lexers.typoscript
~~~~~~~~~~~~~~~~~~~~~~~~~~

Lexers for TypoScript

`TypoScriptLexer`
    A TypoScript lexer.

`TypoScriptCssDataLexer`
    Lexer that highlights markers, constants and registers within css.

`TypoScriptHtmlDataLexer`
    Lexer that highlights markers, constants and registers within html tags.

:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
    N)
RegexLexerincludebygroupsusing)TextCommentNameStringNumberOperatorPunctuation)TypoScriptLexerTypoScriptCssDataLexerTypoScriptHtmlDataLexerc                   J   \ rS rSrSrSrS/rSS\" \\	R                  \5      4S\" \R                  \\	R                  \	R                  \R                  5      4S\" \\R                  \	R                  \\	R                  \R                  \5      4S	\4S
\4S\4S\4S\4/0rSrg)r      zb
Lexer that highlights markers, constants and registers within css blocks.

.. versionadded:: 2.2
TypoScriptCssDatatyposcriptcssdataroot(.*)(###\w+###)(.*)%(\{)(\$)((?:[\w\-]+\.)*)([\w\-]+)(\})+(.*)(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})(.*)\s+/\*(?:(?!\*/).)*\*/G(?<!(#|\'|"))(?:#(?!(?:[a-fA-F0-9]{6}|[a-fA-F0-9]{3}))[^\n#]+|//[^\n]*)[<>,:=.*%+|]z[\w"\-!/&;(){}]+ N)__name__
__module____qualname____firstlineno____doc__namealiasesr   r
   r	   ConstantSymbolr   r   r   tokens__static_attributes__r       -lib/third_party/pygments/lexers/typoscript.pyr   r      s     D"#G 	#XfdmmV%LM5fmmXt}}mmV]]45 <ffmmT]]HmmV]]F<= TN#W-W f% &)'
Fr)   r   c                   ^   \ rS rSrSrSrS/rSS\R                  4S\	4S\
" \	\R                  \	5      4S	\
" \	R                  \\R                  \R                  \	R                  5      4S
\
" \	\	R                  \R                  \\R                  \	R                  \	5      4S\4S\	4S\	4/0rSrg)r   @   za
Lexer that highlights markers, constants and registers within html tags.

.. versionadded:: 2.2
TypoScriptHtmlDatatyposcripthtmldatar   z(INCLUDE_TYPOSCRIPT)(EXT|FILE|LLL):[^}\n"]*r   r   r   r   r   z[\w"\-!/&;(){}#]+r   N)r   r   r    r!   r"   r#   r$   r	   Classr
   r   r%   r&   r   r   r'   r(   r   r)   r*   r   r   @   s      D#$G 	$djj1'0#XfdmmV%LM5fmmXt}}mmV]]45 <ffmmT]]HmmV]]F<= TNf%!6*'
Fr)   r   c                   2   \ rS rSrSrSrSrS/rS/rS/r	\
R                  \
R                  -  r\" S5      \" S	5      \" S
5      \" S5      \" S5      \" S5      \" S5      \" S5      \" S5      \" S5      \" S5      /S\" \R"                  \R&                  \\R"                  5      4S\R*                  4S\" \\R.                  5      4S\R0                  4S\R0                  4S\R0                  4S\R0                  4S\R*                  4/S\4/S\" \5      4S\4S\" \R0                  \\R"                  \" \5      5      4/S\R:                  4S \R<                  4S!\R&                  4/S"\4S#\" \\5      4/S$\4/S%\4/S&\R"                  4/S'\" \R"                  \\R&                  \R&                  \R"                  5      4S(\" \R"                  \R&                  \\R&                  \R"                  5      4S)\R@                  4/S*\!4S+\!4S,\!4/S-\4/S..r"S/r#g0)1r   c   z3
Lexer for TypoScript code.

.. versionadded:: 2.2

TypoScriptz3http://docs.typo3.org/typo3cms/TyposcriptReference/
typoscriptz*.typoscriptztext/x-typoscriptcommentconstanthtmllabel
whitespacekeywordspunctuationoperator	structureliteralothera  (?i)(\[)(browser|compatVersion|dayofmonth|dayofweek|dayofyear|device|ELSE|END|GLOBAL|globalString|globalVar|hostname|hour|IP|language|loginUser|loginuser|minute|month|page|PIDinRootline|PIDupinRootline|system|treeLevel|useragent|userFunc|usergroup|version)([^\]]*)(\])z(?=[\w\-])(HTMLparser|HTMLparser_tags|addParams|cache|encapsLines|filelink|if|imageLinkWrap|imgResource|makelinks|numRows|numberFormat|parseFunc|replacement|round|select|split|stdWrap|strPad|tableStyle|tags|textStyle|typolink)(?![\w\-])a  (?:(=?\s*<?\s+|^\s*))(cObj|field|config|content|constants|FEData|file|frameset|includeLibs|lib|page|plugin|register|resources|sitemap|sitetitle|styles|temp|tt_[^:.\s]*|types|xmlnews|INCLUDE_TYPOSCRIPT|_CSS_DEFAULT_STYLE|_DEFAULT_PI_VARS|_LOCAL_LANG)(?![\w\-])a*  (?=[\w\-])(CASE|CLEARGIF|COA|COA_INT|COBJ_ARRAY|COLUMNS|CONTENT|CTABLE|EDITPANEL|FILE|FILES|FLUIDTEMPLATE|FORM|HMENU|HRULER|HTML|IMAGE|IMGTEXT|IMG_RESOURCE|LOAD_REGISTER|MEDIA|MULTIMEDIA|OTABLE|PAGE|QTOBJECT|RECORDS|RESTORE_REGISTER|SEARCHRESULT|SVG|SWFOBJECT|TEMPLATE|TEXT|USER|USER_INT)(?![\w\-])z(?=[\w\-])(ACTIFSUBRO|ACTIFSUB|ACTRO|ACT|CURIFSUBRO|CURIFSUB|CURRO|CUR|IFSUBRO|IFSUB|NO|SPC|USERDEF1RO|USERDEF1|USERDEF2RO|USERDEF2|USRRO|USR)zo(?=[\w\-])(GMENU_FOLDOUT|GMENU_LAYERS|GMENU|IMGMENUITEM|IMGMENU|JSMENUITEM|JSMENU|TMENUITEM|TMENU_LAYERS|TMENU)z"(?=[\w\-])(PHP_SCRIPT(_EXT|_INT)?)z(?=[\w\-])(userFunc)(?![\w\-])r   z<\S[^\n>]*>z	&[^;\n]*;z-(?s)(_CSS_DEFAULT_STYLE)(\s*)(\()(.*(?=\n\)))z0x[0-9A-Fa-f]+t?z[0-9]+z(###\w+###)r/   z*(?![^\w\-])([\w\-]+(?:/[\w\-]+)+/?)(\S*\n)z[,.]r   z[{}()\[\]\\]r   z#(\{)([\w\-]+)(\s*:\s*)([\w\-]+)(\})z%(#[a-fA-F0-9]{6}\b|#[a-fA-F0-9]{3}\b)r   r   z(\s*#\s*\n)z[\w"\-!/&;]+)r   r:   r9   r7   r>   r8   r;   r<   r=   r6   r5   r?   r   N)$r   r   r    r!   r"   r#   urlr$   	filenames	mimetypesreDOTALL	MULTILINEflagsr   r   r
   r&   r	   r%   r   Functionr   Builtinr0   r   r   r   r   HexIntegerr   Charr   r'   r(   r   r)   r*   r   r   c   s    D
?CnG I$%III$E IJFOGL!JM"JK IG
%
 fmmT]]D&--HJ3 59MMC
K h-	/7 9=

	D JJ(@AEM 3DJJ?.>E#
J TN
 U#:;<6"=djj$u=S7TUW
 !&**-'T]]+	
 (0:ff%'	
 k"
 h'

 fmm,
 6$--78 4x78 6v{{C
 X#W-W%	
 d#
IgFr)   r   )r"   rC   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   __all__r   r   r   r   r)   r*   <module>rO      sT   & 
 ? ?   S Z  F j  Fvj vr)   