Files
pl_mail/translations/messages.fr.yaml
T
Paul LütznerandClaude Opus 5.5 3c0769c1e6 Order every inbox tab, and let a built-in one be switched off
One order across the built-in tabs and the reader's own, and a set of
built-ins switched off, both beside the other sorting choices on the
user (CategorySorting). The order replaces the categories' own position
column, which never shipped: the strip is one list, so its order is too.
Primary is always first and cannot be switched off — it is where the
rest falls back to.

A switched-off category takes no mail. Whatever would have gone there —
by the header rules, Google's label or the assistant — is in Primary,
and the message panel says it would have been that category. The
answer is mapped rather than the next rule consulted: "Forums is off"
does not make a mailing list Promotions for its List-Unsubscribe.

Until the re-sort a switch queues has run, and for a conversation
somebody pinned there, Primary lists and counts the switched-off
category's conversations too, so nothing is in no tab at all.

InboxTabs is where order and on/off are applied, so the strip, the drop
targets and every key that resolves agree. A restore rewrites the
order's own-tab keys to the categories' new ids.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 11:34:45 +02:00

4426 lines
248 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
account:
add_title: Ajouter un compte
added: Compte ajouté
colour_set: Couleur du compte modifiée
disabled: Compte désactivé
enabled: Compte activé
form:
email: Adresse e-mail
encryption: Chiffrement
imap:
heading: Réception — IMAP
host: Serveur
password: Mot de passe
port: Port
preset:
label: Fournisseur
placeholder: Choisissez un fournisseur…
smtp:
heading: Envoi — SMTP
host: Serveur
password: Mot de passe d’envoi
same: Utiliser le même mot de passe pour l’envoi
separate: Utiliser un autre mot de passe pour l’envoi
username: Nom d’utilisateur
oauth:
calendar_declined: Le compte est connecté, mais l’accès à l’agenda n’a pas été accordé — ses agendas ne seront donc pas synchronisés. Reconnectez-le et cochez l’accès à l’agenda sur l’écran de consentement de Google.
google: Continuer avec Google
info: Connectez-vous chez votre fournisseur — aucun mot de passe n’est stocké.
microsoft: Continuer avec Microsoft
primary_set: Compte principal modifié
removed: Compte supprimé
tabs:
imap: IMAP / SMTP
oauth: OAuth
test:
button: Tester la connexion
hint:
expects_ssl: 'Le port %port% attend normalement du SSL/TLS implicite.'
expects_starttls: 'Le port %port% attend normalement STARTTLS, pas du SSL/TLS implicite.'
no_encryption: 'Le chiffrement est réglé sur Aucun — la plupart des fournisseurs exigent SSL/TLS ou STARTTLS.'
imap: IMAP
request_failed: 'Le test n’a pas pu s’exécuter (%status%).'
result:
auth: 'Le serveur a refusé le nom d’utilisateur ou le mot de passe.'
failed: 'La connexion n’a pas fonctionné. Vérifiez le serveur, le port et le chiffrement.'
host_invalid: 'Saisissez uniquement un nom d’hôte ou une adresse IP — sans barre oblique, point d’interrogation ni @.'
imap_ok: 'Connecté — %count% dossiers visibles.'
missing_fields: 'Saisissez d’abord au moins une adresse e-mail et un serveur IMAP.'
missing_password: 'Aucun mot de passe pour le test. Saisissez-en un ci-dessus — dans le formulaire de modification, un champ vide conserve le mot de passe enregistré, que le test ne peut utiliser qu’une fois le compte enregistré.'
smtp_none: 'Aucun serveur SMTP configuré — l’envoi est désactivé pour ce compte.'
smtp_ok: 'Connecté et authentifié.'
timeout: 'Le serveur n’a pas répondu à temps. Vérifiez le serveur et le port, et qu’aucun pare-feu ne bloque.'
tls: 'La connexion sécurisée a échoué — le certificat n’a pas été accepté, ou le réglage de chiffrement ne correspond pas au port.'
unreachable: 'Le serveur est injoignable. Vérifiez le nom d’hôte et le port.'
smtp: SMTP
updated: Compte mis à jour
admin:
accounts:
account: 'Compte'
heading: 'Comptes'
last_activity: 'Dernière activité'
messages: 'Messages'
threads: 'Conversations'
address:
field:
public_url: Adresse publique
public_url_help: >-
L’adresse par laquelle on joint plMail depuis l’extérieur, avec http:// ou
https:// devant et sans chemin. Gmail et Outlook y renvoient leurs
notifications push : pour eux, elle doit être joignable depuis internet en https.
follow_up: >-
Ce qui est enregistré ailleurs ne suit pas tout seul : les adresses de
redirection dans les consoles Google et Microsoft, un point de terminaison
push Gmail Pub/Sub, et l’adresse du serveur dans les applications de mail et
d’agenda. Les notifications du navigateur doivent être réactivées sur chaque appareil.
heading: Adresse publique
in_use: Utilisée actuellement
intro: >-
L’adresse à partir de laquelle plMail construit ses propres liens : là où les
navigateurs se connectent pour les mises à jour en direct, et là où Google et
Microsoft sont invités à rappeler. Changez-la quand l’installation passe à un
autre domaine, port ou proxy, ou après la restauration d’une sauvegarde faite
sur une autre machine.
none: aucune
on_file: Enregistrée
pending: >-
L’adresse enregistrée n’est pas celle en service. Un changement prend effet au
prochain démarrage des conteneurs. Si les deux diffèrent encore après un
redémarrage, APP_PUBLIC_URL est défini dans le fichier compose, et ce réglage
l’emporte sur celui-ci.
restart_help: >-
Redémarrer plMail ici suffit pour les mises à jour en direct. Redémarrez aussi
toute la stack, pour que les workers enregistrent le push à la nouvelle adresse.
save: Enregistrer l’adresse
saved: 'Enregistrée — elle prend effet au prochain redémarrage.'
ago: 'il y a %age%'
ai:
backfill:
chip:
complete: 'Terminé'
failed: 'Arrêté'
idle: 'Inactif'
paused: 'En pause'
running: 'En cours'
stalled: 'Bloqué'
eta: 'Environ %duration%, à ce rythme'
eta_label: 'Restant'
eta_settling: 'Trop tôt pour estimer'
failed_body: 'L’hôte du modèle n’a rien répondu plusieurs fois de suite, le passage s’est donc arrêté. Rien n’est perdu : la reprise continue là où il s’était arrêté.'
failures: '%count% messages auxquels le modèle n’a pas pu répondre. Le prochain passage les reprendra.'
failures_label: 'Ignorés'
finished_label: 'Terminé'
heading: 'Index de recherche'
intro: 'La recherche par le sens ne voit que le courrier indexé. Ceci parcourt chaque boîte une fois ; ensuite, le nouveau courrier est indexé peu après une recherche, et une fois par nuit par sécurité.'
last_activity_label: 'Dernier signe de vie'
model_label: 'Indexé avec'
no_mail: 'Il n’y a pas encore de courrier à indexer.'
outcome:
already_running: 'Un passage est déjà en cours.'
no_mailboxes: 'Il n’y a aucune boîte à parcourir.'
not_running: 'Rien n’est en cours.'
nothing_to_resume: 'Il ne reste rien à reprendre.'
resumes_itself: 'Il reprend déjà de lui-même.'
search_off: 'La recherche par le sens est désactivée, il n’y a donc rien à indexer.'
pause: 'Pause'
paused:
feature_off: 'Arrêté parce que la recherche par le sens a été désactivée.'
host_unreachable: 'En attente d’une réponse de l’hôte du modèle. Il réessaie tout seul.'
interactive: 'Se met de côté pendant que l’aide à la rédaction est utilisée. Il reprend tout seul un instant après.'
operator: 'En pause. Il reprendra là où il s’est arrêté.'
progress: '%embedded% messages indexés sur %eligible%'
rate: '%rate% messages par seconde, sur les cinq dernières minutes'
rate_label: 'Débit'
resume: 'Reprendre'
search_off: 'La recherche par le sens est désactivée, il n’y a donc rien à indexer. Activez-la d’abord ci-dessus.'
stalled_body: 'Rien n’a bougé depuis un moment — le worker qui s’en chargeait a probablement disparu. La reprise repart de là où il s’est arrêté.'
start: 'Démarrer'
started_label: 'Démarré'
tuning: '%batch% messages par lot, %delay% s entre les lots, et il se met de côté pendant %cooldown% s après toute utilisation de l’aide à la rédaction.'
duration:
hours: '%count% h'
minutes: '%count% min'
seconds: '%count% s'
embedding_preset:
heading: 'Préréglages mesurés — un clic règle à la fois le modèle, son instruction et son seuil :'
all-minilm: 'Petit et rapide : 45 Mo et 384 dimensions, pour une machine qui ne peut pas céder de mémoire. Pensé d’abord pour l’anglais : attendez-vous à ce qu’il soit le plus faible des trois sur du courrier en allemand. Aucune instruction nécessaire.'
nomic-embed-text: 'Ce que plMail recommandait auparavant, conservé pour les installations qui l’utilisent déjà. Pris en charge à moitié, honnêtement : il veut que ses documents soient étiquetés comme ses requêtes, ce que plMail ne fait pas, et l’instruction de requête seule ne change rien d’après les mesures.'
qwen3-embedding_0_6b: 'Le choix par défaut, et celui à prendre sauf raison particulière. Multilingue, ce qui compte plus que n’importe quel benchmark pour une boîte qui n’est pas dans une seule langue, et le seul ici à avoir atteint une précision parfaite aux tests. 639 Mo.'
field:
base_url: 'Hôte du modèle'
base_url_help: 'Pour Ollama, l’adresse du conteneur sur votre réseau, port compris. Pour un point de terminaison compatible OpenAI, la racine de l’API avec sa version, par exemple https://api.example.com/v1.'
categorisation: 'Trier le courrier dans les onglets'
categorisation_help: 'S’exécute sur chaque message qui arrive. Ne sert jamais qu’à départager — les règles ordinaires décident d’abord.'
chat_keep_alive: 'Garder le modèle de rédaction chargé pendant'
chat_keep_alive_help: '5m, 30m, 4h, ou un nombre de secondes. -1 le garde chargé en permanence, 0 le décharge après chaque requête. Plus c’est long, plus la première réponse arrive vite ; l’hôte garde la mémoire réservée pendant toute la durée dans les deux cas. Laissez vide pour utiliser le réglage de l’hôte.'
chat_model: 'Modèle de rédaction'
chat_model_help: 'Utilisé pour les réponses, les résumés et le tri. Un modèle entraîné aux instructions.'
embedding_keep_alive: 'Garder le modèle de recherche chargé pendant'
embedding_keep_alive_help: 'Même format que ci-dessus. Ce modèle est petit et sollicité en permanence, donc -1 — chargé pour de bon — coûte généralement peu et évite une attente à chaque recherche ; à régler si l’hôte a la mémoire nécessaire. Laissez vide pour utiliser le réglage de l’hôte.'
embedding_base_url: 'Hôte de recherche'
embedding_model: 'Modèle de recherche'
embedding_own: 'La recherche utilise un autre hôte de modèle'
embedding_own_help: 'Pour faire tourner le modèle de recherche ailleurs que le modèle de rédaction : un modèle hébergé pour la rédaction et un petit à la maison pour la recherche, ou l’inverse. Chaque message est envoyé une fois à l’hôte de recherche pour être indexé. Si le modèle de recherche porte le même nom là-bas, l’index existant est conservé.'
embedding_provider: 'Fournisseur de l’hôte de recherche'
embedding_model_help: 'Transforme le courrier en vecteurs pour que la recherche trouve le sens plutôt que les mots.'
hold: 'Attendre l’assistant avant d’afficher le nouveau courrier dans un onglet'
hold_help: 'Pour ceux qui laissent l’assistant trier leur courrier. Le nouveau courrier est tenu hors des onglets le temps dont l’assistant a besoin, pour qu’il apparaisse une seule fois, dans le bon onglet, au lieu d’apparaître dans un onglet puis de passer dans un autre. Le courrier d’un premier import n’est jamais retenu.'
hold_max_seconds: 'Attendre au plus (secondes)'
hold_max_seconds_help: 'Au-delà, le courrier est affiché là où les règles ordinaires le placent, quoi que fasse l’assistant — et déplacé si l’assistant répond plus tard. Entre 2 et 300.'
search_query_instruction: 'Instruction de requête'
search_query_instruction_help: 'Placée devant le texte recherché avant sa vectorisation. La plupart des modèles en ont besoin et répondent mal sans ; laissez vide pour les modèles qui n’en veulent pas. Seules les recherches sont concernées : la changer n’oblige jamais à réindexer votre courrier.'
semantic_min_similarity: 'Similarité minimale'
semantic_min_similarity_help: 'À quel point un résultat doit être proche, de 0 à 1. Chaque modèle répond sur sa propre échelle, ce réglage va donc avec le modèle ci-dessus : trop haut ne trouve rien, trop bas renvoie toute la boîte.'
enabled: 'Utiliser un modèle de langage'
headers: 'En-têtes supplémentaires'
headers_clear: 'Supprimer les en-têtes enregistrés'
headers_help: 'Un par ligne, sous la forme Nom: valeur. Envoyés avec chaque requête à l’hôte du modèle, pour un proxy ou une passerelle qui demande plus qu’un jeton. Stockés chiffrés et jamais réaffichés.'
headers_help_set: 'Enregistrés : %names%. Laissez vide pour les conserver. Ce que vous saisissez ici les remplace tous ; les valeurs enregistrées ne sont jamais affichées.'
provider: 'Fournisseur'
provider_help: 'L’API que parle l’hôte du modèle. Ollama est celui que plMail connaît le mieux : il peut garder un modèle chargé et en charger un à l’avance. Compatible OpenAI couvre presque tout le reste, sur votre réseau ou hébergé.'
enabled_help: 'Désactivé par défaut. Tout ce qui suit est ignoré tant que ceci est désactivé.'
search: 'Recherche par le sens'
search_help: 'Ajoute des résultats qui correspondent à ce que vous vouliez dire. La recherche ordinaire ne change pas.'
summary: 'Résumés de conversation'
summary_help: 'Utilise le modèle de rédaction. Une requête à froid prend environ une minute et occupe le GPU tout ce temps.'
token: 'Jeton'
token_help: 'Seulement si vous avez placé l’hôte derrière quelque chose qui en demande un. Envoyé comme jeton bearer avec chaque requête.'
token_help_set: 'Un jeton est enregistré. Laissez vide pour le conserver. Changer l’adresse ci-dessus sans en saisir un le supprime.'
writing_help: 'Aide-moi à écrire'
writing_help_help: 'Propose des brouillons et des reformulations dans l’éditeur, quand vous les demandez.'
heading: 'Modèle de langage'
headers:
summary: 'En-têtes supplémentaires pour un proxy ou une passerelle'
hold:
details: 'Voir chaque message'
measured: '7 derniers jours : %count% messages retenus, généralement pendant %median% s (95 % en moins de %p95% s). %timeout% ont été affichés sans réponse parce que l’attente a expiré.'
no_data: 'Aucun courrier n’a été retenu ces 7 derniers jours, il n’y a donc pas encore de délai à afficher.'
intro: 'plMail peut utiliser un modèle de langage, sur une machine que vous gérez vous-même ou sur un point de terminaison de votre choix. Le courrier est envoyé à l’adresse saisie ici et nulle part ailleurs, rien n’est activé sans votre accord, et le client mail fonctionne exactement comme aujourd’hui tant que ceci est désactivé.'
perf:
by_model: 'Par modèle'
chip:
cold: 'Rien de chargé'
off: 'Désactivé'
answering: 'Répond'
split: 'En partie sur le CPU'
unreachable: 'Pas de réponse'
warm: 'Chargé'
feature:
thread_summary: 'Résumés'
categorise: 'Tri du courrier'
mail_index: 'Indexation du courrier'
search_query: 'Recherche'
writing_help: 'Aide à la rédaction'
heading: 'Hôte du modèle'
latest: 'Dernier appel : %feature% sur %model%'
model:
chat: 'Modèle de rédaction'
embedding: 'Modèle de recherche'
missing: 'absent de cet hôte'
missing_body: 'Un modèle indiqué ici n’est pas installé sur l’hôte. Téléchargez-le là-bas, ou indiquez-en un qui l’est — d’ici là, toute requête qui le vise échoue.'
none: 'non défini'
resident: 'en mémoire'
no_history: 'Rien n’a sollicité de modèle sur cette période. Les chiffres apparaîtront dès que ce sera le cas.'
no_host: 'Aucun hôte de modèle n’est encore défini. Ajoutez son adresse ci-dessus.'
off_body: 'L’IA est désactivée, aucun modèle n’est donc sollicité. Rien ici n’est une anomalie.'
resident:
cold_cost: 'La dernière fois, cela a pris environ %duration%.'
full: '%size% en mémoire, entièrement sur le GPU.'
heading: 'En mémoire actuellement'
none: 'Aucun modèle n’est chargé. La prochaine requête en chargera un.'
split: '%vram% sur %size% sur le GPU — %percent% %. Les %cpu% restants sont sur le CPU.'
split_body: 'Tout ce que fait ce modèle est plusieurs fois plus lent tant qu’il est partagé. Libérez de la mémoire GPU, ou utilisez un modèle plus petit, et rechargez-le.'
unloading: 'Déchargement en cours.'
unloads_in: 'Déchargé dans %duration% sauf si quelque chose le sollicite.'
retrying: 'Nouvelle vérification toutes les quelques secondes.'
table:
calls: 'Appels'
cold: 'Chargements à froid'
errors: 'Erreurs'
feature: 'Tâche'
gen: 'Jetons/s (p50 / p95)'
hint: 'p50 est l’appel médian et p95 le lent : la moitié ont été plus rapides que p50, un sur vingt plus lent que p95. Un chargement à froid est une requête qui a dû attendre que le modèle soit lu sur le disque.'
load: 'Chargement'
throughput:
heading: 'Ce qu’ont coûté les appels'
tokens_per_second: '%rate% jetons par seconde'
unreachable_body: 'Rien n’a répondu sur %host%. plMail continue sans ; les fonctions qui ont besoin d’un modèle ne font simplement rien.'
version: 'Ollama %version%'
window:
day: '24 heures'
hour: 'Heure'
week: '7 jours'
provider:
ollama: 'Ollama'
openai: 'Compatible OpenAI'
probe:
host:
search: 'Hôte de recherche'
writing: 'Hôte du modèle'
missing_model: 'Cet hôte a répondu, mais il n’a pas : %models%. Téléchargez-les d’abord sur l’hôte.'
no_host: 'Saisissez d’abord une adresse.'
no_model_list: 'Quelque chose a répondu à cette adresse, mais sans liste de modèles (HTTP %status%). Vérifiez que l’adresse se termine par la version de l’API, généralement /v1. Certains serveurs n’ont pas de liste et fonctionnent quand même ; enregistrez et essayez un brouillon pour le savoir.'
not_an_api: 'Quelque chose a répondu à cette adresse, mais pas en JSON. C’est généralement une page de connexion ou un proxy, pas l’API.'
refused: 'Cet hôte a répondu et refusé la requête (HTTP %status%). Vérifiez le jeton.'
ok: 'Cet hôte a répondu et dispose de %count% modèles.'
models: 'Afficher les %count% modèles disponibles'
status: 'Cet hôte a répondu avec HTTP %status%.'
unreachable: 'Rien n’a répondu à cette adresse. (%error%)'
prompt:
categorise:
hint: 'S’exécute sur le courrier entrant qu’aucune règle n’a reconnu. Il doit demander UN SEUL MOT parmi primary, social, promotions, updates, forums — plMail compare la réponse à exactement ces cinq-là, et toute autre réponse laisse silencieusement le courrier là où les règles ordinaires l’ont mis.'
label: 'Trier le courrier dans les onglets'
formal:
hint: 'Utilisé quand on demande le même message sur un ton plus formel.'
label: 'Rendre plus formel'
language:
hint: 'Ajouté à la fin de chaque instruction ci-dessus, sauf le tri. C’est ce qui fait qu’un mail en allemand reçoit une réponse en allemand — sans cela, le modèle suit l’anglais dans lequel ces instructions sont écrites, et la relecture d’un brouillon allemand le traduit. Vous pouvez le reformuler ; pas le supprimer. Videz le champ et le texte d’origine revient.'
label: 'Toujours répondre dans la langue du mail'
proofread:
hint: 'Utilisé quand on demande de corriger l’orthographe et la grammaire et rien d’autre. Gardez « ne change rien d’autre » — sans cela, le modèle réécrit des phrases qui étaient déjà correctes.'
label: 'Relire'
reply:
hint: 'Utilisé par « Aide-moi à écrire » quand on demande un premier brouillon.'
label: 'Rédiger une réponse'
shorten:
hint: 'Utilisé quand on demande le même message en moins de mots.'
label: 'Raccourcir'
summary:
hint: 'Utilisé par le bouton de résumé du volet de lecture. Le modifier marque tous les résumés déjà écrits comme périmés — rien n’est supprimé, ils sont réécrits à la prochaine demande.'
label: 'Résumer une conversation'
prompts:
changed: '%count% modifiés'
heading: 'Instructions système'
intro: 'Ce sont les instructions que plMail donne au modèle. Laissez un champ vide pour utiliser le texte fourni par plMail — ainsi une mise à jour pourra encore l’améliorer. Ce que vous saisissez remplace entièrement le texte fourni.'
reset: 'Revenir au texte d’origine'
save: 'Enregistrer les instructions'
saved: 'Enregistré. Les nouveaux résumés les utilisent ; les résumés déjà écrits sont maintenant périmés.'
show_shipped: 'Afficher le texte d’origine'
untouched: 'D’origine'
save: 'Enregistrer'
saved: 'Enregistré.'
status:
incomplete: 'Hôte manquant'
off: 'Désactivé'
on: 'Activé'
paused: 'En pause'
test: 'Tester'
warmup:
button: 'Préchauffer maintenant'
failed: 'Pas de réponse. Réessayez.'
loaded_ms: 'Modèle chargé en %count% ms — il était déjà en mémoire.'
loaded_seconds: 'Modèle chargé en %count% s.'
loading: 'Chargement du modèle…'
model_missing: 'Cet hôte n’a pas de modèle nommé « %model% ». Téléchargez-le là-bas, ou indiquez-en un qui s’y trouve. (%error%)'
no_host: 'Définissez d’abord un hôte de modèle, puis enregistrez.'
no_model: 'Indiquez d’abord un modèle de rédaction, puis enregistrez.'
not_ollama: 'Seul un hôte Ollama peut charger un modèle à l’avance.'
status: 'L’hôte a refusé avec HTTP %status%. (%error%)'
timeout: 'L’hôte chargeait encore après quatre minutes et plMail a cessé d’attendre. Il finira peut-être ; le modèle est très probablement trop gros pour la mémoire disponible.'
unexpected: 'Un problème est survenu avant que l’hôte puisse répondre. (%error%)'
unreachable: 'Rien n’a répondu à cette adresse. (%error%)'
client_errors:
browser: 'Navigateur'
clear: 'Effacer'
clear_confirm: 'Supprimer toutes les erreurs du navigateur ? Elles reviendront d’elles-mêmes si elles se produisent encore.'
count: '{0}rien de signalé|{1}1 anomalie|]1,Inf[ %count% anomalies'
empty: 'Aucune erreur de navigateur.'
empty_hint: 'Les erreurs non interceptées des scripts de plMail arrivent ici, regroupées par anomalie. Les erreurs des extensions de navigateur sont filtrées — l’essentiel de ce qu’un navigateur signale ne vient pas de cette application.'
first_seen: 'Vue la première fois'
heading: 'Erreurs du navigateur'
kind:
csp: 'Bloqué'
error: 'Erreur'
unhandledrejection: 'Rejet'
occurrences: '{1}sur 1 chargement de page|]1,Inf[ sur %count% chargements de page'
page: 'Dernière page'
config_backup:
change:
absent: 'rien de défini ici pour l’instant'
differs: 'remplace une valeur différente'
unchanged: 'déjà identique'
disposition:
applied: 'Écrit, et en vigueur dès maintenant.'
applied-on-restart: 'prend effet au prochain redémarrage'
external: >-
plMail est un client du système auquel ceci appartient, pas son
propriétaire. Le rôle de base de données a été créé avec le mot de passe
que Postgres détient déjà, et seul un initdb en lit un nouveau — le changer
ici seulement donne donc une installation incapable de se connecter à sa
propre base. Changez-le d’abord dans Postgres, puis ici.
kept-deliberately: >-
Conservé tel quel ici, volontairement. Les identifiants de cette
sauvegarde ont été rechiffrés avec la clé de cette installation au moment
de leur écriture : mettre en place la clé de la sauvegarde les rendrait
illisibles — eux et tout ce qui est déjà stocké — au prochain démarrage. La
ligne ci-dessous ne sert que si vous restaurez aussi l’ancienne base, dont
les lignes sont chiffrées avec elle ; elle doit alors être en place avant
que quoi que ce soit ne soit stocké.
not-writable: >-
Ce processus n’a pas pu écrire à cet emplacement. Volume de secrets en
lecture seule, mauvais uid, ou service auquel le volume n’a jamais été
donné. La valeur est dans la sauvegarde que vous venez d’envoyer — placez-la
vous-même.
shadowed-by-compose: >-
Écrit, mais quelque chose dans l’environnement du processus définit aussi
ce nom, et le point d’entrée laisse une valeur configurée explicitement
l’emporter sur celle générée. Supprimez-la ou mettez-la à jour dans votre
fichier compose — ou dans le `.env` à côté — et redémarrez ; la valeur
restaurée attend déjà en dessous.
error:
malformed-document: >-
Le mot de passe a ouvert ce fichier, mais son contenu n’est pas une
sauvegarde de configuration que ce plMail sait lire. Rien n’a été modifié.
not-a-backup: >-
Ce n’est pas une sauvegarde de configuration plMail. Rien n’a été modifié.
unsupported-version: >-
Cette sauvegarde a été écrite par un plMail plus récent que celui-ci, dans
un format que cette version ne sait pas lire. Mettez d’abord à jour, puis
importez-la.
collision: >-
Ce fichier décrit quelqu’un dont cette installation possède déjà une partie —
un mot de passe d’application, un lien de partage ou une page de réservation
dont le jeton est encore enregistré ici, généralement laissé par un compte
supprimé. Rien n’a été modifié. Supprimez ces restes, ou importez sur une
installation qui ne les a pas.
wrong-password: >-
Ce mot de passe n’ouvre pas ce fichier — ou le fichier a été modifié depuis
son écriture. Rien n’a été modifié.
export:
error:
mismatch: 'Les deux mots de passe ne correspondaient pas, rien n’a donc été exporté.'
too_short: 'Ce mot de passe est trop court, rien n’a donc été exporté.'
heading: 'Exporter la configuration'
intro: >-
Tous les réglages et identifiants dont dépend cette installation, dans un
seul fichier chiffré par mot de passe : les valeurs d’environnement, les
fichiers du volume de secrets, les identifiants des fournisseurs et de
Firebase stockés en base, et les personnes — chacune avec son mot de passe,
son second facteur, ses boîtes et tout ce qu’elle a configuré. Ni courrier,
ni entrées d’agenda, ni contacts ; c’est le rôle de `app:backup`.
generate: 'En générer un'
generated_copied: 'Copié dans votre presse-papiers — conservez-le dans un endroit qui survivra à cette machine.'
generated_shown: 'Votre navigateur n’a pas voulu partager son presse-papiers, le mot de passe est donc affiché ci-dessus — conservez-le maintenant.'
password: 'Mot de passe'
password_help: >-
Au moins %length% caractères. Il n’est stocké nulle part, et le fichier ne
peut pas être ouvert sans lui.
password_repeat: 'Répéter le mot de passe'
submit: 'Télécharger la sauvegarde'
warning: >-
Le fichier obtenu contient tous les secrets de cette installation, protégés
uniquement par le mot de passe que vous saisissez ici. Conservez-le comme
vous conserveriez la clé de chiffrement elle-même.
import:
error:
no_file: 'Aucun fichier n’est arrivé, ou il était bien plus gros qu’une sauvegarde de configuration ne peut l’être.'
no_password: 'Saisissez le mot de passe avec lequel cette sauvegarde a été scellée.'
file: 'Fichier de sauvegarde'
heading: 'Importer une configuration'
intro: >-
Envoyez une sauvegarde et saisissez son mot de passe. Rien n’est écrit avant
que vous ayez vu ce qu’elle ferait et confirmé.
password: 'Mot de passe'
submit: 'Examiner cette sauvegarde'
review:
already_matching: '%count% autres correspondent déjà à cet environnement, il n’y a donc rien à faire pour elles.'
apply: 'Appliquer cette sauvegarde'
applied: 'Ce qui a été écrit'
confirm_password: 'Mot de passe, une fois encore'
exported_at: 'Exportée le'
from: 'Depuis'
heading: 'Examiner cette sauvegarde'
instructed: 'À faire de votre côté'
instructed_lead: >-
Tout le reste est en place. Ces quelques points ne peuvent pas être terminés
d’ici, et chacun dit pourquoi — prétendre le contraire serait un mensonge
qu’un administrateur ne découvrirait que le jour où cela compte.
kept_users: 'Déjà présents — conservés tels quels'
kept_users_lead: >-
Cette installation a déjà ces personnes, reconnues par leur adresse e-mail.
Rien les concernant n’a été touché : ni leur mot de passe, ni leur second
facteur, ni leurs boîtes, ni rien de ce qu’elles avaient configuré. Une
sauvegarde est la photo d’un moment passé, et l’écrire par-dessus un compte
actif, c’est priver quelqu’un de son propre courrier sans un mot nulle part.
old_key_summary: 'Vous restaurez aussi l’ancienne base ? Il vous faudra son ancienne clé de chiffrement.'
restart: >-
L’essentiel est lu au démarrage de la stack : plMail l’écrit donc dans les
secrets générés et cela prend effet au prochain redémarrage. Un seul
redémarrage pour toute la liste, pas un par valeur.
restart_applied: >-
Écrit. Les valeurs lues au démarrage des conteneurs sont en place mais pas
encore en vigueur — redémarrez la stack une fois et cette installation
redémarre comme celle d’où vient la sauvegarde.
unknown_instance: 'non enregistrée'
written: 'plMail écrit ceci'
written_applied: 'Écrit'
written_none: 'Cette sauvegarde ne contient rien que plMail doive écrire.'
section:
database: 'Base de données'
env: 'Variables d’environnement'
files: 'Fichiers du volume de secrets'
users: 'Les personnes et tout ce qu’elles ont configuré'
db:
active:
empty: 'Aucune requête active en ce moment.'
heading: 'Activité en direct'
cache_hit: 'Taux de cache'
col:
calls: 'Appels'
hit: 'Cache'
max: 'Max ms'
mean: 'Moy. ms'
query: 'Requête'
rows: 'Lignes'
total: 'Total'
connections: 'Connexions'
deadlocks: 'Interblocages'
extension_missing: 'pg_stat_statements n’est pas activé — l’agrégation des requêtes lentes n’est pas disponible. Activez-le une fois :'
extension_enable: "L’activer maintenant"
extension_enable_hint: "Les statistiques commencent au moment où l’extension est créée, les requêtes antérieures n’apparaîtront donc pas."
extension_enable_failed: "Impossible d’activer l’extension - le rôle de base de données n’a pas le droit de la créer."
heavy_total:
heading: 'Requêtes les plus lourdes (temps total)'
hint: 'Temps cumulé sur tous les appels — là où la base passe son temps au total.'
reset: 'Réinitialiser les statistiques'
reset_confirm: 'Réinitialiser toutes les statistiques de requêtes collectées ?'
rollback_ratio: 'Taux de rollback'
slow_mean:
empty: 'Aucune requête au-dessus du seuil pour l’instant.'
heading: 'Requêtes les plus lentes (temps moyen)'
hint: 'Requêtes d’une moyenne ≥ 5 ms, base actuelle.'
demo_stats:
active: 'Ouvertes actuellement : %count%'
col:
period: 'Période'
sessions: 'Sessions démarrées'
visitors: 'Visiteurs distincts'
heading: 'Visiteurs de la démo'
intro: 'Combien de sessions de démo cette instance a distribuées. Une session est une boîte créée en suivant /demo ; quelqu’un qui revient après l’expiration de la sienne en démarre une autre.'
privacy: 'Aucune adresse n’est stockée. Chaque session garde un hachage à clé du réseau du visiteur (l’adresse amputée de sa dernière partie), pour qu’un visiteur qui revient ne compte qu’une fois ; les personnes partageant un réseau comptent pour une. Le hachage est supprimé après %days% jours, c’est pourquoi le total n’a pas de nombre de visiteurs.'
window:
day: '24 dernières heures'
hour: 'Dernière heure'
month: '30 derniers jours'
total: 'Depuis le début'
week: '7 derniers jours'
failed:
delete: 'Supprimer'
delete_confirm: 'Supprimer définitivement ce message en échec ?'
empty: 'La file des échecs est vide. 🎉'
heading: 'Messages en échec'
purge: 'Tout purger'
purge_confirm: 'Supprimer définitivement tous les messages en échec ? Ils ne pourront plus être relancés.'
retry: 'Relancer'
retry_all: 'Tout relancer'
retry_all_confirm: 'Relancer tous les messages en échec ?'
insight_reports:
clear_handled:
button: 'Supprimer les signalements traités'
confirm: 'Supprimer %count% signalement(s) déjà marqué(s) comme traité(s) ? Les copies des mails partent avec.'
heading: 'Vider la pile des traités'
lead: '%count% signalement(s) marqué(s) comme traité(s). Les supprimer ne touche pas à ceux encore en attente.'
copy: 'Copier la sélection'
copy_hint: 'Les signalements sélectionnés sous forme de lignes de texte, à coller dans un prompt ou un ticket.'
delete: 'Supprimer ce signalement'
delete_confirm: 'Supprimer ce signalement ? La copie du mail qu’il contient part avec.'
download: 'Enregistrer en texte'
download_hint: 'Les mêmes lignes, dans un fichier texte.'
empty: 'Rien n’a été signalé.'
empty_hint: 'Ceci se remplit quand quelqu’un indique à plMail qu’il s’est trompé sur un mail — un mail qui aurait dû produire un aperçu et ne l’a pas fait, ou un mail trouvé dans le mauvais onglet.'
export:
intro: 'Un fichier JSON contenant les signalements sélectionnés en entier : chaque verdict, les en-têtes sur lesquels chaque décision a été prise, et le texte du message quand il y en a. C’est ce qui sert à écrire une règle ou un nouvel extracteur. Ne sélectionnez rien pour tout obtenir.'
not_handled: 'Le téléchargement ne change rien ici — un signalement compte comme traité quand vous le dites.'
submit: 'Exporter la sélection'
warning: 'Ce fichier contient le courrier d’autres personnes. Conservez-le là où vous conserveriez la boîte elle-même.'
filter: 'Afficher'
filter_handled: 'Traités'
filter_pending: 'En attente'
handled: 'Traité'
handled_at: 'Marqué comme traité %when%'
heading: 'Courrier signalé'
kind:
category: 'Mauvais onglet'
insight: 'Aucun aperçu'
mark_handled: 'Marquer comme traité'
no_body: 'Ce signalement ne contient pas de texte de message.'
no_sender: 'aucun expéditeur enregistré'
no_subject: '(sans objet)'
pending: '{0}Rien en attente|{1}1 en attente|]1,Inf[ %count% en attente'
pending_badge: 'En attente'
problem:
no_insight: 'Aucun aperçu'
received_at: 'Mail arrivé %when%'
reported_by: 'Signalé par %who%'
reporter_gone: 'un compte supprimé'
select_all: 'Tout sélectionner'
selected: '%count% sélectionné(s)'
verdict:
body: 'Texte vu par le modèle'
body_none: 'aucun — HTML uniquement'
body_text: 'oui'
gmail: 'Gmail a dit'
headers: 'En-têtes d’envoi en masse'
model: 'Le modèle a dit'
none: 'aucun'
not_asked: 'non demandé'
rules: 'Les règles ont dit'
integrations:
base_url_per_user: 'Chaque utilisateur saisit l’adresse de son propre serveur.'
base_url_pinned: 'imposée à tous les utilisateurs'
clear_secret: 'Supprimer le secret client enregistré'
configure: 'Configurer'
connected_users: '%count% connecté(s)'
copy_redirect_uri: 'Copier l’URI de redirection'
inherit_toggle: 'Utiliser aussi ces identifiants pour le stockage de fichiers'
inherit_toggle_help: 'Un même projet Google couvre aussi Drive et Photos ; une même application Microsoft couvre aussi OneDrive. Laissez ceci activé et il n’y a rien de plus à configurer pour eux.'
field:
base_url: 'Adresse du serveur'
base_url_help_saas: 'Laissez vide. Ce service a une adresse fixe.'
base_url_help_selfhosted: 'Facultatif. Renseignez-la pour imposer un même serveur à tous ; laissez vide pour que chacun saisisse le sien.'
client_id: 'ID client'
client_secret: 'Secret client'
enabled: 'Proposer ce service aux utilisateurs'
enabled_help: 'Désactivé, personne ne peut s’y connecter et il reste masqué dans les menus de rédaction et d’enregistrement.'
pubsub_topic: 'Sujet Pub/Sub'
pubsub_topic_help: 'Nom complet du sujet sur lequel Gmail publie les changements. Sans lui, les comptes restent en interrogation périodique au lieu du push. Laissez vide pour utiliser GMAIL_PUBSUB_TOPIC.'
push_token: 'Jeton de vérification push'
push_token_help: 'Secret partagé que Google inclut dans chaque push Pub/Sub ; le webhook rejette les notifications qui ne l’ont pas. Laissez vide pour utiliser GMAIL_PUBSUB_VERIFICATION_TOKEN.'
redirect_uri: 'URI de redirection'
redirect_uri_help: 'Collez-la dans la console du fournisseur exactement telle qu’affichée. Elle ne peut pas être changée plus tard sans casser les connexions existantes.'
tenant: 'Tenant'
tenant_help: 'Laissez common pour les comptes personnels et professionnels, organizations pour les comptes professionnels uniquement, ou un ID de tenant pour vous restreindre au vôtre. Il doit correspondre aux types de comptes pris en charge par l’inscription de l’application.'
inherit: 'Réutiliser les identifiants %name%'
inherit_help: 'Copie l’ID et le secret client côté serveur — le secret n’est jamais affiché. Cela n’accorde pas l’autorisation supplémentaire dont le service a besoin ; ajoutez-la chez le fournisseur comme le décrivent les étapes de configuration.'
inherited: 'Identifiants copiés'
mail:
calendar_heading: 'La synchronisation d’agenda utilise cette même application'
calendar_google: >-
Rien à configurer ici. Activez l’API Google Calendar pour ce projet et
ajoutez la portée .../auth/calendar à l’écran de consentement — les
utilisateurs obtiennent alors leurs agendas avec la connexion qu’ils
utilisent déjà pour le courrier. Sans cela, le courrier continue de
fonctionner et les agendas n’apparaissent simplement pas.
calendar_microsoft: >-
Rien à configurer ici. Ajoutez l’autorisation déléguée
Calendars.ReadWrite à l’inscription de cette application — les
utilisateurs obtiennent alors leurs agendas avec la connexion qu’ils
utilisent déjà pour le courrier. Sans cela, le courrier continue de
fonctionner et les agendas n’apparaissent simplement pas.
env_note: 'Si ces champs restent vides, GOOGLE_OAUTH_* / MICROSOFT_OAUTH_* de l’environnement sont utilisés : une installation déjà configurée ainsi continue de fonctionner.'
from_env: 'Depuis l’environnement'
google: 'Connexion Gmail'
heading: 'Connexion au courrier'
intro: 'L’application OAuth par laquelle les utilisateurs se connectent quand ils ajoutent un compte mail. Les intégrations de fichiers Google et Microsoft peuvent réutiliser les mêmes identifiants.'
microsoft: 'Connexion au courrier Microsoft'
saved: 'Connexion au courrier enregistrée'
intro: 'Les services depuis lesquels les utilisateurs peuvent joindre des fichiers et vers lesquels ils peuvent enregistrer des pièces jointes. Tous sont listés ici, y compris ceux avec lesquels plMail ne sait pas encore communiquer.'
not_set: 'Non défini'
saved: 'Réglages d’intégration enregistrés'
secret_none: 'Aucun secret enregistré'
secret_stored: 'Enregistré'
secret_unchanged: 'Laissez vide pour conserver le secret enregistré'
status:
disabled: 'Désactivé'
enabled: 'Activé'
incomplete: 'Identifiants manquants'
unimplemented: 'Pas encore disponible'
tutorial:
caldav:
intro: 'CalDAV s’authentifie avec un mot de passe d’application propre à chaque utilisateur, sur son propre serveur : il n’y a rien à enregistrer ici.'
not_for_cloud_mail: 'Les agendas Gmail et Outlook ne passent pas par là. Ils arrivent avec la connexion au courrier ci-dessus, et n’ont besoin que de l’autorisation d’agenda cochée sur l’inscription de cette application.'
security: 'Les utilisateurs devraient créer un mot de passe d’application plutôt qu’utiliser leur mot de passe de connexion : les mots de passe d’application sont révocables un par un et fonctionnent avec l’authentification à deux facteurs. iCloud et Fastmail n’acceptent rien d’autre.'
step_app_password: 'Chaque utilisateur crée un mot de passe d’application sur son propre serveur — Nextcloud sous Paramètres → Sécurité, iCloud sur appleid.apple.com, Fastmail sous Settings → Password & Security — et le colle dans ses propres réglages d’agenda.'
step_base_url: 'Facultatif : imposez l’adresse du serveur, par exemple https://cloud.example.com, si tout le monde ici utilise le même serveur.'
step_enable: 'Activez « Proposer ce service aux utilisateurs » ci-dessus.'
step_url: 'L’adresse à saisir est l’adresse CalDAV, pas celle de l’interface web : Nextcloud l’affiche sous Agenda → Paramètres → « Copier l’adresse CalDAV principale », et elle se termine généralement par /remote.php/dav. Un simple domaine fonctionne aussi — plMail lui demande où se trouvent ses agendas.'
dropbox:
intro: 'Dropbox nécessite une application enregistrée dans la console développeur Dropbox.'
refresh_note: 'Choisissez le type d’application à accès limité et demandez l’accès hors ligne, sinon les connexions cesseront de fonctionner au bout de quelques heures.'
step_app: 'Créez une application sur dropbox.com/developers/apps avec un accès limité à tout le Dropbox.'
step_paste: 'Copiez la clé et le secret de l’application dans les champs ci-dessus.'
step_permissions: 'Sous Permissions, activez files.metadata.read, files.content.read et files.content.write.'
step_redirect: 'Sous Settings, ajoutez l’URI de redirection affichée ci-dessus aux URI de redirection OAuth 2.'
google:
separate_from_gmail: 'Ces identifiants sont distincts de ceux de Gmail dans votre fichier d’environnement. Vous pouvez réutiliser le même projet Cloud, mais l’écran de consentement doit lister les portées supplémentaires.'
step_consent: 'Configurez l’écran de consentement OAuth et ajoutez les portées listées ci-dessous.'
step_credentials: 'Créez un ID client OAuth 2.0 de type Application Web.'
step_paste: 'Copiez l’ID et le secret client dans les champs ci-dessus.'
step_project: 'Ouvrez console.cloud.google.com et sélectionnez ou créez un projet.'
step_redirect: 'Ajoutez l’URI de redirection affichée ci-dessus aux URI de redirection autorisées.'
google_drive:
intro: 'Google Drive utilise OAuth : plMail doit donc être enregistré auprès de Google avant que quiconque puisse se connecter.'
scopes: 'Portée nécessaire : la portée drive complète. drive.file serait plus étroite, mais elle ne voit que les fichiers créés par plMail lui-même, si bien qu’un navigateur afficherait un Drive vide — et les liens de partage exigent l’accès en écriture au fichier partagé. C’est une portée restreinte : Google exige une vérification de l’application avant que des utilisateurs hors de votre liste de test puissent consentir.'
step_api: 'Activez l’API Google Drive pour le projet.'
google_photos:
intro: 'Google Photos utilise OAuth et sa propre API, distincte de Drive.'
scope_warning: 'Google a restreint les portées de lecture de Photos en mars 2025. Une application nouvellement enregistrée n’obtient généralement que appcreateddata, qui ne voit que les médias envoyés par plMail lui-même — parcourir une bibliothèque existante nécessite la portée photoslibrary.readonly, que Google accorde au cas par cas. Enregistrer des pièces jointes dans Photos fonctionne dans tous les cas ; la navigation peut afficher une bibliothèque vide tant que cette portée n’est pas approuvée.'
step_api: 'Activez l’API Photos Library pour le projet.'
immich:
intro: 'Immich s’authentifie avec une clé d’API propre à chaque utilisateur : il n’y a rien à enregistrer ici.'
no_share_links: 'Immich ne peut pas créer de lien public pour une seule photo — le partage se fait par album. Les photos au-dessus de la taille limite des pièces jointes ne peuvent donc pas du tout être jointes.'
step_base_url: 'Facultatif : imposez l’adresse du serveur, par exemple https://photos.example.com.'
step_enable: 'Activez « Proposer ce service aux utilisateurs » ci-dessus.'
step_key: 'Chaque utilisateur génère une clé d’API dans Immich sous Paramètres du compte → Clés API et la colle dans ses propres réglages d’intégration.'
nextcloud:
intro: 'Nextcloud s’authentifie avec un mot de passe d’application propre à chaque utilisateur : il n’y a rien à enregistrer ici.'
security: 'Les utilisateurs devraient créer un mot de passe d’application, et non utiliser leur mot de passe de connexion : les mots de passe d’application sont révocables un par un et fonctionnent avec l’authentification à deux facteurs.'
step_base_url: 'Facultatif : imposez l’adresse du serveur, par exemple https://cloud.example.com.'
step_enable: 'Activez « Proposer ce service aux utilisateurs » ci-dessus.'
step_user: 'Chaque utilisateur crée un mot de passe d’application dans Nextcloud sous Paramètres → Sécurité → Appareils et sessions et le colle dans ses propres réglages d’intégration.'
one_drive:
intro: 'OneDrive utilise Microsoft Graph, la même API que les comptes mail Microsoft, mais nécessite des autorisations Files que l’inscription pour le courrier n’accorde pas.'
step_paste: 'Copiez l’ID d’application (client) et la valeur du secret dans les champs ci-dessus.'
step_permissions: 'Sous Autorisations d’API, ajoutez les autorisations Microsoft Graph déléguées Files.ReadWrite et offline_access.'
step_redirect: 'Sous Authentification, ajoutez l’URI de redirection affichée ci-dessus comme redirection de plateforme Web.'
step_register: 'Ouvrez le portail Azure et inscrivez une application sous Microsoft Entra ID → Inscriptions d’applications.'
step_secret: 'Sous Certificats et secrets, créez un secret client et copiez sa valeur immédiatement — elle n’est affichée qu’une fois.'
tenant_note: 'Utilisez le tenant common pour les comptes Microsoft personnels, ou l’ID de votre tenant pour restreindre l’accès à votre organisation.'
paperless:
asynchronous: 'Enregistrer une pièce jointe la confie au consommateur de Paperless, qui la classe quelques secondes plus tard. plMail signale la remise, pas le document final — un enregistrement de test apparaît donc dans Paperless peu après avoir été indiqué comme fait, et un fichier que Paperless rejette comme doublon n’apparaît jamais.'
intro: 'Paperless-ngx s’authentifie avec un jeton d’API propre à chaque utilisateur : il n’y a rien à enregistrer ici.'
no_share_links: 'plMail ne crée pas de liens de partage Paperless. Le partage y est une fonction distincte avec ses propres droits et sa propre expiration, et publier un document est une étape plus lourde que le joindre — les documents au-dessus de la taille limite des pièces jointes ne peuvent donc pas du tout être joints.'
step_base_url: 'Facultatif : imposez l’adresse du serveur, par exemple https://paperless.example.com.'
step_enable: 'Activez « Proposer ce service aux utilisateurs » ci-dessus.'
step_token: 'Chaque utilisateur copie son jeton d’API depuis Paperless sous Mon profil → Jeton d’authentification API et le colle dans ses propres réglages d’intégration.'
tutorial_heading: 'Configuration'
unimplemented_notice: 'plMail ne sait pas encore communiquer avec ce service. Vous pouvez enregistrer les identifiants dès maintenant — ils seront utilisés dès que la prise en charge arrivera.'
loading: 'Chargement…'
maintenance:
heading: Maintenance
heartbeats_help: 'Supprime les lignes laissées par des processus morts sans s’arrêter proprement.'
heartbeats_prune: 'Purger les signaux de vie périmés'
heartbeats_title: 'Signaux de vie périmés'
restart: 'Redémarrer les workers'
restart_app: 'Redémarrer maintenant'
restart_app_help: >-
Termine le processus qui sert cette page pour que compose le recrée.
Nécessaire après la rotation des secrets générés : le point d’entrée les
exporte en variables d’environnement et le noyau démarre une fois en mode
worker, si bien qu’un conteneur web en cours d’exécution ne voit jamais une
nouvelle valeur. Environ deux secondes d’interruption, et cette page revient
d’elle-même.
restart_app_title: 'Redémarrer le conteneur web'
restart_confirm: 'Redémarrer les workers, le planificateur et le superviseur IMAP ? Le travail en cours se termine d’abord.'
restart_help: 'Arrête les workers, le planificateur et le superviseur IMAP pour qu’ils redémarrent à neuf. Les processus de longue durée gardent les mappings de base de données en cache toute leur vie : il faut donc ceci après une migration.'
restart_pending: 'Redémarrage demandé il y a %seconds% s — les processus terminent leur travail en cours, puis réapparaissent ici d’ici une minute ou deux.'
restart_title: 'Redémarrer les processus de longue durée'
run_help: 'Mis en file pour un worker, pas exécuté ici. Ce sont les mêmes passages que ceux que le planificateur lance tout seul.'
run_title: 'Lancer une tâche de maintenance maintenant'
task:
mail_sync: 'Synchroniser le courrier'
monitoring_prune: 'Purger les données de supervision'
prune_blobs: 'Purger les blobs'
push_renew: 'Renouveler les abonnements push'
logs:
reference: 'Référence'
all_channels: 'Tous les canaux'
capture:
from_env: 'depuis l’environnement (%level%)'
hint: 'Rien en dessous de ce niveau n’est jamais écrit.'
label: 'Conserver les entrées à partir de'
clear: 'Effacer'
clear_confirm: 'Supprimer les %count% entrées de journal correspondant à ce filtre ?'
copied: 'Copié'
copy: 'Copier l’entrée'
copy_failed: 'Copie bloquée par le navigateur'
empty: 'Rien de journalisé à ce niveau.'
entries: 'entrées'
heading: 'Journaux'
newer: 'Plus récent'
older: 'Plus ancien'
page: 'Page'
refresh: 'Actualiser'
nav:
address: Adresse
ai: IA
backup: Sauvegarde
database: Base de données
demo_stats: 'Visiteurs de la démo'
insight_reports: Courrier signalé
integrations: Intégrations
logs: Journaux
performance: Performances
push: Push
reset: Réinitialisation
sso: 'SSO'
system: Système
updates: Mises à jour
users: Utilisateurs
performance:
hold:
col:
account: 'Compte'
arrived: 'Arrivé'
call: 'Appel au modèle'
call_hint: 'L’aller-retour vers l’hôte du modèle, du début à la réponse.'
filed: 'Classé dans'
load: 'dont chargement'
load_hint: 'La part de l’appel que l’hôte a passée à charger le modèle en mémoire. Presque nulle pour un modèle déjà chargé.'
outcome: 'Ce qui s’est passé'
queued: 'En file'
queued_hint: 'Du stockage du mail à la question posée à l’assistant. Arrondi à la seconde.'
shown_after: 'Affiché après'
empty: 'Aucun courrier n’a été retenu sur cette période.'
footnote: 'Les %limit% messages retenus les plus récents. Les durées manquent pour le courrier trié avant l’existence de cette page. Le contenu des mails n’est affiché ni ici, ni nulle part dans ce panneau.'
heading: 'Nouveau courrier en attente de l’assistant'
lead: 'Pour ceux qui trient avec l’assistant, le nouveau courrier reste hors des onglets jusqu’à son tri, au plus %ceiling% secondes. Chaque ligne est un message et le détail de son attente.'
lead_off: 'La retenue du nouveau courrier pour l’assistant est désactivée dans IA, plus rien de nouveau n’apparaîtra donc ici. Ce qui a été retenu avant reste listé.'
outcome:
answered: 'Trié, puis affiché'
cold: 'Trié, puis affiché — le modèle a dû être chargé d’abord'
moved: 'Affiché d’abord, déplacé à l’arrivée de la réponse'
no_answer: 'Affiché sans réponse'
unusable: 'La réponse était inutilisable ; affiché là où les règles l’ont mis'
waiting: 'Toujours en attente'
stat:
held: 'Messages retenus'
max: 'Le plus long'
median: 'Attente typique'
p95: '95 % en moins de'
shown_first: 'Affichés avant tri'
lag:
col:
account: 'Compte'
arrives_by: 'Arrive par'
elsewhere: 'Hors boîte de réception'
elsewhere_hint: 'Spam et courrier classé ailleurs par un filtre : combien, et leur délai typique. Les fournisseurs n’annoncent que le courrier de la boîte de réception, le reste attend donc le calendrier de passage.'
max: 'Le plus long'
median: 'Délai typique'
messages: 'Courrier reçu'
p95: '95 % en moins de'
footnote: 'Du moment où le fournisseur a accepté un message à celui où plMail l’a stocké, pour le courrier arrivé dans la boîte de réception. Le courrier venu d’un import, et celui envoyé depuis plMail lui-même, n’est pas compté.'
heading: 'Avec quel retard le courrier arrive'
lead: 'Des secondes signifient que le fournisseur prévient plMail du nouveau courrier dès son arrivée. Des minutes signifient que le compte est vérifié au rythme du quart d’heure.'
no_accounts: 'Aucun compte actif.'
provider:
google: 'Gmail'
imap: 'IMAP'
microsoft: 'Outlook'
push: 'push activé'
slowest:
by:
idle: 'IDLE'
manual: 'Bouton de synchro'
poll: 'Calendrier de passage'
push: 'Push'
unknown: '—'
col:
accepted: 'Arrivé chez le fournisseur'
account: 'Compte'
by: 'Ramené par'
in: 'Classé dans'
lag: 'Puis jusqu’à plMail'
lag_hint: 'De l’acceptation du message par le fournisseur à son stockage par plMail. Mis en évidence quand du courrier de la boîte de réception a mis cinq minutes ou plus.'
underway: 'Déjà en route depuis'
underway_hint: 'De la date portée par le message à son acceptation par le fournisseur : un expéditeur qui l’a mis en file, ou l’a daté en avance. Rien que plMail aurait pu raccourcir.'
empty: 'Aucun courrier n’est arrivé sur cette période.'
footnote: 'Les plus lents d’abord. Le courrier hors boîte de réception n’est jamais annoncé par le fournisseur : jusqu’à quinze minutes, c’est le calendrier de passage qui fonctionne comme prévu. Ce qui a ramené un message est enregistré à partir de cette version.'
heading: 'Les plus lents de cette période'
in:
elsewhere: 'Ailleurs'
inbox: 'Boîte de réception'
spam: 'Spam'
window:
day: '24 heures'
hour: '1 heure'
label: 'Période'
week: '7 jours'
workers:
col:
in_hand: 'En cours'
oldest: 'Plus ancienne attente'
queue: 'File'
running_for: 'Depuis'
waiting: 'En attente'
worker: 'Worker'
footnote: 'Une lecture de cet instant, pas de la période ci-dessus : le temps d’attente d’une tâche n’est pas conservé une fois traitée. Un worker avec deux files termine la première avant de regarder la seconde.'
heading: 'Ce que chaque worker a en attente'
lead: 'Quel processus est en retard, et de combien. Chaque worker traite une tâche à la fois.'
refresh: 'Actualiser'
processes:
empty: 'Aucun signal de vie pour l’instant — les processus apparaissent ici après leur premier signal.'
heading: 'Processus'
key: 'Instance'
last_beat: 'Dernier signal'
pid: 'PID'
type: 'Type'
push:
calendar_domain_verification: >-
Google n’ouvre pas de canal de surveillance tant que le domaine de rappel
n’est pas vérifié dans le projet Cloud qui possède le client OAuth :
vérifiez-le dans la Search Console, puis ajoutez-le sous Validation du
domaine dans la console Cloud. Microsoft ne demande aucune étape équivalente.
calendar_routes: >-
Le push d’agenda est livré séparément, à %google% et %graph%, et ne
nécessite aucun sujet Pub/Sub.
calendar_without_public_address: >-
Sans adresse HTTPS publique, les agendas connectés restent simplement sur
le passage toutes les quinze minutes.
deliveries:
all_outcomes: 'Tout résultat'
all_transports: 'Les deux transports'
all_users: 'Tous les utilisateurs'
attempts: 'tentatives'
empty_ever: >-
Rien n’a encore été envoyé en push. Soit aucun appareil n’a terminé la
vérification initiale, soit aucun transport n’est configuré — le panneau
ci-dessus indique lequel.
empty_filter: 'Aucune livraison ne correspond à ce filtre.'
heading: 'Livraisons récentes'
newer: 'Plus récent'
older: 'Plus ancien'
outcome:
accepted: 'Acceptée'
failed: 'Échouée'
skipped: 'Ignorée'
subscription-destroyed: 'Appareil retiré'
page: 'Page'
refresh: 'Actualiser'
transport:
fcm: 'Firebase'
webpush: 'Web Push'
fcm:
android_package: 'Paquet Android'
application_id: 'ID d’application'
clear_key: 'Oublier la clé enregistrée'
clear_key_help: 'Supprime la clé du compte de service et désactive FCM. Les appareils déjà enregistrés ne reçoivent plus de notifications tant qu’une nouvelle clé n’est pas enregistrée.'
client_email: 'Compte de service'
enable_without_client: 'Aucun google-services.json n’est enregistré — l’application Android n’aurait rien pour initialiser Firebase. Collez-en un ci-dessous, ou laissez FCM désactivé.'
enable_without_key: 'Aucune clé de compte de service n’est enregistrée — collez-en une ci-dessous, ou laissez FCM désactivé.'
field:
enabled: 'Envoyer les notifications via FCM'
enabled_help: 'Les clients le voient comme « fcm » dans les capacités de session, et ne proposent Firebase que s’il est activé.'
google_services: 'google-services.json'
google_services_help: 'Console Firebase → Paramètres du projet → Vos applications → l’application Android → google-services.json. L’application est une seule version pour toutes les installations : elle initialise donc Firebase à partir de ces valeurs à l’exécution — elles sont publiques et publiées dans la session JMAP.'
service_account: 'Clé de compte de service Firebase (JSON)'
service_account_help: 'Console Firebase → Paramètres du projet → Comptes de service → Générer une nouvelle clé privée. Collez le fichier entier. Elle est stockée chiffrée et jamais réaffichée. Elle doit appartenir au même projet que le google-services.json ci-dessous.'
heading: 'Firebase Cloud Messaging'
intro: 'FCM est la façon dont une application Android native reçoit des notifications en arrière-plan. C’est facultatif — un appareil avec un distributeur UnifiedPush n’en a pas besoin, pas plus que l’application navigateur.'
paste_none: 'Collez ici le fichier JSON entier'
paste_unchanged: 'Un fichier est enregistré — laissez vide pour le conserver'
project: 'Projet Firebase'
save: 'Enregistrer'
saved: 'Réglages Firebase enregistrés.'
sender_id: 'ID d’expéditeur'
status:
incomplete: 'À moitié configuré'
key_only: 'Configuré, désactivé'
live: 'Actif'
unconfigured: 'Non configuré'
webpush_note: 'Web Push n’a besoin de rien ici. Ses clés VAPID sont des variables d’environnement, générées une fois par app:push:generate-vapid-keys, et elles servent aussi bien les navigateurs, la PWA installée que les distributeurs UnifiedPush.'
queues:
due_in: 'prévu dans %duration%'
empty: 'Aucun message en attente.'
filter_placeholder: 'Filtrer toute la file — handler, contenu, nom de file'
heading: 'Files Messenger'
in_flight: 'En cours d’exécution'
loading: 'Chargement…'
showing: '%shown% sur %total%'
none_running: 'Aucun worker ne traite de message en ce moment.'
oldest: 'Plus ancienne attente'
pending: 'En attente'
queue: 'File'
queued_for: 'en file depuis %duration%'
retries: 'tentative %count%'
running: 'En cours'
running_for: 'depuis %duration%'
waiting_since: 'En attente depuis'
refresh_hint: 'Les panneaux en direct s’actualisent toutes les 10 s'
# Shown in a card's header while it is collapsed — short enough to read at
# a glance, specific enough to be worth expanding for.
sso:
clear_secret: 'Oublier le secret client enregistré'
clear_secret_help: 'Videz aussi l’émetteur et l’ID client. La connexion utilise alors les variables OIDC_* de l’environnement, ou se désactive s’il n’y en a pas.'
env_note: 'Laissez l’émetteur, l’ID client et le secret vides et la connexion utilise OIDC_ISSUER, OIDC_CLIENT_ID et OIDC_CLIENT_SECRET de l’environnement : une installation configurée ainsi continue de fonctionner. Ce qui est enregistré ici l’emporte sur eux.'
field:
auto_create: 'Créer un compte pour les personnes que plMail ne connaît pas'
auto_create_help: 'Activé, toute personne que le fournisseur laisse passer obtient un compte ordinaire ici : limitez donc qui en fait partie chez le fournisseur. Désactivé, un administrateur crée d’abord chaque compte, avec la même adresse.'
button_label: 'Nom sur le bouton'
button_label_help: 'Le bouton de connexion affiche « Se connecter avec … » suivi de ce nom. Vide, il affiche « authentification unique ».'
client_id: 'ID client'
client_secret: 'Secret client'
issuer: 'Émetteur'
issuer_help: 'L’URL de l’émetteur du fournisseur, exactement comme l’indique son document de découverte. Dans Authentik, c’est « OpenID Configuration Issuer » sur la page du fournisseur.'
require_verified_email: 'Ne lier qu’une adresse vérifiée par le fournisseur'
require_verified_email_help: 'Une première connexion retrouve son compte par l’adresse e-mail. Ne désactivez ceci que là où les gens ne peuvent pas modifier leur propre adresse chez le fournisseur : désactivé, quiconque le peut est en mesure de s’approprier n’importe quel compte qui ne s’est pas encore connecté via le fournisseur.'
scopes: 'Portées'
scopes_help: 'Séparées par des espaces. « openid » est toujours ajouté, et sans « email » une première connexion ne peut pas retrouver son compte. Vide, demande openid, email et profile.'
heading: 'Authentification unique'
intro: 'Permet de se connecter via un fournisseur OpenID Connect que vous gérez déjà : Authentik, Keycloak, Authelia et consorts. La page de connexion affiche alors un bouton au-dessus du formulaire de mot de passe, qui reste disponible.'
redirect_uri_help: 'Enregistrez ceci comme URI de redirection chez le fournisseur, exactement tel qu’affiché.'
save: 'Enregistrer'
saved: 'Authentification unique enregistrée.'
status:
environment: 'Activée, depuis l’environnement'
'off': 'Désactivée'
'on': 'Activée'
summary:
accounts: '%count% comptes'
active: '%count% actifs'
armed: '%active%/%total% armés'
down: '%count% hors service'
failed: '%count% en échec'
failing: '%count% défaillants'
healthy: '%count% en bonne santé'
idle: 'inactif'
none: 'aucun'
ok: '%count% ok'
queries: '%count% requêtes'
queue: '%running% en cours · %waiting% en attente'
tables: '%count% tables'
reset:
button: 'Réinitialiser'
confirm_label: 'Saisissez %name% pour confirmer'
confirm_mismatch: 'Ce n’est pas %name%, rien n’a donc été supprimé. Saisissez le nom de l’instance exactement comme il est affiché.'
done:
continue: 'Créer le premier administrateur'
footnote: 'plMail est revenu à l’état d’une installation neuve.'
heading: 'plMail a été réinitialisé'
lead: 'Les %count% tables ont été vidées, ainsi que les pièces jointes stockées, les messages bruts et les envois. Il ne reste aucun utilisateur, cette session a donc été déconnectée.'
page_title: 'Réinitialisation terminée'
restart_failed: 'Le conteneur web n’a PAS pu être redémarré d’ici — lancez vous-même la commande ci-dessus avant d’utiliser plMail.'
restart_sent: 'Le conteneur web a reçu l’ordre de redémarrer et revient de lui-même. Le reste de la stack a toujours besoin de la commande ci-dessus.'
secrets_heading: 'Les secrets générés ont été supprimés'
tagline: 'Plus rien à quoi se connecter'
workers_failed: 'Les workers n’ont pas pu être prévenus non plus : ils continuent d’utiliser l’ancienne clé de chiffrement jusqu’à ce que quelque chose les redémarre.'
heading: 'Réinitialiser les données'
intro: 'Ceci supprime définitivement les données synchronisées de la base. Chaque étape supprime tout ce que supprime l’étape au-dessus, et plus encore.'
monitoring_kept: 'Les données de supervision sont conservées. Effacez les journaux agrégés depuis Journaux, et les signaux de vie périmés depuis Maintenance.'
postgres_password: >-
POSTGRES_PASSWORD n’est pas renouvelé. Postgres a été initialisé avec lui et
le conserve dans son propre répertoire de données : le régénérer laisserait
plMail incapable de se connecter à la base qu’il vient de réinitialiser. Le
changer implique d’effacer le volume de la base — docker compose down -v — ce
que ceci ne peut pas faire.
restart_required: 'Redémarrez toute la stack immédiatement après, et avant d’utiliser plMail :'
self_restart: 'Le conteneur web se demande de quitter une fois cette page envoyée, et compose le relance aussitôt. Les workers sont aussi prévenus ; la commande ci-dessus couvre le reste de la stack.'
self_restart_unavailable: 'Ce processus ne peut pas se redémarrer lui-même ici : la commande ci-dessus est le seul moyen. Rien ne se fera automatiquement.'
stage:
accounts:
confirm: 'Supprimer aussi les comptes ? Chaque mot de passe de boîte et chaque connexion OAuth devra être saisi à nouveau.'
deletes: 'Ce qui précède, plus les comptes eux-mêmes, alias compris. Chaque mot de passe de boîte et chaque connexion OAuth devra être reconfiguré de zéro. Votre propre connexion n’est pas touchée.'
title: 'Courrier, structure, contacts et comptes'
contacts:
confirm: 'Supprimer tous les messages, dossiers, libellés et contacts récoltés synchronisés ?'
deletes: 'Ce qui précède, plus les contacts récoltés. Ils sont à nouveau collectés depuis le courrier à mesure qu’il arrive : l’autocomplétion des adresses repart donc de zéro.'
title: 'Courrier, structure et contacts'
full:
button: 'Effacer cette installation'
deletes: >-
Tout, pas seulement le courrier synchronisé : chaque utilisateur (vous
compris), chaque compte et son mot de passe enregistré, et les fichiers sur
le disque. L’installation redemande son premier administrateur. Vous êtes
déconnecté et ne pouvez plus vous reconnecter.
title: 'Réinitialisation complète'
full_secrets:
button: 'Effacer cette installation et renouveler les secrets'
deletes: >-
Tout ce qui précède, et les secrets générés. Chaque service tourne encore
avec l’ancienne APP_ENCRYPTION_KEY en mémoire et continue de l’utiliser
jusqu’à son redémarrage : tout ce qui est enregistré avant le redémarrage
de la stack devient illisible pour la moitié d’entre eux.
title: 'Réinitialisation complète et nouveaux secrets'
structure:
confirm: 'Supprimer tous les messages, conversations, dossiers et libellés synchronisés ? La prochaine synchronisation les reconstruit.'
deletes: 'Ce qui précède, plus la structure des boîtes — dossiers et libellés. La prochaine synchronisation reconstruit les deux.'
title: 'Courrier et structure des boîtes'
synced_mail:
confirm: 'Supprimer tous les messages et conversations synchronisés ? Les comptes et dossiers restent, et la prochaine synchronisation récupère à nouveau le courrier.'
deletes: 'Messages, conversations, parties de messages et tout ce qui est en file. Les comptes, dossiers et libellés restent ; les curseurs de synchronisation sont effacés pour que la prochaine synchronisation récupère tout à nouveau.'
title: 'Courrier synchronisé'
unrecoverable:
heading: 'Irréversible'
lead: 'Aucune de ces deux options ne se rattrape par une resynchronisation : elles suppriment les utilisateurs, les mots de passe de boîtes enregistrés et les fichiers sur le disque. Saisissez le nom de l’instance pour confirmer — un simple clic ne suffit pas.'
restarting:
back: 'Retour au panneau d’administration'
continue: 'Continuer'
heading: 'plMail redémarre'
lead: 'Le conteneur web a reçu l’ordre de quitter et compose le relance aussitôt. Cette page se recharge d’elle-même dans quelques secondes.'
page_title: 'Redémarrage'
unavailable_heading: 'Rien n’a été redémarré'
unavailable_lead: 'Ce processus n’est pas le processus principal du conteneur, il ne peut donc pas l’arrêter. Lancez plutôt ceci :'
tables:
heading: 'Taille des tables'
title: 'Administration'
tokens:
empty: 'Aucun renouvellement de jeton enregistré pour l’instant.'
heading: 'État des jetons OAuth'
webhooks:
armed: 'Armé'
delivery:
endpoint: 'Point de terminaison push'
endpoint_hint: >-
L’abonnement push Cloud Pub/Sub doit faire un POST exactement sur
cette URL, jeton compris. Une différence reçoit une réponse 403 et
apparaît ci-dessous.
heading: 'Chemin de livraison'
info_logs_off: >-
Les livraisons réussies sont journalisées au niveau info et non
stockées. Définissez APP_DB_LOG_LEVEL=info pour les voir ici.
no_public_url: >-
APP_PUBLIC_URL n’est pas une adresse https://, Pub/Sub ne peut donc
pas joindre ce serveur.
no_token: >-
GMAIL_PUBSUB_VERIFICATION_TOKEN n’est pas défini. Le point de
terminaison échoue en mode fermé : chaque notification est rejetée en 403.
topic: 'Sujet Pub/Sub'
empty: 'Aucun compte Gmail avec un état de surveillance.'
health: 'Santé'
health_state:
active: 'livre'
degraded: 'enregistré, ne livre pas'
inactive: 'désactivé'
lapsed: 'expiré'
heading: 'Webhooks Gmail'
history_id: 'ID d’historique'
last_push: 'Dernier push'
never: 'jamais'
none: 'non enregistré'
resource: 'Ressource'
state:
account_active: 'compte actif'
account_inactive: 'compte désactivé'
push_off: 'push désactivé'
push_on: 'push activé'
watch_expiry: 'Expiration de la surveillance'
updates:
heading: 'Mises à jour'
header: '%version% est disponible'
intro: 'plMail vérifie toutes les heures si le canal que vous suivez a publié une version plus récente, et en informe les administrateurs une fois par version : une notification sur chaque appareil enregistré pour le push, et une note en haut de cette zone.'
saved: 'Canal enregistré.'
channel:
label: 'Suivre'
save: 'Enregistrer'
follows_build: ' Personne n’a encore choisi, ceci suit donc la version en cours d’exécution.'
releases:
name: 'Versions publiées'
hint: 'Chaque version étiquetée : l’image étiquetée latest. Le bon choix pour la plupart des installations.'
main:
name: 'Main'
hint: 'Chaque build de la branche main dès sa publication : l’image étiquetée main. C’est ce qui est en cours de développement, et le changelog ne le décrit pas encore.'
'off':
name: 'Désactivé'
hint: 'Aucune vérification. Rien n’est envoyé nulle part pour cela.'
state:
available: 'Mise à jour disponible'
current: 'À jour'
failed: 'Pas de réponse'
incomparable: 'Comparaison impossible'
'off': 'Désactivé'
unknown: 'Pas encore vérifié'
running: 'Cette installation'
newest:
releases: 'Dernière version publiée'
main: 'Dernier build de main'
built_at: 'construit %when%'
not_yet: 'Pas encore vérifié'
incomparable: 'Ce build ne porte aucun commit (une copie de travail, ou une image construite sans le workflow de publication), il n’y a donc rien à comparer avec le dernier build du canal.'
checked: 'Dernière vérification'
never: 'jamais'
check_now: 'Vérifier maintenant'
error: 'La dernière vérification n’a pas obtenu de réponse : %error%.'
error_kept: ' Ce qui est affiché provient de la dernière vérification réussie.'
changes:
heading: 'Quoi de neuf'
count: '{1}Un changement depuis ce build|]1,Inf[%count% changements depuis ce build'
all: 'Tous les changements sur GitHub'
changelog: 'Changelog'
how:
heading: 'Mettre à jour'
body: 'Téléchargez la nouvelle image et recréez les conteneurs ; sur un NAS, redéployez l’application. plMail migre sa base au démarrage : lisez donc d’abord le changelog pour tout ce qui figure sous « Before you upgrade ».'
privacy: 'Une vérification demande au registre la dernière image %image% et à api.github.com ce qui a changé depuis ce build. Rien sur cette installation n’est envoyé au-delà des requêtes elles-mêmes.'
push:
title: 'plMail %version% est disponible'
body: 'Vous utilisez %running%. Ouvrez Administration → Mises à jour pour voir ce qui a changé.'
users:
add: Ajouter un utilisateur
console_note: 'Les mots de passe et la récupération de l’authentification à deux facteurs se gèrent depuis la console du serveur, pas ici — `app:user:password` et `app:user:2fa-disable`. Un administrateur capable de modifier l’un ou l’autre depuis un navigateur serait une seconde porte vers chaque boîte de cette installation.'
deactivate: Désactiver
deactivate_confirm: 'Désactiver %name% ? Cette personne ne pourra plus se connecter, et tout client mail déjà connecté s’arrête aussi. Rien ne lui est supprimé, et vous pouvez la réactiver ici.'
deactivated: 'Désactivé'
deactivated_since: 'Désactivé depuis %when%'
delete: Supprimer l’utilisateur
delete_confirm: 'Supprimer %name% ? Son courrier reste dans la base mais cette personne ne peut plus se connecter.'
edit: Modifier l’utilisateur
field:
email: Adresse e-mail
is_admin: Administrateur
is_admin_help: 'Peut accéder à ce panneau, gérer les utilisateurs et configurer les fournisseurs. Ne peut pas lire le courrier des autres.'
name_first: Prénom
name_last: Nom
password: Mot de passe initial
password_help: 'Défini une seule fois, à la création du compte. Il n’est plus possible de le changer d’ici ensuite : un mot de passe oublié se réinitialise depuis la console du serveur avec `app:user:password`.'
flash:
deactivated: 'Désactivé. Cette personne ne peut plus se connecter tant que vous ne la réactivez pas.'
demote_last_refused: 'C’est le dernier administrateur, la case est donc restée telle quelle — nommez d’abord quelqu’un d’autre.'
demote_self_refused: 'Vous ne pouvez pas vous retirer vous-même le rôle d’administrateur. Le reste du formulaire a été enregistré.'
reactivated: 'Réactivé. Cette personne peut à nouveau se connecter.'
heading: Utilisateurs
last_login: 'Vu %when%'
never_signed_in: Jamais connecté
no_password_edit: 'Les mots de passe ne peuvent pas être changés d’ici. Définir le mot de passe de quelqu’un d’autre ferait d’une session d’administration une porte vers sa boîte — la même raison qui fait de la suppression d’un second facteur une commande de console.'
none: Aucun utilisateur pour l’instant.
reactivate: Réactiver
role:
admin: Admin
search: Rechercher des utilisateurs…
two_factor_on: L’authentification à deux facteurs est activée
two_factor_short: 2FA
version:
hint: La version que cette installation exécute — la publication, et le commit à partir duquel elle a été construite.
alias:
added: 'Adresse ajoutée.'
catch_all_added: 'Domaine fourre-tout ajouté.'
catch_all_duplicate: 'Ce domaine est déjà un fourre-tout sur ce compte.'
catch_all_invalid: "Cela ne ressemble pas à un domaine. Saisissez-le sous la forme example.com."
catch_all_removed: 'Domaine fourre-tout supprimé.'
catch_all_unsupported: 'Gmail et Outlook n’envoient qu’au nom d’adresses que le fournisseur connaît : un domaine fourre-tout ne peut donc pas être utilisé sur ce compte.'
deleted: 'Adresse supprimée.'
duplicate: 'Cette adresse est déjà sur ce compte.'
invalid: "Cela ne ressemble pas à une adresse e-mail valide."
name_cleared: 'Nom d’expéditeur supprimé. Cette adresse envoie de nouveau sous le nom du compte.'
name_set: 'Nom d’expéditeur enregistré.'
primary_set: 'Adresse principale mise à jour.'
refreshed: 'Actualisé depuis le fournisseur.'
status_blocked: "L’adresse principale ne peut pas être désactivée — définissez d’abord une autre adresse principale."
status_set: 'Adresse mise à jour.'
app:
name: Mail
attachment:
sign:
# A VISUAL signature: a picture of a name on a page. Nothing here may
# suggest it proves the document is unaltered — it is not PAdES, there
# is no certificate, and saying otherwise would be a lie about what the
# software does.
action: Signer
draw: Dessinez votre signature, puis placez-la sur la page.
clear: Recommencer
cancel: Annuler
place: Placer sur la page
hint: Faites-la glisser à sa place, puis joignez-la à une réponse.
download: Télécharger la copie signée
reply: Répondre avec la copie signée
protected: Ce PDF est protégé, il ne peut donc pas être signé ici. Sa lecture fonctionne toujours.
unreadable: Ce PDF ne peut pas être modifié ici. Sa lecture fonctionne toujours.
use_saved: Utiliser la signature enregistrée
preview:
download: Télécharger
failed: Ce PDF n’a pas pu être ouvert. Vous pouvez toujours le télécharger.
loading: Ouverture…
untitled: Pièce jointe
zoom_in: Zoom avant
zoom_out: Zoom arrière
calendar:
# plMail's date-and-time picker; see calendar--when.
when:
previous_month: 'Mois précédent'
next_month: 'Mois suivant'
send_at: 'Envoyer à'
group: 'Début et fin'
today: 'Aujourd’hui'
tomorrow: 'Demain'
same_day: 'Même jour'
same_short: 'Idem'
another_day: 'Un autre jour'
back_to_week: 'Revenir à cette semaine'
hour: 'Heure'
minute: 'Minute'
half: 'Matin ou après-midi'
another_minute: 'Une autre minute'
quarter_hours: 'Quarts d’heure'
exact_minute: 'Minute exacte'
minutes: '%count% min'
hours: '%count% h'
day_one: '1 jour'
days: '%count% jours'
length: 'Durée'
default_name: Personnel
alert:
mail:
subject: 'Rappel : %title%'
untitled: Événement sans titre
booking:
action:
delete: 'Supprimer la page de réservation « %name% »'
disable: 'Désactiver la page de réservation « %name% »'
edit: 'Modifier la page de réservation « %name% »'
enable: 'Activer la page de réservation « %name% »'
regenerate: 'Donner une nouvelle adresse à la page de réservation « %name% »'
badge: Réservé via votre page de réservation
booked:
body: 'Votre %name% est dans l’agenda.'
mail: Une confirmation avec un fichier d’agenda est en route vers vous.
title: C’est réservé
confirm: Confirmer la réservation
count: '{0}Aucune page de réservation|{1}1 page de réservation|]1,Inf[ %count% pages de réservation'
day_none: Rien de libre
delete_confirm: 'Supprimer « %name% » ? Les rendez-vous déjà réservés par son biais partent avec.'
disabled: 'Désactivée'
duration: '{1} 1 minute|]1,Inf[ %count% minutes'
empty_list: Aucune page de réservation pour l’instant.
error:
no_calendar: Choisissez un agenda qui accepte les modifications pour y placer les réservations.
taken: Ce créneau vient d’être pris. Veuillez en choisir un autre.
too_many: >-
Cela fait beaucoup de réservations depuis un même endroit. Veuillez
patienter un moment avant de réessayer.
form:
add: Nouvelle page de réservation
buffer_help: Temps libre laissé de part et d’autre de ce qui est déjà dans l’agenda.
buffer_minutes: Marge (minutes)
busy: Vérifier les conflits dans ces agendas
busy_help: >-
Un créneau n’est proposé que si rien dans ces agendas ne le
chevauche. L’agenda qui reçoit les réservations est toujours
vérifié, qu’il soit coché ici ou non.
calendar: Les réservations arrivent dans
calendar_help: >-
Là où le rendez-vous est écrit. Si cet agenda est synchronisé
ailleurs, la réservation suit.
day_end: Jusqu’à
day_start: De
description: De quoi il s’agit
edit: Modifier la page de réservation
horizon_days: Réservable jusqu’à (jours à l’avance)
name: Nom du rendez-vous
name_help: >-
Affiché à la personne qui ouvre le lien, et utilisé comme titre dans
votre agenda.
notice_minutes: Délai de prévenance minimal (minutes)
slot_minutes: Durée du rendez-vous (minutes)
time_zone: Vos horaires sont en
time_zone_help: >-
Les horaires ci-dessus sont l’heure locale de ce fuseau : 09:00 reste
neuf heures du matin au changement d’heure.
weekdays: Jours où vous êtes réservable
lands_on: 'arrive dans %calendar%'
no_slots: Aucun créneau libre pour le moment. Réessayez plus tard.
no_slots_this_week: Aucun créneau libre cette semaine. Essayez la semaine précédente ou suivante.
note: Autre chose ? (facultatif)
pick_a_time: Choisissez un créneau
toast:
created: Page de réservation créée. Copiez son adresse maintenant — elle ne sera plus affichée.
deleted: Page de réservation supprimée.
disabled: Page de réservation désactivée.
enabled: Page de réservation activée.
regenerated: Nouvelle adresse. L’ancienne ne fonctionne plus.
updated: Page de réservation mise à jour.
weekday:
1: Lun
2: Mar
3: Mer
4: Jeu
5: Ven
6: Sam
7: Dim
your_email: Votre e-mail
your_email_help: La confirmation et le fichier d’agenda sont envoyés ici.
your_name: Votre nom
zone: 'Horaires affichés en %zone%'
chip:
on_calendars: 'Dans %calendars%'
delete_confirm: 'Supprimer « %name% » et tous ses événements ? Cette action est irréversible.'
empty: Rien à venir
details:
description: Description
edit: Modifier
extracted_hint: plMail a tiré cet événement de ce message. Personne ne l’a saisi.
participants: Participants
provenance: Depuis cet e-mail
recurring: Événement récurrent
status: Statut
until: jusqu’au %date%
your_answer: Votre réponse
error:
instance_create: >-
Une occurrence seule ne peut pas être ajoutée à un agenda. Choisissez
« Tous les événements » pour placer cette réunion dans un autre agenda.
invalid_times: 'Ces horaires ne conviennent pas — la fin doit venir après le début.'
no_copies: 'Rien n’a été choisi, rien n’a donc été modifié. Cochez au moins un agenda.'
read_only: 'Cet événement n’est que dans des agendas qui n’acceptent pas de modifications, il est donc resté où il était.'
event:
alert:
action:
display: Notification
email: E-mail
amount:
days: '{1} 1 jour|]1,Inf[ %count% jours'
hours: '{1} 1 heure|]1,Inf[ %count% heures'
minutes: '{1} 1 minute|]1,Inf[ %count% minutes'
at_absolute: 'Le %when%'
at_time: À l’heure de l’événement
custom: Autre chose, en minutes
custom_action: Comment arrive le rappel supplémentaire
day_1: 1 jour avant
hour_1: 1 heure avant
legend: Rappels
minutes_10: 10 minutes avant
minutes_30: 30 minutes avant
minutes_5: 5 minutes avant
relation:
after_end: '%amount% après la fin'
after_start: '%amount% après le début'
before_end: '%amount% avant la fin'
before_start: '%amount% avant le début'
series_note: >-
Les rappels appartiennent à l’événement entier : le choix ci-dessous
ne s’applique donc pas à eux.
unreadable: Rappel défini ailleurs
all_day: Toute la journée
calendar: Agenda
cancel: Annuler
copies:
help: >-
Les agendas cochés reçoivent cet événement et chaque modification que
vous y enregistrez. En décocher un ne le retire pas : cet agenda garde
sa copie actuelle et ne reçoit plus les mises à jour, elle apparaîtra
donc comme une entrée distincte dès que les deux ne correspondront plus.
hidden: Cet agenda est masqué, l’événement n’apparaîtra donc pas tant que vous ne l’afficherez pas
legend: Agendas
mirrored: 'Cet agenda est synchronisé avec son fournisseur : l’événement atteint donc vos autres appareils'
read_only: Cet agenda n’accepte pas de modifications
same_remote: 'Déjà couvert : cet agenda reflète le même agenda qu’un autre coché ci-dessus'
delete: Supprimer
description: Description
details_heading: 'Événement'
dismiss: Pas un événement
dismiss_confirm: >-
Supprimer cet événement et l’empêcher de revenir ? Les e-mails ultérieurs
sur la même réservation ne le remettront plus dans l’agenda.
ends: Fin
error:
end_before_start: La fin doit venir après le début.
summary: Cet événement n’a pas pu être enregistré.
title_required: Donnez un titre à cet événement.
extracted_note: >-
Cet événement a été trouvé dans un e-mail. Le modifier empêche les
messages ultérieurs sur la même réservation d’écraser vos changements.
location: Lieu
new: Nouvel événement
new_on: Nouvel événement le %date%
repeat: Répéter
repeats: Se répète
save: Enregistrer
scope:
instance: Cet événement
instance_note: >-
« Cet événement » ne modifie que l’occurrence ouverte : il ne peut donc
pas ajouter la réunion à un agenda où elle n’est pas encore.
legend: Appliquer à
series: Tous les événements
starts: Début
title: Titre
form:
add: Nouvel agenda
color: Couleur
edit: Modifier l’agenda
name: Nom
time_zone: Fuseau horaire
time_zone_help: >-
Le fuseau dans lequel cet agenda est lu, et celui dans lequel s’affiche
un événement qui n’a pas de fuseau propre.
grid:
all_day: Toute la journée
continues_after: Se poursuit le jour suivant
continues_before: A commencé la veille
keyboard_hint: >-
Maintenez Alt et utilisez les flèches pour déplacer cet événement ;
ajoutez Maj pour changer sa durée. Entrée l’enregistre, Échap le remet
en place.
pending: >-
Déplacé à %start% – %end%. Appuyez sur Entrée pour enregistrer, ou sur
Échap pour le remettre en place.
read_only: Cet agenda n’accepte pas de modifications, cet événement ne peut donc pas être déplacé.
reverted: Laissé à sa place.
until: jusqu’à %when%
ics:
error:
no_calendar: Choisissez un agenda où placer les événements.
no_file: >-
Choisissez un fichier .ics. Si vous en avez choisi un, il est peut-être
plus gros que ce que plMail accepte de lire.
no_url: Saisissez l’adresse à laquelle l’agenda est publié.
export:
calendar: Télécharger « %name% » sous forme de fichier d’agenda
calendar_title: Télécharger en .ics
event: Télécharger le .ics
import:
calendar: Les ajouter à
dedup_note: >-
Un événement déjà présent dans cet agenda est mis à jour plutôt
qu’ajouté deux fois, et un événement déjà présent dans un autre de vos
agendas — issu d’une invitation, ou d’un agenda que vous reflétez —
reste où il est.
file: Fichier d’agenda
file_help: Un fichier .ics, jusqu’à %size% Mo.
intro: >-
Lit un fichier .ics — un export d’un autre agenda, ou une invitation
qu’on vous a envoyée — dans l’un de vos agendas.
no_calendars: >-
Aucun de vos agendas n’accepte de nouveaux événements. Un agenda
reflété est une copie en lecture seule ; créez d’abord un agenda à vous.
submit: Importer
title: Importer un fichier d’agenda
subscribe:
address: Adresse de l’agenda
address_help: >-
L’adresse à laquelle un agenda est publié, se terminant par .ics. Un
lien webcal:// fonctionne aussi — c’est la même adresse sous un autre nom.
connect: S’abonner à une adresse
intro: >-
Suivez un agenda publié par quelqu’un : jours fériés, calendrier de
matchs, ou l’adresse secrète que propose votre propre agenda Google ou
Outlook. plMail le relit en arrière-plan et l’affiche à côté de vos
propres agendas.
name: Nom
name_help: Comment l’appeler ici. Laissé vide, l’agenda se nomme lui-même.
read_only_note: >-
Un agenda abonné est en lecture seule — c’est la copie d’un fichier
publié, les modifications faites ici ne pourraient jamais l’atteindre.
Quiconque a cette adresse peut lire l’agenda : traitez une adresse
secrète comme un mot de passe.
submit: S’abonner
title: S’abonner à l’adresse d’un agenda
toast:
import_empty: >-
Ce fichier ne contient aucun événement lisible par plMail. Vérifiez
qu’il s’agit bien d’un export d’agenda.
import_nothing_new: >-
Rien à ajouter — chaque événement de ce fichier est déjà dans vos
agendas.
imported: '%added% ajoutés, %updated% mis à jour, %skipped% ignorés.'
subscribed: >-
Abonné — l’agenda se remplira d’ici une minute.
invite:
action:
accepted: Oui
declined: 'Non'
needs_action: Pas de réponse
tentative: Peut-être
attendees: '%count% invités'
cancelled: Cette réunion a été annulée.
held:
applied: 'Modification appliquée.'
apply: 'Appliquer la modification'
hint: 'Ce message demande de modifier cet événement, mais il n’a pas été envoyé par la personne dont vient l’événement (%sender%). Rien n’a été modifié.'
not_applied: 'Cette modification n’a pas pu être appliquée — une plus récente est déjà en place, ou vous avez modifié l’événement vous-même.'
offer:
accepted: Ajouter à l’agenda
declined: Non merci
hint: "Joint à ce message — rien n’a été ajouté à votre agenda."
status:
accepted: Dans votre agenda
declined: Non ajouté
organiser: Organisé par %name%
organiser_tag: organisateur
placed: '%title% est dans votre agenda : %when%.'
reply:
body: '%name% a répondu %status% à cette invitation.'
status:
accepted: Accepté
declined: Refusé
needs_action: Pas de réponse
tentative: Peut-être
toast:
added: Ajouté à votre agenda.
not_added: Laissé hors de votre agenda.
not_sent: >-
Votre réponse a été enregistrée ici, mais elle n’a pas pu être envoyée
à l’organisateur.
sent: Votre réponse a été envoyée à l’organisateur.
kind:
call: Appel
delivery: Livraison
dining: Réservation
event: Rendez-vous
flight: Vol
lodging: Séjour
meeting: Réunion
order: Commande
rental: Location
ticket: Billet
train: Train
more_count: '%count% de plus'
nav:
next: Suivant
previous: Précédent
open_day: 'Tout le %date%'
pane:
mode:
calendar: Afficher l’agenda en pleine largeur
mail: Afficher le courrier
split: Afficher l’agenda à côté du courrier
resize: Redimensionner l’agenda
proposal:
action:
add: Ajouter à l’agenda
dismiss: Pas un événement
explain: >-
Trouvé dans ce message — rien n’a été ajouté à votre agenda.
toast:
added: Ajouté à votre agenda.
dismissed: >-
Écarté — cette date ne sera plus proposée, quel que soit le nombre de
fois où ce message est lu.
no_calendar: >-
Il n’y a aucun agenda où l’ajouter, rien n’a donc été enregistré.
untitled: (sans objet)
repeat:
daily: Tous les jours
keep: Conserver la règle actuelle
monthly: Tous les mois
none: Ne se répète pas
weekly: Toutes les semaines
yearly: Tous les ans
share:
action:
delete: 'Supprimer le lien « %name% »'
edit: 'Modifier le lien « %name% »'
regenerate: 'Donner une nouvelle adresse au lien « %name% »'
revoke: 'Révoquer le lien « %name% »'
all_day: Toute la journée
busy: Occupé
busy_free_only: Ce lien montre quand l’agenda est occupé, et rien d’autre.
count: '{0}Aucun lien partagé|{1}1 lien partagé|]1,Inf[ %count% liens partagés'
covers: '{0}aucun agenda|{1}1 agenda|]1,Inf[ %count% agendas'
day_free: Rien ce jour-là.
delete_confirm: 'Supprimer « %name% » ? Quiconque a encore son adresse la perd.'
detail:
description: Description
location: Lieu
participants: Participants
title: Titres
empty: Rien sur cette période.
empty_list: Aucun lien partagé pour l’instant.
footer: Agenda partagé
form:
add: Nouveau lien partagé
calendars: Quels agendas
days: jours à l’avance
edit: Modifier le lien partagé
ends_on: Dernier jour
name: Comment vous l’appelez
name_help: >-
Vous seul le voyez. C’est ainsi que vous retrouvez le lien pour le
modifier ou le révoquer.
reveals: Ce que ce lien révèle
reveals_help: >-
Si rien n’est coché, le lien montre seulement quand l’agenda est
occupé. Chaque case ajoute une information. Un événement marqué privé
reste un simple bloc occupé quoi qui soit coché ici.
rolling_days: Jours à l’avance
starts_on: Premier jour
token_note: >-
L’adresse n’est affichée qu’une fois, à la création. Elle n’est pas
stockée et ne peut donc pas être réaffichée — si vous la perdez,
donnez une nouvelle adresse au lien.
window: Jusqu’où il porte
heading: Agenda partagé
minted:
heading: L’adresse de ce lien
once: >-
Copiez-la maintenant. Elle n’est stockée nulle part, c’est donc la
seule fois où elle peut être affichée.
not_shared: Non partagé
outside_window: Jours hors de la période partagée
page_title: Agenda partagé
reveals: 'Révèle %details%'
reveals_busy_free: Occupé/libre uniquement
revoked: Révoqué
subscribe: Ajouter à votre agenda
toast:
created: Lien créé. Copiez son adresse maintenant — elle ne sera plus affichée.
deleted: Lien supprimé.
regenerated: Nouvelle adresse. L’ancienne ne fonctionne plus.
revoked: Lien révoqué.
updated: Lien mis à jour.
window:
fixed: Entre deux dates
rolling: Une période glissante à partir d’aujourd’hui
window_label: '%from% – %to%'
zone: 'Horaires affichés en %zone%'
soon:
next: 'Ensuite'
empty: Rien à venir
empty_hint: >-
Les rendez-vous de votre agenda, ainsi que les vols, livraisons,
réservations et billets trouvés dans votre courrier, apparaissent ici
pour les deux prochaines semaines.
from: 'Depuis %subject%'
open: Ce qui arrive bientôt
title: Bientôt
untitled: (sans objet)
title: Agenda
status:
cancelled: Annulé
confirmed: Confirmé
tentative: Provisoire
toast:
created: Agenda créé
default_set: Les nouveaux événements arriveront ici
deleted: Agenda supprimé
disconnected: Serveur déconnecté
disconnected_kept: >-
Serveur déconnecté — %count% événement(s) venus du courrier plutôt que
d’un agenda ont été déplacés dans votre agenda par défaut.
event_saved: Événement enregistré
hidden: Agenda masqué
saved_on_hidden: >-
Événement enregistré dans %calendars%, qui est masqué — affichez cet agenda
pour le voir.
shown: Agenda affiché
subscriptions_saved: Abonnements enregistrés
subscriptions_saved_kept: >-
Abonnements enregistrés — %count% événement(s) venus du courrier plutôt que
de l’agenda ont été déplacés dans votre agenda par défaut.
subscriptions_unchanged: Rien n’a changé
sync_queued: Synchronisation en cours — cet agenda sera mis à jour dans un instant.
updated: Agenda mis à jour
today: Aujourd’hui
toolbar:
range: '%start% – %end%'
range_day: '%day%'
upcoming:
imminent: Commence dans l’heure
later: Plus tard aujourd’hui
soon: Dans quelques heures
view:
agenda: Liste
day: Jour
monday_week: Semaine
month: Mois
week: '7 jours'
clipboard:
copied: Copié
copy_failed: Échec de la copie
compose:
# Shown in the dock when clicking Compose does not produce a window —
# a 5xx, an expired session, a dead connection. Turbo's own answer to all
# three is four words of untranslated English in the corner.
ai:
accept: 'Insérer'
disabled: 'L’aide à la rédaction est désactivée.'
discard: 'Abandonner'
disclaimer: 'Écrit par un modèle. Relisez-le avant de l’envoyer.'
error:
not_pulled: 'L’hôte du modèle n’a pas ce modèle. Un administrateur doit d’abord le télécharger.'
refused: 'L’hôte du modèle a refusé la requête.'
timeout: 'L’hôte du modèle a mis trop de temps à répondre.'
failed: 'La requête n’a pas pu être envoyée.'
label: 'Aide-moi à écrire'
no_answer: 'L’hôte du modèle n’a donné aucune réponse.'
preview: 'Texte suggéré, pas encore dans votre message'
prompt:
# The disclosure in the assistant's panel that opens the writer's
# own standing instruction for editing. Deliberately not "system
# prompt" on the button: the box holds the writer's note, not the
# application's instructions, and naming it after the whole prompt
# would promise reach it does not have.
toggle: 'Instructions'
title: 'Modifier les instructions pour la prochaine tentative'
label: 'Comment vous voulez qu’on écrive pour vous'
placeholder: 'p. ex. Trois phrases maximum, et ne jamais commencer par « J’espère que vous allez bien ».'
retry: 'Réessayer avec ceci'
# Says the two things somebody will otherwise find out the hard way:
# this attempt only, and Settings is where it sticks.
hint: 'Cette fenêtre de rédaction uniquement. Une consigne durable s’enregistre dans Réglages → IA.'
rate: '%count% jetons · %rate% par seconde'
regenerate: 'Réessayer'
slow_hint: 'La première requête après un moment prend environ quinze secondes, le temps de charger le modèle.'
state:
done: 'Terminé. Rien n’est encore entré dans votre message.'
sent: 'Envoyé au modèle…'
stopped: 'Arrêté. Gardez ce qui est arrivé, ou jetez-le.'
stop: 'Arrêter'
task:
formal: 'Rendre plus formel'
proofread: 'Corriger l’orthographe et la grammaire'
reply: 'Rédiger une réponse'
shorten: 'Raccourcir'
timing: 'Chargement du modèle %load% s · %count% jetons en %seconds% s · %total% s au total'
working: 'Rédaction…'
open_failed:
dismiss: Fermer
failed: La fenêtre de rédaction n’a pas pu s’ouvrir. Veuillez réessayer.
offline: La fenêtre de rédaction n’a pas pu s’ouvrir — vous semblez hors ligne.
signed_out: Votre session a expiré. Rechargez la page et reconnectez-vous.
no_account:
body: Ajoutez d’abord une boîte, et vous pourrez écrire depuis elle aussitôt.
cta: Ajouter un compte mail
heading: Aucun compte mail pour l’instant
font_family:
label: Police
monospace: Chasse fixe
sans: Sans empattement
serif: Avec empattement
font_size:
huge: Énorme
label: Taille du texte
large: Grande
normal: Normale
small: Petite
align:
center: Centrer
left: Aligner à gauche
right: Aligner à droite
confirm:
no_body: Ce message n’a pas de texte.
no_subject: Ce message n’a pas d’objet.
send_anyway: L’envoyer quand même ?
plain_text: Passer en texte brut supprime toute la mise en forme de ce message. Continuer ?
open_variables: 'Un champ du modèle n’a pas été rempli.'
# Every label inside the emoji picker. The component ships its own English
# strings and takes a replacement object; this is that object, so the
# picker is as translated as the window around it.
emoji:
activities: Activités
animals_nature: Animaux et nature
categories: Catégories
custom: Personnalisés
favorites: Fréquemment utilisés
flags: Drapeaux
food_drink: Nourriture et boissons
loading: "Chargement…"
network_error: Les emoji n’ont pas pu être chargés.
objects: Objets
people_body: Personnes et corps
region: Sélecteur d’emoji
search: Rechercher
search_description: Quand des résultats apparaissent, utilisez haut ou bas pour en sélectionner un et Entrée pour le choisir.
search_results: Résultats de recherche
skin_tone: "Choisir une teinte de peau (actuellement {skinTone})"
skin_tone_description: Une fois déplié, utilisez haut ou bas pour en sélectionner une et Entrée pour la choisir.
skin_tones: Teintes de peau
smileys_emotion: Smileys et émotions
symbols: Symboles
tone_dark: Foncée
tone_default: Par défaut
tone_light: Claire
tone_medium: Moyenne
tone_medium_dark: Moyennement foncée
tone_medium_light: Moyennement claire
travel_places: Voyages et lieux
unsupported: Ce navigateur ne peut pas afficher les emoji en couleur.
list:
ordered: Liste numérotée
unordered: Liste à puces
priority:
high: Haute
label: Priorité
low: Basse
# Distinct from Normal on purpose: an untouched message says nothing
# about its urgency and carries no priority headers at all.
none: Aucune priorité
normal: Normale
quote:
hide: masquer le texte cité
show: afficher le texte cité
schedule:
cancel: Annuler l’envoi programmé
confirm: Programmer l’envoi
custom: Choisir date et heure
error:
past: Cette heure est déjà passée.
too_far: Un mail peut être retenu au plus %days% jours.
too_soon: Choisissez une heure au moins une minute dans le futur.
unreadable: Ce n’est pas une date et une heure.
heading: Envoyer plus tard
monday_morning: Lundi matin
scheduled_for: Envoi programmé
timezone_hint: Les heures sont en %zone%.
toast: Programmé pour %when%
# The toast's own action label. `cancel` is the menu's, where there is
# room to say which send is meant; in a toast beside the sentence that
# just named it, the long form pushes the message onto four lines.
toast_cancel: Annuler l’envoi
tomorrow_afternoon: Demain après-midi
tomorrow_morning: Demain matin
when: '%date%, %time%'
status:
pending_many: "%count% caractères de plus à enregistrer"
pending_one: un caractère de plus à enregistrer
save_failed: Impossible d’enregistrer le brouillon
saved: Brouillon enregistré
saving: "Enregistrement…"
uploading: "Envoi du fichier…"
# Why an upload was refused. The compose window prints these as-is on its
# status line, so they are the whole of the explanation the user gets.
upload:
failed: Échec de l’envoi
images_only: Seules des images peuvent être placées dans le corps du message
over_limit: "Fichier trop volumineux (max %limit% Mo)"
post_too_large: Envoi trop volumineux
too_large: Fichier trop volumineux
add_bcc: Ajouter des destinataires en Cci
add_cc: Ajouter des destinataires en Cc
attach: Joindre des fichiers
attach_failed: Impossible de joindre
attach_remove_failed: Impossible de retirer la pièce jointe
attach_too_large: "%name% dépasse %limit% Mo"
bcc: Cci
bold: Gras
cc: Cc
click_to_cancel: cliquez pour annuler
continue_editing: Continuer la rédaction
discard: Supprimer le brouillon
empty_draft: (brouillon vide)
encrypt: Chiffrer le message
# The whole of what the disabled encrypt button says for itself. It has to
# be a complete sentence: it is the only explanation anyone gets.
encrypt_unavailable: Le chiffrement n’est pas encore disponible.
expand: Agrandir
formatting: Options de mise en forme
forward: Transférer
from: De
image: Insérer une image
image_insert_failed: Impossible de placer l’image dans le message
indent: Augmenter le retrait
insert_emoji: Insérer un emoji
insert_link: Insérer un lien
invalid_address: "« %address% » n’est pas une adresse e-mail valide"
italic: Italique
# The insert-link popover, both of its faces. Nothing here is spelled in
# JavaScript: the controller reads the four strings it writes at runtime
# out of a data-…-i18n-value object Twig fills from these keys.
link:
add: Insérer un lien
apply: Appliquer
cancel: Annuler
change: Modifier
dialog: Lien
edit: Modifier le lien
heading: Lien
invalid: Saisissez une adresse web.
open: Ouvrir
remove: Supprimer le lien
text_label: Texte à afficher
text_placeholder: Les mots qui portent le lien
unsafe: Seules les adresses web, mail et téléphone peuvent être liées.
url_label: Adresse web
url_placeholder: "example.com"
minimize: Réduire
more_fields: Afficher De, Cc, Cci et objet
more_options: Plus d’options
new_message: Nouveau message
outdent: Diminuer le retrait
plain_text: Mode texte brut
# The warning that used to be a browser confirm(). The question itself is
# still compose.confirm.plain_text — only the frame around it is new.
plain_warning:
cancel: Garder la mise en forme
continue: Continuer
title: Supprimer la mise en forme ?
pop_out: Ouvrir dans une fenêtre de rédaction
send_warning:
cancel: Continuer la rédaction
continue: Envoyer quand même
title: Envoyer ce message ?
read_receipt: Demander un accusé de lecture
recipient_required: Ajoutez au moins un destinataire avant d’envoyer.
redo: Rétablir
reply: Répondre
reply_all: Répondre à tous
save_and_close: Enregistrer le brouillon et fermer
send: Envoyer
send_options: Options d’envoi
sending: "Envoi…"
signature: Insérer la signature
signature_none: Aucune signature définie pour cette adresse
subject_label: Objet
subject_placeholder: Objet
text_color: Couleur du texte
to: À
underline: Souligné
undo: Annuler
body_placeholder: "Écrivez votre message…"
attachment_remove: Retirer la pièce jointe
# The template picker in the compose window. The templates themselves
# are written in Settings → Templates (settings.templates).
template:
all_accounts: 'Tous les comptes'
empty: 'Aucun modèle pour l’instant. Rédigez-en un dans les Réglages, ou enregistrez ce message comme modèle.'
failed: 'Ce modèle n’a pas pu être chargé.'
insert: 'Insérer un modèle'
loading: 'Chargement des modèles…'
manage: 'Gérer les modèles'
no_match: 'Aucun modèle de ce nom.'
nothing_to_save: 'Il n’y a pas de texte ici à enregistrer comme modèle.'
save_draft: 'Enregistrer ce message comme modèle'
saved: 'Enregistré comme modèle « %name% ». Renommez-le ou déplacez-le dans les Réglages.'
search: 'Trouver un modèle'
untitled: 'Modèle sans titre'
demo:
bar:
title: Démo
blurb: Une boîte jetable. Rien ici n’est réel, et rien de ce que vous envoyez ne quitte le serveur.
next: 'À suivre : %subject%'
receive: Recevoir du courrier
flash:
blocked: La connexion d’une vraie boîte est désactivée sur la démo.
login:
blurb: Découvrez plMail avec une boîte à vous — sans inscription, sans adresse à fournir.
start: Lancer la démo
disclaimer: Votre boîte de démo est supprimée automatiquement au bout de quelques heures.
privacy:
account: >-
Lancer la démo crée un compte jetable avec une adresse générée au hasard. On
ne vous demande ni nom, ni adresse e-mail, ni mot de passe, et aucun n’est
stocké. Tout ce que vous y saisissez — messages, brouillons, entrées
d’agenda — n’existe que dans ce compte et est supprimé avec lui,
automatiquement, environ %ttl% après sa création. Le courrier écrit dans la
démo n’est jamais envoyé : il n’y a de connexion à aucun serveur de mail.
account_title: Le compte de démo
complaint: >-
Vous avez également le droit d’introduire une réclamation auprès d’une
autorité de contrôle de la protection des données.
controller_intro: 'Responsable du traitement décrit ici :'
controller_title: Responsable du traitement
controller_unset: 'Non défini. Une politique de confidentialité doit nommer le responsable du traitement — renseignez-le avant de rendre cette instance publique.'
cookie_mercure: maintient ouverte la connexion de mise à jour en direct pendant que vous êtes connecté.
cookie_session: vous garde connecté à votre compte de démo. Supprimé à la fermeture du navigateur.
cookie_ui: retient le thème et la langue que vous avez choisis.
cookies: >-
Trois cookies sont déposés, tous strictement nécessaires au fonctionnement du
service. Il n’y a aucun cookie de pistage, de publicité ou de mesure
d’audience, et donc aucun bandeau de consentement.
cookies_title: Cookies
host: Le serveur est exploité pour notre compte par %host%, en tant que sous-traitant au titre d’un accord de traitement des données.
host_unset: 'Non défini. L’entreprise qui exploite le serveur est un sous-traitant et doit être nommée ici.'
logs: >-
Comme tout serveur web, celui-ci enregistre chaque requête : l’adresse IP
d’origine, l’heure, la page demandée, la page de provenance et la chaîne
user-agent du navigateur. C’est nécessaire pour faire fonctionner le service
et le défendre contre les attaques (art. 6, par. 1, point f du RGPD — intérêt
légitime). Ces journaux font l’objet d’une rotation et ne servent à établir
le profil de personne.
logs_title: Journaux du serveur
processing_title: Ce qui est traité, et sur quelle base
rights: >-
Vous avez le droit d’obtenir des informations sur les données vous
concernant, ainsi que leur rectification, leur effacement ou la limitation
de leur traitement, de même que le droit de vous opposer au traitement et le
droit à la portabilité des données. Écrivez à l’adresse ci-dessus.
rights_title: Vos droits
stats: >-
Pour savoir dans quelle mesure la démo est utilisée, chaque session de démo
démarrée est comptée. Sont stockés l’heure et un hachage à clé de l’adresse
IP amputée de sa dernière partie (le dernier octet d’une adresse IPv4, les 80
derniers bits d’une IPv6) — jamais l’adresse elle-même. Le hachage montre
seulement que deux sessions venaient du même réseau, et il est supprimé après
%days% jours (art. 6, par. 1, point f du RGPD — intérêt légitime à savoir dans
quelle mesure la démo est utilisée).
stats_title: 'Statistiques d’utilisation'
third_parties: >-
Aucune donnée n’est transmise à des tiers. Ce site ne charge ni polices, ni
scripts, ni cartes, ni outils d’analyse externes — sa politique de sécurité
du contenu n’autorise de connexion qu’à ce serveur.
third_parties_title: Tiers
title: Politique de confidentialité
unavailable:
title: Non disponible dans la démo
body: >-
La connexion d’une vraie boîte est désactivée ici. Cette démo tourne sur un
serveur que vous ne contrôlez pas, et aucun inconnu ne devrait y saisir le
mot de passe de son courrier. Tout le reste — thèmes, filtres, agenda,
rédaction — fonctionne comme sur votre propre installation.
dismiss: Retour à la démo
impressum:
link: Mentions légales
title: Mentions légales
heading: Informations au titre du § 5 TMG
operator: Éditeur
unset: 'Non défini. Cette page doit légalement nommer un éditeur réel — renseignez-le dans l’environnement avant de rendre cette instance publique.'
contact: Contact
contact_email: 'E-mail :'
disclaimer_title: À propos de cette démo
disclaimer: >-
Ceci est une démonstration de plMail. Les boîtes, expéditeurs et messages
affichés sont inventés ; aucun n’est une vraie correspondance. Le courrier
écrit ici ne quitte jamais le serveur, et les comptes de démo sont supprimés
automatiquement au bout de quelques heures.
privacy_title: Données
privacy: >-
Une visite de démo crée un compte jetable sans aucune donnée personnelle.
Tout ce que vous y saisissez est supprimé avec le compte. Les journaux du
serveur enregistrent les adresses IP pour les raisons d’exploitation
habituelles et font l’objet d’une rotation.
source_title: Code source
source: 'plMail est un logiciel libre, sous licence AGPL-3.0 :'
dnd:
# The pill the pointer carries when several conversations are dragged at
# once. %count% is substituted in the browser, so the placeholder is left
# in the translated string — see _layout/_mailbox.html.twig. Always
# plural: a single conversation drags a picture of its own row instead.
dragging: '%count% conversations'
drafts:
empty: Aucun brouillon.
heading: Brouillons
errors:
page:
back: Retour à votre courrier
not_found:
body: La page demandée n’est pas ici. Le lien est peut-être mal saisi, ou ce vers quoi il pointait a été déplacé ou supprimé.
heading: Rien à cette adresse
title: Page introuvable
server:
body: Un problème est survenu de notre côté, pas du vôtre. L’anomalie a été journalisée ; réessayer dans un instant fonctionne généralement.
heading: Un problème est survenu
title: Erreur du serveur
form:
file:
choose: Choisir une image…
hint: PNG, JPEG, GIF ou WebP
select:
no_results: Aucun résultat
cancel: Annuler
submit: Enregistrer
confirm_dialog:
# The in-app replacement for window.confirm(). Turbo's data-turbo-confirm
# calls the browser dialog by default; setConfirmMethod points it here.
heading: Êtes-vous sûr ?
cancel: Annuler
confirm: Continuer
discarded:
actions:
purge: Supprimer définitivement
purge_confirm: 'Supprimer définitivement cette conversation ? Elle ne pourra pas être récupérée, et elle est aussi supprimée du serveur de mail.'
restore: Déplacer vers la boîte de réception
header:
search:
close: Fermer la recherche
live:
status: '%count% conversations correspondantes'
status_none: Aucun courrier correspondant
status_one: 1 conversation correspondante
title: Courrier
open: Rechercher dans le courrier
placeholder: Rechercher dans le courrier…
recents:
clear: Effacer
title: Recherches récentes
suggestions:
title: Suggestions
user_menu:
account_attention: '%count% points de vos comptes demandent votre attention'
admin: Administration
label: Menu utilisateur de %email%
profile: Profil
rerun_setup: Relancer la configuration
unseen_logs:
danger: '%count% nouvelles erreurs dans le journal'
warn: '%count% nouveaux avertissements dans le journal'
settings: Réglages
sign_out: Se déconnecter
signed_in_as: Connecté en tant que
inbox:
empty: Aucun message dans cet onglet.
empty_account: Rien n’est encore arrivé dans ce compte.
insights:
card:
heading: Trouvé dans cette conversation
kind:
flight: Vol
github-issue: Ticket
github-pr: Pull request
invoice: Facture
otp: Code de connexion
parcel: Colis
subscription: Abonnement
ticket: Billet
pane:
dismiss: Écarter
dismiss_all: Masquer ce bandeau
heading: Bientôt
more: Plus d’actions
when:
today: Aujourd’hui
tomorrow: Demain
panel:
dismiss: Écarter
heading: À surveiller
open_mail: Ouvrir le mail
track: Suivre
undated_heading: Également repéré
report:
already_reported: Vous avez déjà signalé ce mail.
cancel: Annuler
disclosure: "Vous signalez ce mail pour que plMail puisse à l’avenir en tirer un aperçu. Le contenu et l’expéditeur du mail sont transmis à votre administration."
heading: Signaler un aperçu manqué
note_label: Qu’aurait dû repérer plMail ici ?
note_placeholder: "Par exemple : c’est une facture, à régler le 3."
submit: Signaler le mail
success: "Merci — votre signalement a été transmis à votre administration."
status:
announced: Annoncé
delivered: Livré
in_transit: En route
ordered: Commandé
out_for_delivery: En cours de livraison
ready_for_pickup: Prêt à être retiré
integration:
save_failed: 'Impossible d’enregistrer : %reason%'
saved_to: 'Enregistré dans %name%'
destination:
album_name: 'Nom de l’album'
choose_album: 'Choisir un album pour %file%'
choose_folder: 'Choisir un dossier pour %file%'
# The picker opened with no attachment in hand: a filter naming the
# folder it will save to, for mail that has not arrived yet.
choose_for_filter: 'Choisissez où ce filtre enregistre les pièces jointes.'
choose_here: 'Choisir ce dossier'
choose_this: Choisir
create: Créer
folder_name: 'Nom du dossier'
library: 'Bibliothèque (sans album)'
new_album: 'Nouvel album'
new_folder: 'Nouveau dossier'
no_albums: 'Aucun album pour l’instant.'
no_subfolders: 'Aucun dossier ici.'
save_here: 'Enregistrer ici'
start_over: 'Recommencer'
picker:
attach: Joindre
attach_from: 'Joindre depuis %name%'
attach_from_service: 'Joindre depuis un service'
empty: 'Ce dossier est vide.'
link: Lien
more: 'Afficher plus'
no_results: 'Rien trouvé pour « %query% ».'
search: Rechercher
search_placeholder:
dropbox: 'Rechercher dans Dropbox'
googleDrive: 'Rechercher dans Drive'
googlePhotos: 'Rechercher dans Photos'
immich: 'Décrivez une photo, p. ex. plage au coucher du soleil'
nextcloud: 'Rechercher dans Nextcloud'
oneDrive: 'Rechercher dans OneDrive'
paperless: 'Rechercher dans les titres et le texte numérisé'
status:
attach_failed: 'Impossible de joindre'
attaching: 'Ajout en cours…'
load_failed: 'Impossible de charger plus'
loading: 'Chargement…'
nothing_selected: 'Rien de sélectionné'
save_draft_first: 'Enregistrez d’abord le brouillon'
skipped: 'Ignorés : %files%'
timeline: 'Aller à une date'
too_big: 'Trop volumineux pour être joint'
jobs:
button:
failed: "Un échec"
importing: "Import"
importing_percent: "Import · %percent%%"
working: "En cours…"
heading: Tâches en arrière-plan
import:
folder: "En cours : %folder%"
heading: "Import de %account%"
newest_first: "Courrier le plus récent d’abord"
quota: "Quota Gmail : environ %used% unités sur %limit% cette minute"
quota_assumed: "Quota Gmail : environ %used% unités sur %limit% cette minute (limite supposée tant que Google ne l’indique pas)"
quota_paused: "En pause à cause du quota Gmail · reprise dans %seconds% s"
quota_refused: "Gmail a refusé à environ %used% unités sur %limit% par minute"
rate: "Environ %count% messages par minute"
remaining_hours: "Environ %hours% h %minutes% min restantes"
remaining_minutes: "Environ %minutes% min restantes"
waiting: "En attente de reprise"
started: '%action% lancé — ceci s’exécute en arrière-plan.'
failure:
abandoned: 'Interrompu — ceci s’est arrêté en cours de route, et ce qui avait déjà été fait a été conservé.'
kind:
mark_read: Marquage comme lu
mark_unread: Marquage comme non lu
archive: Archivage
trash: Mise à la corbeille
restore: Restauration
snooze: Mise en attente
wake: Retour de mise en attente
move_to: Déplacement
purge: Suppression définitive
reclassify: Nouveau tri du courrier récent
state:
done: '%count% terminés'
failed: échec
queued: en attente
label:
all_accounts: Tous les comptes
color:
amber: Ambre
blue: Bleu
gray: Gris
green: Vert
orange: Orange
pink: Rose
red: Rouge
teal: Bleu canard
violet: Violet
empty: Aucune conversation avec ce libellé.
created: Libellé créé.
delete_confirm: 'Supprimer le libellé « %name% » ? Il disparaît de tous les comptes. Les messages gardent leurs autres libellés et ne sont pas supprimés.'
delete_confirm_children: 'Supprimer « %name% » et ses %count% libellé(s) imbriqué(s) ? Ils disparaissent de tous les comptes. Les messages ne sont pas supprimés.'
deleted: Libellé supprimé.
error:
duplicate: Un libellé de ce nom existe déjà ici. Les majuscules n’en font pas un nom différent.
form:
color: Couleur
delete: Supprimer le libellé
delete_hint: 'La suppression retire le libellé de tous les comptes, ainsi que les libellés imbriqués dessous. Le courrier qui le porte garde ses autres libellés et n’est pas supprimé.'
edit_title: Modifier le libellé
name: Nom
no_color: '— aucune —'
no_parent: '— premier niveau —'
parent: Imbriquer sous
menu:
create: Créer
empty: Aucun libellé pour l’instant.
updated: Libellé mis à jour.
visibility:
hidden: Le libellé est maintenant masqué.
shown: Le libellé est maintenant visible.
list:
sort:
newest: Plus récents d’abord
oldest: Plus anciens d’abord
login:
form:
email: Adresse e-mail
forgot_password: Mot de passe oublié ?
forgot_password_hint: 'La récupération du mot de passe se fait depuis la console du serveur : bin/console app:user:2fa-disable et un nouveau mot de passe défini par un administrateur.'
password: Mot de passe
remember_me: Rester connecté
submit: Se connecter
oidc:
button: Se connecter avec l’authentification unique
button_named: Se connecter avec %provider%
or: ou
page_title: Connexion
register:
coming_soon: Inscription bientôt disponible.
link: En créer un
prompt: Pas encore de compte ?
tagline: Connectez-vous à votre compte
message:
actions:
archive: Archiver
delete: Supprimer ce message
collapse: Replier ce message
expand: Déplier ce message
mark_unread: Marquer comme non lu
more: Plus
print: Imprimer
report_insight: Signaler un aperçu manqué
show_original: Afficher l’original
star: Suivre
unstar: Ne plus suivre
attachments: Pièces jointes
back: Retour
body_frame: Contenu du message
bounce:
failed: 'Ce message n’a pas été distribué.'
failed_for: 'Non distribué à %recipient%.'
reported_at: 'Signalé %datetime%'
details:
categorised:
ai: 'un modèle de langage, faute de règle l’ayant reconnu : '
# When the model disagrees with the rules. Said rather than left to
# be noticed, because the two rows are what this panel is for and a
# difference between them is the finding.
ai_differs: 'les règles ne sont pas d’accord'
awaiting_resort: 'En cours de reclassement — vous avez changé le tri du courrier, et celui-ci n’a pas encore bougé.'
gmail_overruled: 'non utilisé — vous avez demandé à plMail de le trier lui-même'
in_force: 'c’est celui-ci qui décide'
# Asked, and what came back was not one of the five categories. Kept
# apart from "not asked": one means the model has nothing useful to
# say about this mail, the other means nobody has asked it.
ai_no_answer: 'interrogé, pas de réponse exploitable'
ai_not_asked: 'non interrogé'
correspondent: 'vous avez écrit à cet expéditeur'
default: 'rien ne l’a désigné comme courrier de masse'
forum: 'un en-tête de liste de diffusion : '
gmail: 'Gmail l’a dit : '
own_filter: "classé ici par l’un de vos filtres"
# A category somebody chose by dragging the conversation onto a tab.
# Nothing below the first row can move it while this holds.
pinned: 'vous l’avez déplacé ici'
promotion: 'un en-tête de courrier de masse : '
social: 'le domaine de l’expéditeur '
switched_off: "ce serait %category%, que vous avez désactivé"
# A conversation takes ONE category, from its newest message, so a
# reply can carry the whole thread out of the tab this message
# belongs in. Said outright, because without it the panel reads as
# simply wrong: every line agreeing on one category while the mail
# sits plainly in another.
thread_differs: 'Seul, ce message serait %category% — une conversation prend la catégorie de son message le plus récent.'
update: 'un signal de courrier automatique : '
category: catégorie
# What a language model made of it — asked about every message now, and
# deciding nothing on its own.
category_ai: 'le modèle'
category_gmail: 'Gmail dit'
# plMail's own cascade with neither Gmail nor the model in the way. On a
# Gmail mailbox this is the answer that takes over the day the provider's
# labels stop arriving, so it is worth being able to see before then.
category_rules: 'les règles'
bcc: cci
cc: cc
copy_address: 'Copier l’adresse %address%'
copy_headers: Copier les en-têtes
report:
failed: 'Impossible de signaler'
label: 'Mauvais onglet ? Devrait être'
send: Signaler
stale: 'Déjà là — rechargez'
sent: Signalé
date: date
from: de
hide_all_headers: Masquer tous les en-têtes
label: Détails
mailed_by: envoyé par
reply_to: répondre à
show_all_headers: Afficher tous les en-têtes
signed_by: signé par
subject: objet
to: "à %name%"
to_label: à
undisclosed: destinataires non divulgués
draft: "Brouillon"
images:
always: 'Toujours afficher les images de %sender%'
blocked: '{1}1 image a été bloquée pour que cette lecture reste privée|]1,Inf[ %count% images ont été bloquées pour que cette lecture reste privée'
show_once: Afficher les images
stop_trusting: Ne plus afficher
trusted: 'Les images sont toujours affichées pour %sender%'
original:
copied: Copié
copy: Copier dans le presse-papiers
copy_failed: Échec de la copie
fields:
created_at: Créé le
from: De
message_id: ID du message
subject: Objet
to: À
heading: Message original
reconstructed: 'Les octets d’origine de ce message n’ont pas été conservés : ceci est une reconstruction à partir des en-têtes stockés et du corps en texte. La structure MIME et toute partie HTML manquent, et il ne sera pas validé par une signature DKIM.'
quote:
hide: Masquer le texte cité
show: Afficher le texte cité
read_receipt:
dismiss: 'Non merci'
mdn:
body: "Votre message à %recipient% ayant pour objet « %subject% » a été affiché le %date%. Ce n’est pas une garantie qu’il a été lu ou compris."
subject: 'Lu : %subject%'
mismatch: 'L’accusé devait être envoyé à %notifyTo%, qui n’est pas l’adresse d’envoi de ce message (%sender%).'
read_at: 'Lu le %datetime%'
requested: '%sender% a demandé à être prévenu quand vous lirez ce message.'
send: 'Envoyer l’accusé'
save_to: 'Enregistrer dans'
security:
mismatch:
brand_in_name: "Le nom indique « %claimed% », mais le message a été envoyé depuis %actual%."
domain_in_name: "Le nom revendique %claimed%, mais le message a été envoyé depuis %actual%."
title: "Le nom de l’expéditeur ne correspond pas à son adresse"
spam:
body: "Ce message a été classé comme spam. Ses liens et images sont risqués — traitez tout ce qu’il vous demande comme la requête d’un inconnu."
title: Ce message est dans Spam
mercure:
status:
connected: Mises à jour en direct actives
connecting: Reconnexion aux mises à jour en direct…
offline: Mises à jour en direct indisponibles — la boîte de réception n’est peut-être pas à jour
modal:
close: Fermer
loading: Chargement…
oauth:
error:
generic: Impossible de connecter ce compte. Veuillez réessayer.
microsoft:
admin_consent_required: >-
Votre organisation exige qu’un administrateur approuve plMail avant
que vous puissiez connecter ce compte. Demandez à votre administrateur
Microsoft d’accorder l’accès.
app_not_found: >-
plMail n’est pas enregistré dans votre organisation Microsoft.
bad_credentials: >-
Les identifiants Microsoft de plMail sont invalides ou expirés. C’est un
problème de configuration du serveur, pas quelque chose que vous pouvez
corriger.
blocked_by_policy: >-
Une stratégie de sécurité de votre organisation a bloqué cette connexion.
consent_declined: >-
Connexion annulée — l’accès n’a pas été accordé à plMail.
tenant_mismatch: >-
Ce type de compte ne peut pas se connecter à plMail avec la configuration
actuelle. Vérifiez le réglage MICROSOFT_OAUTH_TENANT.
onboarding:
action:
back: Retour
finish: Terminer
next: Suivant
skip: Passer cette étape
skip_all: Passer la configuration
done:
body: >-
Tout ce que vous avez passé se trouve dans les Réglages, et vous pouvez
relancer ceci depuis le menu utilisateur quand vous voulez.
cta: Aller à mon courrier
heading: Tout est prêt
aside:
account:
body: >-
plMail a besoin des adresses des serveurs entrant (IMAP) et sortant (SMTP)
de votre fournisseur. Elles se trouvent généralement dans ses pages
d’aide, sous « Paramètres IMAP ».
heading: Où les trouver ?
oauth: >-
Pour Gmail et Outlook, utilisez plutôt les boutons de connexion dans
Réglages → Comptes mail — aucune adresse de serveur nécessaire.
admin_ai:
body: 'L’adresse d’un conteneur Ollama sur votre réseau, ou de n’importe quel point de terminaison compatible OpenAI, et les noms de deux modèles qu’il propose — un pour la rédaction, un pour la recherche. Le courrier va à cette adresse et nulle part ailleurs.'
heading: 'Ce qu’il vous faut'
skip_body: 'Cliquez sur Suivant en laissant tout vide. plMail est un client mail complet sans tout cela, et vous pourrez y revenir plus tard dans Administration → IA.'
skip_heading: 'Pas intéressé ?'
admin_integrations:
body: Enregistrez plMail auprès du service, puis collez les identifiants qu’il vous donne.
heading: Configuration
admin_mail:
google:
heading: Configurer la connexion Gmail
step1: Ouvrez console.cloud.google.com et créez un projet, ou choisissez-en un existant.
step2: 'Sous API et services → Bibliothèque, activez l’API Gmail.'
step3: 'Sous Écran de consentement OAuth, choisissez Interne si vous avez Workspace, sinon Externe, et renseignez le nom de l’application et l’e-mail d’assistance.'
step4: 'Sous Identifiants, créez un ID client OAuth de type « Application Web ».'
step5: Collez l’URI de redirection ci-dessous dans ses « URI de redirection autorisés », puis enregistrez.
step6: Copiez l’ID client et le secret client affichés dans les champs à gauche.
microsoft:
heading: Configurer la connexion Microsoft
step1: 'Ouvrez portal.azure.com et allez dans Microsoft Entra ID → Inscriptions d’applications → Nouvelle inscription.'
step2: 'Choisissez qui peut se connecter. « Comptes dans un annuaire d’organisation et comptes Microsoft personnels » correspond au réglage de tenant par défaut « common ».'
step3: 'Définissez l’URI de redirection sur Web, et collez-y l’adresse ci-dessous.'
step4: 'Après l’inscription, copiez l’ID d’application (client) dans le champ à gauche.'
step5: 'Sous Certificats et secrets, créez un nouveau secret client et copiez sa Valeur — pas son ID — tout de suite ; elle n’est affichée qu’une fois.'
step6: 'Sous Autorisations d’API, ajoutez ces autorisations Microsoft Graph déléguées : Mail.ReadWrite, Mail.Send, MailboxSettings.ReadWrite, Calendars.ReadWrite, User.Read et offline_access. Sans MailboxSettings.ReadWrite ou Calendars.ReadWrite, la connexion fonctionne quand même — mais sans catégories ni agenda, et un jeton déjà émis n’est pas mis à niveau si vous ajoutez l’autorisation plus tard.'
profile:
body: C’est ce que voient les destinataires sur la ligne De. Vous pouvez le changer à tout moment.
heading: Où cela apparaît
security:
body: >-
Pensez à ce qui arrive si quelqu’un obtient le mot de passe de votre
messagerie. Il ne lit pas seulement votre courrier — il clique sur « mot
de passe oublié » chez votre banque, votre registraire de domaine, votre
stockage en ligne, et récupère les liens de réinitialisation à leur
arrivée.
body_two: >-
Un second facteur est un code de votre téléphone qui change toutes les
30 secondes. Un mot de passe volé ne suffit plus à lui seul.
heading: Pourquoi c’est le plus important
account:
add: Ajouter ce compte
or_manual: 'Ou configurez-le à la main :'
sign_in_with: 'Se connecter avec %provider%'
add_another: Ajouter un autre compte
cancel: Annuler
integrations:
cancel: Annuler
connect: Connecter
connected: Connecté
progress: 'Étape %index% sur %total%'
security:
body: >-
Votre boîte mail est la clé de tous vos autres comptes, parce que c’est là
qu’arrivent les réinitialisations de mot de passe. Ajouter un code de votre
téléphone signifie qu’un mot de passe volé ne suffit pas à lui seul.
done_body: >-
Un code de votre application vous sera demandé à la connexion. Gardez les
codes de récupération dans un endroit accessible sans votre téléphone.
done_heading: L’authentification à deux facteurs est activée
skip_hint: Vous pourrez la configurer plus tard dans Réglages → Sécurité.
switch_blocked: Rien n’a été changé — corrigez d’abord les champs ci-dessous, ce que vous avez saisi sera conservé.
step:
account:
lead: Connectez la boîte que vous lisez vraiment, et plMail commence à la synchroniser.
title: Compte mail
admin-ai:
intro: 'plMail peut utiliser un modèle de langage — que vous faites tourner vous-même, ou un point de terminaison de votre choix — pour la recherche par le sens, le tri du courrier et l’aide à la rédaction. C’est entièrement facultatif, et vous pouvez laisser tous les champs ci-dessous vides.'
lead: 'Facultatif. Laissez vide si vous n’en voulez pas.'
title: 'Modèle de langage'
admin-integrations:
lead: Les identifiants des services depuis lesquels tout le monde ici peut joindre des fichiers.
title: Identifiants d’intégration
admin-mail:
lead: Les identifiants de connexion pour Gmail et Outlook, définis une fois pour toute l’installation.
title: Fournisseurs de mail
appearance:
lead: L’apparence de plMail. Rien n’est définitif — changez-la quand vous voulez.
title: Apparence
integrations:
lead: Connectez les services où vous gardez vos fichiers et photos.
title: Vos intégrations
profile:
lead: Le nom qui apparaît sur le courrier que vous envoyez.
title: À propos de vous
security:
lead: Le seul compte qui vaille vraiment d’être bien verrouillé. Cela prend environ une minute.
title: Protéger votre compte
title: Configurer plMail
profile:
avatar_current: Image actuelle
avatar_from:
not_an_image: 'Ce fichier n’est pas une image utilisable par plMail. Choisissez un PNG, JPEG, GIF ou WebP.'
too_large: 'Cette image dépasse 4 Mo. Choisissez-en une plus petite.'
unavailable: 'Le service n’a pas transmis l’image. Réessayez dans un instant.'
empty: Rien à afficher depuis ce service.
heading: Ou choisissez-en une depuis un service connecté
field:
avatar: Image
avatar_help: PNG, JPEG, GIF ou WebP, jusqu’à 4 Mo.
avatar_remove: Supprimer l’image actuelle
name_first: Prénom
name_last: Nom
# The reading pane beside the message list (Settings → Reading pane turns it on).
# `handle` is what a screen reader calls the divider between the two; the
# placeholder stands where the message will be until one is opened.
reading_pane:
handle: Redimensionner le volet du message
placeholder: Sélectionnez une conversation pour la lire ici
# Said in a toast when a request fails and there is no better place to say it;
# see request_errors.js.
request_error:
copy_reference: 'Copier la référence'
server: 'Cela n’a pas fonctionné — un problème est survenu de notre côté. Réessayez dans un instant.'
not_found: 'Ce n’est plus là. Cela a peut-être été déplacé ou supprimé.'
refused: 'plMail n’a pas pu faire cela. Rechargez la page et réessayez.'
offline: 'plMail est injoignable. Vérifiez votre connexion et réessayez.'
reference: 'Réf. %id%'
sync_now:
label: 'Synchroniser maintenant'
syncing_one: 'Synchronisation d’un compte…'
syncing_other: 'Synchronisation de %count% comptes…'
still_running: 'La synchronisation se poursuit en arrière-plan.'
complete: 'Synchronisation terminée.'
session_expired: 'Votre session a expiré — rechargez la page pour vous reconnecter.'
search:
empty:
or_keyword: ou tapez simplement un mot-clé.
title: Rechercher dans votre courrier
try: Essayez
heading:
results: Résultats de recherche pour
no_results:
hint: Essayez d’autres mots-clés ou retirez des filtres.
title: Aucun résultat pour « %query% »
pill:
after: Après
attachment: pièce jointe
before: Avant
cc: Cc
from: De
has: Contient
in: Dans
is: Est
label: Libellé
read: lu
starred: suivi
subject: Objet
to: À
unread: non lu
results:
count: '%count% résultats'
count_one: 1 résultat
semantic:
admin_link: 'Progression de l’indexation'
indexing: 'Recherche par le sens sur %embedded% messages sur %total% — %percent%% effectué.'
model_changed: 'Le modèle de recherche a changé. Les %count% messages indexés avec le précédent ne sont pas cherchés par le sens tant qu’ils n’ont pas été réindexés.'
nothing_extra: 'La recherche par le sens n’a rien trouvé que les mots n’avaient déjà trouvé.'
skipped:
bad_answer: 'Le modèle a répondu quelque chose d’inutilisable, cette recherche n’a donc utilisé que les mots.'
host_unreachable: 'L’hôte du modèle n’a pas répondu, cette recherche n’a donc utilisé que les mots.'
model_missing: 'L’hôte du modèle n’a pas le modèle de recherche, cette recherche n’a donc utilisé que les mots.'
not_configured: 'La recherche par le sens est activée, mais aucun hôte de modèle n’est configuré : cette recherche n’a donc utilisé que les mots.'
query_too_short: 'Tapez un peu plus pour chercher aussi par le sens.'
search_failed: 'La recherche par le sens n’a pas pu aboutir, cette recherche n’a donc utilisé que les mots. Un administrateur peut en trouver la raison dans le journal du serveur.'
search_too_slow: 'La recherche par le sens a pris trop de temps ici, cette recherche n’a donc utilisé que les mots.'
timed_out: 'Le modèle a mis trop de temps, cette recherche n’a donc utilisé que les mots.'
sort:
label: Trier par
recent: Plus récents
relevance: Plus pertinents
title: Recherche
title_query: 'Recherche : %query%'
sent:
empty: Aucun message envoyé.
heading: Envoyés
setup:
install:
field:
email: Adresse e-mail
email_help: C’est l’adresse avec laquelle vous vous connecterez.
locale: Langue
name_first: Prénom
name_last: Nom
password: Mot de passe
password_repeat: Répéter le mot de passe
public_url: Adresse publique
public_url_help: >-
L’adresse par laquelle on joint plMail depuis l’extérieur. Gmail et
Outlook y renvoient des notifications push : elle doit donc être joignable
depuis internet et de préférence en https. Vous pourrez la changer plus tard.
footnote: Vous pourrez ajouter des boîtes, et tout le reste, une fois connecté.
heading: Créez votre compte
lead: C’est le premier compte de ce plMail, il reçoit donc tous les droits d’administrateur.
page_title: Configurer plMail
restore_link: Restaurez d’abord une sauvegarde de configuration.
restore_prompt: Vous venez d’un autre plMail ?
submit: Créer le compte et se connecter
tagline: Personne ne s’est encore inscrit — remédions-y
restore:
applied_lead: >-
La configuration est en place. Cette sauvegarde ne contenait aucun compte
utilisateur, cette installation n’en a donc toujours aucun — créez le compte
administrateur pour terminer. Si un redémarrage est indiqué ci-dessus, il peut
attendre jusque-là.
applied_lead_users: >-
La configuration et ses utilisateurs sont en place — %count% restaurés, dont
%admins%. Connectez-vous avec le mot de passe que vous aviez déjà ; rien n’a
changé de ce côté.
back: 'Retour à la création de l’administrateur'
continue: 'Continuer — créer l’administrateur'
footnote: >-
Une sauvegarde de configuration contient les réglages, les identifiants et les
personnes qui les utilisent — jamais de courrier, d’entrées d’agenda ni de contacts.
heading: 'Restaurer une sauvegarde de configuration'
lead: >-
Importez ici les réglages, identifiants et comptes d’un autre plMail avant de
créer quoi que ce soit. Envoyez le fichier et saisissez son mot de passe —
plMail écrit lui-même le reste dans cette installation.
nothing_to_do: 'Il ne vous reste plus rien à faire ici.'
page_title: 'Restaurer la configuration'
sign_in: 'Se connecter'
submit: 'Ouvrir la sauvegarde'
session:
# Shown when Turbo notices the session has ended — a logout in another tab,
# an expired cookie, a restarted worker. Turbo's own answer is to render the
# login page inside the application shell, which looks like the app has come
# apart.
expired:
heading: Vous avez été déconnecté
body: Votre session s’est terminée ailleurs. Reconnectez-vous pour continuer.
body_writing: Votre session s’est terminée ailleurs. Reconnectez-vous dans un nouvel onglet, puis revenez — ce que vous avez écrit ici est toujours à l’écran.
sign_in: Se reconnecter
sign_in_new_tab: Se reconnecter dans un nouvel onglet
reload: Recharger cette page
settings:
ai:
context:
heading: 'Ce que l’assistant lit'
message: 'Le message'
message_hint: 'L’assistant lit le message auquel vous répondez. C’est ce qu’il a toujours fait.'
none: 'Rien'
none_hint: 'L’assistant ne voit que ce que vous avez tapé. Le plus rapide, et « Rédiger une réponse » dans une fenêtre vide n’a rien sur quoi s’appuyer — il dira qu’il n’a pas pu répondre. Raccourcir, rendre formel et relire ne sont pas concernés.'
subheading: 'Plus de conversation donne une meilleure réponse et une attente plus longue. Le modèle tourne sur cette machine : ce que cela coûte, c’est du temps, guère plus.'
thread: 'La conversation'
thread_hint: 'L’assistant lit toute la conversation, du plus ancien au plus récent, autant qu’il en tient. De meilleures réponses dans les longues conversations, et une attente plus longue.'
feature:
admin_off: 'Non activé sur cette installation'
categorise: 'Trier le courrier dans les onglets'
categorise_hint: 'Laisse le modèle départager quand les règles ordinaires ne savent pas où placer un message. Désactivé, ces messages restent là où les règles les ont mis.'
search: 'Recherche par le sens'
search_hint: 'Trouve le courrier qui veut dire ce que vous cherchez, pas seulement celui qui l’écrit de la même façon. Désactivé, votre courrier cesse d’être indexé autant que d’être recherché.'
summary: 'Résumés de conversation'
summary_hint: 'Résume une longue conversation quand vous le demandez. Rien n’est résumé de lui-même.'
writing_help: 'Aide-moi à écrire'
writing_help_hint: 'Rédige une réponse, raccourcit, rend formel, relit — dans la fenêtre de rédaction, quand vous le demandez.'
features:
heading: 'Fonctions de l’assistant'
subheading: "Les fonctions de l’assistant que vous voulez. Votre administrateur décide de ce qui est disponible ; vous décidez de ce que vous utilisez."
notes:
about_me_hint: 'Votre métier, à qui vous écrivez d’habitude, tout ce qu’un inconnu devrait savoir pour bien répondre à votre courrier.'
about_me_label: 'Qui vous êtes'
about_me_placeholder: 'Je tiens un atelier de réparation de vélos et l’essentiel de mon courrier vient de clients qui réservent une réparation.'
heading: 'À propos de vous'
save: 'Enregistrer'
saved: 'Enregistré.'
subheading: 'Ce que l’assistant doit savoir avant d’écrire pour vous. Les deux notes sont envoyées avec chaque brouillon, et ne servent à rien d’autre.'
system_prompt_hint: "Des préférences, pas des instructions — les règles de l’application passent d’abord, y compris écrire dans la langue du mail. Restez bref : de longues notes détournent l’attention du modèle du message lui-même."
system_prompt_label: 'Comment vous voulez qu’on écrive pour vous'
system_prompt_placeholder: 'Phrases courtes. Pas de points d’exclamation. Signer uniquement de mon prénom.'
reads:
categorise: 'Tri : l’expéditeur, l’objet et le début du message.'
heading: 'Ce que reçoit l’assistant'
search: 'Indexation : l’objet, l’expéditeur et le début de chaque message.'
summary: 'Les messages d’une conversation dont vous demandez le résumé'
writing_help: 'Rédaction : votre objet, ce que vous avez tapé, et autant de conversation que le réglage ci-dessus le permet.'
seg:
off: 'Désactivé'
on: 'Activé'
accounts:
colour:
change: 'Changer la couleur de %account%'
swatch:
'0': Orange
'1': Vert
'2': Bleu
'3': Violet
'4': Ambre
'5': Rose
'6': Bleu canard
'7': Olive
delete: Supprimer le compte
delete_confirm: 'Supprimer %account% ? Tous les messages synchronisés de ce compte seront définitivement supprimés, sans retour possible.'
disable: Désactiver le compte
edit: Modifier le compte
empty: Aucun compte pour l’instant. Ajoutez-en un pour commencer à synchroniser du courrier.
enable: Activer le compte
folders:
always_synced: La boîte de réception est toujours synchronisée
button: Choisir les dossiers à synchroniser
empty: Aucun dossier pour l’instant. Ils sont listés après la première synchronisation.
intro: >-
Désactivez un dossier et plMail cesse de le récupérer. Le courrier
déjà stocké reste où il est, et réactiver le dossier reprend là où
cela s’était arrêté.
placeholder: 'Un dossier qui ne fait que regrouper d’autres dossiers — il n’y a rien à synchroniser dedans'
start_sync: 'Commencer à synchroniser %folder%'
stop_sync: 'Arrêter de synchroniser %folder%'
title: 'Dossiers — %account%'
heading: Comptes mail
make_primary: Définir comme principal
make_primary_explained: 'Envoyer les nouveaux messages depuis %account% par défaut'
reconnect: Reconnecter
reconnect_explained: 'Se reconnecter à %account% — pour accorder une autorisation refusée, ou après un changement de mot de passe'
move_down: 'Descendre %account% dans la liste'
move_up: 'Monter %account% dans la liste'
order_hint: >-
Faites glisser pour organiser cette liste. L’ordre ne sert qu’à
l’affichage des comptes — le compte d’envoi des nouveaux messages est
celui marqué Principal.
password_help: Laissez vide pour conserver le mot de passe actuel.
primary: Principal
primary_explained: Les nouveaux messages sont envoyés depuis ce compte par défaut.
push:
lapsed_hint: >-
L’enregistrement push a expiré et n’a pas été renouvelé : plus rien
n’est livré. Le renouvellement se fait tout seul chaque jour — si cela
se reproduit, le worker des tâches planifiées est arrêté. Le courrier
est toujours synchronisé selon le calendrier.
degraded_hint:
gmail: >-
Le push est enregistré mais rien n’est arrivé récemment.
L’abonnement push Pub/Sub dans Google Cloud est peut-être absent ou
pointe ailleurs. Le courrier est toujours synchronisé selon le
calendrier.
microsoft: >-
L’abonnement push a expiré et rien n’arrive. Réenregistrez-le pour
retrouver la livraison instantanée. Le courrier est toujours
synchronisé selon le calendrier.
failed:
gmail: >-
Le push n’a pas pu être activé — Google a rejeté l’enregistrement
de la surveillance. Vérifiez que GMAIL_PUBSUB_TOPIC désigne un
sujet Pub/Sub existant et que ce sujet accorde à
gmail-api-push@system.gserviceaccount.com le rôle Éditeur Pub/Sub.
Le compte est toujours synchronisé selon le calendrier.
microsoft: >-
Le push n’a pas pu être activé — Microsoft doit pouvoir joindre ce
serveur en HTTPS. Vérifiez votre proxy inverse et APP_PUBLIC_URL.
Le compte est toujours synchronisé selon le calendrier.
health:
active: Push
degraded: Push (ne livre pas)
inactive: Planifié
lapsed: Push (expiré)
not_configured: >-
Le push n’est pas disponible sur ce serveur — il faut une adresse HTTPS
publique et, pour Gmail, un sujet Cloud Pub/Sub.
off_hint: Le courrier est vérifié selon un calendrier. Activez le push pour une livraison instantanée.
on_hint:
gmail: Le nouveau courrier arrive immédiatement via les notifications push de Gmail.
microsoft: Le nouveau courrier arrive immédiatement via les notifications push de Microsoft.
title: Livraison instantanée
reorder: Faites glisser pour réorganiser
status:
active: Actif
disabled: Désactivé
subheading: Ajoutez, modifiez, activez ou supprimez les boîtes que vous synchronisez.
type:
imap: IMAP
oauth: '%provider% (OAuth)'
aliases:
add: 'Ajouter'
add_placeholder: 'Ajouter une autre adresse…'
catch_all:
add: 'Définir comme fourre-tout'
hint: 'Si toutes les adresses d’un domaine arrivent dans cette boîte, ajoutez le domaine ici. Une réponse part alors de l’adresse à laquelle le mail a été envoyé, sans avoir à ajouter chacune ci-dessus.'
label: 'Domaines fourre-tout'
placeholder: 'example.com'
remove: 'Supprimer %domain%'
delete: 'Supprimer'
disable: 'Désactiver'
empty: 'Aucune adresse pour l’instant.'
enable: 'Activer'
heading: 'Adresses e-mail'
make_primary: 'Définir comme principale'
ms_sender_hint: 'Outlook envoie avec l’alias principal de votre compte quelle que soit l’adresse choisie ici — changez-le dans vos'
ms_sender_hint_link: 'paramètres de compte Microsoft'
name_for: 'Nom d’expéditeur pour %alias%'
name_placeholder: 'Nom d’expéditeur'
name_save: 'Enregistrer le nom'
primary: 'Principale'
refresh: 'Actualiser depuis le fournisseur'
subheading: 'Les adresses sous lesquelles ce compte envoie et reçoit.'
system: 'système'
categories:
add: "Ajouter"
created: "Catégorie « %name% » créée."
delete: "Supprimer la catégorie"
delete_confirm: "Supprimer « %name% » ? Le courrier qui y est classé retourne dans l’onglet où il serait sinon. Aucun courrier n’est supprimé."
deleted: "Catégorie « %name% » supprimée."
empty: "Vous n’avez pas encore d’onglet personnel."
error:
empty: "Une catégorie a besoin d’un nom."
reserved: "Ce nom appartient à l’un des onglets intégrés."
taken: "Vous avez déjà une catégorie de ce nom."
too_long: "Ce nom est trop long (40 caractères au maximum)."
filters_link: "Réglages → Filtres."
heading: "Vos propres onglets"
hint: "Un onglet apparaît dans la boîte de réception tant qu’il contient du courrier. Le courrier y arrive par un filtre dont l’action est « Classer dans une catégorie » — configurez-en un dans"
name_label: "Nom"
placeholder: "p. ex. Livraisons"
rename: "Renommer"
renamed: "Renommée en « %name% »."
subheading: "Des onglets de boîte de réception que vous nommez vous-même, à côté des cinq fournis avec plMail."
clock:
heading: Horloge
subheading: Si les heures s’écrivent au format 12 ou 24 heures, et où l’heure actuelle s’affiche. Rien n’est stocké différemment — seuls les chiffres changent.
label: Horloge
follow_language: 'Suivre votre langue (%sample%)'
option:
'12': '12 heures (%sample%)'
'24': '24 heures (%sample%)'
placement:
label: 'Afficher l’heure'
option:
topbar: 'Sur le bouton Bientôt de la barre du haut'
brand: 'Sous le nom plMail'
sidebar: 'En bas de la barre latérale'
'off': 'Nulle part'
device_pairing:
pair_device: "Associer un appareil"
scan_title: "Scannez ceci avec l’application plMail"
scan_hint: "Le code ne fonctionne qu’une fois et expire au bout de deux minutes. Il ne contient pas votre mot de passe d’application — l’application l’échange contre un nouveau."
qr_alt: "Code d’association"
expires: "Expire à %time%."
open_in_app: "Ouvrir dans l’application"
app_passwords:
copy: Copier
copy_now: Voici votre nouveau mot de passe d’application
copy_now_hint: >-
Copiez-le maintenant — il n’est pas stocké et ne peut plus être affiché.
Si vous le perdez, révoquez-le et générez-en un autre.
empty: Aucun mot de passe d’application pour l’instant. Générez-en un pour connecter une application mail.
generate: Générer
heading: Mots de passe d’application
last_used: 'Dernière utilisation le %date%'
name_placeholder: 'À quoi sert-il ? p. ex. iPhone — Sterna'
never_used: Jamais utilisé
revoke: Révoquer
revoke_confirm: 'Révoquer « %name% » ? Toute application qui l’utilise sera immédiatement déconnectée.'
setup_heading: Connecter une application
setup_hint: >-
Utilisez votre adresse e-mail comme nom d’utilisateur et le mot de passe
d’application comme mot de passe. Si l’application demande un serveur ou
une URL JMAP, donnez-lui celle-ci — pas l’adresse /jmap/api, qui n’accepte
que les POST.
subheading: >-
Connectez-vous à des applications mail tierces qui parlent JMAP. Chaque
application reçoit son propre mot de passe, révocable séparément.
appearance:
accent:
heading: Couleur d’accent
background:
heading: Arrière-plan
solid: Couleur unie
theme: Défaut du thème
upload: Envoyer une image
density:
comfortable: Confortable
compact: Compacte
cosy: Douillette
follow: Suivre
heading: Densité
subheading: L’espace accordé à chaque ligne. Réglez-la une fois pour tout, ou donnez à un volet la sienne.
surface:
list: Liste des messages
reading: Volet de lecture
sidebar: Barre latérale
motion:
full: Complètes
heading: Animations
minimal: Minimales
none: Aucune
reduced: Si votre système demande moins d’animations, plMail le suit à la place — quel que soit le choix fait ici.
subheading: À quel point l’interface bouge quand quelque chose apparaît. Minimales fait un fondu sans rien déplacer.
export: Exporter le thème
glass:
heading: Verre
paneAlpha: Opacité des panneaux
paneAlphaHint: La barre latérale, la barre du haut, le volet principal et l’agenda — le cadre de l’application. Seul l’arrière-plan se trouve derrière eux.
paneBlur: Flou
popoverAlpha: Opacité des fenêtres et menus
popoverAlphaHint: La fenêtre de rédaction, les boîtes de dialogue et les menus. Chacun est posé sur un panneau, les deux couches transparaissent donc à la fois. Les garder presque opaques est ce qui les rend lisibles.
radius: Arrondi des coins
scrimAlpha: Assombrissement de l’arrière-plan
subheading: À quel point l’arrière-plan transparaît à travers vos panneaux.
heading: Apparence
import: Importer un thème
layout:
boxed: Encadrée
flat: À plat
heading: Disposition
subheading: Comment l’interface est encadrée. Encadrée fait flotter chaque panneau comme une carte ; à plat pose la barre du haut et la barre latérale directement sur l’arrière-plan et n’encadre que le volet principal.
list:
accountCorner: Coin du compte
accountCornerHint: Le triangle coloré dans le coin d’une ligne, qui indique sur quel compte elle est arrivée. Seulement dessiné dans une liste qui mélange les comptes.
heading: Liste des messages
listAvatars: Pastilles d’expéditeur
listAvatarsHint: Le cercle coloré portant l’initiale de l’expéditeur. Désactivé, il devient un simple cercle au lieu de disparaître — c’est aussi la case à cocher de la ligne.
tabUnreadCount: 'Nombre de non-lus sur les onglets'
tabUnreadCountHint: 'Le nombre à côté du nom de chaque onglet : combien de conversations de cette catégorie contiennent du courrier non lu. Les onglets s’additionnent pour donner le badge de la boîte de réception dans la barre latérale. La pastille « 3 nouveaux » est distincte et reste.'
previewLines: Lignes d’aperçu
previewLines0: Aucune
previewLines1: Une ligne
previewLines2: Deux lignes
subheading: Ce qu’affiche chaque ligne de la liste.
unread:
standard: Standard
strong: Marqué
subtle: Discret
unreadEmphasis: Lignes non lues
logo:
colour: 'Couleur'
heading: Logo
icon: 'Icône'
independent: 'Choisir séparément'
linked: 'Suivre le thème'
motif:
airmail: 'Par avion'
at-horn: 'Cor @'
blue-horn: 'Cor bleu'
happy-mail: 'Courrier joyeux'
love-letter: 'Lettre d’amour'
mailbox: 'Boîte aux lettres'
pl: 'Classique'
pl-stamp: 'Timbre pl'
snail-mail: 'Courrier escargot'
wax-seal: 'Sceau de cire'
original: 'Original'
style:
aurora: 'Aurore'
berry: 'Baie'
blue-tonal: 'Camaïeu bleu'
bronze-flick: 'Touche bronze'
bronze-ink: 'Bronze et encre'
burgundy: 'Bordeaux'
charcoal-amber: 'Charbon et ambre'
cobalt-coral: 'Cobalt et corail'
copper: 'Cuivre'
deep-violet: 'Violet profond'
ember: 'Braise'
espresso-cream: 'Expresso et crème'
forest: 'Forêt'
forest-lime: 'Forêt et citron vert'
graphite-red: 'Graphite et rouge'
indigo-violet: 'Indigo–violet'
ink: 'Encre'
midnight-gold: 'Minuit et or'
navy-sky: 'Marine et ciel'
ocean: 'Océan'
petrol-copper: 'Pétrole et cuivre'
plum-rose: 'Prune et rose'
postal: 'Postal'
product-blue: 'Bleu produit'
red-flick: 'Touche rouge'
sky-flick: 'Touche ciel'
slate: 'Ardoise'
sunset: 'Coucher de soleil'
teal-gold: 'Bleu canard et or'
tricolore: 'Tricolore'
twilight: 'Crépuscule'
violet-flick: 'Touche violette'
subheading: 'Votre icône, puis ses couleurs. La barre du haut et l’icône de l’onglet les portent.'
main:
heading: Volet principal
matchGlass: Suivre l’opacité du verre
subheading: Teinte et opacité de la zone de contenu principale, indépendamment de la barre latérale.
tint: Teinte d’arrière-plan
preview:
body: Un court message, pour que le volet de lecture ait quelque chose à montrer. Rien de tout cela n’est du vrai courrier — l’aperçu n’en charge jamais.
heading: Aperçu
hide: Masquer l’aperçu
resize: Redimensionner l’aperçu
compose_body: Une réponse à moitié écrite, pour que l’éditeur ait quelque chose dedans. Rien n’est envoyé.
compose_heading: Nouveau message
compose_send: Envoyer
compose_subject: 'Re : Notes sur la machine analytique'
compose_to: ada@plmail.test
field_date: Date
field_from: De
field_subject: Objet
field_to: À
reply: Répondre
sender1: Ada Lovelace
sender2: Grace Hopper
sender3: Kathleen Booth
sender4: Margaret Hamilton
sender5: Barbara Liskov
sender6: Karen Spärck Jones
sender7: Radia Perlman
sender8: Frances Allen
show: Afficher l’aperçu
snippet: Voici à quoi ressemble une ligne d’aperçu, et combien en tient avant que la ligne manque de place.
subheading: Vos réglages, sur une liste d’exemple. Rien ici n’est chargé depuis votre courrier.
to: à vous
value_from: Ada Lovelace <ada@plmail.test>
value_to: vous@plmail.test
subject1: Notes sur la machine analytique
subject2: 'Re : le brouillon du compilateur'
subject3: Notes d’assembleur, comme promis
subject4: Logiciel de guidage — la liste des priorités
subject5: 'Re : l’abstraction et la hiérarchie des types'
subject6: La pondération des termes, et pourquoi elle compte
subject7: Brouillon de l’arbre couvrant à relire
subject8: 'Optimiser la boucle interne : résultats'
reset: Rétablir les valeurs par défaut
subheading: Thème, densité, police et arrière-plan — toute l’apparence de l’application, au même endroit.
seg:
custom: 'Personnalisé'
default: 'Défaut du thème'
hidden: 'Masqué'
shown: 'Affiché'
text:
autoDerive: Déduire automatiquement
color: Couleur du texte
faint: Pâle
heading: Texte
muted: Atténué
subheading: Ajustez la couleur du texte pour qu’il reste lisible sur votre arrière-plan.
theme:
dark: Sombre
dusk: Crépuscule
heading: Thème
more: 'Plus de thèmes'
light: Clair
nord: Nord
paper: Papier
solar: Solaire
subheading: Jeu de couleurs de toute l’interface.
system: Système
typography:
family: Police
font:
grotesk: Grotesque
monospace: Chasse fixe
serif: Avec empattement
system: Système
heading: Typographie
scale: Taille du texte
scaleHint: S’applique à toute l’interface. La fenêtre de rédaction garde sa propre police et sa propre taille — celles-ci partent avec le message.
subheading: La police et la taille dans lesquelles l’interface est dessinée.
compose_defaults:
heading: 'Valeurs par défaut de rédaction'
invalid: 'Ce réglage n’a pas pu être enregistré.'
read_receipt:
for_alias: 'Accusés de lecture pour %alias%'
hint: 'Quand un expéditeur demande à être prévenu que vous avez lu son message.'
inherit: 'Défaut du compte (%mode%)'
label: 'Accusés de lecture'
mode:
always: 'Toujours envoyer'
ask: 'Demander à chaque fois'
never: 'Ne jamais envoyer'
saved: 'Enregistré.'
subheading: 'Ce que fait chacune de vos adresses par défaut quand elle envoie et reçoit.'
filters:
account: Compte
action:
applyLabel: Appliquer le libellé
archive: Ignorer la boîte de réception
fileInCategory: "Classer dans une catégorie"
markRead: Marquer comme lu
markSpam: Marquer comme spam
removeLabel: Retirer le libellé
saveToIntegration: Enregistrer les pièces jointes dans
star: Le suivre
trash: Mettre à la corbeille
add: Nouveau filtre
add_action: Ajouter une action
add_condition: Ajouter une condition
add_group: Ajouter un groupe
all_accounts: Tous les comptes
category_missing: "(catégorie supprimée)"
count: '%count% filtres'
count_capped: 'Correspond à %count%+ messages existants'
count_error: Pas encore un filtre utilisable
# Pluralised in the browser, which is where the number changes —
# the builder swaps %count% in without another round trip, so the
# string has to carry both shapes. See rule_builder_controller.
count_exact: 'Correspond à %count% message existant|Correspond à %count% messages existants'
delete: Supprimer le filtre « %name% »
delete_confirm: 'Supprimer le filtre « %name% » ? Le courrier qu’il a déjà trié reste où il est.'
delete_title: Supprimer le filtre
deleted: Filtre supprimé.
disable: Désactiver le filtre
disabled: Désactivé
edit: 'Modifier le filtre « %name% »'
edit_title: Modifier le filtre
empty: Aucun filtre pour l’instant
empty_hint: Les filtres trient le courrier à son arrivée — lui appliquer un libellé, ignorer la boîte de réception, le suivre, ou l’envoyer directement à la corbeille.
enable: Activer le filtre
error:
action_required: Ajoutez au moins une action, sinon le filtre ne ferait rien.
name_required: Donnez un nom au filtre.
field:
after: Reçu après
bcc: Cci contient
before: Reçu avant
body: Le corps contient
cc: Cc contient
filename: Pièce jointe nommée
from: De contient
fromAddress: 'De est exactement'
fromDomain: 'Le domaine de l’expéditeur est'
hasAttachment: A une pièce jointe
hasKeyword: Est
hasLabel: A le libellé
listId: La liste de diffusion est
maxSize: Plus petit que (octets)
minSize: Plus grand que (octets)
notKeyword: N’est pas
notLabel: N’a pas le libellé
subject: L’objet contient
text: N’importe où dans le message
to: À contient
folder:
choose: Choisir un dossier
# Shown when a "save attachments to" action names no folder of its
# own. The rule then stores none, and the upload lands wherever the
# connection is configured to put things — which is also what
# choosing the top level in the picker comes back as.
default: Dossier par défaut
heading: Filtres
join:
and: et
none: 'aucun de : %list%'
or: ou
keyword:
answered: répondu
draft: un brouillon
flagged: suivi
seen: lu
integration_missing: '(service déconnecté)'
label_missing: '(libellé supprimé)'
move_down: Placer « %name% » plus tard
move_up: Placer « %name% » plus tôt
name: Nom
name_placeholder: p. ex. Factures d’Acme
new_title: Nouveau filtre
no: Non
no_actions: Aucune action pour l’instant
no_categories: "Aucune catégorie pour l’instant — créez-en une d’abord."
no_integrations: 'Aucun service connecté — configurez-en un d’abord dans Intégrations.'
of_the_following: des conditions suivantes
op:
all: Toutes
any: Au moins une
none: Aucune
placeholder:
date: Choisir une date
number: 0
text: Saisissez une valeur…
already_running: Ce filtre est déjà en cours d’exécution.
queued: En file — application au courrier existant en arrière-plan.
remove_action: Retirer l’action
empty_group: 'Ce groupe est vide — il ne correspond à rien tant que vous n’ajoutez pas de condition.'
no_conditions: 'Aucune condition : cette règle agit sur chaque message de sa portée.'
remove_condition: Retirer la condition
remove_group: Retirer le groupe
reorder: Faites glisser pour réorganiser
run: Appliquer au courrier existant
run_state:
completed: 'Appliqué à %count% messages'
failed: 'Exécution arrêtée en cours de route — %count% messages traités'
queued: 'En file…'
running: 'Application… %count% jusqu’ici'
run_confirm: 'Appliquer « %name% » au courrier que vous avez déjà ? Cela peut déplacer et réétiqueter beaucoup de messages d’un coup.'
saved: Filtre enregistré.
spam_rule_name: 'Spam : %sender%'
stop: Arrêter après ce filtre
stop_help: Les filtres suivants sont ignorés pour tout message auquel celui-ci correspond.
subheading: Triez le courrier automatiquement à son arrivée.
summary:
# With an account chosen the scope IS the rule, so it is the
# subject of the sentence rather than a clause on the end.
every_message: 'c’est n’importe quel message'
every_message_in: 'c’est n’importe quel message de %account%'
full: 'Si %conditions% → %actions%'
in_account: '%conditions%, dans %account%'
# Two rules saving to the same connection read identically without
# this, which is exactly what picking a folder was for.
into_folder: '%action% dans %folder%'
no_actions: 'Si %conditions% → (aucune action pour l’instant)'
then: Alors
when: Quand
yes: Oui
handwriting:
# The HANDWRITTEN signature — a picture stamped onto a PDF. Not the
# `signature` section, which is the text appended to outgoing mail. The
# two are unrelated and the wording has to keep them apart.
heading: Signature manuscrite
subheading: Dessinez-la une fois, et placez-la sur un PDF sans la redessiner. C’est une image de votre nom, pas un certificat numérique.
saved: Votre signature enregistrée
save: Enregistrer la signature
clear: Effacer
remove: Supprimer la signature enregistrée
health:
awaiting:
calendar_resync: >-
Synchronisation lancée. En attente de son résultat — cette carte dira
ce qui s’est passé dès qu’elle le saura.
confirm:
destructive: >-
Ceci jette définitivement le travail en attente. Rien n’est relancé et
rien ne peut être récupéré. Continuer ?
fact:
granted_at: 'Connecté le'
last_full_resync: 'Toute la boîte relistée (%count%×)'
never: 'jamais'
never_delivered: 'rien n’est jamais arrivé'
never_run: 'aucune exécution enregistrée'
not_recorded: 'non enregistré'
not_registered: 'non enregistré'
push_expires: 'L’enregistrement expire'
push_last_delivered: 'Dernière notification reçue'
push_last_renewal: 'Dernier renouvellement'
flash:
calendar_resync: >-
La synchronisation de %calendar% a été demandée. Elle tourne
maintenant en arrière-plan, et la carte ci-dessous dira comment elle
s’est passée.
push_repair_failed: >-
Impossible de réenregistrer la livraison instantanée pour %account%. Il
reste sur la vérification planifiée, votre courrier continue donc
d’arriver. La carte ci-dessous montre ce qui est connu.
push_repaired: >-
Livraison instantanée réenregistrée pour %account%.
queue_discarded: '%count% tâches abandonnées supprimées.'
queue_retried: '%count% tâches abandonnées remises en file.'
heading: 'Santé des comptes'
healthy:
body: >-
Vos comptes sont connectés, vos agendas se synchronisent et rien ne
vous attend. Si le courrier cesse un jour d’arriver, Santé des comptes
revient dans la liste des réglages et cette page en donne la raison.
title: 'Tout fonctionne'
issue:
account_reconnect:
body: >-
Le nouveau courrier n’arrive plus pour ce compte, pas plus que
tout ce qui en dépend — synchronisation d’agenda, filtres appliqués
à la réception, et envoi depuis cette adresse. Le courrier déjà
téléchargé est en sécurité et toujours là. Cela arrive quand un mot
de passe est changé, que l’authentification à deux facteurs est
activée, ou que la connexion est révoquée depuis la page de sécurité
du fournisseur.
title: '%account% demande que vous vous reconnectiez'
account_grant_weekly_expiry:
body: >-
Le courrier arrive toujours. Mais la dernière connexion de ce compte
a duré %days% jours avant que Google ne l’accepte plus, et celle-ci
a maintenant à peu près le même âge — elle cessera donc
probablement de fonctionner d’ici un jour ou deux.
C’est ce que fait Google à une application OAuth dont l’écran de
consentement est encore en Test : les jetons de rafraîchissement
qu’elle émet expirent au bout d’environ une semaine, quelle que soit
la façon dont l’application les demande. Se reconnecter fait gagner
une semaine et ne règle rien. La solution est dans la console Google
Cloud — passez le statut de publication de l’écran de consentement
en Production. Publier n’est pas la même chose que faire vérifier ;
une application non vérifiée fonctionne toujours, elle affiche
simplement un écran d’avertissement la première fois.
Si vous ne l’avez pas laissée en Test, ignorez ceci — autre chose
a mis fin à cette connexion plus tôt, et cela ne se reproduira
peut-être pas.
title: '%account% devra probablement être reconnecté d’ici un jour ou deux'
account_reconnect_weekly:
body: >-
Le nouveau courrier n’arrive plus pour ce compte, pas plus que
tout ce qui en dépend — synchronisation d’agenda, filtres appliqués
à la réception, et envoi depuis cette adresse. Le courrier déjà
téléchargé est en sécurité et toujours là.
Cette connexion a duré %days% jours, ce que fait Google à une
application OAuth dont l’écran de consentement est encore en Test :
les jetons de rafraîchissement qu’elle émet expirent au bout d’environ
une semaine. Si c’est le cas de cette installation, se reconnecter
relancera le courrier et la même chose se reproduira la semaine
prochaine. Ce qui l’empêche se trouve dans la console Google Cloud —
passez le statut de publication de l’écran de consentement en
Production. Publier n’est pas la même chose que faire vérifier ;
une application non vérifiée fonctionne toujours, elle affiche
simplement un écran d’avertissement la première fois.
title: '%account% demande que vous vous reconnectiez — et le redemandera dans une semaine'
account_scope_missing:
body: >-
Certaines des autorisations demandées par plMail à la connexion de ce
compte n’ont pas été accordées : une partie ne fonctionne donc pas et
ne peut pas fonctionner. Les agendas peuvent ne pas se synchroniser,
et les changements faits ici — marquer comme lu, archiver, suivre —
peuvent s’appliquer à l’écran puis être refusés par le fournisseur,
et annulés par la synchronisation suivante. Connectez à nouveau le
compte et autorisez tout ce qui vous est demandé.
title: '%account% n’a pas reçu un accès complet'
account_sync_failing:
body: >-
Plusieurs tentatives d’affilée ont échoué : le nouveau courrier
n’arrive donc pas pour ce compte, et tout ce qui en dépend — filtres
appliqués à la réception, compteurs de non-lus — est à l’arrêt. Le
courrier déjà là est en sécurité et inchangé. La connexion est
bonne, c’est donc le serveur de mail qui refuse ou est injoignable :
vérifiez qu’il fonctionne et que rien n’a changé côté serveur, port
ou mot de passe.
title: '%account% n’arrive plus à se synchroniser'
server_alert:
body: >-
Votre serveur de mail vous a envoyé ce message, reproduit ici mot
pour mot : « %alert% ». plMail ne peut rien y faire — une boîte
pleine, un mot de passe sur le point d’expirer ou un serveur sur le
point de déménager sont des choses que seuls vous ou votre
fournisseur pouvez régler. Il reste ici tant que le serveur le répète.
title: '%account% — un message de votre serveur de mail'
calendar_sync_failing:
body: >-
Cet agenda ne récupère plus les changements : il affiche ce qu’il
savait la dernière fois qu’il a fonctionné. Les événements ajoutés
ou déplacés ailleurs depuis ne sont pas encore là, et les changements
que vous faites ici ne sont pas envoyés.
title: '%calendar% ne se synchronise plus'
calendars_blocked:
body: >-
Tous se sont arrêtés pour la même raison, la carte ci-dessus — la
régler les répare ensemble. Ils affichent ce qu’ils savaient la
dernière fois qu’ils ont fonctionné, et rien n’y a été supprimé.
title: '%count% agendas ne se synchronisent pas : %calendars%'
integration_reconnect:
body: >-
Enregistrer des pièces jointes dans %connection% et y joindre des
fichiers ne fonctionnera pas tant qu’il n’est pas reconnecté. Votre
courrier n’est pas concerné — c’est seulement le lien vers ce
service. Rien de ce qui y est stocké n’a été touché.
title: '%connection% doit être reconnecté'
integration_scope_missing:
body: >-
Cette connexion fonctionne, mais certaines des autorisations
demandées par plMail n’ont pas été accordées — une partie ne
fonctionnera donc pas et ne peut pas fonctionner. La navigation peut
revenir vide alors que l’enregistrement réussit, ou l’inverse.
Connectez-la à nouveau et autorisez tout ce qui vous est demandé.
title: '%connection% n’a pas reçu un accès complet'
push_degraded:
body: >-
L’enregistrement est actif et n’a pas expiré, mais du courrier est
arrivé sans jamais avoir été annoncé — les notifications se perdent
donc quelque part entre le fournisseur et cette installation, ce
n’est pas qu’elles ne sont pas demandées. Pour Gmail, cela désigne
l’abonnement Pub/Sub dans Google Cloud : vérifiez qu’il transmet
toujours votre sujet à cette adresse. En attendant, votre courrier
continue d’arriver via la vérification planifiée, quelques minutes
plus tard que prévu.
title: 'La livraison instantanée est enregistrée mais n’arrive pas pour %account%'
push_lapsed:
body: >-
L’enregistrement a expiré et n’a pas été renouvelé : plus rien n’est
envoyé en push. Le renouvellement se fait tout seul une fois par
jour ; si la dernière exécution ci-dessous date de plusieurs jours,
le worker des tâches planifiées est arrêté et c’est lui qu’il faut
réparer, pas ce compte. Votre courrier continue d’arriver via la
vérification planifiée, quelques minutes plus tard que prévu.
title: 'La livraison instantanée a expiré pour %account%'
queue_work_abandoned:
body: >-
%count% tâches d’arrière-plan ont essayé, échoué à plusieurs
reprises, et ont été mises de côté pour cesser de réessayer. C’est
généralement la conséquence d’un des problèmes ci-dessus plutôt
qu’une anomalie distincte — réglez-le d’abord, puis remettez-les en
file.
title: '%count% tâches d’arrière-plan ont été abandonnées'
outcome:
calendar_failed_again: >-
Nouvel échec. Ce qu’il a indiqué cette fois figure ci-dessous — la
synchronisation a tourné, elle n’a simplement pas fonctionné.
calendar_still_waiting: >-
La synchronisation a été lancée, mais rien n’est encore revenu.
Réessayez, ou rechargez la page pour voir où elle en est.
calendar_synced: 'Synchronisé. Cet agenda est de nouveau à jour.'
pending:
calendar_resync: 'Lancement de la synchronisation…'
push_resubscribe: 'Réactivation…'
queue_discard: 'Suppression…'
queue_retry: 'Remise en file…'
reconnect: 'Redirection vers %provider%…'
reconnect_generic: 'Redirection vers la connexion…'
repair:
calendar_resync:
label: 'Essayer de synchroniser maintenant'
promise: >-
Demande à cet agenda de se resynchroniser tout de suite, et le
remet sur le calendrier normal. Rien n’y est supprimé.
integration_grant:
label: 'Accorder un accès complet'
promise: >-
Vous ramène à %connection% pour vous reconnecter et accorder tout
ce que plMail demande. Rien de ce qui y est stocké n’est touché.
integration_reconnect:
label: 'Reconnecter'
promise: >-
Vous envoie vous reconnecter, puis rétablit la connexion existante.
Vos filtres et destinations enregistrées continuent de fonctionner.
push_resubscribe:
label: 'Réactiver la livraison instantanée'
promise: >-
Réenregistre ce compte pour la livraison instantanée. Votre
courrier continue d’arriver dans tous les cas pendant que cela se
règle.
queue_discard:
label: 'Les supprimer'
promise: >-
Jette les tâches abandonnées sans les exécuter. Pas d’annulation
possible, et ce qu’elles n’avaient pas terminé reste inachevé.
queue_retry:
label: 'Les remettre en file'
promise: >-
Réessaie une fois les tâches abandonnées. Sans risque — celles qui
échouent encore reviennent simplement ici.
grant_calendar:
label: 'Accorder un accès complet'
promise: >-
Vous ramène chez le fournisseur pour vous connecter en tant que
%account% et accorder tout ce que plMail demande. Rien ne change
dans votre courrier, et aucun courrier n’est téléchargé à nouveau.
reconnect_early:
label: 'Se reconnecter maintenant'
promise: >-
Vous fait vous reconnecter avant l’expiration de celle-ci, pour que
rien ne s’arrête entre-temps. Votre courrier, vos dossiers,
libellés, filtres, agendas et réglages restent exactement tels
quels. Vous devez vous connecter en tant que %account%. Cela fait
gagner une semaine — cela n’empêche pas que cela se reproduise, ce
que fait la publication de l’écran de consentement.
reconnect:
label: 'Reconnecter ce compte'
promise: >-
Vous fait vous reconnecter, puis place la nouvelle connexion sur ce
même compte. Votre courrier, vos dossiers, libellés, filtres,
agendas et réglages restent exactement tels quels — rien n’est
téléchargé à nouveau et rien n’est supprimé. Vous devez vous
connecter en tant que %account% ; si vous choisissez une autre
adresse, elle sera refusée plutôt que substituée.
reconnect:
done: '%account% est de nouveau connecté. La synchronisation du courrier et de l’agenda rattrapera son retard dans les prochaines minutes.'
wrong_account: >-
Vous vous êtes connecté en tant que %actual%, mais ce compte est
%expected%. Rien n’a été modifié. Déconnectez-vous de %actual% chez ce
fournisseur, puis réessayez — substituer l’adresse aurait mélangé une
autre boîte à celle-ci.
subheading: >-
Tout ce qui a cessé de fonctionner, ce que cela signifie pour votre
courrier, et la plus petite chose qui le répare.
technical_detail: 'Détail technique'
compose_behavior:
folded: 'Replié'
forward_quote: 'Texte cité lors d’un transfert'
forward_quote_hint: 'Ouvrir un transfert avec l’original replié derrière la pastille, ou affiché en entier.'
send_feedback: Quand vous appuyez sur Envoyer
send_feedback_hint: 'Fermer la fenêtre tout de suite et décompter l’annulation dans une notification, ou garder la fenêtre ouverte et faire de son propre bouton Envoyer le bouton d’annulation.'
send_optimistic: La fermer
send_hold: La garder ouverte
heading: 'Rédaction'
open: 'Ouvert'
subheading: 'Le comportement de la fenêtre de rédaction pour vous, sur tous vos comptes.'
insights:
extractor:
flight: Vols
flight_hint: Numéros de vol et départs tirés des réservations et des e-mails d’enregistrement des compagnies.
github: GitHub
github_hint: Tickets et pull requests tirés des notifications de GitHub.
invoice: Factures
invoice_hint: Montants dus et échéances, lus dans les factures et relances de paiement.
otp: Codes de connexion
otp_hint: Codes à usage unique des e-mails de connexion et de vérification, avec l’expiration indiquée dans le mail.
parcel: Colis
parcel_hint: Numéros de suivi et avancement de la livraison tirés des confirmations d’expédition.
subscription: Abonnements
subscription_hint: Renouvellements automatiques et fins d’essai, avec le jour où ils prennent effet.
ticket: Billets
ticket_hint: Billets et réservations d’événements avec une date.
heading: Aperçus
pane: Bandeau au-dessus de la liste
pane_hint: >-
Affiche le prochain colis, vol ou billet dans un bandeau au-dessus de
votre boîte de réception. Le désactiver masque ce bandeau et rien
d’autre — plMail continue de lire ces informations dans votre courrier,
et elles restent dans le panneau À surveiller et sur le mail lui-même.
seg:
'off': 'Désactivé'
'on': 'Activé'
subheading: >-
Les informations que plMail lit dans votre courrier — colis, vols,
billets, activité GitHub — localement et selon des règles fixes plutôt
qu’avec un cloud ou un modèle ; en désactiver une arrête les nouvelles
cartes de cette source.
integrations:
ask_admin: 'Votre administrateur n’a pas activé ce service.'
auth:
appPassword: 'mot de passe d’application'
oauth2: 'connexion'
available_heading: 'Connecter un service'
badge:
ask_admin: 'non activé'
soon: 'bientôt'
checked: 'vérifié le %date%'
connect: Connecter
disabled: 'Connexion en pause'
disconnect: Déconnecter
disconnect_confirm: 'Déconnecter %name% ? Les fichiers déjà joints à des mails ne sont pas concernés.'
disconnected: 'Service déconnecté'
edit: Modifier
empty: 'Aucun service connecté pour l’instant.'
enabled: 'Connexion reprise'
field:
base_url: 'Adresse du serveur'
base_url_fixed: 'Connexion à %url%, définie par votre administrateur.'
name: Nom
name_help: 'Visible de vous seul, pour distinguer deux connexions.'
permissions:
immich: 'asset.read — voir vos photos et vidéos|asset.download — joindre le fichier original|asset.view — afficher les aperçus dans le sélecteur|asset.upload — enregistrer des pièces jointes dans Immich|album.read — lister et parcourir vos albums|albumAsset.create — classer les pièces jointes enregistrées dans un album'
permissions_heading: 'Autorisations nécessaires à cette clé'
permissions_note: 'Accorder toutes les autorisations à la clé fonctionne aussi, et c’est plus simple si vous préférez ne pas cocher de cases.'
secret:
dropbox: 'Jeton d’accès'
googleDrive: 'Jeton d’accès'
googlePhotos: 'Jeton d’accès'
immich: 'Clé d’API'
nextcloud: 'Mot de passe d’application'
oneDrive: 'Jeton d’accès'
paperless: 'Jeton d’API'
secret_help:
dropbox: ''
googleDrive: ''
googlePhotos: ''
immich: 'Créez-en une dans Immich sous Paramètres du compte → Clés API.'
nextcloud: 'Créez-en un dans Nextcloud sous Paramètres → Sécurité → Appareils et sessions. N’utilisez pas votre mot de passe de connexion.'
oneDrive: ''
paperless: 'Copiez-le depuis Paperless sous Mon profil → Jeton d’authentification API.'
secret_unchanged: 'Laissez vide pour conserver l’identifiant enregistré'
username: Nom d’utilisateur
heading: Intégrations
not_implemented: 'plMail ne sait pas encore communiquer avec ce service.'
oauth_no_code: 'Le service n’a pas renvoyé de code d’autorisation. Veuillez réessayer.'
oauth_state_mismatch: 'Cette connexion n’a pas pu être vérifiée. Veuillez recommencer.'
not_oauth: 'Ce service n’utilise pas cette méthode de connexion.'
pause: Mettre en pause
paused: en pause
resume: Reprendre
save_tests: 'L’enregistrement vérifie la connexion immédiatement.'
saved: 'Service connecté'
saved_with_error: 'Enregistré, mais le test de connexion a échoué'
subheading: 'Joignez des fichiers depuis d’autres services, et enregistrez-y des pièces jointes.'
test: Tester
test_failed: 'Échec du test de connexion'
test_ok: 'La connexion fonctionne'
unavailable_heading: 'Non disponible ici'
calendar_behaviour:
button: Bouton d’agenda
button_hint: 'Les vues que parcourt le bouton de la barre du haut. Une vue qu’il omet n’est pas supprimée : la poignée de redimensionnement y mène toujours.'
heading: Comportement
option_calendar: Partagé uniquement
option_none: Les trois
option_split: Pleine largeur uniquement
subheading: 'Comment le bouton d’agenda de la barre du haut passe d’une vue à l’autre.'
calendars:
account_hint: Là où sont classés les événements trouvés dans le courrier de %address%.
caldav:
connect: Connecter un serveur CalDAV
disconnect: Déconnecter « %name% »
disconnect_confirm: >-
Déconnecter « %name% » ? Chaque agenda reflété depuis ce serveur est
supprimé ici. Ce qui venait de votre courrier plutôt que d’un agenda
est d’abord déplacé dans votre agenda par défaut.
disconnect_title: Déconnecter ce serveur
field:
address: Adresse du serveur
address_help: >-
L’adresse CalDAV que votre serveur vous indique, ou simplement son
domaine — plMail demande au domaine où se trouvent ses agendas
avant d’abandonner.
name: Nom
name_help: Comment appeler cette connexion dans vos réglages.
reuse: Utiliser le mot de passe d’un de mes comptes mail
reuse_account: Le mot de passe de quel compte
reuse_account_none: Choisissez un compte…
reuse_help: >-
Désactivé par défaut, et mieux vaut le laisser ainsi : la plupart
des serveurs veulent un mot de passe d’application, et cocher ceci
envoie un mot de passe que vous avez donné à plMail pour votre boîte
à l’adresse ci-dessus.
secret: Mot de passe d’application
secret_help: >-
Créez-en un sur votre serveur plutôt que d’utiliser votre mot de
passe de connexion — iCloud et Fastmail n’acceptent rien d’autre.
username: Nom d’utilisateur
username_help: Le nom de compte sous lequel votre serveur vous connaît.
intro: >-
N’importe quel serveur CalDAV : Nextcloud, Radicale, Baïkal, Fastmail,
iCloud, une machine au fond d’un placard. Les agendas Gmail et Outlook
ne passent pas par là — ils arrivent avec le compte mail.
submit: Connecter et trouver les agendas
title: Connecter un serveur CalDAV
count: '%count% agendas'
default: Par défaut
delete: Supprimer l’agenda « %name% »
delete_title: Supprimer l’agenda
edit: Modifier l’agenda « %name% »
empty: Aucun agenda pour l’instant.
from: Depuis %name%
heading: Agendas
hide: Masquer l’agenda
last_synced: 'Dernière synchronisation %when%'
make_default: Faire de « %name% » l’agenda où arrivent les nouveaux événements
make_default_title: Définir par défaut
mirrored: Reflété
mirrored_hint: Synchronisé avec %name%.
never_synced: Pas encore synchronisé
read_only: Lecture seule
read_only_hint: Cet agenda n’accepte pas de modifications depuis ici.
show: Afficher l’agenda
sources:
empty: >-
Aucun compte ni aucune connexion ici ne porte encore d’agendas. Les
comptes Gmail et Outlook en ont ; connectez un serveur CalDAV pour le
reste.
find: Trouver les agendas de %name%
heading: D’où viennent les agendas
why_admin: >-
Votre administrateur n’a peut-être pas ajouté les autorisations
d’agenda à l’inscription d’application avec laquelle plMail se
connecte. Le courrier fonctionne sans ; les agendas, non.
why_consent: >-
L’écran de consentement de Google permet de décocher l’accès à
l’agenda tout en autorisant le courrier. Reconnectez le compte et
laissez la case de l’agenda cochée.
why_empty: Aucun agenda n’apparaît ?
why_none: Le compte n’a peut-être simplement aucun agenda.
subheading: >-
Nom, couleur et fuseau horaire, quels agendas les vues affichent, et où
arrive un nouvel événement.
subscribe:
default_locked: >-
Les nouveaux événements arrivent ici, celui-ci reste donc. Faites
d’abord d’un autre agenda l’agenda par défaut.
empty: Il n’y a aucun agenda sur %name%.
intro: >-
Cochez les agendas de %name% à synchroniser avec plMail. Les
événements apparaissent dans la minute qui suit.
mirrored: Déjà reflété
primary: Principal
save: Enregistrer les abonnements
title: Trouver mes agendas
unsubscribe_note: >-
Décocher un agenda supprime la copie conservée ici. Ce qui venait de
votre courrier plutôt que de l’agenda est d’abord déplacé dans votre
agenda par défaut.
sync_now: Synchroniser « %name% » maintenant
sync_now_title: Synchroniser maintenant
labels:
count: '%count% libellés'
delete: Supprimer le libellé « %name% »
edit: Modifier le libellé « %name% »
empty: Aucun libellé pour l’instant — créez-en un, ou ils apparaîtront après la première synchronisation.
heading: Libellés
hide: Masquer le libellé
show: Afficher le libellé
subheading: Créez, renommez et organisez vos libellés, et choisissez lesquels apparaissent dans la barre latérale.
system: Système
profile:
heading: Votre profil
save: Enregistrer le profil
subheading: Le nom et l’image affichés sur le courrier que vous envoyez.
language:
heading: Langue
subheading: La langue de l’interface de plMail. Votre courrier reste tel qu’il a été écrit.
disposal:
delete_now: Boutons de suppression immédiate
delete_now_hint: >-
Propose Supprimer définitivement sur une ligne de Spam et de la corbeille,
et au-dessus d’une sélection cochée à ces endroits. Cela supprime aussi le
courrier de votre serveur de mail et ne peut pas être annulé : c’est donc
désactivé tant que vous ne l’activez pas.
heading: Suppression
'off': 'Désactivé'
'on': 'Activé'
subheading: Comment le courrier est jeté pour de bon.
nav:
accounts: Comptes mail
ai: 'Assistant'
aliases: Alias
app_passwords: Mots de passe d’application
appearance: Apparence
calendar_behaviour: Comportement
calendars: Agendas
disposal: Suppression
filters: Filtres
general: Général
group:
access: Accès
calendar: Agenda
features: Fonctions
mail: Courrier
personal: Personnel
health: 'Santé des comptes'
insights: Aperçus
integrations: Intégrations
labels: Libellés
notifications: Notifications
profile: Profil
read_receipts: Accusés de lecture
reading_pane: Volet de lecture
security: Sécurité
sharing: Partage
shortcuts: Raccourcis clavier
signature: Signatures
templates: 'Modèles'
notifications:
devices:
empty: >-
Aucun appareil n’est encore enregistré. Activer les notifications
ci-dessus enregistre ce navigateur ; une application mobile s’enregistre
elle-même.
heading: 'Appareils enregistrés'
never_delivered: 'Rien d’envoyé pour l’instant'
outcome:
accepted: 'Livrée'
failed: 'Échouée'
skipped: 'Non envoyée'
subscription-destroyed: 'Retiré'
remove: 'Retirer'
remove_confirm: >-
Retirer %device% ? Les notifications ne lui seront plus envoyées. Rien
n’est désinstallé ni désactivé sur l’appareil lui-même, et si son
application veut encore des notifications, elle se réenregistrera à son
prochain lancement.
removed: >-
Appareil retiré — plus rien ne lui est envoyé. Il se réenregistre de
lui-même si son application veut encore des notifications.
transport:
fcm: 'Firebase'
webpush: 'Web Push'
unverified: 'Non vérifié'
verified: 'Vérifié'
heading: Notifications
ios_hint: >-
Sur iPhone et iPad, les notifications ne fonctionnent qu’une fois plMail
ajouté à l’écran d’accueil : ouvrez-le dans Safari, touchez Partager, puis
« Sur l’écran d’accueil », et activez les notifications depuis là.
state_denied: >-
Bloquées dans les réglages de votre navigateur. Autorisez les notifications
pour ce site, puis réessayez.
state_error: Un problème est survenu. Réessayez.
state_off: 'Désactivées — cet appareil ne sera pas prévenu.'
state_on: Activées — cet appareil est prévenu du nouveau courrier.
state_pending: En attente de la confirmation de cet appareil…
state_unconfigured: Le push n’est pas configuré sur ce serveur.
state_unknown: Vérification…
state_unsupported: >-
Ce navigateur ne peut pas recevoir de notifications. Sur iPhone et iPad,
ajoutez d’abord plMail à l’écran d’accueil.
state_working: En cours…
subheading: >-
Soyez prévenu du nouveau courrier sur cet appareil, même quand plMail est
fermé.
this_device: Cet appareil
toggle: Activer les notifications
toggle_off: Désactiver les notifications
unconfigured: >-
Le push n’est pas configuré sur ce serveur — aucune clé VAPID n’est
définie. Lancez « bin/console app:push:generate-vapid-keys ».
password:
field:
current: Mot de passe actuel
new: Nouveau mot de passe
new_help: 'Au moins %count% caractères. Rien d’autre n’est exigé — une longue phrase dont vous vous souvenez vaut mieux qu’un mot court que vous oubliez.'
repeat: Répéter le nouveau mot de passe
flash:
changed: 'Mot de passe modifié. Chaque appareil sur lequel vous avez coché « Rester connecté » vous le redemandera.'
refused: 'Rien n’a été modifié — voyez le message sous le champ.'
heading: Mot de passe
remember_me_note: 'Changer votre mot de passe déconnecte tous les navigateurs mémorisés sauf celui-ci. C’est ce qui le rend utile quand un appareil disparaît.'
subheading: 'Ce avec quoi vous vous connectez. Vous seul pouvez le changer — même un administrateur ne peut pas le définir à votre place.'
submit: Changer le mot de passe
reading_pane:
heading: Volet de lecture
hint: 'Désactivé affiche la liste et le message l’un après l’autre. À droite place le message à côté de la liste quand la fenêtre a la place pour les deux — faites glisser le séparateur pour choisir la part de chacun.'
label: 'Afficher le message ouvert'
off: Désactivé
right: À droite
subheading: 'Où s’ouvre une conversation : à la place de la liste, ou à côté.'
security:
codes:
copy: Copier les codes
copy_now: Enregistrez vos codes de récupération maintenant
copy_now_hint: >-
C’est la seule fois où ils sont affichés. Gardez-les dans un endroit
accessible sans votre téléphone — un gestionnaire de mots de passe, ou
du papier dans un tiroir. Chacun ne fonctionne qu’une fois.
heading: Codes de récupération
hint: >-
Les codes de récupération vous permettent de revenir si vous perdez
votre téléphone. En générer un nouveau jeu remplace l’ancien : ce que
vous aviez noté cesse de fonctionner.
regenerate: Générer de nouveaux codes
remaining: '%count% inutilisés'
confirm_with_code: Code de votre application
devices:
empty: Aucun appareil n’est mémorisé. Un code vous sera demandé à chaque connexion.
expires: 'Expire le %date%'
heading: Appareils mémorisés
hint: >-
Les appareils qui sautent la demande de code pendant 30 jours. En
révoquer un prend effet immédiatement — il demandera un code dès le
prochain chargement de page.
last_used: 'Dernière utilisation le %date% depuis %ip%'
revoke: Révoquer
revoke_all: Révoquer tous les appareils mémorisés
revoke_all_confirm: >-
Chaque appareil mémorisé demandera un code la prochaine fois, y compris
celui-ci. Continuer ?
revoke_confirm: 'Ne plus faire confiance à %name% ? Un code lui sera demandé la prochaine fois.'
this_device: cet appareil
disable:
confirm: >-
Votre compte ne sera protégé que par votre mot de passe. Continuer ?
heading: Désactiver l’authentification à deux facteurs
hint: >-
Ceci supprime vos codes de récupération et cesse de faire confiance à
tous les appareils mémorisés.
submit: Désactiver
enable: Configurer l’authentification à deux facteurs
enrol:
cancel: Annuler
heading: Configurer l’authentification à deux facteurs
manual_copy: Copier la clé de configuration
manual_toggle: Impossible de scanner ? Saisissez une clé à la place
qr_alt: QR code pour configurer votre application d’authentification
step_app: >-
Installez une application d’authentification si vous n’en avez pas —
Google Authenticator, Aegis, 1Password et Bitwarden fonctionnent tous.
step_confirm: Saisissez le code à six chiffres que votre application affiche maintenant.
step_scan: Scannez ceci avec l’application.
submit: Confirmer
heading: Authentification à deux facteurs
pitch: >-
Votre compte est celui qui mérite le plus d’être protégé : quiconque y
accède peut réinitialiser le mot de passe de tout ce que vous possédez
d’autre, parce que c’est dans votre courrier qu’arrivent les liens de
réinitialisation. Un second facteur signifie qu’un mot de passe volé ne
suffit pas à lui seul.
status:
off: L’authentification à deux facteurs est désactivée
on: L’authentification à deux facteurs est activée
on_since: 'Activée le %date%'
subheading: Comment vous prouvez que c’est bien vous à la connexion.
sharing:
heading: Partage
subheading: >-
Des liens qui montrent une partie de votre agenda à quelqu’un sans compte,
et des pages qui lui permettent d’en réserver une heure.
shortcuts:
heading: "Raccourcis clavier"
hint: "c pour rédiger, e pour archiver, j et k pour parcourir une liste. Ils n’agissent que lorsque vous n’êtes pas en train de taper quelque part, et le courrier classé ainsi peut être annulé comme n’importe quel autre."
label: "Raccourcis"
'off': "Désactivés"
'on': "Activés"
show: "Afficher les raccourcis"
subheading: "Des touches uniques pour ce que vous faites toute la journée."
signature:
for_alias: 'Signature pour %alias%'
heading: Signatures
hint: 'Ajoutée en bas de chaque nouveau message, au-dessus de la réponse citée.'
label: Signature
overriding: 'Cette adresse a maintenant sa propre signature — modifiez-la ci-dessous.'
per_address:
count: 'Adresses avec leur propre signature : %number%'
disclosure: 'Utiliser une autre signature pour certaines adresses'
inherits: 'Utilise la signature du compte.'
override: 'En utiliser une autre'
override_for: 'Donner à %alias% sa propre signature'
revert: 'Utiliser la signature du compte'
revert_for: 'Revenir à la signature du compte pour %alias%'
signs_with_nothing: 'Vide : cette adresse ne signe donc avec rien.'
placeholder: 'Aucune signature'
reverted: 'Retour à la signature du compte.'
save: 'Enregistrer la signature'
saved: 'Enregistré.'
source:
clean: 'Rien n’a été supprimé.'
embedded: 'Images stockées dans la signature : %count%.'
failed: 'La signature n’a pas pu être rendue. Votre HTML n’a pas changé. Réessayez.'
html: 'HTML'
label: '%label% en HTML'
placeholder: 'Collez ou écrivez le HTML de votre signature…'
remote: 'Images qui n’ont pas pu être stockées et restent liées : %count%. Elles ne s’affichent pas ici et certains destinataires doivent d’abord les autoriser.'
removed: 'Supprimé, parce que les clients mail ne l’afficheraient pas ou que son envoi n’est pas sûr : %items%.'
rendered: 'Rendu'
toggle: 'Vue de la signature'
subheading: 'Ce qui est ajouté en bas des messages que vous écrivez.'
sorting:
again:
button: Redemander
hint: L’assistant répond une fois par message et garde la réponse. Redemandez après un changement de modèle, d’instruction ou de version de plMail — cela coûte un appel au modèle par message, c’est donc limité à votre courrier le plus récent.
label: Trier à nouveau le courrier récent
applies_to_new: Changer l’un de ces réglages reclasse en arrière-plan le courrier que vous avez déjà — une grosse boîte prend quelques minutes, laissez donc un moment aux onglets pour se stabiliser. Les conversations que vous avez vous-même déplacées dans un onglet ne sont pas touchées.
heading: Catégories
override:
hint: Un compte Gmail arrive déjà trié par Google. Ceci décide si plMail laisse ce tri tel quel ou répond lui-même.
label: Sur les comptes Gmail
plmail: Trier moi-même
provider: Garder celui de Google
source:
assistant: L’assistant
assistant_help: L’assistant lit chaque message et décide à quoi il sert. Meilleur pour le courrier qui ne s’annonce pas, et parfois sûr de lui à tort. Ce qu’il n’a pas encore traité retombe sur les règles.
label: Trié par
rules: Règles
rules_help: Les en-têtes uniquement — un en-tête de liste de diffusion, un lien de désinscription, un expéditeur connu. Prévisible et littéral, et ne demande jamais rien au modèle.
unavailable: Le tri par l’assistant nécessite que le tri du courrier soit activé pour cette installation, et pour vous.
subheading: Si votre boîte de réception a des onglets, dans lequel arrive un message, et qui décide.
tabs:
assistant_warning: L’assistant lit toujours chaque nouveau message pour décider dans quel onglet il va — des onglets que vous avez désactivés. Le courrier auquel il n’a pas encore répondu peut être retenu quelques secondes pendant ce temps. Choisissez Règles ci-dessous pour arrêter cela.
hint: Principal, Réseaux sociaux, Promotions et les autres. Désactivé, la boîte de réception s’affiche en une seule liste. Le courrier est toujours classé en arrière-plan, les onglets sont donc justes dès que vous les réactivez.
label: Onglets de la boîte de réception
'off': Une seule liste
'on': Onglets
timezone:
heading: Fuseau horaire
subheading: L’heure et la date dans lesquelles l’affichage se fait. Rien n’est réécrit — le même instant est simplement lu sur votre propre horloge.
label: Fuseau horaire
follow_default: 'Défaut du serveur (%timezone%)'
current_time: 'Il est actuellement %time% dans ce fuseau.'
title: Réglages
templates:
add: 'Nouveau modèle'
add_folder: 'Nouveau dossier'
body: 'Message'
body_placeholder: 'Rédigez le message. Utilisez « Insérer une variable » pour les parties qui changent.'
copy_of: 'Copie de %name%'
date:
after: 'après aujourd’hui'
before: 'avant aujourd’hui'
direction: 'Avant ou après aujourd’hui'
example: 'Écrit aujourd’hui, cela donne :'
format: 'Format'
heading: 'Date'
offset: 'Décalage'
pattern: 'Motif'
pattern_hint: 'Un motif utilise d pour le jour, M pour le mois, y pour l’année et E pour le jour de la semaine : dd/MM/yyyy, EEEE d MMMM.'
unit: 'Unité'
delete: 'Supprimer'
delete_confirm: 'Supprimer le modèle « %name% » ?'
deleted: 'Modèle supprimé.'
duplicate: 'Dupliquer'
duplicated: 'Modèle dupliqué.'
editor_empty: 'Choisissez un modèle pour le modifier, ou créez-en un nouveau.'
empty: 'Aucun modèle pour l’instant. Un modèle classé sous un compte est proposé en premier quand vous écrivez depuis ce compte.'
error:
folder_name_required: 'Donnez un nom au dossier.'
name_required: 'Donnez un nom au modèle.'
folder: 'Dossier'
folder_delete_confirm: 'Supprimer le dossier « %folder% » ? Ses modèles remontent d’un niveau et sont conservés.'
folder_deleted: 'Dossier supprimé. Ses modèles ont été conservés.'
folder_heading_new: 'Nouveau dossier'
folder_heading_rename: 'Renommer le dossier'
folder_in: 'Dans'
folder_name: 'Nom'
folder_saved: 'Dossier enregistré.'
format:
custom: 'Motif personnalisé'
full: 'Complet'
iso: 'ISO'
long: 'Long'
medium: 'Moyen'
short: 'Court'
weekday: 'Jour de la semaine'
group:
date: 'Date'
recipient: 'Destinataire'
sender: 'Expéditeur'
heading: 'Modèles'
insert_variable: 'Insérer une variable'
name: 'Nom'
name_placeholder: 'Relance de facture'
preview: 'Aperçu'
preview_heading: 'Tel qu’il serait inséré aujourd’hui, pour un destinataire d’exemple'
preview_no_subject: 'Sans objet'
preview_unavailable: 'Ajoutez un compte mail pour prévisualiser un modèle.'
# "Name <address>" exactly: it is read by the same code that reads a
# recipient chip in the compose window, so the preview fills a first
# name the way a real message would.
sample_recipient: 'Dana Whitfield <dana@example.org>'
saved: 'Modèle enregistré.'
signature:
automatic: 'Automatique — l’adresse depuis laquelle vous écrivez'
heading: 'Signature'
hint: 'Automatique suit l’adresse d’expédition et remplace la signature déjà présente dans le message. Une signature nommée reste, quelle que soit l’adresse d’expédition.'
subheading: 'Des messages que vous écrivez une fois et insérez pendant la rédaction.'
subject: 'Objet'
subject_hint: 'facultatif, remplit un objet vide'
subject_placeholder: 'Sans objet'
top_level: 'Aucun dossier'
tree:
add_folder_here: 'Nouveau dossier dans %folder%'
add_here: 'Nouveau modèle dans %folder%'
delete_folder: 'Supprimer le dossier %folder%'
rename: 'Renommer le dossier %folder%'
unit:
d: 'jours'
m: 'mois'
w: 'semaines'
shortcuts:
groups:
actions: "Sur le courrier"
actions_hint: "Ce qui est sélectionné ; sinon la conversation ouverte ; sinon la ligne en surbrillance."
anywhere: "Partout"
conversation: "Dans une conversation"
list: "Dans une liste"
keys:
archive: "Archiver"
back: "Revenir à la liste"
compose: "Écrire un nouveau message"
delete: "Supprimer"
forward: "Transférer"
go_archive: "Aller aux Archives"
go_drafts: "Aller aux Brouillons"
go_inbox: "Aller à la boîte de réception"
go_sent: "Aller aux Envoyés"
go_starred: "Aller aux Suivis"
help: "Afficher cette liste"
label: "Appliquer le libellé"
mark_read: "Marquer comme lu"
mark_unread: "Marquer comme non lu"
move: "Déplacer vers"
next: "Descendre d’une conversation"
next_conversation: "Ouvrir la conversation suivante"
open: "Ouvrir la conversation en surbrillance"
previous: "Monter d’une conversation"
previous_conversation: "Ouvrir la conversation précédente"
reply: "Répondre"
reply_all: "Répondre à tous"
search: "Rechercher"
select: "Sélectionner la conversation en surbrillance"
select_all: "Tout sélectionner sur la page"
select_none: "Vider la sélection"
select_read: "Sélectionner les lus"
select_starred: "Sélectionner les suivis"
select_unread: "Sélectionner les non lus"
snooze: "Mettre en attente"
spam: "Marquer comme spam"
star: "Suivre ou ne plus suivre"
undo: "Annuler la dernière action"
or: "ou"
switched_off: "Les raccourcis sont désactivés pour vous. Activez-les dans Réglages → Général."
then: "puis"
title: "Raccourcis clavier"
sidebar:
accounts:
add: Ajouter un compte
heading: Comptes
none: Aucun compte pour l’instant
colour: 'Marquage de couleur de %account%'
colour_disabled: 'Marquage de couleur de %account%, qui est désactivé'
open: 'Ouvrir %account%'
toggle: 'Afficher ou masquer les dossiers de %account%'
badge:
total: '%count% au total'
unread: '%count% non lus'
compose: Nouveau message
labels:
add: Créer un libellé
heading: Libellés
none: Aucun libellé pour l’instant
new_mail_here: 'Nouveau courrier dans %where%'
new_mail_here_count: '%count% nouveaux dans %where%'
nav:
archive: Archives
calendar: Agenda
drafts: Brouillons
inbox: Boîte de réception
more: Plus
sent: Envoyés
snoozed: En attente
spam: Spam
starred: Suivis
trash: Corbeille
unread: Non lus
toggle: Afficher ou masquer la barre latérale
snooze:
later_today: Plus tard aujourd’hui
next_week: La semaine prochaine
pick_date: Choisir une date et une heure
this_weekend: Ce week-end
tomorrow: Demain
unsnooze: Sortir de l’attente
snoozed:
empty: Rien n’est en attente.
starred:
empty: Aucun message suivi.
heading: Suivis
tabs:
forums: Forums
new_count: '%count% nouveaux'
primary: Principal
promotions: Promotions
social: Réseaux sociaux
updates: Notifications
thread:
no_subject: (sans objet)
summary:
button: 'Résumer cette conversation'
disclaimer: 'Écrit par un modèle à partir des messages ci-dessous. Lisez-les si c’est important.'
error:
connection_lost: 'La connexion à plMail a été perdue pendant la rédaction du résumé. L’hôte du modèle n’y est pour rien ; quelque chose entre ce navigateur et le serveur a fermé la connexion.'
disabled: 'Les résumés sont désactivés.'
generic: 'Le résumé n’a pas pu être rédigé.'
model_missing: 'L’hôte du modèle n’a pas le modèle de rédaction. Un administrateur doit d’abord le télécharger.'
no_answer: 'Le modèle n’a donné aucune réponse.'
refused: 'L’hôte du modèle a refusé la requête. S’il s’agissait de toute la conversation, c’est peut-être plus que cette machine ne peut contenir d’un coup.'
timeout: 'L’hôte du modèle a mis trop de temps à répondre.'
unreachable: 'L’hôte du modèle est injoignable.'
generated: 'Résumé %when%'
heading: 'Résumé'
regenerate: 'Résumer à nouveau'
partial: 'Cette conversation était trop longue pour être envoyée en entier : le résumé a été rédigé à partir d’une partie.'
send_full: 'Résumer plutôt toute la conversation — plus lent, et plus exigeant pour l’hôte du modèle.'
stale: 'La conversation a changé depuis la rédaction de ce résumé.'
state:
sent: 'Envoyé au modèle…'
stopped: 'Arrêté. Rien n’a été enregistré.'
waiting: 'La première requête après un moment prend environ une minute, le temps que le modèle se charge et lise la conversation.'
queued: 'En file. Toute la conversation est résumée en arrière-plan — vous pouvez fermer ceci et revenir ; le résumé sera là.'
reading: 'Lecture de la conversation en cours — %elapsed% jusqu’ici. Ensuite, le résumé apparaît mot à mot.'
waiting_full: 'Lecture de toute la conversation. Cela peut prendre plusieurs minutes sur une longue conversation, et rien n’apparaît avant la fin de la lecture.'
working: 'Résumé en cours…'
stop: 'Arrêter'
too_short: 'Un seul message. Il n’y a rien à résumer.'
thread_row:
# The word in the badge, and the phrase a screen reader gets instead. The
# a list, does not say new what.
# badge has room for one word; "New" alone, read out on the fortieth row of
account: 'Reçu sur %account%'
actions:
archive: Archiver
cancel_schedule: Annuler l’envoi programmé
delete: Supprimer
mark_read: Marquer comme lu
mark_unread: Marquer comme non lu
snooze: Mettre en attente
answer: Nouvelle réponse à votre message
answer_badge: Réponse
has_attachment: Contient une pièce jointe
me: moi
meaning: 'Trouvé par le sens, pas par les mots tapés'
meaning_badge: 'sens'
message_count: "({ count })"
new: Jamais affiché auparavant
new_badge: Nouveau
no_recipient: (sans destinataire)
no_subject: (sans objet)
scheduled: 'Programmé %when%'
select: Sélectionner
star: Suivre ce message
to: 'À : %recipients%'
unread: Non lu
unstar: Ne plus suivre ce message
toast:
# After Archive, from a row, the reading pane or the toolbar. The row is
# gone, which is also what a slip of the pointer looks like — this says
# which it was, beside an Undo.
archived: Conversation archivée.
# After a conversation is dropped on a category tab. The row it names
# has just disappeared off the list, and the tab it went to may not be
# on the strip at all — the strip only shows categories holding mail —
# so this is the only thing on screen saying where it landed.
categorised: 'Déplacé vers %category%'
dismiss: Fermer
# After a conversation is dropped on a folder. Names the folder for the
# same reason: the row is gone from the list that was open, and a drop
# is aimed at a small target.
# After a conversation is dropped on a label rather than a folder. The row
# stays where it is — the chip beside the subject is the only other sign,
# and it is most of the way across the screen from where the pointer let go.
labelled: 'Libellé %label% appliqué'
moved: 'Déplacé vers %folder%'
schedule_cancelled: Envoi programmé annulé.
# Shown when the cancel lost the race to the send. Deliberately blunt: the
# message has gone and nothing here can bring it back, and the previous
# behaviour — claiming it was cancelled — was worse than saying nothing.
send_too_late: Trop tard — ce message avait déjà été envoyé.
send_failed: 'Ce message n’a pas pu être envoyé : %subject%'
sent: Message envoyé.
spam_filtered: 'Déplacé vers Spam. Le courrier futur de %sender% y ira aussi.'
undo: Annuler
# The Undo was pressed twice, or after newer actions pushed it out. Said
# plainly: the button promised to put something back and has not.
undo_expired: Ce n’est plus possible d’annuler.
undone: Annulé.
# The label menu took a label off. The counterpart of `labelled`.
unlabelled: 'Libellé %label% retiré'
toolbar:
view_select:
# The "and the other 145" offer, shown when every row on screen is
# selected and the view holds more than fits on a page.
offer: 'Les %count% conversations de cette vue peuvent être sélectionnées.'
offer_action: 'Sélectionner les %count%'
selected: 'Les %count% conversations de cette vue sont sélectionnées.'
clear: 'Sélectionner uniquement cette page'
actions:
archive: Archiver
delete: Supprimer
label: Appliquer le libellé
mark_read: Marquer comme lu
mark_unread: Marquer comme non lu
more: Plus
move_to: Déplacer vers
purge: Supprimer définitivement
snooze: Mettre en attente
spam: 'Marquer comme spam'
star: Suivre
# Asked before a selection in Spam is deleted for good. Two sentences rather
# than one with a number swapped in, because "1 conversations" is not English.
purge_confirm:
one: 'Supprimer définitivement cette conversation ? Elle ne pourra pas être récupérée, et elle est aussi supprimée du serveur de mail.'
many: 'Supprimer définitivement ces %count% conversations ? Elles ne pourront pas être récupérées, et elles sont aussi supprimées du serveur de mail.'
filter:
show_all: Tout afficher
unread_only: Non lus uniquement
pagination:
next: Plus anciens
of: sur
prev: Plus récents
select:
all: Tous
none: Aucun
read: Lus
starred: Suivis
unread: Non lus
whole_view: 'Les %count% de cette vue'
select_all: Sélectionner toutes les conversations
select_menu: Plus d’options de sélection
spam:
empty: Aucun courrier indésirable.
heading: Spam
spam_menu:
confirm_body: 'Le courrier de toutes les adresses de %domain% ira dans Spam, y compris celui de personnes qui ne vous ont jamais écrit.'
confirm_cancel: 'Annuler'
confirm_shared: 'C’est un fournisseur de mail que beaucoup de gens utilisent.'
confirm_yes: 'Filtrer tout le domaine'
domain: 'Toujours déplacer tout ce domaine vers Spam'
filter_heading: 'Et filtrer le courrier futur'
heading: 'Marquer comme spam'
more: 'Plus d’options'
move: 'Déplacer vers Spam'
move_hint: 'Uniquement cette conversation.'
sender: 'Toujours déplacer cet expéditeur vers Spam'
trash:
empty: Aucun message supprimé.
heading: Corbeille
two_factor:
cancel: Se connecter avec un autre compte
flash:
code_rejected: Ce code n’est pas correct. Vérifiez votre application et réessayez.
codes_regenerated: Nouveaux codes de récupération générés. Les anciens ne fonctionnent plus.
device_revoked: Un code sera demandé à cet appareil la prochaine fois.
devices_revoked: Plus aucun appareil n’est mémorisé.
disabled: L’authentification à deux facteurs est désactivée.
enabled: L’authentification à deux facteurs est activée.
form:
code: Code d’authentification
code_hint: >-
Le code à six chiffres de votre application d’authentification, ou l’un de
vos codes de récupération.
submit: Continuer
submitting: Vérification…
trust_device: Ne plus demander sur cet appareil
trust_device_hint: Pendant 30 jours. Vous pouvez révoquer cela à tout moment dans Réglages → Sécurité.
page_title: Authentification à deux facteurs
recovery_hint: >-
Téléphone perdu ? Utilisez l’un des codes de récupération enregistrés lors
de la configuration.
tagline: Encore une étape
unread:
empty: Aucun courrier non lu.
heading: Tout le courrier non lu
# The names of template variables, as they read on a chip in the editor and
# on a placeholder still open in a message. Top-level because both the
# settings page and the compose window use them.
templates:
variable:
date: 'Date'
recipient_email: 'Adresse du destinataire'
recipient_first_name: 'Prénom'
recipient_name: 'Nom complet'
sender_email: 'Votre adresse'
sender_name: 'Votre nom'
signature: 'Signature'