Ñò
éíÑXc @ sÓ d Z d d k Z d d k l Z d d k Z d d k l Z l Z l Z e e d Z e i d ƒ Z
d e i i f d „ ƒ YZ
d e i f d
„ ƒ YZ d d „ Z e d j o d d k Z e i ƒ n d S(
s¶
HeaderID Extension for Python-Markdown
======================================
Adds ability to set HTML IDs for headers.
Basic usage:
>>> import markdown
>>> text = "# Some Header # {#some_id}"
>>> md = markdown.markdown(text, ['headerid'])
>>> md
u'
Some Header
'
All header IDs are unique:
>>> text = '''
... #Header
... #Another Header {#header}
... #Third Header {#header}'''
>>> md = markdown.markdown(text, ['headerid'])
>>> md
u'\n\n'
To fit within a html template's hierarchy, set the header base level:
>>> text = '''
... #Some Header
... ## Next Level'''
>>> md = markdown.markdown(text, ['headerid(level=3)'])
>>> md
u'\nNext Level
'
Turn off auto generated IDs:
>>> text = '''
... # Some Header
... # Header with ID # { #foo }'''
>>> md = markdown.markdown(text, ['headerid(forceid=False)'])
>>> md
u'Some Header
\nHeader with ID
'
Use with MetaData extension:
>>> text = '''header_level: 2
... header_forceid: Off
...
... # A Header'''
>>> md = markdown.markdown(text, ['headerid', 'meta'])
>>> md
u'A Header
'
Copyright 2007-2008 [Waylan Limberg](http://achinghead.com/).
Project website:
Contact: markdown@freewisdom.org
License: BSD (see ../docs/LICENSE for details)
Dependencies:
* [Python 2.3+](http://python.org)
* [Markdown 2.0+](http://www.freewisdom.org/projects/python-markdown/)
iÿÿÿÿN( t etree( t ascii_lowercaset digitst punctuations -_s ^(.*)_([0-9]+)$t HeaderIdProcessorc B sb e Z d Z e i d e i ƒ Z g Z d „ Z d „ Z d „ Z
e d „ Z d „ Z
d „ Z RS( s, Replacement BlockProcessor for Header IDs. s˜ (^|\n)
(?P\#{1,6}) # group('level') = string of hashes
(?P.*?) # group('header') = Header text
\#* # optional closing hashes
(?:[ \t]*\{[ \t]*\#(?P[-_:a-zA-Z0-9]+)[ \t]*\})?
(\n|$) # ^^ group('id') = id attribute
c C s t | i i | ƒ ƒ S( N( t boolt REt search( t selft parentt block( ( s@ /usr/lib/python2.6/site-packages/markdown/extensions/headerid.pyt test[ s c C su | i d ƒ } | i i | ƒ } | o<| | i ƒ } | | i ƒ } | o | i i | | g ƒ n | i ƒ \ } } t | i d ƒ ƒ | } | d j o
d } n t
i i | d | ƒ }
| i d ƒ i
ƒ |
_ | i d ƒ o&