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

В основном, разделы должны структурироваться следующим образом:

  • название_каталога/

    • index.rst (содержит ссылки на внутренние файлы)

    • introduction.rst

    • раздел_1.rst

    • раздел_2.rst


  • rendering/

    • index.rst

    • cycles/

      • index.rst

      • introduction.rst

      • materials/

        • index.rst

        • introduction.rst

        • volumes.rst

Идея заключается в том, чтобы заключить всё содержимое раздела внутри каталога. В идеале каждый раздел должен иметь файлы index.rst (содержащий оглавление данного раздела) и introduction.rst (введение к содержанию раздела).


По умолчанию содержание будет показываться глубиной в два уровня:

.. toctree::
   :maxdepth: 2