o
    Rhqe                     @  s  d dl mZ d dlZd dlmZmZ d dlmZ d dlm	Z	 ej
dkr*d dlmZ nd dlmZ d dlmZ d	d
lmZ d	dlmZ d	dlmZ d	dlmZmZmZmZ d	dlmZ d	dlmZ d	dlmZ d	dl m!Z! d	dl"m#Z# d	dl$m%Z%m&Z& d	dl'm(Z( d	dl)m*Z*m+Z+ G dd dZ,G dd de,Z-G dd de,Z.G dd de.Z/G dd de.Z0G d d! d!e.Z1G d"d# d#e.Z2G d$d% d%e,Z3G d&d' d'e,Z4G d(d) d)e,Z5G d*d+ d+e,Z6G d,d- d-e,Z7G d.d/ d/e,Z8G d0d1 d1e,Z9G d2d3 d3e.Z:G d4d5 d5e.Z;G d6d7 d7e.Z<G d8d9 d9Z=G d:d; d;eZ>e?d<krd dl@Z@d dlZe@jAd=d>ZBeBjCd?d@dAdB eBjCdCdDdEdFddGdH eBjCdIdJdKdLdMdN eBjCdOdPdQddQdN eBjCdRdSdTdFdUdV eBjCdWdXeDdYddZd[ eBjCd\d]d^dFd_dV eBjCd`dadbdFdcdV eBE ZFd ddlGmZ eFjHdekrejIJ ZKneLeFjHdfdgZMeMJ ZKW d   n	1 sw   Y  e>eKeFjNrdhndieFjOeFjPeFjQdjZReFjSrd dlTZTd dlUZUeTV ZWeeWeFjXeFjYdkZeZeR eU[eW\  dS eeFjXeFjYdldmZeZeR dS dS )n    )annotationsN)ClassVarIterable)
MarkdownIt)Token)      )get_args)Table   box)
loop_first)Stack)ConsoleConsoleOptionsJustifyMethodRenderResult)Renderables)JupyterMixin)Panel)Rule)Segment)Style
StyleStack)Syntax)TextTextTypec                   @  sZ   e Zd ZU dZded< ed"d	d
Zd#ddZd$ddZd#ddZ	d%ddZ
d&dd Zd!S )'MarkdownElementTzClassVar[bool]new_linemarkdownMarkdowntokenr   returnc                 C  s   |  S )zFactory to create markdown element,

        Args:
            markdown (Markdown): The parent Markdown object.
            token (Token): A node from markdown-it.

        Returns:
            MarkdownElement: A new markdown element
         clsr    r"   r$   r$   O/home/air/sanwanet/backup_V2/venv/lib/python3.10/site-packages/rich/markdown.pycreate!   s   zMarkdownElement.createcontextMarkdownContextNonec                 C     dS )zuCalled when the node is entered.

        Args:
            context (MarkdownContext): The markdown context.
        Nr$   selfr)   r$   r$   r'   on_enter.       zMarkdownElement.on_entertextr   c                 C  r,   )zpCalled when text is parsed.

        Args:
            context (MarkdownContext): The markdown context.
        Nr$   r.   r)   r1   r$   r$   r'   on_text5   r0   zMarkdownElement.on_textc                 C  r,   )zwCalled when the parser leaves the element.

        Args:
            context (MarkdownContext): [description]
        Nr$   r-   r$   r$   r'   on_leave<   r0   zMarkdownElement.on_leavechildboolc                 C  r,   )a|  Called when a child element is closed.

        This method allows a parent element to take over rendering of its children.

        Args:
            context (MarkdownContext): The markdown context.
            child (MarkdownElement): The child markdown element.

        Returns:
            bool: Return True to render the element, or False to not render the element.
        Tr$   r.   r)   r5   r$   r$   r'   on_child_closeC   s   zMarkdownElement.on_child_closeconsoler   optionsr   r   c                 C  r,   )Nr$   r$   r.   r9   r:   r$   r$   r'   __rich_console__Q   s   z MarkdownElement.__rich_console__Nr    r!   r"   r   r#   r   r)   r*   r#   r+   r)   r*   r1   r   r#   r+   r)   r*   r5   r   r#   r6   r9   r   r:   r   r#   r   )__name__
