translate french strings:

    # 00action_file.rpy:26
    old "{#weekday}Monday"
    new "{#weekday}Lundi"

    # 00action_file.rpy:26
    old "{#weekday}Tuesday"
    new "{#weekday}Mardi"

    # 00action_file.rpy:26
    old "{#weekday}Wednesday"
    new "{#weekday}Mercredi"

    # 00action_file.rpy:26
    old "{#weekday}Thursday"
    new "{#weekday}Jeudi"

    # 00action_file.rpy:26
    old "{#weekday}Friday"
    new "{#weekday}Vendredi"

    # 00action_file.rpy:26
    old "{#weekday}Saturday"
    new "{#weekday}Samedi"

    # 00action_file.rpy:26
    old "{#weekday}Sunday"
    new "{#weekday}Dimanche"

    # 00action_file.rpy:37
    old "{#weekday_short}Mon"
    new "{#weekday_short}Lun"

    # 00action_file.rpy:37
    old "{#weekday_short}Tue"
    new "{#weekday_short}Mar"

    # 00action_file.rpy:37
    old "{#weekday_short}Wed"
    new "{#weekday_short}Mer"

    # 00action_file.rpy:37
    old "{#weekday_short}Thu"
    new "{#weekday_short}Jeu"

    # 00action_file.rpy:37
    old "{#weekday_short}Fri"
    new "{#weekday_short}Ven"

    # 00action_file.rpy:37
    old "{#weekday_short}Sat"
    new "{#weekday_short}Sam"

    # 00action_file.rpy:37
    old "{#weekday_short}Sun"
    new "{#weekday_short}Dim"

    # 00action_file.rpy:47
    old "{#month}January"
    new "{#month}Janvier"

    # 00action_file.rpy:47
    old "{#month}February"
    new "{#month}Février"

    # 00action_file.rpy:47
    old "{#month}March"
    new "{#month}Mars"

    # 00action_file.rpy:47
    old "{#month}April"
    new "{#month}Avril"

    # 00action_file.rpy:47
    old "{#month}May"
    new "{#month}Mai"

    # 00action_file.rpy:47
    old "{#month}June"
    new "{#month}Juin"

    # 00action_file.rpy:47
    old "{#month}July"
    new "{#month}Juillet"

    # 00action_file.rpy:47
    old "{#month}August"
    new "{#month}Août"

    # 00action_file.rpy:47
    old "{#month}September"
    new "{#month}Septembre"

    # 00action_file.rpy:47
    old "{#month}October"
    new "{#month}Octobre"

    # 00action_file.rpy:47
    old "{#month}November"
    new "{#month}Novembre"

    # 00action_file.rpy:47
    old "{#month}December"
    new "{#month}Décembre"

    # 00action_file.rpy:63
    old "{#month_short}Jan"
    new "{#month_short}Jan"

    # 00action_file.rpy:63
    old "{#month_short}Feb"
    new "{#month_short}Fév"

    # 00action_file.rpy:63
    old "{#month_short}Mar"
    new "{#month_short}Mar"

    # 00action_file.rpy:63
    old "{#month_short}Apr"
    new "{#month_short}Avr"

    # 00action_file.rpy:63
    old "{#month_short}May"
    new "{#month_short}Mai"

    # 00action_file.rpy:63
    old "{#month_short}Jun"
    new "{#month_short}Juin"

    # 00action_file.rpy:63
    old "{#month_short}Jul"
    new "{#month_short}Juil"

    # 00action_file.rpy:63
    old "{#month_short}Aug"
    new "{#month_short}Aoû"

    # 00action_file.rpy:63
    old "{#month_short}Sep"
    new "{#month_short}Sep"

    # 00action_file.rpy:63
    old "{#month_short}Oct"
    new "{#month_short}Oct"

    # 00action_file.rpy:63
    old "{#month_short}Nov"
    new "{#month_short}Nov"

    # 00action_file.rpy:63
    old "{#month_short}Dec"
    new "{#month_short}Déc"

    # 00action_file.rpy:235
    old "%b %d, %H:%M"
    new "%d %b, %H:%M"

    # 00action_file.rpy:820
    old "Quick save complete."
    new "Sauvegarde rapide effectuée."

    # 00gui.rpy:227
    old "Are you sure?"
    new "Êtes-vous sûr ?"

    # 00gui.rpy:228
    old "Are you sure you want to delete this save?"
    new "Êtes-vous sûr de vouloir supprimer cette sauvegarde ?"

    # 00gui.rpy:229
    old "Are you sure you want to overwrite your save?"
    new "Êtes-vous sûr de vouloir écraser cette sauvegarde ?"

    # 00gui.rpy:230
    old "Loading will lose unsaved progress.\nAre you sure you want to do this?"
    new "Le chargement entraînera la perte de votre progression depuis la dernière sauvegarde.\nÊtes-vous sûr de vouloir faire cela ?"

    # 00gui.rpy:231
    old "Are you sure you want to quit?"
    new "Êtes-vous sûr de vouloir quitter ?"

    # 00gui.rpy:232
    old "Are you sure you want to return to the main menu?\nThis will lose unsaved progress."
    new "Êtes-vous sûr de vouloir retourner au menu principal ?\nVotre progression depuis la dernière sauvegarde sera perdue."

    # 00gui.rpy:233
    old "Are you sure you want to end the replay?"
    new "Êtes-vous sûr de vouloir arrêter la rediffusion ?"

    # 00gui.rpy:234
    old "Are you sure you want to begin skipping?"
    new "Êtes-vous sûr de vouloir sauter les dialogues ?"

    # 00gui.rpy:235
    old "Are you sure you want to skip to the next choice?"
    new "Êtes-vous sûr de vouloir sauter les dialogues jusqu’au prochain choix ?"

    # 00gui.rpy:236
    old "Are you sure you want to skip unseen dialogue to the next choice?"
    new "Êtes-vous sûr de vouloir sauter les dialogues non vus jusqu’au prochain choix ?"

    # 00keymap.rpy:250
    old "Saved screenshot as %s."
    new "Capture d’écran sauvegardée sous le nom %s."

    # 00library.rpy:142
    old "Self-voicing disabled."
    new "Lecture vocale désactivée."

    # 00library.rpy:143
    old "Clipboard voicing enabled. "
    new "Lecture vocale vers presse-papier activée. "

    # 00library.rpy:144
    old "Self-voicing enabled. "
    new "Lecture vocale activée. "

    # 00library.rpy:179
    old "Skip Mode"
    new "Mode avance rapide"

    # 00library.rpy:262
    old "This program contains free software under a number of licenses, including the MIT License and GNU Lesser General Public License. A complete list of software, including links to full source code, can be found {a=https://www.renpy.org/l/license}here{/a}."
    new "Ce programme contient un logiciel libre soumis à de nombreuses licences incluant la licence « MIT » et la licence « GNU Lesser General Public License ». La liste complète des logiciels, incluant les liens vers le code source complet, peut-être trouvée {a=https://www.renpy.org/l/license}ici{/a}."

    # 00preferences.rpy:422
    old "Clipboard voicing enabled. Press 'shift+C' to disable."
    new "Lecture vocale vers presse-papier activée. Pressez « Maj+C » pour la désactiver."

    # 00preferences.rpy:424
    old "Self-voicing would say \"[renpy.display.tts.last]\". Press 'alt+shift+V' to disable."
    new "La lecture vocale veut dire « [renpy.display.tts.last] ». Pressez « Alt+Maj+V » pour la désactiver."

    # 00preferences.rpy:426
    old "Self-voicing enabled. Press 'v' to disable."
    new "Lecture vocale activée. Pressez « v » pour la désactiver."

    # 00iap.rpy:217
    old "Contacting App Store\nPlease Wait..."
    new "Connexion à l’Apple Store.\nVeuillez patienter…"

    # 00updater.rpy:367
    old "The Ren'Py Updater is not supported on mobile devices."
    new "La mise à jour automatique de Ren’Py n’est pas supportée sur les appareils mobiles."

    # 00updater.rpy:486
    old "An error is being simulated."
    new "Une erreur est en train d’être simulée."

    # 00updater.rpy:662
    old "Either this project does not support updating, or the update status file was deleted."
    new "Soit ce projet ne supporte pas la mise à jour, soit le fichier d’état des mises à jour a été supprimé."

    # 00updater.rpy:676
    old "This account does not have permission to perform an update."
    new "Ce compte n’a pas la permission de réaliser une mise à jour."

    # 00updater.rpy:679
    old "This account does not have permission to write the update log."
    new "Ce compte n’a pas la permission d’écrire dans le journal de mise à jour."

    # 00updater.rpy:704
    old "Could not verify update signature."
    new "Impossible de vérifier la signature de la mise à jour."

    # 00updater.rpy:975
    old "The update file was not downloaded."
    new "Le fichier de mise à jour n’a pas été téléchargé."

    # 00updater.rpy:993
    old "The update file does not have the correct digest - it may have been corrupted."
    new "Le fichier de mise à jour présente une signature incorrecte, le fichier peut avoir été corrompu."

    # 00updater.rpy:1049
    old "While unpacking {}, unknown type {}."
    new "En décompressant {}, type {} inconnu."

    # 00updater.rpy:1393
    old "Updater"
    new "Mise à jour"

    # 00updater.rpy:1404
    old "This program is up to date."
    new "Ce programme est à jour."

    # 00updater.rpy:1406
    old "[u.version] is available. Do you want to install it?"
    new "[u.version] est disponible. Voulez-vous l’installer ?"

    # 00updater.rpy:1408
    old "Preparing to download the updates."
    new "Préparation du téléchargement de la mise à jour."

    # 00updater.rpy:1410
    old "Downloading the updates."
    new "Téléchargement de la mise à jour."

    # 00updater.rpy:1412
    old "Unpacking the updates."
    new "Décompression de la mise à jour."

    # 00updater.rpy:1416
    old "The updates have been installed. The program will restart."
    new "La mise à jour a été installée. Le programme va redémarrer."

    # 00updater.rpy:1418
    old "The updates have been installed."
    new "La mise à jour a été installée."

    # 00updater.rpy:1420
    old "The updates were cancelled."
    new "La mise à jour a été annulée."

    # 00gallery.rpy:563
    old "Image [index] of [count] locked."
    new "Image [index] sur [count] verrouillée."

    # 00gallery.rpy:583
    old "prev"
    new "préc."

    # 00gallery.rpy:584
    old "next"
    new "suiv."

    # 00gallery.rpy:585
    old "slideshow"
    new "diaporama"

    # 00gallery.rpy:586
    old "return"
    new "retour"

