Compare commits

..

84 commits

Author SHA1 Message Date
d022e44e1d bump: version 0.2.0a27 → 0.2.0a28 2025-10-02 22:19:44 +02:00
9a0219ce55 feat: add gitlab plugin 2025-10-02 22:19:22 +02:00
17b589c268 fix: tests for formatter 2025-09-30 21:57:05 +02:00
53e1261812 fix: update translation 2025-09-30 06:15:00 +02:00
ef0aca7e55 bump: version 0.2.0a26 → 0.2.0a27 2025-09-29 21:26:25 +02:00
86dce82a57 fix: doc network with CIDR format 2025-09-29 21:26:12 +02:00
777346d070 fix: better doc for calculation with unknown variable 2025-09-29 21:18:55 +02:00
213c25c8f6 bump: version 0.2.0a25 → 0.2.0a26 2025-09-29 11:00:30 +02:00
242b6505ce feat: default value for a calculated variable with an unknown optional variable 2025-09-28 15:53:31 +02:00
f5dc501bf9 feat: add integer type which will replace number type 2025-09-23 22:09:33 +02:00
154238c46e bump: version 0.2.0a24 → 0.2.0a25 2025-09-22 09:43:08 +02:00
1fe10dbe20 feat: adapt to tiramisu-web-ui 2025-09-22 09:42:46 +02:00
2652fc9db6 bump: version 0.2.0a23 → 0.2.0a24 2025-06-19 07:28:10 +03:00
2a7f78103b feat: could not change default value during annotator 2025-06-19 07:27:59 +03:00
02778fe53b bump: version 0.2.0a22 → 0.2.0a23 2025-06-18 16:52:35 +03:00
1718a76ce9 fix: separation 2025-06-18 16:50:11 +03:00
a8c682d76c bump: version 0.2.0a21 → 0.2.0a22 2025-06-18 07:57:53 +03:00
706ddd369e fix: rougail separation 2025-06-18 07:42:33 +03:00
25dc2874b2 bump: version 0.2.0a20 → 0.2.0a21 2025-05-12 09:11:19 +02:00
3dfc3ab166 fix: update translation 2025-05-12 08:39:38 +02:00
263dae2b2c fix: black 2025-05-11 19:13:12 +02:00
561d117d4d fix: doc example with leader example lower than leader default value 2025-05-11 14:44:46 +02:00
8f2c4b0011 bump: version 0.2.0a19 → 0.2.0a20 2025-05-09 08:22:34 +02:00
94c7922782 fix: undefined is a rougail object 2025-05-09 07:45:10 +02:00
c9a0f2d1ec bump: version 0.2.0a18 → 0.2.0a19 2025-05-05 10:08:56 +02:00
5e325f744d fix: update translation 2025-05-05 10:08:45 +02:00
f911425e1a bump: version 0.2.0a17 → 0.2.0a18 2025-05-05 10:03:59 +02:00
b60792314e fix: doc default value with undocumented variable 2025-05-05 10:03:44 +02:00
2886cf0348 bump: version 0.2.0a16 → 0.2.0a17 2025-05-05 08:52:28 +02:00
f0f3fc899d fix: description for all calculations 2025-05-04 14:29:51 +02:00
96866e99a4 fix: better documentation variable with variable in default attribut 2025-05-02 21:57:35 +02:00
d8e52e26fd bump: version 0.2.0a15 → 0.2.0a16 2025-04-30 09:04:41 +02:00
07027690a7 fix: update translation 2025-04-29 23:06:35 +02:00
19767f346d fix: remove negative_description support 2025-04-29 22:51:36 +02:00
726c64e23d fix: better documentation with hidden variable in property calculation 2025-04-29 08:32:53 +02:00
abbeb78dbb fix: use new information ymlfiles 2025-04-28 16:49:41 +02:00
aaf3f95126 fix: update tests 2025-04-27 10:24:10 +02:00
aeff3e8b7c fix: better dynamic support 2025-04-25 14:17:07 +02:00
0f96fa0123 bump: version 0.2.0a14 → 0.2.0a15 2025-04-09 21:34:24 +02:00
d69d0cc8e8 fix: version 2025-04-09 21:34:21 +02:00
81ff417107 bump: version 0.2.0a13 → 0.2.0a14 2025-04-07 08:42:04 +02:00
a7ede66aa7 fix: calculation for dynamic ans leadership variables 2025-04-05 11:23:47 +02:00
b4dfa14602 bump: version 0.2.0a12 → 0.2.0a13 2025-04-02 21:16:40 +02:00
a2e1d7746e fix: error in disabled dynamic variable 2025-04-02 21:15:33 +02:00
b8f3e71314 bump: version 0.2.0a11 → 0.2.0a12 2025-04-01 22:19:42 +02:00
bb5caa5388 fix: update tests 2025-04-01 22:02:44 +02:00
fd8a2843ba fix: groups.namespace could be unexistant 2025-04-01 19:42:45 +02:00
8e5cc2622e bump: version 0.2.0a10 → 0.2.0a11 2025-03-31 10:25:17 +02:00
22e839027d fix: doc a param with a set but with only one item 2025-03-31 10:25:08 +02:00
fcac55ae92 bump: version 0.2.0a9 → 0.2.0a10 2025-03-30 19:48:00 +02:00
d3b1462db5 feat: document unix file name parameters 2025-03-30 19:47:56 +02:00
737ddc0f43 feat: better console output 2025-03-29 15:10:03 +01:00
5c9c102245 fix: doc for param 2025-03-29 14:38:47 +01:00
fd54b9ca00 fix: support NamespaceCalculation 2025-03-29 14:37:14 +01:00
83614a2a5e fix: convert <ENV> to &lt;ENV&gt; for github plugin 2025-03-29 14:35:32 +01:00
8e6200b321 feat: do not document reference to undocumented variable 2025-03-02 13:38:14 +01:00
1364083ffb bump: version 0.2.0a8 → 0.2.0a9 2025-02-19 16:43:55 +01:00
604cfa0a1d fix: support suffix (in version 1.0 format) in calculation 2025-02-19 16:43:37 +01:00
97a8653b28 bump: version 0.2.0a7 → 0.2.0a8 2025-02-19 12:49:32 +01:00
76d7c968fe fix: key is the path 2025-02-19 12:49:21 +01:00
693050b195 bump: version 0.2.0a6 → 0.2.0a7 2025-02-19 08:39:59 +01:00
d927f60769 fix: with_family => without_family and with_example => example 2025-02-19 08:39:44 +01:00
53de7569ee bump: version 0.2.0a5 → 0.2.0a6 2025-02-17 20:54:12 +01:00
3f3f6aa495 feat: add with_family parameter 2025-02-17 20:53:58 +01:00
affd645ebd bump: version 0.2.0a4 → 0.2.0a5 2025-02-17 09:49:59 +01:00
7f003a574b fix: do not add multiple attribute several time in json export 2025-02-17 09:49:51 +01:00
495336c146 bump: version 0.2.0a3 → 0.2.0a4 2025-02-10 09:52:15 +01:00
60b4a06807 feat: output return status too 2025-02-10 09:52:12 +01:00
88aca6b0ea bump: version 0.2.0a2 → 0.2.0a3 2025-01-04 18:00:49 +01:00
1903ee8031 fix: detect_symlink => only_self 2025-01-04 18:00:38 +01:00
135936782f bump: version 0.2.0a1 → 0.2.0a2 2025-01-04 11:55:02 +01:00
705239141e fix: do not document symlink 2025-01-04 11:54:20 +01:00
673e89e5e1 fix: remove prefix_path 2025-01-04 11:52:09 +01:00
cac294b800 feat: create tests 2024-12-07 10:53:41 +01:00
58ee0f3106 bump: version 0.2.0a0 → 0.2.0a1 2024-11-28 21:37:17 +01:00
e6a38423ef fix: separation between run and print function 2024-11-28 21:36:45 +01:00
1f37457b9f bump: version 0.1.1a0 → 0.2.0a0 2024-11-20 22:01:04 +01:00
9f5d0e2497 feat: personalize mode that we want disable documentation 2024-11-20 21:59:21 +01:00
af652eda76 feat: add console output 2024-11-20 21:13:42 +01:00
3d4b7b945c feat: better dynamique family support 2024-11-20 21:10:14 +01:00
3cc85d7ba5 feat: add json output 2024-11-09 15:10:25 +01:00
12622032a8 fix: correction for properties in italic 2024-11-09 07:40:08 +01:00
d805cbf565 bump: version 0.1.0 → 0.1.1a0 2024-11-08 08:14:35 +01:00
46eeb49c5f fix: generate documentation with force_optional configuration 2024-11-08 07:39:32 +01:00
4614 changed files with 98089 additions and 26127 deletions

View file