__module____qualname__r   __annotations__classmethodr(   r/   r3   r4   r8   r<   r$   r$   r$   r'   r      s   
 



r   c                   @  s   e Zd ZdZdS )UnknownElementzAn unknown element.

    Hopefully there will be no unknown elements, and we will have a MarkdownElement for
    everything in the document.

    N)rB   rC   rD   __doc__r$   r$   r$   r'   rG   W   s    rG   c                   @  s2   e Zd ZdZdZdddZdddZdddZdS )TextElementz)Base class for elements that render text.noner)   r*   r#   r+   c                 C  s   | | j| _tdd| _d S Nleftjustify)enter_style
style_namestyler   r1   r-   r$   r$   r'   r/   e   s   zTextElement.on_enterr1   r   c                 C  s(   | j |t|tr|j d S d  d S N)r1   append
isinstancestrcurrent_styler2   r$   r$   r'   r3   i   s   (zTextElement.on_textc                 C  s   |   d S rR   )leave_styler-   r$   r$   r'   r4   l      zTextElement.on_leaveNr>   r?   )rB   rC   rD   rH   rP   r/   r3   r4   r$   r$   r$   r'   rI   `   s    

rI   c                   @  s@   e Zd ZU dZdZded< edd
dZdddZdddZ	dS )	ParagraphzA Paragraph.zmarkdown.paragraphr   rN   r    r!   r"   r   r#   c                 C  s   | |j pddS rK   rM   r%   r$   r$   r'   r(   v   s   zParagraph.creater+   c                 C  s
   || _ d S rR   rM   r.   rN   r$   r$   r'   __init__z      
zParagraph.__init__r9   r   r:   r   r   c                 c  s    | j | j_ | jV  d S rR   )rN   r1   r;   r$   r$   r'   r<   }   s   
zParagraph.__rich_console__N)r    r!   r"   r   r#   rY   rN   r   r#   r+   rA   )
rB   rC   rD   rH   rP   rE   rF   r(   r[   r<   r$   r$   r$   r'   rY   p   s   
 
rY   c                      sD   e Zd ZdZedddZdddZd fddZdddZ  Z	S )Headingz
A heading.r    r!   r"   r   r#   c                 C  s
   | |j S rR   )tagr%   r$   r$   r'   r(      s   
zHeading.creater)   r*   r+   c                 C  s   t  | _|| j d S rR   )r   r1   rO   rP   r-   r$   r$   r'   r/      s   zHeading.on_enterr_   rU   c                   s    || _ d| | _t   d S )N	markdown.)r_   rP   superr[   )r.   r_   	__class__r$   r'   r[      s   zHeading.__init__r9   r   r:   r   r   c                 c  sL    | j }d|_| jdkrt|tjddV  d S | jdkr!tdV  |V  d S )Ncenterh1zmarkdown.h1.border)r   rQ   h2 )r1   rN   r_   r   r   HEAVYr   )r.   r9   r:   r1   r$   r$   r'   r<      s   



zHeading.__rich_console__)r    r!   r"   r   r#   r^   r>   )r_   rU   r#   r+   rA   )
rB   rC   rD   rH   rF   r(   r/   r[   r<   __classcell__r$   r$   rb   r'   r^      s    
r^   c                   @  s6   e Zd ZdZdZeddd	ZdddZdddZdS )	CodeBlockz&A code block with syntax highlighting.zmarkdown.code_blockr    r!   r"   r   r#   c                 C  s(   |j pd}|dd }| |pd|jS )Nrg    r   r1   )info	partition
code_theme)r&   r    r"   	node_info
lexer_namer$   r$   r'   r(      s   
zCodeBlock.createrp   rU   themer+   c                 C  s   || _ || _d S rR   )rp   rq   )r.   rp   rq   r$   r$   r'   r[         
zCodeBlock.__init__r9   r   r:   r   r   c                 c  s0    t | j }t|| j| jddd}|V  d S )NTr   )rq   	word_wrappadding)rU   r1   rstripr   rp   rq   )r.   r9   r:   codesyntaxr$   r$   r'   r<      s   
zCodeBlock.__rich_console__N)r    r!   r"   r   r#   rj   )rp   rU   rq   rU   r#   r+   rA   )	rB   rC   rD   rH   rP   rF   r(   r[   r<   r$   r$   r$   r'   rj      s    
rj   c                   @  s2   e Zd ZdZdZdddZdddZdddZdS )
BlockQuotezA block quote.zmarkdown.block_quoter#   r+   c                 C     t  | _d S rR   r   elementsr.   r$   r$   r'   r[      rX   zBlockQuote.__init__r)   r*   r5   r   r6   c                 C     | j | dS NFr{   rS   r7   r$   r$   r'   r8         zBlockQuote.on_child_closer9   r   r:   r   r   c           	      c  sd    |j |jd d}|j| j|| jd}| j}td}td|}|D ]}|V  |E d H  |V  q"d S )N   widthrQ   
u   ▌ )update	max_widthrender_linesr{   rQ   r   )	r.   r9   r:   render_optionslinesrQ   r   rt   liner$   r$   r'   r<      s   

