pyfcstm.utils.jinja2
This module provides utilities for enhancing Jinja2 environments with Python builtins and additional settings.
It includes functions to add Python built-in functions to Jinja2 environments as filters, tests, and globals, as well as adding environment variables and custom text processing functions.
add_builtins_to_env
- pyfcstm.utils.jinja2.add_builtins_to_env(env: Environment) Environment[source]
Mount Python built-in functions to a Jinja2 environment.
This function adds Python’s built-in functions to the specified Jinja2 environment as filters, tests, or global functions based on their characteristics.
- Parameters:
env (jinja2.Environment) – A Jinja2 Environment instance
- Returns:
The Jinja2 Environment with Python builtins mounted
- Return type:
jinja2.Environment
Example:
>>> env = jinja2.Environment() >>> env = add_builtins_to_env(env) >>> # Now Python builtins like len, str, etc. are available in templates
add_settings_for_env
- pyfcstm.utils.jinja2.add_settings_for_env(env: Environment) Environment[source]
Add additional settings and functions to a Jinja2 environment.
This function enhances a Jinja2 environment by: 1. Adding Python built-in functions 2. Adding custom text processing filters 3. Adding environment variables as global variables
- Parameters:
env (jinja2.Environment) – The Jinja2 environment to enhance
- Returns:
The enhanced Jinja2 environment
- Return type:
jinja2.Environment
Example:
>>> env = jinja2.Environment() >>> env = add_settings_for_env(env) >>> # Now the environment has additional filters and globals