diff --git a/packages/netlify-cms-locales/src/fr/index.js b/packages/netlify-cms-locales/src/fr/index.js index ffea1af6..d94a063e 100644 --- a/packages/netlify-cms-locales/src/fr/index.js +++ b/packages/netlify-cms-locales/src/fr/index.js @@ -1,4 +1,18 @@ const fr = { + auth: { + login: 'Se connecter', + loggingIn: 'Connexion en cours...', + loginWithNetlifyIdentity: 'Se connecter avec Netlify Identity', + loginWithBitbucket: 'Se connecter avec Bitbucket', + loginWithGitHub: 'Se connecter avec GitHub', + loginWithGitLab: 'Se connecter avec GitLab', + errors: { + email: "Assurez-vous d'avoir entré votre email.", + password: 'Merci de saisir votre mot de passe.', + identitySettings: + "Impsosible d'accéder aux paramètres d'identité. Si vous utilisez le backend git-gateway, merci de vous assurer que vous avez bien activé le service Identity et la passerelle Git.", + }, + }, app: { header: { content: 'Contenus', @@ -20,16 +34,34 @@ const fr = { collection: { sidebar: { collections: 'Collections', + allCollections: 'Toutes les collections', searchAll: 'Tout rechercher', + searchIn: 'Rechercher dans', }, collectionTop: { + sortBy: 'Trier par', viewAs: 'Voir comme', newButton: 'Créer une entrée de type %{collectionLabel}', + ascending: 'Croissant', + descending: 'Décroissant', + searchResults: 'Résultats de la recherche pour "%{searchTerm}"', + searchResultsInCollection: + 'Résultats de la recherche pour "%{searchTerm}" dans %{collection}', + filterBy: 'Filtrer par', }, entries: { loadingEntries: 'Chargement des entrées', cachingEntries: 'Mise en cache des entrées', longerLoading: 'Cela peut prendre quelques minutes', + noEntries: 'Aucune entrée', + }, + defaultFields: { + author: { + label: 'Auteur', + }, + updatedOn: { + label: 'Mis à jour le', + }, }, }, editor: { @@ -46,6 +78,12 @@ const fr = { range: 'Le champ %{fieldLabel} doit être compris entre %{minValue} et %{maxValue}.', min: 'Le champ %{fieldLabel} doit avoir une valeur de %{minValue} ou plus.', max: 'Le champ %{fieldLabel} doit avoir une valeur de %{maxValue} ou moins.', + rangeCount: '%{fieldLabel} doit avoir entre %{minCount} et %{maxCount} élément(s).', + rangeCountExact: '%{fieldLabel} doit avoir exactement %{count} éléments(s).', + minCount: '%{fieldLabel} doit avoir au moins %{minCount} éléments(s).', + maxCount: '%{fieldLabel} doit avoir %{maxCount} éléments(s) ou moins.', + invalidPath: `'%{path}' n'est pas un chemin valide`, + pathExists: `Le chemin '%{path}' existe déjà`, }, }, editor: { @@ -70,7 +108,11 @@ const fr = { publishing: 'Publication...', publish: 'Publier', published: 'Publiée', + unpublish: 'Dépublier', + duplicate: 'Dupliquer', + unpublishing: 'Dépublication...', publishAndCreateNew: 'Publier et créer une nouvelle entrée', + publishAndDuplicate: 'Publier et dupliquer', deleteUnpublishedChanges: 'Supprimer les modications non publiées', deleteUnpublishedEntry: "Supprimer l'entrée non publiée", deletePublishedEntry: "Supprimer l'entrée publiée", @@ -92,6 +134,10 @@ const fr = { deployButtonLabel: 'Voir en direct', }, editorWidgets: { + markdown: { + richText: 'Texte enrichi', + markdown: 'Markdown', + }, image: { choose: 'Choisissez une image', chooseDifferent: 'Choisissez une image différente', @@ -109,12 +155,15 @@ const fr = { noPreview: "Pas d'aperçu pour le gadget '%{widget}'.", }, headingOptions: { - headingOne: 'Heading 1', - headingTwo: 'Heading 2', - headingThree: 'Heading 3', - headingFour: 'Heading 4', - headingFive: 'Heading 5', - headingSix: 'Heading 6', + headingOne: 'Titre 1', + headingTwo: 'Titre 2', + headingThree: 'Titre 3', + headingFour: 'Titre 4', + headingFive: 'Titre 5', + headingSix: 'Titre 6', + }, + datetime: { + now: 'Maintenant', }, }, }, @@ -124,6 +173,8 @@ const fr = { }, mediaLibrary: { onDelete: 'Voulez-vous vraiment supprimer la ressource sélectionné ?', + fileTooLarge: + "Le fichier est trop volumineux.\nL'instance est configurée pour bloquer les envois de plus de %{size} kB.", }, mediaLibraryModal: { loading: 'Chargement...', @@ -136,17 +187,23 @@ const fr = { search: 'Recherche...', uploading: 'Téléversement...', upload: 'Téléverser une nouvelle ressource', + download: 'Télécharger', deleting: 'Suppression...', deleteSelected: 'Supprimer les éléments sélectionnés', chooseSelected: 'Choisir les éléments sélectionnés', }, }, ui: { + default: { + goBackToSite: 'Retourner sur le site', + }, errorBoundary: { title: 'Erreur', details: 'Une erreur est survenue, veuillez ', reportIt: 'la signaler.', detailsHeading: 'Détails', + privacyWarning: + "Ouvrir une issue la préremplie avec le message d'erreur et des données de déboggage.\nMerci de vérifier l'exactitude des informations et de supprimer toute donnée sensible si nécessaire.", recoveredEntry: { heading: 'Document récupéré', warning: 'Veuillez copier/coller ceci quelque part avant de naviguer ailleurs!', @@ -157,19 +214,24 @@ const fr = { logOut: 'Déconnexion', }, toast: { - onFailToLoadEntries: "Échec du chargement de l'entrée: %{details}", - onFailToLoadDeployPreview: "Échec du chargement de l'aperçu: %{details}", - onFailToPersist: "Échec de l'enregistrement de l'entrée: %{details}", - onFailToDelete: "Échec de la suppression de l'entrée: %{details}", - onFailToUpdateStatus: 'Échec de la mise à jour du statut: %{details}', + onFailToLoadEntries: "Échec du chargement de l'entrée : %{details}", + onFailToLoadDeployPreview: "Échec du chargement de l'aperçu : %{details}", + onFailToPersist: "Échec de l'enregistrement de l'entrée : %{details}", + onFailToDelete: "Échec de la suppression de l'entrée : %{details}", + onFailToUpdateStatus: 'Échec de la mise à jour du statut : %{details}', missingRequiredField: 'Oops, il manque un champ requis. Veuillez le renseigner avant de soumettre.', entrySaved: 'Entrée enregistrée', entryPublished: 'Entrée publiée', - onFailToPublishEntry: 'Échec de la publication: %{details}', + entryUnpublished: 'Entrée dépubliée', + onFailToPublishEntry: 'Échec de la publication : %{details}', + onFailToUnpublishEntry: "Impossible de dépublier l'entrée : %{details}", entryUpdated: "Statut de l'entrée mis à jour", onDeleteUnpublishedChanges: 'Modifications non publiées supprimées', onFailToAuth: '%{details}', + onLoggedOut: 'Vous avez été déconnecté, merci de sauvegarder les données et vous reconnecter', + onBackendDown: + "Le serveur est actuellement hors-service. Pour plus d'informations : %{details}", }, }, workflow: { @@ -193,7 +255,7 @@ const fr = { workflowList: { onDeleteEntry: 'Voulez-vous vraiment supprimer cette entrée ?', onPublishingNotReadyEntry: - 'Seul les éléments ayant le statut "Prêt" peuvent être publiés. Veuillez glisser/déposer la carte dans la colonne "Prêt" pour activer la publication', + 'Seuls les éléments ayant le statut "Prêt" peuvent être publiés. Veuillez glisser/déposer la carte dans la colonne "Prêt" pour activer la publication', onPublishEntry: 'Voulez-vous vraiment publier cette entrée ?', draftHeader: 'Brouillons', inReviewHeader: 'En cours de révision',