
    gi^                         d Z ddlZddlmZ ddlmZ dZdZ ej        d	                    ee                    Z
 G d	 d
          Zd ZdS )u  
Pangu Extension
~~~~~~~~~~~~~~~

Separate CJK characters with latin letters.

Reference: `vinta's pangu project <https://github.com/vinta/pangu.js>`_

Example::

    input: 中国有13亿人口
    output: 中国有<span class="pangu"></span>13<span class="pangu"></span>亿人口

    from marko import Markdown

    markdown = Markdown(extensions=['pangu'])
    print(markdown(text))
    N)HTMLRenderer)MarkoExtensionzu\u2e80-\u2eff\u2f00-\u2fdf\u3040-\u309f\u30a0-\u30ff\u3100-\u312f\u3200-\u32ff\u3400-\u4dbf\u4e00-\u9fff\uf900-\ufaffz	a-zA-Z0-9z5((?<=[{cjk}])(?=[{latin}])|(?<=[{latin}])(?=[{cjk}])))cjklatinc                        e Zd Z fdZ xZS )PanguRendererMixinc                     t                                          |          }t          | t                    s|S t                              d|          S )Nz<span class="pangu"></span>)superrender_raw_text
isinstancer   PANGU_REsub)selfelementrv	__class__s      g/var/www/development/aibuddy-work/election-extract/venv/lib/python3.11/site-packages/marko/ext/pangu.pyr   z"PanguRendererMixin.render_raw_text&   sF    WW$$W--$-- 	I||92>>>    )__name__
__module____qualname__r   __classcell__)r   s   @r   r   r   %   s8        ? ? ? ? ? ? ? ? ?r   r   c                  .    t          t          g          S )N)renderer_mixins)r   r    r   r   make_extensionr   -   s    +=*>????r   )__doc__remarkor   marko.helpersr   CJK_RELATIN_REcompileformatr   r   r   r   r   r   <module>r%      s    & 
			       ( ( ( ( ( (<  2:<CC( D   ? ? ? ? ? ? ? ?@ @ @ @ @r   