### Navigation

- index
- modules |
- next |
- previous |
- Python v3.1.2 documentation »

# Documenting Python

The Python language has a substantial body of documentation, much of it contributed by various authors. The markup used for the Python documentation is reStructuredText, developed by the docutils project, amended by custom directives and using a toolset named Sphinx to postprocess the HTML output.

This document describes the style guide for our documentation, the custom reStructuredText markup introduced to support Python documentation and how it should be used, as well as the Sphinx build system.

If you’re interested in contributing to Python’s documentation, there’s no need to write reStructuredText if you’re not so inclined; plain text contributions are more than welcome as well.

- 1. Introduction
- 2. Style Guide
- 3. reStructuredText Primer
  - 3.1. Paragraphs
  - 3.2. Inline markup
  - 3.3. Lists and Quotes
  - 3.4. Source Code
  - 3.5. Hyperlinks
    - 3.5.1. External links
    - 3.5.2. Internal links
  - 3.6. Sections
  - 3.7. Explicit Markup
  - 3.8. Directives
  - 3.9. Footnotes
  - 3.10. Comments
  - 3.11. Source encoding
  - 3.12. Gotchas
- 4. Additional Markup Constructs
  - 4.1. Meta-information markup
  - 4.2. Module-specific markup
  - 4.3. Information units
  - 4.4. Showing code examples
  - 4.5. Inline markup
  - 4.6. Cross-linking markup
  - 4.7. Paragraph-level markup
  - 4.8. Table-of-contents markup
  - 4.9. Index-generating markup
  - 4.10. Grammar production displays
  - 4.11. Substitutions
- 5. Differences to the LaTeX markup
  - 5.1. Inline markup
  - 5.2. Information units
  - 5.3. Structure

### Navigation

- index
- modules |
- next |
- previous |
- Python v3.1.2 documentation »