U
    luf   ã                   @   s†   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 dddgZG dd„ deƒZG d	d„ deƒZG d
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-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                   @   sˆ   e Zd ZdZdZdg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   zn
    Lexer that highlights markers, constants and registers within css blocks.

    .. versionadded:: 2.2
    ZTypoScriptCssDataZ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__Ú__doc__ÚnameÚaliasesr   r	   r   ÚConstantÚSymbolr   r   r   Útokens© r!   r!   ú>/tmp/pip-unpacked-wheel-7eq1ciah/pygments/lexers/typoscript.pyr      s6    ÿÿ  ÿÿÿíÿc                   @   sŠ   e Zd ZdZdZdg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   zm
    Lexer that highlights markers, constants and registers within html tags.

    .. versionadded:: 2.2
    ZTypoScriptHtmlDataZtyposcripthtmldatar   z(INCLUDE_TYPOSCRIPT)ú(EXT|FILE|LLL):[^}\n"]*r   r   r   r   r   z[\w"\-!/&;(){}#]+N)r   r   r   r   r   r   r   ÚClassr	   r   r   r   r   r   r    r!   r!   r!   r"   r   @   s2    ÿÿ  ÿÿíÿc                   @   sª  e Zd ZdZdZdZdgZdgZdgZe	j
e	jB 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 )/r   z?
    Lexer for TypoScript code.

    .. versionadded:: 2.2
    Z
TypoScriptz3http://docs.typo3.org/typo3cms/TyposcriptReference/Z
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*   r)   r'   r.   r(   r+   r,   r-   r&   r%   r/   N)"r   r   r   r   r   Úurlr   Ú	filenamesÚ	mimetypesÚreÚDOTALLÚ	MULTILINEÚflagsr   r   r	   r   r   r   r   ZFunctionr   ZBuiltinr$   r   r   r   r
   ZHexZIntegerr   ÚCharr   r    r!   r!   r!   r"   r   c   s¬   õûý
üüþÿÞ%ÿ
ÿýüÿüÿÿþ ÿÿ ÿÿöÿüÿœ)r   r3   Zpygments.lexerr   r   r   r   Zpygments.tokenr   r   r   r	   r
   r   r   Ú__all__r   r   r   r!   r!   r!   r"   Ú<module>   s   $
##