Docutils 0.4 review

Download
by rbytes.net on

Docutils is an open-source text processing system for processing plaintext documentation into useful formats, such as HTML or LaTeX.

License: Public Domain
File size: 0K
Developer: Felix Wiemann
0 stars award from rbytes.net

Docutils is an open-source text processing system for processing plaintext documentation into useful formats, such as HTML or LaTeX.

Docutils project includes reStructuredText, the easy to read, easy to use, what-you-see-is-what-you-get plaintext markup language.

Requirements:
Python 2.2 or later

What's New in This Release:
General:
Updated the project policies for trunk/branch development & version numbering.
docutils/__init__.py:
Added __version_details__ attribute to describe code source (repository/snapshot/release).
Replaced default_transforms attribute of TransformSpec with get_transforms() method.
docutils/core.py:
Added publish_doctree and publish_from_doctree convenience functions, for document tree extraction and reprocessing.
docutils/io.py:
Added DocTreeInput class, for reprocessing existing documents.
Added support for non-Unicode (e.g. binary) writer output.
docutils/nodes.py:
Re-introduced Targetable.indirect_reference_name, for MoinMoin/reST compatibility (removed in r3124/r3129).
Added serial_escape function; escapes string values that are elements of a list, for serialization. Modified Docutils-XML writing (Element._dom_node) and pseudo-XML writing (Element.starttag) to use serial_escape.
Added Node.deepcopy() method.
Removed the internal lists document.substitution_refs, document.anonymous_refs, and document.anonymous_targets.
Added a "container" element.
Fixed bug where values of list-valued attributes of elements originating from custom interpreted text roles (i.e., with custom classes) were being shared between element instances. Reported by Shmuel Zeigerman.
docutils/statemachine.py:
Added trailing whitespace stripping to string2lines().
Added StringList.pad_double_width() & .replace() for East Asian double-width character support.
docutils/utils.py:
Added east_asian_column_width() for double-width character support.
docutils/languages/ja.py: Added to project: Japanese mappings by Hisashi Morita.
docutils/languages/zh_cn.py: Added to project: Simplified Chinese mappings by Panjunyong.
docutils/parsers/null.py: Added to project; a do-nothing parser.
docutils/parsers/rst/__init__.py:
Added validator to tab_width setting, with test. Closes SF bug #1212515, report from Wu Wei.
docutils/parsers/rst/states.py:
Fixed bug with escaped colons indicating a literal block.
Fixed bug with enumerated lists (SF#1254145).
Backslash-escaped colons inside of field names are now allowed.
Targets (implicit and explicit), anonymous hyperlink references and auto-numbered footnote references inside of substitution definitions are now disallowed.
Fixed bug: list items with blank first lines.
Fixed bug: block quote attributions with indented second lines.
Added East Asian double-width character support (Python 2.4 only).
docutils/parsers/rst/tableparser.py:
Added East Asian double-width character support (Python 2.4 only).
docutils/parsers/rst/directives/body.py:
Added the "container" directive.
docutils/parsers/rst/directives/misc.py:
Added the "default-role", "title", and "date" directives.
Added standard data file syntax to the "include" directive.
Added support for "class" directive content.
docutils/parsers/rst/directives/images.py:
Added indirect_reference_name support for images with a target option.
Added support for image width and height units.
Fixed bug with image "target" options.
docutils/parsers/rst/directives/references.py:
Added "class" attribute to "target-notes" directive, for footnote_reference classes.
docutils/parsers/rst/include/: Directory added to project; contains standard data files for the "include" directive. Initial contents: character entity substitution definition sets, and a set of definitions for S5/HTML presentations.
docutils/parsers/rst/languages/ja.py: Added to project: Japanese mappings by David Goodger.
docutils/parsers/rst/languages/zh_cn.py: Added to project: Simplified Chinese mappings by Panjunyong.
docutils/readers/__init__.py:
Added universal.Decorations and universal.ExposeInternals transforms as default transforms for all readers.
Added ReReader base class for readers that reread an existing document tree.
docutils/readers/doctree.py: Added to project; a reader for existing document trees.
docutils/transforms/frontmatter.py:
Fixed the DocInfo transform to handle SVN-style expansion of the "Date" keyword.
In DocInfo.extract_authors, treat the contents of "authors" fields uniformly.
docutils/transforms/misc.py:
Added misc.Transitions transform, extracted from universal.FinalChecks.
docutils/transforms/references.py:
Added references.DanglingReferences transform, extracted from universal.FinalChecks.
Fixed bug with doubly-indirect substitutions.
Added footnote_reference classes attribute to "TargetNotes".
Fixed bug with circular substitution definitions that put Docutils into an infinite loop.
docutils/transforms/universal.py:
Added universal.ExposeInternals transform, extracted from universal.FinalChecks.
Removed universal.FinalChecks transform (logic has been moved to several new transforms).
Fixed bug with the "expose_internals" setting and Text nodes (exposed by the "rawsource" internal attribute).
Added the universal.StripComments transform, implementation of the "strip_comments" setting.
docutils/transforms/writer_aux.py: Added to project; auxiliary transforms for writers.
Added Compound transform, which flattens compound paragraphs.
docutils/writers/: Several writer modules (html4css1.py) were converted into packages. Support modules and data files have been moved into the packages. The stylesheets for the HTML writers are now installed along with the code, the code knows where to find them, and the default is to use them (actually, to embed them). Some adjustments to configuration files may be necessary. The easiest way to obtain the new default behavior is to remove all settings whose name includes "stylesheet".
docutils/writers/__init__.py:
Added universal.Messages and universal.FilterMessages transforms as default transforms for all writers.
Added UnfilteredWriter base class for writers that pass the document tree on unchanged.
docutils/writers/docutils_xml.py:
Made xmlcharrefreplace the default output encoding error handler.
docutils/writers/html4css1/:
Added support for image width and height units.
Made xmlcharrefreplace the default output encoding error handler.
Made --embed-stylesheet the default rather than --link-stylesheet.
Moved "id" attribute from container (section etc.) to title's tag, to be on the same tag as "name". (!!! To be reverted in Docutils 0.5.)
Added vertical space between fields of field lists.
Added --compact-field-lists option to remove vertical space in simple field lists.
Made cloaking of email addresses with --cloak-email-addresses less obtrusive.
Fixed support for centered images.
Added support for class="compact" & class="open" lists.
docutils/writers/latex2e/:
Underscores in citekeys are no longer escaped.
docutils/writers/newlatex2e/unicode_map.py: Added to project; mapping of Unicode characters to LaTeX equivalents.
docutils/writers/s5_html/: Package added to project; writer for S5/HTML slide shows.
docs/dev/distributing.txt: Added to project; guide for distributors (package maintainers).
docs/dev/hacking.txt: Added to project; guide for developers.
docs/ref/doctree.txt:
Updated for plural attributes "classes", "ids", "names", "dupnames".
Added the "container" element.
docs/ref/docutils.dtd:
Updated for plural attributes "classes", "ids", "names", "dupnames".
docs/user/emacs.txt: Added to project; a document about Emacs support for reStructuredText and Docutils.
docs/user/links.txt: Added to project; lists of Docutils-related links.
docs/user/mailing-lists.txt: Added to project; information about Docutils-related mailing lists and how to access them.
docs/user/slide-shows.txt: Added to project; example of and docs for the S5/HTML writer (rst2s5.py front end).
docs/ref/rst/definitions.txt: "reStructuredText Standard Definition Files", added to project.
test/coverage.sh: Added to project; test coverage script.
test/DocutilsTestSupport.py:
Added support for specifying runtime settings at the suite level.
test/test_functional.py:
Added the clear_output_directory function.
Added support for _test_more functions in functional test config files.
tools/rst2s5.py: Added to project; front end for the S5/HTML writer.
tools/rstpep2html.py: Renamed from pep.py.
tools/dev/create_unimap.py: Added to project; script to create the docutils/writers/unimap_latex.py mapping file.
tools/dev/profile_docutils.py: Added to project; profiler script.
tools/dev/unicode2rstsubs.py: Moved from tools/unicode2rstsubs.py.
tools/editors/emacs/restructuredtext.el, tools/editors/emacs/rst-html.el, tools/editors/emacs/rst-mode.el: Removed from project; the functionality is now contained in rst.el.
tools/editors/emacs/rst.el: Added to project. Added many features and fixed many bugs. See docs/user/emacs.txt for details.
tools/stylesheets: Removed from project. Stylesheets have been renamed and moved into writer packages.

Docutils 0.4 search tags