zBlockQuote.__rich_console__Nr#   r+   r@   rA   )rB   rC   rD   rH   rP   r[   r8   r<   r$   r$   r$   r'   rx      s    

rx   c                   @  s   e Zd ZdZdZdd	d
ZdS )HorizontalRulez%A horizontal rule to divide sections.Fr9   r   r:   r   r#   r   c                 c  s     |j ddd}t|dV  d S )Nzmarkdown.hrrJ   defaultr   )	get_styler   )r.   r9   r:   rQ   r$   r$   r'   r<      s   zHorizontalRule.__rich_console__NrA   )rB   rC   rD   rH   r   r<   r$   r$   r$   r'   r      s    r   c                   @  s.   e Zd ZdZdddZdddZdddZdS )TableElementz.MarkdownElement corresponding to `table_open`.r#   r+   c                 C  s   d | _ d | _d S rR   )headerbodyr|   r$   r$   r'   r[      rr   zTableElement.__init__r)   r*   r5   r   r6   c                 C  s0   t |tr
|| _dS t |tr|| _dS td)Nz Couldn't process markdown table.F)rT   TableHeaderElementr   TableBodyElementr   RuntimeErrorr7   r$   r$   r'   r8      s   

zTableElement.on_child_closer9   r   r:   r   r   c                 c  s|    t tjd}| jd ur | jjd ur | jjjD ]}||j q| jd ur9| jj	D ]}dd |jD }|j
|  q)|V  d S )Nr   c                 S  s   g | ]}|j qS r$   )content).0elementr$   r$   r'   
<listcomp>  s    z1TableElement.__rich_console__.<locals>.<listcomp>)r
   r   SIMPLE_HEAVYr   rowcells
add_columnr   r   rowsadd_row)r.   r9   r:   tablecolumnr   row_contentr$   r$   r'   r<      s   

zTableElement.__rich_console__Nr   r@   rA   )rB   rC   rD   rH   r[   r8   r<   r$   r$   r$   r'   r      s
    

	r   c                   @  $   e Zd ZdZdddZdddZdS )r   z@MarkdownElement corresponding to `thead_open` and `thead_close`.r#   r+   c                 C  s
   d | _ d S rR   )r   r|   r$   r$   r'   r[   
  r\   zTableHeaderElement.__init__r)   r*   r5   r   r6   c                 C  s   t |tsJ || _dS r~   )rT   TableRowElementr   r7   r$   r$   r'   r8     s   z!TableHeaderElement.on_child_closeNr   r@   rB   rC   rD   rH   r[   r8   r$   r$   r$   r'   r         
