msgid ""
msgstr ""
"Project-Id-Version: Tiramisu\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2018-04-11 17:38+CEST\n"
"PO-Revision-Date: \n"
"Last-Translator: Emmanuel Garette <egarette@cadoles.com>\n"
"Language-Team: Tiramisu's team <egarette@cadoles.com>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Generator: Poedit 2.0.6\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"X-Poedit-SourceCharset: UTF-8\n"

#: tiramisu/api.py:98
msgid "access to option without property restriction"
msgstr "accès à une option sans validation de propriété"

#: tiramisu/api.py:99
msgid "access to option without verifying permissive property"
msgstr "accès à une option sans vérifié les propriétés permises"

#: tiramisu/api.py:172
msgid "index \"{}\" is higher than the master length \"{}\" for option \"{}\""
msgstr ""
"l'index \"{}\" est supérieur à la longueur de l'option maître \"{}\" pour "
"l'option \"{}\""

#: tiramisu/api.py:177
msgid "option must not be an optiondescription"
msgstr "option ne doit pas être une optiondescription"

#: tiramisu/api.py:209
msgid "unknown method {}"
msgstr "méthode {} inconnue"

#: tiramisu/api.py:314 tiramisu/api.py:595
msgid "{} is unknown"
msgstr "{} est inconnu"

#: tiramisu/api.py:411
msgid "cannot add this property: \"{0}\""
msgstr "ne peut pas ajouter cette propriété : \"{0}\""

#: tiramisu/api.py:643 tiramisu/api.py:1050
msgid "please specify a valid sub function ({})"
msgstr "veuillez spécifier une sous fonction valide ({})"

#: tiramisu/api.py:706 tiramisu/api.py:967
msgid "unknown list type {}"
msgstr "type de liste inconnue {}"

#: tiramisu/api.py:953 tiramisu/api.py:958 tiramisu/api.py:961
msgid "not implemented yet"
msgstr "non implémenté encore"

#: tiramisu/autolib.py:211
msgid "unable to carry out a calculation for \"{}\", {}"
msgstr "impossible d'effectuer le calcul pour \"{}\", {}"

#: tiramisu/autolib.py:227
msgid ""
"function \"{}\" with arguments \"{}\" and \"{}\" return the list \"{}\" for "
"the slave option \"{}\""
msgstr ""
"la fonction \"{}\" avec les arguments \"{}\" et \"{}\" retourne la liste "
"\"{}\" pour l'option esclave \"{}\""

#: tiramisu/autolib.py:235
msgid "function \"{}\" return the list \"{}\" for the slave option \"{}\""
msgstr "fonction \"{}\" retourne une liste \"{}\" pour l'option esclave \"{}\""

#: tiramisu/autolib.py:259
msgid ""
"unexpected error \"{0}\" in function \"{1}\" with arguments \"{3}\" and "
"\"{4}\" for option \"{2}\""
msgstr ""
"erreur inattendue \"{0}\" dans la fonction \"{1}\" avec les arguments "
"\"{3}\" et \"{4}\" pour l'option \"{2}\""

#: tiramisu/autolib.py:266
msgid "unexpected error \"{0}\" in function \"{1}\" for option \"{2}\""
msgstr ""
"erreur inattendue \"{0}\" dans la fonction \"{1}\" pour l'option \"{2}\""

#: tiramisu/config.py:66
msgid "descr must be an optiondescription, not {0}"
msgstr "descr doit être une optiondescription pas un {0}"

#: tiramisu/config.py:172
msgid "unknown option {}"
msgstr "option {} inconnue"

#: tiramisu/config.py:189
msgid "unknown group_type: {0}"
msgstr "group_type inconnu: {0}"

#: tiramisu/config.py:231 tiramisu/setting.py:310 tiramisu/value.py:60
msgid "the context does not exist anymore"
msgstr "le context n'existe plus"

#: tiramisu/config.py:236
msgid "no option description found for this config (may be GroupConfig)"
msgstr ""
"pas d'option description trouvé pour cette config (peut être un GroupConfig)"

#: tiramisu/config.py:264
msgid "can't assign to a SymLinkOption"
msgstr "ne peut assigner une valeur à une SymLinkOption"

#: tiramisu/config.py:289
msgid "can't delete a SymLinkOption"
msgstr "ne peut supprimer une valeur à une SymLinkOption"

#: tiramisu/config.py:359
msgid ""
"slave option \"{}\" has higher length \"{}\" than the master length \"{}\""
msgstr ""
"l'option esclave \"{}\" a une longueur supérieur \"{}\" à la longueur de "
"l'option maitre \"{}\""

#: tiramisu/config.py:442
msgid "no option found in config with these criteria"
msgstr "aucune option trouvée dans la config avec ces critères"

#: tiramisu/config.py:492
msgid "make_dict can't filtering with value without option"
msgstr "make_dict ne peut filtrer sur une valeur mais sans option"

#: tiramisu/config.py:515
msgid "unexpected path \"{0}\", should start with \"{1}\""
msgstr "chemin inconsistant \"{0}\", devrait commencé par \"{1}\""

#: tiramisu/config.py:718
msgid "cannot set MasterSlaves object has root optiondescription"
msgstr "ne peut assigner un objet masterslaves comme optiondescription racine"

#: tiramisu/config.py:733
msgid "invalid session ID: {0} for config"
msgstr "ID de session invalide : {0} pour une config"

#: tiramisu/config.py:766
msgid "groupconfig's children must be a list"
msgstr "enfants d'une groupconfig doit être une liste"

#: tiramisu/config.py:771
msgid "groupconfig's children must be Config, MetaConfig or GroupConfig"
msgstr ""
"les enfants d'un groupconfig doivent être des Config, MetaConfig ou "
"GroupConfig"

#: tiramisu/config.py:778
msgid "config name must be uniq in groupconfig for \"{0}\""
msgstr "le nom d'un config doit être unique dans un groupconfig pour \"{0}\""

#: tiramisu/config.py:926
msgid "unknown config \"{}\""
msgstr "config \"{}\" inconnue"

#: tiramisu/config.py:947
msgid "metaconfig's children should be config, not {0}"
msgstr "enfants d'une metaconfig doit être une config, pas {0}"

#: tiramisu/config.py:951
msgid "child has already a metaconfig's"
msgstr "enfant a déjà une metaconfig"

#: tiramisu/config.py:955
msgid "all config in metaconfig must have the same optiondescription"
msgstr ""
"toutes les configs d'une metaconfig doivent avoir la même optiondescription"

#: tiramisu/config.py:979
msgid ""
"force_default, force_default_if_same or force_dont_change_value cannot be "
"set with only_config"
msgstr ""
"force_default, force_default_if_same ou force_dont_change_value ne peuvent "
"pas être spécifié avec only_config"

#: tiramisu/config.py:991
msgid "force_default and force_dont_change_value cannot be set together"
msgstr ""
"force_default et force_dont_change_value ne peuvent pas être mis ensemble"

#: tiramisu/config.py:1057
msgid "config name must be uniq in groupconfig for {0}"
msgstr "le nom de la config doit être unique dans un groupconfig pour {0}"

#: tiramisu/error.py:23
msgid "and"
msgstr "et"

#: tiramisu/error.py:25
msgid "or"
msgstr "ou"

#: tiramisu/error.py:49
msgid " {} "
msgstr " {} "

#: tiramisu/error.py:110 tiramisu/setting.py:510
msgid "property"
msgstr "de la propriété"

#: tiramisu/error.py:112 tiramisu/setting.py:512
msgid "properties"
msgstr "des propriétés"

