#!/usr/bin/env python
"""
-markdown-plugin.py -- A Python-Markdown v2.x plugin for PyBlosxom.
+markdown-plugin.py -- A Python Markdown v2.x plugin for PyBlosxom.
-This plugin requires Python-Markdown v2.x, which you can download from:
+This plugin requires Python Markdown v2.x, which you can download from:
http://www.freewisdom.org/projects/python-markdown/
-Extract python-markdown into your pyblosxom plugins dir alongside this
-plugin. Your plugins dir should look like this:
+Extract the 'markdown' directory from the Python Markdown tarball (the
+directory containing __init__.py, not the Markdown-2.x.y directory) into your
+pyblosxom plugins dir alongside this plugin. Your plugins dir should look like
+this:
plugins/ <-- your pyblosxom plugins dir
markdown-plugin.py <-- this file
- markdown.py <-- the python-markdown command line script
- markdown/ <-- directory containing python-markdown's files
+ markdown/ <-- the Python Markdown module
... <-- (any other pyblosxom plugins)
-Now any posts with filenames ending in `.mkdn` will be passed through
-python-markdown.
+Now any posts with filenames ending in one of the FILENAME_EXTENSIONS defined
+below will be passed through python-markdown.
Copyright (C) Benjamin Mako Hill, 2005
-Updated for python-markdown 2 by seanh 2009
+Updated for Python Markdown 2 by seanh 2009
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
"""
PREFORMATTER_ID = 'markdown'
FILENAME_EXTENSIONS = ('txt','text','mkdn','markdown','md','mdown','markdn','mkd')
-_version__ = '0.2'
+_version__ = '0.3'
__author__ = 'Benjamin Mako Hill <mako@atdot.cc>'
__author__ = 'seanh <snhmnd@gmail.com>'
-import re,codecs
+import codecs
import markdown
from Pyblosxom import tools
md = markdown.Markdown(
#safe_mode=True,
output_format='html4',
- extensions=[ 'codehilite', # Requires python-pygments
- 'extra', # Abbreviations, definition lists, fenced code blocks,
- # footnotes, headerid and tables.
- #'html_tidy', # Enable this if you have libtidy and uTidylib
+ extensions=[ #'codehilite', # Requires python-pygments
+ 'extra',
+ #'html_tidy', # Requires libtidy and uTidylib
#'imagelinks', # Broken?
#'meta',
#'rss',
- 'toc',
+ #'toc',
#'wikilinks'
]
)
return parse(''.join(args['story']))
def parse(story):
- # Convert the ASCII text to HTML with python-markdown.
html = md.convert(story)
- # Reset python-markdown ready for next time.
md.reset()
return html