Opened 16 years ago
Closed 16 years ago
#4317 closed defect (fixed)
IncludeSourcePartial does not handle case where one line is returned
Reported by: | Chris Heller | Owned by: | Chris Heller |
---|---|---|---|
Priority: | low | Component: | IncludeSourcePartialPlugin |
Severity: | normal | Keywords: | |
Cc: | Trac Release: | 0.11 |
Description
In ticket:4315 there was an issue with line separators that caused the included source to end up as one line. That broke the macro because it assumed that the mimeview render() method would always return a Genshi object that could have generate() called on it.
The line separator issue has been fixed, but I'm not sure of the best answer for the case where the included source ends up being just one line anyways.
The render() docstring says it "Can return the generated XHTML text as a single string", so it seems something like this is the best course of action.
-
includesource/IncludeSource.py
143 143 mv = Mimeview(self.env) 144 144 src = mv.render(formatter.context, mimetype, src, file_name, url, ['givenlineno']) 145 145 146 if not hasattr(src, 'generate'): # got XHTML string back 147 from genshi.input import XML # so we convert it to use 148 src = XML(src) # with Transformers below 149 146 150 # the _render_source method will always set the CSS class 147 151 # of the annotator to it's name; there isn't an easy way 148 152 # to override that. We could create our own CSS class for
If there are any Genshi experts that would like to comment, feel free to do so. Otherwise I'll commit this change after a bit more testing.
Added extra check for this condition in changeset:5438