diff options
| author | goodger <goodger@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2005-04-07 19:36:11 +0000 |
|---|---|---|
| committer | goodger <goodger@929543f6-e4f2-0310-98a6-ba3bd3dd1d04> | 2005-04-07 19:36:11 +0000 |
| commit | dcc80f043243f34d0373a3150bacfff20b3212ae (patch) | |
| tree | 624c9c69692d40720438d43ee87a41ba82b70e8c /docutils/transforms | |
| parent | 71532b70cb8661bee0e5cb6cdf823c6902eb80bf (diff) | |
| download | docutils-dcc80f043243f34d0373a3150bacfff20b3212ae.tar.gz | |
added "header" & "footer" directives, tests, docs, support, and some tweaks
git-svn-id: http://svn.code.sf.net/p/docutils/code/trunk/docutils@3184 929543f6-e4f2-0310-98a6-ba3bd3dd1d04
Diffstat (limited to 'docutils/transforms')
| -rw-r--r-- | docutils/transforms/frontmatter.py | 3 | ||||
| -rw-r--r-- | docutils/transforms/universal.py | 27 |
2 files changed, 12 insertions, 18 deletions
diff --git a/docutils/transforms/frontmatter.py b/docutils/transforms/frontmatter.py index 8a5581313..22ecbbf25 100644 --- a/docutils/transforms/frontmatter.py +++ b/docutils/transforms/frontmatter.py @@ -258,11 +258,10 @@ class DocInfo(Transform): candidate = document[index] if isinstance(candidate, nodes.field_list): biblioindex = document.first_child_not_matching_class( - nodes.Titular) + (nodes.Titular, nodes.Decorative)) nodelist = self.extract_bibliographic(candidate) del document[index] # untransformed field list (candidate) document[biblioindex:biblioindex] = nodelist - return def extract_bibliographic(self, field_list): docinfo = nodes.docinfo() diff --git a/docutils/transforms/universal.py b/docutils/transforms/universal.py index c77d72df8..4ed7b6896 100644 --- a/docutils/transforms/universal.py +++ b/docutils/transforms/universal.py @@ -32,19 +32,16 @@ class Decorations(Transform): default_priority = 820 def apply(self): - header = self.generate_header() - footer = self.generate_footer() - if header or footer: - decoration = nodes.decoration() - decoration += header - decoration += footer - document = self.document - index = document.first_child_not_matching_class( - nodes.PreDecorative) - if index is None: - document += decoration - else: - document[index:index] = [decoration] + header_nodes = self.generate_header() + if header_nodes: + decoration = self.document.get_decoration() + header = decoration.get_header() + header.children.extend(header_nodes) + footer_nodes = self.generate_footer() + if footer_nodes: + decoration = self.document.get_decoration() + footer = decoration.get_footer() + footer.children.extend(footer_nodes) def generate_header(self): return None @@ -79,9 +76,7 @@ class Decorations(Transform): nodes.reference('', 'reStructuredText', refuri='http://' 'docutils.sourceforge.net/rst.html'), nodes.Text(' source.\n')]) - footer = nodes.footer() - footer += nodes.paragraph('', '', *text) - return footer + return [nodes.paragraph('', '', *text)] else: return None |