#: tiramisu/error.py:114
msgid "cannot access to {0} \"{1}\" because \"{2}\" has {3} {4}"
msgstr "ne peut accéder à {0} \"{1}\" parce que \"{2}\" a {3} {4}"

#: tiramisu/error.py:121
msgid "cannot access to {0} \"{1}\" because has {2} {3}"
msgstr "ne peut accéder à l'{0} \"{1}\" a cause {2} {3}"

#: tiramisu/option/baseoption.py:61
msgid "{}_params must have an option not a {} for first argument"
msgstr "{}_params doit avoir une option pas un {} pour premier argument"

#: tiramisu/option/baseoption.py:75
msgid "{}_params must have a boolean not a {} for second argument"
msgstr "{}_params doit avoir un booléan pas un {} pour second argument"

#: tiramisu/option/baseoption.py:84
msgid "{0}_params with length of tuple as 1 must only have None as first value"
msgstr ""
"{0}_params avec un tuple de longueur 1 doit seulement avoir None comme "
"première valeur"

#: tiramisu/option/baseoption.py:91
msgid "{0}_params must only have 1 or 2 as length"
msgstr "{0}_params doit seulement avoir une longueur de 1 ou 2"

#: tiramisu/option/baseoption.py:98
msgid "{0} must be a function"
msgstr "{0} doit être une fonction"

#: tiramisu/option/baseoption.py:101
msgid "{0}_params must be a dict"
msgstr "{0}_params doit être un dict"

#: tiramisu/option/baseoption.py:104
msgid "{0}_params with key {1} mustn't have length different to 1"
msgstr ""
"{0}_params avec la clef {1} ne doit pas avoir une longueur différent de 1"

#: tiramisu/option/baseoption.py:108
msgid "{0}_params must be tuple for key \"{1}\""
msgstr "{0}_params doit être un tuple pour la clef \"{1}\""

#: tiramisu/option/baseoption.py:142
msgid "invalid name: \"{0}\" for option"
msgstr "nom invalide : \"{0}\" pour une option"

#: tiramisu/option/baseoption.py:158
msgid "invalid properties type {0} for {1}, must be a frozenset"
msgstr "type {0} invalide pour des propriétés pour {1}, doit être un frozenset"

#: tiramisu/option/baseoption.py:164
msgid "conflict: properties already set in requirement {0}"
msgstr "conflit : les propriétés sont déjà mis dans les requirements {0}"

#: tiramisu/option/baseoption.py:251
msgid "cannot find those arguments \"{}\" in function \"{}\" for \"{}\""
msgstr ""
"ne peut trouver les arguments \"{}\" dans la fonction \"{}\" pour \"{}\""

#: tiramisu/option/baseoption.py:271
msgid "missing those arguments \"{}\" in function \"{}\" for \"{}\""
msgstr "les arguments \"{}\" sont manquant dans la fonction \"{}\" pour \"{}\""

#: tiramisu/option/baseoption.py:311
msgid ""
"params defined for a callback function but no callback defined yet for "
"option \"{0}\""
msgstr ""
"paramètres définis pour la fonction de callback mais aucun callback défini "
"pour l'option \"{0}\""

#: tiramisu/option/baseoption.py:316
msgid "a callback is already set for {0}, cannot set another one's"
msgstr "un calback a déjà été définit pour {0}, ne peut en définir un autre"

#: tiramisu/option/baseoption.py:415 tiramisu/storage/dictionary/value.py:268
#: tiramisu/storage/sqlite3/value.py:155
msgid "information's item not found: {0}"
msgstr "item '{0}' dans les informations non trouvée"

#: tiramisu/option/baseoption.py:428
msgid "'{0}' ({1}) object attribute '{2}' is read-only"
msgstr "l'attribut {2} de l'objet '{0}' ({1}) est en lecture seule"

#: tiramisu/option/baseoption.py:468
msgid "\"{}\" ({}) object attribute \"{}\" is read-only"
msgstr "\"{}\" ({}) l'attribut de l'objet \"{}\" est en lecture seule"

#: tiramisu/option/baseoption.py:485
msgid "invalid string"
msgstr "invalide caractère"

#: tiramisu/option/baseoption.py:531
msgid "malformed requirements must be an option in option {0}"
msgstr "requirements mal formés doit être une option dans l'option {0}"

#: tiramisu/option/baseoption.py:534
msgid ""
"malformed requirements multi option must not set as requires of non multi "
"option {0}"
msgstr ""
"requirements mal formés une option multiple ne doit pas être spécifié comme "
"pré-requis à l'option non multiple {0}"

#: tiramisu/option/baseoption.py:567
msgid ""
"malformed requirements expected must have option and value for option {0}"
msgstr ""
"expected mal formés pour le requirements, doit avoir une option et une "
"valeur pour l'option {0}"

#: tiramisu/option/baseoption.py:575 tiramisu/option/baseoption.py:591
msgid "malformed requirements expected value must be valid for option {0}: {1}"
msgstr ""
"valeur de \"expected\" malformé, doit être valide pour l'option {0} : {1}"

#: tiramisu/option/baseoption.py:606
msgid ""
"malformed requirements for option: {0} action cannot be force_store_value"
msgstr ""
"requirements mal formés pour l'option : {0} action ne peut pas être "
"force_store_value"

#: tiramisu/option/baseoption.py:614
msgid "malformed requirements for option: {0} inverse must be boolean"
msgstr ""
"requirements mal formés pour l'option : {0} inverse doit être un booléen"

#: tiramisu/option/baseoption.py:621
msgid "malformed requirements for option: {0} transitive must be boolean"
msgstr ""
"requirements mal formés pour l'option : {0} transitive doit être booléen"

#: tiramisu/option/baseoption.py:628
msgid "malformed requirements for option: {0} same_action must be boolean"
msgstr ""
"requirements mal formés pour l'option : {0} same_action doit être un booléen"

#: tiramisu/option/baseoption.py:635
msgid ""
"malformed requirements for option: \"{0}\" operator must be \"or\" or \"and\""
msgstr ""
"requirements mal formés pour l'option : \"{0}\" l'opérateur doit être \"or\" "
"ou \"and\""

#: tiramisu/option/baseoption.py:647
msgid "malformed requirements type for option: {0}, must be a dict"
msgstr ""
"type requirements malformé pour l'option : {0}, doit être un dictionnaire"

#: tiramisu/option/baseoption.py:653
msgid "malformed requirements for option: {0} unknown keys {1}, must only {2}"
msgstr ""
"requirements mal formés pour l'option : {0} clefs inconnues {1}, doit "
"seulement avoir {2}"

#: tiramisu/option/baseoption.py:662
msgid ""
"malformed requirements for option: {0} require must have option, expected "
"and action keys"
msgstr ""
"requirements malformé pour l'option : {0} l'exigence doit avoir les clefs "
"option, expected et action"

#: tiramisu/option/booloption.py:30
msgid "boolean"
msgstr "booléen"

#: tiramisu/option/broadcastoption.py:31
msgid "broadcast address"
msgstr "adresse broadcast"

#: tiramisu/option/broadcastoption.py:54 tiramisu/option/ipoption.py:106
msgid "invalid len for vals"
msgstr "longueur invalide pour vals"

#: tiramisu/option/broadcastoption.py:59
msgid "broadcast \"{4}\" invalid with network {0}/{1} (\"{2}\"/\"{3}\")"
msgstr ""
"le broadcast \"{4}\" est invalide pour le réseau {0}/{1} (\"{2}\"/\"{3}\")"

#: tiramisu/option/choiceoption.py:37
msgid "choice"
msgstr "choix"

#: tiramisu/option/choiceoption.py:65
msgid "values is not a function, so values_params must be None"
msgstr "values n'est pas une fonction, donc values_params doit être None"

