From 0ef2c7633f38377a7d2de0ac079c433372339581 Mon Sep 17 00:00:00 2001 From: Waylan Limberg Date: Mon, 13 Oct 2008 21:07:53 -0400 Subject: Updated HeaderId extension to recent refactor. Using the quick and dirty monkeypatch - it probably should subclass MarkdownParser. --- markdown_extensions/headerid.py | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) (limited to 'markdown_extensions') diff --git a/markdown_extensions/headerid.py b/markdown_extensions/headerid.py index 73bcb1b..294bfd9 100644 --- a/markdown_extensions/headerid.py +++ b/markdown_extensions/headerid.py @@ -52,18 +52,16 @@ Use with MetaData extension: >>> md u'

A Header

' -By [Waylan Limberg](http://achinghead.com/). +Copyright 2007-2008 [Waylan Limberg](http://achinghead.com/). -Project website: http://achinghead.com/markdown-headerid/ -Contact: waylan [at] gmail [dot] com +Project website: +Contact: markdown@freewisdom.org -License: [BSD](http://www.opensource.org/licenses/bsd-license.php) - -Version: 0.1 (May 2, 2008) +License: BSD (see ../docs/LICENSE for details) Dependencies: * [Python 2.3+](http://python.org) -* [Markdown 1.7+](http://www.freewisdom.org/projects/python-markdown/) +* [Markdown 2.0+](http://www.freewisdom.org/projects/python-markdown/) """ @@ -76,7 +74,7 @@ ID_CHARS = ascii_lowercase + digits + '-_' HEADER_RE = re.compile(r'''^(\#{1,6}) # group(1) = string of hashes ( [^{^#]*) # group(2) = Header text - [\#]* # optional closing hashes (not counted) + [\#]* # optional closing hashes (?:[ \t]*\{[ \t]*\#([-_:a-zA-Z0-9]+)[ \t]*\})? # group(3) = id attr''', re.VERBOSE) @@ -97,10 +95,10 @@ class HeaderIdExtension (markdown.Extension) : def extendMarkdown(self, md, md_globals) : md.IDs = [] - + def _processHeaderId(parent_elem, paragraph) : ''' - Overrides _processHeader of Markdown() and + Overrides __processHeader of MarkdownParser() and adds an 'id' to the header. ''' m = HEADER_RE.match(paragraph[0]) @@ -119,7 +117,7 @@ class HeaderIdExtension (markdown.Extension) : else : message(CRITICAL, "We've got a problem header!") - md._processHeader = _processHeaderId + md.parser._MarkdownParser__processHeader = _processHeaderId def _get_meta(): ''' Return meta data suported by this ext as a tuple ''' -- cgit v1.2.3