diff --git a/README.fr.md b/README.fr.md new file mode 100644 index 0000000..b8c1979 --- /dev/null +++ b/README.fr.md @@ -0,0 +1,27 @@ +--- +gitea: none +include_toc: true +--- +[🇬🇧 (EN)](README.md) - [🇫🇷 (FR)](README.fr.md) + +## Options de la ligne de commande + +> [!NOTE] +> +> **Chemin** : cli + +| Variable | Description | Valeur par défaut | Type | Contrôle des accès | Validateur | +|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------|------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------| +| **cli.config_file**
**Variable d'environnement** : CLI.CONFIG_FILE | Charger les paramètres de la ligne de commande depuis un fichier. | • .rougailcli.yml | [`UNIX filename`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | | • le nom de fichier peut ĂŞtre une chemin relatif
• type de fichier autorisĂ©: "fichier" et "rĂ©pertoire". | +| **cli.debug**
**Ligne de commande** :
• --cli.debug
• --cli.no-debug
**Variable d'environnement** : CLI.DEBUG | Afficher les informations de debug. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.warnings**
**Ligne de commande** :
• --cli.warnings
• --cli.no-warnings
**Variable d'environnement** : CLI.WARNINGS | Afficher les avertissements de chargement des options de la ligne de commande. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.versions**
**Ligne de commande** :
• --cli.versions
• --cli.no-versions
**Variable d'environnement** : CLI.VERSIONS | Afficher la version de Rougail et de tous ces composants. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.invalid_user_data_error**
**Ligne de commande** :
• --cli.invalid_user_data_error
• --cli.no-invalid_user_data_error
**Variable d'environnement** : CLI.INVALID_USER_DATA_ERROR | Les valeurs invalides dans les données utilisateur ne sont pas autorisées. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.unknown_user_data_error**
**Ligne de commande** :
• --cli.unknown_user_data_error
• --cli.no-unknown_user_data_error
**Variable d'environnement** : CLI.UNKNOWN_USER_DATA_ERROR | Les variables inconnues dans les données utilisateur ne sont pas autorisées. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.layers**
**Ligne de commande** :
• --cli.layers
• --cli.no-layers
**Variable d'environnement** : CLI.LAYERS | Charger chaque données utilisateurs dans des couches séparées. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | *`cachée`*
**Cachée** : si seulement un type de données utilisateur est renseigné dans "[Sélection pour données utilisateur](#step.user_data)" | | +| **cli.read_write**
**Ligne de commande** :
• --cli.read_write
• --cli.no-read_write
**Variable d'environnement** : CLI.READ_WRITE | La configuration dans l'état de sortie est dans mode lecture-écriture. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | | +| **cli.description_type**
**Ligne de commande** : --cli.description_type
**Variable d'environnement** : CLI.DESCRIPTION_TYPE | Type de description des variables.
Pour identifier les différentes variables, on utilise la description de la variable. Il y a quatre type de descriptions:
- name_and_description : qui contient le nom de la variable suivi de sa description - path : le chemin de la variable - name : le nom de la variable - description : la description de la variable. | description | [`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `obligatoire` | | **Choix** :
• name_and_description
• path
• name
• description | +| **cli.inaccessible_read_write_modes**
**Ligne de commande** : --cli.inaccessible_read_write_modes
**Variable d'environnement** : CLI.INACCESSIBLE_READ_WRITE_MODES | Modes quoi doivent être inaccessible en mode lecture-écriture. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | *`désactivé`*
**Désactivé** : si aucun mode n'est défini dans "[Tous les niveaux de modes valides](#modes_level)" | `unique`
Un mode doit exister dans "[Tous les niveaux de modes valides](#modes_level)". | +| **cli.inaccessible_modes**
**Ligne de commande** : --cli.inaccessible_modes
**Variable d'environnement** : CLI.INACCESSIBLE_MODES | Modes quoi doivent être inaccessible. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | *`désactivé`*
**Désactivé** : si aucun mode n'est défini dans "[Tous les niveaux de modes valides](#modes_level)" | `unique`
Un mode doit exister dans "[Tous les niveaux de modes valides](#modes_level)". | + + diff --git a/README.md b/README.md index 302b615..8af073d 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,27 @@ -# rougail-cli +--- +gitea: none +include_toc: true +--- +[🇬🇧 (EN)](README.md) - [🇫🇷 (FR)](README.fr.md) + +## Command line options + +> [!NOTE] +> +> **Path**: cli + +| Variable | Description | Default value | Type | Access control | Validator | +|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------|------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------| +| **cli.config_file**
**Environment variable**: CLI.CONFIG_FILE | Loads command line parameters from a file. | • .rougailcli.yml | [`UNIX filename`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | | • this filename could be a relative path
• file type allowed: "directory" and "file". | +| **cli.debug**
**Command line**:
• --cli.debug
• --cli.no-debug
**Environment variable**: CLI.DEBUG | Displays debug informations. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.warnings**
**Command line**:
• --cli.warnings
• --cli.no-warnings
**Environment variable**: CLI.WARNINGS | Displays command line option warnings informations. | true | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.versions**
**Command line**:
• --cli.versions
• --cli.no-versions
**Environment variable**: CLI.VERSIONS | Displays Rougail version and all its components. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.invalid_user_data_error**
**Command line**:
• --cli.invalid_user_data_error
• --cli.no-invalid_user_data_error
**Environment variable**: CLI.INVALID_USER_DATA_ERROR | Invalid value in user data is not allowed. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.unknown_user_data_error**
**Command line**:
• --cli.unknown_user_data_error
• --cli.no-unknown_user_data_error
**Environment variable**: CLI.UNKNOWN_USER_DATA_ERROR | Unknown variable in user data is not allowed. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.layers**
**Command line**:
• --cli.layers
• --cli.no-layers
**Environment variable**: CLI.LAYERS | Open each user data in separate layers. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | *`hidden`*
**Hidden**: if only one user data is set in "[Select for user datas](#step.user_data)" | | +| **cli.read_write**
**Command line**:
• --cli.read_write
• --cli.no-read_write
**Environment variable**: CLI.READ_WRITE | Configuration in output step is in read_write mode. | false | [`boolean`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | | +| **cli.description_type**
**Command line**: --cli.description_type
**Environment variable**: CLI.DESCRIPTION_TYPE | Type of variables description.
To identify different variables, we use the variable description. There are four types of description:
- name_and_description: which contains the variable name followed by its description - path: the variable's path - name: the variable name - description: the variable's description. | description | [`choice`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `mandatory` | | **Choices**:
• name_and_description
• path
• name
• description | +| **cli.inaccessible_read_write_modes**
**Command line**: --cli.inaccessible_read_write_modes
**Environment variable**: CLI.INACCESSIBLE_READ_WRITE_MODES | Modes that should not be accessible in read_write mode. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | *`disabled`*
**Disabled**: if any mode is set in "[All modes level available](#modes_level)" | `unique`
Mode must exists in "[All modes level available](#modes_level)". | +| **cli.inaccessible_modes**
**Command line**: --cli.inaccessible_modes
**Environment variable**: CLI.INACCESSIBLE_MODES | Modes that should not be accessible. | | [`string`](https://rougail.readthedocs.io/en/latest/variable.html#variables-types) `multiple` | *`disabled`*
**Disabled**: if any mode is set in "[All modes level available](#modes_level)" | `unique`
Mode must exists in "[All modes level available](#modes_level)". | + diff --git a/locale/fr/LC_MESSAGES/rougail_cli.po b/locale/fr/LC_MESSAGES/rougail_cli.po index 800fee5..e0181cd 100644 --- a/locale/fr/LC_MESSAGES/rougail_cli.po +++ b/locale/fr/LC_MESSAGES/rougail_cli.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2025-05-14 08:22+0200\n" -"PO-Revision-Date: 2025-05-14 08:22+0200\n" +"POT-Creation-Date: 2025-12-22 15:24+0100\n" +"PO-Revision-Date: 2025-12-22 15:28+0100\n" "Last-Translator: \n" "Language-Team: \n" "Language: fr\n" @@ -14,17 +14,25 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Generated-By: pygettext.py 1.5\n" -"X-Generator: Poedit 3.5\n" +"X-Generator: Poedit 3.8\n" -#: src/rougail/cli/__main__.py:170 +#: src/rougail/cli/__main__.py:237 msgid "cannot find \"user_data\" module \"{0}\"" msgstr "ne peut trouve le module \"user_data\" \"{0}\"" -#: src/rougail/cli/__main__.py:214 +#: src/rougail/cli/__main__.py:245 +msgid "" +"interactive user data \"{0}\" is loader before uninteractive user data " +"\"{1}\"" +msgstr "" +"Les données utilisateur interactifs \"{0}\" sont chargées avant les données " +"utilisateur non interactif \"{1}\"" + +#: src/rougail/cli/__main__.py:281 msgid "cannot find cli file for \"output_name\" module \"{0}\"" msgstr "ne peut trouve le fichier cli pour le module \"output_name\" \"{0}\"" -#: src/rougail/cli/__main__.py:240 +#: src/rougail/cli/__main__.py:306 msgid "ERROR: {0}" msgstr "ERREUR : {0}" @@ -40,14 +48,79 @@ msgstr "Charger les paramètres de la ligne de commande depuis un fichier" msgid "Displays debug informations" msgstr "Afficher les informations de debug" -#: src/rougail/cli/config.py:43 +#: src/rougail/cli/config.py:41 msgid "Displays command line option warnings informations" -msgstr "Afficher les avertissements de chargement des options de la ligne de commande" +msgstr "" +"Afficher les avertissements de chargement des options de la ligne de commande" -#: src/rougail/cli/config.py:47 +#: src/rougail/cli/config.py:43 msgid "Displays Rougail version and all its components" msgstr "Afficher la version de Rougail et de tous ces composants" +#: src/rougail/cli/config.py:45 +msgid "Invalid value in user data is not allowed" +msgstr "" +"Les valeurs invalides dans les données utilisateur ne sont pas autorisées" + +#: src/rougail/cli/config.py:47 +msgid "Unknown variable in user data is not allowed" +msgstr "" +"Les variables inconnues dans les données utilisateur ne sont pas autorisées" + +#: src/rougail/cli/config.py:50 +msgid "Open each user data in separate layers" +msgstr "Charger chaque données utilisateurs dans des couches séparées" + +#: src/rougail/cli/config.py:56 +msgid "if only one user data is set in \"__.step.user_data\"" +msgstr "" +"si seulement un type de données utilisateur est renseigné dans " +"\"__.step.user_data\"" + +#: src/rougail/cli/config.py:62 +msgid "Configuration in output step is in read_write mode" +msgstr "La configuration dans l'état de sortie est dans mode lecture-écriture" + +#: src/rougail/cli/config.py:65 +msgid "Type of variables description" +msgstr "Type de description des variables" + +#: src/rougail/cli/config.py:67 +msgid "" +"To identify different variables, we use the variable description. There are " +"four types of description:\n" +"\n" +" - name_and_description: which contains the variable name followed by " +"its description\n" +" - path: the variable's path\n" +" - name: the variable name\n" +" - description: the variable's description" +msgstr "" +"Pour identifier les différentes variables, on utilise la description de la " +"variable. Il y a quatre type de descriptions:\n" +"\n" +" - name_and_description : qui contient le nom de la variable suivi de sa " +"description\n" +" - path : le chemin de la variable\n" +" - name : le nom de la variable\n" +" - description : la description de la variable" + +#: src/rougail/cli/config.py:81 +msgid "Modes that should not be accessible in read_write mode" +msgstr "Modes quoi doivent être inaccessible en mode lecture-écriture" + +#: src/rougail/cli/config.py:88 src/rougail/cli/config.py:105 +msgid "if any mode is set in \"modes_level\"" +msgstr "si aucun mode n'est défini dans \"modes_level\"" + +#: src/rougail/cli/config.py:95 src/rougail/cli/config.py:112 +msgid "mode must exists in \"modes_level\"" +msgstr "un mode doit exister dans \"modes_level\"" + +#: src/rougail/cli/config.py:98 +msgid "Modes that should not be accessible" +msgstr "Modes quoi doivent être inaccessible" + #~ msgid "do not display debug informations" #~ msgstr "ne pas afficher les informations de debug" diff --git a/locale/rougail_cli.pot b/locale/rougail_cli.pot index d192443..2604ae3 100644 --- a/locale/rougail_cli.pot +++ b/locale/rougail_cli.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2025-05-14 08:25+0200\n" +"POT-Creation-Date: 2025-12-22 15:31+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -15,15 +15,19 @@ msgstr "" "Generated-By: pygettext.py 1.5\n" -#: src/rougail/cli/__main__.py:170 +#: src/rougail/cli/__main__.py:237 msgid "cannot find \"user_data\" module \"{0}\"" msgstr "" -#: src/rougail/cli/__main__.py:214 +#: src/rougail/cli/__main__.py:245 +msgid "interactive user data \"{0}\" is loader before uninteractive user data \"{1}\"" +msgstr "" + +#: src/rougail/cli/__main__.py:281 msgid "cannot find cli file for \"output_name\" module \"{0}\"" msgstr "" -#: src/rougail/cli/__main__.py:240 +#: src/rougail/cli/__main__.py:306 msgid "ERROR: {0}" msgstr "" @@ -39,11 +43,61 @@ msgstr "" msgid "Displays debug informations" msgstr "" -#: src/rougail/cli/config.py:43 +#: src/rougail/cli/config.py:41 msgid "Displays command line option warnings informations" msgstr "" -#: src/rougail/cli/config.py:47 +#: src/rougail/cli/config.py:43 msgid "Displays Rougail version and all its components" msgstr "" +#: src/rougail/cli/config.py:45 +msgid "Invalid value in user data is not allowed" +msgstr "" + +#: src/rougail/cli/config.py:47 +msgid "Unknown variable in user data is not allowed" +msgstr "" + +#: src/rougail/cli/config.py:50 +msgid "Open each user data in separate layers" +msgstr "" + +#: src/rougail/cli/config.py:56 +msgid "if only one user data is set in \"__.step.user_data\"" +msgstr "" + +#: src/rougail/cli/config.py:62 +msgid "Configuration in output step is in read_write mode" +msgstr "" + +#: src/rougail/cli/config.py:65 +msgid "Type of variables description" +msgstr "" + +#: src/rougail/cli/config.py:67 +msgid "" +"To identify different variables, we use the variable description. There are four types of description:\n" +"\n" +" - name_and_description: which contains the variable name followed by its description\n" +" - path: the variable's path\n" +" - name: the variable name\n" +" - description: the variable's description" +msgstr "" + +#: src/rougail/cli/config.py:81 +msgid "Modes that should not be accessible in read_write mode" +msgstr "" + +#: src/rougail/cli/config.py:88 src/rougail/cli/config.py:105 +msgid "if any mode is set in \"modes_level\"" +msgstr "" + +#: src/rougail/cli/config.py:95 src/rougail/cli/config.py:112 +msgid "mode must exists in \"modes_level\"" +msgstr "" + +#: src/rougail/cli/config.py:98 +msgid "Modes that should not be accessible" +msgstr "" + diff --git a/src/rougail/cli/__main__.py b/src/rougail/cli/__main__.py index 63fd277..0dd2a36 100644 --- a/src/rougail/cli/__main__.py +++ b/src/rougail/cli/__main__.py @@ -242,7 +242,7 @@ def load_user_data(rougailconfig): interactive_user_data.setdefault(layer_name, {})[user_data_name] = rougail_user_data continue elif interactive_user_data: - raise Exception(_(f'interactive user datas "{0}" is loader before uninteractive user datas "{1}"').format(list(interactive_user_data), user_data_name)) + raise Exception(_('interactive user data "{0}" is loader before uninteractive user data "{1}"').format(list(interactive_user_data), user_data_name)) for ud in rougail_user_data( subconfig, rougailconfig=rougailconfig, diff --git a/src/rougail/cli/config.py b/src/rougail/cli/config.py index 19f1c53..2c892bb 100644 --- a/src/rougail/cli/config.py +++ b/src/rougail/cli/config.py @@ -42,17 +42,18 @@ cli: versions: false # {_('Displays Rougail version and all its components')} - invalid_user_data_error: false # {_("Invalid value in user datas is not allowed")} + invalid_user_data_error: false # {_("Invalid value in user data is not allowed")} - unknown_user_data_error: false # {_("Unknown variable in user datas is not allowed")} + unknown_user_data_error: false # {_("Unknown variable in user data is not allowed")} layers: - description: {_('Open each user datas in separate layers')} + description: {_('Open each user data in separate layers')} default: false hidden: jinja: |- {{{{ __.step.user_data is propertyerror or __.step.user_data | length < 2 }}}} return_type: boolean + description: {_('if only one user data is set in "__.step.user_data"')} load_config: default: true @@ -82,15 +83,16 @@ cli: mandatory: false disabled: jinja: | - {{% if not modes_level %}} - No mode - {{% endif %}} + {{{{ not modes_level }}}} + return_type: boolean + description: {_('if any mode is set in "modes_level"')} validators: - type: jinja jinja: | {{% if _.inaccessible_read_write_modes not in modes_level %}} not in modes_level ({{modes_level}}) {{% endif %}} + description: {_('mode must exists in "modes_level"')} inaccessible_modes: description: {_('Modes that should not be accessible')} @@ -98,15 +100,16 @@ cli: mandatory: false disabled: jinja: | - {{% if not modes_level %}} - No mode - {{% endif %}} + {{{{ not modes_level }}}} + return_type: boolean + description: {_('if any mode is set in "modes_level"')} validators: - type: jinja jinja: | {{% if _.inaccessible_modes not in modes_level %}} not in modes_level ({{modes_level}}) {{% endif %}} + description: {_('mode must exists in "modes_level"')} """ return { "options": options, diff --git a/src/rougail/cli/locale/fr/LC_MESSAGES/rougail_cli.mo b/src/rougail/cli/locale/fr/LC_MESSAGES/rougail_cli.mo index 0ae6d5c..84363d0 100644 Binary files a/src/rougail/cli/locale/fr/LC_MESSAGES/rougail_cli.mo and b/src/rougail/cli/locale/fr/LC_MESSAGES/rougail_cli.mo differ