94 lines
3.9 KiB
Markdown
94 lines
3.9 KiB
Markdown
# Personnalisons la configuration de Rougail
|
|
|
|
La configuration de Rougail se trouve dans l'objet `RougailConfig` :
|
|
|
|
```python
|
|
from rougail import RougailConfig
|
|
```
|
|
|
|
C'est un simple dictionnaire python avec différentes clefs.
|
|
|
|
Pour modifier il suffit de faire :
|
|
|
|
```python
|
|
RougailConfig[key] = value
|
|
```
|
|
|
|
## Configuration de chargement des dictionnaires
|
|
|
|
### Les répertoires des dictionnaires
|
|
|
|
Il existe deux types de répertoires de dictionnaires :
|
|
|
|
- les dictionnaires principaux avec la clef `dictionaries_dir`. La valeur par défaut est `['/srv/rougail/dictionaries']`. Cette variable doit contenir la liste des répertoires contenants des dictionnaires.
|
|
|
|
- les dictionnaires extra avec la clef `extra_dictionaries`. La valeur est un dictionnaire avec l'ensemble des espaces de nom. La clef étant l'espace de nom et la valeur étant une liste de répertoire.
|
|
|
|
Par exemple pour ajouter l'extra `example` il faut faire :
|
|
|
|
```python
|
|
RougailConfig['extra_dictionaries']['example'] = ['/dir1', '/dir2']
|
|
```
|
|
|
|
Les dictionnaires sont chargés dans le même ordre que les dictionnaires principaux.
|
|
|
|
### Le fichier de fonction
|
|
|
|
Le fichier qui contient les fonctions personnalisés est géré dans la clef "functions_file" et a comme valeur par défaut "/srv/rougail/functions.py". Cette clef peut contenir une liste s'il y a plusieurs fichiers.
|
|
|
|
Les fonctions doivent retourner une valeur, même si la variable que l'on calcul est une variable multiple.
|
|
Si la fonction peut retourner une valeur multiple (une liste), il faut mettre le nom de la fonction dans la clef "multi_functions".
|
|
|
|
### La variable auto_freeze
|
|
|
|
La propriété auto_freeze n'est appliqué que une variable spécifique passe à True. Par défaut le nom de la variable est "instancied_module", mais il est possible de changer le nom de cette variable via la clef "auto_freeze_variable".
|
|
|
|
### Les modes
|
|
|
|
Les modes sont personnalisables dans Rougail. Par défaut les modes sont "basic", "normal" et "expert".
|
|
Il est possible de changer cette liste via la clef "modes_level".
|
|
|
|
Si vous changer ces valeurs, penser à changer les modes par défaut des familles et des variables.
|
|
|
|
### Le mode par défaut pour une famille
|
|
|
|
Le mode par défaut d'une famille est "basic". Il est possible de changer le mode par défaut d'une famille via la clef "default_family_mode".
|
|
|
|
### Le mode par défaut pour une variable
|
|
|
|
Le mode par défaut d'une variable est "normal". Il est possible de changer le mode par défaut d'une variable via la clef "default_variable_mode".
|
|
|
|
### Le nom des fonctions internes
|
|
|
|
Il est possible d'ajouter des fonctions interne via la clef "internal_functions".
|
|
|
|
## Configuration de la templatisation
|
|
|
|
### Le répertoire des templates
|
|
|
|
Le répertoire des templates est géré dans la clef "templates_dir" et a comme valeur par défaut : "/srv/rougail/templates". Cette clef peut contenir une liste s'il y a plusieurs répertoires.
|
|
|
|
### Le répertoire des patchs
|
|
|
|
Le répertoire des patches est géré dans la clef "patches_dir" et a comme valeur par défaut : "/srv/rougail/patches".
|
|
|
|
### Le répertoire temporaire
|
|
|
|
Le répertoire temporaire est utile lors de la génération de template. Il contient une copie des templates avec, éventuellement, les patches appliqués sur les templates.
|
|
|
|
Le répertoire de temporaire est géré dans la clef "tmp_dir" et a comme valeur par défaut : "/srv/rougail/tmp".
|
|
|
|
### Le répertoire de destination des fichiers générés
|
|
|
|
Le répertoire de destination des fichiers générés est géré dans la clef "destinations_dir" et a comme valeur par défaut : "/srv/rougail/destinations".
|
|
|
|
### Les informations systemd
|
|
|
|
Un certain nombre de variables concerne les templates systemd.
|
|
|
|
## Ajout d'une fonction de conversion
|
|
|
|
Les fonctions de conversion fait parti du moteur de rougail. Il converti les informations des dictionnaires pour créer des variables Tiramisu.
|
|
|
|
La clef "extra_annotators" permet d'ajouter des fonctions complémentaires.
|
|
|