r   c                   @  r   )r   z@MarkdownElement corresponding to `tbody_open` and `tbody_close`.r#   r+   c                 C  
   g | _ d S rR   )r   r|   r$   r$   r'   r[     r\   zTableBodyElement.__init__r)   r*   r5   r   r6   c                 C     t |tsJ | j| dS r~   )rT   r   r   rS   r7   r$   r$   r'   r8        zTableBodyElement.on_child_closeNr   r@   r   r$   r$   r$   r'   r     r   r   c                   @  r   )r   z:MarkdownElement corresponding to `tr_open` and `tr_close`.r#   r+   c                 C  r   rR   )r   r|   r$   r$   r'   r[   "  r\   zTableRowElement.__init__r)   r*   r5   r   r6   c                 C  r   r~   )rT   TableDataElementr   rS   r7   r$   r$   r'   r8   %  r   zTableRowElement.on_child_closeNr   r@   r   r$   r$   r$   r'   r     r   r   c                   @  s2   e Zd ZdZeddd	ZdddZdddZdS )r   z[MarkdownElement corresponding to `td_open` and `td_close`
    and `th_open` and `th_close`.r    r!   r"   r   r#   r   c                 C  s\   t |jdp	d}d|v rd}nd|v rd}n	d|v rd}nd	}|ttv s)J | |d
S )NrQ   rg   ztext-align:rightrightztext-align:centerrd   ztext-align:leftrL   r   rM   )rU   attrsgetr	   r   )r&   r    r"   rQ   rN   r$   r$   r'   r(   /  s   
zTableDataElement.createrN   r   r+   c                 C  s   t d|d| _|| _d S )Nrg   rM   )r   r   rN   rZ   r$   r$   r'   r[   @  s   
zTableDataElement.__init__r)   r*   r1   r   c                 C  s2   t |tr	t|n|}||j | j| d S rR   )rT   rU   r   stylizerV   r   append_textr2   r$   r$   r'   r3   D  s   zTableDataElement.on_textNr=   r]   r?   )rB   rC   rD   rH   rF   r(   r[   r3   r$   r$   r$   r'   r   +  s    
r   c                   @  s<   e Zd ZdZedddZd ddZd!ddZd"ddZdS )#ListElementzA list element.r    r!   r"   r   r#   c                 C  s   | |j t|jddS )Nstartr   )typeintr   r   r%   r$   r$   r'   r(   M  s   zListElement.create	list_typerU   
list_start
int | Noner+   c                 C  s   g | _ || _|| _d S rR   )itemsr   r   )r.   r   r   r$   r$   r'   r[   Q  s   
zListElement.__init__r)   r*   r5   r   r6   c                 C  r   r~   )rT   ListItemr   rS   r7   r$   r$   r'   r8   V  r   zListElement.on_child_closer9   r   r:   r   r   c                 c  s    | j dkr| jD ]}|||E d H  q	d S | jd u rdn| j}|t| j }t| jD ]\}}||||| |E d H  q-d S )Nbullet_list_openr   )r   r   render_bulletr   len	enumeraterender_number)r.   r9   r:   itemnumberlast_numberindexr$   r$   r'   r<   [  s   

zListElement.__rich_console__N)r    r!   r"   r   r#   r   )r   rU   r   r   r#   r+   r@   rA   )	rB   rC   rD   rH   rF   r(   r[   r8   r<   r$   r$   r$   r'   r   J  s    

r   c                   @  s<   e Zd ZdZdZdddZdddZdddZdddZdS )r   zAn item in a list.zmarkdown.itemr#   r+   c                 C  ry   rR   rz   r|   r$   r$   r'   r[   o  rX   zListItem.__init__r)   r*   r5   r   r6   c                 C  r}   r~   r   r7   r$   r$   r'   r8   r  r   zListItem.on_child_closer9   r   r:   r   r   c                 c  s    |j |jd d}|j| j|| jd}|jddd}td|}td|}td	}t|D ]\}	}
|	r5|n|V  |
E d H  |V  q-d S )
Nr   r   r   zmarkdown.item.bulletrJ   r   u    • z   r   )r   r   r   r{   rQ   r   r   r   )r.   r9   r:   r   r   bullet_stylebulletrt   r   firstr   r$   r$   r'   r   v  s   


zListItem.render_bulletr   r   r   c                 c  s    t t|d }|j|j| d}|j| j|| jd}|jddd}td}	td| |}
t| 	|d	 d |}t
|D ]\}}|rG|n|
V  |E d H  |	V  q?d S )
N   r   r   zmarkdown.item.numberrJ   r   r   rk   r   )r   rU   r   r   r   r{   rQ   r   r   rjustr   )r.   r9   r:   r   r   number_widthr   r   number_styler   rt   numeralr   r   r$   r$   r'   r     s   
zListItem.render_numberNr   r@   rA   )
r9   r   r:   r   r   r   r   r   r#   r   )	rB   rC   rD   rH   rP   r[   r8   r   r   r$   r$   r$   r'   r   j  s    


r   c                   @  s$   e Zd ZedddZdddZdS )Linkr    r!   r"   r   r#   r   c                 C  s   |j dd}| |jt|S )Nhref#)r   r   r   rU   )r&   r    r"   urlr$   r$   r'   r(     s   zLink.creater1   rU   r   c                 C  s   t || _|| _d S rR   )r   r1   r   )r.   r1   r   r$   r$   r'   r[     s   

zLink.__init__Nr=   )r1   rU   r   rU   )rB   rC   rD   rF   r(   r[   r$   r$   r$   r'   r     s    r   c                      sL   e Zd ZdZdZedd	d
Zd fddZd fddZd ddZ	  Z
S )!	ImageItemz#Renders a placeholder for an image.Fr    r!   r"   r   r#   r   c                 C  s   | t |jdd|jS )zFactory to create markdown element,

        Args:
            markdown (Markdown): The parent Markdown object.
            token (Any): A token from markdown-it.

        Returns:
            MarkdownElement: A new markdown element
        srcrg   )rU   r   r   
