[Checkins] SVN: zope.introspectorui/trunk/src/zope/introspectorui/util.py Add docstring sanitizer from zope.app.apidoc.
Uli Fouquet
uli at gnufix.de
Mon Aug 11 10:04:29 EDT 2008
Log message for revision 89651:
Add docstring sanitizer from zope.app.apidoc.
Changed:
U zope.introspectorui/trunk/src/zope/introspectorui/util.py
-=-
Modified: zope.introspectorui/trunk/src/zope/introspectorui/util.py
===================================================================
--- zope.introspectorui/trunk/src/zope/introspectorui/util.py 2008-08-11 13:58:08 UTC (rev 89650)
+++ zope.introspectorui/trunk/src/zope/introspectorui/util.py 2008-08-11 14:04:28 UTC (rev 89651)
@@ -24,6 +24,7 @@
'restructuredtext': 'zope.source.rest'
}
+space_re = re.compile('\n^( *)\S', re.M)
class CodeBreadcrumbProvider(grok.Adapter):
"""An adapter, that adapts 'ICodeView' objects, i.e. all views
@@ -56,3 +57,8 @@
# The format can also contain the language, so just get the first part
format = format.split(' ')[0]
return _format_dict.get(format, 'zope.source.plaintext')
+
+def dedent_string(text):
+ """Dedent the docstring, so that docutils can correctly render it."""
+ dedent = min([len(match) for match in space_re.findall(text)] or [0])
+ return re.compile('\n {%i}' % dedent, re.M).sub('\n', text)
More information about the Checkins
mailing list