@ -1,3 +1,221 @@
## 0.2.0a28 (2025-10-02)
### Feat
- add gitlab plugin
### Fix
- tests for formatter
- update translation
## 0.2.0a27 (2025-09-29)
### Fix
- doc network with CIDR format
- better doc for calculation with unknown variable
## 0.2.0a26 (2025-09-29)
### Feat
- default value for a calculated variable with an unknown optional variable
- add integer type which will replace number type
## 0.2.0a25 (2025-09-22)
### Feat
- adapt to tiramisu-web-ui
## 0.2.0a24 (2025-06-19)
### Feat
- could not change default value during annotator
## 0.2.0a23 (2025-06-18)
### Fix
- separation
## 0.2.0a22 (2025-06-18)
### Fix
- rougail separation
## 0.2.0a21 (2025-05-12)
### Fix
- update translation
- black
- doc example with leader example lower than leader default value
## 0.2.0a20 (2025-05-09)
### Fix
- undefined is a rougail object
## 0.2.0a19 (2025-05-05)
### Fix
- update translation
## 0.2.0a18 (2025-05-05)
### Fix
- doc default value with undocumented variable
## 0.2.0a17 (2025-05-05)
### Fix
- description for all calculations
- better documentation variable with variable in default attribut
## 0.2.0a16 (2025-04-30)
### Fix
- update translation
- remove negative_description support
- better documentation with hidden variable in property calculation
- use new information ymlfiles
- update tests
- better dynamic support
## 0.2.0a15 (2025-04-09)
### Fix
- version
## 0.2.0a14 (2025-04-07)
### Fix
- calculation for dynamic ans leadership variables
## 0.2.0a13 (2025-04-02)
### Fix
- error in disabled dynamic variable
## 0.2.0a12 (2025-04-01)
### Fix
- update tests
- groups.namespace could be unexistant
## 0.2.0a11 (2025-03-31)
### Fix
- doc a param with a set but with only one item
## 0.2.0a10 (2025-03-30)
### Feat
- document unix file name parameters
- better console output
- do not document reference to undocumented variable
### Fix
- doc for param
- support NamespaceCalculation
- convert <ENV> to &lt;ENV&gt; for github plugin
## 0.2.0a9 (2025-02-19)
### Fix
- support suffix (in version 1.0 format) in calculation
## 0.2.0a8 (2025-02-19)
### Fix
- key is the path
## 0.2.0a7 (2025-02-19)
### Fix
- with_family => without_family and with_example => example
## 0.2.0a6 (2025-02-17)
### Feat
- add with_family parameter
## 0.2.0a5 (2025-02-17)
### Fix
- do not add multiple attribute several time in json export
## 0.2.0a4 (2025-02-10)
### Feat
- output return status too
## 0.2.0a3 (2025-01-04)
### Fix
- detect_symlink => only_self
## 0.2.0a2 (2025-01-04)
### Feat
- create tests
### Fix
- do not document symlink
- remove prefix_path
## 0.2.0a1 (2024-11-28)
### Fix
- separation between run and print function
## 0.2.0a0 (2024-11-20)
### Feat
- personalize mode that we want disable documentation
- add console output
- better dynamique family support
- add json output
### Fix
- correction for properties in italic
## 0.1.1a0 (2024-11-08)
### Fix
- generate documentation with force_optional configuration
## 0.1.0 (2024-11-06)
## 0.1.0rc1 (2024-11-06) ## 0.1.0rc1 (2024-11-06)
### Fix ### Fix

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2024-11-01 11:42+0100\n" "POT-Creation-Date: 2025-09-30 06:12+0200\n"
"PO-Revision-Date: 2024-11-01 11:42+0100\n" "PO-Revision-Date: 2025-09-30 06:14+0200\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
"Language: fr\n" "Language: fr\n"
@ -14,138 +14,341 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n" "Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
"X-Generator: Poedit 3.5\n" "X-Generator: Poedit 3.7\n"
#: src/rougail/output_doc/__init__.py:40 #: src/rougail/output_doc/annotator.py:309
msgid "the domain name can starts by a dot" msgid "the value of the information \"{0}\" of the variable \"{1}\""
msgstr "le nom de domaine peut commencé par un point" msgstr "la valeur de l'information \"{0}\" de la variable \"{1}\""
#: src/rougail/output_doc/__init__.py:41 #: src/rougail/output_doc/annotator.py:312
msgid "the domain name can be a hostname" msgid "the value of the global information \"{0}\""
msgstr "le nom de domaine peut être un nom d'hôte" msgstr "la valeur de l'information globale \"{0}\""
#: src/rougail/output_doc/__init__.py:42 #: src/rougail/output_doc/annotator.py:319
msgid "the domain name can be an IP" msgid "when the identifier is \"{0}\""
msgstr "le nom de domaine peut être une IP" msgstr "lorsque l'identifiant est \"{0}\""
#: src/rougail/output_doc/__init__.py:43 #: src/rougail/output_doc/annotator.py:321
msgid "the domain name can be network in CIDR format" msgid "when the identifier is not \"{0}\""
msgstr "le nom de domaine peut être un réseau au format CIDR" msgstr "lorsque l'identifiant n'est pas \"{0}\""
#: src/rougail/output_doc/__init__.py:48 #: src/rougail/output_doc/config.py:42
msgid "the minimum value is {0}" msgid "duplicated level rougail-doc for output \"{0}\": {1} and {2}"
msgstr "le valeur minimal est {0}" msgstr "niveau dupliqué pour rougail-doc pour la sortie \"{0}\": {1} et {2}"
#: src/rougail/output_doc/__init__.py:49 #: src/rougail/output_doc/config.py:74
msgid "the maximum value is {0}" msgid "Configuration rougail-doc"
msgstr "le valeur maximal est {0}" msgstr "Configuration de rougail-doc"
#: src/rougail/output_doc/__init__.py:55 #: src/rougail/output_doc/config.py:82
msgid "IP must be in CIDR format" msgid "Starting title level"
msgstr "IP doit être au format CIDR" msgstr "Niveau de titre de départ"
#: src/rougail/output_doc/__init__.py:56 #: src/rougail/output_doc/config.py:87
msgid "private IP are allowed" msgid "Generate example"
msgstr "les IP privées sont autorisés" msgstr "Génération de l'exemple"
#: src/rougail/output_doc/__init__.py:57 #: src/rougail/output_doc/config.py:92
msgid "reserved IP are allowed" msgid "Do not add families in documentation"
msgstr "les IP réservés sont autorisés" msgstr "Ne pas ajouter les familles dans la documentation"
#: src/rougail/output_doc/__init__.py:62 #: src/rougail/output_doc/config.py:96
msgid "the host name can be an IP" msgid "Disable documentation for variables with those modes"
msgstr "le nom d'hôte peut être une IP" msgstr "Désactiver la documentation des variables avec ces modes"
#: src/rougail/output_doc/__init__.py:67 #: src/rougail/output_doc/config.py:104
msgid "the domain name in web address can be an IP" msgid "disabled when there is no mode available"
msgstr "le nom de domaine dans l'adresse web peut être une IP" msgstr "désactiver lorsqu'il n'y a pas de mode valable"
#: src/rougail/output_doc/__init__.py:68 #: src/rougail/output_doc/config.py:110
msgid "the domain name in web address can be only a hostname" msgid "verify if disable modes already exists"
msgstr "le nom de domaine dans l'adresse web ne peut être qu'un nom d'hôte" msgstr "vérifier le mode existe déjà"
#: src/rougail/output_doc/__init__.py:75 #: src/rougail/output_doc/config.py:113
msgid "can be range of port" msgid "Modify values to document leaderships and dynamics families"
msgstr "peut être un range de port" msgstr "Valeurs modifiées pour documenter les familles leader ou dynamique"
#: src/rougail/output_doc/__init__.py:76 #: src/rougail/output_doc/config.py:117
msgid "can have the protocol" msgid "Generate document in format"
msgstr "peut avoir un protocole" msgstr "Générer le document au format"
#: src/rougail/output_doc/__init__.py:77 #: src/rougail/output_doc/doc.py:89
msgid "port 0 is allowed"
msgstr "le port 0 est autorisé"
#: src/rougail/output_doc/__init__.py:78
msgid "ports 1 to 1023 are allowed"
msgstr "les ports entre 1 et 1023 sont autorisés"
#: src/rougail/output_doc/__init__.py:79
msgid "ports 1024 to 49151 are allowed"
msgstr "les ports entre 1024 et 49151 sont autorisés"
#: src/rougail/output_doc/__init__.py:80
msgid "ports greater than 49152 are allowed"
msgstr "les ports supérieurs à 49152 sont autorisés"
#: src/rougail/output_doc/__init__.py:125
msgid "mandatory" msgid "mandatory"
msgstr "obligatoire" msgstr "obligatoire"
#: src/rougail/output_doc/__init__.py:126 #: src/rougail/output_doc/doc.py:90
msgid "hidden" msgid "hidden"
msgstr "caché" msgstr "cachée"
#: src/rougail/output_doc/__init__.py:127 #: src/rougail/output_doc/doc.py:91
msgid "disabled" msgid "disabled"
msgstr "désactivé" msgstr "désactivé"
#: src/rougail/output_doc/__init__.py:128 #: src/rougail/output_doc/doc.py:92
msgid "unique" msgid "unique"
msgstr "unique" msgstr "unique"
#: src/rougail/output_doc/__init__.py:129 #: src/rougail/output_doc/doc.py:93
msgid "auto modified" msgid "auto modified"
msgstr "auto modifiée" msgstr "auto modifiée"
#: src/rougail/output_doc/__init__.py:163 #: src/rougail/output_doc/doc.py:332
msgid "Variables for \"{0}\"" msgid "This family contains lists of variable blocks."
msgstr "Variables pour \"{0}\"" msgstr "Cette famille contient des listes de bloc de variable."
#: src/rougail/output_doc/__init__.py:180 #: src/rougail/output_doc/doc.py:340
msgid "Variables" msgid "This family builds families dynamically."
msgstr "Variables" msgstr "Cette famille construit des familles dynamiquement."
#: src/rougail/output_doc/__init__.py:187 #: src/rougail/output_doc/doc.py:354
msgid "Example with mandatory variables not filled in"
msgstr "Exemple avec des variables obligatoire non renseignée"
#: src/rougail/output_doc/__init__.py:493
msgid "(default)"
msgstr "(defaut)"
#: src/rougail/output_doc/__init__.py:498
msgid "Choices"
msgstr "Choix"
#: src/rougail/output_doc/__init__.py:501
msgid "Default" msgid "Default"
msgstr "Défaut" msgstr "Défaut"
#: src/rougail/output_doc/__init__.py:559 #: src/rougail/output_doc/doc.py:372
msgid "the value of the variable \"{0}\"" msgid "multiple"
msgstr "la valeur de la variable \"{0}\"" msgstr "multiple"
#: src/rougail/output_doc/__init__.py:564 #: src/rougail/output_doc/doc.py:380
#: src/rougail/output_doc/__init__.py:566
msgid "value of the {0}"
msgstr "la valeur de {0}"
#: src/rougail/output_doc/__init__.py:638
#: src/rougail/output_doc/__init__.py:651
msgid "Example" msgid "Example"
msgstr "Exemple" msgstr "Exemple"
#: src/rougail/output_doc/__init__.py:649 #: src/rougail/output_doc/doc.py:383
msgid "Examples" msgid "Examples"
msgstr "Exemples" msgstr "Exemples"
#: src/rougail/output_doc/doc.py:401
msgid "No attribute \"description\" for \"{0}\" in {1}"
msgstr "Aucun attribut \"description\" pour \"{0}\" dans {1}"
#: src/rougail/output_doc/doc.py:524
msgid "text based with regular expressions \"{0}\""
msgstr "texte avec expression rationnelle \"{0}\""
#: src/rougail/output_doc/doc.py:530
msgid "Validator"
msgstr "Validateur"
#: src/rougail/output_doc/doc.py:533
msgid "Validators"
msgstr "Validateurs"
#: src/rougail/output_doc/doc.py:546
msgid "(default)"
msgstr "(défaut)"
#: src/rougail/output_doc/doc.py:551
msgid "Choices"
msgstr "Choix"
#: src/rougail/output_doc/doc.py:642
msgid "depends on a calculation"
msgstr "dépend d'un calcul"
#: src/rougail/output_doc/doc.py:648
msgid "\"{0}\" is a calculation for {1} but has no description in {2}"
msgstr "\"{0}\" est un calcul pour {1} mais n'a pas de description dans {2}"
#: src/rougail/output_doc/doc.py:671 src/rougail/output_doc/doc.py:771
msgid "depends on an undocumented variable"
msgstr "dépends d'une variable non documentée"
#: src/rougail/output_doc/doc.py:674
msgid "when the variable \"{0}\" hasn't the value \"{1}\""
msgstr "lorsque la variable \"{0}\" n'a pas la valeur \"{1}\""
#: src/rougail/output_doc/doc.py:676
msgid "when the variable \"{0}\" is defined and hasn't the value \"{1}\""
msgstr "lorsque la variable \"{0}\" est définie et n'a pas la valeur \"{1}\""
#: src/rougail/output_doc/doc.py:679
msgid "when the variable \"{0}\" has the value \"{1}\""
msgstr "lorsque la variable \"{0}\" a la valeur \"{1}\""
#: src/rougail/output_doc/doc.py:681
msgid "when the variable \"{0}\" is defined and has the value \"{1}\""
msgstr "lorsque la variable \"{0}\" est définie et a la valeur \"{1}\""
#: src/rougail/output_doc/doc.py:697
msgid "the value of the variable \"{0}\""
msgstr "la valeur de la variable \"{0}\""
#: src/rougail/output_doc/doc.py:699
msgid "the value of the variable \"{0}\" if it is defined"
msgstr "la valeur de la variable \"{0}\" si elle est définie"
#: src/rougail/output_doc/doc.py:701
msgid "the value of an undocumented variable"
msgstr "la valeur d'une variable non documentée"
#: src/rougail/output_doc/doc.py:740
msgid "the values of undocumented variables"
msgstr "les valeurs de variables non documentées"
#: src/rougail/output_doc/doc.py:761
msgid "(from an undocumented variable){0}"
msgstr "(issue d'une variable non documentée){0}"
#: src/rougail/output_doc/doc.py:767
msgid "{0} (from an undocumented variable)"
msgstr "{0} (issue d'une variable non documentée)"
#: src/rougail/output_doc/doc.py:780
msgid "the value of the identifier"
msgstr "la valeur de l'identifiant"
#: src/rougail/output_doc/doc.py:784
msgid "the value of the {0}"
msgstr "la valeur de l'{0}"
#: src/rougail/output_doc/example.py:37
msgid "Example with mandatory variables not filled in"
msgstr "Exemple avec des variables obligatoire non renseignée"
#: src/rougail/output_doc/example.py:42
msgid "Example with all variables modifiable"
msgstr "Exemple avec toutes les variables modifiable"
#: src/rougail/output_doc/output/console.py:145
#: src/rougail/output_doc/utils.py:393
msgid "Variable"
msgstr "Variable"
#: src/rougail/output_doc/output/console.py:146
#: src/rougail/output_doc/utils.py:393
msgid "Description"
msgstr "Description"
#: src/rougail/output_doc/utils.py:41
msgid "the domain name can starts by a dot"
msgstr "le nom de domaine peut commencer par un point"
#: src/rougail/output_doc/utils.py:42
msgid "the domain name can be a hostname"
msgstr "le nom de domaine peut être un nom d'hôte"
#: src/rougail/output_doc/utils.py:43
msgid "the domain name can be an IP"
msgstr "le nom de domaine peut être une IP"
#: src/rougail/output_doc/utils.py:44
msgid "the domain name can be network in CIDR format"
msgstr "le nom de domaine peut être un réseau au format CIDR"
#: src/rougail/output_doc/utils.py:49 src/rougail/output_doc/utils.py:55
msgid "the minimum value is {0}"
msgstr "le valeur minimal est {0}"
#: src/rougail/output_doc/utils.py:50 src/rougail/output_doc/utils.py:56
msgid "the maximum value is {0}"
msgstr "le valeur maximal est {0}"
#: src/rougail/output_doc/utils.py:62
msgid "IP must be in CIDR format"
msgstr "IP doit être au format CIDR"
#: src/rougail/output_doc/utils.py:63
msgid "private IP are allowed"
msgstr "les IP privées sont autorisés"
#: src/rougail/output_doc/utils.py:64
msgid "reserved IP are allowed"
msgstr "les IP réservés sont autorisés"
#: src/rougail/output_doc/utils.py:69
msgid "network must be in CIDR format"
msgstr "réseau doit être au format CIDR"
#: src/rougail/output_doc/utils.py:74
msgid "the host name can be an IP"
msgstr "le nom d'hôte peut être une IP"
#: src/rougail/output_doc/utils.py:79
msgid "the domain name in web address can be an IP"
msgstr "le nom de domaine dans l'adresse web peut être une IP"
#: src/rougail/output_doc/utils.py:80
msgid "the domain name in web address can be only a hostname"
msgstr "le nom de domaine dans l'adresse web ne peut être qu'un nom d'hôte"
#: src/rougail/output_doc/utils.py:87
msgid "can be range of port"
msgstr "peut être un range de port"
#: src/rougail/output_doc/utils.py:88
msgid "can have the protocol"
msgstr "peut avoir un protocole"
#: src/rougail/output_doc/utils.py:89
msgid "port 0 is allowed"
msgstr "le port 0 est autorisé"
#: src/rougail/output_doc/utils.py:90
msgid "well-known ports (1 to 1023) are allowed"
msgstr "les ports connus (de 1 à 1023) sont autorisés"
#: src/rougail/output_doc/utils.py:91
msgid "registred ports (1024 to 49151) are allowed"
msgstr "les ports enregistrés (de 1024 à 49151) sont autorisés"
#: src/rougail/output_doc/utils.py:92
msgid "private ports (greater than 49152) are allowed"
msgstr "les ports privés (supérieurs à 49152) sont autorisés"
#: src/rougail/output_doc/utils.py:97
msgid "minimum length for the secret is {0} characters"
msgstr "longueur minimum pour le secret est de {0} caractères"
#: src/rougail/output_doc/utils.py:98
msgid "maximum length for the secret is {0} characters"
msgstr "longueur maximal pour le secret est de {0} caractères"
#: src/rougail/output_doc/utils.py:99
msgid "forbidden characters: {0}"
msgstr "caractères interdits: {0}"
#: src/rougail/output_doc/utils.py:104
msgid "this filename could be a relative path"
msgstr "ce nom de fichier peut être un chemin relative"
#: src/rougail/output_doc/utils.py:105
msgid "this file must exists"
msgstr "ce fichier doit exister"
#: src/rougail/output_doc/utils.py:106
msgid "file type allowed: {0}"
msgstr "type de fichier autorisé : {0}"
#: src/rougail/output_doc/utils.py:251
msgid "Variables for \"{0}\""
msgstr "Variables pour \"{0}\""
#: src/rougail/output_doc/utils.py:268
msgid "Identifiers"
msgstr "Identifiants"
#: src/rougail/output_doc/utils.py:414
msgid "{0}: {1}"
msgstr "{0} : {1}"
#~ msgid "Generate documentation"
#~ msgstr "Générer de la documentation"
#~ msgid "Add families in documentation"
#~ msgstr "Ajouter les familles dans la documentation"
#~ msgid "Display example in documentation"
#~ msgstr "Afficher un exemple dans la documentation"
#~ msgid "Hide example in documentation"
#~ msgstr "Cacher l'exemple dans la documentation"
#~ msgid "Variables"
#~ msgstr "Variables"
#, fuzzy
#~| msgid ":"
#~ msgid ": "
#~ msgstr " : "
#~ msgid "when the variable \"{0}\" has the value \"True\""
#~ msgstr "lorsque la variable \"{0}\" a la valeur \"True\""

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2024-11-01 11:42+0100\n" "POT-Creation-Date: 2025-09-30 06:14+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -15,137 +15,317 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: src/rougail/output_doc/__init__.py:40 #: src/rougail/output_doc/annotator.py:309
msgid "the domain name can starts by a dot" msgid "the value of the information \"{0}\" of the variable \"{1}\""
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:41 #: src/rougail/output_doc/annotator.py:312
msgid "the domain name can be a hostname" msgid "the value of the global information \"{0}\""
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:42 #: src/rougail/output_doc/annotator.py:319
msgid "the domain name can be an IP" msgid "when the identifier is \"{0}\""
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:43 #: src/rougail/output_doc/annotator.py:321
msgid "the domain name can be network in CIDR format" msgid "when the identifier is not \"{0}\""
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:48 #: src/rougail/output_doc/config.py:42
msgid "the minimum value is {0}" msgid "duplicated level rougail-doc for output \"{0}\": {1} and {2}"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:49 #: src/rougail/output_doc/config.py:74
msgid "the maximum value is {0}" msgid "Configuration rougail-doc"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:55 #: src/rougail/output_doc/config.py:82
msgid "IP must be in CIDR format" msgid "Starting title level"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:56 #: src/rougail/output_doc/config.py:87
msgid "private IP are allowed" msgid "Generate example"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:57 #: src/rougail/output_doc/config.py:92
msgid "reserved IP are allowed" msgid "Do not add families in documentation"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:62 #: src/rougail/output_doc/config.py:96
msgid "the host name can be an IP" msgid "Disable documentation for variables with those modes"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:67 #: src/rougail/output_doc/config.py:104
msgid "the domain name in web address can be an IP" msgid "disabled when there is no mode available"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:68 #: src/rougail/output_doc/config.py:110
msgid "the domain name in web address can be only a hostname" msgid "verify if disable modes already exists"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:75 #: src/rougail/output_doc/config.py:113
msgid "can be range of port" msgid "Modify values to document leaderships and dynamics families"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:76 #: src/rougail/output_doc/config.py:117
msgid "can have the protocol" msgid "Generate document in format"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:77 #: src/rougail/output_doc/doc.py:89
msgid "port 0 is allowed"
msgstr ""
#: src/rougail/output_doc/__init__.py:78
msgid "ports 1 to 1023 are allowed"
msgstr ""
#: src/rougail/output_doc/__init__.py:79
msgid "ports 1024 to 49151 are allowed"
msgstr ""
#: src/rougail/output_doc/__init__.py:80
msgid "ports greater than 49152 are allowed"
msgstr ""
#: src/rougail/output_doc/__init__.py:125
msgid "mandatory" msgid "mandatory"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:126 #: src/rougail/output_doc/doc.py:90
msgid "hidden" msgid "hidden"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:127 #: src/rougail/output_doc/doc.py:91
msgid "disabled" msgid "disabled"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:128 #: src/rougail/output_doc/doc.py:92
msgid "unique" msgid "unique"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:129 #: src/rougail/output_doc/doc.py:93
msgid "auto modified" msgid "auto modified"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:163 #: src/rougail/output_doc/doc.py:332
msgid "Variables for \"{0}\"" msgid "This family contains lists of variable blocks."
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:180 #: src/rougail/output_doc/doc.py:340
msgid "Variables" msgid "This family builds families dynamically."
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:187 #: src/rougail/output_doc/doc.py:354
msgid "Example with mandatory variables not filled in"
msgstr ""
#: src/rougail/output_doc/__init__.py:493
msgid "(default)"
msgstr ""
#: src/rougail/output_doc/__init__.py:498
msgid "Choices"
msgstr ""
#: src/rougail/output_doc/__init__.py:501
msgid "Default" msgid "Default"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:559 #: src/rougail/output_doc/doc.py:372
msgid "the value of the variable \"{0}\"" msgid "multiple"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:564 #: src/rougail/output_doc/doc.py:380
#: src/rougail/output_doc/__init__.py:566
msgid "value of the {0}"
msgstr ""
#: src/rougail/output_doc/__init__.py:638
#: src/rougail/output_doc/__init__.py:651
msgid "Example" msgid "Example"
msgstr "" msgstr ""
#: src/rougail/output_doc/__init__.py:649 #: src/rougail/output_doc/doc.py:383
msgid "Examples" msgid "Examples"
msgstr "" msgstr ""
#: src/rougail/output_doc/doc.py:401
msgid "No attribute \"description\" for \"{0}\" in {1}"
msgstr ""
#: src/rougail/output_doc/doc.py:524
msgid "text based with regular expressions \"{0}\""
msgstr ""
#: src/rougail/output_doc/doc.py:530
msgid "Validator"
msgstr ""
#: src/rougail/output_doc/doc.py:533
msgid "Validators"
msgstr ""
#: src/rougail/output_doc/doc.py:546
msgid "(default)"
msgstr ""
#: src/rougail/output_doc/doc.py:551
msgid "Choices"
msgstr ""
#: src/rougail/output_doc/doc.py:642
msgid "depends on a calculation"
msgstr ""
#: src/rougail/output_doc/doc.py:648
msgid "\"{0}\" is a calculation for {1} but has no description in {2}"
msgstr ""
#: src/rougail/output_doc/doc.py:671 src/rougail/output_doc/doc.py:771
msgid "depends on an undocumented variable"
msgstr ""
#: src/rougail/output_doc/doc.py:674
msgid "when the variable \"{0}\" hasn't the value \"{1}\""
msgstr ""
#: src/rougail/output_doc/doc.py:676
msgid "when the variable \"{0}\" is defined and hasn't the value \"{1}\""
msgstr ""
#: src/rougail/output_doc/doc.py:679
msgid "when the variable \"{0}\" has the value \"{1}\""
msgstr ""
#: src/rougail/output_doc/doc.py:681
msgid "when the variable \"{0}\" is defined and has the value \"{1}\""
msgstr ""
#: src/rougail/output_doc/doc.py:697
msgid "the value of the variable \"{0}\""
msgstr ""
#: src/rougail/output_doc/doc.py:699
msgid "the value of the variable \"{0}\" if it is defined"
msgstr ""
#: src/rougail/output_doc/doc.py:701
msgid "the value of an undocumented variable"
msgstr ""
#: src/rougail/output_doc/doc.py:740
msgid "the values of undocumented variables"
msgstr ""
#: src/rougail/output_doc/doc.py:761
msgid "(from an undocumented variable){0}"
msgstr ""
#: src/rougail/output_doc/doc.py:767
msgid "{0} (from an undocumented variable)"
msgstr ""
#: src/rougail/output_doc/doc.py:780
msgid "the value of the identifier"
msgstr ""
#: src/rougail/output_doc/doc.py:784
msgid "the value of the {0}"
msgstr ""
#: src/rougail/output_doc/example.py:37
msgid "Example with mandatory variables not filled in"
msgstr ""
#: src/rougail/output_doc/example.py:42
msgid "Example with all variables modifiable"
msgstr ""
#: src/rougail/output_doc/output/console.py:145
#: src/rougail/output_doc/utils.py:393
msgid "Variable"
msgstr ""
#: src/rougail/output_doc/output/console.py:146
#: src/rougail/output_doc/utils.py:393
msgid "Description"
msgstr ""
#: src/rougail/output_doc/utils.py:41
msgid "the domain name can starts by a dot"
msgstr ""
#: src/rougail/output_doc/utils.py:42
msgid "the domain name can be a hostname"
msgstr ""
#: src/rougail/output_doc/utils.py:43
msgid "the domain name can be an IP"
msgstr ""
#: src/rougail/output_doc/utils.py:44
msgid "the domain name can be network in CIDR format"
msgstr ""
#: src/rougail/output_doc/utils.py:49 src/rougail/output_doc/utils.py:55
msgid "the minimum value is {0}"
msgstr ""
#: src/rougail/output_doc/utils.py:50 src/rougail/output_doc/utils.py:56
msgid "the maximum value is {0}"
msgstr ""
#: src/rougail/output_doc/utils.py:62
msgid "IP must be in CIDR format"
msgstr ""
#: src/rougail/output_doc/utils.py:63
msgid "private IP are allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:64
msgid "reserved IP are allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:69
msgid "network must be in CIDR format"
msgstr ""
#: src/rougail/output_doc/utils.py:74
msgid "the host name can be an IP"
msgstr ""
#: src/rougail/output_doc/utils.py:79
msgid "the domain name in web address can be an IP"
msgstr ""
#: src/rougail/output_doc/utils.py:80
msgid "the domain name in web address can be only a hostname"
msgstr ""
#: src/rougail/output_doc/utils.py:87
msgid "can be range of port"
msgstr ""
#: src/rougail/output_doc/utils.py:88
msgid "can have the protocol"
msgstr ""
#: src/rougail/output_doc/utils.py:89
msgid "port 0 is allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:90
msgid "well-known ports (1 to 1023) are allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:91
msgid "registred ports (1024 to 49151) are allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:92
msgid "private ports (greater than 49152) are allowed"
msgstr ""
#: src/rougail/output_doc/utils.py:97
msgid "minimum length for the secret is {0} characters"
msgstr ""
#: src/rougail/output_doc/utils.py:98
msgid "maximum length for the secret is {0} characters"
msgstr ""
#: src/rougail/output_doc/utils.py:99
msgid "forbidden characters: {0}"
msgstr ""
#: src/rougail/output_doc/utils.py:104
msgid "this filename could be a relative path"
msgstr ""
#: src/rougail/output_doc/utils.py:105
msgid "this file must exists"
msgstr ""
#: src/rougail/output_doc/utils.py:106
msgid "file type allowed: {0}"
msgstr ""
#: src/rougail/output_doc/utils.py:251
msgid "Variables for \"{0}\""
msgstr ""
#: src/rougail/output_doc/utils.py:268
msgid "Identifiers"
msgstr ""
#: src/rougail/output_doc/utils.py:414
msgid "{0}: {1}"
msgstr ""

