We should add a django.contrib.markup app, which would simply contain template tags to convert between markup languages such as Textile, Markdown, ReST, etc.
Here's a patch for a "textile" template filter:
Index: defaultfilters.py
===================================================================
--- defaultfilters.py (revision 356)
+++ defaultfilters.py (working copy)
@@ -416,6 +416,23 @@
from pprint import pformat
return pformat(value)
+def textile(value, _):
+ "Generates XHTML from Textile markup developed by Dean Allen"
+ try:
+ # Try and import textile
+ from textile import textile
+ except ImportError:
+ # No textile? Just return text again
+ return value
+
+ try:
+ value = textile(value)
+ except:
+ # Textile doesn't have a good system for rejecting bad input!
+ pass
+
+ return value
+
# Syntax: template.register_filter(name of filter, callback, has_argument)
template.register_filter('add', add, True)
template.register_filter('addslashes', addslashes, False)
@@ -452,6 +469,7 @@
template.register_filter('slugify', slugify, False)
template.register_filter('stringformat', stringformat, True)
template.register_filter('striptags', striptags, False)
+template.register_filter('textile', textile, False)
template.register_filter('time', time, True)
template.register_filter('timesince', timesince, False)
template.register_filter('title', title, False)