Author: grubert Date: 2009-08-24 08:18:03 +0200 (Mon, 24 Aug 2009) New Revision: 6098 Modified: trunk/docutils/HISTORY.txt trunk/docutils/docutils/writers/manpage.py trunk/docutils/test/functional/expected/standalone_rst_manpage.man trunk/docutils/test/test_writers/test_manpage.py Log: Do not print date at document end, this is done by the viewer. Fix storage of docinfo fields for none standard fields. Modified: trunk/docutils/HISTORY.txt =================================================================== --- trunk/docutils/HISTORY.txt 2009-08-24 05:56:33 UTC (rev 6097) +++ trunk/docutils/HISTORY.txt 2009-08-24 06:18:03 UTC (rev 6098) @@ -117,6 +117,8 @@ * docutils/writers/manpage.py - Do not print version at document end, this is done by the viewer. + - Do not print date at document end, this is done by the viewer. + - Fix storage of docinfo fields for none standard fields. * docutils/tools/rst2man.py Modified: trunk/docutils/docutils/writers/manpage.py =================================================================== --- trunk/docutils/docutils/writers/manpage.py 2009-08-24 05:56:33 UTC (rev 6097) +++ trunk/docutils/docutils/writers/manpage.py 2009-08-24 06:18:03 UTC (rev 6098) @@ -188,7 +188,8 @@ "copyright" : "", "version" : "", } - self._docinfo_keys = [] # a list to keep the sequence as in source + self._docinfo_keys = [] # a list to keep the sequence as in source. + self._docinfo_names = {} # to get name from text not normalized. self._in_docinfo = None self._active_table = None self._in_literal = False @@ -564,7 +565,7 @@ if self._docinfo['author']: self.body.append('.SH AUTHOR\n%s\n' % ', '.join(self._docinfo['author'])) - skip = ('author', 'copyright', + skip = ('author', 'copyright', 'date', 'manual_group', 'manual_section', 'subtitle', 'title', 'title_upper', 'version') @@ -579,9 +580,11 @@ self.defs['indent'][1], ) ) elif not name in skip: - self.body.append("\n%s: %s\n" % ( - self.language.labels.get(name, name), - self._docinfo[name]) ) + if name in self._docinfo_names: + label = self._docinfo_names[name] + else: + label = self.language.labels.get(name, name) + self.body.append("\n%s: %s\n" % (label, self._docinfo[name]) ) if self._docinfo['copyright']: self.body.append('.SH COPYRIGHT\n%s\n' % self._docinfo['copyright']) @@ -628,8 +631,9 @@ def visit_field_body(self, node): if self._in_docinfo: - self._docinfo[ - self._field_name.lower().replace(" ","_")] = node.astext() + name_normalized = self._field_name.lower().replace(" ","_") + self._docinfo_names[name_normalized] = self._field_name + self.visit_docinfo_item(node, name_normalized) raise nodes.SkipNode def depart_field_body(self, node): Modified: trunk/docutils/test/functional/expected/standalone_rst_manpage.man =================================================================== --- trunk/docutils/test/functional/expected/standalone_rst_manpage.man 2009-08-24 05:56:33 UTC (rev 6097) +++ trunk/docutils/test/functional/expected/standalone_rst_manpage.man 2009-08-24 06:18:03 UTC (rev 6098) @@ -106,8 +106,6 @@ Discussion is still open. .SH AUTHOR gr...@us... - -Date: 2006-10-22 .SH COPYRIGHT public domain .\" Generated by docutils manpage writer. Modified: trunk/docutils/test/test_writers/test_manpage.py =================================================================== --- trunk/docutils/test/test_writers/test_manpage.py 2009-08-24 05:56:33 UTC (rev 6097) +++ trunk/docutils/test/test_writers/test_manpage.py 2009-08-24 06:18:03 UTC (rev 6098) @@ -78,6 +78,7 @@ :Version: 0.1 :Manual section: 1 :Manual group: text processing +:Arbitrary field: some text SYNOPSIS ======== @@ -134,7 +135,7 @@ .SH AUTHOR so...@so... -Date: 2009-08-05 +Arbitrary field: some text .SH COPYRIGHT public domain .\" Generated by docutils manpage writer. |