View file

@ -4,7 +4,7 @@ requires = ["flit_core >=3.8.0,<4"]
[project] [project]
name = "rougail.output_doc" name = "rougail.output_doc"
version = "0.1.0" version = "0.2.0a28"
authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}] authors = [{name = "Emmanuel Garette", email = "gnunux@gnunux.info"}]
readme = "README.md" readme = "README.md"
description = "Rougail output doc" description = "Rougail output doc"
@ -18,6 +18,8 @@ classifiers = [
"Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12", "Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Programming Language :: Python :: 3.14",
"Programming Language :: Python :: 3", "Programming Language :: Python :: 3",
"Operating System :: OS Independent", "Operating System :: OS Independent",
"Natural Language :: English", "Natural Language :: English",
@ -25,8 +27,9 @@ classifiers = [
] ]
dependencies = [ dependencies = [
"rougail ~= 1.1,<2", "rougail-base > 1.1,<2",
"tabulate ~= 0.9.0", "tabulate ~= 0.9.0",
"rich ~= 13.9.3",
] ]
[project.urls] [project.urls]
@ -37,5 +40,9 @@ name = "cz_conventional_commits"
tag_format = "$version" tag_format = "$version"
version_scheme = "pep440" version_scheme = "pep440"
version_provider = "pep621" version_provider = "pep621"
#update_changelog_on_bump = true version_files = [
"src/rougail/output_doc/__version__.py",
"pyproject.toml:version"
]
update_changelog_on_bump = true
changelog_merge_prerelease = true changelog_merge_prerelease = true

View file

@ -1,7 +1,6 @@
#!/usr/bin/env python3
""" """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -16,671 +15,9 @@ details.
You should have received a copy of the GNU Lesser General Public License You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
""" """
# FIXME si plusieurs example dont le 1er est none tester les autres : tests/dictionaries/00_8test_none
from tiramisu import Calculation
from tiramisu.error import display_list
import tabulate as tabulate_module
from tabulate import tabulate
from warnings import warn
from typing import Optional
from rougail.error import display_xmlfiles from .doc import RougailOutputDoc
from rougail import RougailConfig, Rougail, CONVERT_OPTION from .__version__ import __version__
from rougail.object_model import PROPERTY_ATTRIBUTE
from .config import OutPuts
from .i18n import _
ENTER = "\n\n"
DocTypes = {
"domainname": {
"params": {
"allow_startswith_dot": _("the domain name can starts by a dot"),
"allow_without_dot": _("the domain name can be a hostname"),
"allow_ip": _("the domain name can be an IP"),
"allow_cidr_network": _("the domain name can be network in CIDR format"),
},
},
"number": {
"params": {
"min_number": _("the minimum value is {0}"),
"max_number": _("the maximum value is {0}"),
},
},
"ip": {
"msg": "IP",
"params": {
"cidr": _("IP must be in CIDR format"),
"private_only": _("private IP are allowed"),
"allow_reserved": _("reserved IP are allowed"),
},
},
"hostname": {
"params": {
"allow_ip": _("the host name can be an IP"),
},
},
"web_address": {
"params": {
"allow_ip": _("the domain name in web address can be an IP"),
"allow_without_dot": _(
"the domain name in web address can be only a hostname"
),
},
},
"port": {
"params": {
"allow_range": _("can be range of port"),
"allow_protocol": _("can have the protocol"),
"allow_zero": _("port 0 is allowed"),
"allow_wellknown": _("ports 1 to 1023 are allowed"),
"allow_registred": _("ports 1024 to 49151 are allowed"),
"allow_private": _("ports greater than 49152 are allowed"),
},
},
}
ROUGAIL_VARIABLE_TYPE = (
"https://rougail.readthedocs.io/en/latest/variable.html#variables-types"
)
class RougailOutputDoc:
def __init__(
self,
*,
config: "Config" = None,
rougailconfig: RougailConfig = None,
**kwarg,
):
if rougailconfig is None:
rougailconfig = RougailConfig
if rougailconfig["step.output"] != "doc":
rougailconfig["step.output"] = "doc"
if rougailconfig["step.output"] != "doc":
raise Exception("doc is not set as step.output")
self.rougailconfig = rougailconfig
outputs = OutPuts().get()
output = self.rougailconfig["doc.output_format"]
if output not in outputs:
raise Exception(
f'cannot find output "{output}", available outputs: {list(outputs)}'
)
if config is None:
rougail = Rougail(self.rougailconfig)
rougail.converted.plugins.append("output_doc")
config = rougail.get_config()
self.conf = config
self.conf.property.setdefault(frozenset({"advanced"}), "read_write", "append")
self.conf.property.read_write()
self.conf.property.remove("cache")
self.dynamic_paths = {}
self.formater = outputs[output]()
self.level = self.rougailconfig["doc.title_level"]
# self.property_to_string = [('mandatory', 'obligatoire'), ('hidden', 'cachée'), ('disabled', 'désactivée'), ('unique', 'unique'), ('force_store_value', 'modifié automatiquement')]
self.property_to_string = [
("mandatory", _("mandatory")),
("hidden", _("hidden")),
("disabled", _("disabled")),
("unique", _("unique")),
("force_store_value", _("auto modified")),
]
def run(self):
print(self.gen_doc())
def gen_doc(self):
tabulate_module.PRESERVE_WHITESPACE = True
examples_mini = {}
examples_all = {}
return_string = self.formater.header()
if self.rougailconfig["main_namespace"]:
for namespace in self.conf.unrestraint.list():
name = namespace.name()
examples_mini[name] = {}
examples_all[name] = {}
doc = (
self._display_doc(
self.display_families(
namespace,
self.level + 1,
examples_mini[name],
examples_all[name],
),
[],
)
+ "\n"
)
if not examples_mini[name]:
del examples_mini[name]
if not examples_all[name]:
del examples_all[name]
else:
return_string += self.formater.title(
_('Variables for "{0}"').format(namespace.name()), self.level
)
return_string += doc
else:
doc = (
self._display_doc(
self.display_families(
self.conf.unrestraint,
self.level + 1,
examples_mini,
examples_all,
),
[],
)
+ "\n"
)
if examples_all:
return_string += self.formater.title(_("Variables"), self.level)
return_string += doc
if not examples_all:
return ""
if self.rougailconfig["doc.with_example"]:
if examples_mini:
return_string += self.formater.title(
_("Example with mandatory variables not filled in"), self.level
)
return_string += self.formater.yaml(examples_mini)
if examples_all:
return_string += self.formater.title(
"Example with all variables modifiable", self.level
)
return_string += self.formater.yaml(examples_all)
return return_string
def _display_doc(self, variables, add_paths):
return_string = ""
for variable in variables:
typ = variable["type"]
path = variable["path"]
if path in add_paths:
continue
if typ == "family":
return_string += variable["title"]
return_string += self._display_doc(variable["objects"], add_paths)
else:
for idx, path in enumerate(variable["paths"]):
if path in self.dynamic_paths:
paths_msg = display_list(
[
self.formater.bold(path_)
for path_ in self.dynamic_paths[path]["paths"]
],
separator="or",
)
variable["objects"][idx][0] = variable["objects"][idx][
0
].replace("{{ ROUGAIL_PATH }}", paths_msg)
identifiers = self.dynamic_paths[path]["identifiers"]
description = variable["objects"][idx][1][0]
if "{{ identifier }}" in description:
if description.endswith("."):
description = description[:-1]
comment_msg = self.to_phrase(
display_list(
[
description.replace(
"{{ identifier }}",
self.formater.italic(identifier),
)
for identifier in identifiers
],
separator="or",
add_quote=True,
)
)
variable["objects"][idx][1][0] = comment_msg
variable["objects"][idx][1] = self.formater.join(
variable["objects"][idx][1]
)
return_string += (
self.formater.table(
tabulate(
variable["objects"],
headers=self.formater.table_header(
["Variable", "Description"]
),
tablefmt=self.formater.name,
)
)
+ "\n\n"
)
add_paths.append(path)
return return_string
def is_hidden(self, child):
properties = child.property.get(uncalculated=True)
for hidden_property in ["hidden", "disabled", "advanced"]:
if hidden_property in properties:
return True
return False
def display_families(
self,
family,
level,
examples_mini,
examples_all,
):
variables = []
for child in family.list():
if self.is_hidden(child):
continue
if not child.isoptiondescription():
if child.isfollower() and child.index() != 0:
# only add to example
self.display_variable(
child,
examples_mini,
examples_all,
)
continue
path = child.path(uncalculated=True)
if child.isdynamic():
self.dynamic_paths.setdefault(
path, {"paths": [], "identifiers": []}
)["paths"].append(child.path())
self.dynamic_paths[path]["identifiers"].append(
child.identifiers()[-1]
)
if not variables or variables[-1]["type"] != "variables":
variables.append(
{
"type": "variables",
"objects": [],
"path": path,
"paths": [],
}
)
variables[-1]["objects"].append(
self.display_variable(
child,
examples_mini,
examples_all,
)
)
variables[-1]["paths"].append(path)
else:
name = child.name()
if child.isleadership():
examples_mini[name] = []
examples_all[name] = []
else:
examples_mini[name] = {}
examples_all[name] = {}
variables.append(
{
"type": "family",
"title": self.display_family(
child,
level,
),
"path": child.path(uncalculated=True),
"objects": self.display_families(
child,
level + 1,
examples_mini[name],
examples_all[name],
),
}
)
if not examples_mini[name]:
del examples_mini[name]
if not examples_all[name]:
del examples_all[name]
return variables
def display_family(
self,
family,
level,
):
if family.name() != family.description(uncalculated=True):
title = f"{family.description(uncalculated=True)}"
else:
warning = f'No attribute "description" for family "{family.path()}" in {display_xmlfiles(family.information.get("dictionaries"))}'
warn(warning)
title = f"{family.path()}"
isdynamic = family.isdynamic(only_self=True)
if isdynamic:
identifiers = family.identifiers(only_self=True)
if "{{ identifier }}" in title:
title = display_list(
[
title.replace(
"{{ identifier }}", self.formater.italic(identifier)
)
for identifier in identifiers
],
separator="or",
add_quote=True,
)
msg = self.formater.title(title, level)
subparameter = []
self.manage_properties(family, subparameter)
if subparameter:
msg += self.subparameter_to_string(subparameter) + ENTER
comment = []
self.subparameter_to_parameter(subparameter, comment)
if comment:
msg += "\n".join(comment) + ENTER
help = self.to_phrase(family.information.get("help", ""))
if help:
msg += "\n" + help + ENTER
if family.isleadership():
# help = "Cette famille contient des listes de bloc de variables."
help = "This family contains lists of variable blocks."
msg += "\n" + help + ENTER
if isdynamic:
identifiers = family.identifiers(only_self=True, uncalculated=True)
if isinstance(identifiers, Calculation):
identifiers = self.to_string(family, "dynamic")
if isinstance(identifiers, list):
for idx, val in enumerate(identifiers):
if not isinstance(val, Calculation):
continue
identifiers[idx] = self.to_string(family, "dynamic", f"_{idx}")
identifiers = self.formater.list(identifiers)
# help = f"Cette famille construit des familles dynamiquement.\n\n{self.formater.bold('Identifiers')}: {identifiers}"
help = f"This family builds families dynamically.\n\n{self.formater.bold('Identifiers')}: {identifiers}"
msg += "\n" + help + ENTER
return msg
def manage_properties(
self,
variable,
subparameter,
):
properties = variable.property.get(uncalculated=True)
for mode in self.rougailconfig["modes_level"]:
if mode in properties:
subparameter.append((self.formater.prop(mode), None, None))
break
for prop, msg in self.property_to_string:
if prop in properties:
subparameter.append((self.formater.prop(msg), None, None))
elif variable.information.get(f"{prop}_calculation", False):
subparameter.append(
(self.formater.prop(msg), msg, self.to_string(variable, prop))
)
def subparameter_to_string(
self,
subparameter,
):
subparameter_str = ""
for param in subparameter:
if param[1]:
subparameter_str += f"_{param[0]}_ "
else:
subparameter_str += f"{param[0]} "
return subparameter_str[:-1]
def subparameter_to_parameter(
self,
subparameter,
comment,
):
for param in subparameter:
if not param[1]:
continue
msg = param[2]
comment.append(f"{self.formater.bold(param[1].capitalize())}: {msg}")
def to_phrase(self, msg):
if not msg:
return ""
msg = str(msg).strip()
if not msg.endswith("."):
msg += "."
return msg[0].upper() + msg[1:]
def display_variable(
self,
variable,
examples_mini,
examples_all,
):
if variable.isdynamic():
parameter = ["{{ ROUGAIL_PATH }}"]
else:
parameter = [f"{self.formater.bold(variable.path())}"]
subparameter = []
description = variable.description(uncalculated=True)
comment = [self.to_phrase(description)]
help_ = self.to_phrase(variable.information.get("help", ""))
if help_:
comment.append(help_)
self.type_to_string(
variable,
subparameter,
comment,
)
self.manage_properties(
variable,
subparameter,
)
if variable.ismulti():
multi = not variable.isfollower() or variable.issubmulti()
else:
multi = False
if multi:
subparameter.append((self.formater.prop("multiple"), None, None))
if subparameter:
parameter.append(self.subparameter_to_string(subparameter))
if variable.name() == description:
warning = f'No attribute "description" for variable "{variable.path()}" in {display_xmlfiles(variable.information.get("dictionaries"))}'
warn(warning)
default = self.get_default(
variable,
comment,
)
default_in_choices = False
if variable.information.get("type") == "choice":
choices = variable.value.list(uncalculated=True)
if isinstance(choices, Calculation):
choices = self.to_string(variable, "choice")
if isinstance(choices, list):
for idx, val in enumerate(choices):
if not isinstance(val, Calculation):
if default is not None and val == default:
choices[idx] = str(val) + "" + _("(default)")
default_in_choices = True
continue
choices[idx] = self.to_string(variable, "choice", f"_{idx}")
choices = self.formater.list(choices)
comment.append(f'{self.formater.bold(_("Choices"))}: {choices}')
# choice
if default is not None and not default_in_choices:
comment.append(f"{self.formater.bold(_('Default'))}: {default}")
self.manage_exemples(
multi,
variable,
examples_all,
examples_mini,
comment,
)
self.subparameter_to_parameter(subparameter, comment)
self.formater.columns(parameter, comment)
return [self.formater.join(parameter), comment]
def get_default(
self,
variable,
comment,
):
if variable.information.get("fake_default", False):
default = None
else:
default = variable.value.get(uncalculated=True)
if default in [None, []]:
return
if isinstance(default, Calculation):
default = self.to_string(variable, "default")
if isinstance(default, list):
for idx, val in enumerate(default):
if not isinstance(val, Calculation):
continue
default[idx] = self.to_string(variable, "default", f"_{idx}")
default = self.formater.list(default)
return default
def to_string(
self,
variable,
prop,
identifier="",
):
calculation_type = variable.information.get(
f"{prop}_calculation_type{identifier}", None
)
if not calculation_type:
raise Exception(
f"cannot find {prop}_calculation_type{identifier} information, do you have declare doc has a plugins?"
)
calculation = variable.information.get(f"{prop}_calculation{identifier}")
if calculation_type == "jinja":
if calculation is not True:
values = self.formater.to_string(calculation)
else:
values = "depends on a calculation"
warning = f'"{prop}" is a calculation for {variable.path()} but has no description in {display_xmlfiles(variable.information.get("dictionaries"))}'
warn(warning)
elif calculation_type == "variable":
if prop in PROPERTY_ATTRIBUTE:
values = self.formater.to_string(calculation)
else:
values = _('the value of the variable "{0}"').format(calculation)
elif calculation_type == "identifier":
if prop in PROPERTY_ATTRIBUTE:
values = self.formater.to_string(calculation)
else:
values = _("value of the {0}").format(calculation_type)
else:
values = _("value of the {0}").format(calculation_type)
if not values.endswith("."):
values += "."
return values
def type_to_string(
self,
variable,
subparameter,
comment,
):
variable_type = variable.information.get("type")
doc_type = DocTypes.get(variable_type, {"params": {}})
subparameter.append(
(
self.formater.link(
doc_type.get("msg", variable_type), ROUGAIL_VARIABLE_TYPE
),
None,
)
)
option = variable.get()
validators = []
for param, msg in doc_type["params"].items():
value = option.impl_get_extra(f"_{param}")
if value is None:
value = option.impl_get_extra(param)
if value is not None and value is not False:
validators.append(msg.format(value))
valids = [
name
for name in variable.information.list()
if name.startswith("validators_calculation_type_")
]
if valids:
for idx in range(len(valids)):
validators.append(
self.to_string(
variable,
"validators",
f"_{idx}",
)
)
if validators:
if len(validators) == 1:
comment.append(f'{self.formater.bold("Validator")}: ' + validators[0])
else:
comment.append(
f'{self.formater.bold("Validators")}:'
+ self.formater.list(validators)
)
def manage_exemples(
self,
multi,
variable,
examples_all,
examples_mini,
comment,
):
example_mini = None
example_all = None
example = variable.information.get("examples", None)
if example is None:
example = variable.information.get("test", None)
default = variable.value.get()
if isinstance(example, tuple):
example = list(example)
mandatory = "mandatory" in variable.property.get(uncalculated=True)
if example:
if not multi:
example = example[0]
title = _("Example")
if mandatory:
example_mini = example
example_all = example
else:
if mandatory:
example_mini = "\n - example"
example_all = example
len_test = len(example)
example = self.formater.list(example)
if len_test > 1:
title = _("Examples")
else:
title = _("Example")
comment.append(f"{self.formater.bold(title)}: {example}")
elif default not in [None, []]:
example_all = default
else:
example = CONVERT_OPTION.get(variable.information.get("type"), {}).get(
"example", None
)
if example is None:
example = "xxx"
if multi:
example = [example]
if mandatory:
example_mini = example
example_all = example
if variable.isleader():
if example_mini is not None:
for mini in example_mini:
examples_mini.append({variable.name(): mini})
if example_all is not None:
for mall in example_all:
examples_all.append({variable.name(): mall})
elif variable.isfollower():
if example_mini is not None:
for idx in range(0, len(examples_mini)):
examples_mini[idx][variable.name()] = example_mini
if example_all is not None:
for idx in range(0, len(examples_all)):
examples_all[idx][variable.name()] = example_all
else:
if example_mini is not None:
examples_mini[variable.name()] = example_mini
examples_all[variable.name()] = example_all
RougailOutput = RougailOutputDoc RougailOutput = RougailOutputDoc

