fix: we can define structural plugin when generate documentation

This commit is contained in:
egarette@silique.fr 2025-02-17 09:20:38 +01:00
parent 85f3b9f80f
commit 70003fcbc5
5 changed files with 337 additions and 175 deletions

View file

@ -5,8 +5,8 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: \n" "Project-Id-Version: \n"
"POT-Creation-Date: 2024-12-15 16:50+0100\n" "POT-Creation-Date: 2025-02-17 09:16+0100\n"
"PO-Revision-Date: 2024-12-15 16:55+0100\n" "PO-Revision-Date: 2025-02-17 09:17+0100\n"
"Last-Translator: \n" "Last-Translator: \n"
"Language-Team: \n" "Language-Team: \n"
"Language: fr\n" "Language: fr\n"
@ -16,39 +16,39 @@ 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/annotator/family.py:143 #: src/rougail/annotator/family.py:147
msgid "default variable mode \"{0}\" is not a valid mode, valid modes are {1}" msgid "default variable mode \"{0}\" is not a valid mode, valid modes are {1}"
msgstr "" msgstr ""
"le mode d'une variable par défaut \"{0}\" n'est pas un mode valide, les " "le mode d'une variable par défaut \"{0}\" n'est pas un mode valide, les "
"modes valides sont {1}" "modes valides sont {1}"
#: src/rougail/annotator/family.py:149 #: src/rougail/annotator/family.py:153
msgid "default family mode \"{0}\" is not a valid mode, valid modes are {1}" msgid "default family mode \"{0}\" is not a valid mode, valid modes are {1}"
msgstr "" msgstr ""
"le mode d'une famille par défaut \"{0}\" n'est pas un mode valide, les modes " "le mode d'une famille par défaut \"{0}\" n'est pas un mode valide, les modes "
"valides sont {1}" "valides sont {1}"
#: src/rougail/annotator/family.py:181 #: src/rougail/annotator/family.py:185
msgid "mode \"{0}\" for \"{1}\" is not a valid mode, valid modes are {2}" msgid "mode \"{0}\" for \"{1}\" is not a valid mode, valid modes are {2}"
msgstr "" msgstr ""
"le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, les modes valides " "le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, les modes valides "
"sont {2}" "sont {2}"
#: src/rougail/annotator/family.py:185 #: src/rougail/annotator/family.py:189
msgid "mode \"{0}\" for \"{1}\" is not a valid mode, no modes are available" msgid "mode \"{0}\" for \"{1}\" is not a valid mode, no modes are available"
msgstr "" msgstr ""
"le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, aucun mode ne sont " "le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, aucun mode ne sont "
"définis" "définis"
#: src/rougail/annotator/family.py:249 #: src/rougail/annotator/family.py:253
msgid "" msgid ""
"the variable \"{0}\" is mandatory so in \"{1}\" mode but family has the " "the variable \"{0}\" is mandatory so in \"{1}\" mode but family has the "
"higher family mode \"{2}\"" "higher family mode \"{2}\""
msgstr "" msgstr ""
"la variable \"{0}\" est obligatoire, donc en mode \"{1}\", mais la " "la variable \"{0}\" est obligatoire, donc en mode \"{1}\", mais la famille a "
"famille a un mode supérieur \"{2}\"" "un mode supérieur \"{2}\""
#: src/rougail/annotator/family.py:287 #: src/rougail/annotator/family.py:291
msgid "" msgid ""
"the follower \"{0}\" is in \"{1}\" mode but leader have the higher mode " "the follower \"{0}\" is in \"{1}\" mode but leader have the higher mode "
"\"{2}\"" "\"{2}\""
@ -56,7 +56,7 @@ msgstr ""
"la variable suiveuse \"{0}\" a le mode \"{1}\" mais la variable leader a un " "la variable suiveuse \"{0}\" a le mode \"{1}\" mais la variable leader a un "
"mode supérieur \"{2}\"" "mode supérieur \"{2}\""
#: src/rougail/annotator/family.py:320 #: src/rougail/annotator/family.py:324
msgid "" msgid ""
"the family \"{0}\" is in \"{1}\" mode but variables and families inside have " "the family \"{0}\" is in \"{1}\" mode but variables and families inside have "
"the higher modes \"{2}\"" "the higher modes \"{2}\""
@ -64,7 +64,7 @@ msgstr ""
"la famille \"{0}\" a le mode \"{1}\" mais les variables et les familles à " "la famille \"{0}\" a le mode \"{1}\" mais les variables et les familles à "
"l'intérieur ont des modes supérieurs \"{2}\"" "l'intérieur ont des modes supérieurs \"{2}\""
#: src/rougail/annotator/family.py:338 #: src/rougail/annotator/family.py:342
msgid "" msgid ""
"the variable \"{0}\" is in \"{1}\" mode but family has the higher family " "the variable \"{0}\" is in \"{1}\" mode but family has the higher family "
"mode \"{2}\"" "mode \"{2}\""
@ -84,83 +84,122 @@ msgstr ""
"la variable \"{0}\" est multiple mais a une valeur par défaut sans être une " "la variable \"{0}\" est multiple mais a une valeur par défaut sans être une "
"liste" "liste"
#: src/rougail/annotator/variable.py:189 #: src/rougail/annotator/variable.py:175
msgid "" msgid ""
"the variable \"{0}\" has regexp attribut but has not the \"regexp\" type" "the variable \"{0}\" has regexp attribut but has not the \"regexp\" type"
msgstr "" msgstr ""
"la variable \"{0}\" a un attribut regexp mais n'a pas le type \"regexp\"" "la variable \"{0}\" a un attribut regexp mais n'a pas le type \"regexp\""
#: src/rougail/annotator/variable.py:232 #: src/rougail/annotator/variable.py:218
msgid "" msgid ""
"the variable \"{0}\" has choices attribut but has not the \"choice\" type" "the variable \"{0}\" has choices attribut but has not the \"choice\" type"
msgstr "" msgstr ""
"la variable \"{0}\" a un attribut choices mais n'a pas le type \"choice\"" "la variable \"{0}\" a un attribut choices mais n'a pas le type \"choice\""
#: src/rougail/annotator/variable.py:260 #: src/rougail/annotator/variable.py:246
msgid "" msgid ""
"the variable \"{0}\" has an unvalid default value \"{1}\" should be in {2}" "the variable \"{0}\" has an unvalid default value \"{1}\" should be in {2}"
msgstr "" msgstr ""
"la variable \"{0}\" a la valeur par défaut invalide \"{1}\" devrait être {2}" "la variable \"{0}\" a la valeur par défaut invalide \"{1}\" devrait être {2}"
#: src/rougail/config.py:216 #: src/rougail/config.py:231
msgid "Directories where dictionary files are placed"
msgstr "Répertoires où sont placés les fichiers de structure"
#: src/rougail/config.py:227
msgid "Sort dictionaries from differents directories"
msgstr "Trier les fichiers de structure à partir de différents répertoires"
#: src/rougail/config.py:232
msgid "Main namespace name"
msgstr "Nom de l'espace de nom principal"
#: src/rougail/config.py:238
msgid "Extra namespaces"
msgstr "Espaces de nom supplémentaires"
#: src/rougail/config.py:245
msgid "Extra namespace name"
msgstr "Nom de l'espace de nom supplémentaire"
#: src/rougail/config.py:251
msgid "Directories where extra dictionary files are placed"
msgstr ""
"Répertoires où sont placés les fichiers de structure de l'espace de nom "
"supplémentaire"
#: src/rougail/config.py:262
msgid "Update dictionaries to newest Rougail format version"
msgstr ""
"Mettre à jour le fichier de structure vers la dernière version du format de "
"Rougail"
#: src/rougail/config.py:263
msgid "Do not update dictionaries to newest Rougail format version"
msgstr ""
"Ne pas mettre à jour le fichier de structure vers la dernière version du "
"format de Rougail"
#: src/rougail/config.py:267
msgid "Update informations"
msgstr "Mise à jour des informations"
#: src/rougail/config.py:273
msgid "Directories where dictionary files will be placed"
msgstr "Répertoires où sont placés les fichiers de structure"
#: src/rougail/config.py:278
msgid "Directories where extra files will be placed"
msgstr "Répertoires où sont placés les fichiers de structure supplémentaire"
#: src/rougail/config.py:290
msgid "File with functions" msgid "File with functions"
msgstr "Fichier avec les fonctions" msgstr "Fichier avec les fonctions"
#: src/rougail/config.py:302 #: src/rougail/config.py:243
msgid "All modes level available" msgid "All modes level available"
msgstr "Tous les niveaux de modes valides" msgstr "Tous les niveaux de modes valides"
#: src/rougail/convert.py:281 #: src/rougail/config.py:255
msgid "Default mode for a family"
msgstr "Mode par défaut pour une famille"
#: src/rougail/config.py:275
msgid "Default mode for a variable"
msgstr "Mode par défaut pour une variable"
#: src/rougail/config.py:299
msgid "Option name for the base option"
msgstr "Nom de l'option pour l'option de base"
#: src/rougail/config.py:304
msgid "In cache file, do not importation of Tiramisu and other dependencies"
msgstr ""
"Dans le fichier de cache, ne pas importer Tiramisu et autres dépendances"
#: src/rougail/config.py:305
msgid "In cache file, do importation of Tiramisu and other dependencies"
msgstr "Dans le fichier de cache, importer Tiramisu et autres dépendances"
#: src/rougail/config.py:310
msgid "Tiramisu cache filename"
msgstr "Nom du fichier du cache Tiramisu"
#: src/rougail/config.py:318
msgid "Name of internal functions that we can use as a function"
msgstr ""
"Nom des fonctions internes qu'il est possible d'utiliser comme fonction"
#: src/rougail/config.py:324
msgid "Name of extra annotators"
msgstr "Nom des annotators supplémentaires"
#: src/rougail/config.py:330
msgid "Suffix add to generated options name"
msgstr "Suffix ajouté pour généré le nom des options"
#: src/rougail/config.py:336
msgid "Every variables in calculation are optionals"
msgstr "Toutes les variables dans un calcul sont optionnelles"
#: src/rougail/config.py:337
msgid "Variables in calculation are not optional by default"
msgstr "Les variables dans un calcul sont optionnelles par défaut"
#: src/rougail/config.py:341 src/rougail/config.py:342
msgid "Loads redefine variables even if there don't already exists"
msgstr "Charger les variables redéfinis même si elles n'existe pas"
#: src/rougail/config.py:443
msgid "Default parameters for option type"
msgstr "Paramètre par défaut pour le type d'option"
#: src/rougail/convert.py:270
msgid "unknown type {0} for {1}"
msgstr "type {0} inconnu pour {1}"
#: src/rougail/convert.py:402
msgid "family \"{0}\" define multiple time"
msgstr "la famille \"{0}\" est définit plusieurs fois"
#: src/rougail/convert.py:658
msgid "variable \"{0}\" define multiple time"
msgstr "la variable \"{0}\" est définit plusieurs fois"
#: src/rougail/convert.py:761
msgid "params must be a dict for {0}"
msgstr "params doit être une dict pour {0}"
#: src/rougail/convert.py:782
msgid "\"{0}\" has an invalid \"params\" for {1}: {2}"
msgstr "\"{0}\" a un attribut \"params\" invalide pour {1}: {2}"
#: src/rougail/convert.py:1096
msgid "Cannot execute annotate multiple time"
msgstr "Ne peut exécuter l'annotation plusieurs fois"
#: src/rougail/convert.py:1103
msgid ""
"invalid \"structural\" definition ({0}), we cannot load any structural file!"
msgstr ""
"définition invalide pour la définition des \"structures\" ({0}), aucun "
"fichier de structure ne peut être chargé !"
#: src/rougail/error.py:67
msgid "{0} in {1}"
msgstr "{0} dans {1}"
#: src/rougail/path.py:209
msgid "" msgid ""
"A variable or a family located in the \"{0}\" namespace shall not be used in " "A variable or a family located in the \"{0}\" namespace shall not be used in "
"the \"{1}\" namespace" "the \"{1}\" namespace"
@ -168,26 +207,6 @@ msgstr ""
"Une variable ou une famille localisé dans l'espace de nom \"{0}\" ne devrait " "Une variable ou une famille localisé dans l'espace de nom \"{0}\" ne devrait "
"pas être utilisé dans l'espace de nom \"{1}\"" "pas être utilisé dans l'espace de nom \"{1}\""
#: src/rougail/convert.py:480
msgid "unknown type {0} for {1}"
msgstr "type {0} inconnu pour {1}"
#: src/rougail/convert.py:613
msgid "The family \"{0}\" already exists and it is not redefined"
msgstr "La famille \"{0}\" existe déjà et n'est pas redéfinie"
#: src/rougail/convert.py:1356
msgid "duplicate dictionary file name {0}"
msgstr "nom de fichier {0} de dictionnaire dupliqué"
#: src/rougail/convert.py:1403
msgid "Cannot execute annotate multiple time"
msgstr "Ne peut exécuter l'annotation plusieurs fois"
#: src/rougail/error.py:67
msgid "{0} in {1}"
msgstr "{0} dans {1}"
#: src/rougail/structural_commandline/annotator.py:67 #: src/rougail/structural_commandline/annotator.py:67
msgid "alternative_name \"{0}\" conflict with \"--help\"" msgid "alternative_name \"{0}\" conflict with \"--help\""
msgstr "alternative_name \"{0}\" est en conflit avec \"--help\"" msgstr "alternative_name \"{0}\" est en conflit avec \"--help\""
@ -196,14 +215,14 @@ msgstr "alternative_name \"{0}\" est en conflit avec \"--help\""
msgid "conflict alternative_name \"{0}\": \"{1}\" and \"{2}\"" msgid "conflict alternative_name \"{0}\": \"{1}\" and \"{2}\""
msgstr "conflit dans les \"alternative_name\" \"{0}\": \"{1}\" et \"{2}\"" msgstr "conflit dans les \"alternative_name\" \"{0}\": \"{1}\" et \"{2}\""
#: src/rougail/structural_commandline/annotator.py:95 #: src/rougail/structural_commandline/annotator.py:98
msgid "" msgid ""
"negative_description is mandatory for boolean variable, but \"{0}\" hasn't" "negative_description is mandatory for boolean variable, but \"{0}\" hasn't"
msgstr "" msgstr ""
"l'attribut negative_description est obligatoire pour des variables " "l'attribut negative_description est obligatoire pour des variables "
"\"boolean\", mais \"{0}\" n'en a pas" "\"boolean\", mais \"{0}\" n'en a pas"
#: src/rougail/structural_commandline/annotator.py:104 #: src/rougail/structural_commandline/annotator.py:106
msgid "" msgid ""
"negative_description is only available for boolean variable, but \"{0}\" is " "negative_description is only available for boolean variable, but \"{0}\" is "
"\"{1}\"" "\"{1}\""
@ -211,9 +230,49 @@ msgstr ""
"l'attribut negative_description est seulement valide pour des variables " "l'attribut negative_description est seulement valide pour des variables "
"\"boolean\", mais \"{0}\" est \"{1}\"" "\"boolean\", mais \"{0}\" est \"{1}\""
#: src/rougail/update/update.py:738 #: src/rougail/structural_directory/__init__.py:127
msgid "not a XML file: {0}" msgid "duplicate dictionary file name {0}"
msgstr "fichier XML invalid : {0}" msgstr "nom de fichier {0} de dictionnaire dupliqué"
#: src/rougail/structural_directory/config.py:32
msgid "Directories where dictionary files are placed"
msgstr "Répertoires où sont placés les fichiers de structure"
#: src/rougail/structural_directory/config.py:46
msgid "Sort dictionaries from differents directories"
msgstr "Trier les fichiers de structure à partir de différents répertoires"
#: src/rougail/structural_directory/config.py:56
msgid "Main namespace name"
msgstr "Nom de l'espace de nom principal"
#: src/rougail/structural_directory/config.py:67
msgid "Extra namespaces"
msgstr "Espaces de nom supplémentaires"
#: src/rougail/structural_directory/config.py:76
msgid "Extra namespace name"
msgstr "Nom de l'espace de nom supplémentaire"
#: src/rougail/structural_directory/config.py:82
msgid "Directories where extra dictionary files are placed"
msgstr ""
"Répertoires où sont placés les fichiers de structure de l'espace de nom "
"supplémentaire"
#: src/rougail/tiramisureflector.py:376
msgid "internal error, {0} is not a dynamic variable"
msgstr "erreur interne, \"{0}\" n'est pas une variable dynamique"
#: src/rougail/user_datas.py:155
msgid "the variable \"{0}\" contains secrets and should not be defined in {1}"
msgstr ""
"la variable \"{0}\" contient des secrets et ne devrait pas être défini dans "
"{1}"
#: src/rougail/user_datas.py:215
msgid "the option \"{0}\" is an option description"
msgstr "l'option \"{0}\" est une option description"
#: src/rougail/utils.py:55 #: src/rougail/utils.py:55
msgid "" msgid ""
@ -223,6 +282,31 @@ msgstr ""
"nom invalide pour la variable ou famille \"{0}\" doit seulement contenir des " "nom invalide pour la variable ou famille \"{0}\" doit seulement contenir des "
"caractères ascii minuscule, nombre or _" "caractères ascii minuscule, nombre or _"
#: src/rougail/utils.py:117 #: src/rougail/utils.py:113
msgid "error in jinja \"{0}\" for the variable \"{1}\": {2}" msgid "error in jinja \"{0}\" for the variable \"{1}\": {2}"
msgstr "erreur dans Jinja \"{0}\" pour la variable \"{1}\": {2}" msgstr "erreur dans Jinja \"{0}\" pour la variable \"{1}\": {2}"
#~ msgid "Update dictionaries to newest Rougail format version"
#~ msgstr ""
#~ "Mettre à jour le fichier de structure vers la dernière version du format "
#~ "de Rougail"
#~ msgid "Do not update dictionaries to newest Rougail format version"
#~ msgstr ""
#~ "Ne pas mettre à jour le fichier de structure vers la dernière version du "
#~ "format de Rougail"
#~ msgid "Update informations"
#~ msgstr "Mise à jour des informations"
#~ msgid "Directories where dictionary files will be placed"
#~ msgstr "Répertoires où sont placés les fichiers de structure"
#~ msgid "Directories where extra files will be placed"
#~ msgstr "Répertoires où sont placés les fichiers de structure supplémentaire"
#~ msgid "The family \"{0}\" already exists and it is not redefined"
#~ msgstr "La famille \"{0}\" existe déjà et n'est pas redéfinie"
#~ msgid "not a XML file: {0}"
#~ msgstr "fichier XML invalid : {0}"

