B
    (‹dµ  ã               @   sj   d Z ddlZddlmZmZ ddlmZmZmZm	Z	m
Z
mZ dgZddd„Zdd	d
„ZG dd„ deƒZdS )zû
    pygments.lexers.wowtoc
    ~~~~~~~~~~~~~~~~~~~~~~

    Lexer for World of Warcraft TOC files

    TOC files describe game addons.

    :copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
é    N)Ú
RegexLexerÚbygroups)ÚCommentÚNameÚTextÚPunctuationÚStringÚKeywordÚWoWTocLexerFc             C   s   |rdndd |  d S )Nz(?i)Ú z	^(##)( *)z( *)(:)( *)(.*?)( *)$© )Úinner_patternÚignore_caser   r   úc/work/yifan.wang/ringdown/master-ringdown-env/lib/python3.7/site-packages/pygments/lexers/wowtoc.pyÚ_create_tag_line_pattern   s    r   c          
   C   s,   t | |dttjtj|tjttjttjƒfS )N)r   )r   r   r	   ÚDeclarationr   Ú
Whitespacer   r   )r   Zinner_tokenr   r   r   r   Ú_create_tag_line_token   s    
r   c               @   sl   e Zd ZdZdZdgZdgZdedej	ƒedej	dd	ed
ej
dd	edejƒdefdefgiZdd„ ZdS )r
   zL
    Lexer for World of Warcraft TOC files.

    .. versionadded:: 2.14
    zWorld of Warcraft TOCÚwowtocz*.tocÚrootz~((?:[nN][oO][tT][eE][sS]|[tT][iI][tT][lL][eE])-(?:ptBR|zhCN|enCN|frFR|deDE|itIT|esMX|ptPT|koKR|ruRU|esES|zhTW|enTW|enGB|enUS))z«(Interface|Title|Notes|RequiredDeps|Dep[^: ]*|OptionalDeps|LoadOnDemand|LoadWith|LoadManagers|SavedVariablesPerCharacter|SavedVariables|DefaultState|Secure|Author|Version)T)r   z
(X-[^: ]*)z([^: ]*)z^#.*$z^.+$c             C   sf   d}t ddd}t || ¡}|r:t d| d¡¡r:|d7 }|  ¡ }d|krR|d	7 }d
|krb|d7 }|S )Nr   z(Interface)T)r   z(\d+)(\d{2})(\d{2})é   gš™™™™™é?z.luagš™™™™™¹?z.xmlgš™™™™™©?)r   ÚreÚsearchÚmatchÚgroupÚcasefold)ÚtextÚresultZinterface_patternr   Ú
casefoldedr   r   r   Úanalyse_text^   s    zWoWTocLexer.analyse_textN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚnameÚaliasesÚ	filenamesr   r   ÚBuiltinÚVariableÚOtherr   Útokensr   r   r   r   r   r
   .   s,   )F)F)r#   r   Zpygments.lexerr   r   Zpygments.tokenr   r   r   r   r   r	   Ú__all__r   r   r
   r   r   r   r   Ú<module>   s    