View file

@ -0,0 +1 @@
__version__ = "0.2.0a28"

View file

@ -1,7 +1,6 @@
"""Annotate for documentation """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
distribued with GPL-2 or later license distribued with GPL-2 or later license
@ -20,12 +19,13 @@ along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
""" """
from tiramisu import undefined from typing import Union
from rougail.utils import undefined, PROPERTY_ATTRIBUTE
from rougail.annotator.variable import Walk from rougail.annotator.variable import Walk
from rougail.i18n import _ from rougail.output_doc.i18n import _
from rougail.error import DictConsistencyError from rougail.convert.object_model import (
from rougail.object_model import (
Calculation, Calculation,
JinjaCalculation, JinjaCalculation,
VariableCalculation, VariableCalculation,
@ -34,8 +34,8 @@ from rougail.object_model import (
IdentifierPropertyCalculation, IdentifierPropertyCalculation,
InformationCalculation, InformationCalculation,
IndexCalculation, IndexCalculation,
NamespaceCalculation,
CONVERT_OPTION, CONVERT_OPTION,
PROPERTY_ATTRIBUTE,
) )
@ -47,71 +47,84 @@ class Annotator(Walk):
def __init__( def __init__(
self, self,
objectspace, objectspace,
*args, *args, # pylint: disable=unused-argument
) -> None: ) -> None:
if not objectspace.paths: if not objectspace.paths:
return return
self.objectspace = objectspace self.objectspace = objectspace
self.change_default_value = self.objectspace.rougailconfig[
"doc.change_default_value"
]
self.populate_family() self.populate_family()
self.populate_variable() self.populate_variable()
def get_examples_values(self, variable): def populate_family(self) -> None:
"""Set doc, path, ... to family"""
for family in self.get_families():
self.convert_property(family)
if family.type == "dynamic":
self.populate_family_dynamic(family)
def populate_family_dynamic(self, family) -> None:
if self.change_default_value:
if not isinstance(family.dynamic, list):
self.force_default_value_in_suffix_variable(family, family.dynamic)
else:
for value in family.dynamic:
self.force_default_value_in_suffix_variable(
family, value, return_a_list=False
)
self.calculation_to_information(
family.path,
"dynamic",
family.dynamic,
family.version,
)
def force_default_value_in_suffix_variable(
self,
family,
value,
*,
return_a_list=True,
) -> None:
"""For dynamic we must have values to document it"""
if not isinstance(value, Calculation):
return
value_added = False
if isinstance(value, (VariableCalculation, VariablePropertyCalculation)):
variable = self.objectspace.paths.get_with_dynamic(
value.variable,
family.path,
value.version,
value.namespace,
value.xmlfiles,
)[0]
if variable and not variable.default:
values = self.add_examples_values(variable)
value_added = True
if not value_added:
default_values = ["example"]
if not return_a_list:
default_values = default_values[0]
value.default_values = default_values
def add_examples_values(self, variable) -> list:
"""Check examples or test information to define examples values in a variable"""
values = self.objectspace.informations.get(variable.path).get("examples", None) values = self.objectspace.informations.get(variable.path).get("examples", None)
if not values: if not values:
values = self.objectspace.informations.get(variable.path).get("test", None) values = self.objectspace.informations.get(variable.path).get("test", None)
if isinstance(values, tuple): if isinstance(values, tuple):
values = list(values) values = list(values)
if values:
variable.default = list(values)
else:
variable.default = [CONVERT_OPTION[variable.type]["example"]]
self.objectspace.informations.add(
variable.path, "default_value_makes_sense", False
)
return values return values
def add_default_value(
self,
family,
value,
*,
inside_list=False,
) -> None:
if isinstance(value, Calculation):
default_values = "example"
if not inside_list:
default_values = [default_values]
if isinstance(value, (VariableCalculation, VariablePropertyCalculation)):
variable, identifier = self.objectspace.paths.get_with_dynamic(
value.variable,
value.path_prefix,
family.path,
value.version,
value.namespace,
value.xmlfiles,
)
values = self.get_examples_values(variable)
if values:
if inside_list:
default_values = list(values)
else:
default_values = values
value.default_values = default_values
def populate_family(self) -> None:
"""Set doc, path, ... to family"""
for family in self.get_families():
self.objectspace.informations.add(
family.path, "dictionaries", family.xmlfiles
)
self.convert_variable_property(family)
if family.type != "dynamic":
continue
if not isinstance(family.dynamic, list):
self.add_default_value(family, family.dynamic)
else:
for value in family.dynamic:
self.add_default_value(family, value, inside_list=True)
self.calculation_to_information(
family.path,
"dynamic",
family.dynamic,
family.version,
)
def populate_variable(self) -> None: def populate_variable(self) -> None:
"""convert variables""" """convert variables"""
for variable in self.get_variables(): for variable in self.get_variables():
@ -124,10 +137,13 @@ class Annotator(Walk):
variable.choices, variable.choices,
variable.version, variable.version,
) )
default = variable.default
if default is None and variable.path in self.objectspace.default_multi:
default = self.objectspace.default_multi[variable.path]
self.calculation_to_information( self.calculation_to_information(
variable.path, variable.path,
"default", "default",
variable.default, default,
variable.version, variable.version,
) )
self.calculation_to_information( self.calculation_to_information(
@ -136,24 +152,20 @@ class Annotator(Walk):
variable.validators, variable.validators,
variable.version, variable.version,
) )
if variable.path in self.objectspace.leaders and not variable.default: if (
values = self.get_examples_values(variable) self.change_default_value
if values: and variable.path in self.objectspace.leaders
variable.default = list(values) and not default
else: ):
variable.default = [CONVERT_OPTION[variable.type]["example"]] self.add_examples_values(variable)
self.objectspace.informations.add(variable.path, "fake_default", True) self.convert_property(variable)
self.objectspace.informations.add(
variable.path, "dictionaries", variable.xmlfiles
)
self.convert_variable_property(variable)
def convert_variable_property( def convert_property(
self, self,
variable: dict, variable: dict,
) -> None: ) -> None:
"""convert properties""" """convert properties"""
for prop in ["hidden", "disabled", "mandatory"]: for prop in PROPERTY_ATTRIBUTE:
prop_value = getattr(variable, prop, None) prop_value = getattr(variable, prop, None)
if not prop_value: if not prop_value:
continue continue
@ -163,6 +175,8 @@ class Annotator(Walk):
prop_value, prop_value,
variable.version, variable.version,
) )
if isinstance(prop_value, Calculation):
prop_value.default_values = False
def calculation_to_information( def calculation_to_information(
self, self,
@ -171,76 +185,150 @@ class Annotator(Walk):
values, values,
version: str, version: str,
): ):
self._calculation_to_information( """tranform calculation to an information"""
path, one_is_calculation = False
prop, if not isinstance(values, list):
values, if not isinstance(values, Calculation):
version, return
) one_is_calculation = True
if isinstance(values, list): datas = self.calculation_to_string(path, prop, values, version)
else:
datas = []
for idx, val in enumerate(values): for idx, val in enumerate(values):
self._calculation_to_information( data = self.calculation_to_string(path, prop, val, version)
path, if data is None:
prop, continue
val, if "type" in data or "description" in data:
version, one_is_calculation = True
identifier=f"_{idx}", datas.append(data)
) if one_is_calculation:
self.objectspace.informations.add(
path,
f"{prop}_calculation",
datas,
)
def _calculation_to_information( def calculation_to_string(
self, self,
path: str, path: str,
prop: str, prop: str,
values, values,
version: str, version: str,
*,
identifier: str = "",
): ):
if not isinstance(values, Calculation): if not isinstance(values, Calculation):
return return {"value": values}
values_calculation = True if values.description:
return {"description": values.description}
if isinstance(values, JinjaCalculation): if isinstance(values, JinjaCalculation):
if values.description: if values.description:
values_calculation = values.description value = values.description
values_calculation_type = "jinja" else:
elif isinstance(values, (VariableCalculation, VariablePropertyCalculation)): value = True
values_calculation = values.variable return {
paths = self.objectspace.paths "type": "jinja",
if version != "1.0" and paths.regexp_relative.search(values_calculation): "value": value,
calculation_path = paths.get_full_path( }
values_calculation, if isinstance(values, (VariableCalculation, VariablePropertyCalculation)):
path, variable_path = self.get_path_from_variable(values, version, path)
) value = self.calculation_to_information_variable(
if prop in PROPERTY_ATTRIBUTE: variable_path, values, prop, version, path
if values.when is not undefined: )
values_calculation = f'when the variable "{calculation_path}" has the value "{values.when}"' if value is None:
elif values.when_not is not undefined: return
values_calculation = f'when the variable "{calculation_path}" hasn\'t the value "{values.when_not}"' return {
else: "type": "variable",
values_calculation = f'when the variable "{calculation_path}" has the value "True"' "value": value,
else: "ori_path": variable_path,
values_calculation = calculation_path "optional": values.optional,
values_calculation_type = "variable" }
elif isinstance(values, InformationCalculation): if isinstance(values, InformationCalculation):
values_calculation_type = "information" return {
elif isinstance(values, (IdentifierCalculation, IdentifierPropertyCalculation)): "type": "information",
if version != "1.0" and prop in PROPERTY_ATTRIBUTE: "value": self.calculation_to_information_information(
if values.when is not undefined: values, version, path
values_calculation = f'when the identifier is "{values.when}"' ),
elif values.when_not is not undefined: }
values_calculation = ( if isinstance(values, (IdentifierCalculation, IdentifierPropertyCalculation)):
f'when the identifier is not "{values.when_not}"' return {
) "type": "identifier",
values_calculation_type = "identifier" "value": self.calculation_to_information_identifier(
elif isinstance(values, IndexCalculation): values, prop, version
values_calculation_type = "index" ),
self.objectspace.informations.add( }
if isinstance(values, IndexCalculation):
return {
"type": "index",
"value": True,
}
if isinstance(values, NamespaceCalculation):
return {
"type": "namespace",
"value": True,
}
raise Exception(f'unknown calculation {type(values)} "{values}"')
def calculation_to_information_variable(
self, variable_path: str, values, prop: str, version: str, path: str
) -> str:
# is optional
variable = self.objectspace.paths.get_with_dynamic(
variable_path,
path, path,
f"{prop}_calculation_type{identifier}", values.version,
values_calculation_type, values.namespace,
) values.xmlfiles,
self.objectspace.informations.add( )[0]
path, if isinstance(values, VariableCalculation) and values.optional and not variable:
f"{prop}_calculation{identifier}", return None
values_calculation, if variable:
) variable_path = variable.path
if prop in PROPERTY_ATTRIBUTE:
# get comparative value
if values.when_not is not undefined:
value = values.when_not
condition = "when_not"
elif values.when is not undefined:
value = values.when
condition = "when"
else:
value = True
condition = "when"
# set message
values_calculation = (variable_path, value, condition)
else:
values_calculation = variable_path
return values_calculation
def calculation_to_information_information(
self, values, version: str, path: str
) -> Union[str, bool]:
if values.variable:
variable_path = self.get_path_from_variable(values, version, path)
return _('the value of the information "{0}" of the variable "{1}"').format(
values.information, variable_path
)
return _('the value of the global information "{0}"').format(values.information)
def calculation_to_information_identifier(
self, values, prop: str, version: str
) -> Union[str, bool]:
if version != "1.0" and prop in PROPERTY_ATTRIBUTE:
if values.when is not undefined:
return _('when the identifier is "{0}"').format(values.when)
if values.when_not is not undefined:
return _('when the identifier is not "{0}"').format(values.when_not)
return True
def get_path_from_variable(self, values, version: str, path: str) -> str:
variable_path = values.variable
paths = self.objectspace.paths
if version != "1.0" and paths.regexp_relative.search(variable_path):
variable_path = paths.get_full_path(
variable_path,
path,
)
elif version == "1.0" and "{{ suffix }}" in variable_path:
variable_path = variable_path.replace("{{ suffix }}", "{{ identifier }}")
return variable_path

View file

@ -2,7 +2,7 @@
Config file for Rougail-doc Config file for Rougail-doc
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -19,26 +19,29 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
""" """
from pathlib import Path from pathlib import Path
from rougail.utils import load_modules from rougail.utils import load_modules, _
OUTPUTS = None OUTPUTS = None
def get_outputs() -> None: def get_outputs() -> None:
module_name = "rougail.doc.output" """Load all outputs"""
module_name = "rougail.output_doc.output"
outputs = {} outputs = {}
for path in (Path(__file__).parent / "output").iterdir(): for path in (Path(__file__).parent / "output").iterdir():
name = path.name name = path.name
if not name.endswith(".py") or name.endswith("__.py"): if not name.endswith(".py") or name.endswith("__.py"):
continue continue
module = load_modules(module_name + "." + name, str(path)) module = load_modules(module_name + "." + name[:-3], str(path))
if "Formater" not in dir(module): if "Formater" not in dir(module):
continue continue
level = module.Formater.level level = module.Formater.level
if level in outputs: if level in outputs:
raise Exception( raise ImportError(
f'duplicated level rougail-doc for output "{level}": {module.Formater.name} and {outputs[level].name}' _('duplicated level rougail-doc for output "{0}": {1} and {2}').format(
level, module.Formater.name, outputs[level].name
)
) )
outputs[module.Formater.level] = module.Formater outputs[module.Formater.level] = module.Formater
return {outputs[level].name: outputs[level] for level in sorted(outputs)} return {outputs[level].name: outputs[level] for level in sorted(outputs)}
@ -55,35 +58,63 @@ class OutPuts: # pylint: disable=R0903
OUTPUTS = get_outputs() OUTPUTS = get_outputs()
def get(self) -> dict: def get(self) -> dict:
"""Get all outputs"""
return OUTPUTS return OUTPUTS
def get_rougail_config( def get_rougail_config(
*, *,
backward_compatibility=True, backward_compatibility=True, # pylint: disable=unused-argument
) -> dict: ) -> dict:
"""Get documentation for output_doc modules"""
outputs = list(OutPuts().get()) outputs = list(OutPuts().get())
output_format_default = outputs[0] output_format_default = outputs[0]
rougail_options = """ rougail_options = f"""
doc: doc:
description: Configuration rougail-doc description: {_('Configuration rougail-doc')}
disabled: disabled:
type: jinja
jinja: | jinja: |
{% if step.output != 'doc' %} {{% if step.output is propertyerror or step.output != 'doc' %}}
disabled disabled
{% endif %} {{% endif %}}
title_level: title_level:
description: Start title level description: {_('Starting title level')}
alternative_name: dt alternative_name: dt
default: 1 default: 1
with_example:
description: Display example in documentation example:
negative_description: Hide example in documentation description: {_('Generate example')}
alternative_name: de alternative_name: de
default: false default: false
without_family:
description: {_('Do not add families in documentation')}
default: false
disabled_modes:
description: {_('Disable documentation for variables with those modes')}
multi: true
mandatory: false
disabled:
jinja: |
{{% if not modes_level %}}
there is no mode
{{% endif %}}
description: {_('disabled when there is no mode available')}
validators:
- jinja: |
{{% if _.disabled_modes not in modes_level %}}
this mode is not available
{{% endif %}}
description: {_('verify if disable modes already exists')}
change_default_value:
description: {_('Modify values to document leaderships and dynamics families')}
default: true
output_format: output_format:
description: Generate document in format description: {_('Generate document in format')}
alternative_name: do alternative_name: do
default: output_format_default default: output_format_default
choices: choices:

View file

