The following guide provides patterns for interface elements and directories.

Operator Menus#

Each operator should receive its own heading or page based on the length of the content. At the start should be a reference admonition documenting the context of the operator:

.. admonition:: Reference
   :class: refbox

   :Mode:      Edit Mode
   :Menu:      :menuselection:`Curve --> Snap`
   :Shortcut:  :kbd:`Shift-S`


Panels should be documented by their own heading, nested panels should use decreasing heading levels. Each panel could have its own page based on the length of documentation and/or the amount of panels. Expanded menus that toggle what properties are presented to the user should be treated like subpanels:

Panel Title

Nested Panel Title


Properties should be documented using definition lists. Properties that are hidden based on other properties should used nested definitions:

   Property description.

   Hidden Property
      Hidden property description.

Select menus should be documented using the following syntax:

Menu Label
   General description of the menu.

   :Menu Item: Menu Item Definition.
   :Menu Item: Menu Item Definition.
   :Menu Item: Menu Item Definition.


Nodes should always have three headings inputs, properties and outputs with a note of absence if the node has none. At the end of the page can be an optional example(s) section:

World Node

.. figure:: /images/render_shader-nodes_output_world_node.png
   :align: right

   The World node.

Introduction and general use case(s).


This node has no inputs.


This node has no properties.


This node has no outputs.


Directory Layout#

As seções em geral devem ser estruturadas da seguinte maneira:

  • directory_name/

    • index.rst (contém ligações para arquivos internos)

    • introduction.rst

    • section_1.rst

    • section_2.rst

Por exemplo:

  • rendering/

    • index.rst

    • cycles/

      • index.rst

      • introduction.rst

      • materials/

        • index.rst

        • introduction.rst

        • volumes.rst

A ideia é encapsular todos os conteúdos de uma seção dentro de uma pasta. O ideal é que cada seção deva ter um arquivo index.rst (contendo a tabela de conteúdos (TOC) para esta seção) e um arquivo de nome introduction.rst (apresentação) para os conteúdos de cada seção.

Tabela de conteúdos#

Por padrão uma tabela de conteúdos deve mostrar dois níveis de profundidade:

.. toctree::
   :maxdepth: 2