From d3b1462db53698523ccb46a00d2027b41713acb3 Mon Sep 17 00:00:00 2001 From: Emmanuel Garette Date: Sun, 30 Mar 2025 19:47:56 +0200 Subject: [PATCH] feat: document unix file name parameters --- locale/fr/LC_MESSAGES/rougail_output_doc.po | 56 +++++++++++------- locale/rougail_output_doc.pot | 54 ++++++++++------- .../fr/LC_MESSAGES/rougail_output_doc.mo | Bin 6111 -> 6347 bytes src/rougail/output_doc/utils.py | 7 +++ 4 files changed, 74 insertions(+), 43 deletions(-) diff --git a/locale/fr/LC_MESSAGES/rougail_output_doc.po b/locale/fr/LC_MESSAGES/rougail_output_doc.po index 9fb93bf87..d5424378d 100644 --- a/locale/fr/LC_MESSAGES/rougail_output_doc.po +++ b/locale/fr/LC_MESSAGES/rougail_output_doc.po @@ -5,8 +5,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" -"POT-Creation-Date: 2025-03-29 15:07+0100\n" -"PO-Revision-Date: 2025-03-29 15:08+0100\n" +"POT-Creation-Date: 2025-03-30 19:45+0200\n" +"PO-Revision-Date: 2025-03-30 19:46+0200\n" "Last-Translator: \n" "Language-Team: \n" "Language: fr\n" @@ -120,39 +120,39 @@ msgstr "multiple" msgid "No attribute \"description\" for \"{0}\" in {1}" msgstr "Aucun attribut \"description\" pour \"{0}\" dans {1}" -#: src/rougail/output_doc/doc.py:464 +#: src/rougail/output_doc/doc.py:463 msgid "(default)" msgstr "(défaut)" -#: src/rougail/output_doc/doc.py:471 +#: src/rougail/output_doc/doc.py:470 msgid "text based with regular expressions \"{0}\"" msgstr "texte avec expression rationnelle \"{0}\"" -#: src/rougail/output_doc/doc.py:559 +#: src/rougail/output_doc/doc.py:558 msgid "depends on a calculation" msgstr "dépend d'un calcul" -#: src/rougail/output_doc/doc.py:560 +#: src/rougail/output_doc/doc.py:559 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:582 +#: src/rougail/output_doc/doc.py:581 msgid "the value of the variable \"{0}\"" msgstr "la valeur de la variable \"{0}\"" -#: src/rougail/output_doc/doc.py:583 +#: src/rougail/output_doc/doc.py:582 msgid "the value of an undocumented variable" msgstr "la valeur d'une variable non documentée" -#: src/rougail/output_doc/doc.py:598 +#: src/rougail/output_doc/doc.py:597 msgid "the values of undocumented variables" msgstr "les valeurs de variables non documentées" -#: src/rougail/output_doc/doc.py:605 +#: src/rougail/output_doc/doc.py:604 msgid "the value of the identifier" msgstr "la valeur de l'identifiant" -#: src/rougail/output_doc/doc.py:609 +#: src/rougail/output_doc/doc.py:608 msgid "the value of the {0}" msgstr "la valeur de l'{0}" @@ -165,12 +165,12 @@ msgid "Example with all variables modifiable" msgstr "Exemple avec toutes les variables modifiable" #: src/rougail/output_doc/output/console.py:142 -#: src/rougail/output_doc/utils.py:366 +#: src/rougail/output_doc/utils.py:373 msgid "Variable" msgstr "Variable" #: src/rougail/output_doc/output/console.py:143 -#: src/rougail/output_doc/utils.py:366 +#: src/rougail/output_doc/utils.py:373 msgid "Description" msgstr "Description" @@ -258,39 +258,51 @@ msgstr "longueur maximal pour le secret est de {0} caractères" msgid "forbidden characters are {0}" msgstr "caractères interdits sont {0}" -#: src/rougail/output_doc/utils.py:233 +#: src/rougail/output_doc/utils.py:93 +msgid "this filename could be a relative path" +msgstr "ce nom de fichier peut être un chemin relative" + +#: src/rougail/output_doc/utils.py:94 +msgid "this file must exists" +msgstr "ce fichier doit exister" + +#: src/rougail/output_doc/utils.py:95 +msgid "file type allowed: {0}" +msgstr "type de fichier autorisé : {0}" + +#: src/rougail/output_doc/utils.py:240 msgid "Variables for \"{0}\"" msgstr "Variables pour \"{0}\"" -#: src/rougail/output_doc/utils.py:249 +#: src/rougail/output_doc/utils.py:256 msgid "Identifiers" msgstr "Identifiants" -#: src/rougail/output_doc/utils.py:314 +#: src/rougail/output_doc/utils.py:321 msgid "Validator" msgstr "Validateur" -#: src/rougail/output_doc/utils.py:316 +#: src/rougail/output_doc/utils.py:323 msgid "Validators" msgstr "Validateurs" -#: src/rougail/output_doc/utils.py:318 +#: src/rougail/output_doc/utils.py:325 msgid "Choices" msgstr "Choix" -#: src/rougail/output_doc/utils.py:320 +#: src/rougail/output_doc/utils.py:327 msgid "Default" msgstr "Défaut" -#: src/rougail/output_doc/utils.py:324 +#: src/rougail/output_doc/utils.py:331 msgid "Example" msgstr "Exemple" -#: src/rougail/output_doc/utils.py:326 +#: src/rougail/output_doc/utils.py:333 msgid "Examples" msgstr "Exemples" -#: src/rougail/output_doc/utils.py:387 +#: src/rougail/output_doc/utils.py:394 msgid "{0}: {1}" msgstr "{0} : {1}" diff --git a/locale/rougail_output_doc.pot b/locale/rougail_output_doc.pot index 55899d622..8924f69b6 100644 --- a/locale/rougail_output_doc.pot +++ b/locale/rougail_output_doc.pot @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2025-03-29 15:07+0100\n" +"POT-Creation-Date: 2025-03-30 19:46+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -119,39 +119,39 @@ msgstr "" msgid "No attribute \"description\" for \"{0}\" in {1}" msgstr "" -#: src/rougail/output_doc/doc.py:464 +#: src/rougail/output_doc/doc.py:463 msgid "(default)" msgstr "" -#: src/rougail/output_doc/doc.py:471 +#: src/rougail/output_doc/doc.py:470 msgid "text based with regular expressions \"{0}\"" msgstr "" -#: src/rougail/output_doc/doc.py:559 +#: src/rougail/output_doc/doc.py:558 msgid "depends on a calculation" msgstr "" -#: src/rougail/output_doc/doc.py:560 +#: src/rougail/output_doc/doc.py:559 msgid "\"{0}\" is a calculation for {1} but has no description in {2}" msgstr "" -#: src/rougail/output_doc/doc.py:582 +#: src/rougail/output_doc/doc.py:581 msgid "the value of the variable \"{0}\"" msgstr "" -#: src/rougail/output_doc/doc.py:583 +#: src/rougail/output_doc/doc.py:582 msgid "the value of an undocumented variable" msgstr "" -#: src/rougail/output_doc/doc.py:598 +#: src/rougail/output_doc/doc.py:597 msgid "the values of undocumented variables" msgstr "" -#: src/rougail/output_doc/doc.py:605 +#: src/rougail/output_doc/doc.py:604 msgid "the value of the identifier" msgstr "" -#: src/rougail/output_doc/doc.py:609 +#: src/rougail/output_doc/doc.py:608 msgid "the value of the {0}" msgstr "" @@ -164,12 +164,12 @@ msgid "Example with all variables modifiable" msgstr "" #: src/rougail/output_doc/output/console.py:142 -#: src/rougail/output_doc/utils.py:366 +#: src/rougail/output_doc/utils.py:373 msgid "Variable" msgstr "" #: src/rougail/output_doc/output/console.py:143 -#: src/rougail/output_doc/utils.py:366 +#: src/rougail/output_doc/utils.py:373 msgid "Description" msgstr "" @@ -257,39 +257,51 @@ msgstr "" msgid "forbidden characters are {0}" msgstr "" -#: src/rougail/output_doc/utils.py:233 +#: src/rougail/output_doc/utils.py:93 +msgid "this filename could be a relative path" +msgstr "" + +#: src/rougail/output_doc/utils.py:94 +msgid "this file must exists" +msgstr "" + +#: src/rougail/output_doc/utils.py:95 +msgid "file type allowed: {0}" +msgstr "" + +#: src/rougail/output_doc/utils.py:240 msgid "Variables for \"{0}\"" msgstr "" -#: src/rougail/output_doc/utils.py:249 +#: src/rougail/output_doc/utils.py:256 msgid "Identifiers" msgstr "" -#: src/rougail/output_doc/utils.py:314 +#: src/rougail/output_doc/utils.py:321 msgid "Validator" msgstr "" -#: src/rougail/output_doc/utils.py:316 +#: src/rougail/output_doc/utils.py:323 msgid "Validators" msgstr "" -#: src/rougail/output_doc/utils.py:318 +#: src/rougail/output_doc/utils.py:325 msgid "Choices" msgstr "" -#: src/rougail/output_doc/utils.py:320 +#: src/rougail/output_doc/utils.py:327 msgid "Default" msgstr "" -#: src/rougail/output_doc/utils.py:324 +#: src/rougail/output_doc/utils.py:331 msgid "Example" msgstr "" -#: src/rougail/output_doc/utils.py:326 +#: src/rougail/output_doc/utils.py:333 msgid "Examples" msgstr "" -#: src/rougail/output_doc/utils.py:387 +#: src/rougail/output_doc/utils.py:394 msgid "{0}: {1}" msgstr "" diff --git a/src/rougail/output_doc/locale/fr/LC_MESSAGES/rougail_output_doc.mo b/src/rougail/output_doc/locale/fr/LC_MESSAGES/rougail_output_doc.mo index 0371c26a410160d966bd160a3b2b871122006612..12829983c6ccae89a9d514df883300b242a85a6e 100644 GIT binary patch delta 1731 zcmYk+U1*b69LMn!P1O2Qwbtltwa2=4)oPoVv}&v`^}PssQxLo|CePM~rAbMi%!;sB zd;!7Hi!#NVvWtOM_JT&nzzY@K1a+vFUd-Ke45r@sGB<>Mf60T}A^+#|rnPyB6MzIF7xDJEv(t;h>VNA*Nb2EdE6WD-fF^rdR9^ODr@CY^VpV*GCu^yXwxDD4K1DZpq zg^uD(ynwvS*IX9hw>SrHVLkJkhukcrV-gqR-^j}>V3amg{E$ld|Qs+wz$xs) zE4T#zKqW9`cGU({spF_|527l364&EbSZdhlp?jc2eMe?U$60+rZn)L{)%f1RN?YW#gjuIAJE)IY+_FdZu41jg_VYQVpc zT`-+>)rBNb6YN4&Y(J8eNux?zKyBqH>ablzC2$=(@h)z|H>d?BN_=Y>HwRG}9YsAb zf?B{AzIRX)|AU$!$m|-R5w({+s0tNPXXktT2p^-iA2tV9qypx zceJ=FTrJsNUkBUtfbS(##U5i9K1U_e%<4$a^r8-3KWf3Bb5RA(q0Z9JNCFA-i~qrk zYKK|M5!R{Qgj#tDqd1EEqRcG}VB6S8u%UN5ciKSh=4L{>yOq$AnhCXTqK{BrEup+M zqK?O8W=D%3PbzdFNO@n)_|zV6z%AI1_4#12;8|zbEqDd< zzBij3bZjbD%%tsMp0;@>ll0ur96OZs2FlN7uMEtJMQn6KBHrB|SzB(ZJs(_FnJDcr zYHGlB@-|uYa(TCKd%{+xy;j#6+@1RG<8;pT=XLUi{%mg0{_p7_r|8++m%Y4Wi&>i* Qa0cD%`(>1$gr^1m1v{9|NB{r; delta 1498 zcmX}sPe{{Y9LMozxoK|A|GLu3m71%y=BCp$|1C>AbSNq!39?IIQA7!ONQXqxt#m{} zMS?_!FwB*QI@Q5I4 zOw5!s%UT8wV+o$XBJ9N+yop+11U2ys^y3s3;1Bd+29q$MsX}e^Bs#Gh`7=E{^05!y zIEV$TZywMnWZ)UD$7$rxEb;K+3N~ONvnoOdkcsQ7ieE5_OIfK1 zRb(5pgMJVl*om62E1URpeWs5AHfye7Jq}_BXHcK7;!bps5VaUaE!d4Z$wgFB4xw^o z9JRnSat5=ERrm`Pu?p^`8e4OTzb5QqfGC^CsEtgb7I=+{&$jTK8+rYIsRaEqDwyaTn@jy{J1IMnz^8l_M^8Rfz%g z<55(O44@`{hyk3p`c5)@AN?qL@j5C}u}4)DNMO@epdGmobE+$P3{#b2MxWRK}m$OQNl`^mW}@6IHjUQbXOE zY^Ao-PFsQWQk5CHT`jXG?sk;MqO??WAQf$VKedsn&8sMJ^&6+Cs3_qTVI`;zq{B5+ zwOKZrEQ%;8luQ8)C}p^iUvzjPdfQZVwJLSg zYO3CnHYz{D$yXZw7k?sAw|1%?#> diff --git a/src/rougail/output_doc/utils.py b/src/rougail/output_doc/utils.py index dd375a312..37b6f53f6 100644 --- a/src/rougail/output_doc/utils.py +++ b/src/rougail/output_doc/utils.py @@ -88,6 +88,13 @@ DocTypes = { "forbidden_char": _("forbidden characters are {0}"), }, }, + "unix_filename": { + "params": { + "allow_relative": _("this filename could be a relative path"), + "test_existence": _("this file must exists"), + "types": _("file type allowed: {0}"), + }, + }, }