Repository URL to install this package:
|
Version:
2.6.6 ▾
|
ó
ÂöWc @@ s§ d 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 d d l Z d
e f d YZ
d e f d
YZ d Z d S( u¿
Fenced Code Extension for Python Markdown
=========================================
This extension adds Fenced Code Blocks to Python-Markdown.
See <https://pythonhosted.org/Markdown/extensions/fenced_code_blocks.html>
for documentation.
Original code Copyright 2007-2008 [Waylan Limberg](http://achinghead.com/).
All changes Copyright 2008-2014 The Python Markdown Project
License: [BSD](http://www.opensource.org/licenses/bsd-license.php)
i ( t absolute_import( t unicode_literalsi ( t Extensioni ( t Preprocessor( t
CodeHilitet CodeHiliteExtensiont parse_hl_linesNt FencedCodeExtensionc B@ s e Z d Z RS( c C@ s- | j | | j j d t | d d S( u7 Add FencedBlockPreprocessor to the Markdown instance. u fenced_code_blocku >normalize_whitespaceN( t registerExtensiont
preprocessorst addt FencedBlockPreprocessor( t selft mdt
md_globals( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyt extendMarkdown s
( t __name__t
__module__R ( ( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyR s R c B@ sR e Z e j d e j e j Be j B Z d Z d Z d Z
d Z d Z RS( uT
(?P<fence>^(?:~{3,}|`{3,}))[ ]* # Opening ``` or ~~~
(\{?\.?(?P<lang>[a-zA-Z0-9_+-]*))?[ ]* # Optional {, and lang
# Optional highlight lines, single- or double-quote-delimited
(hl_lines=(?P<quot>"|')(?P<hl_lines>.*?)(?P=quot))?[ ]*
}?[ ]*\n # Optional closing }
(?P<code>.*?)(?<=\n)
(?P=fence)[ ]*$u <pre><code%s>%s</code></pre>u class="%s"c C@ s, t t | j | t | _ i | _ d S( N( t superR t __init__t Falset checked_for_codehilitet codehilite_conf( R R
( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyR 1 s c C@ sÊ | j sK x3 | j j D]% } t | t r | j | _ Pq q Wt | _ n d j | } x`| j j
| } | r¹d } | j d r£ | j | j d } n | j rOt
| j d d | j d d d | j d d d
| j d d d | j d
d d | j d pd d | j d d d t | j d } | j } n% | j | | j | j d f } | j j j | d t } d | | j | | | j f } q] Pq] | j d S( u6 Match and store Fenced Code Blocks in the HtmlStash. u
u u langu codet linenumsu linenumsi t
guess_langu
guess_langt css_classu css_classt styleu pygments_stylet langt noclassesu noclassest hl_linesu hl_linest safeu %s
%s
%sN( R t markdownt registeredExtensionst
isinstanceR t configR t Truet joint FENCED_BLOCK_REt searcht groupt LANG_TAGR t NoneR t hilitet CODE_WRAPt _escapet htmlStasht storet startt endt split( R t linest extt textt mR t highlitert codet placeholder( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyt run7 s@ c C@ sL | j d d } | j d d } | j d d } | j d d } | S( u basic html escaping u &u &u <u <u >u >u "u "( t replace( R t txt( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyR, f s
(
R R t ret compilet MULTILINEt DOTALLt VERBOSER% R+ R( R R9 R, ( ( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyR % s /c O@ s
t | | S( N( R ( t argst kwargs( ( s= build/lib.linux-x86_64-2.7/markdown/extensions/fenced_code.pyt
makeExtensiono s ( t __doc__t
__future__R R t R R R t
codehiliteR R R R<