hyperlinksr%   r$   r$   r'   r(     s   zImageItem.createdestinationrU   r   r6   r+   c                   s    || _ || _d | _t   d S rR   )r   r   linkra   r[   )r.   r   r   rb   r$   r'   r[     s   zImageItem.__init__r)   r*   c                   s&   |j j| _tdd| _t | d S rK   )rV   r   r   r1   ra   r/   r-   rb   r$   r'   r/     s   
zImageItem.on_enterr9   r   r:   r   r   c                 c  sf    t | jp	| jp	d d}| jpt| jdddd }| jr%|| tj	d|ddd}|V  d S )	Nr   /r   u   🌆 rk   rg   )end)
r   r   r   r1   r   striprsplitr   r   assemble)r.   r9   r:   
link_styletitler1   r$   r$   r'   r<     s   "

zImageItem.__rich_console__r=   )r   rU   r   r6   r#   r+   r>   rA   )rB   rC   rD   rH   r   rF   r(   r[   r/   r<   ri   r$   r$   rb   r'   r     s    r   c                   @  sL   e Zd ZdZ		ddddZed ddZd!ddZd"ddZd ddZ	dS )#r*   z!Manages the console render state.Nmonokair9   r   r:   r   rQ   r   inline_code_lexer
str | Noneinline_code_themerU   r#   r+   c                 C  sD   || _ || _t|| _t | _d | _|d ur td||d| _d S d S )Nrg   )rq   )r9   r:   r   style_stackr   stack_syntaxr   )r.   r9   r:   rQ   r   r   r$   r$   r'   r[     s   
zMarkdownContext.__init__c                 C  s   | j jS )z>Current style which is the product of all styles on the stack.)r   currentr|   r$   r$   r'   rV     s   zMarkdownContext.current_styler1   	node_typec                 C  s\   |dv r$| j dur$| j |}|  | jj| tj|| jj	d dS | jj| | dS )z#Called when the parser visits text.>   fencecode_inlineNr   )
r   	highlightru   r   topr3   r   r   r   r   )r.   r1   r   highlight_textr$   r$   r'   r3     s   zMarkdownContext.on_textrP   str | Stylec                 C  s"   | j j|dd}| j| | jS )zEnter a style context.rJ   r   )r9   r   r   pushrV   )r.   rP   rQ   r$   r$   r'   rO     s   zMarkdownContext.enter_stylec                 C  s   | j  }|S )zLeave a style context.)r   pop)r.   rQ   r$   r$   r'   rW     s   
zMarkdownContext.leave_style)Nr   )r9   r   r:   r   rQ   r   r   r   r   rU   r#   r+   )r#   r   )r1   rU   r   rU   r#   r+   )rP   r   r#   r   )
rB   rC   rD   rH   r[   propertyrV   r3   rO   rW   r$   r$   r$   r'   r*     s    

r*   c                   @  s   e Zd ZU dZi dedededededede	d	e	d
e
dededededededeZded< h dZ						d4d5d'd(Zd6d+d,Zd7d2d3ZdS )8r!   a  A Markdown renderable.

    Args:
        markup (str): A string containing markdown.
        code_theme (str, optional): Pygments theme for code blocks. Defaults to "monokai". See https://pygments.org/styles/ for code themes.
        justify (JustifyMethod, optional): Justify value for paragraphs. Defaults to None.
        style (Union[str, Style], optional): Optional style to apply to markdown.
        hyperlinks (bool, optional): Enable hyperlinks. Defaults to ``True``.
        inline_code_lexer: (str, optional): Lexer to use if inline code highlighting is
            enabled. Defaults to None.
        inline_code_theme: (Optional[str], optional): Pygments theme for inline code
            highlighting, or None for no highlighting. Defaults to None.
    paragraph_openheading_openr   
code_blockblockquote_openhrr   ordered_list_openlist_item_openimage
table_open
tbody_open
thead_opentr_opentd_openth_openz*ClassVar[dict[str, type[MarkdownElement]]]r{   >   semrv   strongr   NrJ   TmarkuprU   rn   rN   JustifyMethod | NonerQ   r   r   r6   r   r   r   r#   r+   c           	      C  sP   t  dd}|| _||| _|| _|| _|| _|| _|| _	|p$|| _
d S )Nstrikethroughr   )r   enabler   parseparsedrn   rN   rQ   r   r   r   )	r.   r   rn   rN   rQ   r   r   r   parserr$   r$   r'   r[     s   
zMarkdown.__init__tokensIterable[Token]c                 c  sL    |D ] }|j dk}|jdk}|jr |s |s | |jE dH  q|V  qdS )zFlattens the token stream.r   imgN)r   r_   children_flatten_tokens)r.   r  r"   is_fenceis_imager$   r$   r'   r  /  s   

