2008-03-25 19:20:26 +00:00
|
|
|
.. _writing-builders:
|
|
|
|
|
|
2014-01-20 17:21:44 +01:00
|
|
|
Builder API
|
|
|
|
|
===========
|
2008-03-16 11:19:26 +00:00
|
|
|
|
2008-11-29 20:04:11 +01:00
|
|
|
.. currentmodule:: sphinx.builders
|
2008-06-18 18:46:46 +00:00
|
|
|
|
|
|
|
|
.. class:: Builder
|
2008-03-16 11:19:26 +00:00
|
|
|
|
|
|
|
|
This is the base class for all builders.
|
|
|
|
|
|
2024-06-19 14:51:20 +02:00
|
|
|
It follows this basic workflow:
|
|
|
|
|
|
2024-06-20 10:40:22 +02:00
|
|
|
.. graphviz:: /_static/diagrams/sphinx_build_flow.dot
|
2024-06-19 14:51:20 +02:00
|
|
|
:caption: UML for the standard Sphinx build workflow
|
|
|
|
|
|
|
|
|
|
.. rubric:: Overridable Attributes
|
|
|
|
|
|
|
|
|
|
These attributes should be set on builder sub-classes:
|
2017-04-14 11:01:09 +02:00
|
|
|
|
|
|
|
|
.. autoattribute:: name
|
|
|
|
|
.. autoattribute:: format
|
2017-12-28 20:45:02 +00:00
|
|
|
.. autoattribute:: epilog
|
2021-09-18 01:26:12 +09:00
|
|
|
.. autoattribute:: allow_parallel
|
2017-04-14 11:01:09 +02:00
|
|
|
.. autoattribute:: supported_image_types
|
2018-01-29 22:40:49 +09:00
|
|
|
.. autoattribute:: supported_remote_images
|
|
|
|
|
.. autoattribute:: supported_data_uri_images
|
|
|
|
|
.. autoattribute:: default_translator_class
|
2017-04-14 11:01:09 +02:00
|
|
|
|
2024-06-19 14:51:20 +02:00
|
|
|
.. rubric:: Core Methods
|
|
|
|
|
|
|
|
|
|
These methods are predefined and should generally not be overridden,
|
|
|
|
|
since they form the core of the build process:
|
2008-03-16 11:19:26 +00:00
|
|
|
|
|
|
|
|
.. automethod:: build_all
|
|
|
|
|
.. automethod:: build_specific
|
|
|
|
|
.. automethod:: build_update
|
|
|
|
|
.. automethod:: build
|
2024-06-19 14:51:20 +02:00
|
|
|
.. automethod:: read
|
|
|
|
|
.. automethod:: read_doc
|
|
|
|
|
.. automethod:: write_doctree
|
2008-03-16 11:19:26 +00:00
|
|
|
|
2024-06-19 14:51:20 +02:00
|
|
|
.. rubric:: Overridable Methods
|
|
|
|
|
|
|
|
|
|
These must be implemented in builder sub-classes:
|
2008-03-16 11:19:26 +00:00
|
|
|
|
|
|
|
|
.. automethod:: get_outdated_docs
|
|
|
|
|
.. automethod:: prepare_writing
|
|
|
|
|
.. automethod:: write_doc
|
2024-06-19 14:51:20 +02:00
|
|
|
.. automethod:: get_target_uri
|
|
|
|
|
|
|
|
|
|
These methods can be overridden in builder sub-classes:
|
|
|
|
|
|
|
|
|
|
.. automethod:: init
|
|
|
|
|
.. automethod:: write
|
|
|
|
|
.. automethod:: copy_assets
|
|
|
|
|
.. automethod:: get_relative_uri
|
2008-03-16 11:19:26 +00:00
|
|
|
.. automethod:: finish
|
2008-12-26 20:17:59 +01:00
|
|
|
|
2024-06-19 14:51:20 +02:00
|
|
|
.. rubric:: Attributes
|
|
|
|
|
|
|
|
|
|
Attributes that are callable from the builder instance:
|
2019-03-09 16:46:41 +09:00
|
|
|
|
|
|
|
|
.. attribute:: events
|
|
|
|
|
|
|
|
|
|
An :class:`.EventManager` object.
|