msgid "" msgstr "" "POT-Creation-Date: 2026-04-01 16:55+0000\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: @lingui/cli\n" "Language: fr\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "PO-Revision-Date: \n" "Last-Translator: \n" "Language-Team: \n" #: src/components/CommentThread.tsx:256 msgid "[deleted]" msgstr "[supprimé]" #. placeholder {0}: dump.commentCount #: src/components/DumpCard.tsx:105 #: src/components/JournalCard.tsx:110 msgid "{0, plural, one {# comment} other {# comments}}" msgstr "{0, plural, one {# commentaire} other {# commentaires}}" #. placeholder {0}: playlist.dumpCount #: src/components/PlaylistCard.tsx:86 msgid "{0, plural, one {# dump} other {# dumps}}" msgstr "{0, plural, one {# reco} other {# recos}}" #. placeholder {0}: VALIDATION.USERNAME_MIN #. placeholder {1}: VALIDATION.USERNAME_MAX #: src/pages/UserRegister.tsx:124 msgid "{0}–{1} characters: letters, numbers, or underscores" msgstr "{0}–{1} caractères : lettres, chiffres ou tirets bas" #: src/pages/Search.tsx:176 msgid "{label} ({count})" msgstr "{label} ({count})" #: src/components/CommentThread.tsx:455 msgid "{visibleCount, plural, one {# comment} other {# comments}}" msgstr "{visibleCount, plural, one {# commentaire} other {# commentaires}}" #: src/pages/PlaylistDetail.tsx:560 #: src/pages/UserPublicProfile.tsx:732 msgid "← Back" msgstr "← Retour" #: src/pages/Dump.tsx:250 #: src/pages/Dump.tsx:463 #: src/pages/DumpEdit.tsx:168 msgid "← Back to all dumps" msgstr "← Retour à toutes les recos" #: src/pages/UserDumps.tsx:63 #: src/pages/UserPlaylists.tsx:354 #: src/pages/UserUpvoted.tsx:134 msgid "← Back to profile" msgstr "← Retour au profil" #: src/pages/UserPublicProfile.tsx:113 msgid "+ Invite someone" msgstr "+ Inviter quelqu'un" #: src/components/PlaylistMembershipPanel.tsx:80 msgid "+ New playlist" msgstr "+ Nouvelle collection" #: src/pages/Dump.tsx:318 msgid "+ Playlist" msgstr "+ Collection" #. placeholder {0}: d.commenterUsername #. placeholder {1}: d.dumpTitle #: src/pages/Notifications.tsx:194 msgid "<0>{0} commented on <1>{1}" msgstr "<0>{0} a commenté sur <1>{1}" #. placeholder {0}: d.followerUsername #. placeholder {1}: d.playlistTitle #: src/pages/Notifications.tsx:154 msgid "<0>{0} followed your playlist <1>{1}" msgstr "<0>{0} a suivi votre collection <1>{1}" #. placeholder {0}: d.likerUsername #. placeholder {1}: d.dumpTitle #: src/pages/Notifications.tsx:204 msgid "<0>{0} liked your comment on <1>{1}" msgstr "<0>{0} a aimé votre commentaire sur <1>{1}" #. placeholder {0}: d.mentionerUsername #: src/pages/Notifications.tsx:216 msgid "<0>{0} mentioned you in <1>{where}" msgstr "<0>{0} vous a mentionné dans <1>{where}" #. placeholder {0}: d.dumperUsername #. placeholder {1}: d.dumpTitle #: src/pages/Notifications.tsx:164 msgid "<0>{0} posted <1>{1}" msgstr "<0>{0} a publié <1>{1}" #. placeholder {0}: d.followerUsername #: src/pages/Notifications.tsx:145 msgid "<0>{0} started following you" msgstr "<0>{0} a commencé à vous suivre" #. placeholder {0}: d.voterUsername #. placeholder {1}: d.dumpTitle #: src/pages/Notifications.tsx:184 msgid "<0>{0} upvoted <1>{1}" msgstr "<0>{0} a voté pour <1>{1}" #. placeholder {0}: d.dumpTitle #. placeholder {1}: d.playlistTitle #: src/pages/Notifications.tsx:174 msgid "<0>{0} was added to <1>{1}" msgstr "<0>{0} a été ajouté à <1>{1}" #: src/pages/Notifications.tsx:214 msgid "a comment" msgstr "un commentaire" #: src/pages/Notifications.tsx:214 msgid "a post" msgstr "une publication" #: src/pages/UserPublicProfile.tsx:1111 msgid "Account" msgstr "Compte" #: src/components/CommentThread.tsx:475 msgid "Add a comment…" msgstr "Ajouter un commentaire…" #: src/pages/UserPublicProfile.tsx:807 msgid "Add email…" msgstr "Ajouter un e-mail…" #: src/components/AddToPlaylistModal.tsx:64 #: src/components/DumpCreateModal.tsx:292 msgid "Add to playlist" msgstr "Ajouter à la collection" #: src/pages/UserPublicProfile.tsx:1520 msgid "Admin" msgstr "Administrateur" #: src/pages/UserRegister.tsx:154 msgid "Already have an account? <0>Log in" msgstr "Vous avez déjà un compte ? <0>Se connecter" #: src/pages/UserPublicProfile.tsx:1130 msgid "Appearance" msgstr "Apparence" #. placeholder {0}: VALIDATION.PASSWORD_MIN #: src/components/ChangePasswordModal.tsx:82 #: src/pages/ResetPassword.tsx:109 #: src/pages/UserRegister.tsx:143 msgid "At least {0} characters" msgstr "Au moins {0} caractères" #: src/pages/UserPublicProfile.tsx:1178 msgid "Auto" msgstr "Auto" #: src/pages/ResetPassword.tsx:59 #: src/pages/ResetPassword.tsx:132 msgid "Back to login" msgstr "Retour à la connexion" #: src/contexts/WSProvider.tsx:211 #: src/contexts/WSProvider.tsx:438 msgid "Can't connect to the live updates server. Upvotes and notifications may not sync until it reconnects." msgstr "Impossible de se connecter au serveur de mises à jour en direct. Les votes et les notifications pourraient ne pas se synchroniser avant la reconnexion." #: src/components/CommentThread.tsx:124 #: src/components/ConfirmModal.tsx:32 #: src/components/form/FormActions.tsx:32 #: src/pages/Dump.tsx:359 #: src/pages/DumpEdit.tsx:433 #: src/pages/PlaylistDetail.tsx:908 #: src/pages/UserPublicProfile.tsx:1637 #: src/pages/UserPublicProfile.tsx:1707 msgid "Cancel" msgstr "Annuler" #: src/pages/PlaylistDetail.tsx:733 msgid "Cancel removal" msgstr "Annuler la suppression" #: src/components/AppHeader.tsx:65 msgid "Cancel search" msgstr "Annuler la recherche" #: src/pages/UserPublicProfile.tsx:759 msgid "Change avatar" msgstr "Changer l'avatar" #: src/components/ChangePasswordModal.tsx:47 #: src/components/ChangePasswordModal.tsx:101 msgid "Change password" msgstr "Changer le mot de passe" #: src/pages/UserPublicProfile.tsx:1123 msgid "Change password…" msgstr "Changer le mot de passe…" #: src/pages/UserRegister.tsx:83 msgid "Checking invite…" msgstr "Vérification de l'invitation…" #: src/components/ChangePasswordModal.tsx:56 #: src/components/Modal.tsx:45 msgid "Close" msgstr "Fermer" #: src/pages/UserPublicProfile.tsx:1170 msgid "Color scheme" msgstr "Thème de couleur" #: src/components/ChangePasswordModal.tsx:89 #: src/pages/ResetPassword.tsx:116 msgid "Confirm new password" msgstr "Confirmer le nouveau mot de passe" #: src/pages/UserPublicProfile.tsx:104 msgid "Copied!" msgstr "Copié !" #: src/pages/UserPublicProfile.tsx:104 msgid "Copy" msgstr "Copier" #: src/components/ChangePasswordModal.tsx:98 msgid "Could not change password" msgstr "Impossible de changer le mot de passe" #: src/components/UserListPopover.tsx:141 msgid "Could not load." msgstr "Impossible de charger." #: src/pages/DumpEdit.tsx:334 msgid "Could not save" msgstr "Sauvegarde impossible" #: src/components/PlaylistCreateForm.tsx:87 msgid "Create" msgstr "Créer" #: src/components/PlaylistCreateForm.tsx:87 msgid "Create & Add" msgstr "Créer et ajouter" #. placeholder {0}: created.items.length #. placeholder {1}: created.hasMore ? "+" : "" #: src/pages/UserPlaylists.tsx:388 msgid "Created ({0}{1})" msgstr "Créées ({0}{1})" #: src/components/PlaylistCreateForm.tsx:86 msgid "Creating…" msgstr "Création…" #: src/components/ChangePasswordModal.tsx:67 msgid "Current password" msgstr "Mot de passe actuel" #: src/pages/UserPublicProfile.tsx:1192 msgid "Dark" msgstr "Sombre" #: src/pages/UserPublicProfile.tsx:1205 msgid "Default tab" msgstr "Onglet par défaut" #: src/components/CommentThread.tsx:376 #: src/components/CommentThread.tsx:382 #: src/components/ConfirmModal.tsx:16 #: src/pages/PlaylistDetail.tsx:904 msgid "Delete" msgstr "Supprimer" #: src/pages/DumpEdit.tsx:242 #: src/pages/DumpEdit.tsx:429 msgid "Delete dump" msgstr "Supprimer la reco" #: src/components/PlaylistCard.tsx:109 #: src/pages/PlaylistDetail.tsx:746 #: src/pages/UserPlaylists.tsx:465 msgid "Delete playlist" msgstr "Supprimer la collection" #: src/components/CommentThread.tsx:381 msgid "Delete this comment?" msgstr "Supprimer ce commentaire ?" #: src/pages/DumpEdit.tsx:241 msgid "Delete this dump? This cannot be undone." msgstr "Supprimer cette reco ? Cette action est irréversible." #: src/pages/PlaylistDetail.tsx:745 #: src/pages/UserPlaylists.tsx:464 msgid "Delete this playlist? This cannot be undone." msgstr "Supprimer cette collection ? Cette action est irréversible." #: src/components/PlaylistCreateForm.tsx:78 #: src/pages/PlaylistDetail.tsx:865 msgid "Description (optional)" msgstr "Description (facultatif)" #: src/components/DumpCreateModal.tsx:479 msgid "Done" msgstr "Terminé" #: src/components/FileDropZone.tsx:32 msgid "Drop a file here" msgstr "Déposez un fichier ici" #: src/pages/DumpEdit.tsx:404 msgid "Drop a replacement here" msgstr "Déposez un fichier de remplacement ici" #: src/components/AppHeader.tsx:103 msgid "Dump" msgstr "Reco" #: src/components/DumpCreateModal.tsx:449 msgid "Dump it" msgstr "Recommander" #: src/components/DumpCreateModal.tsx:460 msgid "Dumped!" msgstr "Recommandé !" #: src/pages/Search.tsx:172 #: src/pages/UserDumps.tsx:77 #: src/pages/UserPublicProfile.tsx:880 msgid "Dumps" msgstr "Recos" #. placeholder {0}: dumps.items.length #. placeholder {1}: dumps.hasMore ? "+" : "" #: src/pages/UserPublicProfile.tsx:900 msgid "Dumps ({0}{1})" msgstr "Recos ({0}{1})" #: src/pages/Notifications.tsx:393 msgid "Earlier" msgstr "Plus tôt" #: src/components/CommentThread.tsx:367 #: src/pages/Dump.tsx:459 #: src/pages/PlaylistDetail.tsx:613 msgid "Edit" msgstr "Modifier" #: src/components/DumpCreateModal.tsx:417 msgid "Edit title" msgstr "Modifier le titre" #. placeholder {0}: relativeTime(comment.updatedAt) #. placeholder {0}: relativeTime(dump.updatedAt) #. placeholder {0}: relativeTime(playlist.updatedAt) #: src/components/CommentThread.tsx:317 #: src/pages/Dump.tsx:412 #: src/pages/PlaylistDetail.tsx:652 msgid "edited {0}" msgstr "modifié {0}" #. placeholder {0}: comment.updatedAt.toLocaleString() #. placeholder {0}: dump.updatedAt.toLocaleString() #. placeholder {0}: playlist.updatedAt.toLocaleString() #: src/components/CommentThread.tsx:315 #: src/pages/Dump.tsx:410 #: src/pages/PlaylistDetail.tsx:649 msgid "Edited {0}" msgstr "Modifié le {0}" #: src/pages/DumpEdit.tsx:193 msgid "Editing" msgstr "Modification" #: src/pages/UserRegister.tsx:131 msgid "Email address" msgstr "Adresse e-mail" #: src/pages/Search.tsx:205 msgid "Enter a query to search." msgstr "Saisissez une recherche." #: src/components/PlaylistCreateForm.tsx:84 msgid "Failed to create playlist" msgstr "Impossible de créer la collection" #: src/pages/UserPublicProfile.tsx:85 #: src/pages/UserPublicProfile.tsx:88 #: src/pages/UserPublicProfile.tsx:116 msgid "Failed to generate invite" msgstr "Impossible de générer une invitation" #: src/pages/index/FollowedFeed.tsx:82 #: src/pages/index/HotFeed.tsx:36 #: src/pages/index/JournalFeed.tsx:33 #: src/pages/index/NewFeed.tsx:36 #: src/pages/Notifications.tsx:367 #: src/pages/UserPublicProfile.tsx:1002 #: src/pages/UserPublicProfile.tsx:1044 #: src/pages/UserPublicProfile.tsx:1089 msgid "Failed to load" msgstr "Chargement échoué" #: src/components/DumpCreateModal.tsx:328 msgid "Failed to post" msgstr "Publication échouée" #: src/components/CommentThread.tsx:474 msgid "Failed to post comment" msgstr "Impossible de publier le commentaire" #: src/components/CommentThread.tsx:397 msgid "Failed to post reply" msgstr "Impossible de publier la réponse" #: src/pages/PlaylistDetail.tsx:896 #: src/pages/UserPublicProfile.tsx:1640 #: src/pages/UserPublicProfile.tsx:1709 msgid "Failed to save" msgstr "Enregistrement échoué" #: src/components/CommentThread.tsx:330 msgid "Failed to save edit" msgstr "Impossible d'enregistrer la modification" #: src/pages/UserPublicProfile.tsx:816 msgid "Failed to update avatar" msgstr "Impossible de mettre à jour l'avatar" #: src/pages/UserPublicProfile.tsx:1578 msgid "Failed to update role" msgstr "Erreur lors de la mise à jour du rôle" #: src/pages/UserPublicProfile.tsx:1200 msgid "Feeds" msgstr "Flux" #: src/components/DumpCreateModal.tsx:360 msgid "Fetching preview…" msgstr "Récupération de l'aperçu…" #: src/components/DumpCreateModal.tsx:446 msgid "Fetching…" msgstr "Récupération…" #: src/components/DumpCreateModal.tsx:322 #: src/components/FileDropZone.tsx:31 msgid "File" msgstr "Fichier" #: src/components/DumpCreateModal.tsx:231 msgid "File too large (max 50 MB)." msgstr "Fichier trop volumineux (max 50 Mo)." #: src/components/FollowButton.tsx:37 #: src/components/FollowButton.tsx:64 msgid "Follow" msgstr "Suivre" #: src/components/FollowButton.tsx:35 msgid "Follow {targetUsername}" msgstr "Suivre {targetUsername}" #: src/components/FollowButton.tsx:62 msgid "Follow playlist" msgstr "Suivre la collection" #: src/pages/index/FollowedFeed.tsx:365 msgid "Follow some public playlists to see their dumps here." msgstr "Suivez des collections publiques pour voir leurs recos ici." #: src/pages/index/FollowedFeed.tsx:351 msgid "Follow some users to see their dumps here." msgstr "Suivez des utilisateurs pour voir leurs recos ici." #: src/components/FeedTabBar.tsx:21 #: src/pages/UserPublicProfile.tsx:882 #: src/pages/UserPublicProfile.tsx:1234 msgid "Followed" msgstr "Suivi" #. placeholder {0}: followed.items.length #. placeholder {1}: followed.hasMore ? "+" : "" #: src/pages/UserPlaylists.tsx:430 msgid "Followed ({0}{1})" msgstr "Suivies ({0}{1})" #: src/pages/UserPublicProfile.tsx:1033 msgid "Followed playlists" msgstr "Collections suivies" #: src/components/FollowButton.tsx:37 #: src/components/FollowButton.tsx:64 #: src/pages/UserPublicProfile.tsx:991 msgid "Following" msgstr "Abonné" #: src/pages/UserLogin.tsx:87 msgid "Forgot password?" msgstr "Mot de passe oublié ?" #: src/pages/index/FollowedFeed.tsx:334 msgid "From people" msgstr "De personnes" #: src/pages/index/FollowedFeed.tsx:335 msgid "From playlists" msgstr "De collections" #: src/pages/NotFound.tsx:13 msgid "Go home" msgstr "Accueil" #: src/pages/ResetPassword.tsx:81 msgid "Go to login" msgstr "Aller à la connexion" #: src/components/FeedTabBar.tsx:17 #: src/pages/UserPublicProfile.tsx:1213 msgid "Hot" msgstr "Tendances" #: src/pages/UserLogin.tsx:118 msgid "If that address is registered you'll receive a reset link shortly." msgstr "Si cette adresse est enregistrée, vous recevrez un lien de réinitialisation sous peu." #: src/pages/UserRegister.tsx:94 msgid "Invalid invite" msgstr "Invitation invalide" #: src/pages/ResetPassword.tsx:49 msgid "Invalid link" msgstr "Lien invalide" #: src/pages/UserPublicProfile.tsx:778 msgid "invited by" msgstr "invité par" #: src/pages/UserPublicProfile.tsx:883 #: src/pages/UserPublicProfile.tsx:1078 msgid "Invitees" msgstr "Invités" #: src/components/FeedTabBar.tsx:19 #: src/pages/UserPublicProfile.tsx:1227 msgid "Journal" msgstr "Journal" #: src/pages/UserPublicProfile.tsx:1185 msgid "Light" msgstr "Clair" #: src/components/LikeButton.tsx:30 msgid "Like" msgstr "Aimer" #: src/contexts/WSProvider.tsx:437 msgid "Live updates are temporarily disconnected. Trying to reconnect…" msgstr "Les mises à jour en direct sont temporairement interrompues. Tentative de reconnexion…" #: src/components/AppHeader.tsx:130 msgid "Live updates unavailable." msgstr "Mises à jour en direct indisponibles." #: src/components/UserListPopover.tsx:231 #: src/pages/Notifications.tsx:440 msgid "Load more" msgstr "Charger plus" #: src/pages/Dump.tsx:226 #: src/pages/DumpEdit.tsx:144 msgid "Loading dump…" msgstr "Chargement de la reco…" #: src/pages/index/FollowedFeed.tsx:110 #: src/pages/index/HotFeed.tsx:64 #: src/pages/index/JournalFeed.tsx:62 #: src/pages/index/NewFeed.tsx:64 #: src/pages/Search.tsx:242 #: src/pages/UserDumps.tsx:118 #: src/pages/UserPlaylists.tsx:417 #: src/pages/UserPlaylists.tsx:452 #: src/pages/UserUpvoted.tsx:187 msgid "Loading more…" msgstr "Chargement…" #: src/pages/PlaylistDetail.tsx:544 msgid "Loading playlist…" msgstr "Chargement de la collection…" #: src/pages/UserPublicProfile.tsx:715 msgid "Loading profile…" msgstr "Chargement du profil…" #: src/components/PlaylistMembershipPanel.tsx:28 #: src/components/TextEditor.tsx:289 #: src/components/UserListPopover.tsx:192 #: src/components/UserListPopover.tsx:230 #: src/pages/index/FollowedFeed.tsx:77 #: src/pages/index/HotFeed.tsx:32 #: src/pages/index/JournalFeed.tsx:29 #: src/pages/index/NewFeed.tsx:32 #: src/pages/Notifications.tsx:363 #: src/pages/Notifications.tsx:439 #: src/pages/UserDumps.tsx:51 #: src/pages/UserPlaylists.tsx:342 #: src/pages/UserPublicProfile.tsx:996 #: src/pages/UserPublicProfile.tsx:1038 #: src/pages/UserPublicProfile.tsx:1083 #: src/pages/UserUpvoted.tsx:122 msgid "Loading…" msgstr "Chargement…" #: src/components/AppHeader.tsx:111 #: src/pages/UserLogin.tsx:57 #: src/pages/UserLogin.tsx:76 msgid "Log in" msgstr "Se connecter" #: src/components/LikeButton.tsx:31 msgid "Log in to like" msgstr "Se connecter pour aimer" #: src/components/VoteButton.tsx:29 msgid "Log in to vote" msgstr "Se connecter pour voter" #: src/pages/UserPublicProfile.tsx:736 #: src/pages/UserPublicProfile.tsx:830 msgid "Log out" msgstr "Se déconnecter" #: src/pages/UserLogin.tsx:75 msgid "Logging in…" msgstr "Connexion…" #: src/pages/UserLogin.tsx:62 msgid "Login failed" msgstr "Connexion échouée" #: src/pages/UserPublicProfile.tsx:888 msgid "Manage" msgstr "Administration" #: src/components/FileDropZone.tsx:145 msgid "Max 50 MB" msgstr "Max 50 Mo" #: src/pages/UserPublicProfile.tsx:1519 msgid "Moderator" msgstr "Modérateur" #: src/pages/Notifications.tsx:356 msgid "new" msgstr "nouveau" #: src/components/FeedTabBar.tsx:18 #: src/pages/UserPublicProfile.tsx:1220 msgid "New" msgstr "Nouveau" #: src/components/DumpCreateModal.tsx:292 #: src/components/DumpFab.tsx:65 #: src/components/DumpFab.tsx:66 #: src/pages/UserDumps.tsx:85 #: src/pages/UserPublicProfile.tsx:1298 msgid "New dump" msgstr "Nouvelle reco" #: src/components/ChangePasswordModal.tsx:75 #: src/pages/ResetPassword.tsx:101 msgid "New password" msgstr "Nouveau mot de passe" #: src/components/NewPlaylistForm.tsx:33 #: src/components/NewPlaylistForm.tsx:40 msgid "New playlist" msgstr "Nouvelle collection" #: src/pages/PlaylistDetail.tsx:668 msgid "No dumps in this playlist yet." msgstr "Aucune reco dans cette collection pour l'instant." #: src/pages/Search.tsx:222 msgid "No dumps match \"{q}\"." msgstr "Aucune reco ne correspond à « {q} »." #: src/pages/index/HotFeed.tsx:40 #: src/pages/index/JournalFeed.tsx:37 #: src/pages/index/NewFeed.tsx:40 msgid "No dumps yet. Be the first!" msgstr "Pas encore de recos. Soyez le premier !" #: src/components/TextEditor.tsx:292 msgid "No emoji found." msgstr "Aucun emoji trouvé." #: src/pages/UserPlaylists.tsx:439 #: src/pages/UserPublicProfile.tsx:1051 msgid "No followed playlists yet." msgstr "Pas encore de collections suivies." #: src/pages/UserPublicProfile.tsx:1096 msgid "No invitees yet." msgstr "Aucun invité pour le moment." #: src/components/UserListPopover.tsx:200 msgid "No one yet." msgstr "Personne pour le moment." #: src/pages/Search.tsx:281 msgid "No playlists match \"{q}\"." msgstr "Aucune collection ne correspond à « {q} »." #: src/components/PlaylistMembershipPanel.tsx:34 #: src/pages/UserPlaylists.tsx:397 #: src/pages/UserPublicProfile.tsx:962 msgid "No playlists yet." msgstr "Pas encore de collections." #: src/pages/Search.tsx:255 msgid "No users match \"{q}\"." msgstr "Aucun utilisateur ne correspond à « {q} »." #: src/pages/UserPublicProfile.tsx:1009 msgid "Not following anyone yet." msgstr "Aucun abonnement pour le moment." #: src/pages/Notifications.tsx:374 #: src/pages/UserDumps.tsx:96 #: src/pages/UserPublicProfile.tsx:1309 #: src/pages/UserPublicProfile.tsx:1431 #: src/pages/UserUpvoted.tsx:156 msgid "Nothing here yet." msgstr "Rien ici pour l'instant." #: src/components/NotificationBell.tsx:42 #: src/pages/Notifications.tsx:352 msgid "Notifications" msgstr "Notifications" #: src/components/NotificationBell.tsx:41 msgid "Notifications ({unreadNotificationCount} unread)" msgstr "Notifications ({unreadNotificationCount} non lues)" #: src/components/SearchBar.tsx:84 msgid "Open search" msgstr "Ouvrir la recherche" #: src/components/FileDropZone.tsx:139 msgid "or <0>browse files" msgstr "ou <0>parcourir les fichiers" #: src/pages/UserLogin.tsx:72 #: src/pages/UserPublicProfile.tsx:1116 msgid "Password" msgstr "Mot de passe" #. placeholder {0}: VALIDATION.PASSWORD_MIN #: src/pages/UserRegister.tsx:137 msgid "Password (min. {0} characters)" msgstr "Mot de passe (min. {0} caractères)" #: src/components/ChangePasswordModal.tsx:52 msgid "Password changed successfully." msgstr "Mot de passe modifié avec succès." #: src/pages/ResetPassword.tsx:71 msgid "Password updated" msgstr "Mot de passe mis à jour" #: src/components/ChangePasswordModal.tsx:95 #: src/pages/ResetPassword.tsx:121 msgid "Passwords do not match" msgstr "Les mots de passe ne correspondent pas" #: src/pages/PlaylistDetail.tsx:851 msgid "Playlist title" msgstr "Titre de la collection" #: src/components/AppHeader.tsx:85 #: src/components/UserMenu.tsx:62 #: src/pages/Search.tsx:175 #: src/pages/UserPlaylists.tsx:368 #: src/pages/UserPublicProfile.tsx:881 msgid "Playlists" msgstr "Collections" #. placeholder {0}: playlists.items.length #. placeholder {1}: playlists.hasMore ? "+" : "" #: src/pages/UserPublicProfile.tsx:931 msgid "Playlists ({0}{1})" msgstr "Collections ({0}{1})" #: src/components/DumpCreateModal.tsx:228 msgid "Please select a file." msgstr "Veuillez sélectionner un fichier." #: src/components/CommentThread.tsx:472 msgid "Post comment" msgstr "Publier le commentaire" #: src/components/CommentThread.tsx:395 msgid "Post reply" msgstr "Publier la réponse" #: src/components/CommentThread.tsx:396 #: src/components/CommentThread.tsx:473 msgid "Posting…" msgstr "Publication…" #: src/components/DumpCard.tsx:114 #: src/components/JournalCard.tsx:119 #: src/components/PlaylistCard.tsx:73 #: src/components/PlaylistMembershipPanel.tsx:55 #: src/pages/Dump.tsx:418 #: src/pages/PlaylistDetail.tsx:632 msgid "private" msgstr "privé" #: src/components/form/SegmentedField.tsx:78 #: src/pages/PlaylistDetail.tsx:890 msgid "Private" msgstr "Privé" #: src/components/PlaylistCard.tsx:72 #: src/pages/PlaylistDetail.tsx:631 msgid "public" msgstr "public" #: src/components/form/SegmentedField.tsx:77 #: src/pages/PlaylistDetail.tsx:883 msgid "Public" msgstr "Public" #: src/pages/DumpEdit.tsx:222 msgid "Refresh metadata" msgstr "Actualiser les métadonnées" #: src/pages/DumpEdit.tsx:221 msgid "Refreshing…" msgstr "Actualisation…" #: src/pages/UserRegister.tsx:106 #: src/pages/UserRegister.tsx:148 msgid "Register" msgstr "S'inscrire" #: src/pages/UserRegister.tsx:147 msgid "Registering…" msgstr "Inscription…" #: src/pages/UserRegister.tsx:111 msgid "Registration failed" msgstr "Inscription échouée" #: src/pages/Dump.tsx:471 msgid "Related" msgstr "Connexe" #: src/components/FileDropZone.tsx:115 msgid "Remove file" msgstr "Supprimer le fichier" #: src/pages/PlaylistDetail.tsx:723 msgid "Remove from playlist" msgstr "Retirer de la collection" #: src/components/LikeButton.tsx:30 msgid "Remove like" msgstr "Retirer le j'aime" #: src/components/VoteButton.tsx:28 msgid "Remove vote" msgstr "Retirer le vote" #: src/pages/DumpEdit.tsx:403 msgid "Replace file" msgstr "Remplacer le fichier" #: src/components/CommentThread.tsx:355 msgid "Reply" msgstr "Répondre" #: src/pages/UserLogin.tsx:130 msgid "Request failed" msgstr "Échec de la demande" #: src/pages/ResetPassword.tsx:97 msgid "Reset failed" msgstr "Échec de la réinitialisation" #: src/pages/DumpEdit.tsx:354 #: src/pages/DumpEdit.tsx:372 msgid "Reset to default" msgstr "Réinitialiser par défaut" #: src/pages/Dump.tsx:243 #: src/pages/DumpEdit.tsx:161 msgid "Retry" msgstr "Réessayer" #: src/pages/UserPublicProfile.tsx:1562 msgid "Role" msgstr "Rôle" #: src/components/CommentThread.tsx:328 #: src/pages/Dump.tsx:351 #: src/pages/DumpEdit.tsx:436 #: src/pages/PlaylistDetail.tsx:915 #: src/pages/UserPublicProfile.tsx:1629 #: src/pages/UserPublicProfile.tsx:1699 msgid "Save" msgstr "Enregistrer" #: src/components/ChangePasswordModal.tsx:100 #: src/components/CommentThread.tsx:329 #: src/pages/Dump.tsx:350 #: src/pages/PlaylistDetail.tsx:911 #: src/pages/ResetPassword.tsx:124 #: src/pages/UserPublicProfile.tsx:1626 #: src/pages/UserPublicProfile.tsx:1696 msgid "Saving…" msgstr "Enregistrement…" #: src/components/AppHeader.tsx:65 #: src/components/SearchBar.tsx:78 msgid "Search" msgstr "Rechercher" #: src/components/SearchBar.tsx:74 msgid "Search dumps, users, playlists…" msgstr "Rechercher des recos, utilisateurs, collections…" #: src/pages/Search.tsx:216 msgid "Search failed" msgstr "Recherche échouée" #: src/pages/Search.tsx:211 msgid "Searching…" msgstr "Recherche…" #: src/pages/UserLogin.tsx:139 msgid "Send reset link" msgstr "Envoyer le lien de réinitialisation" #: src/pages/UserLogin.tsx:138 msgid "Sending…" msgstr "Envoi…" #: src/components/AppHeader.tsx:100 msgid "Server unreachable" msgstr "Serveur inaccessible" #: src/pages/ResetPassword.tsx:92 #: src/pages/ResetPassword.tsx:125 msgid "Set new password" msgstr "Définir un nouveau mot de passe" #: src/pages/UserPublicProfile.tsx:885 msgid "Settings" msgstr "Paramètres" #: src/components/form/FormError.tsx:15 #: src/components/PageError.tsx:13 msgid "Something went wrong" msgstr "Une erreur est survenue" #: src/pages/UserPublicProfile.tsx:1135 msgid "Style" msgstr "Style" #: src/components/SearchBar.tsx:84 msgid "Submit search" msgstr "Lancer la recherche" #: src/pages/UserRegister.tsx:95 msgid "This invite link is missing, expired, or already used." msgstr "Ce lien d'invitation est manquant, expiré ou déjà utilisé." #: src/pages/UserLogin.tsx:94 msgid "This is a mirage." msgstr "C'est un mirage." #: src/pages/NotFound.tsx:10 msgid "This page does not exist." msgstr "Rien à voir, circulez." #: src/pages/ResetPassword.tsx:52 msgid "This reset link is missing or malformed." msgstr "Ce lien de réinitialisation est absent ou malformé." #: src/pages/DumpEdit.tsx:338 msgid "Thumbnail" msgstr "Miniature" #: src/components/DumpCreateModal.tsx:386 #: src/components/PlaylistCreateForm.tsx:70 #: src/pages/DumpEdit.tsx:362 msgid "Title" msgstr "Titre" #: src/components/DumpCreateModal.tsx:229 msgid "Title is required." msgstr "Un titre est requis." #: src/pages/Notifications.tsx:390 msgid "Today" msgstr "Aujourd'hui" #: src/pages/PlaylistDetail.tsx:735 msgid "Undo" msgstr "Annuler" #: src/components/FollowButton.tsx:34 msgid "Unfollow {targetUsername}" msgstr "Ne plus suivre {targetUsername}" #: src/components/FollowButton.tsx:62 msgid "Unfollow playlist" msgstr "Ne plus suivre la collection" #: src/pages/UserPublicProfile.tsx:680 msgid "Upload failed" msgstr "Envoi échoué" #: src/components/DumpCreateModal.tsx:447 msgid "Uploading…" msgstr "Envoi…" #: src/components/VoteButton.tsx:28 msgid "Upvote" msgstr "Voter" #: src/pages/UserUpvoted.tsx:151 msgid "Upvoted" msgstr "Voté" #. placeholder {0}: votes.items.length #. placeholder {1}: votes.hasMore ? "+" : "" #: src/pages/UserPublicProfile.tsx:911 msgid "Upvoted ({0}{1})" msgstr "Votés ({0}{1})" #: src/components/DumpCreateModal.tsx:335 #: src/pages/DumpEdit.tsx:385 msgid "URL" msgstr "URL" #: src/components/DumpCreateModal.tsx:216 msgid "URL is required." msgstr "L'URL est obligatoire." #: src/pages/UserPublicProfile.tsx:1518 msgid "User" msgstr "Utilisateur" #: src/pages/UserPublicProfile.tsx:1246 msgid "User management" msgstr "Gestion des utilisateurs" #: src/components/UserMenu.tsx:37 msgid "User menu" msgstr "Menu utilisateur" #: src/pages/UserLogin.tsx:65 #: src/pages/UserRegister.tsx:114 msgid "Username" msgstr "Nom d'utilisateur" #: src/pages/Search.tsx:174 msgid "Users" msgstr "Utilisateurs" #: src/pages/UserPublicProfile.tsx:981 #: src/pages/UserPublicProfile.tsx:1024 #: src/pages/UserPublicProfile.tsx:1066 #: src/pages/UserPublicProfile.tsx:1330 #: src/pages/UserPublicProfile.tsx:1461 msgid "View all →" msgstr "Tout voir →" #: src/components/DumpCreateModal.tsx:462 msgid "View dump →" msgstr "Voir la reco →" #: src/components/DumpCreateModal.tsx:431 #: src/pages/DumpEdit.tsx:415 msgid "What makes it worth it?" msgstr "Pourquoi on en voudrait ?" #: src/pages/UserPublicProfile.tsx:865 #: src/pages/UserPublicProfile.tsx:1688 msgid "Who am I?" msgstr "Qui suis-je ?" #: src/components/DumpCreateModal.tsx:430 #: src/pages/DumpEdit.tsx:414 msgid "Why?" msgstr "Pourquoi ?" #: src/components/CommentThread.tsx:398 msgid "Write a reply…" msgstr "Écrire une réponse…" #: src/pages/Notifications.tsx:392 msgid "Yesterday" msgstr "Hier" #: src/pages/Notifications.tsx:377 msgid "You'll be notified when someone follows your playlists, upvotes your dumps, or posts new content." msgstr "Vous serez notifié lorsque quelqu'un suit vos collections, vote pour vos recos ou publie du nouveau contenu." #: src/pages/index/FollowedFeed.tsx:115 #: src/pages/index/HotFeed.tsx:69 #: src/pages/index/JournalFeed.tsx:67 #: src/pages/index/NewFeed.tsx:69 #: src/pages/Search.tsx:247 #: src/pages/UserDumps.tsx:123 #: src/pages/UserPlaylists.tsx:422 #: src/pages/UserPlaylists.tsx:457 #: src/pages/UserUpvoted.tsx:192 msgid "You've reached the end." msgstr "Vous avez tout lu, tout vu, tout bu." #: src/pages/UserLogin.tsx:134 msgid "Your email address" msgstr "Votre adresse e-mail" #: src/pages/ResetPassword.tsx:74 msgid "Your password has been changed. You can now log in." msgstr "Votre mot de passe a été modifié. Vous pouvez maintenant vous connecter."