a
    ;@b                     @   s^   d Z ddlZddlmZmZmZmZmZ ddlm	Z	m
Z
mZmZmZ dgZG dd deZdS )z
    pygments.lexers.scdoc
    ~~~~~~~~~~~~~~~~~~~~~

    Lexer for scdoc, a simple man page generator.

    :copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    N)
RegexLexerincludebygroupsusingthis)TextCommentKeywordStringGeneric
ScdocLexerc                   @   s   e Zd ZdZdZddgZddgZejZ	de
efde
ejefde
ejefd	e
eeeeed
dfde
eeeed
dfde
eejfde
eeefed
gdefde
eejefde
eejefdejfdefdefgdZdd ZdS )r   z
    `scdoc` is a simple man page generator for POSIX systems written in C99.
    https://git.sr.ht/~sircmpwn/scdoc

    .. versionadded:: 2.5
    ZscdocZscdz*.scdz*.scdocz^(;.+\n)z^(#)([^#].+\n)z^(#{2})(.+\n)z^(\s*)([*-])(\s)(.+\n)inline)statez^(\s*)(\.+\.)( .+\n)z^(\s*>\s)(.+\n)z^(```\n)([\w\W]*?)(^```$)z\\.z(\s)(_[^_]+_)(\W|\n)z(\s)(\*[^*]+\*)(\W|\n)z`[^`]+`z[^\\\s]+.)rootr   c                 C   s(   d}d| v r|d7 }d| v r$|d7 }|S )z\This is very similar to markdown, save for the escape characters
        needed for * and _.r   z\*g{Gz?z\_ )textresultr   r   4lib/python3.9/site-packages/pygments/lexers/scdoc.pyanalyse_textG   s    zScdocLexer.analyse_textN)__name__
__module____qualname____doc__namealiases	filenamesre	MULTILINEflagsr   r   r   ZHeadingr   Z
Subheadingr	   r   r   ZEmphr
   r   ZStrongZBackticktokensr   r   r   r   r   r      s6   
%)r   r   Zpygments.lexerr   r   r   r   r   Zpygments.tokenr   r   r	   r
   r   __all__r   r   r   r   r   <module>   s
   