#: tiramisu/option/choiceoption.py:67
msgid "values must be a tuple or a function for {0}"
msgstr "values doit être un tuple ou une fonction pour {0}"

#: tiramisu/option/choiceoption.py:103
msgid "calculated values for {0} is not a list"
msgstr "valeurs calculées for {0} n'est pas une liste"

#: tiramisu/option/choiceoption.py:116
msgid "only \"{0}\" is allowed"
msgstr "seul \"{0}\" est autorisé"

#: tiramisu/option/choiceoption.py:119
msgid "only \"{0}\" are allowed"
msgstr "seul \"{0}\" sont autorisés"

#: tiramisu/option/dateoption.py:30
msgid "date"
msgstr "date"

#: tiramisu/option/domainnameoption.py:37
msgid "domain name"
msgstr "nom de domaine"

#: tiramisu/option/domainnameoption.py:57
msgid "unknown type_ {0} for hostname"
msgstr "type_ inconnu {0} pour le nom d'hôte"

#: tiramisu/option/domainnameoption.py:60
msgid "allow_ip must be a boolean"
msgstr "allow_ip doit être un booléen"

#: tiramisu/option/domainnameoption.py:62
msgid "allow_without_dot must be a boolean"
msgstr "allow_without_dot doit être un booléen"

#: tiramisu/option/domainnameoption.py:108
msgid "invalid length (min 1)"
msgstr "longueur invalide (min 1)"

#: tiramisu/option/domainnameoption.py:110
msgid "invalid length (max {0})"
msgstr "longueur invalide (max {0})"

#: tiramisu/option/domainnameoption.py:126
msgid "must not be an IP"
msgstr "ne doit pas être une IP"

#: tiramisu/option/domainnameoption.py:130
msgid "must have dot"
msgstr "doit avec un point"

#: tiramisu/option/domainnameoption.py:132
msgid "invalid length (max 255)"
msgstr "longueur invalide (max 255)"

#: tiramisu/option/domainnameoption.py:140
msgid "some characters are uppercase"
msgstr "des caractères sont en majuscule"

#: tiramisu/option/domainnameoption.py:143
msgid "some characters may cause problems"
msgstr "des caractères peuvent poser problèmes"

#: tiramisu/option/dynoptiondescription.py:55
msgid "cannot set optiondescription in a dynoptiondescription"
msgstr "ne peut mettre une optiondescription dans une dynoptiondescription"

#: tiramisu/option/dynoptiondescription.py:60
msgid "cannot set symlinkoption in a dynoptiondescription"
msgstr "ne peut mettre une symlinkoption dans une dynoptiondescription"

#: tiramisu/option/dynoptiondescription.py:71
msgid "callback is mandatory for the dynoptiondescription \"{}\""
msgstr "un callback est obligatoire pour le dynoptiondescription \"{}\""

#: tiramisu/option/dynoptiondescription.py:84
msgid "DynOptionDescription callback for option \"{}\", is not a list ({})"
msgstr ""
"le résultat du callback du DynOptionDescription de l'option \"{}\" n'est pas "
"une liste ({})"

#: tiramisu/option/dynoptiondescription.py:87
msgid "DynOptionDescription callback return not unique value"
msgstr "le callback de DynOptionDescription retourne une valeur non unique"

#: tiramisu/option/dynoptiondescription.py:90
msgid "invalid suffix \"{}\" for option \"{}\""
msgstr "suffixe \"{}\" invalide pour l'option \"{}\""

#: tiramisu/option/emailoption.py:31
msgid "email address"
msgstr "adresse mail"

#: tiramisu/option/filenameoption.py:30
msgid "file name"
msgstr "nom de fichier"

#: tiramisu/option/floatoption.py:30
msgid "float"
msgstr "nombre flottant"

#: tiramisu/option/intoption.py:30
msgid "integer"
msgstr "nombre"

#: tiramisu/option/ipoption.py:32
msgid "IP"
msgstr "IP"

#: tiramisu/option/ipoption.py:89
msgid "shouldn't in reserved class"
msgstr "ne devrait pas être dans une classe réservée"

#: tiramisu/option/ipoption.py:91 tiramisu/option/networkoption.py:56
msgid "mustn't be in reserved class"
msgstr "ne doit pas être dans une classe réservée"

#: tiramisu/option/ipoption.py:95
msgid "should be in private class"
msgstr "devrait être dans une classe privée"

#: tiramisu/option/ipoption.py:97
msgid "must be in private class"
msgstr "doit être dans une classe privée"

#: tiramisu/option/ipoption.py:112
msgid "\"{4}\" is not in network \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")"
msgstr "\"{4}\" n'est pas dans le réseau \"{0}\"/\"{1}\" (\"{2}\"/\"{3}\")"

#: tiramisu/option/masterslave.py:50
msgid "a master and a slave and mandatory in masterslaves \"{}\""
msgstr ""
"une option maître et une option esclave sont obligatoires dans la "
"masterslaves \"{}\""

#: tiramisu/option/masterslave.py:54
msgid "master group \"{0}\" shall not have a symlinkoption"
msgstr "une masterslaves \"{0}\" ne doit pas avoir de symlinkoption"

#: tiramisu/option/masterslave.py:57
msgid "master group \"{0}\" shall not have a subgroup"
msgstr "une masterslaves \"{0}\" ne doit pas avoir de sous-groupe"

#: tiramisu/option/masterslave.py:60
msgid ""
"only multi option allowed in master group \"{0}\" but option \"{1}\" is not "
"a multi"
msgstr ""
"seules des options multiples sont autorisés dans la masterslaves \"{0}\" "
"alors que l'option \"{1}\" n'est pas une option multiple"

#: tiramisu/option/masterslave.py:64
msgid ""
"not allowed default value for option \"{0}\" in master/slave object \"{1}\""
msgstr ""
"valeur par défaut non autorisée pour l'option \"{0}\" dans l'objet "
"masterslaves \"{1}\""

#: tiramisu/option/masterslave.py:82
msgid "callback of master's option shall not refered a slave's ones"
msgstr ""
"callback d'une variable maitre ne devrait pas référencer des variables "
"esclaves"

#: tiramisu/option/masterslave.py:183
msgid "cannot reduce length of the master \"{}\""
msgstr "il est impossible de réduire la longueur de l'option maître \"{}\""

#: tiramisu/option/netmaskoption.py:32
msgid "netmask address"
msgstr "adresse netmask"

#: tiramisu/option/netmaskoption.py:84
msgid "invalid len for opts"
msgstr "longueur invalide pour opts"

#: tiramisu/option/netmaskoption.py:92
msgid "this is a network with netmask \"{0}\" (\"{1}\")"
msgstr "c'est une adresse réseau avec le masque \"{0}\" (\"{1}\")"

#: tiramisu/option/netmaskoption.py:94
msgid "this is a broadcast with netmask \"{0}\" (\"{1}\")"
msgstr "c'est une adresse broadcast avec le masque \"{0}\" (\"{1}\")"

#: tiramisu/option/netmaskoption.py:98
msgid "with netmask \"{0}\" (\"{1}\")"
msgstr "avec le masque \"{0}\" (\"{1}\")"

#: tiramisu/option/networkoption.py:31
msgid "network address"
msgstr "adresse réseau"

#: tiramisu/option/networkoption.py:54
msgid "shouldn't be in reserved class"
msgstr "ne devrait pas être dans une classe réservée"

#: tiramisu/option/option.py:78
msgid "default_multi is set whereas multi is False in option: {0}"
msgstr ""
"default_multi est spécifié alors que multi est à False pour l'option : {0}"

