# Tasks The **`nmk-doc`** plugin defines the tasks described below. This diagram summarizes the available tasks, and how they are ordered in a given **`nmk`** project: ![](./diagrams/task-definition.svg) --- ## Setup tasks All tasks in this chapter are dependencies of the base [**`setup`**](https://nmk-base.readthedocs.io/en/stable/tasks.html#setup-task) task. --- (doc.config)= ### 📖.📝 **`doc.config`** -- doc configuration file generation This tasks generates the [sphinx](https://www.sphinx-doc.org/) configuration file. | Property | Value/description | | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | builder | [**`nmk_base.common.TemplateBuilder`**](https://nmk-base.readthedocs.io/en/stable/autoapi/nmk_base/common/index.html#nmk_base.common.TemplateBuilder) | | input | {ref}`${docConfigTemplate}` template file | | output | {ref}`${docConfig}` file | | if | enabled only if {ref}`${docIndex}` config item is not empty

_Changed in version 1.1.0_ -- Previous enablement item was {ref}`${docInputs}` | --- (doc.rtd)= ### 📖.📝 **`doc.rtd`** -- Read The Docs build configuration file generation This tasks generates the [Read The Docs](https://readthedocs.org/) automated build configuration file. | Property | Value/description | | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | builder | [**`nmk_base.common.TemplateBuilder`**](https://nmk-base.readthedocs.io/en/stable/autoapi/nmk_base/common/index.html#nmk_base.common.TemplateBuilder) | | inputs | {ref}`${docConfig}` doc config file
{ref}`${docRTDConfigTemplate}` template file | | output | {ref}`${docRTDConfig}` file | | if | enabled only if {ref}`${docIndex}` config item is not empty

_Changed in version 1.1.0_ -- Previous enablement item was {ref}`${docInputs}` | --- (puml.download)= ### 🏭.📥 **`puml.download`** -- Download the PlantUML runtime This tasks downloads the [PlantUML](https://plantuml.com/) runtime, needed to generate image files from input diagram files. | Property | Value/description | | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | builder | [**`nmk_base.common.DownloadBuilder`**](https://nmk-base.readthedocs.io/en/stable/autoapi/nmk_base/common/index.html#nmk_base.common.DownloadBuilder) | | inputs | [**`${PROJECTFILES}`**](https://nmk.readthedocs.io/en/stable/file.html#built-in-config-items) | | output | {ref}`${plantUmlLocalPath}` file | | if | {ref}`${plantUmlReady}` | Builder is called with the following parameters: | Parameter name | Value | | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------- | | url | {ref}`${plantUmlDownloadUrl}` | | request_function | [**`${requestFunction}`**](https://nmk-base.readthedocs.io/en/stable/config.html#requestfunction-request-function-for-download-tasks) | _Added in version 1.1.0_ --- ## Build tasks All tasks in this chapter are dependencies of the base [**`build.doc`**](https://nmk-base.readthedocs.io/en/stable/tasks.html#build-doc-task) task. _Changed in version 1.2.0_ -- previous dependency was on main [**`build`**](https://nmk-base.readthedocs.io/en/stable/tasks.html#build-task) task. --- (doc.build)= ### 📖.🔨 **`doc.build`** -- documentation build This tasks builds the documentation by calling the [sphinx](https://www.sphinx-doc.org/) tool. | Property | Value/description | | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | builder | {py:class}`nmk_doc.builders.NmkDocSphinxBuilder` | | input | {ref}`${docInputs}` files | | output | {ref}`${docOutput}` folder | | if | enabled only if {ref}`${docIndex}` config item is not empty

_Changed in version 1.1.0_ -- Previous enablement item was {ref}`${docInputs}` | Builder is called with the following parameters: | Parameter name | Value | | -------------- | -------------------------------------------------------------------------------------------------- | | source_folder | {ref}`${docPath}` | | output_folder | {ref}`${docOutput}` | | version | {ref}`${docVersion}`

_Added in version 1.1.0_ | --- (puml.generate)= ### 🏭.🔨 **`puml.generate`** -- Generate the PlantUML diagram images This tasks calls the [PlantUML](https://plantuml.com/) runtime to generate image files from input diagram files. | Property | Value/description | | -------- | -------------------------------------------------------- | | builder | {py:class}`nmk_doc.builders.PlantUmlBuilder` | | inputs | {ref}`${plantUmlDiagrams}` files | | output | {ref}`${plantUmlOutputFiles}` files | | if | {ref}`${plantUmlReady}` | Builder is called with the following parameters: | Parameter name | Value | | -------------- | -------------------------------------------------------------------------------------------------------------- | | jar | {ref}`${plantUmlLocalPath}` | | java_runtime | [${javaRuntime}](https://nmk-base.readthedocs.io/en/stable/config.html#javaruntime-resolved-java-command-path) | | input_folder | {ref}`${plantUmlDiagramsFolder}` | | output_folder | {ref}`${plantUmlOutputFolder}` | | formats | {ref}`${plantUmlOutputFormats}` | | extra_options | {ref}`${plantUmlExtraOptions}` | _Added in version 1.1.0_ --- (doc.snippets)= ### 📖.🧩 **`doc.snippets`** -- Generate documentation snippets This tasks generates documentation snippets as defined in the **{ref}`${docSnippets}`** config item. | Property | Value/description | | -------- | -------------------------------------------------------------- | | builder | {py:class}`nmk_doc.builders.SnippetsBuilder` | | inputs | {ref}`${docSnippetsInputs}` files | | output | {ref}`${docSnippetsOutputFiles}` files | | if | {ref}`${docSnippets}` | Builder is called with the following parameters: | Parameter name | Value | | -------------- | ---------------------------------------------------------- | | snippets | {ref}`${docSnippets}` | | output_folder | {ref}`${docSnippetsOutputFolder}` | _Added in version 1.2.0_