translate french strings:

    # renpy/common/00accessibility.rpy:76
    old "Font Override"
    new "Forcer la police"

    # renpy/common/00accessibility.rpy:80
    old "Default"
    new "Par défaut"

    # renpy/common/00accessibility.rpy:84
    old "DejaVu Sans"
    new "DejaVu Sans"

    # renpy/common/00accessibility.rpy:88
    old "Opendyslexic"
    new "Opendyslexic"

    # renpy/common/00accessibility.rpy:94
    old "Text Size Scaling"
    new "Redimensionnement du texte"

    # renpy/common/00accessibility.rpy:100
    old "Reset"
    new "Réinitaliser"

    # renpy/common/00accessibility.rpy:105
    old "Line Spacing Scaling"
    new "Espacement vertical"

    # renpy/common/00accessibility.rpy:117
    old "Self-Voicing"
    new "Lecture vocale"

    # renpy/common/00accessibility.rpy:121
    old "Off"
    new "Désactivée"

    # renpy/common/00accessibility.rpy:125
    old "Text-to-speech"
    new "Synthèse vocale"

    # renpy/common/00accessibility.rpy:129
    old "Clipboard"
    new "Presse-papier"

    # renpy/common/00accessibility.rpy:133
    old "Debug"
    new "Débogage"

    # renpy/common/00accessibility.rpy:32
    old "bar"
    new "barre"

    # renpy/common/00accessibility.rpy:33
    old "selected"
    new "sélectionné"

    # renpy/common/00accessibility.rpy:34
    old "viewport"
    new "viewport"

    # renpy/common/00accessibility.rpy:35
    old "horizontal scroll"
    new "barre de scrolling horizontal"

    # renpy/common/00accessibility.rpy:36
    old "vertical scroll"
    new "barre de scrolling vertical"

    # renpy/common/00accessibility.rpy:37
    old "activate"
    new "activer"

    # renpy/common/00accessibility.rpy:38
    old "deactivate"
    new "désactiver"

    # renpy/common/00accessibility.rpy:39
    old "increase"
    new "augmenter"

    # renpy/common/00accessibility.rpy:40
    old "decrease"
    new "diminuer"

    # renpy/common/00accessibility.rpy:193
    old "Self-Voicing Volume Drop"
    new "Baisse de volume pendant la lecture vocale"

    # renpy/common/00accessibility.rpy:202
    old "The options on this menu are intended to improve accessibility. They may not work with all games, and some combinations of options may render the game unplayable. This is not an issue with the game or engine. For the best results when changing fonts, try to keep the text size the same as it originally was."
    new "Les options de ce menu ont pour objectif d'augmenter l'accessibilité. Elles peuvent ne pas fonctionner sur tous les jeux, et certaines combinations d'options peuvent rendre le jeu injouable. Le problème ne vient pas du jeu ou du moteur. Pour de meilleurs résultats en changeant la police, essayez de maintenir le texte de la même taille qu'avant."

    # renpy/common/00action_file.rpy:353
    old "Save slot %s: [text]"
    new "Sauvegarder %s: [text]"

    # renpy/common/00action_file.rpy:434
    old "Load slot %s: [text]"
    new "Charger %s: [text]"

    # renpy/common/00action_file.rpy:487
    old "Delete slot [text]"
    new "Supprimer slot [text]"

    # renpy/common/00action_file.rpy:566
    old "File page auto"
    new "Page auto"

    # renpy/common/00action_file.rpy:568
    old "File page quick"
    new "Page rapide"

    # renpy/common/00action_file.rpy:570
    old "File page [text]"
    new "Page [text]"

    # renpy/common/00action_file.rpy:769
    old "Next file page."
    new "Page suivante."

    # renpy/common/00action_file.rpy:841
    old "Previous file page."
    new "Page précédente."

    # renpy/common/00action_file.rpy:920
    old "Quick save."
    new "Sauvegarde rapide."

    # renpy/common/00action_file.rpy:939
    old "Quick load."
    new "Chargement rapide."

    # renpy/common/00action_other.rpy:375
    old "Language [text]"
    new "Langue [text]"

    # renpy/common/00director.rpy:708
    old "The interactive director is not enabled here."
    new "Le réalisateur interactif n'est pas activé ici."

    # renpy/common/00director.rpy:1481
    old "⬆"
    new "⬆"

    # renpy/common/00director.rpy:1487
    old "⬇"
    new "⬇"

    # renpy/common/00director.rpy:1551
    old "Done"
    new "Fait"

    # renpy/common/00director.rpy:1561
    old "(statement)"
    new "(statement)"

    # renpy/common/00director.rpy:1562
    old "(tag)"
    new "(tag)"

    # renpy/common/00director.rpy:1563
    old "(attributes)"
    new "(attributs)"

    # renpy/common/00director.rpy:1564
    old "(transform)"
    new "(transform)"

    # renpy/common/00director.rpy:1589
    old "(transition)"
    new "(transition)"

    # renpy/common/00director.rpy:1601
    old "(channel)"
    new "(channel)"

    # renpy/common/00director.rpy:1602
    old "(filename)"
    new "(fichier)"

    # renpy/common/00director.rpy:1631
    old "Change"
    new "Changer"

    # renpy/common/00director.rpy:1633
    old "Add"
    new "Ajouter"

    # renpy/common/00director.rpy:1639
    old "Remove"
    new "Retirer"

    # renpy/common/00director.rpy:1674
    old "Statement:"
    new "Statement :"

    # renpy/common/00director.rpy:1695
    old "Tag:"
    new "Tag :"

    # renpy/common/00director.rpy:1711
    old "Attributes:"
    new "Attributs :"

    # renpy/common/00director.rpy:1729
    old "Transforms:"
    new "Transforms :"

    # renpy/common/00director.rpy:1748
    old "Behind:"
    new "Sous :"

    # renpy/common/00director.rpy:1767
    old "Transition:"
    new "Transition :"

    # renpy/common/00director.rpy:1785
    old "Channel:"
    new "Channel :"

    # renpy/common/00director.rpy:1803
    old "Audio Filename:"
    new "Fichier audio :"

    # renpy/common/00keymap.rpy:300
    old "Failed to save screenshot as %s."
    new "Échec de sauvegarde de la capture d'écran %s."

    # renpy/common/00preferences.rpy:240
    old "display"
    new "affichage"

    # renpy/common/00preferences.rpy:252
    old "transitions"
    new "transitions"

    # renpy/common/00preferences.rpy:261
    old "skip transitions"
    new "passer les transitions"

    # renpy/common/00preferences.rpy:263
    old "video sprites"
    new "sprites vidéo"

    # renpy/common/00preferences.rpy:272
    old "show empty window"
    new "afficher fenêtre vide"

    # renpy/common/00preferences.rpy:281
    old "text speed"
    new "vitesse du texte"

    # renpy/common/00preferences.rpy:289
    old "joystick"
    new "joystick"

    # renpy/common/00preferences.rpy:289
    old "joystick..."
    new "joystick..."

    # renpy/common/00preferences.rpy:296
    old "skip"
    new "passer"

    # renpy/common/00preferences.rpy:299
    old "skip unseen [text]"
    new "passer [text] non lus"

    # renpy/common/00preferences.rpy:304
    old "skip unseen text"
    new "passer le texte non lu"

    # renpy/common/00preferences.rpy:306
    old "begin skipping"
    new "commencer à passer"

    # renpy/common/00preferences.rpy:310
    old "after choices"
    new "après les choix"

    # renpy/common/00preferences.rpy:317
    old "skip after choices"
    new "passer après les choix"

    # renpy/common/00preferences.rpy:319
    old "auto-forward time"
    new "avancée du temps automatique"

    # renpy/common/00preferences.rpy:333
    old "auto-forward"
    new "avancée automatique"

    # renpy/common/00preferences.rpy:340
    old "Auto forward"
    new "Avancée automatique"

    # renpy/common/00preferences.rpy:343
    old "auto-forward after click"
    new "avancée automatique après un clic"

    # renpy/common/00preferences.rpy:352
    old "automatic move"
    new "mouvement automatique"

    # renpy/common/00preferences.rpy:361
    old "wait for voice"
    new "attendre la voix"

    # renpy/common/00preferences.rpy:370
    old "voice sustain"
    new "maintien de la voix"

    # renpy/common/00preferences.rpy:379
    old "self voicing"
    new "lecture vocale"

    # renpy/common/00preferences.rpy:388
    old "self voicing volume drop"
    new "baisse de volume pendant la lecture vocale"

    # renpy/common/00preferences.rpy:396
    old "clipboard voicing"
    new "voix par presse-papier"

    # renpy/common/00preferences.rpy:405
    old "debug voicing"
    new "voix de debug"

    # renpy/common/00preferences.rpy:414
    old "emphasize audio"
    new "mise en valeur de l'audio"

    # renpy/common/00preferences.rpy:423
    old "rollback side"
    new "côté de rollback"

    # renpy/common/00preferences.rpy:433
    old "gl powersave"
    new "gl économie d'énergie"

    # renpy/common/00preferences.rpy:439
    old "gl framerate"
    new "gl images par seconde"

    # renpy/common/00preferences.rpy:442
    old "gl tearing"
    new "gl tearing"

    # renpy/common/00preferences.rpy:445
    old "font transform"
    new "apparence de la police"

    # renpy/common/00preferences.rpy:448
    old "font size"
    new "taille de police"

    # renpy/common/00preferences.rpy:456
    old "font line spacing"
    new "taille d'espaces"

    # renpy/common/00preferences.rpy:464
    old "system cursor"
    new "curseur système"

    # renpy/common/00preferences.rpy:484
    old "music volume"
    new "volume de la musique"

    # renpy/common/00preferences.rpy:485
    old "sound volume"
    new "volume du son"

    # renpy/common/00preferences.rpy:486
    old "voice volume"
    new "volume des voix"

    # renpy/common/00preferences.rpy:487
    old "mute music"
    new "couper la musique"

    # renpy/common/00preferences.rpy:488
    old "mute sound"
    new "couper le son"

    # renpy/common/00preferences.rpy:489
    old "mute voice"
    new "couper les voix"

    # renpy/common/00preferences.rpy:490
    old "mute all"
    new "couper tout"

    # renpy/common/_developer/developer.rpym:43
    old "Interactive Director (D)"
    new "Réalisateur interactif (D)"

    # renpy/common/_developer/developer.rpym:57
    old "Show Image Load Log (F4)"
    new "Montrer le log ne chargement des images (F4)"

    # renpy/common/_developer/developer.rpym:60
    old "Hide Image Load Log (F4)"
    new "Masquer le log de chargement des images (F4)"

    # renpy/common/_developer/developer.rpym:63
    old "Image Attributes"
    new "Attributs d'image"

    # renpy/common/_developer/developer.rpym:90
    old "[name] [attributes] (hidden)"
    new "[name] [attributes] (masqué)"

    # renpy/common/_developer/developer.rpym:94
    old "[name] [attributes]"
    new "[name] [attributes]"

    # renpy/common/_developer/developer.rpym:154
    old "Hide deleted"
    new "Masquer les supprimés"

    # renpy/common/_developer/developer.rpym:154
    old "Show deleted"
    new "Montrer les supprimés"

    # renpy/common/_developer/developer.rpym:506
    old "Type to filter: "
    new "Type à filtrer : "

    # renpy/common/_developer/developer.rpym:631
    old "Textures: [tex_count] ([tex_size_mb:.1f] MB)"
    new "Textures : [tex_count] ([tex_size_mb:.1f] MB)"

    # renpy/common/_developer/developer.rpym:635
    old "Image cache: [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"
    new "Cache d'images : [cache_pct:.1f]% ([cache_size_mb:.1f] MB)"

    # renpy/common/00preferences.rpy:480
    old "renderer menu"
    new "menu de rendu"

    # renpy/common/00preferences.rpy:483
    old "accessibility menu"
    new "menu d'accessibilité"

    # renpy/common/00accessibility.rpy:180
    old "High Contrast Text"
    new "Texte en contraste élevé (surbrillance)"

    # renpy/common/00preferences.rpy:493
    old "high contrast text"
    new "texte en contraste élevé"
