Configuration Extension

As for all nmk projects config items, nmk-doc ones are all overridable by other plug-ins and project files. But the ones described on this page are specifically designed to be extended.

Documentation inputs

Plugins which support documentation generation from source code should extend the ${docInputs} config item, in order to trigger documentation rebuild if source code is modified.

Example:

docInputs:
    - file.py
    - ${someVarResolvingAllPyFiles}

Sphinx extensions

Plugins and/or project may want to enable sphinx extensions, in addition to the default ones. The following items may be extended for this purpose:

  • ${docExtensions}: List of enabled sphinx extensions. Example:

    docExtensions:
        - breathe
    
  • ${docExtensionsVenvDeps}: List of python modules to be installed in the project venv in order to support the enabled extensions. Example:

    docExtensionsVenvDeps:
        - breathe
    
  • ${docExtraConfig}: Dictionnary of additional sphinx config parameters, to be added to the generated configuration file. Example:

    docExtraConfig:
        configName: value