#: tiramisu/option/option.py:95
msgid "invalid multi value"
msgstr "valeur multiple invalide"

#: tiramisu/option/option.py:121
msgid "unique must be a boolean"
msgstr "unique doit être un booléan"

#: tiramisu/option/option.py:123
msgid "unique must be set only with multi value"
msgstr "unique doit être activé uniquement avec une valeur multiple"

#: tiramisu/option/option.py:134
msgid "invalid default_multi value {0} for option {1}: {2}"
msgstr "la valeur default_multi est invalide {0} pour l'option {1} : {2}"

#: tiramisu/option/option.py:140
msgid ""
"invalid default_multi value {0} for option {1}: must be a list for a submulti"
msgstr ""
"la valeur de la default_multi {0} est invalide pour l'option {1} : doit être "
"une liste pour une submulti"

#: tiramisu/option/option.py:216
msgid "invalid value \"{}\", this value is already in \"{}\""
msgstr "valeur invalide \"{}\", cette valeur est déjà dans \"{}\""

#: tiramisu/option/option.py:250
msgid "which must not be a list"
msgstr "qui ne doit pas être une liste"

#: tiramisu/option/option.py:281 tiramisu/option/option.py:298
msgid "which must be a list"
msgstr "qui doit être une liste"

#: tiramisu/option/option.py:294
msgid "this value is not uniq"
msgstr "cette valeur n'est pas unique"

#: tiramisu/option/option.py:303
msgid "which \"{}\" must be a list of list"
msgstr "lequel \"{}\" doit être une liste de liste"

#: tiramisu/option/option.py:328
msgid "attention, \"{0}\" could be an invalid {1} for \"{2}\""
msgstr "attention, \"{0}\" peut être un {1} invalide pour \"{2}\""

#: tiramisu/option/option.py:333
msgid "\"{0}\" is an invalid {1} for \"{2}\""
msgstr "\"{0}\" est une valeur invalide pour l'option \"{2}\" de type {1}"

#: tiramisu/option/option.py:383 tiramisu/option/option.py:389
msgid "cannot add consistency with submulti option"
msgstr "ne peut ajouter de test de consistence a une option submulti"

#: tiramisu/option/option.py:391
msgid "consistency must be set with an option, not {}"
msgstr ""
"test de consistence doit être renseigné avec une option, et non avec {}"

#: tiramisu/option/option.py:394 tiramisu/option/option.py:402
msgid ""
"almost one option in consistency is in a dynoptiondescription but not all"
msgstr ""
"au moins une option dans le test de consistance est dans une "
"dynoptiondescription mais pas toutes"

#: tiramisu/option/option.py:398
msgid "option in consistency must be in same dynoptiondescription"
msgstr ""
"option dans une consistency doit être dans le même dynoptiondescription"

#: tiramisu/option/option.py:405
msgid "cannot add consistency with itself"
msgstr "ne peut ajouter une consistency avec lui même"

#: tiramisu/option/option.py:407
msgid "every options in consistency must be multi or none"
msgstr ""
"toutes les options d'une consistency doivent être multi ou ne pas l'être"

#: tiramisu/option/option.py:428
msgid "'{0}' ({1}) cannot add consistency, option is read-only"
msgstr ""
"'{0}' ({1}) ne peut ajouter de consistency, l'option est en lecture seul"

#: tiramisu/option/option.py:436
msgid "consistency {0} not available for this option"
msgstr "consistency {0} non valable pour cette option"

#: tiramisu/option/option.py:443
msgid "unknown parameter {0} in consistency"
msgstr "paramètre inconnu {0} dans un test de consistance"

#: tiramisu/option/option.py:598
msgid "unexpected length of \"{}\" in constency \"{}\", should be \"{}\""
msgstr ""
"longueur inconsistante pour \"{}\" dans le test de consistence \"{}\", "
"devrait être \"{}\""

#: tiramisu/option/option.py:643
msgid "attention, \"{0}\" could be an invalid {1} for \"{2}\", {3}"
msgstr ""
"attention, \"{0}\" peut être une option de type {1} invalide pour \"{2}\", "
"{3}"

#: tiramisu/option/option.py:672
msgid "_cons_not_equal: {} are not different"
msgstr "_cons_not_equal: {} sont différents"

#: tiramisu/option/option.py:675
msgid "should be different from the value of {}"
msgstr "devrait être différent de la valeur de {}"

#: tiramisu/option/option.py:677
msgid "must be different from the value of {}"
msgstr "doit être différent de la valeur de {}"

#: tiramisu/option/option.py:680
msgid "value for {} should be different"
msgstr "valeur pour {} devrait être différent"

#: tiramisu/option/option.py:682
msgid "value for {} must be different"
msgstr "valeur pour {} doit être différent"

#: tiramisu/option/option.py:715
msgid "default value not allowed if option \"{0}\" is calculated"
msgstr ""
"la valeur par défaut n'est pas possible si l'option \"{0}\" est calculée"

#: tiramisu/option/optiondescription.py:49
msgid "option description seems to be part of an other config"
msgstr "l'option description semble faire parti d'une autre config"

#: tiramisu/option/optiondescription.py:85 tiramisu/setting.py:592
msgid ""
"a master ({0}) cannot have \"force_default_on_freeze\" property without "
"\"frozen\""
msgstr ""
"une option maître ({0}) ne peut avoir de propriété \"force_default_on_freeze"
"\" sans \"frozen\""

#: tiramisu/option/optiondescription.py:93
msgid "malformed consistency option \"{0}\" must be a master/slaves"
msgstr ""
"test de consistence mal formé pour l'option \"{0}\" doit être une maître/"
"esclave"

#: tiramisu/option/optiondescription.py:101
msgid "malformed consistency option \"{0}\" must not be a multi for \"{1}\""
msgstr ""
"test de consistence mal formé pour l'option \"{0}\" ne doit doit pas être "
"une liste pour \"{1}\""

#: tiramisu/option/optiondescription.py:105
msgid ""
"malformed consistency option \"{0}\" must be in same master/slaves for "
"\"{1}\""
msgstr ""
"test de consistence mal formé pour l'option \"{0}\" doit être dans la même "
"maître/esclave pour \"{1}\""

#: tiramisu/option/optiondescription.py:135
msgid "malformed requirements option {0} must be in same master/slaves for {1}"
msgstr ""
"requirements mal formé pour l'option {0} doit être dans la même maître/"
"esclave pour {1}"

#: tiramisu/option/optiondescription.py:139
msgid "malformed requirements option \"{0}\" must not be a multi for \"{1}\""
msgstr ""
"requirement mal formés pour l'option \"{0}\" ne doit pas être une valeur "
"multiple pour \"{1}\""

#: tiramisu/option/optiondescription.py:147
msgid "duplicate option: {0}"
msgstr "option dupliquée : {0}"

#: tiramisu/option/optiondescription.py:153
msgid "consistency with option {0} which is not in Config"
msgstr "consistency avec l'option {0} qui n'est pas dans une Config"

#: tiramisu/option/optiondescription.py:174
msgid "a slave ({0}) cannot have force_store_value property"
msgstr "une slave ({0}) ne doit pas avoir la propriété force_store_value"

#: tiramisu/option/optiondescription.py:177
msgid "a dynoption ({0}) cannot have force_store_value property"
msgstr "une dynoption ({0}) ne peut avoir la propriété force_store_value"

#: tiramisu/option/optiondescription.py:328
msgid "unknown Option {0} in OptionDescription {1}"
msgstr "Option {0} inconnue pour l'OptionDescription {1}"

#: tiramisu/option/optiondescription.py:335
msgid "use impl_get_opt_by_path only with root OptionDescription"
msgstr "utiliser impl_get_opt_by_path seulement sur l'OptionDescription racine"