View file

@ -5,7 +5,7 @@
msgid "" msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"POT-Creation-Date: 2024-12-15 16:57+0100\n" "POT-Creation-Date: 2025-02-17 09:18+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,35 +15,35 @@ msgstr ""
"Generated-By: pygettext.py 1.5\n" "Generated-By: pygettext.py 1.5\n"
#: src/rougail/annotator/family.py:143 #: src/rougail/annotator/family.py:147
msgid "default variable mode \"{0}\" is not a valid mode, valid modes are {1}" msgid "default variable mode \"{0}\" is not a valid mode, valid modes are {1}"
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:149 #: src/rougail/annotator/family.py:153
msgid "default family mode \"{0}\" is not a valid mode, valid modes are {1}" msgid "default family mode \"{0}\" is not a valid mode, valid modes are {1}"
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:181 #: src/rougail/annotator/family.py:185
msgid "mode \"{0}\" for \"{1}\" is not a valid mode, valid modes are {2}" msgid "mode \"{0}\" for \"{1}\" is not a valid mode, valid modes are {2}"
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:185 #: src/rougail/annotator/family.py:189
msgid "mode \"{0}\" for \"{1}\" is not a valid mode, no modes are available" msgid "mode \"{0}\" for \"{1}\" is not a valid mode, no modes are available"
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:249 #: src/rougail/annotator/family.py:253
msgid "the variable \"{0}\" is mandatory so in \"{1}\" mode but family has the higher family mode \"{2}\"" msgid "the variable \"{0}\" is mandatory so in \"{1}\" mode but family has the higher family mode \"{2}\""
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:287 #: src/rougail/annotator/family.py:291
msgid "the follower \"{0}\" is in \"{1}\" mode but leader have the higher mode \"{2}\"" msgid "the follower \"{0}\" is in \"{1}\" mode but leader have the higher mode \"{2}\""
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:320 #: src/rougail/annotator/family.py:324
msgid "the family \"{0}\" is in \"{1}\" mode but variables and families inside have the higher modes \"{2}\"" msgid "the family \"{0}\" is in \"{1}\" mode but variables and families inside have the higher modes \"{2}\""
msgstr "" msgstr ""
#: src/rougail/annotator/family.py:338 #: src/rougail/annotator/family.py:342
msgid "the variable \"{0}\" is in \"{1}\" mode but family has the higher family mode \"{2}\"" msgid "the variable \"{0}\" is in \"{1}\" mode but family has the higher family mode \"{2}\""
msgstr "" msgstr ""
@ -55,94 +55,114 @@ msgstr ""
msgid "the variable \"{0}\" is multi but has a non list default value" msgid "the variable \"{0}\" is multi but has a non list default value"
msgstr "" msgstr ""
#: src/rougail/annotator/variable.py:189 #: src/rougail/annotator/variable.py:175
msgid "the variable \"{0}\" has regexp attribut but has not the \"regexp\" type" msgid "the variable \"{0}\" has regexp attribut but has not the \"regexp\" type"
msgstr "" msgstr ""
#: src/rougail/annotator/variable.py:232 #: src/rougail/annotator/variable.py:218
msgid "the variable \"{0}\" has choices attribut but has not the \"choice\" type" msgid "the variable \"{0}\" has choices attribut but has not the \"choice\" type"
msgstr "" msgstr ""
#: src/rougail/annotator/variable.py:260 #: src/rougail/annotator/variable.py:246
msgid "the variable \"{0}\" has an unvalid default value \"{1}\" should be in {2}" msgid "the variable \"{0}\" has an unvalid default value \"{1}\" should be in {2}"
msgstr "" msgstr ""
#: src/rougail/config.py:216 #: src/rougail/config.py:231
msgid "Directories where dictionary files are placed"
msgstr ""
#: src/rougail/config.py:227
msgid "Sort dictionaries from differents directories"
msgstr ""
#: src/rougail/config.py:232
msgid "Main namespace name"
msgstr ""
#: src/rougail/config.py:238
msgid "Extra namespaces"
msgstr ""
#: src/rougail/config.py:245
msgid "Extra namespace name"
msgstr ""
#: src/rougail/config.py:251
msgid "Directories where extra dictionary files are placed"
msgstr ""
#: src/rougail/config.py:262
msgid "Update dictionaries to newest Rougail format version"
msgstr ""
#: src/rougail/config.py:263
msgid "Do not update dictionaries to newest Rougail format version"
msgstr ""
#: src/rougail/config.py:267
msgid "Update informations"
msgstr ""
#: src/rougail/config.py:273
msgid "Directories where dictionary files will be placed"
msgstr ""
#: src/rougail/config.py:278
msgid "Directories where extra files will be placed"
msgstr ""
#: src/rougail/config.py:290
msgid "File with functions" msgid "File with functions"
msgstr "" msgstr ""
#: src/rougail/config.py:302 #: src/rougail/config.py:243
msgid "All modes level available" msgid "All modes level available"
msgstr "" msgstr ""
#: src/rougail/convert.py:281 #: src/rougail/config.py:255
msgid "A variable or a family located in the \"{0}\" namespace shall not be used in the \"{1}\" namespace" msgid "Default mode for a family"
msgstr "" msgstr ""
#: src/rougail/convert.py:480 #: src/rougail/config.py:275
msgid "Default mode for a variable"
msgstr ""
#: src/rougail/config.py:299
msgid "Option name for the base option"
msgstr ""
#: src/rougail/config.py:304
msgid "In cache file, do not importation of Tiramisu and other dependencies"
msgstr ""
#: src/rougail/config.py:305
msgid "In cache file, do importation of Tiramisu and other dependencies"
msgstr ""
#: src/rougail/config.py:310
msgid "Tiramisu cache filename"
msgstr ""
#: src/rougail/config.py:318
msgid "Name of internal functions that we can use as a function"
msgstr ""
#: src/rougail/config.py:324
msgid "Name of extra annotators"
msgstr ""
#: src/rougail/config.py:330
msgid "Suffix add to generated options name"
msgstr ""
#: src/rougail/config.py:336
msgid "Every variables in calculation are optionals"
msgstr ""
#: src/rougail/config.py:337
msgid "Variables in calculation are not optional by default"
msgstr ""
#: src/rougail/config.py:341 src/rougail/config.py:342
msgid "Loads redefine variables even if there don't already exists"
msgstr ""
#: src/rougail/config.py:443
msgid "Default parameters for option type"
msgstr ""
#: src/rougail/convert.py:270
msgid "unknown type {0} for {1}" msgid "unknown type {0} for {1}"
msgstr "" msgstr ""
#: src/rougail/convert.py:613 #: src/rougail/convert.py:402
msgid "The family \"{0}\" already exists and it is not redefined" msgid "family \"{0}\" define multiple time"
msgstr "" msgstr ""
#: src/rougail/convert.py:1356 #: src/rougail/convert.py:658
msgid "duplicate dictionary file name {0}" msgid "variable \"{0}\" define multiple time"
msgstr "" msgstr ""
#: src/rougail/convert.py:1403 #: src/rougail/convert.py:761
msgid "params must be a dict for {0}"
msgstr ""
#: src/rougail/convert.py:782
msgid "\"{0}\" has an invalid \"params\" for {1}: {2}"
msgstr ""
#: src/rougail/convert.py:1096
msgid "Cannot execute annotate multiple time" msgid "Cannot execute annotate multiple time"
msgstr "" msgstr ""
#: src/rougail/convert.py:1103
msgid "invalid \"structural\" definition ({0}), we cannot load any structural file!"
msgstr ""
#: src/rougail/error.py:67 #: src/rougail/error.py:67
msgid "{0} in {1}" msgid "{0} in {1}"
msgstr "" msgstr ""
#: src/rougail/path.py:209
msgid "A variable or a family located in the \"{0}\" namespace shall not be used in the \"{1}\" namespace"
msgstr ""
#: src/rougail/structural_commandline/annotator.py:67 #: src/rougail/structural_commandline/annotator.py:67
msgid "alternative_name \"{0}\" conflict with \"--help\"" msgid "alternative_name \"{0}\" conflict with \"--help\""
msgstr "" msgstr ""
@ -151,23 +171,59 @@ msgstr ""
msgid "conflict alternative_name \"{0}\": \"{1}\" and \"{2}\"" msgid "conflict alternative_name \"{0}\": \"{1}\" and \"{2}\""
msgstr "" msgstr ""
#: src/rougail/structural_commandline/annotator.py:95 #: src/rougail/structural_commandline/annotator.py:98
msgid "negative_description is mandatory for boolean variable, but \"{0}\" hasn't" msgid "negative_description is mandatory for boolean variable, but \"{0}\" hasn't"
msgstr "" msgstr ""
#: src/rougail/structural_commandline/annotator.py:104 #: src/rougail/structural_commandline/annotator.py:106
msgid "negative_description is only available for boolean variable, but \"{0}\" is \"{1}\"" msgid "negative_description is only available for boolean variable, but \"{0}\" is \"{1}\""
msgstr "" msgstr ""
#: src/rougail/update/update.py:738 #: src/rougail/structural_directory/__init__.py:127
msgid "not a XML file: {0}" msgid "duplicate dictionary file name {0}"
msgstr ""
#: src/rougail/structural_directory/config.py:32
msgid "Directories where dictionary files are placed"
msgstr ""
#: src/rougail/structural_directory/config.py:46
msgid "Sort dictionaries from differents directories"
msgstr ""
#: src/rougail/structural_directory/config.py:56
msgid "Main namespace name"
msgstr ""
#: src/rougail/structural_directory/config.py:67
msgid "Extra namespaces"
msgstr ""
#: src/rougail/structural_directory/config.py:76
msgid "Extra namespace name"
msgstr ""
#: src/rougail/structural_directory/config.py:82
msgid "Directories where extra dictionary files are placed"
msgstr ""
#: src/rougail/tiramisureflector.py:376
msgid "internal error, {0} is not a dynamic variable"
msgstr ""
#: src/rougail/user_datas.py:155
msgid "the variable \"{0}\" contains secrets and should not be defined in {1}"
msgstr ""
#: src/rougail/user_datas.py:215
msgid "the option \"{0}\" is an option description"
msgstr "" msgstr ""
#: src/rougail/utils.py:55 #: src/rougail/utils.py:55
msgid "invalid variable or family name \"{0}\" must only contains lowercase ascii character, number or _" msgid "invalid variable or family name \"{0}\" must only contains lowercase ascii character, number or _"
msgstr "" msgstr ""
#: src/rougail/utils.py:117 #: src/rougail/utils.py:113
msgid "error in jinja \"{0}\" for the variable \"{1}\": {2}" msgid "error in jinja \"{0}\" for the variable \"{1}\": {2}"
msgstr "" msgstr ""

