diff --git a/locale/fr/LC_MESSAGES/rougail.po b/locale/fr/LC_MESSAGES/rougail.po index 529c54e97..31534c830 100644 --- a/locale/fr/LC_MESSAGES/rougail.po +++ b/locale/fr/LC_MESSAGES/rougail.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2024-12-15 16:50+0100\n" -"PO-Revision-Date: 2024-12-15 16:55+0100\n" +"POT-Creation-Date: 2025-02-17 09:16+0100\n" +"PO-Revision-Date: 2025-02-17 09:17+0100\n" "Last-Translator: \n" "Language-Team: \n" "Language: fr\n" @@ -16,39 +16,39 @@ msgstr "" "Generated-By: pygettext.py 1.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}" msgstr "" "le mode d'une variable par défaut \"{0}\" n'est pas un mode valide, les " "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}" msgstr "" "le mode d'une famille par défaut \"{0}\" n'est pas un mode valide, les modes " "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}" msgstr "" "le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, les modes valides " "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" msgstr "" "le mode \"{0}\" pour \"{1}\" n'est pas un mode valide, aucun mode ne sont " "définis" -#: 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}\"" msgstr "" -"la variable \"{0}\" est obligatoire, donc en mode \"{1}\", mais la " -"famille a un mode supérieur \"{2}\"" +"la variable \"{0}\" est obligatoire, donc en mode \"{1}\", mais la famille a " +"un mode supérieur \"{2}\"" -#: 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}\"" @@ -56,7 +56,7 @@ msgstr "" "la variable suiveuse \"{0}\" a le mode \"{1}\" mais la variable leader a un " "mode supérieur \"{2}\"" -#: 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}\"" @@ -64,7 +64,7 @@ msgstr "" "la famille \"{0}\" a le mode \"{1}\" mais les variables et les familles à " "l'intérieur ont des modes supérieurs \"{2}\"" -#: 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}\"" @@ -84,83 +84,122 @@ msgstr "" "la variable \"{0}\" est multiple mais a une valeur par défaut sans être une " "liste" -#: 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" msgstr "" "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 "" "the variable \"{0}\" has choices attribut but has not the \"choice\" type" msgstr "" "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 "" "the variable \"{0}\" has an unvalid default value \"{1}\" should be in {2}" msgstr "" "la variable \"{0}\" a la valeur par défaut invalide \"{1}\" devrait être {2}" -#: src/rougail/config.py:216 -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 +#: src/rougail/config.py:231 msgid "File with functions" msgstr "Fichier avec les fonctions" -#: src/rougail/config.py:302 +#: src/rougail/config.py:243 msgid "All modes level available" 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 "" "A variable or a family located in the \"{0}\" namespace shall not be used in " "the \"{1}\" namespace" @@ -168,26 +207,6 @@ msgstr "" "Une variable ou une famille localisé dans l'espace de nom \"{0}\" ne devrait " "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 msgid "alternative_name \"{0}\" conflict with \"--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}\"" 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 "" "negative_description is mandatory for boolean variable, but \"{0}\" hasn't" msgstr "" "l'attribut negative_description est obligatoire pour des variables " "\"boolean\", mais \"{0}\" n'en a pas" -#: 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}\"" @@ -211,9 +230,49 @@ msgstr "" "l'attribut negative_description est seulement valide pour des variables " "\"boolean\", mais \"{0}\" est \"{1}\"" -#: src/rougail/update/update.py:738 -msgid "not a XML file: {0}" -msgstr "fichier XML invalid : {0}" +#: src/rougail/structural_directory/__init__.py:127 +msgid "duplicate dictionary file name {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 msgid "" @@ -223,6 +282,31 @@ msgstr "" "nom invalide pour la variable ou famille \"{0}\" doit seulement contenir des " "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}" 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}" diff --git a/locale/rougail.pot b/locale/rougail.pot index 1770d0914..6285637b4 100644 --- a/locale/rougail.pot +++ b/locale/rougail.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "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" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -15,35 +15,35 @@ msgstr "" "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}" 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}" 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}" 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" 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}\"" 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}\"" 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}\"" 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}\"" msgstr "" @@ -55,94 +55,114 @@ msgstr "" msgid "the variable \"{0}\" is multi but has a non list default value" 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" 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" 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}" msgstr "" -#: src/rougail/config.py:216 -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 +#: src/rougail/config.py:231 msgid "File with functions" msgstr "" -#: src/rougail/config.py:302 +#: src/rougail/config.py:243 msgid "All modes level available" msgstr "" -#: src/rougail/convert.py:281 -msgid "A variable or a family located in the \"{0}\" namespace shall not be used in the \"{1}\" namespace" +#: src/rougail/config.py:255 +msgid "Default mode for a family" 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}" msgstr "" -#: src/rougail/convert.py:613 -msgid "The family \"{0}\" already exists and it is not redefined" +#: src/rougail/convert.py:402 +msgid "family \"{0}\" define multiple time" msgstr "" -#: src/rougail/convert.py:1356 -msgid "duplicate dictionary file name {0}" +#: src/rougail/convert.py:658 +msgid "variable \"{0}\" define multiple time" 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" msgstr "" +#: src/rougail/convert.py:1103 +msgid "invalid \"structural\" definition ({0}), we cannot load any structural file!" +msgstr "" + #: src/rougail/error.py:67 msgid "{0} in {1}" 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 msgid "alternative_name \"{0}\" conflict with \"--help\"" msgstr "" @@ -151,23 +171,59 @@ msgstr "" msgid "conflict alternative_name \"{0}\": \"{1}\" and \"{2}\"" 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" 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}\"" msgstr "" -#: src/rougail/update/update.py:738 -msgid "not a XML file: {0}" +#: src/rougail/structural_directory/__init__.py:127 +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 "" #: src/rougail/utils.py:55 msgid "invalid variable or family name \"{0}\" must only contains lowercase ascii character, number or _" msgstr "" -#: src/rougail/utils.py:117 +#: src/rougail/utils.py:113 msgid "error in jinja \"{0}\" for the variable \"{1}\": {2}" msgstr "" diff --git a/src/rougail/config.py b/src/rougail/config.py index e3174d0fd..12205d492 100644 --- a/src/rougail/config.py +++ b/src/rougail/config.py @@ -327,19 +327,19 @@ extra_annotators: commandline: false suffix: - description: {_("Suffix add to generated option name")} + description: {_("Suffix add to generated options name")} default: '' mandatory: false commandline: false force_optional: - description: {_("Every variable in calculation are optional")} - negative_description: {_("Variable in calculation are not optional by default")} + description: {_("Every variables in calculation are optionals")} + negative_description: {_("Variables in calculation are not optional by default")} default: False load_unexist_redefine: - description: {_("Load redefine variable even if there don't already exists")} - negative_description: {_("Load redefine variable even if there don't already exists")} + description: {_("Loads redefine variables even if there don't already exists")} + negative_description: {_("Loads redefine variables even if there don't already exists")} commandline: false default: False @@ -349,9 +349,13 @@ load_unexist_redefine: "user data": [], "output": [], } + processes_empty = [] for module in get_sub_modules().values(): data = module.get_rougail_config(backward_compatibility=backward_compatibility) - processes[data["process"]].append(data) + if data["process"]: + processes[data["process"]].append(data) + else: + processes_empty.append(data["options"]) # reorder for process in processes: processes[process] = list(sorted(processes[process], key=get_level)) @@ -363,7 +367,6 @@ load_unexist_redefine: {NAME}: description: Select for {NAME} - alternative_name: {NAME[0]} choices: """.format( NAME=normalize_family(process), @@ -371,11 +374,28 @@ load_unexist_redefine: for obj in objects: rougail_process += f" - {obj['name']}\n" if process == "structural": - rougail_process += """ commandline: false - multi: true +# rougail_process += """ commandline: false + rougail_process += """ multi: true default: - 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": rougail_process += """ multi: true mandatory: false""" @@ -435,6 +455,8 @@ default_params: mandatory: false default: {value} """ + for process_empty in processes_empty: + rougail_process += process_empty rougail_options += rougail_process # print(rougail_options) convert = FakeRougailConvert(add_extra_options) diff --git a/src/rougail/convert.py b/src/rougail/convert.py index fab55ac47..55cf1a18c 100644 --- a/src/rougail/convert.py +++ b/src/rougail/convert.py @@ -1100,7 +1100,7 @@ class RougailConvert(ParserVariable): def parse_directories(self) -> None: 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) self.init() self.walker(self) diff --git a/src/rougail/locale/fr/LC_MESSAGES/rougail.mo b/src/rougail/locale/fr/LC_MESSAGES/rougail.mo index 25b24c22f..d4b0be014 100644 Binary files a/src/rougail/locale/fr/LC_MESSAGES/rougail.mo and b/src/rougail/locale/fr/LC_MESSAGES/rougail.mo differ