--- 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):
--- 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