Let's create a custom function ============================== We create the complementary :term:`structure file` named :file:`dict/01-function.yml` so that the `my_variable_jinja` variable is :term:`calculated`: .. code-block:: yaml %YAML 1.2 --- version: 1.1 my_variable_jinja: default: type: jinja jinja: "{{ return_no() }}" ... Then let's define the :func:`return_no` function in :file:`functions.py`: .. code-block:: python :caption: the :file:`functions.py` content def return_no(): return 'no' Then, let's create the :term:`Tiramisu` objects via the following script: .. code-block:: python :caption: the `script.py` file content from rougail import Rougail, RougailConfig RougailConfig['main_structural_directories'] = ['dict'] RougailConfig['extra_namespaces']['example'] = ['extras/'] RougailConfig['functions_file'] = 'functions.py' rougail = Rougail() config = rougail.get_config() print(config.value.dict()) Let's execute `script.py`: .. code-block:: bash $ python3 script.py {'rougail.my_variable': 'my_value', 'rougail.my_variable_jinja': 'no', 'example.my_variable_extra': 'my_value_extra'} The value of the `my_variable_extra` variable is calculated, and it's value comes from the :func:`return_no` function.