
    Mh                          d Z ddlZddlmZmZmZmZ ddlmZm	Z	m
Z
mZmZmZmZ g dZ G d de          Z G d d	e          Z G d
 de          ZdS )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-2025 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                      e Zd ZdZdZdgZdZdZdd ee	e
j        e	          fd ee	j        ee
j        e
j        e	j                  fd	 ee	e	j        e
j        ee
j        e	j        e	          fd
efdefdefde	fde	fgiZdS )r   zS
    Lexer that highlights markers, constants and registers within css blocks.
    TypoScriptCssDatatyposcriptcssdata3http://docs.typo3.org/typo3cms/TyposcriptReference/2.2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____doc__namealiasesurlversion_addedr   r
   r	   ConstantSymbolr   r   r   tokens     Z/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/pygments/lexers/typoscript.pyr   r      s          D"#G
?CM 	#XXfdmV%L%LM5XfmXt}mV]4 45 <XffmT]HmV]F< <= TN#W-W f% &)'
FFFr*   r   c                      e Zd ZdZdZdgZdZdZddej	        fde
fd	 ee
ej        e
          fd
 ee
j        eej        ej        e
j                  fd ee
e
j        ej        eej        e
j        e
          fdefde
fde
fgiZdS )r   zR
    Lexer that highlights markers, constants and registers within html tags.
    TypoScriptHtmlDatatyposcripthtmldatar   r   r   z(INCLUDE_TYPOSCRIPT)(EXT|FILE|LLL):[^}\n"]*r   r   r   r   r   z[\w"\-!/&;(){}#]+N)r   r   r    r!   r"   r#   r$   r%   r	   Classr
   r   r&   r'   r   r   r(   r)   r*   r+   r   r   @   s           D#$G
?CM 	$dj1'0#XXfdmV%L%LM5XfmXt}mV]4 45 <XffmT]HmV]F< <= TNf%!6*'
FFFr*   r   c                      e Zd ZdZdZdZdgZdgZdgZdZ	e
j        e
j        z  Z ed           ed	           ed
           ed           ed           ed           ed           ed           ed           ed           ed          gd eej        ej        eej                  fdej        fd eeej                  fdej        fdej        fdej        fdej        fdej        fgdefgd ee          fdefd eej        eej         ee                    fgdej        fd ej        fd!ej        fgd"efd# eee          fgd$efgd%efgd&ej        fgd' eej        eej        ej        ej                  fd( eej        ej        eej        ej                  fd)ej         fgd*e!fd+e!fd,e!fgd-efgd.Z"d/S )0r   z$
    Lexer for TypoScript code.
    
TypoScriptr   
typoscriptz*.typoscriptztext/x-typoscriptr   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   r9   r8   r6   r=   r7   r:   r;   r<   r5   r4   r>   N)#r   r   r    r!   r"   r$   r#   	filenames	mimetypesr%   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   c   s         D
?CnG I$%IMI$E GIGJGFOOGGGL!!GJGM""GJGK  GIGG
%
 XfmT]D&-HHJ3 59MC
K Xh--	/7 9=
	D J(@AEM 3DJ?.>E#
J TN
 UU#:;;<6"=Xdj$uu=S7T7TUUW
 !&*-'T]+	
 (0:Xff%%'	
 k"
 h'

 fm,
 6$-7 78 4x7 78 6v{C
 X#W-W%	
 d#
Ig gFFFr*   r   )r!   rA   pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   __all__r   r   r   r)   r*   r+   <module>rM      s:   & 
			 ? ? ? ? ? ? ? ? ? ? ? ?                  S
R
R         Z      F         j      Fu u u u uj u u u u ur*   