@ -0,0 +1,783 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from warnings import warn
from typing import Optional
from itertools import chain
from re import compile
from tiramisu import Calculation, groups
from tiramisu.error import ConfigError, display_list, PropertiesOptionError
from rougail.tiramisu import display_xmlfiles, normalize_family
from rougail.utils import undefined, PROPERTY_ATTRIBUTE
from .config import OutPuts
from .i18n import _
from .utils import DocTypes, get_display_path, dump
from .example import Examples
class RougailOutputDoc(Examples):
"""Rougail Output Doc:
Generate documentation from rougail description files
"""
def __init__(
self,
config: "Config",
*,
rougailconfig: "RougailConfig" = None,
**kwarg,
):
# Import here to avoid circular import
from rougail.tiramisu import CONVERT_OPTION
self.convert_option = CONVERT_OPTION
if rougailconfig is None:
from rougail import RougailConfig
rougailconfig = RougailConfig
if rougailconfig["step.output"] != "doc":
rougailconfig["step.output"] = "doc"
if rougailconfig["step.output"] != "doc":
raise Exception("doc is not set as step.output")
outputs = OutPuts().get()
output = rougailconfig["doc.output_format"]
if output not in outputs:
raise Exception(
f'cannot find output "{output}", available outputs: {list(outputs)}'
)
self.conf = config
self.modes_level = rougailconfig["modes_level"]
if self.modes_level:
self.disabled_modes = rougailconfig["doc.disabled_modes"]
if self.disabled_modes:
self.conf.property.setdefault(
frozenset(self.disabled_modes), "read_write", "append"
)
else:
self.disabled_modes = []
self.conf.property.read_write()
# self.conf.property.remove("cache")
self.formater = outputs[output]()
self.level = rougailconfig["doc.title_level"]
self.dynamic_paths = {}
self.example = rougailconfig["doc.example"]
self.with_family = not rougailconfig["doc.without_family"]
self.informations = None
try:
groups.namespace
self.support_namespace = True
except AttributeError:
self.support_namespace = False
self.property_to_string = [
("mandatory", _("mandatory")),
("hidden", _("hidden")),
("disabled", _("disabled")),
("unique", _("unique")),
("force_store_value", _("auto modified")),
]
super().__init__()
def run(self) -> str:
"""Print documentation in stdout"""
self._tiramisu_to_internal_object()
if not self.example:
return_string = self.formater.run(self.informations, self.level)
else:
return_string = self.gen_doc_examples()
return True, return_string
def print(self) -> None:
ret, data = self.run()
print(data)
return ret
def _tiramisu_to_internal_object(self):
config = self.conf.unrestraint
self._populate_dynamics(config)
informations = self._parse_families(config)
if informations is None:
informations = {}
self.informations = informations
def _populate_dynamics(self, family) -> None:
for child in family.list():
path = child.path(uncalculated=True)
if not child.isoptiondescription():
func = self._populate_dynamic_variable
else:
func = self._populate_dynamic_family
func(child, path)
def _populate_dynamic_variable(self, variable, path) -> None:
if not variable.isdynamic():
return
if path not in self.dynamic_paths:
self.dynamic_paths[path] = {"paths": [], "names": []}
self._dyn_path_to_italic(self.dynamic_paths[path], variable, path)
self.dynamic_paths[path]["names"].append(variable.name())
def _populate_dynamic_family(self, family, path) -> None:
if family.isdynamic():
if path not in self.dynamic_paths:
self.dynamic_paths[path] = {"paths": [], "names": []}
self._dyn_path_to_italic(self.dynamic_paths[path], family, path)
self.dynamic_paths[path]["names"].append(family.name())
self._populate_dynamics(family)
def _parse_families(self, family) -> dict:
informations = {}
leader = None
for child in family.list():
if self._is_inaccessible_user_data(child):
continue
if child.type(only_self=True) == "symlink":
continue
name = child.name(uncalculated=True)
path = child.path(uncalculated=True)
if not child.isoptiondescription():
leader = self.parse_variable(child, leader, name, path, informations)
else:
self._parse_family(child, informations, name, path)
return informations
def _is_inaccessible_user_data(self, child):
"""If family is not accessible in read_write mode (to load user_data),
do not comment this family
"""
properties = child.property.get(uncalculated=True)
for hidden_property in [
"hidden",
"disabled",
]:
if hidden_property in properties:
return True
calculation = child.information.get(f"{hidden_property}_calculation", None)
if calculation and calculation.get("type") == "variable":
variable_path, value, condition = calculation["value"]
variable = self.conf.forcepermissive.option(variable_path)
try:
variable_value = variable.value.get()
except AttributeError as err:
pass
else:
uncalculated = variable.value.get(uncalculated=True)
if (
not isinstance(uncalculated, Calculation)
and self._is_inaccessible_user_data(variable)
and (
condition == "when"
and value == variable_value
or condition == "when_not"
and value != variable_value
)
):
return True
if not child.isoptiondescription():
for hidden_property in self.disabled_modes:
if hidden_property in properties:
return True
return False
def _parse_family(self, family, informations: dict, name: str, path: str) -> None:
sub_informations = self._parse_families(family)
if not sub_informations:
return
if self.with_family:
informations[name] = {
"type": self._get_family_type(family),
"informations": self._populate_family(
family,
path,
),
"children": sub_informations,
}
else:
informations.update(sub_informations)
def parse_variable(
self,
variable,
leader: dict,
name: str,
path: str,
informations: dict,
*,
only_one=False,
) -> Optional[dict]:
potential_leader = None
if variable.isdynamic():
# information is already set
potential_leader = self._parse_variable_dynamic(
variable, leader, name, path, informations, only_one
)
else:
if variable.isfollower() and variable.index():
self._parse_variable_follower_with_index(
variable, leader, path, informations
)
potential_leader = self._parse_variable_normal(
variable, leader, name, path, informations
)
if potential_leader:
leader = potential_leader
return leader
def _parse_variable_normal(
self, variable, leader, name: str, path: str, informations: dict
) -> Optional[dict]:
if variable.isdynamic():
sub_informations = self.dynamic_paths[path]
elif variable.isfollower() and variable.index():
sub_informations = informations[path]
else:
sub_informations = {}
self._populate_variable(
variable,
sub_informations,
)
if self.example:
self._add_examples(variable, sub_informations, leader)
informations[path] = sub_informations
if variable.isleader():
return sub_informations
return None
def _parse_variable_follower_with_index(
self, variable, leader: dict, path: str, informations: dict
) -> None:
if not self.example or (variable.index() + 1) > len(leader["example"][-1]):
return
informations[path]["example"][-1][variable.index()] = self._get_example(
variable, informations[path], None
)
def _parse_variable_dynamic(
self, variable, leader, name, path, informations, only_one
) -> None:
if path not in self.dynamic_paths:
self._populate_dynamic_variable(variable, path)
dynamic_variable = self.dynamic_paths[path]
if (not only_one or path in informations) and "type" in dynamic_variable:
if self.example:
dynamic_variable["example"].append(
self._get_example(variable, dynamic_variable, leader)
)
description = self.formater.to_phrase(
variable.description(uncalculated=True)
)
if "{{ identifier }}" in description:
description = self._convert_description(description, variable)
dynamic_variable["descriptions"].append(
self.formater.to_phrase(description)
)
if variable.isleader():
return dynamic_variable
if not only_one:
return None
return self._parse_variable_normal(variable, leader, name, path, informations)
def _get_family_type(self, family) -> str:
if self.support_namespace and family.group_type() is groups.namespace:
return "namespace"
if family.isleadership():
return "leadership"
if family.isdynamic(only_self=True):
return "dynamic"
return "family"
def _dyn_path_to_italic(self, dico, child, path: str) -> str:
display_path = path
for identifier in child.identifiers():
identifier = normalize_family(str(identifier))
display_path = display_path.replace(
"{{ identifier }}", self.formater.italic(identifier), 1
)
path = path.replace("{{ identifier }}", str(identifier), 1)
if display_path != path:
if "display_paths" not in dico:
dico["display_paths"] = {}
dico["display_paths"][len(dico["paths"])] = display_path
dico["paths"].append(path)
def _populate_family(
self,
family,
path: str,
) -> dict:
if family.isdynamic():
informations = self.dynamic_paths[path]
else:
informations = {}
self._populate(family, informations)
if family.isleadership():
informations.setdefault("help", []).append(
_("This family contains lists of variable blocks.")
)
if family.isdynamic(only_self=True):
identifiers = self._to_string(family, "dynamic", do_not_raise=True)
if identifiers is None:
identifiers = family.identifiers(only_self=True)
informations["identifiers"] = identifiers
informations.setdefault("help", []).append(
_("This family builds families dynamically.")
)
return informations
def _populate_variable(
self,
variable,
informations: dict,
):
informations["type"] = "variable"
default = self._get_default(
variable,
)
if default is not None:
informations["default"] = {"name": _("Default"), "values": default}
self._parse_type(
variable,
informations,
)
self._populate(variable, informations)
if "description" in informations:
informations["descriptions"] = [
self.formater.to_phrase(informations.pop("description"))
]
if variable.ismulti():
multi = not variable.isfollower() or variable.issubmulti()
else:
multi = False
if multi:
informations["properties"].append(
{
"type": "multiple",
"name": _("multiple"),
}
)
examples = variable.information.get("examples", None)
if examples is None:
examples = variable.information.get("test", None)
if examples is not None:
if len(examples) == 1:
informations["examples"] = {"name": _("Example"), "values": examples[0]}
else:
informations["examples"] = {
"name": _("Examples"),
"values": list(examples),
}
def _populate(
self,
obj,
informations: dict,
):
if not obj.isdynamic():
informations["paths"] = [obj.path(uncalculated=True)]
informations["names"] = [obj.name()]
description = obj.description(uncalculated=True)
if obj.name(uncalculated=True) == description and (
not obj.isoptiondescription()
or (self.support_namespace and obj.group_type() is not groups.namespace)
):
if obj.isoptiondescription() or not obj.isfollower() or not obj.index():
warning = _('No attribute "description" for "{0}" in {1}').format(
obj.path(uncalculated=True),
display_xmlfiles(obj.information.get("ymlfiles")),
)
warn(warning)
else:
informations["description"] = self._convert_description(description, obj)
help_ = obj.information.get("help", None)
if help_:
informations["help"] = [self.formater.to_phrase(help_)]
self._parse_properties(
obj,
informations,
)
def _convert_description(self, description, obj):
if "{{ identifier }}" in description:
return description.replace(
"{{ identifier }}", self.formater.italic(obj.identifiers()[-1])
)
return description
def _add_examples(self, variable, informations: dict, leader) -> None:
if not variable.index():
example = self._get_example(variable, informations, leader)
informations["example"] = [example]
informations["mandatory_without_value"] = "mandatory" in variable.property.get(
uncalculated=True
) and (
not variable.information.get("default_value_makes_sense", True)
or variable.value.get(uncalculated=True) in [None, []]
)
def _get_example(self, variable, informations: dict, leader):
example = informations.get("examples", {}).get("values")
if example is not None:
if isinstance(example, tuple):
example = list(example)
for prop in informations["properties"]:
if prop["type"] == "multiple":
if not isinstance(example, list):
example = [example]
break
else:
if isinstance(example, list):
index = variable.index()
if index is None or len(example) - 1 >= index:
index = 0
example = example[index]
else:
if variable.information.get("fake_default", False):
default = None
else:
try:
default = variable.value.get()
except ConfigError:
default = None
if default not in [None, []]:
example = default
else:
example = self.get_type_default_value(
variable, informations["properties"]
)
if leader is not None and variable.isfollower():
example = [example] + [undefined] * (len(leader["example"][-1]) - 1)
return example
def get_type_default_value(self, variable, properties):
example = self.convert_option.get(variable.information.get("type"), {}).get(
"example", None
)
if example is None:
example = "xxx"
for prop in properties:
if prop["type"] == "multiple":
multi = True
break
else:
multi = False
if multi:
example = [example]
return example
def _parse_type(
self,
variable,
informations,
):
variable_type = variable.information.get("type")
doc_type = DocTypes.get(variable_type, {"params": {}})
informations["properties"] = [
{
"type": "type",
"name": doc_type.get("msg", variable_type),
}
]
# extra parameters for types
option = variable.get()
validators = []
for param, msg in doc_type["params"].items():
value = option.impl_get_extra(f"_{param}")
if value is None:
value = option.impl_get_extra(param)
if value is not None and value is not False:
if isinstance(value, set):
value = list(value)
if isinstance(value, list):
value = display_list(value, add_quote=True)
validators.append(msg.format(value))
# get validation information from annotator
for name in variable.information.list():
if not name.startswith("validators_calculation"):
continue
validators.extend(
self._to_string(
variable,
"validators",
)
)
break
if variable.information.get("type") == "regexp":
validators.append(
_('text based with regular expressions "{0}"').format(
variable.pattern()
)
)
if validators:
if len(validators) == 1:
key = _("Validator")
validators = validators[0]
else:
key = _("Validators")
informations["validators"] = {"name": key, "values": validators}
if variable.information.get("type") == "choice":
choices = self._to_string(variable, "choice", do_not_raise=True)
if choices is None:
choices = variable.value.list()
for idx, val in enumerate(choices):
if not isinstance(val, Calculation):
default = informations.get("default", {}).get("values")
if default is not None and val == default:
choices[idx] = (
str(val)
+ " "
+ self.formater.bold("" + _("(default)"))
)
informations["default_is_already_set"] = True
continue
choices[idx] = self._to_string(variable, "choice", f"_{idx}")
informations["choices"] = {"name": _("Choices"), "values": choices}
def _parse_properties(
self,
variable,
informations,
):
properties = variable.property.get(uncalculated=True)
for mode in self.modes_level:
if mode not in properties:
continue
informations.setdefault("properties", []).append(
{
"type": "mode",
"name": mode,
}
)
break
for prop, msg in self.property_to_string:
if prop in properties:
prop_obj = {
"type": "property",
"name": msg,
}
elif variable.information.get(f"{prop}_calculation", False):
annotation = self._to_string(variable, prop)
if not annotation:
continue
prop_obj = {
"type": "property",
"name": msg,
"annotation": annotation,
}
else:
continue
informations.setdefault("properties", []).append(prop_obj)
def _get_default(
self,
variable,
):
default = self._to_string(variable, "default", do_not_raise=True)
if default is not None:
if default == []:
default = None
return default
if variable.information.get("default_value_makes_sense", True):
default_ = variable.value.get(uncalculated=True)
if not isinstance(default_, Calculation):
default = default_
if default == []:
default = None
return default
def _to_string(
self,
variable,
prop,
do_not_raise=False,
):
calculation = variable.information.get(f"{prop}_calculation", None)
if not calculation:
if do_not_raise:
return None
raise Exception(
f'cannot find "{prop}_calculation" information, '
"do you have declare doc has a plugins?"
)
if isinstance(calculation, list):
values = []
for cal in calculation:
value = self._calculation_to_string(variable, cal, prop)
if value is not None:
values.append(value)
return values
return self._calculation_to_string(variable, calculation, prop)
def _calculation_to_string(self, child, calculation, prop):
if "description" in calculation:
values = calculation["description"]
if not values.endswith("."):
values += "."
return values
if "type" not in calculation:
return calculation["value"]
if calculation["type"] == "jinja":
if calculation["value"] is not True:
values = calculation["value"]
else:
values = _("depends on a calculation")
if (
child.isoptiondescription()
or not child.isfollower()
or not child.index()
):
warning = _(
'"{0}" is a calculation for {1} but has no description in {2}'
).format(
prop,
child.path(),
display_xmlfiles(child.information.get("ymlfiles")),
)
warn(warning)
elif calculation["type"] == "variable":
if prop in PROPERTY_ATTRIBUTE:
variable_path, value, condition = calculation["value"]
variable = self.conf.forcepermissive.option(variable_path)
try:
variable.value.get()
except AttributeError as err:
variable = None
else:
uncalculated = variable.value.get(uncalculated=True)
if not isinstance(
uncalculated, Calculation
) and self._is_inaccessible_user_data(variable):
return None
if variable and self._is_inaccessible_user_data(variable):
msg = _("depends on an undocumented variable")
elif condition == "when_not":
if not calculation["optional"]:
msg = _('when the variable "{0}" hasn\'t the value "{1}"')
else:
msg = _('when the variable "{0}" is defined and hasn\'t the value "{1}"')
else:
if not calculation["optional"]:
msg = _('when the variable "{0}" has the value "{1}"')
else:
msg = _('when the variable "{0}" is defined and has the value "{1}"')
if not isinstance(value, str):
value = dump(value)
values = msg.format(variable_path, value)
else:
if calculation["optional"]:
path = calculation["value"]
if "{{ identifier }}" in path:
if path not in self.dynamic_paths:
return None
else:
try:
self.conf.forcepermissive.option(path).get()
except AttributeError:
return None
if not calculation["optional"]:
true_msg = _('the value of the variable "{0}"')
else:
true_msg = _('the value of the variable "{0}" if it is defined')
print('connard ben lan ...')
hidden_msg = _("the value of an undocumented variable")
if "{{ identifier }}" in calculation["ori_path"]:
if calculation["value"] == calculation["ori_path"]:
regexp = None
else:
regexp = compile(
"^"
+ calculation["ori_path"].replace(
"{{ identifier }}", "(.*)"
)
+ "$"
)
informations = [self.dynamic_paths[calculation["value"]]]
values = []
all_is_undocumented = None
for information in informations:
for idx, path in enumerate(information["paths"]):
if regexp and not regexp.search(path):
continue
if self._is_inaccessible_user_data(self.conf.option(path)):
if all_is_undocumented is None:
all_is_undocumented = True
msg = hidden_msg
else:
if regexp:
display_path = calculation["ori_path"]
for identifier in regexp.findall(path):
display_path = display_path.replace(
"{{ identifier }}",
self.formater.italic(identifier),
1,
)
else:
display_path = get_display_path(information, idx)
msg = true_msg.format(display_path)
all_is_undocumented = False
values.append(msg)
if all_is_undocumented and len(values) > 1:
values = _("the values of undocumented variables")
else:
variable_path = calculation["ori_path"]
variable = self.conf.forcepermissive.option(variable_path)
try:
isfollower = variable.isfollower()
except AttributeError as err:
pass
else:
if not isfollower and self._is_inaccessible_user_data(variable):
try:
uncalculated = variable.value.get(uncalculated=True)
except PropertiesOptionError:
true_msg = None
else:
if uncalculated and not isinstance(
uncalculated, Calculation
):
if isinstance(uncalculated, list):
uncalculated = self.formater.list(uncalculated)
true_msg = _(
"(from an undocumented variable){0}"
).format(uncalculated)
else:
if not isinstance(uncalculated, str):
uncalculated = dump(uncalculated)
true_msg = _(
"{0} (from an undocumented variable)"
).format(uncalculated)
else:
true_msg = _("depends on an undocumented variable")
if true_msg:
values = true_msg.format(calculation["ori_path"])
else:
values = None
elif calculation["type"] == "identifier":
if prop in PROPERTY_ATTRIBUTE:
values = calculation["value"]
else:
values = _("the value of the identifier")
elif calculation["type"] == "information":
values = calculation["value"]
else:
values = _("the value of the {0}").format(calculation["type"])
if isinstance(values, str) and not values.endswith("."):
values += "."
return values

View file

