# HG changeset patch # User Tero Marttila # Date 1410661423 -10800 # Node ID aa437984ddc53a7622abec559247c326648feb87 # Parent eabfeaa7b2797307f1c8ea30c2bd788a46fbc878 qmsk_www_pages: markdown diff -r eabfeaa7b279 -r aa437984ddc5 qmsk_www_pages/pages.py --- a/qmsk_www_pages/pages.py Sun Sep 14 04:58:16 2014 +0300 +++ b/qmsk_www_pages/pages.py Sun Sep 14 05:23:43 2014 +0300 @@ -5,6 +5,8 @@ import logging; log = logging.getLogger('qmsk_www_pages.pages') import os, os.path +import markdown + class NotFound (Exception): pass @@ -320,10 +322,28 @@ def render_html (self, request): return self.open().read() +class MarkdownPage (Page): + FORMAT = 'html5' + + def __init__ (self, path, name, tree, parents, + format=FORMAT, + **opts + ) : + super(MarkdownPage, self).__init__(path, name, tree, parents, **opts) + + self.format = format + + def render_html (self, request): + return markdown.markdown(self.open().read(), + output_format = self.format, + ) + SITE = Site.lookup() TYPES = { 'html': HTML_Page, + 'md': MarkdownPage, + 'markdown': MarkdownPage, } def page (page): diff -r eabfeaa7b279 -r aa437984ddc5 requirements.txt --- a/requirements.txt Sun Sep 14 04:58:16 2014 +0300 +++ b/requirements.txt Sun Sep 14 05:23:43 2014 +0300 @@ -1,1 +1,2 @@ Django==1.7 +Markdown==2.5