rst: import docutils lazily, to avoid errors during ikiwiki --setup
Bug-Debian: http://bugs.debian.org/637604 Signed-off-by: Simon McVittie <smcv@debian.org>master
parent
0bc682c918
commit
1e81affead
14
plugins/rst
14
plugins/rst
|
@ -36,10 +36,22 @@ __author__ = 'martin f. krafft <madduck@madduck.net>'
|
||||||
__copyright__ = 'Copyright © ' + __author__
|
__copyright__ = 'Copyright © ' + __author__
|
||||||
__licence__ = 'BSD-2-clause'
|
__licence__ = 'BSD-2-clause'
|
||||||
|
|
||||||
from docutils.core import publish_parts;
|
|
||||||
from proxy import IkiWikiProcedureProxy
|
from proxy import IkiWikiProcedureProxy
|
||||||
|
|
||||||
|
publish_parts = None
|
||||||
|
|
||||||
def rst2html(proxy, *args):
|
def rst2html(proxy, *args):
|
||||||
|
# delayed import so docutils is only needed if you *use* rst -
|
||||||
|
# http://bugs.debian.org/637604
|
||||||
|
global publish_parts
|
||||||
|
if publish_parts is None:
|
||||||
|
try:
|
||||||
|
from docutils.core import publish_parts
|
||||||
|
except ImportError, e:
|
||||||
|
proxy.error('cannot import docutils.core: %s: %s' %
|
||||||
|
(e.__class__.__name__, e))
|
||||||
|
raise
|
||||||
|
|
||||||
kwargs = _to_dict(args)
|
kwargs = _to_dict(args)
|
||||||
parts = publish_parts(kwargs["content"],
|
parts = publish_parts(kwargs["content"],
|
||||||
writer_name="html",
|
writer_name="html",
|
||||||
|
|
Loading…
Reference in New Issue