zMarkdown._flatten_tokensr9   r   r:   r   r   c                 c  s   |j | jdd}|jdd}t|||| j| jd}| j}| j}d}t	 }| 
|D ]}	|	j}
|	j}|	jdk}|	jdk}|	jd	k}|
d
krO||	j|
 q+|
dkrZ|d|
 q+|
dkre|d|
 q+|
dkrt|	jdd}| jr|j ddd}|t|d7 }|| q+|jt| |	 q+|
dkr| jr|  q+|j }t|tsJ |j ddd}|| ||jj|
 |  |d|
 |j ddd}|| ||j|
 |  |d|
 q+||v r#|
dkr#|
dkr#|r|d|  q+|r|  q+|d|  |	jr||	j|
 |  q+| j |	jp,t!}|| |	}|s9|rD|j| |"| |rq|j }|j p\|jo\|jj#$||}|rp|rf|V  |%||j&E dH  n?|r|j  |	j}|dur||| |j p|jo|jj#$||}|r|r|
dkr|V  |%||j&E dH  |s|r|'| |j(}q+dS )zRender markdown to the console.rJ   r   N)height)r   r   Fr   r   r   r1   	hardbreakr   	softbreakrk   	link_openr   rg   zmarkdown.link_urlr   
link_closezmarkdown.linkz ()r   r   r`   inline))r   rQ   r   r*   r   r   r  inlinesr   r   r  r   r_   nestingr3   r   rU   r   r   r   r   rO   r   r   r   r(   rW   r   rT   r1   plainr   r{   rG   r/   r   r8   renderr:   r4   r   )r.   r9   r:   rQ   r)   r  inline_style_tagsr   _new_line_segmentr"   r   r_   enteringexitingself_closingr   r   r   link_url_styleelement_classshould_renderr1   r$   r$   r'   r<   9  s   


















zMarkdown.__rich_console__)r   NrJ   TNN)r   rU   rn   rU   rN   r  rQ   r   r   r6   r   r   r   r   r#   r+   )r  r  r#   r  rA   )rB   rC   rD   rH   rY   r^   rj   rx   r   r   r   r   r   r   r   r   r   r{   rE   r  r[   r  r<   r$   r$   r$   r'   r!     sZ   
 	


r!   __main__z(Render Markdown to the console with Rich)descriptionpathPATHz%path to markdown file, or - for stdin)metavarhelpz-cz--force-colorforce_color
store_truezforce color for non-terminals)destactionr   r&  z-tz--code-themern   r   zpygments code theme)r)  r   r&  z-iz--inline-code-lexerr   z-yz--hyperlinksr   zenable hyperlinks)r)  r*  r&  z-wz--widthr   z*width of output (default will auto-detect))r   r)  r   r&  z-jz	--justifyrN   zenable full text justifyz-pz--pagepagezuse pager to scroll output)r   -zutf-8)encodingfullrL   )rN   rn   r   r   )fileforce_terminalr   T)r0  r   record)]
__future__r   systypingr   r   markdown_itr   markdown_it.tokenr   version_infor	   typing_extensions
rich.tabler
   rg   r   _loopr   _stackr   r9   r   r   r   r   
containersr   jupyterr   panelr   ruler   segmentr   rQ   r   r   rw   r   r1   r   r   r   rG   rI   rY   r^   rj   rx   r   r   r   r   r   r   r   r   r   r   r*   r!   rB   argparseArgumentParserr  add_argumentr   
parse_argsargsrich.consoler#  stdinreadmarkdown_bodyopenmarkdown_filerN   rn   r   r   r    r+  iopydocStringIOfileior'  r   printpagergetvaluer$   r$   r$   r'   <module>   s   
9	#! *(0 
;



