reSTを導入するも
import re, urllib register = Library() BRACKET_LINK_RE=re.compile("\[\[(.+?)\]\]") def restructuredtext_rigid(value): try: from docutils.core import publish_parts except ImportError: return value else: parts = publish_parts(source=value, settings_overrides={'doctitle_xform': False},writer_name="html4css1") return parts["fragment"] @register.filter def wikify(value): """Makes WikiWords""" def quote_link(ob): word=ob.group(1) return r'<a href="/wiki/%s">%s</a>' % (urllib.quote(word), word) #return restructuredtext_rigid(value) value = restructuredtext_rigid(value) return BRACKET_LINK_RE.sub(quote_link, value)
昨日のwikiの内容を変更するカスタムフィルターにrestructuredtextを導入しようかとあれこれテストしてみました。
test aa
を入力すると、
<h1>test</h1>
になるはずのtestが消える、、、、しかしこれはメーリングリストにもあったので
自前のrestructuredtext_rigid(value)を作って
parts = publish_parts(source=value, settings_overrides={'doctitle_xform': False}, writer_name="html4css1") return parts["fragment"]
で解決しました。
しかしそうすると今までできてた
[[wikititle]]
で
<a href="wikititle">wikititle</a>
が、英語だとできるけど日本語だとエラーになる症状が、、、、、
気になるところですが、Djangoの勉強と全く関係なくなるので日本語のwikinameはしない方向で明日からがんばりたいと思います。