@ -0,0 +1,136 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from typing import Optional
from .utils import _
class Examples: # pylint: disable=no-member,too-few-public-methods
"""Build examples"""
def __init__(self):
self.examples = None
self.examples_mandatories = None
def gen_doc_examples(self):
"""Return examples"""
self._build_examples()
return_string = ""
if self.examples_mandatories:
return_string += self.formater.title(
_("Example with mandatory variables not filled in"), self.level
)
return_string += self.formater.yaml(self.examples_mandatories)
if self.examples:
return_string += self.formater.title(
_("Example with all variables modifiable"), self.level
)
return_string += self.formater.yaml(self.examples)
return return_string
def _build_examples(self):
self.examples, self.examples_mandatories = self._parse_examples(
self.informations
)
def _parse_examples(self, dico, dyn_parent: Optional[str] = None) -> tuple:
examples = {}
examples_mandatories = {}
for value in dico.values():
if value["type"] == "variable":
self._parse_examples_variable(
value, dyn_parent, examples, examples_mandatories
)
else:
self._parse_examples_family(
value, dyn_parent, examples, examples_mandatories
)
return examples, examples_mandatories
def _parse_examples_variable(
self,
variable,
dyn_parent: Optional[str],
examples: dict,
examples_mandatories: dict,
) -> None:
for idx, path in enumerate(variable["paths"]):
if dyn_parent is not None and not path.startswith(dyn_parent):
continue
name = variable["names"][idx]
value = variable["example"][idx]
examples[name] = value
if variable["mandatory_without_value"]:
examples_mandatories[name] = value
break
def _parse_examples_family(
self,
family,
dyn_parent: Optional[str],
examples: dict,
examples_mandatories: dict,
) -> None:
for idx, path in enumerate(family["informations"]["paths"]):
if dyn_parent is not None and not path.startswith(dyn_parent):
continue
name = family["informations"]["names"][idx]
if family["type"] == "leadership":
func = self._parse_examples_leadership
else:
func = self._parse_examples
ret_e, ret_m = func(
family["children"],
path + "." if family["type"] == "dynamic" else dyn_parent,
)
if ret_m:
examples_mandatories[name] = ret_m
if ret_e:
examples[name] = ret_e
def _parse_examples_leadership(
self, leadership, dyn_parent: Optional[str] = None
) -> tuple:
examples = []
examples_mandatories = []
leader = next(iter(leadership.values()))
for path_idx, path in enumerate(leader["paths"]):
if dyn_parent is not None and not path.startswith(dyn_parent):
continue
for leader_idx in range(len(leader["example"][path_idx])):
examples.append(
{
follower["names"][path_idx]: follower["example"][path_idx][
leader_idx
]
for follower in leadership.values()
}
)
if leader["mandatory_without_value"]:
examples_mandatories.append(
{
follower["names"][path_idx]: follower["example"][path_idx][
leader_idx
]
for follower in leadership.values()
if follower["mandatory_without_value"]
}
)
break
return examples, examples_mandatories

View file

@ -1,6 +1,6 @@
"""Internationalisation utilities """Internationalisation utilities
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -19,6 +19,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
from gettext import translation from gettext import translation
from pathlib import Path from pathlib import Path
t = translation("rougail_output_doc", str(Path(__file__).parent / "locale"), fallback=True) t = translation(
"rougail_output_doc", str(Path(__file__).parent / "locale"), fallback=True
)
_ = t.gettext _ = t.gettext

View file

@ -1,6 +1,6 @@
"""Loads output """Loads output
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the

View file

@ -1,6 +1,6 @@
""" """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -16,86 +16,36 @@ You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
""" """
from io import BytesIO
from typing import List from typing import List
from itertools import chain from ..utils import CommonFormater, dump, to_phrase
from ruamel.yaml import YAML
class Formater: class Formater(CommonFormater):
"""The asciidoc formater"""
name = "asciidoc" name = "asciidoc"
_table_name = "asciidoc"
level = 40 level = 40
def __init__(self):
self._yaml = YAML()
self._yaml.indent(mapping=2, sequence=4, offset=2)
def header(self):
return ""
def title( def title(
self, self,
title: str, title: str,
level: int, level: int,
) -> str: ) -> str:
"""Display family name as a title"""
char = "=" char = "="
return f"{char * (level + 1)} {title}\n\n" return f"{char * (level + 1)} {title}\n\n"
def yaml(self, dump: dict) -> str:
return f"[,yaml]\n----\n{self.dump(dump)}\n----\n"
def table(self, table: str) -> str:
# add 'a' option in cols to display list
stable = table.split("\n", 1)
return stable[0].replace("<", "a") + "\n" + stable[1]
def link(
self,
comment: str,
link: str,
) -> str:
return f"`{link}[{comment}]`"
def prop(
self,
prop: str,
) -> str:
return f"`{prop}`"
def list(
self,
choices: list,
) -> str:
prefix = "\n\n* "
char = "\n* "
return prefix + char.join([self.dump(choice) for choice in choices])
def is_list(
self,
txt: str,
) -> str:
return txt.startswith("* ")
def columns(
self,
col1: List[str],
col2: List[str],
) -> None:
self.max_line = 0
for params in chain(col1, col2):
for param in params.split("\n"):
self.max_line = max(self.max_line, len(param))
self.max_line += 1
def join( def join(
self, self,
lst: List[str], lst: List[str],
) -> str: ) -> str:
"""Display line in table from a list"""
string = "" string = ""
previous = "" previous = ""
for line in lst: for line in lst:
if string: if string:
if self.is_list(previous.split("\n")[-1]): if self.is_list(previous.split("\n", 1)[-1]):
string += "\n\n" string += "\n\n"
else: else:
string += " +\n" string += " +\n"
@ -104,36 +54,72 @@ class Formater:
previous = line previous = line
return "\n" + string return "\n" + string
def to_string(
self,
text: str,
) -> str:
return text
def table_header(
self,
lst,
):
return lst[0] + " " * (self.max_line - len(lst[0])), lst[1] + " " * (
self.max_line - len(lst[1])
)
def bold( def bold(
self, self,
msg: str, msg: str,
) -> str: ) -> str:
"""Set a text to bold"""
return f"**{msg}**" return f"**{msg}**"
def italic( def italic(
self, self,
msg: str, msg: str,
) -> str: ) -> str:
return f"_{msg}_" """Set a text to italic"""
return f"__{msg}__"
def dump(self, dico): def stripped(
with BytesIO() as ymlfh: self,
self._yaml.dump(dico, ymlfh) text: str,
ret = ymlfh.getvalue().decode("utf-8").strip() ) -> str:
if ret.endswith("..."): """Return stripped text (as help)"""
ret = ret[:-3].strip() return text.strip()
return ret
def list(
self,
choices: list,
) -> str:
"""Display a liste of element"""
prefix = "\n\n* "
char = "\n* "
return prefix + char.join([dump(choice) for choice in choices])
def prop(
self,
prop: str,
italic: bool,
) -> str:
"""Display property"""
if italic:
prop = self.italic(prop)
return f"`{prop}`"
def yaml(self, _dump: dict) -> str:
"""Dump yaml part of documentation"""
return f"[,yaml]\n----\n---\n{dump(_dump)}\n----\n"
def table(self, datas) -> str:
"""Transform list to a table in string format
we change the first line because we want that col has the same width
"""
table = super().table(datas)
stable = table.split("\n", 1)
return '[cols="1a,1a"]\n' + stable[1]
def link(
self,
comment: str,
link: str,
) -> str:
"""Add a link"""
return f"`{link}[{comment}]`"
def is_list(
self,
txt: str,
) -> str:
"""verify if a text is a list"""
return txt.strip().startswith("* ")
def to_phrase(self, text: str) -> str:
return to_phrase(text)

View file

@ -0,0 +1,152 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from typing import List
from ..i18n import _
from ..utils import dump, CommonFormater, to_phrase, ENTER
class Formater(CommonFormater):
"""The markdown (for github) formater"""
name = "console"
level = 10
enter_table = "\n"
titles_color = {
"title1": "bright_cyan underline bold",
"title2": "bright_green underline bold",
"title3": "green1 underline bold",
"title4": "green3 underline bold",
"title5": "dark_green underline bold",
}
def __init__(self) -> None:
self.max_line = 0
super().__init__()
def run(self, dico: dict, level: int) -> str:
from rich.text import Text
from rich.table import Table
from rich.theme import Theme
from rich.console import Console
self.rich_table = Table
custom_theme = Theme(self.titles_color)
dico = self.dict_to_dict(dico, level)
console = Console(theme=custom_theme)
with console.capture() as capture:
for data in dico:
console.print(data)
return capture.get()
def title(
self,
title: str,
level: int,
) -> str:
"""Display family name as a title"""
space = " " * (2 * (level - 1))
return f"{ENTER}{space}[title{level}]{title}[/title{level}]{ENTER}"
def join(
self,
lst: List[str],
) -> str:
"""Display line in table from a list"""
return self.enter_table.join(lst)
def bold(
self,
msg: str,
) -> str:
"""Set a text to bold"""
return f"[bold]{msg}[/bold]"
def italic(
self,
msg: str,
) -> str:
"""Set a text to italic"""
return f"[italic]{msg}[/italic]"
def stripped(
self,
text: str,
) -> str:
"""Return stripped text (as help)"""
return text
def list(
self,
choices,
) -> str:
"""Display a liste of element"""
char = f"{self.enter_table}- "
ret = ""
for choice in choices:
if not isinstance(choice, str):
choice = dump(choice)
ret += char + choice
return ret
def prop(
self,
prop: str,
italic: bool,
) -> str:
"""Display property"""
prop = f"[reverse][bold] {prop} [/bold][/reverse]"
if italic:
prop = self.italic(prop)
return prop
def yaml(self, _dump):
"""Dump yaml part of documentation"""
return f"```yaml\n---\n{dump(_dump)}\n```\n"
def link(
self,
comment: str,
link: str,
) -> str:
"""Add a link"""
return self.prop(comment, False)
# return f"{comment} ({link})"
def columns(
self,
col: List[str],
) -> None:
"""count columns length"""
for line in col:
for l in line.split(self.enter_table):
self.max_line = max(self.max_line, len(l) + 1)
def table(self, datas: list) -> str:
"""Transform list to a table in string format"""
table = self.rich_table(show_lines=True)
table.add_column(_("Variable"), width=self.max_line)
table.add_column(_("Description"), width=self.max_line)
for data in datas:
table.add_row(str(data[0]), data[1])
return table
def to_phrase(self, text: str) -> str:
return to_phrase(text)

View file

