class documentation

class Writer(Component):

Known subclasses: docutils.writers._html_base.Writer, docutils.writers.docutils_xml.Writer, docutils.writers.latex2e.Writer, docutils.writers.manpage.Writer, docutils.writers.odf_odt.Writer, docutils.writers.pseudoxml.Writer, docutils.writers.UnfilteredWriter

View In Hierarchy

Abstract base class for docutils Writers.

Each writer module or package must export a subclass also called 'Writer'. Each writer must support all standard node types listed in docutils.nodes.node_class_names.

The write() method is the main entry point.

Method __init__ Undocumented
Method assemble​_parts Assemble the self.parts dictionary. Extend in subclasses.
Method get​_transforms Transforms required by this class. Override in subclasses.
Method translate Do final translation of self.document into self.output. Called from write. Override in subclasses.
Method write Process a document into its final form.
Class Variable component​_type Name of the component type ('reader', 'parser', 'writer'). Override in subclasses.
Class Variable config​_section The name of the config file section specific to this component (lowercase, no brackets). Override in subclasses.
Class Variable output Final translated form of document (Unicode string for text, binary string for other forms); set by translate.
Instance Variable destination docutils.io Output object; where to write the document. Set by write.
Instance Variable document The document to write (Docutils doctree); set by write.
Instance Variable language Language module for the document; set by write.
Instance Variable parts Mapping of document part names to fragments of self.output. Values are Unicode strings; encoding is up to the client. The 'whole' key should contain the entire document output.

Inherited from Component:

Method supports Is format supported by this component?
Class Variable supported Names for this component. Override in subclasses.

Inherited from SettingsSpec (via Component):

Class Variable config​_section​_dependencies No summary
Class Variable relative​_path​_settings Settings containing filesystem paths. Override in subclasses. Settings listed here are to be interpreted relative to the current working directory.
Class Variable settings​_default​_overrides A dictionary of auxiliary defaults, to override defaults for settings defined in other components. Override in subclasses.
Class Variable settings​_defaults A dictionary of defaults for settings not in settings_spec (internal settings, intended to be inaccessible by command-line and config file). Override in subclasses.
Class Variable settings​_spec Runtime settings specification. Override in subclasses.

Inherited from TransformSpec (via Component):

Class Variable default​_transforms Undocumented
Class Variable unknown​_reference​_resolvers No summary
def assemble_parts(self):
Assemble the self.parts dictionary. Extend in subclasses.
def get_transforms(self):
def translate(self):

Do final translation of self.document into self.output. Called from write. Override in subclasses.

Usually done with a docutils.nodes.NodeVisitor subclass, in combination with a call to docutils.nodes.Node.walk() or docutils.nodes.Node.walkabout(). The NodeVisitor subclass must support all standard elements (listed in docutils.nodes.node_class_names) and possibly non-standard elements used by the current Reader as well.

def write(self, document, destination):

Process a document into its final form.

Translate document (a Docutils document tree) into the Writer's native format, and write it out to its destination (a docutils.io.Output subclass object).

Normally not overridden or extended in subclasses.

component_type: str =
Name of the component type ('reader', 'parser', 'writer'). Override in subclasses.
config_section: str =
destination =
docutils.io Output object; where to write the document. Set by write.
document =
The document to write (Docutils doctree); set by write.
language =
Language module for the document; set by write.
parts: dict =
Mapping of document part names to fragments of self.output. Values are Unicode strings; encoding is up to the client. The 'whole' key should contain the entire document output.