View file

@ -327,19 +327,19 @@ extra_annotators:
commandline: false commandline: false
suffix: suffix:
description: {_("Suffix add to generated option name")} description: {_("Suffix add to generated options name")}
default: '' default: ''
mandatory: false mandatory: false
commandline: false commandline: false
force_optional: force_optional:
description: {_("Every variable in calculation are optional")} description: {_("Every variables in calculation are optionals")}
negative_description: {_("Variable in calculation are not optional by default")} negative_description: {_("Variables in calculation are not optional by default")}
default: False default: False
load_unexist_redefine: load_unexist_redefine:
description: {_("Load redefine variable even if there don't already exists")} description: {_("Loads redefine variables even if there don't already exists")}
negative_description: {_("Load redefine variable even if there don't already exists")} negative_description: {_("Loads redefine variables even if there don't already exists")}
commandline: false commandline: false
default: False default: False
@ -349,9 +349,13 @@ load_unexist_redefine:
"user data": [], "user data": [],
"output": [], "output": [],
} }
processes_empty = []
for module in get_sub_modules().values(): for module in get_sub_modules().values():
data = module.get_rougail_config(backward_compatibility=backward_compatibility) data = module.get_rougail_config(backward_compatibility=backward_compatibility)
if data["process"]:
processes[data["process"]].append(data) processes[data["process"]].append(data)
else:
processes_empty.append(data["options"])
# reorder # reorder
for process in processes: for process in processes:
processes[process] = list(sorted(processes[process], key=get_level)) processes[process] = list(sorted(processes[process], key=get_level))
@ -363,7 +367,6 @@ load_unexist_redefine:
{NAME}: {NAME}:
description: Select for {NAME} description: Select for {NAME}
alternative_name: {NAME[0]}
choices: choices:
""".format( """.format(
NAME=normalize_family(process), NAME=normalize_family(process),
@ -371,11 +374,28 @@ load_unexist_redefine:
for obj in objects: for obj in objects:
rougail_process += f" - {obj['name']}\n" rougail_process += f" - {obj['name']}\n"
if process == "structural": if process == "structural":
rougail_process += """ commandline: false # rougail_process += """ commandline: false
multi: true rougail_process += """ multi: true
default: default:
- directory - directory
""" """
hidden_outputs = [
process["name"]
for process in processes["output"]
if process.get("allow_user_data", True)
]
if hidden_outputs:
rougail_process += """
hidden:
type: jinja
jinja: |
"""
for hidden_output in hidden_outputs:
rougail_process += """ {% if _.output == 'NAME' %}
Cannot load structural for NAME output
{% endif %}""".replace(
"NAME", hidden_output
)
elif process == "user data": elif process == "user data":
rougail_process += """ multi: true rougail_process += """ multi: true
mandatory: false""" mandatory: false"""
@ -435,6 +455,8 @@ default_params:
mandatory: false mandatory: false
default: {value} default: {value}
""" """
for process_empty in processes_empty:
rougail_process += process_empty
rougail_options += rougail_process rougail_options += rougail_process
# print(rougail_options) # print(rougail_options)
convert = FakeRougailConvert(add_extra_options) convert = FakeRougailConvert(add_extra_options)

View file

@ -1100,7 +1100,7 @@ class RougailConvert(ParserVariable):
def parse_directories(self) -> None: def parse_directories(self) -> None:
if not self.walker: if not self.walker:
msg = _("cannot find walker in structural {0}!").format(self.structurals) msg = _('invalid "structural" definition ({0}), we cannot load any structural file!').format(self.structurals)
raise DictConsistencyError(msg, 51, None) raise DictConsistencyError(msg, 51, None)
self.init() self.init()
self.walker(self) self.walker(self)