@ -1,6 +1,6 @@
""" """
Silique (https://www.silique.fr) Silique (https://www.silique.fr)
Copyright (C) 2024 Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the under the terms of the GNU Lesser General Public License as published by the
@ -16,112 +16,113 @@ You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
""" """
from io import BytesIO
from typing import List from typing import List
from itertools import chain from html import escape
from ruamel.yaml import YAML
from ..utils import dump, CommonFormater, to_phrase
class Formater: class Formater(CommonFormater):
"""The markdown (for github) formater"""
name = "github" name = "github"
_table_name = "github"
level = 50 level = 50
enter_table = "<br/>"
def __init__(self): def __init__(self) -> None:
self._yaml = YAML() self.max_line_variable = 0
self._yaml.indent(mapping=2, sequence=4, offset=2) self.max_line_description = 0
self.header_setted = False super().__init__()
def header(self):
if self.header_setted:
return ""
self.header_setted = True
return "---\ngitea: none\ninclude_toc: true\n---\n"
def title( def title(
self, self,
title: str, title: str,
level: int, level: int,
) -> str: ) -> str:
"""Display family name as a title"""
char = "#" char = "#"
return f"{char * level} {title}\n\n" return f"{char * level} {title}\n\n"
def yaml(self, dump):
return f"```yaml\n---\n{self.dump(dump)}\n```\n"
def table(self, table):
return table
def link(
self,
comment: str,
link: str,
) -> str:
return f"[`{comment}`]({link})"
def prop(
self,
prop: str,
) -> str:
return f"`{prop}`"
def list(
self,
choices,
):
prefix = "<br/>- "
char = "<br/>- "
return prefix + char.join([self.dump(choice) for choice in choices])
def is_list(
self,
txt: str,
) -> str:
return txt.startswith("* ")
def columns(
self,
col1: List[str],
col2: List[str],
) -> None:
self.max_line = 0
for params in chain(col1, col2):
for param in params.split("\n"):
self.max_line = max(self.max_line, len(param))
self.max_line += 1
def join( def join(
self, self,
lst: List[str], lst: List[str],
) -> str: ) -> str:
return "<br/>".join(lst) """Display line in table from a list"""
return self.enter_table.join(lst)
def to_string(
self,
text: str,
) -> str:
return text.strip().replace("\n", "<br/>")
def table_header(self, lst):
return lst[0] + "&nbsp;" * (self.max_line - len(lst[0])), lst[1] + "&nbsp;" * (
self.max_line - len(lst[1])
)
def bold( def bold(
self, self,
msg: str, msg: str,
) -> str: ) -> str:
"""Set a text to bold"""
return f"**{msg}**" return f"**{msg}**"
def italic( def italic(
self, self,
msg: str, msg: str,
) -> str: ) -> str:
"""Set a text to italic"""
return f"*{msg}*" return f"*{msg}*"
def dump(self, dico): def stripped(
with BytesIO() as ymlfh: self,
self._yaml.dump(dico, ymlfh) text: str,
ret = ymlfh.getvalue().decode("utf-8").strip() ) -> str:
if ret.endswith("..."): """Return stripped text (as help)"""
ret = ret[:-3].strip() return text.strip().replace("\n", self.enter_table)
def list(
self,
choices,
):
"""Display a liste of element"""
char = f"{self.enter_table}- "
ret = ""
for choice in choices:
if not isinstance(choice, str):
choice = dump(choice)
ret += char + choice
return ret return ret
def prop(
self,
prop: str,
italic: bool,
) -> str:
"""Display property"""
prop = f"`{prop}`"
if italic:
prop = self.italic(prop)
return prop
def table_header(self, lst):
"""Manage the header of a table"""
return lst[0] + "&nbsp;" * (self.max_line_variable - len(lst[0])), lst[1] + "&nbsp;" * (
self.max_line_description - len(lst[1])
)
def yaml(self, _dump):
"""Dump yaml part of documentation"""
return f"```yaml\n---\n{dump(_dump)}\n```\n"
def link(
self,
comment: str,
link: str,
) -> str:
"""Add a link"""
return f"[`{comment}`]({link})"
def columns(
self,
col: List[str],
) -> None:
"""count columns length"""
for line in col:
for l in line.split(self.enter_table):
self.max_line_variable = max(self.max_line_variable, len(l) + 1)
self.max_line_description = self.max_line_variable
def to_phrase(self, text: str) -> str:
return escape(to_phrase(text))

View file

@ -0,0 +1,81 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from typing import List
from .github import Formater as GithubFormater
from ..i18n import _
class Formater(GithubFormater):
name = "gitlab"
level = 51
def namespace_to_title(self, informations: dict, level: int) -> str:
"""manage namespace family"""
return self.title(
self.family_description(informations),
level,
)
def title(self, title: str, level: int) -> str:
# self.max_line_variable = 0
return '<details><summary>' + title + '</summary>\n\n'
def end_family(self):
return '</details>'
def columns(
self,
col: List[str],
) -> None:
pass
def family_informations(self) -> str:
return f">>> [!note] {_('Informations')}\n"
def end_family_informations(self) -> str:
return f"\n>>>\n"
#> {help_}
#""" + '\n\n'
#
# def display_family_help(self, help_):
# return f"""> [!note]
#> {help_}
#""" + '\n\n'
#
# def display_family_path(self, path: str) -> str:
# return "> " + super().display_path(path) + '\n'
## self.max_line_variable = max(self.max_line_variable, len(path))
## return super().display_path(path)
#
# def property_to_string(
# self, informations: dict, calculated_properties: list
# ) -> str:
# return "> " + super().property_to_string(informations, calculated_properties)
def after_family_paths(self) -> str:
return "<br>"
def after_family_properties(self) -> str:
return ""
def table_header(self, lst):
"""Manage the header of a table"""
return lst
# return lst[0] + "<tt>" + "&nbsp;" * (self.max_line_variable - len(lst[0])) + "</tt>f", lst[1]

View file

@ -0,0 +1,46 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from json import dumps
from typing import Any
from ..utils import to_phrase
class Formater:
"""Just return internal structure to json"""
name = "json"
level = 90
def run(self, dico: dict, *args) -> str: # pylint: disable=unused-argument
"""Transform to string"""
return dumps(dico, ensure_ascii=False, indent=2)
def italic(self, msg: Any) -> str:
"""Just return a string"""
return str(msg)
def bold(self, msg: Any) -> str:
"""Just return a string"""
return str(msg)
def to_phrase(self, text: str) -> str:
return to_phrase(text)
def list(self, lst: list) -> list:
return lst

View file

@ -0,0 +1,468 @@
"""
Silique (https://www.silique.fr)
Copyright (C) 2024-2025
This program is free software: you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License as published by the
Free Software Foundation, either version 3 of the License, or (at your
option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
"""
from typing import List
from io import BytesIO
from ruamel.yaml import YAML
import tabulate as tabulate_module
from tiramisu.error import display_list
from tabulate import tabulate
from .i18n import _
ROUGAIL_VARIABLE_TYPE = (
"https://rougail.readthedocs.io/en/latest/variable.html#variables-types"
)
ENTER = "\n\n"
DocTypes = {
"domainname": {
"params": {
"allow_startswith_dot": _("the domain name can starts by a dot"),
"allow_without_dot": _("the domain name can be a hostname"),
"allow_ip": _("the domain name can be an IP"),
"allow_cidr_network": _("the domain name can be network in CIDR format"),
},
},
"number": {
"params": {
"min_number": _("the minimum value is {0}"),
"max_number": _("the maximum value is {0}"),
},
},
"integer": {
"params": {
"min_integer": _("the minimum value is {0}"),
"max_integer": _("the maximum value is {0}"),
},
},
"ip": {
"msg": "IP",
"params": {
"cidr": _("IP must be in CIDR format"),
"private_only": _("private IP are allowed"),
"allow_reserved": _("reserved IP are allowed"),
},
},
"network": {
"params": {
"cidr": _("network must be in CIDR format"),
},
},
"hostname": {
"params": {
"allow_ip": _("the host name can be an IP"),
},
},
"web_address": {
"params": {
"allow_ip": _("the domain name in web address can be an IP"),
"allow_without_dot": _(
"the domain name in web address can be only a hostname"
),
},
},
"port": {
"params": {
"allow_range": _("can be range of port"),
"allow_protocol": _("can have the protocol"),
"allow_zero": _("port 0 is allowed"),
"allow_wellknown": _("well-known ports (1 to 1023) are allowed"),
"allow_registred": _("registred ports (1024 to 49151) are allowed"),
"allow_private": _("private ports (greater than 49152) are allowed"),
},
},
"secret": {
"params": {
"min_len": _("minimum length for the secret is {0} characters"),
"max_len": _("maximum length for the secret is {0} characters"),
"forbidden_char": _("forbidden characters: {0}"),
},
},
"unix_filename": {
"params": {
"allow_relative": _("this filename could be a relative path"),
"test_existence": _("this file must exists"),
"types": _("file type allowed: {0}"),
},
},
}
_yaml = YAML()
_yaml.indent(mapping=2, sequence=4, offset=2)
def dump(informations):
"""Dump variable, means transform bool, ... to yaml string"""
with BytesIO() as ymlfh:
_yaml.dump(informations, ymlfh)
ret = ymlfh.getvalue().decode("utf-8").strip()
if ret.endswith("..."):
ret = ret[:-3].strip()
return ret
def to_phrase(msg):
"""Add maj for the first character and ends with dot"""
if not msg:
# replace None to empty string
return ""
msg = str(msg).strip()
# a phrase must ends with a dot
if not msg.endswith("."):
msg += "."
# and start with a maj
return msg[0].upper() + msg[1:]
class CommonFormater:
"""Class with common function for formater"""
enter_table = "\n"
# tabulate module name
name = None
def __init__(self):
tabulate_module.PRESERVE_WHITESPACE = True
self.header_setted = False
# Class you needs implement to your Formater
def title(
self,
title: str,
level: int,
) -> str:
"""Display family name as a title"""
raise NotImplementedError()
def join(
self,
lst: List[str],
) -> str:
"""Display line in table from a list"""
raise NotImplementedError()
def bold(
self,
msg: str,
) -> str:
"""Set a text to bold"""
raise NotImplementedError()
def stripped(
self,
text: str,
) -> str:
"""Return stripped text (as help)"""
raise NotImplementedError()
def list(
self,
choices: list,
) -> str:
"""Display a liste of element"""
raise NotImplementedError()
def prop(
self,
prop: str,
italic: bool,
) -> str:
"""Display property"""
raise NotImplementedError()
def link(
self,
comment: str,
link: str,
) -> str:
"""Add a link"""
raise NotImplementedError()
##################
def family_informations(self) -> str:
return ''
def end_family_informations(self) -> str:
return ''
def display_family_path(
self,
path: str,
) -> str:
return self.display_path(path)
def display_path(
self,
path: str,
) -> str:
return self.bold(path)
def after_family_paths(self) -> str:
return ENTER
def after_family_properties(self) -> str:
return ENTER
def table_header(
self,
lst: list,
) -> tuple:
"""Manage the header of a table"""
return lst
def run(self, informations: dict, level: int) -> str:
"""Transform to string"""
if informations:
return self.dict_to_string(informations, level)
return ""
def dict_to_dict(self, dico: dict, level: int) -> str:
"""Parse the dict to transform to dict"""
msg = []
table_datas = []
ori_level = None
for value in dico.values():
if value["type"] == "namespace":
if ori_level is None:
ori_level = level
level += 1
informations = value["informations"]
msg.append(self.namespace_to_title(informations, ori_level))
msg.append(self.family_informations())
msg.append(self.display_path(get_display_path(informations, 0)))
msg.append(self.end_family_informations())
msg.extend(self.dict_to_dict(value["children"], level))
msg.append(self.end_namespace())
else:
if value["type"] == "variable":
self.variable_to_string(value, table_datas)
else:
if table_datas:
msg.append(self.table(table_datas))
table_datas = []
msg.extend(self.family_to_string(value["informations"], level))
msg.extend(self.dict_to_dict(value["children"], level + 1))
msg.append(self.end_family())
if table_datas:
msg.append(self.table(table_datas))
return msg
def dict_to_string(self, dico: dict, level: int) -> str:
"""Parse the dict to transform to dict"""
return "".join([msg for msg in self.dict_to_dict(dico, level)])
# FAMILY
def namespace_to_title(self, informations: dict, level: int) -> str:
"""manage namespace family"""
return self.title(
_('Variables for "{0}"').format(self.family_description(informations)),
level,
)
def end_namespace(self) -> str:
return self.end_family()
def family_to_string(self, informations: dict, level: int) -> str:
"""manage other family type"""
msg = [self.title(self.family_description(informations), level)]
helps = informations.get("help")
if helps:
for help_ in helps:
msg.append(self.display_family_help(help_.strip()))
msg.append(self.family_informations())
msg.append(self.join(
[
self.display_path(get_display_path(informations, index))
for index in range(len(informations["paths"]))
]
) + self.after_family_paths()
)
calculated_properties = []
msg.append(self.property_to_string(informations, calculated_properties) + ENTER)
if calculated_properties:
msg.append(self.join(calculated_properties) + self.after_family_properties())
if "identifiers" in informations:
msg.append(
self.section(_("Identifiers"), informations["identifiers"]) + self.after_family_properties()
)
msg.append(self.end_family_informations())
return msg
def end_family(self):
return ''
def family_description(self, informations: dict) -> str():
"""Get family name"""
if "description" in informations:
return informations["description"]
return display_list(
[
get_display_path(informations, index)
for index in range(len(informations["paths"]))
],
separator="or",
)
# VARIABLE
def variable_to_string(self, informations: dict, table_datas: dict) -> None:
"""Manage variable"""
calculated_properties = []
table_datas.append(
[
self.join(
self.variable_first_column(informations, calculated_properties)
),
self.join(
self.variable_second_column(informations, calculated_properties)
),
]
)
def variable_first_column(
self, informations: dict, calculated_properties: list
) -> list:
"""Collect string for the first column"""
first_col = [
self.join(
[
self.display_path(get_display_path(informations, index))
for index in range(len(informations["paths"]))
]
),
self.property_to_string(informations, calculated_properties),
]
self.columns(first_col)
return first_col
def variable_second_column(
self, informations: dict, calculated_properties: list
) -> list:
"""Collect string for the second column"""
if "descriptions" in informations:
description = self.join(list(dict.fromkeys(informations["descriptions"])))
else:
description = to_phrase(
display_list(
list(dict.fromkeys(informations["names"])),
separator="or",
)
)
second_col = [self.stripped(description)]
for help_ in informations.get("help", []):
second_col.append(self.stripped(help_))
if "validators" in informations:
validators = informations["validators"]
if isinstance(validators["values"], list):
values = self.list(validators["values"])
else:
values = validators["values"]
second_col.append(self.section(validators["name"], values))
if "choices" in informations:
choices = informations["choices"]
second_col.append(self.section(choices["name"], choices["values"]))
if (
"default" in informations
and informations.get("default_is_already_set", False) is False
):
default = informations["default"]
second_col.append(self.section(default["name"], default["values"]))
if "examples" in informations:
examples = informations["examples"]
if isinstance(examples["values"], list):
values = self.list(examples["values"])
else:
values = examples["values"]
second_col.append(self.section(examples["name"], values))
second_col.extend(calculated_properties)
self.columns(second_col)
return second_col
# OTHERs
def display_family_help(self, help_):
return help_ + ENTER
def property_to_string(
self, informations: dict, calculated_properties: list
) -> str:
"""Transform properties to string"""
properties = []
for prop in informations.get("properties", []):
if prop["type"] == "type":
properties.append(self.link(prop["name"], ROUGAIL_VARIABLE_TYPE))
else:
if "annotation" in prop:
italic = True
calculated_properties.append(
self.section(prop["name"].capitalize(), prop["annotation"])
)
else:
italic = False
prop_str = self.prop(prop["name"], italic=italic)
properties.append(prop_str)
if not properties:
return ""
return " ".join(properties)
def columns(
self,
col: List[str], # pylint: disable=unused-argument
) -> None:
"""Manage column"""
return
def table(self, datas: list) -> str:
"""Transform list to a table in string format"""
msg = (
tabulate(
datas,
headers=self.table_header([_("Variable"), _("Description")]),
tablefmt=self._table_name,
)
+ "\n\n"
)
datas.clear()
return msg
def section(
self,
name: str,
msg: str,
) -> str:
"""Return something like Name: msg"""
if isinstance(msg, list):
if len(msg) == 1:
msg = msg[0]
else:
msg = self.list(msg)
if not isinstance(msg, str):
msg = dump(msg)
return _("{0}: {1}").format(self.bold(name), msg)
def get_display_path(informations: dict, index: int) -> str:
if "display_paths" in informations and index in informations["display_paths"]:
return informations["display_paths"][index]
return informations["paths"][index]

60
tests/cmdline/00_file.yml Normal file
View file

@ -0,0 +1,60 @@
---
version: 1.1
var1:
description: my var1
alternative_name: v
var2:
description: my var2
default:
jinja: |
{{ a.unknown.variable }}
description: var calculated
var3:
description: my var3
hidden:
jinja: |
{% if a.unknown.variable == 'value' %}
it's hidden
{% endif %}
description: var could be hidden
var4:
description: my var4
hidden:
variable: a.unknown.variable
when: 'value'
var5:
description: my var5
default:
type: information
information: info
variable: a.unknown.variable
var6:
description: my var6
choices:
variable: a.unknown.variable
var7:
description: my var7
choices:
- variable: a.unknown.variable1
- variable: a.unknown.variable2
var8:
description: my var8
choices:
jinja: |
a.unknown.variable
description: the a.unknown.variable values
"var{{ identifier }}":
description: my var6
dynamic:
variable: a.unknown.variable
var:
description: a variable

View file

@ -1,4 +0,0 @@
---
gitea: none
include_toc: true
---

View file

@ -1,19 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
_version: '1.1'
version: # a variable
----
== Variables pour "rougail"
[cols="107a,107a",options="header"]
|====
| Variable | Description
|
**rougail.version** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
A variable.
|====

View file

@ -1,18 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
_version: '1.1'
version: # a variable
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.version**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A variable. |

View file

@ -1,19 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.0'
empty:
----
== Variables pour "rougail"
[cols="107a,107a",options="header"]
|====
| Variable | Description
|
**rougail.empty** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
Empty.
|====

View file

@ -1,18 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.0'
empty:
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.empty**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | Empty. |

View file

@ -1,32 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
var1: no # a first variable
var2:
description: a second variable
multi: true
default:
jinja: |
{{ _.var1 }}
description: the value of var1
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A first variable. +
**Défaut**: no
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
A second variable. +
**Défaut**: the value of var1.
|====

View file

@ -1,26 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
var1: no # a first variable
var2:
description: a second variable
multi: true
default:
jinja: |
{{ _.var1 }}
description: the value of var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A first variable.<br/>**Défaut**: no |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | A second variable.<br/>**Défaut**: the value of var1. |

View file

@ -1,41 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
var1: # a first variable
- no
- yes
- maybe
var2:
description: a second variable
multi: true
default:
jinja: |
{% for val in _.var1 %}
{{ val }}
{% endfor %}
description: the value of _.var1
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
A first variable. +
**Défaut**:
* no
* yes
* maybe
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
A second variable. +
**Défaut**: the value of _.var1.
|====

View file

@ -1,31 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
var1: # a first variable
- no
- yes
- maybe
var2:
description: a second variable
multi: true
default:
jinja: |
{% for val in _.var1 %}
{{ val }}
{% endfor %}
description: the value of _.var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | A first variable.<br/>**Défaut**: <br/>- no<br/>- yes<br/>- maybe |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | A second variable.<br/>**Défaut**: the value of _.var1. |

View file

@ -1,38 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
var1:
description: a first variable
multi: true
type: domainname
params:
allow_ip: true
var2:
description: a second variable
default:
type: variable
variable: _.var1
----
== Variables pour "rougail"
[cols="134a,134a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `basic` `obligatoire` `unique` `multiple` |
A first variable. +
**Validator**: le nom de domaine peut être une IP
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `obligatoire` `unique` `multiple` |
A second variable. +
**Validator**: le nom de domaine peut être une IP +
**Défaut**: la valeur de la variable "rougail.var1".
|====

View file

@ -1,31 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
var1:
description: a first variable
multi: true
type: domainname
params:
allow_ip: true
var2:
description: a second variable
default:
type: variable
variable: _.var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` `unique` `multiple` | A first variable.<br/>**Validator**: le nom de domaine peut être une IP |
| **rougail.var2**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | A second variable.<br/>**Validator**: le nom de domaine peut être une IP<br/>**Défaut**: la valeur de la variable "rougail.var1". |

View file

@ -1,32 +0,0 @@
== dictionaries/rougail/99-base.yml
[,yaml]
----
version: '1.0'
var1:
description: a variable
----
== dictionaries/rougail2/00-base.yml
[,yaml]
----
version: '1.0'
var2:
description: a variable
----
== Variables pour "rougail"
[cols="107a,107a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
A variable.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
A variable.
|====

View file

@ -1,28 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/99-base.yml
```yaml
---
version: '1.0'
var1:
description: a variable
```
# dictionaries/rougail2/00-base.yml
```yaml
---
version: '1.0'
var2:
description: a variable
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A variable. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A variable. |

View file

@ -1,22 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.0'
without_type:
description: a variable
default: non
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.without_type** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: non
|====

View file

@ -1,20 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.0'
without_type:
description: a variable
default: non
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.without_type**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: non |

View file

@ -1,60 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: true # the first variable
var2:
description: the second variable
default: true
var3:
description: the third variable
type: boolean
default: true
var4: false # the forth variable
var5:
description: the fifth variable
default: false
var6:
description: the sixth variable
type: boolean
default: false
----
== Variables pour "rougail"
[cols="111a,111a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The first variable. +
**Défaut**: True
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The second variable. +
**Défaut**: True
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The third variable. +
**Défaut**: True
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The forth variable. +
**Défaut**: False
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The fifth variable. +
**Défaut**: False
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The sixth variable. +
**Défaut**: False
|====

View file

@ -1,38 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: true # the first variable
var2:
description: the second variable
default: true
var3:
description: the third variable
type: boolean
default: true
var4: false # the forth variable
var5:
description: the fifth variable
default: false
var6:
description: the sixth variable
type: boolean
default: false
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The first variable.<br/>**Défaut**: True |
| **rougail.var2**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The second variable.<br/>**Défaut**: True |
| **rougail.var3**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The third variable.<br/>**Défaut**: True |
| **rougail.var4**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The forth variable.<br/>**Défaut**: False |
| **rougail.var5**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Défaut**: False |
| **rougail.var6**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The sixth variable.<br/>**Défaut**: False |

View file

@ -1,23 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
type: boolean
mandatory: false
----
== Variables pour "rougail"
[cols="97a,97a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` |
A variable. +
**Défaut**: True
|====

View file

@ -1,21 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
type: boolean
mandatory: false
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | A variable.<br/>**Défaut**: True |

View file

@ -1,109 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1:
description: the first variable
choices:
- a
- b
- c
var2:
description: the second variable
choices:
- a
- b
- c
var3:
description: the third variable
choices:
- a
- b
- c
mandatory: false
var4:
description: the forth variable
choices:
-
- b
- c
mandatory: false
var5:
description: the fifth variable
choices:
- a
- b
- c
default: a
var6:
description: the sixth variable
choices:
- 1
- 2
- 3
default: 1
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `obligatoire` |
The first variable. +
**Choix**:
* a
* b
* c
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `obligatoire` |
The second variable. +
**Choix**:
* a
* b
* c
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
The third variable. +
**Choix**:
* a
* b
* c
* null
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
The forth variable. +
**Choix**:
* null
* b
* c
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
The fifth variable. +
**Choix**:
* a ← (defaut)
* b
* c
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
The sixth variable. +
**Choix**:
* 1 ← (defaut)
* 2
* 3
|====

View file

@ -1,62 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1:
description: the first variable
choices:
- a
- b
- c
var2:
description: the second variable
choices:
- a
- b
- c
var3:
description: the third variable
choices:
- a
- b
- c
mandatory: false
var4:
description: the forth variable
choices:
-
- b
- c
mandatory: false
var5:
description: the fifth variable
choices:
- a
- b
- c
default: a
var6:
description: the sixth variable
choices:
- 1
- 2
- 3
default: 1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The first variable.<br/>**Choix**: <br/>- a<br/>- b<br/>- c |
| **rougail.var2**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The second variable.<br/>**Choix**: <br/>- a<br/>- b<br/>- c |
| **rougail.var3**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | The third variable.<br/>**Choix**: <br/>- a<br/>- b<br/>- c<br/>- null |
| **rougail.var4**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | The forth variable.<br/>**Choix**: <br/>- null<br/>- b<br/>- c |
| **rougail.var5**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Choix**: <br/>- a ← (defaut)<br/>- b<br/>- c |
| **rougail.var6**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The sixth variable.<br/>**Choix**: <br/>- 1 ← (defaut)<br/>- 2<br/>- 3 |

View file

@ -1,30 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
var:
description: a variable
default: 9
choices:
jinja: |
{% for n in trange(0, 10) %}
{{ n }}
{% endfor %}
return_type: number
description: choices is 0 to 9
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
A variable. +
**Choix**: choices is 0 to 9. +
**Défaut**: 9
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
var:
description: a variable
default: 9
choices:
jinja: |
{% for n in trange(0, 10) %}
{{ n }}
{% endfor %}
return_type: number
description: choices is 0 to 9
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Choix**: choices is 0 to 9.<br/>**Défaut**: 9 |

View file

@ -1,38 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: # a second variable
- a
- b
- c
var2:
description: a first variable
default: a
choices:
variable: _.var1
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
A second variable. +
**Défaut**:
* a
* b
* c
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
A first variable. +
**Choix**: la valeur de la variable "rougail.var1". +
**Défaut**: a
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: # a second variable
- a
- b
- c
var2:
description: a first variable
default: a
choices:
variable: _.var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | A second variable.<br/>**Défaut**: <br/>- a<br/>- b<br/>- c |
| **rougail.var2**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A first variable.<br/>**Choix**: la valeur de la variable "rougail.var1".<br/>**Défaut**: a |

View file

@ -1,30 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
custom1:
description: the first variable
type: custom
custom2:
description: the seconf variable
type: custom
default: value
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.custom1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `basic` `obligatoire` |
The first variable.
|
**rougail.custom2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `standard` `obligatoire` |
The seconf variable. +
**Défaut**: value
|====

View file

@ -1,25 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
custom1:
description: the first variable
type: custom
custom2:
description: the seconf variable
type: custom
default: value
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.custom1**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The first variable. |
| **rougail.custom2**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The seconf variable.<br/>**Défaut**: value |

View file

@ -1,23 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a domain name variable
type: domainname
default: my.domain.name
----
== Variables pour "rougail"
[cols="114a,114a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `obligatoire` |
A domain name variable. +
**Défaut**: my.domain.name
|====

View file

@ -1,21 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a domain name variable
type: domainname
default: my.domain.name
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A domain name variable.<br/>**Défaut**: my.domain.name |

View file

@ -1,26 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a domain name variable
type: domainname
default: my.domain.name
params:
allow_ip: true
----
== Variables pour "rougail"
[cols="114a,114a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `obligatoire` |
A domain name variable. +
**Validator**: le nom de domaine peut être une IP +
**Défaut**: my.domain.name
|====

View file

@ -1,23 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a domain name variable
type: domainname
default: my.domain.name
params:
allow_ip: true
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A domain name variable.<br/>**Validator**: le nom de domaine peut être une IP<br/>**Défaut**: my.domain.name |

View file

@ -1,60 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: 0.0 # the first variable
var2:
description: the second variable
default: 0.0
var3:
description: the third variable
type: float
default: 0.0
var4: 10.1 # the forth variable
var5:
description: the fifth variable
default: 10.1
var6:
description: the sixth variable
type: float
default: 10.1
----
== Variables pour "rougail"
[cols="109a,109a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The first variable. +
**Défaut**: 0.0
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The second variable. +
**Défaut**: 0.0
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The third variable. +
**Défaut**: 0.0
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The forth variable. +
**Défaut**: 10.1
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The fifth variable. +
**Défaut**: 10.1
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `obligatoire` |
The sixth variable. +
**Défaut**: 10.1
|====

View file

@ -1,38 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: 0.0 # the first variable
var2:
description: the second variable
default: 0.0
var3:
description: the third variable
type: float
default: 0.0
var4: 10.1 # the forth variable
var5:
description: the fifth variable
default: 10.1
var6:
description: the sixth variable
type: float
default: 10.1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The first variable.<br/>**Défaut**: 0.0 |
| **rougail.var2**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The second variable.<br/>**Défaut**: 0.0 |
| **rougail.var3**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The third variable.<br/>**Défaut**: 0.0 |
| **rougail.var4**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The forth variable.<br/>**Défaut**: 10.1 |
| **rougail.var5**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Défaut**: 10.1 |
| **rougail.var6**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The sixth variable.<br/>**Défaut**: 10.1 |

View file

@ -1,60 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: 0 # the first variable
var2:
description: the second variable
default: 0
var3:
description: the third variable
type: number
default: 0
var4: 10 # this forth variable
var5:
description: the fifth variable
default: 10
var6:
description: the sixth variable
type: number
default: 10
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
The first variable. +
**Défaut**: 0
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
The second variable. +
**Défaut**: 0
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
The third variable. +
**Défaut**: 0
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
This forth variable. +
**Défaut**: 10
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
The fifth variable. +
**Défaut**: 10
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `obligatoire` |
The sixth variable. +
**Défaut**: 10
|====

View file

@ -1,38 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: 0 # the first variable
var2:
description: the second variable
default: 0
var3:
description: the third variable
type: number
default: 0
var4: 10 # this forth variable
var5:
description: the fifth variable
default: 10
var6:
description: the sixth variable
type: number
default: 10
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The first variable.<br/>**Défaut**: 0 |
| **rougail.var2**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The second variable.<br/>**Défaut**: 0 |
| **rougail.var3**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The third variable.<br/>**Défaut**: 0 |
| **rougail.var4**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | This forth variable.<br/>**Défaut**: 10 |
| **rougail.var5**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Défaut**: 10 |
| **rougail.var6**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The sixth variable.<br/>**Défaut**: 10 |

View file

@ -1,39 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable1:
description: a port variable
type: port
variable2:
description: a port variable with default value
type: port
default: '8080'
variable3:
description: a port variable with integer default value
type: port
default: 8080
----
== Variables pour "rougail"
[cols="108a,108a",options="header"]
|====
| Variable | Description
|
**rougail.variable1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `basic` `obligatoire` |
A port variable.
|
**rougail.variable2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `obligatoire` |
A port variable with default value. +
**Défaut**: 8080
|
**rougail.variable3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `obligatoire` |
A port variable with integer default value. +
**Défaut**: 8080
|====

View file

@ -1,30 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable1:
description: a port variable
type: port
variable2:
description: a port variable with default value
type: port
default: '8080'
variable3:
description: a port variable with integer default value
type: port
default: 8080
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable1**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A port variable. |
| **rougail.variable2**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A port variable with default value.<br/>**Défaut**: 8080 |
| **rougail.variable3**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A port variable with integer default value.<br/>**Défaut**: 8080 |

View file

@ -1,27 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var:
description: a first variable
regexp: ^#(?:[0-9a-f]{3}){1,2}$
default: '#a1a1a1'
test:
- '#b1b1b1'
- '#b2b2b2'
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[regexp]` `standard` `obligatoire` |
A first variable. +
**Défaut**: #a1a1a1 +
**Exemple**: #b1b1b1
|====

View file

@ -1,24 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var:
description: a first variable
regexp: ^#(?:[0-9a-f]{3}){1,2}$
default: '#a1a1a1'
test:
- '#b1b1b1'
- '#b2b2b2'
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A first variable.<br/>**Défaut**: #a1a1a1<br/>**Exemple**: #b1b1b1 |

View file

@ -1,56 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: # the first variable
var2:
description: the second variable
default:
var3:
description: the third variable
type: string
var4: value # the forth variable
var5:
description: the fifth variable
default: value
var6:
description: the sixth variable
type: string
default: value
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The first variable.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The second variable.
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The third variable.
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The forth variable. +
**Défaut**: value
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The fifth variable. +
**Défaut**: value
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The sixth variable. +
**Défaut**: value
|====

View file

@ -1,37 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: # the first variable
var2:
description: the second variable
default:
var3:
description: the third variable
type: string
var4: value # the forth variable
var5:
description: the fifth variable
default: value
var6:
description: the sixth variable
type: string
default: value
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The first variable. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The second variable. |
| **rougail.var3**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The third variable. |
| **rougail.var4**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The forth variable.<br/>**Défaut**: value |
| **rougail.var5**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Défaut**: value |
| **rougail.var6**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The sixth variable.<br/>**Défaut**: value |

View file

@ -1,31 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.0'
var:
type: choice
description: A choice
default: quote'
choices:
- quote'
- quote"
- quote"'
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
A choice. +
**Choix**:
* quote' ← (defaut)
* quote"
* quote"'
|====

View file

@ -1,25 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.0'
var:
type: choice
description: A choice
default: quote'
choices:
- quote'
- quote"
- quote"'
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A choice.<br/>**Choix**: <br/>- quote' ← (defaut)<br/>- quote"<br/>- quote"' |

View file

@ -1,30 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.0'
var1:
description: the first variable
help: message with '
var2:
description: the second variable
help: message with "
----
== Variables pour "rougail"
[cols="107a,107a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The first variable. +
Message with '.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The second variable. +
Message with ".
|====

View file

@ -1,24 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.0'
var1:
description: the first variable
help: message with '
var2:
description: the second variable
help: message with "
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The first variable.<br/>Message with '. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The second variable.<br/>Message with ". |

View file

@ -1,22 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
default: quote"
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: quote"
|====

View file

@ -1,20 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
default: quote"
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: quote" |

View file

@ -1,22 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
default: quote'"
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: quote'"
|====

View file

@ -1,20 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
default: quote'"
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: quote'" |

View file

@ -1,23 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
default: quote\"\'
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: quote\"\'
|====

View file

@ -1,21 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
default: quote\"\'
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: quote\"\' |

View file

@ -1,22 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.0'
variable:
description: a variable
default: quote'
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: quote'
|====

View file

@ -1,20 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.0'
variable:
description: a variable
default: quote'
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: quote' |

View file

@ -1,29 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
default:
jinja: |
{{test_information }}
params:
test_information:
type: information
information: test_information
description: get information test_information
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: get information test_information.
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
default:
jinja: |
{{test_information }}
params:
test_information:
type: information
information: test_information
description: get information test_information
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: get information test_information. |

View file

@ -1,87 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1:
description: the first variable
test:
- test
var2:
description: the second variable
test:
- test
default: value
var3:
description: the third variable
test:
- test1
- test2
var4:
description: the forth variable
test:
-
- test1
- test2
mandatory: false
var5:
description: the fifth variable
type: boolean
test:
- false
var6:
description: the sixth variable
multi: true
test:
- test1
- test2
----
== Variables pour "rougail"
[cols="127a,127a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The first variable. +
**Exemple**: test
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The second variable. +
**Défaut**: value +
**Exemple**: test
|
**rougail.var3** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
The third variable. +
**Exemple**: test1
|
**rougail.var4** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` |
The forth variable. +
**Exemple**: None
|
**rougail.var5** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `obligatoire` |
The fifth variable. +
**Défaut**: True +
**Exemple**: False
|
**rougail.var6** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` `unique` `multiple` |
The sixth variable. +
**Exemples**:
* test1
* test2
|====

View file

@ -1,60 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1:
description: the first variable
test:
- test
var2:
description: the second variable
test:
- test
default: value
var3:
description: the third variable
test:
- test1
- test2
var4:
description: the forth variable
test:
-
- test1
- test2
mandatory: false
var5:
description: the fifth variable
type: boolean
test:
- false
var6:
description: the sixth variable
multi: true
test:
- test1
- test2
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The first variable.<br/>**Exemple**: test |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The second variable.<br/>**Défaut**: value<br/>**Exemple**: test |
| **rougail.var3**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | The third variable.<br/>**Exemple**: test1 |
| **rougail.var4**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | The forth variable.<br/>**Exemple**: None |
| **rougail.var5**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The fifth variable.<br/>**Défaut**: True<br/>**Exemple**: False |
| **rougail.var6**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` `unique` `multiple` | The sixth variable.<br/>**Exemples**: <br/>- test1<br/>- test2 |

View file

@ -1,45 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable1:
description: a first variable
type: choice
multi: true
choices:
- val1
- val2
variable2:
description: a second variable
type: choice
multi: true
mandatory: false
choices:
- val1
- val2
----
== Variables pour "rougail"
[cols="116a,116a",options="header"]
|====
| Variable | Description
|
**rougail.variable1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `obligatoire` `unique` `multiple` |
A first variable. +
**Choix**:
* val1
* val2
|
**rougail.variable2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `unique` `multiple` |
A second variable. +
**Choix**:
* val1
* val2
|====

View file

@ -1,33 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable1:
description: a first variable
type: choice
multi: true
choices:
- val1
- val2
variable2:
description: a second variable
type: choice
multi: true
mandatory: false
choices:
- val1
- val2
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable1**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` `unique` `multiple` | A first variable.<br/>**Choix**: <br/>- val1<br/>- val2 |
| **rougail.variable2**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `unique` `multiple` | A second variable.<br/>**Choix**: <br/>- val1<br/>- val2 |

View file

@ -1,43 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
source_variable_1: val1 # the first source variable
source_variable_2: val2 # the second source variable
my_variable:
description: a variable
type: choice
choices:
- variable: _.source_variable_1
- variable: _.source_variable_2
default: val1
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.source_variable_1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The first source variable. +
**Défaut**: val1
|
**rougail.source_variable_2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
The second source variable. +
**Défaut**: val2
|
**rougail.my_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `obligatoire` |
A variable. +
**Choix**:
* la valeur de la variable "rougail.source_variable_1".
* la valeur de la variable "rougail.source_variable_2".
**Défaut**: val1
|====

View file

@ -1,28 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
source_variable_1: val1 # the first source variable
source_variable_2: val2 # the second source variable
my_variable:
description: a variable
type: choice
choices:
- variable: _.source_variable_1
- variable: _.source_variable_2
default: val1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.source_variable_1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The first source variable.<br/>**Défaut**: val1 |
| **rougail.source_variable_2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | The second source variable.<br/>**Défaut**: val2 |
| **rougail.my_variable**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Choix**: <br/>- la valeur de la variable "rougail.source_variable_1".<br/>- la valeur de la variable "rougail.source_variable_2".<br/>**Défaut**: val1 |

View file

@ -1,31 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
variable:
description: a variable
default:
jinja: |
{{ param1 }}_{{ param2 }}_{{ param3 }}_{{ param4 }}
params:
param1: string
param2: 1
param3: true
param4:
description: concat all parameters
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: concat all parameters.
|====

View file

@ -1,29 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
variable:
description: a variable
default:
jinja: |
{{ param1 }}_{{ param2 }}_{{ param3 }}_{{ param4 }}
params:
param1: string
param2: 1
param3: true
param4:
description: concat all parameters
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: concat all parameters. |

View file

@ -1,29 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var:
description: a variable
default:
jinja: '{{ information }}'
params:
information:
type: information
information: test_information
variable: _.var
description: returns the information
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A variable. +
**Défaut**: returns the information.
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var:
description: a variable
default:
jinja: '{{ information }}'
params:
information:
type: information
information: test_information
variable: _.var
description: returns the information
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A variable.<br/>**Défaut**: returns the information. |

View file

@ -1,34 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: # a first variable
var2:
description: a second variable
default:
jinja: |
{{ information }}
params:
information:
type: information
information: test_information
variable: _.var1
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
A first variable.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A second variable. +
**Défaut**: depends on a calculation.
|====

View file

@ -1,29 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: # a first variable
var2:
description: a second variable
default:
jinja: |
{{ information }}
params:
information:
type: information
information: test_information
variable: _.var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A first variable. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A second variable.<br/>**Défaut**: depends on a calculation. |

View file

@ -1,35 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
my_variable:
default: val1
my_calculated_variable:
multi: true
default:
- variable: _.my_variable
optional: true
- variable: _.my_variable_unexists
optional: true
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.my_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
My_variable. +
**Défaut**: val1
|
**rougail.my_calculated_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
My_calculated_variable. +
**Défaut**:
* la valeur de la variable "rougail.my_variable".
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
my_variable:
default: val1
my_calculated_variable:
multi: true
default:
- variable: _.my_variable
optional: true
- variable: _.my_variable_unexists
optional: true
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.my_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | My_variable.<br/>**Défaut**: val1 |
| **rougail.my_calculated_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | My_calculated_variable.<br/>**Défaut**: <br/>- la valeur de la variable "rougail.my_variable". |

View file

@ -1,35 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
my_variable:
default: val1
my_calculated_variable:
multi: true
default:
- variable: _.my_variable_unexists
optional: true
- variable: _.my_variable
optional: true
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.my_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
My_variable. +
**Défaut**: val1
|
**rougail.my_calculated_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
My_calculated_variable. +
**Défaut**:
* la valeur de la variable "rougail.my_variable_unexists".
|====

View file

@ -1,27 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
my_variable:
default: val1
my_calculated_variable:
multi: true
default:
- variable: _.my_variable_unexists
optional: true
- variable: _.my_variable
optional: true
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.my_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | My_variable.<br/>**Défaut**: val1 |
| **rougail.my_calculated_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | My_calculated_variable.<br/>**Défaut**: <br/>- la valeur de la variable "rougail.my_variable_unexists". |

View file

@ -1,23 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
my_calculated_variable:
multi: true
default:
variable: _.my_variable
optional: true
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.my_calculated_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
My_calculated_variable.
|====

View file

@ -1,22 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
my_calculated_variable:
multi: true
default:
variable: _.my_variable
optional: true
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.my_calculated_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | My_calculated_variable. |

View file

@ -1,37 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: 1.1
my_variable:
multi: true
default:
- val1
- val2
my_calculated_variable:
multi: true
default:
variable: _.my_variable
optional: true
----
== Variables pour "rougail"
[cols="130a,130a",options="header"]
|====
| Variable | Description
|
**rougail.my_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
My_variable. +
**Défaut**:
* val1
* val2
|
**rougail.my_calculated_variable** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` `unique` `multiple` |
My_calculated_variable. +
**Défaut**: la valeur de la variable "rougail.my_variable".
|====

View file

@ -1,28 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: 1.1
my_variable:
multi: true
default:
- val1
- val2
my_calculated_variable:
multi: true
default:
variable: _.my_variable
optional: true
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.my_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | My_variable.<br/>**Défaut**: <br/>- val1<br/>- val2 |
| **rougail.my_calculated_variable**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` `unique` `multiple` | My_calculated_variable.<br/>**Défaut**: la valeur de la variable "rougail.my_variable". |

View file

@ -1,42 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1:
description: a first variable
default:
jinja: '{% if var2 is defined %} {{ var2 }} {% elif var3 is defined %} {{ var3
}} {% elif var4 is defined %} {{ var4 }} {% else %} {{ _.var2 }} {% endif %} '
params:
var2:
variable: _.var2
optional: true
var3:
variable: _.var3
optional: true
var4:
variable: _.unknown_family.var
optional: true
description: returns a value
mandatory: false
var2: no # a second variable
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` |
A first variable. +
**Défaut**: returns a value.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A second variable. +
**Défaut**: no
|====

View file

@ -1,36 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1:
description: a first variable
default:
jinja: '{% if var2 is defined %} {{ var2 }} {% elif var3 is defined %} {{ var3
}} {% elif var4 is defined %} {{ var4 }} {% else %} {{ _.var2 }} {% endif %} '
params:
var2:
variable: _.var2
optional: true
var3:
variable: _.var3
optional: true
var4:
variable: _.unknown_family.var
optional: true
description: returns a value
mandatory: false
var2: no # a second variable
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | A first variable.<br/>**Défaut**: returns a value. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A second variable.<br/>**Défaut**: no |

View file

@ -1,30 +0,0 @@
== dictionaries/rougail/00-base.yml
[,yaml]
----
version: '1.1'
var1: # a first variable
var2:
description: a second variable
default:
type: information
information: test_information
variable: _.var1
----
== Variables pour "rougail"
[cols="110a,110a",options="header"]
|====
| Variable | Description
|
**rougail.var1** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `obligatoire` |
A first variable.
|
**rougail.var2** +
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `obligatoire` |
A second variable. +
**Défaut**: la valeur de information.
|====

View file

@ -1,25 +0,0 @@
---
gitea: none
include_toc: true
---
# dictionaries/rougail/00-base.yml
```yaml
---
version: '1.1'
var1: # a first variable
var2:
description: a second variable
default:
type: information
information: test_information
variable: _.var1
```
# Variables pour "rougail"
| Variable&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Description&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; |
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `obligatoire` | A first variable. |
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `obligatoire` | A second variable.<br/>**Défaut**: la valeur de information. |

Some files were not shown because too many files have changed in this diff Show more