503 lines
12 KiB
Plaintext
503 lines
12 KiB
Plaintext
# SOME DESCRIPTIVE TITLE.
|
||
# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
|
||
# This file is distributed under the same license as the PACKAGE package.
|
||
#
|
||
# Translators:
|
||
# François Bureau, 2015
|
||
# Frédéric <frosmont@free.fr>, 2014
|
||
# Maxime COQUEREL <max.coquerel@gmail.com>, 2015
|
||
msgid ""
|
||
msgstr ""
|
||
"Project-Id-Version: Horizon\n"
|
||
"Report-Msgid-Bugs-To: \n"
|
||
"POT-Creation-Date: 2015-03-20 00:51-0500\n"
|
||
"PO-Revision-Date: 2015-03-19 15:24+0000\n"
|
||
"Last-Translator: François Bureau\n"
|
||
"Language-Team: French (http://www.transifex.com/projects/p/horizon/language/fr/)\n"
|
||
"MIME-Version: 1.0\n"
|
||
"Content-Type: text/plain; charset=UTF-8\n"
|
||
"Content-Transfer-Encoding: 8bit\n"
|
||
"Language: fr\n"
|
||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||
|
||
#: base.py:475
|
||
msgid "Other"
|
||
msgstr "Autre"
|
||
|
||
#: decorators.py:53
|
||
msgid "Please log in to continue."
|
||
msgstr "Merci de vous connecter pour continuer."
|
||
|
||
#: decorators.py:85
|
||
#, python-format
|
||
msgid "You are not authorized to access %s"
|
||
msgstr "Vous n'êtes pas autorisé à accéder à %s"
|
||
|
||
#: exceptions.py:163
|
||
#, python-format
|
||
msgid "A %(resource)s with the name \"%(name)s\" already exists."
|
||
msgstr "Des %(resource)s avec le nom \"%(name)s\" existent déjà."
|
||
|
||
#: exceptions.py:235
|
||
#, python-format
|
||
msgid "Unauthorized: %s"
|
||
msgstr "%s : non autorisé"
|
||
|
||
#: exceptions.py:238
|
||
msgid "Unauthorized. Please try logging in again."
|
||
msgstr "Accès non autorisé. Merci de vous reconnecter."
|
||
|
||
#: middleware.py:103
|
||
msgid "Session timed out."
|
||
msgstr "La session a expiré."
|
||
|
||
#: browsers/base.py:88
|
||
msgid "Navigation Item"
|
||
msgstr "Elément de navigation"
|
||
|
||
#: browsers/views.py:41
|
||
#, python-format
|
||
msgid "Select a %s to browse."
|
||
msgstr "Sélectionner une %s à parcourir."
|
||
|
||
#: conf/default.py:41
|
||
msgid "Password is not accepted"
|
||
msgstr "Le mot de passe n'est pas accepté"
|
||
|
||
#: forms/fields.py:64
|
||
msgid "Incorrect format for IP address"
|
||
msgstr "Format d'adresse IP incorrect"
|
||
|
||
#: forms/fields.py:65
|
||
msgid "Invalid version for IP address"
|
||
msgstr "Version d'adresse IP invalide"
|
||
|
||
#: forms/fields.py:66
|
||
msgid "Invalid subnet mask"
|
||
msgstr "Masque de sous-réseau invalide"
|
||
|
||
#: forms/views.py:132 templates/horizon/common/_usage_summary.html:16
|
||
msgid "Submit"
|
||
msgstr "Envoyer"
|
||
|
||
#: forms/views.py:133
|
||
#: templates/horizon/common/_modal_form_update_metadata.html:27
|
||
#: templates/horizon/common/_workflow.html:49
|
||
msgid "Cancel"
|
||
msgstr "Annuler"
|
||
|
||
#: tables/actions.py:460
|
||
#: templates/horizon/common/_data_table_table_actions.html:21
|
||
#: templates/horizon/common/_data_table_table_actions.html:33
|
||
#: templates/horizon/common/_workflow_step_update_members.html:14
|
||
#: templates/horizon/common/_workflow_step_update_members.html:23
|
||
msgid "Filter"
|
||
msgstr "Filtrer"
|
||
|
||
#: tables/actions.py:645
|
||
msgid "This action cannot be undone."
|
||
msgstr "Cette action ne peut pas être réalisée."
|
||
|
||
#: tables/actions.py:767
|
||
#, python-format
|
||
msgctxt "past"
|
||
msgid "%(action)s %(data_type)s"
|
||
msgstr "%(action)s %(data_type)s"
|
||
|
||
#: tables/actions.py:769
|
||
#, python-format
|
||
msgctxt "present"
|
||
msgid "%(action)s %(data_type)s"
|
||
msgstr "%(action)s %(data_type)s"
|
||
|
||
#: tables/actions.py:832
|
||
#, python-format
|
||
msgid "You are not allowed to %(action)s: %(objs)s"
|
||
msgstr "Vous n'êtes pas autorisé à %(action)s : %(objs)s"
|
||
|
||
#: tables/actions.py:839
|
||
#, python-format
|
||
msgid "Unable to %(action)s: %(objs)s"
|
||
msgstr "Impossible de %(action)s : %(objs)s"
|
||
|
||
#: tables/actions.py:845
|
||
#, python-format
|
||
msgid "%(action)s: %(objs)s"
|
||
msgstr "%(action)s : %(objs)s"
|
||
|
||
#: tables/actions.py:915
|
||
msgid "Delete"
|
||
msgstr "Supprimer"
|
||
|
||
#: tables/actions.py:917
|
||
msgid "Deleted"
|
||
msgstr "Supprimée"
|
||
|
||
#: tables/actions.py:948
|
||
msgid "Update"
|
||
msgstr "Mettre à jour"
|
||
|
||
#: tables/actions.py:949
|
||
msgid "Updated"
|
||
msgstr "Mis à jour"
|
||
|
||
#: tables/base.py:305
|
||
msgid "-"
|
||
msgstr "-"
|
||
|
||
#: tables/base.py:361
|
||
#, python-format
|
||
msgid "The attribute %(attr)s doesn't exist on %(obj)s."
|
||
msgstr "L'attribut %(attr)s n'existe pas sur %(obj)s."
|
||
|
||
#: tables/base.py:990
|
||
msgid "No items to display."
|
||
msgstr "Aucun élément à afficher."
|
||
|
||
#: tables/base.py:1099
|
||
#: templates/horizon/common/_data_table_table_actions.html:47
|
||
msgid "Actions"
|
||
msgstr "Actions"
|
||
|
||
#: tables/base.py:1329
|
||
#, python-format
|
||
msgid "No match returned for the id \"%s\"."
|
||
msgstr "Aucun résultat retourné pour l'id \"%s\"."
|
||
|
||
#: tables/base.py:1486
|
||
msgid "Please select a row before taking that action."
|
||
msgstr "Merci de sélectionner une ligne avant de faire cette action."
|
||
|
||
#: tables/base.py:1570
|
||
msgid "N/A"
|
||
msgstr "N/D"
|
||
|
||
#: templates/_header.html:5
|
||
#, python-format
|
||
msgid "Logged in as: %(username)s"
|
||
msgstr "Utilisateur connecté : %(username)s"
|
||
|
||
#: templates/_header.html:7
|
||
msgid "Help"
|
||
msgstr "Aide"
|
||
|
||
#: templates/_header.html:9
|
||
msgid "Sign Out"
|
||
msgstr "Se déconnecter"
|
||
|
||
#: templates/auth/_login.html:5
|
||
msgid "Log In"
|
||
msgstr "Se connecter"
|
||
|
||
#: templates/auth/_login.html:15
|
||
msgid "You do not have permission to access the resource:"
|
||
msgstr "Vous n'avez pas la permission d'accéder à la ressource :"
|
||
|
||
#: templates/auth/_login.html:17
|
||
#, python-format
|
||
msgid ""
|
||
"Login as different user or go back to <a href=\"%(home_url)s\"> home "
|
||
"page</a>"
|
||
msgstr "Connectez-vous avec un autre nom d'utilisateur ou revenez à <a href=\"%(home_url)s\"> la page d’accueil</a>"
|
||
|
||
#: templates/auth/_login.html:32
|
||
msgid "Sign In"
|
||
msgstr "Se connecter"
|
||
|
||
#: templates/auth/login.html:4
|
||
msgid "Login"
|
||
msgstr "Identifiant"
|
||
|
||
#: templates/horizon/_messages.html:7
|
||
msgid "Info: "
|
||
msgstr "Information :"
|
||
|
||
#: templates/horizon/_messages.html:13
|
||
msgid "Warning: "
|
||
msgstr "Avertissement :"
|
||
|
||
#: templates/horizon/_messages.html:19
|
||
msgid "Success: "
|
||
msgstr "Succès :"
|
||
|
||
#: templates/horizon/_messages.html:25
|
||
msgid "Error: "
|
||
msgstr "Erreur :"
|
||
|
||
#: templates/horizon/common/_data_table.html:63
|
||
msgid "Summary"
|
||
msgstr "Résumé"
|
||
|
||
#: templates/horizon/common/_data_table.html:72
|
||
#, python-format
|
||
msgid "Displaying %(counter)s item"
|
||
msgid_plural "Displaying %(counter)s items"
|
||
msgstr[0] "Affichage de %(counter)s item"
|
||
msgstr[1] "Affichage de %(counter)s items"
|
||
|
||
#: templates/horizon/common/_data_table.html:77
|
||
msgid "« Prev"
|
||
msgstr "« Aperçu"
|
||
|
||
#: templates/horizon/common/_data_table.html:80
|
||
msgid "Next »"
|
||
msgstr "Suivant »"
|
||
|
||
#: templates/horizon/common/_data_table_table_actions.html:45
|
||
msgid "More Actions"
|
||
msgstr "Plus d'Actions"
|
||
|
||
#: templates/horizon/common/_domain_page_header.html:6
|
||
#, python-format
|
||
msgid "%(context_name)s:"
|
||
msgstr "%(context_name)s : "
|
||
|
||
#: templates/horizon/common/_formset_table.html:35
|
||
msgid "Add a row"
|
||
msgstr "Ajouter une ligne"
|
||
|
||
#: templates/horizon/common/_formset_table_row.html:15
|
||
#, python-format
|
||
msgid "%(name)s: %(error)s"
|
||
msgstr "%(name)s : %(error)s"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:4
|
||
msgid "Limit Summary"
|
||
msgstr "Synthèse des Quotas"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:7
|
||
msgid "Instances"
|
||
msgstr "Instances"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:8
|
||
#: templates/horizon/common/_limit_summary.html:15
|
||
#: templates/horizon/common/_limit_summary.html:22
|
||
#: templates/horizon/common/_limit_summary.html:36
|
||
#: templates/horizon/common/_limit_summary.html:43
|
||
#: templates/horizon/common/_limit_summary.html:50
|
||
#, python-format
|
||
msgid "Used <span> %(used)s </span> of <span> %(available)s </span>"
|
||
msgstr "<span> %(used)s </span> utilisé(es) sur <span> %(available)s </span>"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:14
|
||
msgid "VCPUs"
|
||
msgstr "VCPUs"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:21
|
||
msgid "RAM"
|
||
msgstr "RAM"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:28
|
||
msgid "Floating IPs"
|
||
msgstr "IP flottantes"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:29
|
||
#, python-format
|
||
msgid "Allocated <span> %(used)s </span> of <span> %(available)s </span>"
|
||
msgstr "Alloué <span> %(used)s </span> de <span> %(available)s </span>"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:35
|
||
msgid "Security Groups"
|
||
msgstr "Groupes de sécurité"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:42
|
||
msgid "Volumes"
|
||
msgstr "Volumes"
|
||
|
||
#: templates/horizon/common/_limit_summary.html:49
|
||
msgid "Volume Storage"
|
||
msgstr "Stockage de volumes"
|
||
|
||
#: templates/horizon/common/_modal_form_update_metadata.html:26
|
||
#: workflows/base.py:594
|
||
msgid "Save"
|
||
msgstr "Enregistrer"
|
||
|
||
#: templates/horizon/common/_resource_browser.html:10
|
||
#, python-format
|
||
msgid "Displaying %(nav_items)s item"
|
||
msgid_plural "Displaying %(nav_items)s items"
|
||
msgstr[0] "Affichage de l'item %(nav_items)s"
|
||
msgstr[1] "Affichage des items %(nav_items)s"
|
||
|
||
#: templates/horizon/common/_resource_browser.html:11
|
||
#, python-format
|
||
msgid "Displaying %(content_items)s item"
|
||
msgid_plural "Displaying %(content_items)s items"
|
||
msgstr[0] "Affichage de l'item %(content_items)s"
|
||
msgstr[1] "Affichage des items %(content_items)s"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:3
|
||
msgid "Usage Summary"
|
||
msgstr "Résumé de l'Utilisation"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:7
|
||
msgid "Select a period of time to query its usage:"
|
||
msgstr "Sélectionnez une période de temps pour interroger son utilisation :"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:9
|
||
#, python-format
|
||
msgid ""
|
||
"\n"
|
||
" <label>From:</label> %(start)s"
|
||
msgstr "\n<label>Du :</label> %(start)s"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:13
|
||
#, python-format
|
||
msgid ""
|
||
"\n"
|
||
" <label>To:</label>%(end)s"
|
||
msgstr "\n<label>au :</label>%(end)s"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:17
|
||
msgid "The date should be in YYYY-mm-dd format."
|
||
msgstr "La date doit être au format AAAA-mm-jj"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:20
|
||
msgid "Active Instances:"
|
||
msgstr "Instances Actives :"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:21
|
||
msgid "Active RAM:"
|
||
msgstr "RAM Active :"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:22
|
||
msgid "This Period's VCPU-Hours:"
|
||
msgstr "VCPU-Heures de cette Période :"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:23
|
||
msgid "This Period's GB-Hours:"
|
||
msgstr "GB-Heures de cette période :"
|
||
|
||
#: templates/horizon/common/_usage_summary.html:24
|
||
msgid "This Period's RAM-Hours:"
|
||
msgstr "Dans cette période RAM-Heures:"
|
||
|
||
#: templates/horizon/common/_workflow.html:40
|
||
msgid "Back"
|
||
msgstr "Retour"
|
||
|
||
#: templates/horizon/common/_workflow.html:43
|
||
msgid "Next"
|
||
msgstr "Suivant"
|
||
|
||
#: templatetags/branding.py:34
|
||
msgid "Horizon"
|
||
msgstr "Horizon"
|
||
|
||
#: templatetags/horizon.py:137 templatetags/horizon.py:148
|
||
msgid "No Limit"
|
||
msgstr "Pas de limite"
|
||
|
||
#: templatetags/horizon.py:140 templatetags/horizon.py:142
|
||
msgid "Available"
|
||
msgstr "disponible(s)"
|
||
|
||
#: templatetags/sizeformat.py:51 templatetags/sizeformat.py:56
|
||
#, python-format
|
||
msgid "%(size)d Byte"
|
||
msgid_plural "%(size)d Bytes"
|
||
msgstr[0] "%(size)d Octet"
|
||
msgstr[1] "%(size)d Octets"
|
||
|
||
#: templatetags/sizeformat.py:59
|
||
#, python-format
|
||
msgid "%s KB"
|
||
msgstr "%s Ko"
|
||
|
||
#: templatetags/sizeformat.py:61
|
||
#, python-format
|
||
msgid "%s MB"
|
||
msgstr "%s Mo"
|
||
|
||
#: templatetags/sizeformat.py:63
|
||
#, python-format
|
||
msgid "%s GB"
|
||
msgstr "%s Go"
|
||
|
||
#: templatetags/sizeformat.py:65
|
||
#, python-format
|
||
msgid "%s TB"
|
||
msgstr "%s To"
|
||
|
||
#: templatetags/sizeformat.py:66
|
||
#, python-format
|
||
msgid "%s PB"
|
||
msgstr "%s Po"
|
||
|
||
#: templatetags/sizeformat.py:74
|
||
msgid "0 Bytes"
|
||
msgstr "0 Octets"
|
||
|
||
#. Translators: test code, don't really have to translate
|
||
#: test/test_dashboards/dogs/puppies/tables.py:31
|
||
msgid "Sell Puppy"
|
||
msgid_plural "Sell Puppies"
|
||
msgstr[0] "Chiot à vendre"
|
||
msgstr[1] "Chiots à vendre"
|
||
|
||
#. Translators: test code, don't really have to translate
|
||
#: test/test_dashboards/dogs/puppies/tables.py:40
|
||
msgid "Sold Puppy"
|
||
msgid_plural "Sold Puppies"
|
||
msgstr[0] "Chiot vendu"
|
||
msgstr[1] "Chiots Vendus"
|
||
|
||
#: test/tests/views.py:59
|
||
msgid "Fake"
|
||
msgstr "Faux"
|
||
|
||
#: utils/filters.py:49
|
||
msgid "Never"
|
||
msgstr "Jamais"
|
||
|
||
#: utils/validators.py:26 utils/validators.py:50
|
||
msgid "Not a valid port number"
|
||
msgstr "Numéro de port invalide"
|
||
|
||
#: utils/validators.py:31
|
||
msgid "Not a valid IP protocol number"
|
||
msgstr "Numéro de protocole IP invalide "
|
||
|
||
#: utils/validators.py:45
|
||
msgid "One colon allowed in port range"
|
||
msgstr "Un seul caractère deux-points autorisé dans une plage de ports"
|
||
|
||
#: utils/validators.py:52
|
||
msgid "Port number must be integer"
|
||
msgstr "Le numéro de port doit être un nombre entier"
|
||
|
||
#: utils/validators.py:59
|
||
msgid "The string may only contain ASCII printable characters."
|
||
msgstr "La chaîne ne peut contenir que des caractères ASCII imprimables."
|
||
|
||
#: workflows/base.py:71
|
||
msgid "Processing..."
|
||
msgstr "Traitement en cours..."
|
||
|
||
#: workflows/base.py:475
|
||
msgid "All available"
|
||
msgstr "Disponibles"
|
||
|
||
#: workflows/base.py:476
|
||
msgid "Members"
|
||
msgstr "Membres"
|
||
|
||
#: workflows/base.py:477
|
||
msgid "None available."
|
||
msgstr "Aucun disponible."
|
||
|
||
#: workflows/base.py:478
|
||
msgid "No members."
|
||
msgstr "Aucun membre."
|
||
|
||
#: workflows/base.py:595
|
||
#, python-format
|
||
msgid "%s completed successfully."
|
||
msgstr "%s terminé avec succès."
|
||
|
||
#: workflows/base.py:596
|
||
#, python-format
|
||
msgid "%s did not complete."
|
||
msgstr "%s ne s'est pas terminé."
|