#: tiramisu/option/optiondescription.py:337
msgid "no option for path \"{}\""
msgstr "pas d'option pour le chemin \"{}\""

#: tiramisu/option/optiondescription.py:343
msgid "use impl_get_path_by_opt only with root OptionDescription"
msgstr ""
"utiliser impl_get_path_by_opt seulement avec une OptionDescription racine"

#: tiramisu/option/optiondescription.py:345
msgid "no option \"{}\" found"
msgstr "pas d'option \"{}\" trouvée"

#: tiramisu/option/optiondescription.py:355
msgid "need context"
msgstr "context obligatoire"

#: tiramisu/option/optiondescription.py:422
msgid "children in optiondescription \"{}\" must be a list"
msgstr "les enfants d'une optiondescription \"{}\" doit être une liste"

#: tiramisu/option/optiondescription.py:441
msgid "duplicate option name: \"{0}\""
msgstr "nom de l'option dupliqué : \"{0}\""

#: tiramisu/option/optiondescription.py:446
msgid ""
"the option's name \"{}\" start as the dynoptiondescription's name \"{}\""
msgstr ""
"le nom de l'option \"{}\" commence comme le nom du dynoptiondescription "
"\"{}\""

#: tiramisu/option/optiondescription.py:475
msgid "cannot change group_type if already set (old {0}, new {1})"
msgstr "ne peut changer group_type si déjà spécifié (ancien {0}, nouveau {1})"

#: tiramisu/option/optiondescription.py:479
msgid "group_type: {0} not allowed"
msgstr "group_type : {0} non autorisé"

#: tiramisu/option/passwordoption.py:30
msgid "password"
msgstr "mot de passe"

#: tiramisu/option/portoption.py:41
msgid "port"
msgstr "port"

#: tiramisu/option/portoption.py:78
msgid "inconsistency in allowed range"
msgstr "inconsistence dans la plage autorisée"

#: tiramisu/option/portoption.py:83
msgid "max value is empty"
msgstr "la valeur maximum est vide"

#: tiramisu/option/portoption.py:109
msgid "range must have two values only"
msgstr "un rang doit avoir deux valeurs seulement"

#: tiramisu/option/portoption.py:111
msgid "first port in range must be smaller than the second one"
msgstr "le premier port d'un rang doit être plus petit que le second"

#: tiramisu/option/portoption.py:121
msgid "must be an integer between {0} and {1}"
msgstr "doit être une nombre entre {0} et {1}"

#: tiramisu/option/stroption.py:31
msgid "string"
msgstr "texte"

#: tiramisu/option/stroption.py:44
msgid "unicode"
msgstr "unicode"

#: tiramisu/option/symlinkoption.py:33
msgid "malformed symlinkoption must be an option for symlink {0}"
msgstr "symlinkoption mal formé, doit être une option pour symlink {0}"

#: tiramisu/option/syndynoptiondescription.py:59
msgid "unknown Option {0} in SynDynOptionDescription {1}"
msgstr "l'option \"{0}\" inconnue dans la syndynoptiondescription \"{1}\""

#: tiramisu/option/urloption.py:33
msgid "URL"
msgstr "URL"

#: tiramisu/option/urloption.py:42
msgid "must start with http:// or https://"
msgstr "doit débuter par http:// ou https://"

#: tiramisu/option/urloption.py:60
msgid "port must be an between 0 and 65536"
msgstr "port doit être entre 0 et 65536"

#: tiramisu/option/urloption.py:69
msgid "must ends with a valid resource name"
msgstr "doit finir par un nom de ressource valide"

#: tiramisu/option/usernameoption.py:31
msgid "username"
msgstr "nom d'utilisateur"

#: tiramisu/setting.py:183
msgid "can't rebind {0}"
msgstr "ne peut redéfinir ({0})"

#: tiramisu/setting.py:188
msgid "can't unbind {0}"
msgstr "ne peut supprimer ({0})"

#: tiramisu/setting.py:479
msgid ""
"malformed requirements imbrication detected for option: '{0}' with "
"requirement on: '{1}'"
msgstr ""
"imbrication de requirements mal formés detectée pour l'option : '{0}' avec "
"requirement sur : '{1}'"

#: tiramisu/setting.py:513
msgid ""
"cannot access to option \"{0}\" because required option \"{1}\" has {2} {3}"
msgstr ""
"ne peut accéder à l'option \"{0}\" parce que l'option requise \"{1}\" a {2} "
"{3}"

#: tiramisu/setting.py:539
msgid "the value of \"{0}\" is {1}"
msgstr "la valeur de \"{0}\" est {1}"

#: tiramisu/setting.py:541
msgid "the value of \"{0}\" is not {1}"
msgstr "la valeur de \"{0}\" n'est pas {1}"

#: tiramisu/setting.py:575 tiramisu/setting.py:648
msgid "cannot change property with metaconfig"
msgstr "impossible de changer une propriété d'une metaconfig"

#: tiramisu/setting.py:579
msgid "cannot set property {} for option \"{}\" this property is calculated"
msgstr ""
"ne peut ajouter la propriété {} pour l'option \"{}\" cette propriété est "
"calculée"

#: tiramisu/setting.py:587
msgid "can't assign property to the SymLinkOption \"{}\""
msgstr "ne peut assigner une propriété à une symlinkoption"

#: tiramisu/setting.py:624
msgid "cannot change permissive with metaconfig"
msgstr "ne peut changer une permissive avec une metaconfig"

#: tiramisu/setting.py:626
msgid "permissive must be a frozenset"
msgstr "une permissive doit être de type frozenset"

#: tiramisu/setting.py:628
msgid "can't assign permissive to the SymLinkOption \"{}\""
msgstr "ne peut assigner une permissive à la symlinkoption \"{}\""

#: tiramisu/setting.py:632
msgid "cannot add those permissives: {0}"
msgstr "ne peut ajouter ces permissives : {0}"

#: tiramisu/setting.py:650
msgid "can't reset properties to the SymLinkOption \"{}\""
msgstr "ne peut réinitialiser les propriétés de la symlinkoption \"{}\""

#: tiramisu/setting.py:653
msgid "opt and all_properties must not be set together in reset"
msgstr "opt et all_properties ne doit pas être renseigné ensemble dans reset"

#: tiramisu/storage/__init__.py:55
msgid "storage_type is already set, cannot rebind it"
msgstr "storage_type est déjà défini, impossible de le redéfinir"

#: tiramisu/storage/__init__.py:71
msgid "cannot import the storage {0}"
msgstr "ne peut pas importer le stockage {0}"

#: tiramisu/storage/dictionary/storage.py:36
msgid "dictionary storage cannot delete session"
msgstr ""
"impossible de supprimer une session dans un espace de stockage dictionary"

#: tiramisu/storage/dictionary/storage.py:47
msgid "session \"{}\" already used"
msgstr "session \"{}\" en court d'utilisation"

#: tiramisu/storage/dictionary/storage.py:49
#: tiramisu/storage/dictionary/value.py:286
msgid "a dictionary cannot be persistent"
msgstr "un espace de stockage dictionary ne peut être persistant"

#: tiramisu/storage/dictionary/value.py:277
#: tiramisu/storage/sqlite3/value.py:165
msgid "information's item not found {0}"
msgstr "l'information de l'objet ne sont pas trouvé {0}"

#: tiramisu/value.py:526
msgid "can't set owner for the SymLinkOption \"{}\""
msgstr "ne peut spécifier d'utilisateur à la symlinkoption \"{}\""

#: tiramisu/value.py:529
msgid "set owner \"{0}\" is forbidden"
msgstr "assigner l'utilisateur \"{0}\" est interdit"

#: tiramisu/value.py:532
msgid "no value for {0} cannot change owner to {1}"
msgstr "pas de valeur pour {0} ne peut changer d'utilisateur pour {1}"

#: tiramisu/value.py:627
msgid "index \"{}\" is higher than the length \"{}\" for option \"{}\""
msgstr ""
"l'index \"{}\" est supérieur à la longueur de l'option \"{}\" pour l'option "
"\"{}\""

#~ msgid ""
#~ "unable to carry out a calculation, option {0} has properties: {1} for: {2}"
#~ msgstr ""
#~ "impossible d'effectuer le calcul, l'option {0} a les propriétés : {1} "
#~ "pour : {2}"

#~ msgid "callback cannot return a list for a slave option ({0})"
#~ msgstr ""
#~ "un calcul ne peut pas retourner une liste pour une option esclave ({0})"

#~ msgid "can't assign to an OptionDescription"
#~ msgstr "ne peut pas attribuer une valeur à une OptionDescription"

#~ msgid "unknown type_ type {0}for _find"
#~ msgstr "type_ type {0} pour _find inconnu"

#~ msgid "unexpected path {0}, should start with {1}"
#~ msgstr "chemin imprévu {0}, devrait commencer par {1}"

#~ msgid "opt in getowner must be an option not {0}"
#~ msgstr "opt dans getowner doit être une option pas {0}"

#~ msgid "cannot serialize Config with MetaConfig"
#~ msgstr "impossible de sérialiser une Config avec une MetaConfig"

#~ msgid "this storage is not serialisable, could be a none persistent storage"
#~ msgstr ""
#~ "ce storage n'est sérialisable, devrait être une storage non persistant"

#~ msgid "invalid name: {0} for config"
#~ msgstr "nom invalide : {0} pour la config"

#~ msgid "name must be set to config before creating groupconfig"
#~ msgstr "un nom doit être donné à la config avant de créer un groupconfig"

#~ msgid "invalid name: {0} for option"
#~ msgstr "nom invalide : {0} pour l'option"

#~ msgid "invalid properties type {0} for {1}, must be a tuple"
#~ msgstr "type des properties invalide {0} pour {1}, doit être un tuple"

#~ msgid ""
#~ "params defined for a callback function but no callback defined yet for "
#~ "option {0}"
#~ msgstr ""
#~ "params définis pour une fonction callback mais par de callback encore "
#~ "définis pour l'option {0}"

#~ msgid "cannot serialize Option, only in OptionDescription"
#~ msgstr "ne peut serialiser une Option, seulement via une OptionDescription"

#~ msgid "invalid unicode or string"
#~ msgstr "invalide unicode ou string"

#~ msgid "\"{0}\" is an invalid {1} for \"{2}\", {3}"
#~ msgstr ""
#~ "\"{0}\" est une valeur invalide pour l'option \"{2}\" de type {1}, {3}"

#~ msgid "do_validation for {0}: error in value"
#~ msgstr "do_validation for {0} : erreur dans un la valeur"

#~ msgid "invalid value \"{0}\" for \"{1}\" which must be a list"
#~ msgstr "valeur invalide \"{0}\" pour \"{1}\" qui doit être une liste"

#~ msgid "invalid value \"{}\" for \"{}\" which must not be a list"
#~ msgstr "valeur invalide \"{0}\" pour \"{1}\" qui ne doit pas être une liste"

#~ msgid "invalid value \"{0}\" for \"{1}\" which must be a list of list"
#~ msgstr ""
#~ "valeur invalide \"{0}\" pour \"{1}\" qui doit être une liste de liste"

#~ msgid "consistency must be set with an option"
#~ msgstr "consistency doit être configuré avec une option"

#~ msgid "unknow parameter {0} in consistency"
#~ msgstr "paramètre inconnu {0} dans un test de consistance"

#~ msgid "default value not allowed if option: {0} is calculated"
#~ msgstr ""
#~ "la valeur par défaut n'est pas possible si l'option {0} est calculée"

#~ msgid "master group with wrong master name for {0}"
#~ msgstr "le groupe maître avec un nom de maître érroné pour {0}"

#~ msgid "not allowed default value for option {0} in master/slave object {1}"
#~ msgstr ""
#~ "valeur par défaut non autorisée pour l'option {0} dans l'objet master/"
#~ "slave {1}"

#~ msgid "invalid len for the slave: {0} which has {1} as master"
#~ msgstr "longueur invalide pour une esclave : {0} qui a {1} comme maître"

#~ msgid "only {0} is allowed"
#~ msgstr "seulement {0} est autorisé"

#~ msgid "only {0} are allowed"
#~ msgstr "seulement {0} sont autorisés"

#~ msgid "unicode string"
#~ msgstr "texte unicode"

#~ msgid "should be in network {0}/{1} ({2}/{3})"
#~ msgstr "devrait être dans le réseau {0}/{1} ({2}/{3})"

#~ msgid "must be in network {0}/{1} ({2}/{3})"
#~ msgstr "doit être dans le réseau {0}/{1} ({2}/{3})"

#~ msgid "this is a network with netmask {0} ({1})"
#~ msgstr "c'est une adresse réseau avec le masque {0} ({1})"

#~ msgid "this is a broadcast with netmask {0} ({1})"
#~ msgstr "c'est une adresse broadcast avec le masque {0} ({1})"

#~ msgid "with netmask {0} ({1})"
#~ msgstr "avec le masque {0} ({1})"

#~ msgid "with network {0}/{1} ({2}/{3})"
#~ msgstr "avec le réseau {0}/{1} ({2}/{3})"

#~ msgid "duplicate option name: {0}"
#~ msgstr "nom de l'option dupliqué : {0}"

#~ msgid "option must not start as dynoptiondescription"
#~ msgstr "option ne doit pas commencé pareil qu'un dynoptiondescription"

#~ msgid "malformed requirements option {0} must not be a multi for {1}"
#~ msgstr ""
#~ "requirements mal formés pour l'option {0} ne doit pas être une multi pour "
#~ "{1}"

#~ msgid "master group {0} shall not have a symlinkoption"
#~ msgstr "groupe maître {0} ne doit pas avoir de symlinkoption"

#~ msgid "master group {0} shall not have a subgroup"
#~ msgstr "groupe maître {0} ne doit pas avoir de sous-groupe"

#~ msgid "not allowed option {0} in group {1}: this option is not a multi"
#~ msgstr ""
#~ "option non autorisée {0} dans le groupe {1} : cette option n'est pas une "
#~ "multi"

#~ msgid "invalid suffix: {0} for option"
#~ msgstr "suffix invalide : {0} pour l'option"

#~ msgid "callback is mandatory for dynoptiondescription"
#~ msgstr "callback est obligatoire pour un dynoptiondescription"

#~ msgid ""
#~ "cannot append {0} property for option {1}: this property is calculated"
#~ msgstr ""
#~ "ne peut ajouter la propriété {0} dans l'option {1}: cette propriété est "
#~ "calculée"

#~ msgid "cannot add those properties: {0}"
#~ msgstr "ne peut pas ajouter ces propriétés : {0}"

#~ msgid "you should only append/remove properties"
#~ msgstr "pour pouvait seulement ajouter/supprimer des propriétés"

#~ msgid "if opt is not None, path should not be None in _getproperties"
#~ msgstr ""
#~ "si opt n'est pas None, path devrait ne pas être à None dans _getproperties"

#~ msgid "cannot change the value for option \"{0}\" this option is frozen"
#~ msgstr ""
#~ "ne peut modifier la valeur de l'option \"{0}\" cette option n'est pas "
#~ "modifiable"

#~ msgid "permissive must be a tuple"
#~ msgstr "permissive doit être un tuple"

#~ msgid "invalid generic owner {0}"
#~ msgstr "invalide owner générique {0}"

#~ msgid "the value of \"{0}\" is \"{1}\""
#~ msgstr "la valeur de \"{0}\" est \"{1}\""

#~ msgid "the value of \"{0}\" is not \"{1}\""
#~ msgstr "la valeur de \"{0}\" n'est pas \"{1}\""

#~ msgid "option {0} not already exists in storage {1}"
#~ msgstr "option {0} n'existe pas dans l'espace de stockage {1}"

#~ msgid "no option for path {0}"
#~ msgstr "pas d'option pour le chemin {0}"

#~ msgid "no option {0} found"
#~ msgstr "pas d'option {0} trouvée"

#~ msgid "cannot find dynpath"
#~ msgstr "ne peut trouver le dynpath"

#~ msgid "suffix and context needed if it's a dyn option"
#~ msgstr "suffix et context obligatoire si c'est une option dynamique"

#~ msgid "session already used"
#~ msgstr "session déjà utilisée"

#~ msgid "you should only set value with config"
#~ msgstr "vous devez seul affecter une valeur avec un config"

#~ msgid "owner only avalaible for an option"
#~ msgstr "owner seulement possible pour une option"

#~ msgid "can force cache only if cache is actived in config"
#~ msgstr ""
#~ "peut force la mise en cache seulement si le cache est activé dans la "
#~ "config"

#~ msgid "{0} is already a Multi "
#~ msgstr "{0} est déjà une Multi"

#~ msgid "cannot append a value on a multi option {0} which is a slave"
#~ msgstr ""
#~ "ne peut ajouter une valeur sur l'option multi {0} qui est une esclave"

#~ msgid "cannot sort multi option {0} if master or slave"
#~ msgstr "ne peut trier une option multi {0} pour une maître ou une esclave"

#~ msgid "cmp is not permitted in python v3 or greater"
#~ msgstr "cmp n'est pas permis en python v3 ou supérieure"

#~ msgid "cannot reverse multi option {0} if master or slave"
#~ msgstr ""
#~ "ne peut inverser une option multi {0} pour une maître ou une esclave"

#~ msgid "cannot insert multi option {0} if master or slave"
#~ msgstr "ne peut insérer une option multi {0} pour une maître ou une esclave"

#~ msgid "cannot extend multi option {0} if master or slave"
#~ msgstr "ne peut étendre une option multi {0} pour une maître ou une esclave"

#~ msgid "cannot pop a value on a multi option {0} which is a slave"
#~ msgstr ""
#~ "ne peut supprimer une valeur dans l'option multi {0} qui est esclave"

#~ msgid "option '{0}' has requirement's property error: {1} {2}"
#~ msgstr ""
#~ "l'option '{0}' a une erreur de propriété pour le requirement : {1} {2}"

#~ msgid "cannot change the value for option {0} this option is frozen"
#~ msgstr ""
#~ "ne peut modifier la valeur de l'option {0} cette option n'est pas "
#~ "modifiable"

#~ msgid "function \"{0}\" returns \"{1}\" for option \"{2}\""
#~ msgstr "la fonction \"{0}\" retourne \"{1}\" pour l'option \"{2}\""

#~ msgid "not allowed default value for option {0} in group {1}"
#~ msgstr "valeur de défaut non autorisée pour l'option {0} du groupe {1}"

#~ msgid "{0}_params must have an option not a {0} for first argument"
#~ msgstr "{0}_params doit avoir une option pas un {0} pour premier argument"

#~ msgid "{0}_params must have a boolean not a {0} for second argument"
#~ msgstr "{0}_params doit avoir un booléen pas un {0} pour second argument"

#~ msgid ""
#~ "malformed requirements second argument must be valid for option {0}: {1}"
#~ msgstr ""
#~ "requirements mal formés deuxième argument doit être valide pour l'option "
#~ "{0} : {1}"

#~ msgid "inconsistency in action types for option: {0} action: {1}"
#~ msgstr "incohérence dans les types action pour l'option : {0} action {1}"

#~ msgid "a callback is already set for option {0}, cannot set another one's"
#~ msgstr ""
#~ "un callback est en lecture seul pour l'option {0}, ne peut en placer une "
#~ "autre"

#~ msgid "invalid value {0} for option {1} which must be a list"
#~ msgstr ""
#~ "valeur invalide pour l'option {0} : {1} laquelle doit être une liste"

#~ msgid "invalid value {0} for option {1} which must be a list of list"
#~ msgstr ""
#~ "valeur invalide pour l'option {0} : {1} laquelle doit être une liste de "
#~ "liste"

#~ msgid "this value is already present"
#~ msgstr "cette valeur est déjà présente"

#~ msgid "DynOptionDescription callback return not uniq value"
#~ msgstr ""
#~ "callback d'une DynOptionDescription ne retourne pas une valeur unique"

#~ msgid "malformed consistency option {0} must be a master/slaves"
#~ msgstr ""
#~ "test de consistence mal formé pour l'option {0} doit être une maître/"
#~ "esclave"

#~ msgid "malformed consistency option {0} must not be a multi for {1}"
#~ msgstr ""
#~ "test de consistence mal formé pour l'option {0} ne doit doit pas être une "
#~ "liste pour {1}"

#~ msgid ""
#~ "malformed consistency option {0} must be in same master/slaves for {1}"
#~ msgstr ""
#~ "test de consistence mal formé pour l'option {0} doit être dans la même "
#~ "maître/esclave pour {1}"

#~ msgid "invalid value for option {0}: {1}"
#~ msgstr "valeur invalide pour l'option {0} : {1}"

#~ msgid "warning on the value of the option {0}: {1}"
#~ msgstr "avertissement sur la valeur de l'option {0} : {1}"

#~ msgid "same value for {0} and {1}, should be different"
#~ msgstr "même valeur pour {0} et {1}, devrait être différent"

#~ msgid "same value for {0} and {1}, must be different"
#~ msgstr "même valeur pour {0} et {1}, doit être différent"

#~ msgid "value {0} is not permitted, only {1} is allowed"
#~ msgstr "valeur {0} n'est pas permis, seules {1} sont autorisées"

#~ msgid "invalid boolean"
#~ msgstr "booléen invalide"

#~ msgid "invalid integer"
#~ msgstr "nombre invalide"

#~ msgid "invalid float"
#~ msgstr "invalide nombre flottan"

#~ msgid "invalid unicode"
#~ msgstr "invalide unicode"

#~ msgid "invalid IP"
#~ msgstr "adresse IP invalide"

#~ msgid "IP is in reserved class"
#~ msgstr "l'adresse IP est dans une plage d'adresse réservée"

#~ msgid "invalid IP, mustn't be in reserved class"
#~ msgstr "adresse IP invalide, ne doit pas être dans une classe réservée"

#~ msgid "IP is not in private class"
#~ msgstr "l'adresse IP n'est pas dans une plage d'adressage privée"

#~ msgid "invalid IP, must be in private class"
#~ msgstr "adresse IP invalide, doit être dans la classe privée"

#~ msgid "IP {0} ({1}) not in network {2} ({3}) with netmask {4} ({5})"
#~ msgstr "IP {0} ({1}) pas dans le réseau {2} ({3}) avec le masque {4} ({5})"

#~ msgid "invalid IP {0} ({1}) not in network {2} ({3}) with netmask {4} ({5})"
#~ msgstr ""
#~ "IP invalide {0} ({1}) pas dans le réseau {2} ({3}) avec le masque {4} "
#~ "({5})"

#~ msgid "invalid port, range must have two values only"
#~ msgstr "port invalide, une plage doit avoir deux valeurs seulement"

#~ msgid ""
#~ "invalid port, first port in range must be smaller than the second one"
#~ msgstr ""
#~ "port invalide, le premier port d'une plage doit être plus petit que le "
#~ "second"

#~ msgid "invalid port"
#~ msgstr "port invalide"

#~ msgid "invalid port, must be an integer between {0} and {1}"
#~ msgstr "port invalide, port doit être nombre entre {0} et {1}"

#~ msgid "invalid network address"
#~ msgstr "adresse réseau invalide"

#~ msgid "network address is in reserved class"
#~ msgstr "l'adresse réseau est pas dans une plage d'adresse réservée"

#~ msgid "invalid network address, mustn't be in reserved class"
#~ msgstr "adresse réseau invalide, ne doit pas être dans la classe réservée"

#~ msgid "invalid netmask address"
#~ msgstr "masque de sous-réseau invalide"

#~ msgid "invalid IP {0} ({1}) with netmask {2}, this IP is a network"
#~ msgstr "IP invalide {0} ({1}) avec masque {2}, cette IP est un réseau"

#~ msgid "invalid IP {0} ({1}) with netmask {2}, this IP is a broadcast"
#~ msgstr "IP invalide {0} ({1}) avec masque {2}, cette IP est un broadcast"

#~ msgid "invalid network {0} ({1}) with netmask {2}"
#~ msgstr "réseau invalide {0} ({1}) avec masque {2}"

#~ msgid "invalid broadcast address"
#~ msgstr "adresse de broadcast invalide"

#~ msgid ""
#~ "invalid broadcast {0} ({1}) with network {2} ({3}) and netmask {4} ({5})"
#~ msgstr ""
#~ "Broadcast invalide {0} ({1}) avec le réseau {2} ({3}) et le masque {4} "
#~ "({5})"

#~ msgid "invalid domainname's length (min 1)"
#~ msgstr "longueur du nom de domaine invalide (minimum 1)"

#~ msgid "invalid domainname's length (max {0})"
#~ msgstr "longueur du nom de domaine invalide (maximum {0})"

#~ msgid "invalid domainname, must not be an IP"
#~ msgstr "nom de domaine invalide, ne doit pas être une IP"

#~ msgid "invalid domainname, must have dot"
#~ msgstr "nom de domaine invalide, doit avoir un point"

#~ msgid "invalid domainname's length (max 255)"
#~ msgstr "longueur du nom de domaine invalide (maximum {1})"

#~ msgid "invalid domainname"
#~ msgstr "nom de domaine invalide"

#~ msgid "invalid email address, must contains one @"
#~ msgstr "adresse email invalide, doit contenir un @"

#~ msgid "invalid username in email address"
#~ msgstr "nom d'utilisateur invalide dans une adresse email"

#~ msgid "invalid url, must start with http:// or https://"
#~ msgstr "URL invalide, doit démarrer avec http:// ou https://"

#~ msgid "invalid url, port must be an between 0 and 65536"
#~ msgstr "URL invalide, port doit être entre 0 et 65536"

#~ msgid "invalid url, must ends with a valid resource name"
#~ msgstr "URL invalide, doit finir par un nom de ressource valide"

#~ msgid "invalid username"
#~ msgstr "utilisateur invalide"

#~ msgid "invalid filename"
#~ msgstr "nom de fichier invalide"

#~ msgid "trying to access to an {0} named: {1} with properties {2}"
#~ msgstr "tentative d'accès à une {0} nommée : {1} avec les propriétés {2}"

#~ msgid "a default_multi is set whereas multi is False in option: {0}"
#~ msgstr ""
#~ "une default_multi est renseignée alors que multi est False dans "
#~ "l'option : {0}"

#~ msgid "do_validation for {0}: warning in value"
#~ msgstr "do_validation for {0} : warning dans un la valeur"

#~ msgid "do_validation for {0}: error in consistency"
#~ msgstr "do_validation for {0} : erreur dans un test de consistance"

#~ msgid "do_validation for {0}: warning in consistency"
#~ msgstr "do_validation for {0} : warning dans un test de consistance"

#~ msgid "cannot set optiondescription in an dynoptiondescription"
#~ msgstr ""
#~ "impossible de mettre une optiondescription dans un dynoptiondescription"

#~ msgid "cannot set symlinkoption in an dynoptiondescription"
#~ msgstr "impossible de placer un symlinkoption dans un dynoptiondescription"

#~ msgid "unable to get storages:"
#~ msgstr "impossible de récupérer les storages :"

#~ msgid "{0} instance has no attribute '_readonly'"
#~ msgstr "{0} instance n'a pas l'attribut '_readonly'"

#~ msgid "optiondescription has no value"
#~ msgstr "une optiondescription n'a pas de valeur"

#~ msgid "validator not support tuple"
#~ msgstr "validator n'accepte pas de tuple"

#~ msgid "open_values must be a boolean for {0}"
#~ msgstr "open_values doit être un booléen pour {0}"

#~ msgid "invalid value {0} for option {1}: {2}"
#~ msgstr "valeur invalide {0} pour l'option {1} : {2}"

#~ msgid "option not in all_cons_opts"
#~ msgstr "option non présentante dans all_cons_opts"

#~ msgid "invalid network {0} ({1}) with netmask {2}, this network is an IP"
#~ msgstr "réseau invalide {0} ({1}) avec masque {2}, ce réseau est une IP"

#~ msgid "invalid IP {0} ({1}) with netmask {2}"
#~ msgstr "IP invalide {0} ({1}) avec masque {2}"

#~ msgid ""
#~ "invalid len for the master: {0} which has {1} as slave with greater len"
#~ msgstr ""
#~ "longueur invalide pour un maître : {0} qui a {1} une esclave avec une "
#~ "plus grande longueur"

#~ msgid ""
#~ "unable to carry out a calculation, option value with multi types must "
#~ "have same length for: {0}"
#~ msgstr ""
#~ "impossible d'effectuer le calcul, la valeur d'une option avec le type "
#~ "multi doit avoir la même longueur pour : {0}"

#~ msgid "no child has same nom has master group for: {0}"
#~ msgstr "pas d'enfant avec le nom du groupe maître pour {0} "

#~ msgid "value must be a boolean"
#~ msgstr "valeur doit être un booléen"

#~ msgid "value must be an integer"
#~ msgstr "valeur doit être un nombre entier"

#~ msgid "value must be a float"
#~ msgstr "valeur doit être un nombre flottant"

#~ msgid "value must be a string, not {0}"
#~ msgstr "valeur doit être une chaîne, pas {0}"

#~ msgid "value must be an unicode"
#~ msgstr "valeur doit être une valeur unicode"

#~ msgid "invalid value {0} for option {1} must be different as {2} option"
#~ msgstr ""
#~ "valeur invalide {0} pour l'option {1} doit être différente de l'option {2}"

#~ msgid "validator should return a boolean, not {0}"
#~ msgstr "le validator devrait retourner un boolean, pas un {0}"

#~ msgid "invalid value {0} for option {1} for object {2}"
#~ msgstr "valeur invalide {0} pour l'option {1} pour l'objet {2}"

#~ msgid "no config specified but needed"
#~ msgstr "aucune config spécifié alors que c'est nécessaire"

#~ msgid "{0} has no attribute impl_get_information"
#~ msgstr "{0} n'a pas d'attribut impl_get_information"

#~ msgid "required option not found: {0}"
#~ msgstr "option requise non trouvée : {0}"