Compare commits
No commits in common. "af652eda76364ef65841e6ac821080d455591698" and "3cc85d7ba5b0bae3a30bcf38e1cf8ff7c486e3b7" have entirely different histories.
af652eda76
...
3cc85d7ba5
1437 changed files with 5066 additions and 25796 deletions
|
|
@ -5,8 +5,8 @@
|
||||||
msgid ""
|
msgid ""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"POT-Creation-Date: 2024-11-20 21:02+0100\n"
|
"POT-Creation-Date: 2024-11-07 21:51+0100\n"
|
||||||
"PO-Revision-Date: 2024-11-20 21:09+0100\n"
|
"PO-Revision-Date: 2024-11-07 22:47+0100\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: fr\n"
|
"Language: fr\n"
|
||||||
|
|
@ -16,238 +16,198 @@ msgstr ""
|
||||||
"Generated-By: pygettext.py 1.5\n"
|
"Generated-By: pygettext.py 1.5\n"
|
||||||
"X-Generator: Poedit 3.5\n"
|
"X-Generator: Poedit 3.5\n"
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:284
|
#: src/rougail/output_doc/__init__.py:40
|
||||||
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/annotator.py:290
|
|
||||||
msgid "when the variable \"{0}\" has the value \"{1}\""
|
|
||||||
msgstr "lorsque la variable \"{0}\" a la valeur \"{1}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:306
|
|
||||||
msgid "the value of the information \"{0}\" of the variable \"{1}\""
|
|
||||||
msgstr "la valeur de l'information \"{0}\" de la variable \"{1}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:309
|
|
||||||
msgid "the value of the global information \"{0}\""
|
|
||||||
msgstr "la valeur de l'information globale \"{0}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:318
|
|
||||||
msgid "when the identifier is \"{0}\""
|
|
||||||
msgstr "lorsque l'identifiant est \"{0}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:320
|
|
||||||
msgid "when the identifier is not \"{0}\""
|
|
||||||
msgstr "lorsque l'identifiant n'est pas \"{0}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/config.py:42
|
|
||||||
msgid "duplicated level rougail-doc for output \"{0}\": {1} and {2}"
|
|
||||||
msgstr "niveau dupliqué pour rougail-doc pour la sortie \"{0}\": {1} et {2}"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:83
|
|
||||||
msgid "mandatory"
|
|
||||||
msgstr "obligatoire"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:84
|
|
||||||
msgid "hidden"
|
|
||||||
msgstr "cachée"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:85
|
|
||||||
msgid "disabled"
|
|
||||||
msgstr "désactivé"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:86
|
|
||||||
msgid "unique"
|
|
||||||
msgstr "unique"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:87
|
|
||||||
msgid "auto modified"
|
|
||||||
msgstr "auto modifiée"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:264
|
|
||||||
msgid "This family contains lists of variable blocks."
|
|
||||||
msgstr "Cette famille contient des listes de bloc de variable."
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:272
|
|
||||||
msgid "This family builds families dynamically."
|
|
||||||
msgstr "Cette famille construit des familles dynamiquement."
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:302
|
|
||||||
msgid "multiple"
|
|
||||||
msgstr "multiple"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:322
|
|
||||||
msgid "No attribute \"description\" for \"{0}\" in {1}"
|
|
||||||
msgstr "Aucun attribut \"description\" pour \"{0}\" dans {1}"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:420
|
|
||||||
msgid "(default)"
|
|
||||||
msgstr "(défaut)"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:427
|
|
||||||
msgid "text based with regular expressions \"{0}\""
|
|
||||||
msgstr "texte avec expression rationnelle \"{0}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:514
|
|
||||||
msgid "depends on a calculation"
|
|
||||||
msgstr "dépend d'un calcul"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:515
|
|
||||||
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:539
|
|
||||||
msgid "the value of the variable \"{0}\""
|
|
||||||
msgstr "la valeur de la variable \"{0}\""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:549
|
|
||||||
msgid "the value of the identifier"
|
|
||||||
msgstr "la valeur de l'identifiant"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:553
|
|
||||||
msgid "the value of the {0}"
|
|
||||||
msgstr "la valeur de l'{0}"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/example.py:38
|
|
||||||
msgid "Example with mandatory variables not filled in"
|
|
||||||
msgstr "Exemple avec des variables obligatoire non renseignée"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/example.py:43
|
|
||||||
msgid "Example with all variables modifiable"
|
|
||||||
msgstr "Exemple avec toutes les variables modifiable"
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:41
|
|
||||||
msgid "the domain name can starts by a dot"
|
msgid "the domain name can starts by a dot"
|
||||||
msgstr "le nom de domaine peut commencé par un point"
|
msgstr "le nom de domaine peut commencé par un point"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:42
|
#: src/rougail/output_doc/__init__.py:41
|
||||||
msgid "the domain name can be a hostname"
|
msgid "the domain name can be a hostname"
|
||||||
msgstr "le nom de domaine peut être un nom d'hôte"
|
msgstr "le nom de domaine peut être un nom d'hôte"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:43
|
#: src/rougail/output_doc/__init__.py:42
|
||||||
msgid "the domain name can be an IP"
|
msgid "the domain name can be an IP"
|
||||||
msgstr "le nom de domaine peut être une IP"
|
msgstr "le nom de domaine peut être une IP"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:44
|
#: src/rougail/output_doc/__init__.py:43
|
||||||
msgid "the domain name can be network in CIDR format"
|
msgid "the domain name can be network in CIDR format"
|
||||||
msgstr "le nom de domaine peut être un réseau au format CIDR"
|
msgstr "le nom de domaine peut être un réseau au format CIDR"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:49
|
#: src/rougail/output_doc/__init__.py:48
|
||||||
msgid "the minimum value is {0}"
|
msgid "the minimum value is {0}"
|
||||||
msgstr "le valeur minimal est {0}"
|
msgstr "le valeur minimal est {0}"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:50
|
#: src/rougail/output_doc/__init__.py:49
|
||||||
msgid "the maximum value is {0}"
|
msgid "the maximum value is {0}"
|
||||||
msgstr "le valeur maximal est {0}"
|
msgstr "le valeur maximal est {0}"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:56
|
#: src/rougail/output_doc/__init__.py:55
|
||||||
msgid "IP must be in CIDR format"
|
msgid "IP must be in CIDR format"
|
||||||
msgstr "IP doit être au format CIDR"
|
msgstr "IP doit être au format CIDR"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:57
|
#: src/rougail/output_doc/__init__.py:56
|
||||||
msgid "private IP are allowed"
|
msgid "private IP are allowed"
|
||||||
msgstr "les IP privées sont autorisés"
|
msgstr "les IP privées sont autorisés"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:58
|
#: src/rougail/output_doc/__init__.py:57
|
||||||
msgid "reserved IP are allowed"
|
msgid "reserved IP are allowed"
|
||||||
msgstr "les IP réservés sont autorisés"
|
msgstr "les IP réservés sont autorisés"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:63
|
#: src/rougail/output_doc/__init__.py:62
|
||||||
msgid "the host name can be an IP"
|
msgid "the host name can be an IP"
|
||||||
msgstr "le nom d'hôte peut être une IP"
|
msgstr "le nom d'hôte peut être une IP"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:68
|
#: src/rougail/output_doc/__init__.py:67
|
||||||
msgid "the domain name in web address can be an IP"
|
msgid "the domain name in web address can be an IP"
|
||||||
msgstr "le nom de domaine dans l'adresse web peut être une IP"
|
msgstr "le nom de domaine dans l'adresse web peut être une IP"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:69
|
#: src/rougail/output_doc/__init__.py:68
|
||||||
msgid "the domain name in web address can be only a hostname"
|
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"
|
msgstr "le nom de domaine dans l'adresse web ne peut être qu'un nom d'hôte"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:76
|
#: src/rougail/output_doc/__init__.py:75
|
||||||
msgid "can be range of port"
|
msgid "can be range of port"
|
||||||
msgstr "peut être un range de port"
|
msgstr "peut être un range de port"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:77
|
#: src/rougail/output_doc/__init__.py:76
|
||||||
msgid "can have the protocol"
|
msgid "can have the protocol"
|
||||||
msgstr "peut avoir un protocole"
|
msgstr "peut avoir un protocole"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:78
|
#: src/rougail/output_doc/__init__.py:77
|
||||||
msgid "port 0 is allowed"
|
msgid "port 0 is allowed"
|
||||||
msgstr "le port 0 est autorisé"
|
msgstr "le port 0 est autorisé"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:79
|
#: src/rougail/output_doc/__init__.py:78
|
||||||
msgid "ports 1 to 1023 are allowed"
|
msgid "ports 1 to 1023 are allowed"
|
||||||
msgstr "les ports entre 1 et 1023 sont autorisés"
|
msgstr "les ports entre 1 et 1023 sont autorisés"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:80
|
#: src/rougail/output_doc/__init__.py:79
|
||||||
msgid "ports 1024 to 49151 are allowed"
|
msgid "ports 1024 to 49151 are allowed"
|
||||||
msgstr "les ports entre 1024 et 49151 sont autorisés"
|
msgstr "les ports entre 1024 et 49151 sont autorisés"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:81
|
#: src/rougail/output_doc/__init__.py:80
|
||||||
msgid "ports greater than 49152 are allowed"
|
msgid "ports greater than 49152 are allowed"
|
||||||
msgstr "les ports supérieurs à 49152 sont autorisés"
|
msgstr "les ports supérieurs à 49152 sont autorisés"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:86
|
#: src/rougail/output_doc/__init__.py:85
|
||||||
msgid "minimum length for the secret"
|
msgid "minimum length for the secret"
|
||||||
msgstr "longueur minimum pour un secret"
|
msgstr "longueur minimum pour un secret"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:87
|
#: src/rougail/output_doc/__init__.py:86
|
||||||
msgid "maximum length for the secret"
|
msgid "maximum length for the secret"
|
||||||
msgstr "longueur maximal pour un secret"
|
msgstr "longueur maximal pour un secret"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:215
|
#: src/rougail/output_doc/__init__.py:131
|
||||||
msgid "Variables"
|
msgid "mandatory"
|
||||||
msgstr "Variables"
|
msgstr "obligatoire"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:232
|
#: src/rougail/output_doc/__init__.py:132
|
||||||
|
msgid "hidden"
|
||||||
|
msgstr "cachée"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:133
|
||||||
|
msgid "disabled"
|
||||||
|
msgstr "désactivé"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:134
|
||||||
|
msgid "unique"
|
||||||
|
msgstr "unique"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:135
|
||||||
|
msgid "auto modified"
|
||||||
|
msgstr "auto modifiée"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:169
|
||||||
msgid "Variables for \"{0}\""
|
msgid "Variables for \"{0}\""
|
||||||
msgstr "Variables pour \"{0}\""
|
msgstr "Variables pour \"{0}\""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:247
|
#: src/rougail/output_doc/__init__.py:186
|
||||||
msgid "Identifiers"
|
msgid "Variables"
|
||||||
msgstr "Identifiants"
|
msgstr "Variables"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:296
|
#: src/rougail/output_doc/__init__.py:193
|
||||||
msgid "Validator"
|
msgid "Example with mandatory variables not filled in"
|
||||||
msgstr "Validateur"
|
msgstr "Exemple avec des variables obligatoire non renseignée"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:298
|
#: src/rougail/output_doc/__init__.py:499
|
||||||
msgid "Validators"
|
msgid "(default)"
|
||||||
msgstr "Validateurs"
|
msgstr "(defaut)"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:300
|
#: src/rougail/output_doc/__init__.py:504
|
||||||
msgid "Choices"
|
msgid "Choices"
|
||||||
msgstr "Choix"
|
msgstr "Choix"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:302
|
#: src/rougail/output_doc/__init__.py:507
|
||||||
msgid "Default"
|
msgid "Default"
|
||||||
msgstr "Défaut"
|
msgstr "Défaut"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:306
|
#: src/rougail/output_doc/__init__.py:563
|
||||||
|
msgid "depends on a calculation"
|
||||||
|
msgstr "dépend d'un calcul"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:564
|
||||||
|
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/__init__.py:570
|
||||||
|
msgid "the value of the variable \"{0}\""
|
||||||
|
msgstr "la valeur de la variable \"{0}\""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:575
|
||||||
|
msgid "the value of the identifier"
|
||||||
|
msgstr "la valeur de l'identifiant"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:579
|
||||||
|
msgid "the value of the {0}"
|
||||||
|
msgstr "la valeur de l'{0}"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:624
|
||||||
|
msgid "Validator"
|
||||||
|
msgstr "Validateur"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:624
|
||||||
|
#: src/rougail/output_doc/__init__.py:627
|
||||||
|
#, fuzzy
|
||||||
|
#| msgid ":"
|
||||||
|
msgid ": "
|
||||||
|
msgstr " : "
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:627
|
||||||
|
msgid "Validators"
|
||||||
|
msgstr "Validateurs"
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:654
|
||||||
|
#: src/rougail/output_doc/__init__.py:667
|
||||||
msgid "Example"
|
msgid "Example"
|
||||||
msgstr "Exemple"
|
msgstr "Exemple"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:308
|
#: src/rougail/output_doc/__init__.py:665
|
||||||
msgid "Examples"
|
msgid "Examples"
|
||||||
msgstr "Exemples"
|
msgstr "Exemples"
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:346
|
#: src/rougail/output_doc/annotator.py:220
|
||||||
msgid "Description"
|
msgid "when the variable \"{0}\" has the value \"{1}\""
|
||||||
msgstr "Description"
|
msgstr "lorsque la variable \"{0}\" a la valeur \"{1}\""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:346
|
#: src/rougail/output_doc/annotator.py:222
|
||||||
msgid "Variable"
|
msgid "when the variable \"{0}\" hasn't the value \"{1}\""
|
||||||
msgstr "Variable"
|
msgstr "lorsque la variable \"{0}\" n'a pas la valeur \"{1}\""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:367
|
#: src/rougail/output_doc/annotator.py:224
|
||||||
msgid "{0}: {1}"
|
msgid "when the variable \"{0}\" has the value \"True\""
|
||||||
msgstr "{0} : {1}"
|
msgstr "lorsque la variable \"{0}\" a la valeur \"True\""
|
||||||
|
|
||||||
#, fuzzy
|
#: src/rougail/output_doc/annotator.py:231
|
||||||
#~| msgid ":"
|
msgid "the value of the information \"{0}\" of the variable \"{1}\""
|
||||||
#~ msgid ": "
|
msgstr "la valeur de l'information \"{0}\" de la variable \"{1}\""
|
||||||
#~ msgstr " : "
|
|
||||||
|
|
||||||
#~ msgid "when the variable \"{0}\" has the value \"True\""
|
#: src/rougail/output_doc/annotator.py:233
|
||||||
#~ msgstr "lorsque la variable \"{0}\" a la valeur \"True\""
|
msgid "the value of the global information \"{0}\""
|
||||||
|
msgstr "la valeur de l'information globale \"{0}\""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:237
|
||||||
|
msgid "when the identifier is \"{0}\""
|
||||||
|
msgstr "lorsque l'identifiant est \"{0}\""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:240
|
||||||
|
msgid "when the identifier is not \"{0}\""
|
||||||
|
msgstr "lorsque l'identifiant n'est pas \"{0}\""
|
||||||
|
|
|
||||||
|
|
@ -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-20 21:09+0100\n"
|
"POT-Creation-Date: 2024-11-07 22:47+0100\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,231 +15,197 @@ msgstr ""
|
||||||
"Generated-By: pygettext.py 1.5\n"
|
"Generated-By: pygettext.py 1.5\n"
|
||||||
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:284
|
#: src/rougail/output_doc/__init__.py:40
|
||||||
msgid "when the variable \"{0}\" hasn't the value \"{1}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:290
|
|
||||||
msgid "when the variable \"{0}\" has the value \"{1}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:306
|
|
||||||
msgid "the value of the information \"{0}\" of the variable \"{1}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:309
|
|
||||||
msgid "the value of the global information \"{0}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:318
|
|
||||||
msgid "when the identifier is \"{0}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/annotator.py:320
|
|
||||||
msgid "when the identifier is not \"{0}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/config.py:42
|
|
||||||
msgid "duplicated level rougail-doc for output \"{0}\": {1} and {2}"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:83
|
|
||||||
msgid "mandatory"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:84
|
|
||||||
msgid "hidden"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:85
|
|
||||||
msgid "disabled"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:86
|
|
||||||
msgid "unique"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:87
|
|
||||||
msgid "auto modified"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:264
|
|
||||||
msgid "This family contains lists of variable blocks."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:272
|
|
||||||
msgid "This family builds families dynamically."
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:302
|
|
||||||
msgid "multiple"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:322
|
|
||||||
msgid "No attribute \"description\" for \"{0}\" in {1}"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:420
|
|
||||||
msgid "(default)"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:427
|
|
||||||
msgid "text based with regular expressions \"{0}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:514
|
|
||||||
msgid "depends on a calculation"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:515
|
|
||||||
msgid "\"{0}\" is a calculation for {1} but has no description in {2}"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:539
|
|
||||||
msgid "the value of the variable \"{0}\""
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:549
|
|
||||||
msgid "the value of the identifier"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/doc.py:553
|
|
||||||
msgid "the value of the {0}"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/example.py:38
|
|
||||||
msgid "Example with mandatory variables not filled in"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/example.py:43
|
|
||||||
msgid "Example with all variables modifiable"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:41
|
|
||||||
msgid "the domain name can starts by a dot"
|
msgid "the domain name can starts by a dot"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:42
|
#: src/rougail/output_doc/__init__.py:41
|
||||||
msgid "the domain name can be a hostname"
|
msgid "the domain name can be a hostname"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:43
|
#: src/rougail/output_doc/__init__.py:42
|
||||||
msgid "the domain name can be an IP"
|
msgid "the domain name can be an IP"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:44
|
#: src/rougail/output_doc/__init__.py:43
|
||||||
msgid "the domain name can be network in CIDR format"
|
msgid "the domain name can be network in CIDR format"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:49
|
#: src/rougail/output_doc/__init__.py:48
|
||||||
msgid "the minimum value is {0}"
|
msgid "the minimum value is {0}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:50
|
#: src/rougail/output_doc/__init__.py:49
|
||||||
msgid "the maximum value is {0}"
|
msgid "the maximum value is {0}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:56
|
#: src/rougail/output_doc/__init__.py:55
|
||||||
msgid "IP must be in CIDR format"
|
msgid "IP must be in CIDR format"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:57
|
#: src/rougail/output_doc/__init__.py:56
|
||||||
msgid "private IP are allowed"
|
msgid "private IP are allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:58
|
#: src/rougail/output_doc/__init__.py:57
|
||||||
msgid "reserved IP are allowed"
|
msgid "reserved IP are allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:63
|
#: src/rougail/output_doc/__init__.py:62
|
||||||
msgid "the host name can be an IP"
|
msgid "the host name can be an IP"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:68
|
#: src/rougail/output_doc/__init__.py:67
|
||||||
msgid "the domain name in web address can be an IP"
|
msgid "the domain name in web address can be an IP"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:69
|
#: src/rougail/output_doc/__init__.py:68
|
||||||
msgid "the domain name in web address can be only a hostname"
|
msgid "the domain name in web address can be only a hostname"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:76
|
#: src/rougail/output_doc/__init__.py:75
|
||||||
msgid "can be range of port"
|
msgid "can be range of port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:77
|
#: src/rougail/output_doc/__init__.py:76
|
||||||
msgid "can have the protocol"
|
msgid "can have the protocol"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:78
|
#: src/rougail/output_doc/__init__.py:77
|
||||||
msgid "port 0 is allowed"
|
msgid "port 0 is allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:79
|
#: src/rougail/output_doc/__init__.py:78
|
||||||
msgid "ports 1 to 1023 are allowed"
|
msgid "ports 1 to 1023 are allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:80
|
#: src/rougail/output_doc/__init__.py:79
|
||||||
msgid "ports 1024 to 49151 are allowed"
|
msgid "ports 1024 to 49151 are allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:81
|
#: src/rougail/output_doc/__init__.py:80
|
||||||
msgid "ports greater than 49152 are allowed"
|
msgid "ports greater than 49152 are allowed"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:86
|
#: src/rougail/output_doc/__init__.py:85
|
||||||
msgid "minimum length for the secret"
|
msgid "minimum length for the secret"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:87
|
#: src/rougail/output_doc/__init__.py:86
|
||||||
msgid "maximum length for the secret"
|
msgid "maximum length for the secret"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:215
|
#: src/rougail/output_doc/__init__.py:131
|
||||||
msgid "Variables"
|
msgid "mandatory"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:232
|
#: src/rougail/output_doc/__init__.py:132
|
||||||
|
msgid "hidden"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:133
|
||||||
|
msgid "disabled"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:134
|
||||||
|
msgid "unique"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:135
|
||||||
|
msgid "auto modified"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:169
|
||||||
msgid "Variables for \"{0}\""
|
msgid "Variables for \"{0}\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:247
|
#: src/rougail/output_doc/__init__.py:186
|
||||||
msgid "Identifiers"
|
msgid "Variables"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:296
|
#: src/rougail/output_doc/__init__.py:193
|
||||||
msgid "Validator"
|
msgid "Example with mandatory variables not filled in"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:298
|
#: src/rougail/output_doc/__init__.py:499
|
||||||
msgid "Validators"
|
msgid "(default)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:300
|
#: src/rougail/output_doc/__init__.py:504
|
||||||
msgid "Choices"
|
msgid "Choices"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:302
|
#: src/rougail/output_doc/__init__.py:507
|
||||||
msgid "Default"
|
msgid "Default"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:306
|
#: src/rougail/output_doc/__init__.py:563
|
||||||
|
msgid "depends on a calculation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:564
|
||||||
|
msgid "\"{0}\" is a calculation for {1} but has no description in {2}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:570
|
||||||
|
msgid "the value of the variable \"{0}\""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:575
|
||||||
|
msgid "the value of the identifier"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:579
|
||||||
|
msgid "the value of the {0}"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:624
|
||||||
|
msgid "Validator"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:624
|
||||||
|
#: src/rougail/output_doc/__init__.py:627
|
||||||
|
msgid ": "
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:627
|
||||||
|
msgid "Validators"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/__init__.py:654
|
||||||
|
#: src/rougail/output_doc/__init__.py:667
|
||||||
msgid "Example"
|
msgid "Example"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:308
|
#: src/rougail/output_doc/__init__.py:665
|
||||||
msgid "Examples"
|
msgid "Examples"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:346
|
#: src/rougail/output_doc/annotator.py:220
|
||||||
msgid "Description"
|
msgid "when the variable \"{0}\" has the value \"{1}\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:346
|
#: src/rougail/output_doc/annotator.py:222
|
||||||
msgid "Variable"
|
msgid "when the variable \"{0}\" hasn't the value \"{1}\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/rougail/output_doc/utils.py:367
|
#: src/rougail/output_doc/annotator.py:224
|
||||||
msgid "{0}: {1}"
|
msgid "when the variable \"{0}\" has the value \"True\""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:238
|
||||||
|
msgid "the value of the information \"{0}\" of the variable \"{1}\""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:240
|
||||||
|
msgid "the value of the global information \"{0}\""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:244
|
||||||
|
msgid "when the identifier is \"{0}\""
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/rougail/output_doc/annotator.py:247
|
||||||
|
msgid "when the identifier is not \"{0}\""
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,6 @@ classifiers = [
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"rougail ~= 1.2,<2",
|
"rougail ~= 1.2,<2",
|
||||||
"tabulate ~= 0.9.0",
|
"tabulate ~= 0.9.0",
|
||||||
"rich ~= 13.9.3",
|
|
||||||
]
|
]
|
||||||
|
|
||||||
[project.urls]
|
[project.urls]
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
#!/usr/bin/env python3
|
||||||
"""
|
"""
|
||||||
Silique (https://www.silique.fr)
|
Silique (https://www.silique.fr)
|
||||||
Copyright (C) 2024
|
Copyright (C) 2024
|
||||||
|
|
@ -15,8 +16,706 @@ 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, ConfigError
|
||||||
|
import tabulate as tabulate_module
|
||||||
|
from tabulate import tabulate
|
||||||
|
from warnings import warn
|
||||||
|
from typing import Optional
|
||||||
|
|
||||||
from .doc import RougailOutputDoc
|
from rougail.error import display_xmlfiles
|
||||||
|
from rougail import RougailConfig, Rougail, CONVERT_OPTION
|
||||||
|
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"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
"secret": {
|
||||||
|
"params": {
|
||||||
|
"min_len": _("minimum length for the secret"),
|
||||||
|
"max_len": _("maximum length for the secret"),
|
||||||
|
},
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
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.run()
|
||||||
|
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_ = _("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_ = _("This family builds families dynamically.\n\n{0}: {1}").format(
|
||||||
|
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((mode, None, None, None))
|
||||||
|
break
|
||||||
|
for prop, msg in self.property_to_string:
|
||||||
|
if prop in properties:
|
||||||
|
subparameter.append((msg, None, None, None))
|
||||||
|
elif variable.information.get(f"{prop}_calculation", False):
|
||||||
|
subparameter.append((msg, msg, self.to_string(variable, prop), None))
|
||||||
|
|
||||||
|
def subparameter_to_string(
|
||||||
|
self,
|
||||||
|
subparameter,
|
||||||
|
):
|
||||||
|
subparameter_str = ""
|
||||||
|
for param in subparameter:
|
||||||
|
if param[3]:
|
||||||
|
subparameter_str += self.formater.link(param[0], param[3]) + " "
|
||||||
|
else:
|
||||||
|
if param[1]:
|
||||||
|
italic = True
|
||||||
|
else:
|
||||||
|
italic = False
|
||||||
|
subparameter_str += self.formater.prop(param[0], italic) + " "
|
||||||
|
|
||||||
|
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 = [self.formater.bold(variable.path())]
|
||||||
|
description = variable.description(uncalculated=True)
|
||||||
|
comment = [self.to_phrase(description)]
|
||||||
|
help_ = self.to_phrase(variable.information.get("help", ""))
|
||||||
|
if help_:
|
||||||
|
comment.extend(help_.split("\n"))
|
||||||
|
subparameter = []
|
||||||
|
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(("multiple", None, None, None))
|
||||||
|
if subparameter:
|
||||||
|
parameter.append(self.subparameter_to_string(subparameter))
|
||||||
|
if variable.name() == description:
|
||||||
|
warning = _('No attribute "description" for variable "{0}" in {1}').format(
|
||||||
|
variable.path(),
|
||||||
|
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, []]:
|
||||||
|
default = self.to_string(variable, "default", do_not_raise=True)
|
||||||
|
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="",
|
||||||
|
do_not_raise=False,
|
||||||
|
):
|
||||||
|
calculation_type = variable.information.get(
|
||||||
|
f"{prop}_calculation_type{identifier}", None
|
||||||
|
)
|
||||||
|
if not calculation_type:
|
||||||
|
if do_not_raise:
|
||||||
|
return
|
||||||
|
raise Exception(
|
||||||
|
f"cannot find {prop}_calculation_type{identifier} information, do you have declare doc has a plugins?"
|
||||||
|
)
|
||||||
|
if do_not_raise and variable.information.get(
|
||||||
|
f"{prop}_calculation_optional{identifier}", False
|
||||||
|
):
|
||||||
|
return
|
||||||
|
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 = _(
|
||||||
|
'"{0}" is a calculation for {1} but has no description in {2}'
|
||||||
|
).format(
|
||||||
|
prop,
|
||||||
|
variable.path(),
|
||||||
|
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 = _("the value of the identifier")
|
||||||
|
elif calculation_type == "information":
|
||||||
|
values = calculation
|
||||||
|
else:
|
||||||
|
values = _("the 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(
|
||||||
|
(
|
||||||
|
doc_type.get("msg", variable_type),
|
||||||
|
None,
|
||||||
|
None,
|
||||||
|
ROUGAIL_VARIABLE_TYPE,
|
||||||
|
)
|
||||||
|
)
|
||||||
|
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(
|
||||||
|
self.formater.bold(_("Validator")) + _(": ") + validators[0]
|
||||||
|
)
|
||||||
|
else:
|
||||||
|
comment.append(
|
||||||
|
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)
|
||||||
|
try:
|
||||||
|
default = variable.value.get()
|
||||||
|
except ConfigError:
|
||||||
|
default = None
|
||||||
|
if isinstance(example, tuple):
|
||||||
|
example = list(example)
|
||||||
|
mandatory = "mandatory" in variable.property.get(
|
||||||
|
uncalculated=True
|
||||||
|
) and not variable.value.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
|
||||||
|
|
|
||||||
|
|
@ -20,12 +20,11 @@ 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 typing import Union
|
|
||||||
|
|
||||||
from tiramisu import undefined
|
from tiramisu import undefined
|
||||||
from rougail.annotator.variable import Walk
|
from rougail.annotator.variable import Walk
|
||||||
|
|
||||||
from rougail.output_doc.i18n import _
|
from rougail.output_doc.i18n import _
|
||||||
|
from rougail.error import DictConsistencyError
|
||||||
from rougail.object_model import (
|
from rougail.object_model import (
|
||||||
Calculation,
|
Calculation,
|
||||||
JinjaCalculation,
|
JinjaCalculation,
|
||||||
|
|
@ -38,7 +37,6 @@ from rougail.object_model import (
|
||||||
CONVERT_OPTION,
|
CONVERT_OPTION,
|
||||||
PROPERTY_ATTRIBUTE,
|
PROPERTY_ATTRIBUTE,
|
||||||
)
|
)
|
||||||
from rougail.output_doc.utils import dump
|
|
||||||
|
|
||||||
|
|
||||||
class Annotator(Walk):
|
class Annotator(Walk):
|
||||||
|
|
@ -49,7 +47,7 @@ class Annotator(Walk):
|
||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
objectspace,
|
objectspace,
|
||||||
*args, # pylint: disable=unused-argument
|
*args,
|
||||||
) -> None:
|
) -> None:
|
||||||
if not objectspace.paths:
|
if not objectspace.paths:
|
||||||
return
|
return
|
||||||
|
|
@ -57,6 +55,45 @@ class Annotator(Walk):
|
||||||
self.populate_family()
|
self.populate_family()
|
||||||
self.populate_variable()
|
self.populate_variable()
|
||||||
|
|
||||||
|
def get_examples_values(self, variable):
|
||||||
|
values = self.objectspace.informations.get(variable.path).get("examples", None)
|
||||||
|
if not values:
|
||||||
|
values = self.objectspace.informations.get(variable.path).get("test", None)
|
||||||
|
if isinstance(values, tuple):
|
||||||
|
values = list(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,
|
||||||
|
)
|
||||||
|
if variable:
|
||||||
|
values = self.get_examples_values(variable)
|
||||||
|
else:
|
||||||
|
values = None
|
||||||
|
if values:
|
||||||
|
if inside_list:
|
||||||
|
default_values = list(values)
|
||||||
|
else:
|
||||||
|
default_values = values
|
||||||
|
value.default_values = default_values
|
||||||
|
|
||||||
def populate_family(self) -> None:
|
def populate_family(self) -> None:
|
||||||
"""Set doc, path, ... to family"""
|
"""Set doc, path, ... to family"""
|
||||||
for family in self.get_families():
|
for family in self.get_families():
|
||||||
|
|
@ -67,10 +104,10 @@ class Annotator(Walk):
|
||||||
if family.type != "dynamic":
|
if family.type != "dynamic":
|
||||||
continue
|
continue
|
||||||
if not isinstance(family.dynamic, list):
|
if not isinstance(family.dynamic, list):
|
||||||
self.dynamic_values(family, family.dynamic)
|
self.add_default_value(family, family.dynamic)
|
||||||
else:
|
else:
|
||||||
for value in family.dynamic:
|
for value in family.dynamic:
|
||||||
self.dynamic_values(family, value, return_a_list=False)
|
self.add_default_value(family, value, inside_list=True)
|
||||||
self.calculation_to_information(
|
self.calculation_to_information(
|
||||||
family.path,
|
family.path,
|
||||||
"dynamic",
|
"dynamic",
|
||||||
|
|
@ -78,43 +115,6 @@ class Annotator(Walk):
|
||||||
family.version,
|
family.version,
|
||||||
)
|
)
|
||||||
|
|
||||||
def dynamic_values(
|
|
||||||
self,
|
|
||||||
family,
|
|
||||||
value,
|
|
||||||
*,
|
|
||||||
return_a_list=True,
|
|
||||||
) -> None:
|
|
||||||
"""For dynamic we must have values to document it"""
|
|
||||||
if not isinstance(value, Calculation):
|
|
||||||
return
|
|
||||||
default_values = ["example"]
|
|
||||||
if isinstance(value, (VariableCalculation, VariablePropertyCalculation)):
|
|
||||||
variable = self.objectspace.paths.get_with_dynamic(
|
|
||||||
value.variable,
|
|
||||||
value.path_prefix,
|
|
||||||
family.path,
|
|
||||||
value.version,
|
|
||||||
value.namespace,
|
|
||||||
value.xmlfiles,
|
|
||||||
)[0]
|
|
||||||
if variable:
|
|
||||||
values = self.get_examples_values(variable)
|
|
||||||
if values:
|
|
||||||
default_values = values
|
|
||||||
if not return_a_list:
|
|
||||||
default_values = default_values[0]
|
|
||||||
value.default_values = default_values
|
|
||||||
|
|
||||||
def get_examples_values(self, variable) -> list:
|
|
||||||
"""Check examples or test information to define examples values"""
|
|
||||||
values = self.objectspace.informations.get(variable.path).get("examples", None)
|
|
||||||
if not values:
|
|
||||||
values = self.objectspace.informations.get(variable.path).get("test", None)
|
|
||||||
if isinstance(values, tuple):
|
|
||||||
values = list(values)
|
|
||||||
return values
|
|
||||||
|
|
||||||
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():
|
||||||
|
|
@ -156,7 +156,7 @@ class Annotator(Walk):
|
||||||
variable: dict,
|
variable: dict,
|
||||||
) -> None:
|
) -> None:
|
||||||
"""convert properties"""
|
"""convert properties"""
|
||||||
for prop in PROPERTY_ATTRIBUTE:
|
for prop in ["hidden", "disabled", "mandatory"]:
|
||||||
prop_value = getattr(variable, prop, None)
|
prop_value = getattr(variable, prop, None)
|
||||||
if not prop_value:
|
if not prop_value:
|
||||||
continue
|
continue
|
||||||
|
|
@ -174,161 +174,106 @@ class Annotator(Walk):
|
||||||
values,
|
values,
|
||||||
version: str,
|
version: str,
|
||||||
):
|
):
|
||||||
"""tranform calculation to an information"""
|
self._calculation_to_information(
|
||||||
if not isinstance(values, list):
|
path,
|
||||||
if not isinstance(values, Calculation):
|
prop,
|
||||||
return
|
values,
|
||||||
self._calculation_to_information(
|
version,
|
||||||
path,
|
)
|
||||||
prop,
|
if isinstance(values, list):
|
||||||
self._calculation_to_string(path, prop, values, version),
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
datas = []
|
|
||||||
one_is_calculation = False
|
|
||||||
for idx, val in enumerate(values):
|
for idx, val in enumerate(values):
|
||||||
data = self._calculation_to_string(path, prop, val, version)
|
|
||||||
if data is None:
|
|
||||||
continue
|
|
||||||
if "type" in data:
|
|
||||||
one_is_calculation = True
|
|
||||||
datas.append(data)
|
|
||||||
if one_is_calculation:
|
|
||||||
self._calculation_to_information(
|
self._calculation_to_information(
|
||||||
path,
|
path,
|
||||||
prop,
|
prop,
|
||||||
datas,
|
val,
|
||||||
|
version,
|
||||||
|
identifier=f"_{idx}",
|
||||||
)
|
)
|
||||||
|
|
||||||
def _calculation_to_information(
|
def _calculation_to_information(
|
||||||
self,
|
|
||||||
path: str,
|
|
||||||
prop: str,
|
|
||||||
datas: Union[dict, list[dict]],
|
|
||||||
) -> None:
|
|
||||||
if datas is None:
|
|
||||||
return
|
|
||||||
self.objectspace.informations.add(
|
|
||||||
path,
|
|
||||||
f"{prop}_calculation",
|
|
||||||
datas,
|
|
||||||
)
|
|
||||||
|
|
||||||
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 {"value": values}
|
return
|
||||||
|
values_calculation = True
|
||||||
|
values_optional = False
|
||||||
if isinstance(values, JinjaCalculation):
|
if isinstance(values, JinjaCalculation):
|
||||||
return {
|
if values.description:
|
||||||
"type": "jinja",
|
values_calculation = values.description
|
||||||
"value": self._calculation_to_information_jinja(values),
|
values_calculation_type = "jinja"
|
||||||
}
|
elif isinstance(values, (VariableCalculation, VariablePropertyCalculation)):
|
||||||
if isinstance(values, (VariableCalculation, VariablePropertyCalculation)):
|
values_calculation = values.variable
|
||||||
value = self._calculation_to_information_variable(
|
paths = self.objectspace.paths
|
||||||
values, prop, version, path
|
if version != "1.0" and paths.regexp_relative.search(values_calculation):
|
||||||
)
|
values_calculation = paths.get_full_path(
|
||||||
if value is None:
|
values_calculation,
|
||||||
return
|
path,
|
||||||
return {
|
)
|
||||||
"type": "variable",
|
if prop in PROPERTY_ATTRIBUTE:
|
||||||
"value": value,
|
|
||||||
}
|
|
||||||
if isinstance(values, InformationCalculation):
|
|
||||||
return {
|
|
||||||
"type": "information",
|
|
||||||
"value": self._calculation_to_information_information(
|
|
||||||
values, version, path
|
|
||||||
),
|
|
||||||
}
|
|
||||||
if isinstance(values, (IdentifierCalculation, IdentifierPropertyCalculation)):
|
|
||||||
return {
|
|
||||||
"type": "identifier",
|
|
||||||
"value": self._calculation_to_information_identifier(
|
|
||||||
values, prop, version
|
|
||||||
),
|
|
||||||
}
|
|
||||||
if isinstance(values, IndexCalculation):
|
|
||||||
return {
|
|
||||||
"type": "index",
|
|
||||||
"value": True,
|
|
||||||
}
|
|
||||||
raise Exception('unknown calculation "{values}"')
|
|
||||||
|
|
||||||
def _calculation_to_information_jinja(self, values):
|
|
||||||
if values.description:
|
|
||||||
return values.description
|
|
||||||
return True
|
|
||||||
|
|
||||||
def _calculation_to_information_variable(
|
|
||||||
self, values, prop: str, version: str, path: str
|
|
||||||
) -> str:
|
|
||||||
# is optional
|
|
||||||
if isinstance(values, VariableCalculation) and values.optional:
|
|
||||||
variable = self.objectspace.paths.get_with_dynamic(
|
|
||||||
values.variable,
|
|
||||||
values.path_prefix,
|
|
||||||
path,
|
|
||||||
values.version,
|
|
||||||
values.namespace,
|
|
||||||
values.xmlfiles,
|
|
||||||
)[0]
|
|
||||||
if not variable:
|
|
||||||
return None
|
|
||||||
variable_path = variable.path
|
|
||||||
else:
|
|
||||||
variable_path = self._get_path_from_variable(values, version, path)
|
|
||||||
if prop in PROPERTY_ATTRIBUTE:
|
|
||||||
# get comparative value
|
|
||||||
if values.when_not is not undefined:
|
|
||||||
value = values.when_not
|
|
||||||
msg = _('when the variable "{0}" hasn\'t the value "{1}"')
|
|
||||||
else:
|
|
||||||
if values.when is not undefined:
|
if values.when is not undefined:
|
||||||
value = values.when
|
values_calculation = _(
|
||||||
|
'when the variable "{0}" has the value "{1}"'
|
||||||
|
).format(values_calculation, values.when)
|
||||||
|
elif values.when_not is not undefined:
|
||||||
|
values_calculation = _(
|
||||||
|
'when the variable "{0}" hasn\'t the value "{1}"'
|
||||||
|
).format(values_calculation, values.when_not)
|
||||||
else:
|
else:
|
||||||
value = True
|
values_calculation = _(
|
||||||
msg = _('when the variable "{0}" has the value "{1}"')
|
'when the variable "{0}" has the value "True"'
|
||||||
if not isinstance(value, str):
|
).format(values_calculation)
|
||||||
value = dump(value)
|
values_calculation_type = "variable"
|
||||||
|
if isinstance(values, VariableCalculation):
|
||||||
# set message
|
values_optional = values.optional
|
||||||
values_calculation = msg.format(variable_path, value)
|
elif isinstance(values, InformationCalculation):
|
||||||
else:
|
values_calculation_type = "information"
|
||||||
values_calculation = variable_path
|
if values.variable:
|
||||||
|
variable = values.variable
|
||||||
return values_calculation
|
paths = self.objectspace.paths
|
||||||
|
if version != "1.0" and paths.regexp_relative.search(variable):
|
||||||
def _calculation_to_information_information(
|
variable = paths.get_full_path(
|
||||||
self, values, version: str, path: str
|
variable,
|
||||||
) -> Union[str, bool]:
|
path,
|
||||||
if values.variable:
|
)
|
||||||
variable_path = self._get_path_from_variable(values, version, path)
|
values_calculation = _(
|
||||||
return _('the value of the information "{0}" of the variable "{1}"').format(
|
'the value of the information "{0}" of the variable "{1}"'
|
||||||
values.information, variable_path
|
).format(values.information, variable)
|
||||||
)
|
else:
|
||||||
return _('the value of the global information "{0}"').format(values.information)
|
values_calculation = _(
|
||||||
|
'the value of the global information "{0}"'
|
||||||
def _calculation_to_information_identifier(
|
).format(values.information)
|
||||||
self, values, prop: str, version: str
|
elif isinstance(values, (IdentifierCalculation, IdentifierPropertyCalculation)):
|
||||||
) -> Union[str, bool]:
|
if version != "1.0" and prop in PROPERTY_ATTRIBUTE:
|
||||||
if version != "1.0" and prop in PROPERTY_ATTRIBUTE:
|
if values.when is not undefined:
|
||||||
if values.when is not undefined:
|
values_calculation = _('when the identifier is "{0}"').format(
|
||||||
return _('when the identifier is "{0}"').format(values.when)
|
values.when
|
||||||
if values.when_not is not undefined:
|
)
|
||||||
return _('when the identifier is not "{0}"').format(values.when_not)
|
elif values.when_not is not undefined:
|
||||||
return True
|
values_calculation = _('when the identifier is not "{0}"').format(
|
||||||
|
values.when_not
|
||||||
def _get_path_from_variable(self, values, version: str, path: str) -> str:
|
)
|
||||||
variable_path = values.variable
|
values_calculation_type = "identifier"
|
||||||
paths = self.objectspace.paths
|
elif isinstance(values, IndexCalculation):
|
||||||
if version != "1.0" and paths.regexp_relative.search(variable_path):
|
values_calculation_type = "index"
|
||||||
variable_path = paths.get_full_path(
|
self.objectspace.informations.add(
|
||||||
variable_path,
|
path,
|
||||||
|
f"{prop}_calculation_type{identifier}",
|
||||||
|
values_calculation_type,
|
||||||
|
)
|
||||||
|
self.objectspace.informations.add(
|
||||||
|
path,
|
||||||
|
f"{prop}_calculation{identifier}",
|
||||||
|
values_calculation,
|
||||||
|
)
|
||||||
|
if values_optional:
|
||||||
|
self.objectspace.informations.add(
|
||||||
path,
|
path,
|
||||||
|
f"{prop}_calculation_optional{identifier}",
|
||||||
|
values_optional,
|
||||||
)
|
)
|
||||||
return variable_path
|
|
||||||
|
|
|
||||||
|
|
@ -19,29 +19,26 @@ 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:
|
||||||
"""Load all outputs"""
|
module_name = "rougail.doc.output"
|
||||||
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[:-3], str(path))
|
module = load_modules(module_name + "." + name, 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 ImportError(
|
raise Exception(
|
||||||
_('duplicated level rougail-doc for output "{0}": {1} and {2}').format(
|
f'duplicated level rougail-doc for output "{level}": {module.Formater.name} and {outputs[level].name}'
|
||||||
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)}
|
||||||
|
|
@ -58,15 +55,13 @@ 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, # pylint: disable=unused-argument
|
backward_compatibility=True,
|
||||||
) -> 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 = """
|
||||||
|
|
|
||||||
|
|
@ -1,565 +0,0 @@
|
||||||
"""
|
|
||||||
Silique (https://www.silique.fr)
|
|
||||||
Copyright (C) 2024
|
|
||||||
|
|
||||||
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 tiramisu import Calculation, undefined, groups
|
|
||||||
from tiramisu.error import ConfigError
|
|
||||||
from rougail.error import display_xmlfiles
|
|
||||||
from rougail.object_model import PROPERTY_ATTRIBUTE
|
|
||||||
|
|
||||||
from .config import OutPuts
|
|
||||||
from .i18n import _
|
|
||||||
from .utils import to_phrase, DocTypes
|
|
||||||
from .example import Examples
|
|
||||||
|
|
||||||
|
|
||||||
class RougailOutputDoc(Examples):
|
|
||||||
"""Rougail Output Doc:
|
|
||||||
Generate documentation from rougail description files
|
|
||||||
"""
|
|
||||||
|
|
||||||
def __init__(
|
|
||||||
self,
|
|
||||||
*,
|
|
||||||
config: "Config" = None,
|
|
||||||
rougailconfig: "RougailConfig" = None,
|
|
||||||
**kwarg,
|
|
||||||
):
|
|
||||||
# Import here to avoid circular import
|
|
||||||
from rougail import Rougail, 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)}'
|
|
||||||
)
|
|
||||||
if config is None:
|
|
||||||
rougail = Rougail(rougailconfig)
|
|
||||||
rougail.converted.plugins.append("output_doc")
|
|
||||||
config = rougail.run()
|
|
||||||
self.conf = config
|
|
||||||
self.conf.property.setdefault(frozenset({"advanced"}), "read_write", "append")
|
|
||||||
self.conf.property.read_write()
|
|
||||||
# self.conf.property.remove("cache")
|
|
||||||
self.formater = outputs[output]()
|
|
||||||
self.level = rougailconfig["doc.title_level"]
|
|
||||||
self.dynamic_paths = {}
|
|
||||||
self.with_example = rougailconfig["doc.with_example"]
|
|
||||||
self.modes_level = rougailconfig["modes_level"]
|
|
||||||
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):
|
|
||||||
"""Print documentation in stdout"""
|
|
||||||
print(self.gen_doc())
|
|
||||||
|
|
||||||
def gen_doc(self):
|
|
||||||
"""Return documentation"""
|
|
||||||
self._tiramisu_to_internal_object()
|
|
||||||
return_string = self.formater.run(self.informations, self.level)
|
|
||||||
if self.with_example:
|
|
||||||
return_string += self.gen_doc_examples()
|
|
||||||
return return_string
|
|
||||||
|
|
||||||
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.dynamic_paths[path]["paths"].append(
|
|
||||||
self._dyn_path_to_italic(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.dynamic_paths[path]["paths"].append(
|
|
||||||
self._dyn_path_to_italic(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
|
|
||||||
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)
|
|
||||||
# FIXME advanced is hard coded
|
|
||||||
for hidden_property in ["hidden", "disabled", "advanced"]:
|
|
||||||
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
|
|
||||||
informations[name] = {
|
|
||||||
"type": self._get_family_type(family),
|
|
||||||
"informations": self._populate_family(
|
|
||||||
family,
|
|
||||||
path,
|
|
||||||
),
|
|
||||||
"children": sub_informations,
|
|
||||||
}
|
|
||||||
|
|
||||||
def _parse_variable(
|
|
||||||
self, variable, leader: dict, name: str, path: str, informations: dict
|
|
||||||
) -> Optional[dict]:
|
|
||||||
if variable.isdynamic():
|
|
||||||
# information is already set
|
|
||||||
potential_leader = self._parse_variable_dynamic(
|
|
||||||
variable, leader, name, path, informations
|
|
||||||
)
|
|
||||||
elif variable.isfollower() and variable.index():
|
|
||||||
potential_leader = self._parse_variable_follower_with_index(
|
|
||||||
variable, name, informations
|
|
||||||
)
|
|
||||||
else:
|
|
||||||
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]
|
|
||||||
else:
|
|
||||||
sub_informations = {}
|
|
||||||
self._populate_variable(
|
|
||||||
variable,
|
|
||||||
sub_informations,
|
|
||||||
)
|
|
||||||
if self.with_example:
|
|
||||||
self._add_examples(variable, sub_informations, leader)
|
|
||||||
informations[name] = sub_informations
|
|
||||||
if variable.isleader():
|
|
||||||
return sub_informations
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _parse_variable_follower_with_index(
|
|
||||||
self, variable, name: str, informations: dict
|
|
||||||
) -> None:
|
|
||||||
if not self.with_example:
|
|
||||||
return None
|
|
||||||
informations[name]["example"][-1][variable.index()] = self._get_example(
|
|
||||||
variable, informations[name], None
|
|
||||||
)
|
|
||||||
return None
|
|
||||||
|
|
||||||
def _parse_variable_dynamic(
|
|
||||||
self, variable, leader, name, path, informations
|
|
||||||
) -> None:
|
|
||||||
dynamic_variable = self.dynamic_paths[path]
|
|
||||||
if "type" in dynamic_variable:
|
|
||||||
if self.with_example:
|
|
||||||
dynamic_variable["example"].append(
|
|
||||||
self._get_example(variable, dynamic_variable, leader)
|
|
||||||
)
|
|
||||||
description = to_phrase(variable.description(uncalculated=True))
|
|
||||||
if "{{ identifier }}" in description:
|
|
||||||
description = self._convert_description(description, variable)
|
|
||||||
dynamic_variable["descriptions"].append(to_phrase(description))
|
|
||||||
if variable.isleader():
|
|
||||||
return dynamic_variable
|
|
||||||
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, child, path: str) -> str:
|
|
||||||
for identifier in child.identifiers():
|
|
||||||
path = path.replace("{{ identifier }}", self.formater.italic(identifier), 1)
|
|
||||||
return 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"] = default
|
|
||||||
self._parse_type(
|
|
||||||
variable,
|
|
||||||
informations,
|
|
||||||
)
|
|
||||||
self._populate(variable, informations)
|
|
||||||
if "description" in informations:
|
|
||||||
informations["descriptions"] = [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"),
|
|
||||||
}
|
|
||||||
)
|
|
||||||
informations["multiple"] = True
|
|
||||||
examples = variable.information.get("examples", None)
|
|
||||||
if examples is None:
|
|
||||||
examples = variable.information.get("test", None)
|
|
||||||
if examples is not None:
|
|
||||||
informations["examples"] = 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 obj.group_type() is not groups.namespace
|
|
||||||
):
|
|
||||||
warning = _('No attribute "description" for "{0}" in {1}').format(
|
|
||||||
informations["paths"][0],
|
|
||||||
display_xmlfiles(obj.information.get("dictionaries")),
|
|
||||||
)
|
|
||||||
warn(warning)
|
|
||||||
else:
|
|
||||||
informations["description"] = self._convert_description(description, obj)
|
|
||||||
help_ = obj.information.get("help", None)
|
|
||||||
if help_:
|
|
||||||
informations["help"] = [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:
|
|
||||||
example = self._get_example(variable, informations, leader)
|
|
||||||
informations["example"] = [example]
|
|
||||||
informations["mandatory_without_value"] = "mandatory" in variable.property.get(
|
|
||||||
uncalculated=True
|
|
||||||
) and variable.value.get(uncalculated=True) in [None, []]
|
|
||||||
|
|
||||||
def _get_example(self, variable, informations: dict, leader):
|
|
||||||
example = informations.get("examples")
|
|
||||||
if example is not None:
|
|
||||||
if isinstance(example, tuple):
|
|
||||||
example = list(example)
|
|
||||||
if not informations.get("multiple"):
|
|
||||||
example = example[0]
|
|
||||||
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.convert_option.get(
|
|
||||||
variable.information.get("type"), {}
|
|
||||||
).get("example", None)
|
|
||||||
if example is None:
|
|
||||||
example = "xxx"
|
|
||||||
if informations.get("multiple"):
|
|
||||||
example = [example]
|
|
||||||
if leader is not None and variable.isfollower():
|
|
||||||
example = [example] + [undefined] * (len(leader["example"][-1]) - 1)
|
|
||||||
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()
|
|
||||||
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:
|
|
||||||
informations.setdefault("validators", []).append(msg.format(value))
|
|
||||||
# get validation information from annotator
|
|
||||||
for name in variable.information.list():
|
|
||||||
if not name.startswith("validators_calculation"):
|
|
||||||
continue
|
|
||||||
informations.setdefault("validators", []).extend(
|
|
||||||
self._to_string(
|
|
||||||
variable,
|
|
||||||
"validators",
|
|
||||||
)
|
|
||||||
)
|
|
||||||
break
|
|
||||||
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")
|
|
||||||
if default is not None and val == default:
|
|
||||||
choices[idx] = str(val) + " ← " + _("(default)")
|
|
||||||
informations["display_default"] = False
|
|
||||||
continue
|
|
||||||
choices[idx] = self._to_string(variable, "choice", f"_{idx}")
|
|
||||||
informations["choices"] = choices
|
|
||||||
if variable.information.get("type") == "regexp":
|
|
||||||
informations.setdefault("validators", []).append(
|
|
||||||
_('text based with regular expressions "{0}"').format(
|
|
||||||
variable.pattern()
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
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):
|
|
||||||
prop_obj = {
|
|
||||||
"type": "property",
|
|
||||||
"name": msg,
|
|
||||||
"annotation": self._to_string(variable, prop),
|
|
||||||
}
|
|
||||||
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:
|
|
||||||
return default
|
|
||||||
if not variable.information.get("fake_default", False):
|
|
||||||
default = variable.value.get(uncalculated=True)
|
|
||||||
if default == []:
|
|
||||||
default = None
|
|
||||||
return default
|
|
||||||
|
|
||||||
def _to_string(
|
|
||||||
self,
|
|
||||||
variable,
|
|
||||||
prop,
|
|
||||||
identifier="",
|
|
||||||
do_not_raise=False,
|
|
||||||
):
|
|
||||||
if identifier:
|
|
||||||
raise Exception("pfff")
|
|
||||||
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 do_not_raise and calculation.get('optional', False):
|
|
||||||
# return None
|
|
||||||
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, variable, calculation, prop):
|
|
||||||
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")
|
|
||||||
warning = _(
|
|
||||||
'"{0}" is a calculation for {1} but has no description in {2}'
|
|
||||||
).format(
|
|
||||||
prop,
|
|
||||||
variable.path(),
|
|
||||||
display_xmlfiles(variable.information.get("dictionaries")),
|
|
||||||
)
|
|
||||||
warn(warning)
|
|
||||||
elif calculation["type"] == "variable":
|
|
||||||
if prop in PROPERTY_ATTRIBUTE:
|
|
||||||
values = calculation["value"]
|
|
||||||
else:
|
|
||||||
if calculation.get("optional", False):
|
|
||||||
# FIXME pas forcement dans self.dynamic_paths encore ...
|
|
||||||
path = calculation["value"]
|
|
||||||
if "{{ identifier }}" in path:
|
|
||||||
# FIXME pas forcement dans self.dynamic_paths encore ...
|
|
||||||
if path not in self.dynamic_paths:
|
|
||||||
return None
|
|
||||||
else:
|
|
||||||
try:
|
|
||||||
self.conf.option(path).get()
|
|
||||||
except AttributeError:
|
|
||||||
return None
|
|
||||||
msg = _('the value of the variable "{0}"')
|
|
||||||
if "{{ identifier }}" in calculation["value"]:
|
|
||||||
# FIXME pas forcement dans self.dynamic_paths encore ...
|
|
||||||
values = [
|
|
||||||
msg.format(path)
|
|
||||||
for path in self.dynamic_paths[calculation["value"]]["paths"]
|
|
||||||
]
|
|
||||||
else:
|
|
||||||
values = msg.format(calculation["value"])
|
|
||||||
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
|
|
||||||
|
|
@ -1,138 +0,0 @@
|
||||||
"""
|
|
||||||
Silique (https://www.silique.fr)
|
|
||||||
Copyright (C) 2024
|
|
||||||
|
|
||||||
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"""
|
|
||||||
if not self.informations:
|
|
||||||
self._tiramisu_to_internal_object()
|
|
||||||
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
|
|
||||||
Binary file not shown.
|
|
@ -16,19 +16,21 @@ 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 ..utils import CommonFormater, dump
|
from itertools import chain
|
||||||
|
from ruamel.yaml import YAML
|
||||||
|
|
||||||
|
|
||||||
class Formater(CommonFormater):
|
class Formater:
|
||||||
"""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):
|
def header(self):
|
||||||
"""Header of the documentation"""
|
|
||||||
return ""
|
return ""
|
||||||
|
|
||||||
def title(
|
def title(
|
||||||
|
|
@ -36,77 +38,14 @@ class Formater(CommonFormater):
|
||||||
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 join(
|
def yaml(self, dump: dict) -> str:
|
||||||
self,
|
return f"[,yaml]\n----\n---\n{self.dump(dump)}\n----\n"
|
||||||
lst: List[str],
|
|
||||||
) -> str:
|
|
||||||
"""Display line in table from a list"""
|
|
||||||
string = ""
|
|
||||||
previous = ""
|
|
||||||
for line in lst:
|
|
||||||
if string:
|
|
||||||
if self.is_list(previous.split("\n", 1)[-1]):
|
|
||||||
string += "\n\n"
|
|
||||||
else:
|
|
||||||
string += " +\n"
|
|
||||||
string += line
|
|
||||||
|
|
||||||
previous = line
|
def table(self, table: str) -> str:
|
||||||
return "\n" + string
|
# add 'a' option in cols to display list
|
||||||
|
|
||||||
def bold(
|
|
||||||
self,
|
|
||||||
msg: str,
|
|
||||||
) -> str:
|
|
||||||
"""Set a text to bold"""
|
|
||||||
return f"**{msg}**"
|
|
||||||
|
|
||||||
def italic(
|
|
||||||
self,
|
|
||||||
msg: str,
|
|
||||||
) -> str:
|
|
||||||
"""Set a text to italic"""
|
|
||||||
return f"__{msg}__"
|
|
||||||
|
|
||||||
def stripped(
|
|
||||||
self,
|
|
||||||
text: str,
|
|
||||||
) -> str:
|
|
||||||
"""Return stripped text (as help)"""
|
|
||||||
return text.strip()
|
|
||||||
|
|
||||||
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)
|
stable = table.split("\n", 1)
|
||||||
return '[cols="1a,1a"]\n' + stable[1]
|
return '[cols="1a,1a"]\n' + stable[1]
|
||||||
|
|
||||||
|
|
@ -115,12 +54,89 @@ class Formater(CommonFormater):
|
||||||
comment: str,
|
comment: str,
|
||||||
link: str,
|
link: str,
|
||||||
) -> str:
|
) -> str:
|
||||||
"""Add a link"""
|
|
||||||
return f"`{link}[{comment}]`"
|
return f"`{link}[{comment}]`"
|
||||||
|
|
||||||
|
def prop(
|
||||||
|
self,
|
||||||
|
prop: str,
|
||||||
|
italic: bool,
|
||||||
|
) -> str:
|
||||||
|
if italic:
|
||||||
|
prop = self.italic(prop)
|
||||||
|
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(
|
def is_list(
|
||||||
self,
|
self,
|
||||||
txt: str,
|
txt: str,
|
||||||
) -> str:
|
) -> str:
|
||||||
"""verify if a text is a list"""
|
return txt.startswith("* ")
|
||||||
return txt.strip().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(
|
||||||
|
self,
|
||||||
|
lst: List[str],
|
||||||
|
) -> str:
|
||||||
|
string = ""
|
||||||
|
previous = ""
|
||||||
|
for line in lst:
|
||||||
|
if string:
|
||||||
|
if self.is_list(previous.split("\n")[-1]):
|
||||||
|
string += "\n\n"
|
||||||
|
else:
|
||||||
|
string += " +\n"
|
||||||
|
string += line
|
||||||
|
|
||||||
|
previous = line
|
||||||
|
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(
|
||||||
|
self,
|
||||||
|
msg: str,
|
||||||
|
) -> str:
|
||||||
|
return f"**{msg}**"
|
||||||
|
|
||||||
|
def italic(
|
||||||
|
self,
|
||||||
|
msg: str,
|
||||||
|
) -> str:
|
||||||
|
return f"_{msg}_"
|
||||||
|
|
||||||
|
def dump(self, dico):
|
||||||
|
with BytesIO() as ymlfh:
|
||||||
|
self._yaml.dump(dico, ymlfh)
|
||||||
|
ret = ymlfh.getvalue().decode("utf-8").strip()
|
||||||
|
if ret.endswith("..."):
|
||||||
|
ret = ret[:-3].strip()
|
||||||
|
return ret
|
||||||
|
|
|
||||||
|
|
@ -1,60 +0,0 @@
|
||||||
"""
|
|
||||||
Silique (https://www.silique.fr)
|
|
||||||
Copyright (C) 2024
|
|
||||||
|
|
||||||
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 .github import Formater as GFormater
|
|
||||||
|
|
||||||
|
|
||||||
# from rich.text import Text
|
|
||||||
# from rich.table import Table, Column
|
|
||||||
# from rich.console import Console
|
|
||||||
#
|
|
||||||
# from typing import List
|
|
||||||
# from ..utils import CommonFormater, dump
|
|
||||||
#
|
|
||||||
## console.print(table)
|
|
||||||
#
|
|
||||||
class Formater(GFormater):
|
|
||||||
"""The console formater"""
|
|
||||||
|
|
||||||
name = "console"
|
|
||||||
level = 10
|
|
||||||
enter_table = "\n"
|
|
||||||
|
|
||||||
def header(self):
|
|
||||||
"""Header of the documentation"""
|
|
||||||
return ""
|
|
||||||
|
|
||||||
def run(self, dico: dict, level: int) -> str:
|
|
||||||
msg = super().run(dico, level)
|
|
||||||
from rich.console import Console
|
|
||||||
from rich.markdown import Markdown
|
|
||||||
|
|
||||||
console = Console()
|
|
||||||
|
|
||||||
markdown = Markdown(msg)
|
|
||||||
with console.capture() as capture:
|
|
||||||
console.print(markdown)
|
|
||||||
return capture.get()
|
|
||||||
|
|
||||||
def link(
|
|
||||||
self,
|
|
||||||
comment: str,
|
|
||||||
link: str,
|
|
||||||
) -> str:
|
|
||||||
"""Add a link"""
|
|
||||||
return self.prop(comment, False)
|
|
||||||
|
|
@ -16,25 +16,22 @@ 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 dump, CommonFormater
|
from ruamel.yaml import YAML
|
||||||
|
|
||||||
|
|
||||||
class Formater(CommonFormater):
|
class Formater:
|
||||||
"""The markdown (for github) formater"""
|
|
||||||
|
|
||||||
name = "github"
|
name = "github"
|
||||||
_table_name = "github"
|
|
||||||
level = 50
|
level = 50
|
||||||
enter_table = "<br/>"
|
|
||||||
|
|
||||||
def __init__(self) -> None:
|
def __init__(self):
|
||||||
self.max_line = 0
|
self._yaml = YAML()
|
||||||
super().__init__()
|
self._yaml.indent(mapping=2, sequence=4, offset=2)
|
||||||
|
self.header_setted = False
|
||||||
|
|
||||||
def header(self) -> str:
|
def header(self):
|
||||||
"""Header of the documentation"""
|
|
||||||
if self.header_setted:
|
if self.header_setted:
|
||||||
return ""
|
return ""
|
||||||
self.header_setted = True
|
self.header_setted = True
|
||||||
|
|
@ -45,85 +42,90 @@ class Formater(CommonFormater):
|
||||||
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 join(
|
def yaml(self, dump):
|
||||||
self,
|
return f"```yaml\n---\n{self.dump(dump)}\n```\n"
|
||||||
lst: List[str],
|
|
||||||
) -> str:
|
|
||||||
"""Display line in table from a list"""
|
|
||||||
return self.enter_table.join(lst)
|
|
||||||
|
|
||||||
def bold(
|
def table(self, table):
|
||||||
self,
|
return table
|
||||||
msg: str,
|
|
||||||
) -> str:
|
|
||||||
"""Set a text to bold"""
|
|
||||||
return f"**{msg}**"
|
|
||||||
|
|
||||||
def italic(
|
|
||||||
self,
|
|
||||||
msg: str,
|
|
||||||
) -> str:
|
|
||||||
"""Set a text to italic"""
|
|
||||||
return f"*{msg}*"
|
|
||||||
|
|
||||||
def stripped(
|
|
||||||
self,
|
|
||||||
text: str,
|
|
||||||
) -> str:
|
|
||||||
"""Return stripped text (as help)"""
|
|
||||||
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
|
|
||||||
|
|
||||||
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] + " " * (self.max_line - len(lst[0])), lst[1] + " " * (
|
|
||||||
self.max_line - len(lst[1])
|
|
||||||
)
|
|
||||||
|
|
||||||
def yaml(self, _dump):
|
|
||||||
"""Dump yaml part of documentation"""
|
|
||||||
return f"```yaml\n---\n{dump(_dump)}\n```\n"
|
|
||||||
|
|
||||||
def link(
|
def link(
|
||||||
self,
|
self,
|
||||||
comment: str,
|
comment: str,
|
||||||
link: str,
|
link: str,
|
||||||
) -> str:
|
) -> str:
|
||||||
"""Add a link"""
|
|
||||||
return f"[`{comment}`]({link})"
|
return f"[`{comment}`]({link})"
|
||||||
|
|
||||||
|
def prop(
|
||||||
|
self,
|
||||||
|
prop: str,
|
||||||
|
italic: bool,
|
||||||
|
) -> str:
|
||||||
|
prop = f"`{prop}`"
|
||||||
|
if italic:
|
||||||
|
prop = self.italic(prop)
|
||||||
|
return 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(
|
def columns(
|
||||||
self,
|
self,
|
||||||
col: List[str],
|
col1: List[str],
|
||||||
|
col2: List[str],
|
||||||
) -> None:
|
) -> None:
|
||||||
"""count columns length"""
|
self.max_line = 0
|
||||||
for line in col:
|
for params in chain(col1, col2):
|
||||||
for l in line.split(self.enter_table):
|
for param in params.split("\n"):
|
||||||
self.max_line = max(self.max_line, len(l) + 1)
|
self.max_line = max(self.max_line, len(param))
|
||||||
|
self.max_line += 1
|
||||||
|
|
||||||
|
def join(
|
||||||
|
self,
|
||||||
|
lst: List[str],
|
||||||
|
) -> str:
|
||||||
|
return "<br/>".join(lst)
|
||||||
|
|
||||||
|
def to_string(
|
||||||
|
self,
|
||||||
|
text: str,
|
||||||
|
) -> str:
|
||||||
|
return text.strip().replace("\n", "<br/>")
|
||||||
|
|
||||||
|
def table_header(self, lst):
|
||||||
|
return lst[0] + " " * (self.max_line - len(lst[0])), lst[1] + " " * (
|
||||||
|
self.max_line - len(lst[1])
|
||||||
|
)
|
||||||
|
|
||||||
|
def bold(
|
||||||
|
self,
|
||||||
|
msg: str,
|
||||||
|
) -> str:
|
||||||
|
return f"**{msg}**"
|
||||||
|
|
||||||
|
def italic(
|
||||||
|
self,
|
||||||
|
msg: str,
|
||||||
|
) -> str:
|
||||||
|
return f"*{msg}*"
|
||||||
|
|
||||||
|
def dump(self, dico):
|
||||||
|
with BytesIO() as ymlfh:
|
||||||
|
self._yaml.dump(dico, ymlfh)
|
||||||
|
ret = ymlfh.getvalue().decode("utf-8").strip()
|
||||||
|
if ret.endswith("..."):
|
||||||
|
ret = ret[:-3].strip()
|
||||||
|
return ret
|
||||||
|
|
|
||||||
|
|
@ -1,35 +0,0 @@
|
||||||
"""
|
|
||||||
Silique (https://www.silique.fr)
|
|
||||||
Copyright (C) 2024
|
|
||||||
|
|
||||||
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
|
|
||||||
|
|
||||||
|
|
||||||
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)
|
|
||||||
|
|
||||||
def italic(self, msg: Any) -> str:
|
|
||||||
"""Just return a string"""
|
|
||||||
return str(msg)
|
|
||||||
|
|
@ -1,367 +0,0 @@
|
||||||
"""
|
|
||||||
Silique (https://www.silique.fr)
|
|
||||||
Copyright (C) 2024
|
|
||||||
|
|
||||||
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}"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"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"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
"secret": {
|
|
||||||
"params": {
|
|
||||||
"min_len": _("minimum length for the secret"),
|
|
||||||
"max_len": _("maximum length for the secret"),
|
|
||||||
},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
_yaml = YAML()
|
|
||||||
_yaml.indent(mapping=2, sequence=4, offset=2)
|
|
||||||
|
|
||||||
|
|
||||||
def dump(dico):
|
|
||||||
"""Dump variable, means transform bool, ... to yaml string"""
|
|
||||||
with BytesIO() as ymlfh:
|
|
||||||
_yaml.dump(dico, 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 header(self):
|
|
||||||
"""Header of the documentation"""
|
|
||||||
raise NotImplementedError()
|
|
||||||
|
|
||||||
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 table_header(
|
|
||||||
self,
|
|
||||||
lst: list,
|
|
||||||
) -> tuple:
|
|
||||||
"""Manage the header of a table"""
|
|
||||||
return lst
|
|
||||||
|
|
||||||
def run(self, dico: dict, level: int) -> str:
|
|
||||||
"""Transform to string"""
|
|
||||||
msg = self.header()
|
|
||||||
if dico:
|
|
||||||
msg += self.dict_to_string(dico, level + 1, root=True)
|
|
||||||
return msg
|
|
||||||
|
|
||||||
def dict_to_string(self, dico: dict, level: int, root: bool = False) -> str:
|
|
||||||
"""Parse the dict to transform to dict"""
|
|
||||||
msg = ""
|
|
||||||
table_datas = []
|
|
||||||
title_added = not root
|
|
||||||
for value in dico.values():
|
|
||||||
if value["type"] == "namespace":
|
|
||||||
msg += self.namespace_to_string(value["informations"], level)
|
|
||||||
msg += self.dict_to_string(value["children"], level)
|
|
||||||
else:
|
|
||||||
if not title_added:
|
|
||||||
msg += self.title(_("Variables"), level - 1)
|
|
||||||
if value["type"] == "variable":
|
|
||||||
self.variable_to_string(value, table_datas)
|
|
||||||
else:
|
|
||||||
if table_datas:
|
|
||||||
msg += self.table(table_datas)
|
|
||||||
msg += self.family_to_string(value["informations"], level)
|
|
||||||
msg += self.dict_to_string(value["children"], level + 1)
|
|
||||||
title_added = True
|
|
||||||
if table_datas:
|
|
||||||
msg += self.table(table_datas)
|
|
||||||
return msg
|
|
||||||
|
|
||||||
# FAMILY
|
|
||||||
def namespace_to_string(self, dico: dict, level: int) -> str:
|
|
||||||
"""manage namespace family"""
|
|
||||||
return self.title(
|
|
||||||
_('Variables for "{0}"').format(self.family_description(dico)), level - 1
|
|
||||||
)
|
|
||||||
|
|
||||||
def family_to_string(self, dico: dict, level: int) -> str:
|
|
||||||
"""manage other family type"""
|
|
||||||
msg = self.title(self.family_description(dico), level)
|
|
||||||
calculated_properties = []
|
|
||||||
msg += self.property_to_string(dico, calculated_properties) + ENTER
|
|
||||||
if calculated_properties:
|
|
||||||
msg += self.join(calculated_properties) + ENTER
|
|
||||||
helps = dico.get("help")
|
|
||||||
if helps:
|
|
||||||
for help_ in helps:
|
|
||||||
msg += help_.strip() + ENTER
|
|
||||||
if "identifiers" in dico:
|
|
||||||
msg += self.section(_("Identifiers"), dico["identifiers"]) + ENTER
|
|
||||||
return msg
|
|
||||||
|
|
||||||
def family_description(self, dico: dict) -> str():
|
|
||||||
"""Get family name"""
|
|
||||||
if "description" in dico:
|
|
||||||
return dico["description"]
|
|
||||||
return display_list(
|
|
||||||
dico["paths"],
|
|
||||||
separator="or",
|
|
||||||
)
|
|
||||||
|
|
||||||
# VARIABLE
|
|
||||||
def variable_to_string(self, dico: dict, table_datas: dict) -> None:
|
|
||||||
"""Manage variable"""
|
|
||||||
calculated_properties = []
|
|
||||||
table_datas.append(
|
|
||||||
[
|
|
||||||
self.join(self.variable_first_column(dico, calculated_properties)),
|
|
||||||
self.join(self.variable_second_column(dico, calculated_properties)),
|
|
||||||
]
|
|
||||||
)
|
|
||||||
|
|
||||||
def variable_first_column(self, dico: dict, calculated_properties: list) -> list:
|
|
||||||
"""Collect string for the first column"""
|
|
||||||
first_col = [
|
|
||||||
self.join([self.bold(path_) for path_ in dico["paths"]]),
|
|
||||||
self.property_to_string(dico, calculated_properties),
|
|
||||||
]
|
|
||||||
self.columns(first_col)
|
|
||||||
return first_col
|
|
||||||
|
|
||||||
def variable_second_column(self, dico: dict, calculated_properties: list) -> list:
|
|
||||||
"""Collect string for the second column"""
|
|
||||||
if "descriptions" in dico:
|
|
||||||
description = self.join(list(dict.fromkeys(dico["descriptions"])))
|
|
||||||
else:
|
|
||||||
description = to_phrase(
|
|
||||||
display_list(
|
|
||||||
list(dict.fromkeys(dico["names"])),
|
|
||||||
separator="or",
|
|
||||||
)
|
|
||||||
)
|
|
||||||
second_col = [self.stripped(description)]
|
|
||||||
for help_ in dico.get("help", []):
|
|
||||||
second_col.append(self.stripped(help_))
|
|
||||||
if "validators" in dico:
|
|
||||||
validators = dico["validators"]
|
|
||||||
if len(validators) == 1:
|
|
||||||
second_col.append(self.section(_("Validator"), validators[0]))
|
|
||||||
else:
|
|
||||||
second_col.append(self.section(_("Validators"), self.list(validators)))
|
|
||||||
if "choices" in dico:
|
|
||||||
second_col.append(self.section(_("Choices"), dico["choices"]))
|
|
||||||
if "default" in dico and dico.get("display_default", True):
|
|
||||||
second_col.append(self.section(_("Default"), dico["default"]))
|
|
||||||
if "examples" in dico:
|
|
||||||
examples = dico["examples"]
|
|
||||||
if len(examples) == 1:
|
|
||||||
second_col.append(self.section(_("Example"), examples[0]))
|
|
||||||
else:
|
|
||||||
second_col.append(self.section(_("Examples"), examples))
|
|
||||||
second_col.extend(calculated_properties)
|
|
||||||
self.columns(second_col)
|
|
||||||
return second_col
|
|
||||||
|
|
||||||
# OTHERs
|
|
||||||
def property_to_string(self, dico: dict, calculated_properties: list) -> str:
|
|
||||||
"""Transform properties to string"""
|
|
||||||
properties = []
|
|
||||||
for prop in dico.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)
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{}
|
|
||||||
|
|
@ -6,15 +6,15 @@
|
||||||
_version: '1.1'
|
_version: '1.1'
|
||||||
version: # a variable
|
version: # a variable
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.version** +
|
**rougail.version** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
A variable.
|
A variable.
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"version": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.version"], "names": ["version"], "descriptions": ["A variable."]}}}}
|
|
||||||
|
|
@ -9,9 +9,10 @@ include_toc: true
|
||||||
_version: '1.1'
|
_version: '1.1'
|
||||||
version: # a variable
|
version: # a variable
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.version**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
| **rougail.version**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
# dictionaries/rougail/00-base.yml
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
---
|
|
||||||
_version: '1.1'
|
|
||||||
version: # a variable
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.version[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m A variable.
|
|
||||||
|
|
||||||
|
|
@ -6,15 +6,15 @@
|
||||||
version: '1.0'
|
version: '1.0'
|
||||||
empty:
|
empty:
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.empty** +
|
**rougail.empty** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
Empty.
|
Empty.
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"empty": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.empty"], "names": ["empty"]}}}}
|
|
||||||
|
|
@ -9,9 +9,10 @@ include_toc: true
|
||||||
version: '1.0'
|
version: '1.0'
|
||||||
empty:
|
empty:
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.empty**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | Empty. |
|
| **rougail.empty**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | Empty. |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,18 +0,0 @@
|
||||||
# dictionaries/rougail/00-base.yml
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
---
|
|
||||||
version: '1.0'
|
|
||||||
empty:
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.empty[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m Empty.
|
|
||||||
|
|
||||||
|
|
@ -13,22 +13,21 @@ var2:
|
||||||
{{ _.var1 }}
|
{{ _.var1 }}
|
||||||
description: the value of var1
|
description: the value of var1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
||||||
A first variable. +
|
A first variable. +
|
||||||
**Default**: no
|
**Default**: no
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
||||||
A second variable. +
|
A second variable. +
|
||||||
**Default**: the value of var1.
|
**Default**: the value of var1.
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": "no", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["A first variable."]}, "var2": {"type": "variable", "default": "the value of var1.", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["A second variable."], "multiple": true}}}}
|
|
||||||
|
|
@ -16,10 +16,11 @@ var2:
|
||||||
{{ _.var1 }}
|
{{ _.var1 }}
|
||||||
description: the value of var1
|
description: the value of var1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Default**: no |
|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Default**: no |
|
||||||
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: the value of var1. |
|
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: the value of var1. |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A first variable.
|
|
||||||
[1mDefault[0m: no
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m A second variable.
|
|
||||||
[1mDefault[0m: the value of var1.
|
|
||||||
|
|
||||||
|
|
@ -18,15 +18,14 @@ var2:
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
description: the value of _.var1
|
description: the value of _.var1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
||||||
A first variable. +
|
A first variable. +
|
||||||
**Default**:
|
**Default**:
|
||||||
|
|
||||||
|
|
@ -34,10 +33,10 @@ A first variable. +
|
||||||
* yes
|
* yes
|
||||||
* maybe
|
* maybe
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
||||||
A second variable. +
|
A second variable. +
|
||||||
**Default**: the value of _.var1.
|
**Default**: the value of _.var1.
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": ["no", "yes", "maybe"], "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["A first variable."], "multiple": true}, "var2": {"type": "variable", "default": "the value of _.var1.", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["A second variable."], "multiple": true}}}}
|
|
||||||
|
|
@ -21,10 +21,11 @@ var2:
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
description: the value of _.var1
|
description: the value of _.var1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A first variable.<br/>**Default**: <br/>- no<br/>- yes<br/>- maybe |
|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A first variable.<br/>**Default**: <br/>- no<br/>- yes<br/>- maybe |
|
||||||
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: the value of _.var1. |
|
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: the value of _.var1. |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,39 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m A first variable.
|
|
||||||
[1mDefault[0m:
|
|
||||||
|
|
||||||
|
|
||||||
[1;33m • [0mno
|
|
||||||
[1;33m • [0myes
|
|
||||||
[1;33m • [0mmaybe
|
|
||||||
[1;33m [0m| | [1mrougail.var2[0m [1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m
|
|
||||||
[1;33m [0m| A second variable. [1mDefault[0m: the value of _.var1.
|
|
||||||
[1;33m [0m|
|
|
||||||
|
|
@ -18,23 +18,22 @@ var2:
|
||||||
type: variable
|
type: variable
|
||||||
variable: _.var1
|
variable: _.var1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `basic` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `basic` `mandatory` `unique` `multiple` |
|
||||||
A first variable. +
|
A first variable. +
|
||||||
**Validator**: the domain name can be an IP
|
**Validator**: the domain name can be an IP
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` `unique` `multiple` |
|
||||||
A second variable. +
|
A second variable. +
|
||||||
**Validator**: the domain name can be an IP +
|
**Validator**: the domain name can be an IP +
|
||||||
**Default**: the value of the variable "rougail.var1".
|
**Default**: the value of the variable "rougail.var1".
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"var1": {"type": "variable", "properties": [{"type": "type", "name": "domainname"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "validators": ["the domain name can be an IP"], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["A first variable."], "multiple": true}, "var2": {"type": "variable", "default": "the value of the variable \"rougail.var1\".", "properties": [{"type": "type", "name": "domainname"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "validators": ["the domain name can be an IP"], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["A second variable."], "multiple": true}}}}
|
|
||||||
|
|
@ -21,10 +21,11 @@ var2:
|
||||||
type: variable
|
type: variable
|
||||||
variable: _.var1
|
variable: _.var1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var1**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `unique` `multiple` | A first variable.<br/>**Validator**: the domain name can be an IP |
|
| **rougail.var1**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` `unique` `multiple` | A first variable.<br/>**Validator**: the domain name can be an IP |
|
||||||
| **rougail.var2**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Validator**: the domain name can be an IP<br/>**Default**: the value of the variable "rougail.var1". |
|
| **rougail.var2**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Validator**: the domain name can be an IP<br/>**Default**: the value of the variable "rougail.var1". |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,39 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mdomainname[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m A first variable.
|
|
||||||
[1mValidator[0m: the domain name can be an IP
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mdomainname[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m A second variable.
|
|
||||||
[1mValidator[0m: the domain name can be an IP
|
|
||||||
[1mDefault[0m: the value of the variable "rougail.var1".
|
|
||||||
|
|
||||||
|
|
@ -16,20 +16,19 @@ version: '1.0'
|
||||||
var2:
|
var2:
|
||||||
description: a variable
|
description: a variable
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
A variable.
|
A variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
A variable.
|
A variable.
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"var1": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["A variable."]}, "var2": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["A variable."]}}}}
|
|
||||||
|
|
@ -18,10 +18,11 @@ version: '1.0'
|
||||||
var2:
|
var2:
|
||||||
description: a variable
|
description: a variable
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
||||||
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
| **rougail.var2**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | A variable. |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,30 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m A variable.
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m A variable.
|
|
||||||
|
|
||||||
|
|
@ -8,16 +8,16 @@ without_type:
|
||||||
description: a variable
|
description: a variable
|
||||||
default: non
|
default: non
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.without_type** +
|
**rougail.without_type** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
||||||
A variable. +
|
A variable. +
|
||||||
**Default**: non
|
**Default**: non
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"without_type": {"type": "variable", "default": "non", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.without_type"], "names": ["without_type"], "descriptions": ["A variable."]}}}}
|
|
||||||
|
|
@ -11,9 +11,10 @@ without_type:
|
||||||
description: a variable
|
description: a variable
|
||||||
default: non
|
default: non
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.without_type**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A variable.<br/>**Default**: non |
|
| **rougail.without_type**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A variable.<br/>**Default**: non |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
||||||
# dictionaries/rougail/00-base.yml
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
---
|
|
||||||
version: '1.0'
|
|
||||||
without_type:
|
|
||||||
description: a variable
|
|
||||||
default: non
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.without_type[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A variable.
|
|
||||||
[1mDefault[0m: non
|
|
||||||
|
|
||||||
|
|
@ -21,46 +21,41 @@ var6:
|
||||||
type: boolean
|
type: boolean
|
||||||
default: false
|
default: false
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The first variable. +
|
The first variable. +
|
||||||
**Default**: true
|
**Default**: True
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The second variable. +
|
The second variable. +
|
||||||
**Default**: true
|
**Default**: True
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var3** +
|
**rougail.var3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The third variable. +
|
The third variable. +
|
||||||
**Default**: true
|
**Default**: True
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var4** +
|
**rougail.var4** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The forth variable. +
|
The forth variable. +
|
||||||
**Default**: false
|
**Default**: False
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var5** +
|
**rougail.var5** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The fifth variable. +
|
The fifth variable. +
|
||||||
**Default**: false
|
**Default**: False
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var6** +
|
**rougail.var6** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` `mandatory` |
|
||||||
The sixth variable. +
|
The sixth variable. +
|
||||||
**Default**: false
|
**Default**: False
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": true, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["The first variable."]}, "var2": {"type": "variable", "default": true, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["The second variable."]}, "var3": {"type": "variable", "default": true, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var3"], "names": ["var3"], "descriptions": ["The third variable."]}, "var4": {"type": "variable", "default": false, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var4"], "names": ["var4"], "descriptions": ["The forth variable."]}, "var5": {"type": "variable", "default": false, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var5"], "names": ["var5"], "descriptions": ["The fifth variable."]}, "var6": {"type": "variable", "default": false, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var6"], "names": ["var6"], "descriptions": ["The sixth variable."]}}}}
|
|
||||||
|
|
@ -24,14 +24,15 @@ var6:
|
||||||
type: boolean
|
type: boolean
|
||||||
default: false
|
default: false
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var1**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The first variable.<br/>**Default**: true |
|
| **rougail.var1**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The first variable.<br/>**Default**: True |
|
||||||
| **rougail.var2**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The second variable.<br/>**Default**: true |
|
| **rougail.var2**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The second variable.<br/>**Default**: True |
|
||||||
| **rougail.var3**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The third variable.<br/>**Default**: true |
|
| **rougail.var3**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The third variable.<br/>**Default**: True |
|
||||||
| **rougail.var4**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The forth variable.<br/>**Default**: false |
|
| **rougail.var4**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The forth variable.<br/>**Default**: False |
|
||||||
| **rougail.var5**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: false |
|
| **rougail.var5**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: False |
|
||||||
| **rougail.var6**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: false |
|
| **rougail.var6**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: False |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mDefault[0m: true
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The second variable.
|
|
||||||
[1mDefault[0m: true
|
|
||||||
[1mrougail.var3[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The third variable.
|
|
||||||
[1mDefault[0m: true
|
|
||||||
[1mrougail.var4[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The forth variable.
|
|
||||||
[1mDefault[0m: false
|
|
||||||
[1mrougail.var5[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The fifth variable.
|
|
||||||
[1mDefault[0m: false
|
|
||||||
[1mrougail.var6[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The sixth variable.
|
|
||||||
[1mDefault[0m: false
|
|
||||||
|
|
||||||
|
|
@ -9,16 +9,16 @@ variable:
|
||||||
type: boolean
|
type: boolean
|
||||||
mandatory: false
|
mandatory: false
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable** +
|
**rougail.variable** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[boolean]` `standard` |
|
||||||
A variable. +
|
A variable. +
|
||||||
**Default**: true
|
**Default**: True
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"variable": {"type": "variable", "default": true, "properties": [{"type": "type", "name": "boolean"}, {"type": "mode", "name": "standard"}], "paths": ["rougail.variable"], "names": ["variable"], "descriptions": ["A variable."]}}}}
|
|
||||||
|
|
@ -12,9 +12,10 @@ variable:
|
||||||
type: boolean
|
type: boolean
|
||||||
mandatory: false
|
mandatory: false
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.variable**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | A variable.<br/>**Default**: true |
|
| **rougail.variable**<br/>[`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` | A variable.<br/>**Default**: True |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,23 +0,0 @@
|
||||||
# dictionaries/rougail/00-base.yml
|
|
||||||
|
|
||||||
```yaml
|
|
||||||
---
|
|
||||||
version: '1.1'
|
|
||||||
variable:
|
|
||||||
description: a variable
|
|
||||||
type: boolean
|
|
||||||
mandatory: false
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.variable[0m
|
|
||||||
[1;36;40mboolean[0m [1;36;40mstandard[0m A variable.
|
|
||||||
[1mDefault[0m: true
|
|
||||||
|
|
||||||
|
|
@ -45,15 +45,14 @@ var6:
|
||||||
- 3
|
- 3
|
||||||
default: 1
|
default: 1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `mandatory` |
|
||||||
The first variable. +
|
The first variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -61,9 +60,8 @@ The first variable. +
|
||||||
* b
|
* b
|
||||||
* c
|
* c
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `basic` `mandatory` |
|
||||||
The second variable. +
|
The second variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -71,9 +69,8 @@ The second variable. +
|
||||||
* b
|
* b
|
||||||
* c
|
* c
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var3** +
|
**rougail.var3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
|
||||||
The third variable. +
|
The third variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -82,9 +79,8 @@ The third variable. +
|
||||||
* c
|
* c
|
||||||
* null
|
* null
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var4** +
|
**rougail.var4** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` |
|
||||||
The forth variable. +
|
The forth variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -92,9 +88,8 @@ The forth variable. +
|
||||||
* b
|
* b
|
||||||
* c
|
* c
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var5** +
|
**rougail.var5** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
||||||
The fifth variable. +
|
The fifth variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -102,9 +97,8 @@ The fifth variable. +
|
||||||
* b
|
* b
|
||||||
* c
|
* c
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var6** +
|
**rougail.var6** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
||||||
The sixth variable. +
|
The sixth variable. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -113,3 +107,4 @@ The sixth variable. +
|
||||||
* 3
|
* 3
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"var1": {"type": "variable", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "choices": ["a", "b", "c"], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["The first variable."]}, "var2": {"type": "variable", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "choices": ["a", "b", "c"], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["The second variable."]}, "var3": {"type": "variable", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}], "choices": ["a", "b", "c", null], "paths": ["rougail.var3"], "names": ["var3"], "descriptions": ["The third variable."]}, "var4": {"type": "variable", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}], "choices": [null, "b", "c"], "paths": ["rougail.var4"], "names": ["var4"], "descriptions": ["The forth variable."]}, "var5": {"type": "variable", "default": "a", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "display_default": false, "choices": ["a ← (default)", "b", "c"], "paths": ["rougail.var5"], "names": ["var5"], "descriptions": ["The fifth variable."]}, "var6": {"type": "variable", "default": 1, "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "display_default": false, "choices": ["1 ← (default)", 2, 3], "paths": ["rougail.var6"], "names": ["var6"], "descriptions": ["The sixth variable."]}}}}
|
|
||||||
|
|
@ -48,7 +48,7 @@ var6:
|
||||||
- 3
|
- 3
|
||||||
default: 1
|
default: 1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
|
@ -59,3 +59,4 @@ var6:
|
||||||
| **rougail.var5**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Choices**: <br/>- a ← (default)<br/>- b<br/>- c |
|
| **rougail.var5**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Choices**: <br/>- a ← (default)<br/>- b<br/>- c |
|
||||||
| **rougail.var6**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Choices**: <br/>- 1 ← (default)<br/>- 2<br/>- 3 |
|
| **rougail.var6**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Choices**: <br/>- 1 ← (default)<br/>- 2<br/>- 3 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,84 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mchoice[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mChoices[0m:
|
|
||||||
|
|
||||||
|
|
||||||
[1;33m • [0ma
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc | | [1mrougail.var2[0m [1;36;40mchoice[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m
|
|
||||||
[1;33m [0m| The second variable. [1mChoices[0m:
|
|
||||||
[1;33m • [0ma
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc | | [1mrougail.var3[0m [1;36;40mchoice[0m [1;36;40mstandard[0m
|
|
||||||
[1;33m [0m| The third variable. [1mChoices[0m:
|
|
||||||
[1;33m • [0ma
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc
|
|
||||||
[1;33m • [0mnull | | [1mrougail.var4[0m [1;36;40mchoice[0m [1;36;40mstandard[0m
|
|
||||||
[1;33m [0m| The forth variable. [1mChoices[0m:
|
|
||||||
[1;33m • [0mnull
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc | | [1mrougail.var5[0m [1;36;40mchoice[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m
|
|
||||||
[1;33m [0m| The fifth variable. [1mChoices[0m:
|
|
||||||
[1;33m • [0ma ← (default)
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc | | [1mrougail.var6[0m [1;36;40mchoice[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m
|
|
||||||
[1;33m [0m| The sixth variable. [1mChoices[0m:
|
|
||||||
[1;33m • [0m1 ← (default)
|
|
||||||
[1;33m • [0m2
|
|
||||||
[1;33m • [0m3 |
|
|
||||||
|
|
@ -15,17 +15,17 @@ var:
|
||||||
return_type: number
|
return_type: number
|
||||||
description: choices is 0 to 9
|
description: choices is 0 to 9
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var** +
|
**rougail.var** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
||||||
A variable. +
|
A variable. +
|
||||||
**Choices**: choices is 0 to 9. +
|
**Choices**: choices is 0 to 9. +
|
||||||
**Default**: 9
|
**Default**: 9
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var": {"type": "variable", "default": 9, "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "choices": "choices is 0 to 9.", "paths": ["rougail.var"], "names": ["var"], "descriptions": ["A variable."]}}}}
|
|
||||||
|
|
@ -18,9 +18,10 @@ var:
|
||||||
return_type: number
|
return_type: number
|
||||||
description: choices is 0 to 9
|
description: choices is 0 to 9
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A variable.<br/>**Choices**: choices is 0 to 9.<br/>**Default**: 9 |
|
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A variable.<br/>**Choices**: choices is 0 to 9.<br/>**Default**: 9 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,31 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var[0m
|
|
||||||
[1;36;40mchoice[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A variable.
|
|
||||||
[1mChoices[0m: choices is 0 to 9.
|
|
||||||
[1mDefault[0m: 9
|
|
||||||
|
|
||||||
|
|
@ -14,15 +14,14 @@ var2:
|
||||||
choices:
|
choices:
|
||||||
variable: _.var1
|
variable: _.var1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` `unique` `multiple` |
|
||||||
A second variable. +
|
A second variable. +
|
||||||
**Default**:
|
**Default**:
|
||||||
|
|
||||||
|
|
@ -30,11 +29,11 @@ A second variable. +
|
||||||
* b
|
* b
|
||||||
* c
|
* c
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
||||||
A first variable. +
|
A first variable. +
|
||||||
**Choices**: the value of the variable "rougail.var1". +
|
**Choices**: the value of the variable "rougail.var1". +
|
||||||
**Default**: a
|
**Default**: a
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": ["a", "b", "c"], "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}, {"type": "property", "name": "unique"}, {"type": "multiple", "name": "multiple"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["A second variable."], "multiple": true}, "var2": {"type": "variable", "default": "a", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "choices": "the value of the variable \"rougail.var1\".", "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["A first variable."]}}}}
|
|
||||||
|
|
@ -17,10 +17,11 @@ var2:
|
||||||
choices:
|
choices:
|
||||||
variable: _.var1
|
variable: _.var1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
|
| Variable | Description |
|
||||||
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: <br/>- a<br/>- b<br/>- c |
|
||||||
|
| **rougail.var2**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Choices**: the value of the variable "rougail.var1".<br/>**Default**: a |
|
||||||
|
|
||||||
| Variable | Description |
|
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|
||||||
| **rougail.var1**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` `unique` `multiple` | A second variable.<br/>**Default**: <br/>- a<br/>- b<br/>- c |
|
|
||||||
| **rougail.var2**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Choices**: the value of the variable "rougail.var1".<br/>**Default**: a |
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,35 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m [1;36;40munique[0m [1;36;40mmultiple[0m A second variable.
|
|
||||||
[1mDefault[0m:
|
|
||||||
|
|
||||||
|
|
||||||
[1;33m • [0ma
|
|
||||||
[1;33m • [0mb
|
|
||||||
[1;33m • [0mc
|
|
||||||
[1;33m [0m| | [1mrougail.var2[0m [1;36;40mchoice[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m
|
|
||||||
[1;33m [0m| A first variable. [1mChoices[0m: the value of the variable "rougail.var1". [1mDefault[0m: a
|
|
||||||
[1;33m [0m|
|
|
||||||
|
|
@ -12,21 +12,20 @@ custom2:
|
||||||
type: custom
|
type: custom
|
||||||
default: value
|
default: value
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.custom1** +
|
**rougail.custom1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `basic` `mandatory` |
|
||||||
The first variable.
|
The first variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.custom2** +
|
**rougail.custom2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[custom]` `standard` `mandatory` |
|
||||||
The seconf variable. +
|
The seconf variable. +
|
||||||
**Default**: value
|
**Default**: value
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"custom1": {"type": "variable", "properties": [{"type": "type", "name": "custom"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.custom1"], "names": ["custom1"], "descriptions": ["The first variable."]}, "custom2": {"type": "variable", "default": "value", "properties": [{"type": "type", "name": "custom"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.custom2"], "names": ["custom2"], "descriptions": ["The seconf variable."]}}}}
|
|
||||||
|
|
@ -15,10 +15,11 @@ custom2:
|
||||||
type: custom
|
type: custom
|
||||||
default: value
|
default: value
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.custom1**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | The first variable. |
|
| **rougail.custom1**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `basic` `mandatory` | The first variable. |
|
||||||
| **rougail.custom2**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The seconf variable.<br/>**Default**: value |
|
| **rougail.custom2**<br/>[`custom`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The seconf variable.<br/>**Default**: value |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,29 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.custom1[0m
|
|
||||||
[1;36;40mcustom[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mrougail.custom2[0m
|
|
||||||
[1;36;40mcustom[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The seconf variable.
|
|
||||||
[1mDefault[0m: value
|
|
||||||
|
|
||||||
|
|
@ -9,16 +9,16 @@ variable:
|
||||||
type: domainname
|
type: domainname
|
||||||
default: my.domain.name
|
default: my.domain.name
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable** +
|
**rougail.variable** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` |
|
||||||
A domain name variable. +
|
A domain name variable. +
|
||||||
**Default**: my.domain.name
|
**Default**: my.domain.name
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"variable": {"type": "variable", "default": "my.domain.name", "properties": [{"type": "type", "name": "domainname"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.variable"], "names": ["variable"], "descriptions": ["A domain name variable."]}}}}
|
|
||||||
|
|
@ -12,9 +12,10 @@ variable:
|
||||||
type: domainname
|
type: domainname
|
||||||
default: my.domain.name
|
default: my.domain.name
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A domain name variable.<br/>**Default**: my.domain.name |
|
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A domain name variable.<br/>**Default**: my.domain.name |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.variable[0m
|
|
||||||
[1;36;40mdomainname[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A domain name variable.
|
|
||||||
[1mDefault[0m: my.domain.name
|
|
||||||
|
|
||||||
|
|
@ -11,17 +11,17 @@ variable:
|
||||||
params:
|
params:
|
||||||
allow_ip: true
|
allow_ip: true
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable** +
|
**rougail.variable** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[domainname]` `standard` `mandatory` |
|
||||||
A domain name variable. +
|
A domain name variable. +
|
||||||
**Validator**: the domain name can be an IP +
|
**Validator**: the domain name can be an IP +
|
||||||
**Default**: my.domain.name
|
**Default**: my.domain.name
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"variable": {"type": "variable", "default": "my.domain.name", "properties": [{"type": "type", "name": "domainname"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "validators": ["the domain name can be an IP"], "paths": ["rougail.variable"], "names": ["variable"], "descriptions": ["A domain name variable."]}}}}
|
|
||||||
|
|
@ -14,9 +14,10 @@ variable:
|
||||||
params:
|
params:
|
||||||
allow_ip: true
|
allow_ip: true
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A domain name variable.<br/>**Validator**: the domain name can be an IP<br/>**Default**: my.domain.name |
|
| **rougail.variable**<br/>[`domainname`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A domain name variable.<br/>**Validator**: the domain name can be an IP<br/>**Default**: my.domain.name |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,27 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.variable[0m
|
|
||||||
[1;36;40mdomainname[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A domain name variable.
|
|
||||||
[1mValidator[0m: the domain name can be an IP
|
|
||||||
[1mDefault[0m: my.domain.name
|
|
||||||
|
|
||||||
|
|
@ -21,46 +21,41 @@ var6:
|
||||||
type: float
|
type: float
|
||||||
default: 10.1
|
default: 10.1
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The first variable. +
|
The first variable. +
|
||||||
**Default**: 0.0
|
**Default**: 0.0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The second variable. +
|
The second variable. +
|
||||||
**Default**: 0.0
|
**Default**: 0.0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var3** +
|
**rougail.var3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The third variable. +
|
The third variable. +
|
||||||
**Default**: 0.0
|
**Default**: 0.0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var4** +
|
**rougail.var4** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The forth variable. +
|
The forth variable. +
|
||||||
**Default**: 10.1
|
**Default**: 10.1
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var5** +
|
**rougail.var5** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The fifth variable. +
|
The fifth variable. +
|
||||||
**Default**: 10.1
|
**Default**: 10.1
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var6** +
|
**rougail.var6** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[float]` `standard` `mandatory` |
|
||||||
The sixth variable. +
|
The sixth variable. +
|
||||||
**Default**: 10.1
|
**Default**: 10.1
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": 0.0, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["The first variable."]}, "var2": {"type": "variable", "default": 0.0, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["The second variable."]}, "var3": {"type": "variable", "default": 0.0, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var3"], "names": ["var3"], "descriptions": ["The third variable."]}, "var4": {"type": "variable", "default": 10.1, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var4"], "names": ["var4"], "descriptions": ["The forth variable."]}, "var5": {"type": "variable", "default": 10.1, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var5"], "names": ["var5"], "descriptions": ["The fifth variable."]}, "var6": {"type": "variable", "default": 10.1, "properties": [{"type": "type", "name": "float"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var6"], "names": ["var6"], "descriptions": ["The sixth variable."]}}}}
|
|
||||||
|
|
@ -24,7 +24,7 @@ var6:
|
||||||
type: float
|
type: float
|
||||||
default: 10.1
|
default: 10.1
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
|
@ -35,3 +35,4 @@ var6:
|
||||||
| **rougail.var5**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: 10.1 |
|
| **rougail.var5**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: 10.1 |
|
||||||
| **rougail.var6**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: 10.1 |
|
| **rougail.var6**<br/>[`float`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: 10.1 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mDefault[0m: 0.0
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The second variable.
|
|
||||||
[1mDefault[0m: 0.0
|
|
||||||
[1mrougail.var3[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The third variable.
|
|
||||||
[1mDefault[0m: 0.0
|
|
||||||
[1mrougail.var4[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The forth variable.
|
|
||||||
[1mDefault[0m: 10.1
|
|
||||||
[1mrougail.var5[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The fifth variable.
|
|
||||||
[1mDefault[0m: 10.1
|
|
||||||
[1mrougail.var6[0m
|
|
||||||
[1;36;40mfloat[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The sixth variable.
|
|
||||||
[1mDefault[0m: 10.1
|
|
||||||
|
|
||||||
|
|
@ -21,46 +21,41 @@ var6:
|
||||||
type: number
|
type: number
|
||||||
default: 10
|
default: 10
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
The first variable. +
|
The first variable. +
|
||||||
**Default**: 0
|
**Default**: 0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
The second variable. +
|
The second variable. +
|
||||||
**Default**: 0
|
**Default**: 0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var3** +
|
**rougail.var3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
The third variable. +
|
The third variable. +
|
||||||
**Default**: 0
|
**Default**: 0
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var4** +
|
**rougail.var4** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
This forth variable. +
|
This forth variable. +
|
||||||
**Default**: 10
|
**Default**: 10
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var5** +
|
**rougail.var5** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
The fifth variable. +
|
The fifth variable. +
|
||||||
**Default**: 10
|
**Default**: 10
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var6** +
|
**rougail.var6** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[number]` `standard` `mandatory` |
|
||||||
The sixth variable. +
|
The sixth variable. +
|
||||||
**Default**: 10
|
**Default**: 10
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var1": {"type": "variable", "default": 0, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["The first variable."]}, "var2": {"type": "variable", "default": 0, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["The second variable."]}, "var3": {"type": "variable", "default": 0, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var3"], "names": ["var3"], "descriptions": ["The third variable."]}, "var4": {"type": "variable", "default": 10, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var4"], "names": ["var4"], "descriptions": ["This forth variable."]}, "var5": {"type": "variable", "default": 10, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var5"], "names": ["var5"], "descriptions": ["The fifth variable."]}, "var6": {"type": "variable", "default": 10, "properties": [{"type": "type", "name": "number"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var6"], "names": ["var6"], "descriptions": ["The sixth variable."]}}}}
|
|
||||||
|
|
@ -24,7 +24,7 @@ var6:
|
||||||
type: number
|
type: number
|
||||||
default: 10
|
default: 10
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
|
@ -35,3 +35,4 @@ var6:
|
||||||
| **rougail.var5**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: 10 |
|
| **rougail.var5**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: 10 |
|
||||||
| **rougail.var6**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: 10 |
|
| **rougail.var6**<br/>[`number`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: 10 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mDefault[0m: 0
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The second variable.
|
|
||||||
[1mDefault[0m: 0
|
|
||||||
[1mrougail.var3[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The third variable.
|
|
||||||
[1mDefault[0m: 0
|
|
||||||
[1mrougail.var4[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m This forth variable.
|
|
||||||
[1mDefault[0m: 10
|
|
||||||
[1mrougail.var5[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The fifth variable.
|
|
||||||
[1mDefault[0m: 10
|
|
||||||
[1mrougail.var6[0m
|
|
||||||
[1;36;40mnumber[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The sixth variable.
|
|
||||||
[1mDefault[0m: 10
|
|
||||||
|
|
||||||
|
|
@ -16,27 +16,25 @@ variable3:
|
||||||
type: port
|
type: port
|
||||||
default: 8080
|
default: 8080
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable1** +
|
**rougail.variable1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `basic` `mandatory` |
|
||||||
A port variable.
|
A port variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable2** +
|
**rougail.variable2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `mandatory` |
|
||||||
A port variable with default value. +
|
A port variable with default value. +
|
||||||
**Default**: 8080
|
**Default**: 8080
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.variable3** +
|
**rougail.variable3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[port]` `standard` `mandatory` |
|
||||||
A port variable with integer default value. +
|
A port variable with integer default value. +
|
||||||
**Default**: 8080
|
**Default**: 8080
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"variable1": {"type": "variable", "properties": [{"type": "type", "name": "port"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.variable1"], "names": ["variable1"], "descriptions": ["A port variable."]}, "variable2": {"type": "variable", "default": "8080", "properties": [{"type": "type", "name": "port"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.variable2"], "names": ["variable2"], "descriptions": ["A port variable with default value."]}, "variable3": {"type": "variable", "default": "8080", "properties": [{"type": "type", "name": "port"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.variable3"], "names": ["variable3"], "descriptions": ["A port variable with integer default value."]}}}}
|
|
||||||
|
|
@ -19,7 +19,7 @@ variable3:
|
||||||
type: port
|
type: port
|
||||||
default: 8080
|
default: 8080
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
|
@ -27,3 +27,4 @@ variable3:
|
||||||
| **rougail.variable2**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A port variable with default value.<br/>**Default**: 8080 |
|
| **rougail.variable2**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A port variable with default value.<br/>**Default**: 8080 |
|
||||||
| **rougail.variable3**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A port variable with integer default value.<br/>**Default**: 8080 |
|
| **rougail.variable3**<br/>[`port`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A port variable with integer default value.<br/>**Default**: 8080 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,38 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.variable1[0m
|
|
||||||
[1;36;40mport[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m A port variable.
|
|
||||||
[1mrougail.variable2[0m
|
|
||||||
[1;36;40mport[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A port variable with default value.
|
|
||||||
[1mDefault[0m: 8080
|
|
||||||
[1mrougail.variable3[0m
|
|
||||||
[1;36;40mport[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A port variable with integer default value.
|
|
||||||
[1mDefault[0m: 8080
|
|
||||||
|
|
||||||
|
|
@ -12,21 +12,17 @@ var:
|
||||||
- '#b1b1b1'
|
- '#b1b1b1'
|
||||||
- '#b2b2b2'
|
- '#b2b2b2'
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var** +
|
**rougail.var** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[regexp]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[regexp]` `standard` `mandatory` |
|
||||||
A first variable. +
|
A first variable. +
|
||||||
**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$" +
|
|
||||||
**Default**: #a1a1a1 +
|
**Default**: #a1a1a1 +
|
||||||
**Examples**:
|
**Example**: #b1b1b1
|
||||||
|
|
||||||
* '#b1b1b1'
|
|
||||||
* '#b2b2b2'
|
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var": {"type": "variable", "default": "#a1a1a1", "properties": [{"type": "type", "name": "regexp"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "validators": ["text based with regular expressions \"^#(?:[0-9a-f]{3}){1,2}$\""], "paths": ["rougail.var"], "names": ["var"], "descriptions": ["A first variable."], "examples": ["#b1b1b1", "#b2b2b2"]}}}}
|
|
||||||
|
|
@ -15,9 +15,10 @@ var:
|
||||||
- '#b1b1b1'
|
- '#b1b1b1'
|
||||||
- '#b2b2b2'
|
- '#b2b2b2'
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Validator**: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"<br/>**Default**: #a1a1a1<br/>**Examples**: <br/>- #b1b1b1<br/>- #b2b2b2 |
|
| **rougail.var**<br/>[`regexp`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A first variable.<br/>**Default**: #a1a1a1<br/>**Example**: #b1b1b1 |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,34 +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'
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var[0m
|
|
||||||
[1;36;40mregexp[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A first variable.
|
|
||||||
[1mValidator[0m: text based with regular expressions "^#(?:[0-9a-f]{3}){1,2}$"
|
|
||||||
[1mDefault[0m: #a1a1a1
|
|
||||||
[1mExamples[0m:
|
|
||||||
|
|
||||||
|
|
||||||
[1;33m • [0m#b1b1b1
|
|
||||||
[1;33m • [0m#b2b2b2
|
|
||||||
[1;33m [0m|
|
|
||||||
|
|
@ -20,43 +20,38 @@ var6:
|
||||||
type: string
|
type: string
|
||||||
default: value
|
default: value
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var1** +
|
**rougail.var1** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
The first variable.
|
The first variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var2** +
|
**rougail.var2** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
The second variable.
|
The second variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var3** +
|
**rougail.var3** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `basic` `mandatory` |
|
||||||
The third variable.
|
The third variable.
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var4** +
|
**rougail.var4** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
||||||
The forth variable. +
|
The forth variable. +
|
||||||
**Default**: value
|
**Default**: value
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var5** +
|
**rougail.var5** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
||||||
The fifth variable. +
|
The fifth variable. +
|
||||||
**Default**: value
|
**Default**: value
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var6** +
|
**rougail.var6** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[string]` `standard` `mandatory` |
|
||||||
The sixth variable. +
|
The sixth variable. +
|
||||||
**Default**: value
|
**Default**: value
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "basic"}]}, "children": {"var1": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var1"], "names": ["var1"], "descriptions": ["The first variable."]}, "var2": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var2"], "names": ["var2"], "descriptions": ["The second variable."]}, "var3": {"type": "variable", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "basic"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var3"], "names": ["var3"], "descriptions": ["The third variable."]}, "var4": {"type": "variable", "default": "value", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var4"], "names": ["var4"], "descriptions": ["The forth variable."]}, "var5": {"type": "variable", "default": "value", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var5"], "names": ["var5"], "descriptions": ["The fifth variable."]}, "var6": {"type": "variable", "default": "value", "properties": [{"type": "type", "name": "string"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "paths": ["rougail.var6"], "names": ["var6"], "descriptions": ["The sixth variable."]}}}}
|
|
||||||
|
|
@ -23,7 +23,7 @@ var6:
|
||||||
type: string
|
type: string
|
||||||
default: value
|
default: value
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
|
@ -34,3 +34,4 @@ var6:
|
||||||
| **rougail.var5**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: value |
|
| **rougail.var5**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The fifth variable.<br/>**Default**: value |
|
||||||
| **rougail.var6**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: value |
|
| **rougail.var6**<br/>[`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | The sixth variable.<br/>**Default**: value |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,53 +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
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var1[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m The first variable.
|
|
||||||
[1mrougail.var2[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m The second variable.
|
|
||||||
[1mrougail.var3[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mbasic[0m [1;36;40mmandatory[0m The third variable.
|
|
||||||
[1mrougail.var4[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The forth variable.
|
|
||||||
[1mDefault[0m: value
|
|
||||||
[1mrougail.var5[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The fifth variable.
|
|
||||||
[1mDefault[0m: value
|
|
||||||
[1mrougail.var6[0m
|
|
||||||
[1;36;40mstring[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m The sixth variable.
|
|
||||||
[1mDefault[0m: value
|
|
||||||
|
|
||||||
|
|
@ -13,15 +13,14 @@ var:
|
||||||
- quote"
|
- quote"
|
||||||
- quote"'
|
- quote"'
|
||||||
----
|
----
|
||||||
== Variables for "Rougail"
|
== Variables for "rougail"
|
||||||
|
|
||||||
[cols="1a,1a"]
|
[cols="1a,1a"]
|
||||||
|====
|
|====
|
||||||
| Variable | Description
|
| Variable | Description
|
||||||
|
|
|
|
||||||
|
|
||||||
**rougail.var** +
|
**rougail.var** +
|
||||||
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
`https://rougail.readthedocs.io/en/latest/variable.html#variables-types[choice]` `standard` `mandatory` |
|
||||||
A choice. +
|
A choice. +
|
||||||
**Choices**:
|
**Choices**:
|
||||||
|
|
||||||
|
|
@ -30,3 +29,4 @@ A choice. +
|
||||||
* quote"'
|
* quote"'
|
||||||
|====
|
|====
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1 +0,0 @@
|
||||||
{"rougail": {"type": "namespace", "informations": {"paths": ["rougail"], "names": ["rougail"], "description": "Rougail", "properties": [{"type": "mode", "name": "standard"}]}, "children": {"var": {"type": "variable", "default": "quote'", "properties": [{"type": "type", "name": "choice"}, {"type": "mode", "name": "standard"}, {"type": "property", "name": "mandatory"}], "display_default": false, "choices": ["quote' ← (default)", "quote\"", "quote\"'"], "paths": ["rougail.var"], "names": ["var"], "descriptions": ["A choice."]}}}}
|
|
||||||
|
|
@ -16,9 +16,10 @@ var:
|
||||||
- quote"
|
- quote"
|
||||||
- quote"'
|
- quote"'
|
||||||
```
|
```
|
||||||
# Variables for "Rougail"
|
# Variables for "rougail"
|
||||||
|
|
||||||
| Variable | Description |
|
| Variable | Description |
|
||||||
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A choice.<br/>**Choices**: <br/>- quote' ← (default)<br/>- quote"<br/>- quote"' |
|
| **rougail.var**<br/>[`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `standard` `mandatory` | A choice.<br/>**Choices**: <br/>- quote' ← (default)<br/>- quote"<br/>- quote"' |
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -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"'
|
|
||||||
```
|
|
||||||
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
|
|
||||||
┃ [1mVariables for "Rougail"[0m ┃
|
|
||||||
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
[1m [0m[1mVariable [0m[1m [0m [1m [0m[1mDescription [0m[1m [0m
|
|
||||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
||||||
[1mrougail.var[0m
|
|
||||||
[1;36;40mchoice[0m [1;36;40mstandard[0m [1;36;40mmandatory[0m A choice.
|
|
||||||
[1mChoices[0m:
|
|
||||||
|
|
||||||
|
|
||||||
[1;33m • [0mquote' ← (default)
|
|
||||||
[1;33m • [0mquote"
|
|
||||||
[1;33m • [0mquote"' |
|
|
||||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue