]> git.donarmstrong.com Git - lilypond.git/blobdiff - po/fr.po
lilypond-manuals.css: edit color scheme and some spacing
[lilypond.git] / po / fr.po
index 3a2eb2f12004ae5164c8e14bcfd81f17adab2276..b77f4f2d0430e6fe93736bd9a2161442d2e43d85 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
 # French translation of GNU/lilypond - http//lilypond.org
 # Copyright © 2004 Free Software Foundation, Inc.
 # Michel Robitaille <robitail@IRO.UMontreal.CA>, 1996-2007.
-# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2012
+# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2015
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.15.29\n"
+"Project-Id-Version: lilypond 2.19.54\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2012-02-04 15:42+0100\n"
-"PO-Revision-Date: 2012-02-07 20:31+0100\n"
+"POT-Creation-Date: 2017-01-03 14:31+0000\n"
+"PO-Revision-Date: 2017-01-07 16:26+0100\n"
 "Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
 "Language: fr\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Bugs: Report translation errors to the Language-Team address.\n"
 "Plural-Forms: nplurals=2; plural=(n > 1);\n"
 
-#: fontextract.py:25
+#: book_base.py:26
 #, python-format
-msgid "Scanning %s"
-msgstr "Scannage de %s"
+msgid "file not found: %s"
+msgstr "fichier non trouvé : %s"
 
-#: fontextract.py:70
+#: book_base.py:164
+msgid "Output function not implemented"
+msgstr "Fonction de production non implémentée."
+
+#: book_latex.py:174
+#, python-brace-format
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+
+#: book_latex.py:190
 #, python-format
-msgid "Extracted %s"
-msgstr "Extraction de %s"
+msgid "Running `%s' on file `%s' to detect default page settings.\n"
+msgstr ""
+"Traitement par « %s » du fichier « %s »\n"
+"  pour déterminer la mise en page par défaut.\n"
 
-#: fontextract.py:85
+#: book_latex.py:219 book_texinfo.py:230
+msgid "Unable to auto-detect default settings:\n"
+msgstr "Impossible de détecter automatiquement les réglages par défaut :\n"
+
+#: book_latex.py:231 book_texinfo.py:242
 #, python-format
-msgid "Writing fonts to %s"
-msgstr "Écriture des fontes vers %s"
+msgid ""
+"Unable to auto-detect default settings:\n"
+"%s"
+msgstr ""
+"Impossible de détecter automatiquement les réglages par défaut :\n"
+"%s"
 
-#: book_snippets.py:409
+#: book_latex.py:254
+msgid "cannot detect textwidth from LaTeX"
+msgstr "impossible d'extraire la largeur du texte à partir de LaTeX"
+
+#: book_snippets.py:406
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
-msgstr "option ly-option obsolète : %s=%s"
+msgstr "option ly-option obsolète : %s=%s"
 
-#: book_snippets.py:411
+#: book_snippets.py:408
 #, python-format
 msgid "compatibility mode translation: %s=%s"
-msgstr "bascule en mode de compatibilité : %s=%s"
+msgstr "bascule en mode de compatibilité : %s=%s"
 
-#: book_snippets.py:414
+#: book_snippets.py:411
 #, python-format
 msgid "deprecated ly-option used: %s"
-msgstr "option ly-option obsolète : %s"
+msgstr "option ly-option obsolète : %s"
 
-#: book_snippets.py:416
+#: book_snippets.py:413
 #, python-format
 msgid "compatibility mode translation: %s"
-msgstr "bascule en mode de compatibilité : %s"
+msgstr "bascule en mode de compatibilité : %s"
 
-#: book_snippets.py:533
+#: book_snippets.py:530
 #, python-format
 msgid "ignoring unknown ly option: %s"
-msgstr "option ly inconnue et ignorée : %s"
+msgstr "option ly inconnue et ignorée : %s"
+
+#: book_snippets.py:621
+#, python-format
+msgid "Missing files: %s"
+msgstr "Fichier absent : %s"
+
+#: book_snippets.py:661
+#, python-format
+msgid "Could not overwrite file %s"
+msgstr "Impossible d'écraser le fichier « %s »"
 
-#: book_snippets.py:741
+#: book_snippets.py:748
 #, python-format
 msgid "Running through filter `%s'"
-msgstr "Passage par le filtre « %s »"
+msgstr "Passage par le filtre « %s »"
 
-#: book_snippets.py:761
+#: book_snippets.py:769
 #, python-format
 msgid "`%s' failed (%d)"
-msgstr "« %s » a échoué (%d)"
+msgstr "« %s » a échoué (%d)"
 
-#: book_snippets.py:762
+#: book_snippets.py:770
 msgid "The error log is as follows:"
-msgstr "Voici le journal d'erreurs :"
+msgstr "Voici le journal d'erreurs :"
 
-#: book_snippets.py:882
+#: book_snippets.py:890
 #, python-format
 msgid "Converting MusicXML file `%s'...\n"
-msgstr "Lecture du fichier MusicXML %s...\n"
+msgstr "Lecture du fichier MusicXML « %s »...\n"
 
-#: book_snippets.py:909
+#: book_snippets.py:917
 #, python-format
 msgid ""
 "%s: duplicate filename but different contents of original file,\n"
 "printing diff against existing file."
 msgstr ""
-"%s : fichier en doublon mais contenu différent de l'original,\n"
-"impression d'un différentiel entre les deux fichiers."
+"%s : fichier en doublon mais contenu différent de l'original,\n"
+"  impression d'un différentiel entre les deux fichiers."
 
-#: book_snippets.py:922
+#: book_snippets.py:930
 #, python-format
 msgid ""
 "%s: duplicate filename but different contents of converted lilypond file,\n"
 "printing diff against existing file."
 msgstr ""
-"%s : fichier en doublon mais contenu différent du fichier lilypond\n"
-"converti, impression d'un différentiel entre les deux fichiers."
+"%s : fichier en doublon mais contenu différent du fichier lilypond\n"
+"  converti ; impression d'un différentiel entre les deux fichiers."
 
-#: convertrules.py:12
+#. Work around a texi2pdf bug: if LANG=C is not given, a broken regexp is
+#. used to detect relative/absolute paths, so the absolute path is not
+#. detected as such and this command fails:
+#: book_texinfo.py:208
 #, python-format
-msgid "Not smart enough to convert %s."
-msgstr "Pas assez intelligent pour convertir « %s »."
+msgid "Running texi2pdf on file %s to detect default page settings.\n"
+msgstr "Traitement de « %s » par texi2pdf pour détecter la mise en page par défaut.\n"
 
 #: convertrules.py:13
+#, python-format
+msgid "Not smart enough to convert %s."
+msgstr "Pas assez intelligent pour convertir « %s »."
+
+#: convertrules.py:14
 msgid "Please refer to the manual for details, and update manually."
 msgstr ""
 "Consultez le manuel pour plus de détails,\n"
-"et faites la mise à jour manuellement."
+"  et faites la mise à jour manuellement."
 
-#: convertrules.py:14
+#: convertrules.py:15
 #, python-format
 msgid "%s has been replaced by %s"
 msgstr "%s a été remplacé par %s"
 
-#: convertrules.py:24 lilylib.py:131 warn.cc:223
+#: convertrules.py:25 lilylib.py:136 warn.cc:223
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "Avertissement : %s"
 
-#: convertrules.py:49 convertrules.py:94
+#: convertrules.py:50 convertrules.py:95
 msgid "\\header { key = concat + with + operator }"
 msgstr "\\header { clé = concat + avec + opérateur }"
 
-#: convertrules.py:56
+#: convertrules.py:57
 #, python-format
 msgid "deprecated %s"
 msgstr "%s est obsolète"
 
-#: convertrules.py:65
+#: convertrules.py:66
 msgid "deprecated \\textstyle, new \\key syntax"
-msgstr "\\textstyle est obsolète ; utiliser désormais la syntaxe \\key"
+msgstr "\\textstyle est obsolète ; utiliser désormais la syntaxe \\key"
 
-#: convertrules.py:81 convertrules.py:1855 convertrules.py:2031
-#: convertrules.py:2174 convertrules.py:2505 convertrules.py:2800
-#: convertrules.py:3150
+#: convertrules.py:82 convertrules.py:1856 convertrules.py:2032
+#: convertrules.py:2175 convertrules.py:2506 convertrules.py:2801
+#: convertrules.py:3151 convertrules.py:3388 convertrules.py:3700
 msgid "bump version for release"
 msgstr "sauter de version pour mise à jour"
 
-#: convertrules.py:97
+#: convertrules.py:98
 msgid "new \\header format"
 msgstr "nouveau format de \\header"
 
-#: convertrules.py:124
+#: convertrules.py:125
 msgid "\\translator syntax"
 msgstr "syntaxe de \\translator"
 
-#: convertrules.py:175
+#: convertrules.py:176
 msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
 msgstr "\\repeat NUM Musique Alternative -> \\repeat FOLDSTR Musique Alternative"
 
-#: convertrules.py:205 convertrules.py:678 convertrules.py:1350
-#: convertrules.py:2317
+#: convertrules.py:206 convertrules.py:679 convertrules.py:1351
+#: convertrules.py:2318
 #, python-format
 msgid "deprecate %s"
 msgstr "%s obsolète"
 
-#: convertrules.py:279
+#: convertrules.py:280
 #, python-format
 msgid "deprecate %s "
 msgstr "%s obsolète"
 
-#: convertrules.py:305
+#: convertrules.py:306
 msgid "new \\notenames format"
 msgstr "nouveau format de \\notenames"
 
-#: convertrules.py:321
+#: convertrules.py:322
 msgid "new tremolo format"
 msgstr "nouveau format de tremolo"
 
-#: convertrules.py:325
+#: convertrules.py:326
 msgid "Staff_margin_engraver deprecated, use Instrument_name_engraver"
-msgstr "Staff_margin_engraver est obsolète ; utiliser Instrument_name_engraver"
+msgstr "Staff_margin_engraver est obsolète ; utiliser Instrument_name_engraver"
 
-#: convertrules.py:376
+#: convertrules.py:377
 msgid "change property definition case (eg. onevoice -> oneVoice)"
 msgstr "modifier la casse pour définir une propriété (par ex. onevoice -> oneVoice)"
 
-#: convertrules.py:437
+#: convertrules.py:438
 msgid "new \\textscript markup text"
 msgstr "nouvelle étiquette de texte \\textscript"
 
-#: convertrules.py:509
+#: convertrules.py:510
 #, python-format
 msgid "identifier names: %s"
-msgstr "Nom des identificateurs : %s"
+msgstr "Nom des identificateurs : %s"
 
-#: convertrules.py:548
+#: convertrules.py:549
 msgid "point-and-click argument changed to procedure."
 msgstr "L'argument de point-and-click a été changé en procédure."
 
-#: convertrules.py:590
+#: convertrules.py:591
 msgid "semicolons removed"
 msgstr "Suppression des points-virgules"
 
 #. 40 ?
-#: convertrules.py:633
+#: convertrules.py:634
 #, python-format
 msgid "%s property names"
 msgstr "%s noms de propriété"
 
-#: convertrules.py:703
+#: convertrules.py:704
 msgid "automaticMelismata turned on by default"
 msgstr "automaticMelismata est activé par défaut."
 
-#: convertrules.py:708
+#: convertrules.py:709
 msgid "automaticMelismata is turned on by default since 1.5.67."
 msgstr "automaticMelismata est activé par défaut depuis la version 1.5.67."
 
-#: convertrules.py:942 convertrules.py:1635 convertrules.py:1889
-#: convertrules.py:2134
+#: convertrules.py:943 convertrules.py:1636 convertrules.py:1890
+#: convertrules.py:2135
 #, python-format
 msgid "remove %s"
 msgstr "Retrait de %s"
 
-#: convertrules.py:977 convertrules.py:980
+#: convertrules.py:978 convertrules.py:981
 msgid "cluster syntax"
 msgstr "Syntaxe de cluster"
 
-#: convertrules.py:987
+#: convertrules.py:988
 msgid "new Pedal style syntax"
 msgstr "Nouvelle syntaxe du style de Pedal"
 
-#: convertrules.py:1246
+#: convertrules.py:1247
 msgid ""
 "New relative mode,\n"
 "Postfix articulations, new text markup syntax, new chord syntax."
@@ -228,30 +270,30 @@ msgstr ""
 "Nouveau mode relatif, articulations Postfix,\n"
 "nouvelle syntaxe des étiquettes de texte, nouvelle syntaxe d'accord."
 
-#: convertrules.py:1259
+#: convertrules.py:1260
 msgid "Remove - before articulation"
 msgstr "Retrait du - précédant l'articulation"
 
-#: convertrules.py:1294
+#: convertrules.py:1295
 #, python-format
 msgid "%s misspelling"
 msgstr "%s mal orthographié"
 
-#: convertrules.py:1313
+#: convertrules.py:1314
 msgid "Swap < > and << >>"
 msgstr "Interchanger < > et << >>"
 
-#: convertrules.py:1316
+#: convertrules.py:1317
 msgid "attempting automatic \\figures conversion.  Check results!"
 msgstr ""
 "tentative de conversion automatique des \\figures.\n"
-"Résultats à vérifier !"
+"  Résultats à vérifier !"
 
-#: convertrules.py:1362
+#: convertrules.py:1363
 msgid "Use Scheme code to construct arbitrary note events."
 msgstr "Utilisation de code Scheme pour construire des événements note arbitraires."
 
-#: convertrules.py:1369
+#: convertrules.py:1370
 msgid ""
 "use symbolic constants for alterations,\n"
 "remove \\outputproperty, move ly:verbose into ly:get-option"
@@ -259,7 +301,7 @@ msgstr ""
 "Utilisation de constantes symboliques pour les altérations,\n"
 "suppression de \\outputproperty, ly:verbose devient ly:get-option"
 
-#: convertrules.py:1394
+#: convertrules.py:1395
 #, python-format
 msgid ""
 "\\outputproperty found,\n"
@@ -269,14 +311,14 @@ msgid ""
 "\n"
 "as a substitution text."
 msgstr ""
-"Un \\outputproperty a été détecté ;\n"
+"Un \\outputproperty a été détecté ;\n"
 "éditer manuellement, en utilisant\n"
 "\n"
 "  \\applyoutput #(outputproperty-compatibility %s '%s <GROB PROPRIÉTÉ VALEUR>)\n"
 "\n"
 "comme texte de substitution."
 
-#: convertrules.py:1406
+#: convertrules.py:1407
 msgid ""
 "The alteration field of Scheme pitches was multiplied by 2\n"
 "to support quarter tone accidentals.  You must update the following constructs manually:\n"
@@ -286,20 +328,20 @@ msgid ""
 msgstr ""
 "Pour pouvoir tenir compte des quarts de ton en codage Scheme,\n"
 "le nombre d'arguments d'une altération a été doublé.\n"
-"Les constructions suivantes doivent être adaptées manuellement :\n"
+"Les constructions suivantes doivent être adaptées manuellement :\n"
 "\n"
 "* appels à ly:make-pitch et ly:pitch-alteration\n"
 "* recours à \\property pour définir keySignature\n"
 
-#: convertrules.py:1449
+#: convertrules.py:1450
 msgid "removal of automaticMelismata; use melismaBusyProperties instead."
 msgstr "Suppression de automaticMelismata au profit de melismaBusyProperties."
 
-#: convertrules.py:1556
+#: convertrules.py:1557
 msgid "\\partcombine syntax change to \\newpartcombine"
 msgstr "La syntaxe de \\partcombine évolue avec \\newpartcombine"
 
-#: convertrules.py:1581
+#: convertrules.py:1582
 msgid ""
 "Drum notation changes, Removing \\chordmodifiers, \\notenames.\n"
 "Harmonic notes. Thread context removed. Lyrics context removed."
@@ -307,62 +349,62 @@ msgstr ""
 "Changements de notation pour percussions. Suppression de \\chordmodifiers\n"
 "et \\notenames. Notes harmoniques. Contextes Thread et Lyrics supprimés."
 
-#: convertrules.py:1585
+#: convertrules.py:1586
 msgid "Drums found. Enclose drum notes in \\drummode"
 msgstr "Il y a des percussions. Encadrer leurs notes dans un \\drummode."
 
-#: convertrules.py:1596 convertrules.py:1603 convertrules.py:1614
+#: convertrules.py:1597 convertrules.py:1604 convertrules.py:1615
 #, python-format
 msgid ""
 "\n"
 "%s found. Check file manually!\n"
 msgstr ""
 "\n"
-"Détection de %s. Vérifier le fichier manuellement !\n"
+"Détection de %s. Vérifier le fichier manuellement !\n"
 
-#: convertrules.py:1596
+#: convertrules.py:1597
 msgid "Drum notation"
 msgstr "Notation de percussions"
 
-#: convertrules.py:1655
+#: convertrules.py:1656
 msgid "new syntax for property settings:"
-msgstr "nouvelle syntaxe des réglages de propriétés :"
+msgstr "nouvelle syntaxe des réglages de propriétés :"
 
-#: convertrules.py:1681
+#: convertrules.py:1682
 msgid "Property setting syntax in \\translator{ }"
 msgstr "Syntaxe pour régler une propriété dans \\translator{ }"
 
-#: convertrules.py:1720
+#: convertrules.py:1721
 msgid "Scheme grob function renaming"
 msgstr "Renommage de fonction grob Scheme"
 
-#: convertrules.py:1731 convertrules.py:2138 convertrules.py:2142
-#: convertrules.py:2708
+#: convertrules.py:1732 convertrules.py:2139 convertrules.py:2143
+#: convertrules.py:2709
 #, python-format
 msgid "Use %s\n"
 msgstr "Utilisation de %s\n"
 
-#: convertrules.py:1747
+#: convertrules.py:1748
 msgid "More Scheme function renaming"
 msgstr "Renommage d'autres fonctions Scheme"
 
-#: convertrules.py:1871
+#: convertrules.py:1872
 msgid ""
 "Page layout has been changed, using paper size and margins.\n"
 "textheight is no longer used.\n"
 msgstr ""
 "La mise en page a été modifiée, utilisant la taille du papier et les marges.\n"
-"« textheight » n'est plus utilisé.\n"
+"« textheight » n'est plus utilisé.\n"
 
-#: convertrules.py:1957
+#: convertrules.py:1958
 msgid ""
 "\\foo -> \\foomode (for chords, notes, etc.)\n"
 "fold \\new FooContext \\foomode into \\foo."
 msgstr ""
 "\\toto -> \\totomode (pour accords, notes, etc.)\n"
-"transforme « \\new TotoContext \\totomode » en \\toto."
+"transforme « \\new TotoContext \\totomode » en \\toto."
 
-#: convertrules.py:1995
+#: convertrules.py:1996
 msgid ""
 "staff size should be changed at top-level\n"
 "with\n"
@@ -376,40 +418,42 @@ msgstr ""
 "  #(set-global-staff-size <HAUTEUR-DE-PORTÉE-EN-POINTS>)\n"
 "\n"
 
-#: convertrules.py:2015
+#: convertrules.py:2016
 msgid "regularize other identifiers"
 msgstr "Normalisation d'autres identifiants"
 
-#: convertrules.py:2083
+#: convertrules.py:2084
 msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
-msgstr "\\encoding : recodage latin1..utf-8. Suppression de ly:point-and-click"
+msgstr ""
+"\\encoding : recodage de latin1 à utf-8.\n"
+"Suppression de ly:point-and-click"
 
-#: convertrules.py:2094
+#: convertrules.py:2095
 msgid "LilyPond source must be UTF-8"
 msgstr "Le fichier source LilyPond doit être codé en UTF-8."
 
-#: convertrules.py:2097
+#: convertrules.py:2098
 msgid "Try the texstrings backend"
 msgstr "Essayer le moteur texstrings (texstrings backend)."
 
-#: convertrules.py:2100
+#: convertrules.py:2101
 #, python-format
 msgid "Do something like: %s"
-msgstr "Faites quelque chose comme : %s"
+msgstr "Faites quelque chose comme : %s"
 
-#: convertrules.py:2103
+#: convertrules.py:2104
 msgid "Or save as UTF-8 in your editor"
 msgstr "ou sauvegardez au format UTF-8 à l'aide de votre éditeur"
 
-#: convertrules.py:2153
+#: convertrules.py:2154
 msgid "warn about auto beam settings"
 msgstr "Avertissement au sujet des ligatures automatiques"
 
-#: convertrules.py:2157
+#: convertrules.py:2158
 msgid "auto beam settings"
 msgstr "réglage des ligatures automatiques"
 
-#: convertrules.py:2158
+#: convertrules.py:2159
 msgid ""
 "\n"
 "Auto beam settings must now specify each interesting moment in a measure\n"
@@ -419,39 +463,39 @@ msgstr ""
 "Le réglage des ligatures automatiques doit explicitement spécifier chaque\n"
 "moment de la mesure. 1/4 ne prend désormais plus en charge 1/2 et 3/4.\n"
 
-#: convertrules.py:2271
+#: convertrules.py:2272
 msgid "verticalAlignmentChildCallback has been deprecated"
 msgstr "verticalAlignmentChildCallback est désuet"
 
-#: convertrules.py:2276
+#: convertrules.py:2277
 msgid "Remove callbacks property, deprecate XY-extent-callback."
 msgstr "Suppression des propriétés de rappel, les XY-extent-callback sont obsolètes."
 
-#: convertrules.py:2297
+#: convertrules.py:2298
 msgid "Use grob closures iso. XY-offset-callbacks."
 msgstr "Utilisation des clôtures de grob comme avec XY-offset-callbacks."
 
-#: convertrules.py:2359
+#: convertrules.py:2360
 msgid "foobar -> foo-bar for \\paper, \\layout"
 msgstr "taratata -> tara-tata pour \\paper et \\layout"
 
-#: convertrules.py:2469
+#: convertrules.py:2470
 msgid "deprecate \\tempo in \\midi"
 msgstr "\\tempo au sein d'une section \\midi est obsolète"
 
-#: convertrules.py:2522
+#: convertrules.py:2523
 msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
 msgstr "cautionary-style est désuet. Utilisation des propriétés AccidentalCautionary."
 
-#: convertrules.py:2535
+#: convertrules.py:2536
 msgid "Rename accidental glyphs, use glyph-name-alist."
 msgstr "Renommage des glyphes d'altération, utilisation de glyph-name-alist."
 
-#: convertrules.py:2590
+#: convertrules.py:2591
 msgid "edge-text settings for TextSpanner"
 msgstr "réglages des limites de texte pour TextSpanner"
 
-#: convertrules.py:2591
+#: convertrules.py:2592
 #, python-format
 msgid ""
 "Use\n"
@@ -462,35 +506,35 @@ msgstr ""
 "\n"
 "%s"
 
-#: convertrules.py:2624
+#: convertrules.py:2625
 msgid "Use the `alignment-offsets' sub-property of\n"
-msgstr "Utiliser la sous-propriété `alignment-offsets' de\n"
+msgstr "Utiliser la sous-propriété « alignment-offsets » de\n"
 
-#: convertrules.py:2625
+#: convertrules.py:2626
 msgid "NonMusicalPaperColumn #'line-break-system-details\n"
 msgstr "NonMusicalPaperColumn #'line-break-system-details\n"
 
-#: convertrules.py:2626
+#: convertrules.py:2627
 msgid "to set fixed distances between staves.\n"
 msgstr "pour définir un espacement fixe des systèmes.\n"
 
-#: convertrules.py:2638
+#: convertrules.py:2639
 msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
 msgstr "Pour des lignes continues ou pointillées, utilisez #'style, pas #'dash-fraction."
 
-#: convertrules.py:2644
+#: convertrules.py:2645
 msgid "all settings related to dashed lines"
 msgstr "tous les réglages concernant les lignes pointillées"
 
-#: convertrules.py:2645
+#: convertrules.py:2646
 msgid "Use \\override ... #'style = #'line for solid lines and\n"
 msgstr "Utiliser \\override ... #'style = #'line pour des lignes pleines, et\n"
 
-#: convertrules.py:2646
+#: convertrules.py:2647
 msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
 msgstr "\t\\override ... #'style = #'dashed-line pour des lignes pointillées."
 
-#: convertrules.py:2682
+#: convertrules.py:2683
 msgid ""
 "metronomeMarkFormatter uses text markup as second argument,\n"
 "fret diagram properties moved to fret-diagram-details."
@@ -498,11 +542,11 @@ msgstr ""
 "metronomeMarkFormatter prend une étiquette en deuxième argument,\n"
 "les propriétés des diagrammes de fret sont désormais dans fret-diagram-details."
 
-#: convertrules.py:2688
+#: convertrules.py:2689
 msgid "metronomeMarkFormatter got an additional text argument.\n"
 msgstr "metronomeMarkFormatter prend un argument textuel suplémentaire.\n"
 
-#: convertrules.py:2689
+#: convertrules.py:2690
 #, python-format
 msgid ""
 "The function assigned to Score.metronomeMarkFunction now uses the signature\n"
@@ -511,68 +555,68 @@ msgstr ""
 "La fonction assignée à Score.metronomeMarkFunction utilise la signature\n"
 "%s"
 
-#: convertrules.py:2707
+#: convertrules.py:2708
 #, python-format
 msgid "%s in fret-diagram properties"
-msgstr "%s va dans le propriétés de fret-diagram"
+msgstr "%s va dans les propriétés de fret-diagram"
 
-#: convertrules.py:2751
+#: convertrules.py:2752
 msgid "\\put-adjacent argument order"
 msgstr "ordre de l'argument \\put-adjacent"
 
-#: convertrules.py:2752
+#: convertrules.py:2753
 msgid "Axis and direction now come before markups:\n"
-msgstr "Axe et direction doivent précéder les étiquettes :\n"
+msgstr "Axe et direction doivent précéder les étiquettes :\n"
 
-#: convertrules.py:2753
+#: convertrules.py:2754
 msgid "\\put-adjacent axis dir markup markup."
 msgstr "\\put-adjacent axe direction étiquette étiquette."
 
-#: convertrules.py:2784
+#: convertrules.py:2785
 msgid "re-definition of InnerStaffGroup"
 msgstr "Redéfinition de InnerStaffGroup"
 
-#: convertrules.py:2789
+#: convertrules.py:2790
 msgid "re-definition of InnerChoirStaff"
 msgstr "Redéfinition de InnerChoirStaff"
 
-#: convertrules.py:2799
+#: convertrules.py:2800
 msgid "Syntax changes for \\addChordShape and \\chord-shape"
 msgstr "Changement de syntaxe pour \\addChordShape et \\chord-shape"
 
-#: convertrules.py:2804
+#: convertrules.py:2805
 msgid "stringTuning must be added to addChordShape call.\n"
 msgstr "stringTuning est requis lors de l'appel à addChordShape.\n"
 
-#: convertrules.py:2809
+#: convertrules.py:2810
 msgid "stringTuning must be added to chord-shape call.\n"
 msgstr "stringTuning est requis lors de l'appel à chord-shape.\n"
 
-#: convertrules.py:2815
+#: convertrules.py:2816
 msgid "Remove oldaddlyrics"
 msgstr "Suppression de oldaddlyrics"
 
-#: convertrules.py:2819
+#: convertrules.py:2820
 msgid ""
 "oldaddlyrics is no longer supported. \n"
-"         Use addlyrics or lyrsicsto instead.\n"
+"         Use addlyrics or lyricsto instead.\n"
 msgstr ""
 "oldaddlyrics n'est désormais plus pris en charge.\n"
 "         Utilisez maintenant addlyrics ou lyricsto.\n"
 
-#: convertrules.py:2825
+#: convertrules.py:2826
 msgid ""
 "keySignature property not reversed any more\n"
 "MIDI 47: orchestral strings -> orchestral harp"
 msgstr ""
-"Le propriété keySignature n'est plus inversée\n"
+"La propriété keySignature n'est plus inversée\n"
 "MIDI 47 : orchestral strings -> orchestral harp"
 
-#: convertrules.py:2830
+#: convertrules.py:2831
 msgid "The alist for Staff.keySignature is no longer in reversed order.\n"
 msgstr "La liste associative pour Staff.keySignature n'est plus en ordre inverse.\n"
 
-#: convertrules.py:2836
+#: convertrules.py:2837
 msgid ""
 "\\bar \".\" now produces a thick barline\n"
 "ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
@@ -582,15 +626,15 @@ msgstr ""
 "ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
 "Les paramètres du pointillé des liaisons sont gérés par dash-definition."
 
-#: convertrules.py:2842
+#: convertrules.py:2843
 msgid "\\bar \".\" now produces a thick barline.\n"
 msgstr "\\bar \".\" produit désormais une barre épaisse.\n"
 
-#: convertrules.py:2848
-msgid "Dash parameters for slurs and ties are now in 'dash-details.\n"
-msgstr "Les paramètres du pointillé des liaisons sont gérés par `dash-details.\n"
+#: convertrules.py:2849
+msgid "Dash parameters for slurs and ties are now in 'dash-definition.\n"
+msgstr "Les paramètres du pointillé des liaisons sont gérés par 'dash-details.\n"
 
-#: convertrules.py:2853
+#: convertrules.py:2854
 msgid ""
 "Autobeaming rules have changed.  override-auto-beam-setting and\n"
 "revert-auto-beam-setting have been eliminated.\n"
@@ -604,32 +648,32 @@ msgid ""
 "Explicit dynamics context definition from `Piano centered dynamics'\n"
 "template replaced by new `Dynamics' context."
 msgstr ""
-"Les règles de ligature automatique ont été revues.\n"
+"Les règles de ligature automatique ont été revues :\n"
 "override-auto-beam-setting et revert-auto-beam-setting ont disparu,\n"
-"remplacés par \\overrideBeamSettings.\n"
+"remplacés par \\overrideBeamSettings ;\n"
 "beatGrouping a disparu.\n"
-"Modification des réglages de mise en forme verticale :\n"
+"Modification des réglages de mise en forme verticale :\n"
 "ly:system-start-text::print -> system-start-text::print\n"
 "Beam #'thickness -> Beam #'beam-thickness\n"
 "ly:note-head::brew-ez-stencil -> note-head::brew-ez-stencil\n"
 "ly:ambitus::print -> ambitus::print\n"
 "La définition du contexte de nuances explicites du canevas\n"
-"« Piano et nuances entre les portées » est remplacée par le nouveau\n"
-"contexte `Dynamics'."
+"« Piano et nuances entre les portées » est remplacée par le nouveau\n"
+"contexte « Dynamics »."
 
-#: convertrules.py:2867
+#: convertrules.py:2868
 msgid "    Autobeam settings are now overriden with \\overrideBeamSettings.\n"
 msgstr ""
 "   L'introduction d'une dérogation aux ligatures automatiques se fait\n"
 "désormais avec \\overrideBeamSettings.\n"
 
-#: convertrules.py:2872
+#: convertrules.py:2873
 msgid "    Autobeam settings are now reverted with \\revertBeamSettings.\n"
 msgstr ""
 "   La suppression d'une dérogation aux ligatures automatiques se fait\n"
 "   désormais avec \\revertBeamSettings.\n"
 
-#: convertrules.py:2878
+#: convertrules.py:2879
 msgid ""
 "    beatGrouping with a specified context must now be accomplished with\n"
 "   \\overrideBeamSettings.\n"
@@ -637,13 +681,13 @@ msgstr ""
 "   beatGrouping dans un contexte spécifique s'accomplit désormais avec\n"
 "   \\overrideBeamSettings.\n"
 
-#: convertrules.py:2884
+#: convertrules.py:2885
 msgid "alignment-offsets has been changed to alignment-distances: you must now specify the distances between staves rather than the offset of staves.\n"
 msgstr ""
-"alignment-offsets est devenu alignment-distances : il faut désormais\n"
+"alignment-offsets est devenu alignment-distances : il faut désormais\n"
 "spécifier la distance entre les portées au lieu de leur offset.\n"
 
-#: convertrules.py:2895
+#: convertrules.py:2896
 msgid ""
 "Remove obsolete engravers/translators: Note_swallow_translator,\n"
 "Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
@@ -655,23 +699,23 @@ msgstr ""
 "Swallow_performer et String_number_engraver.\n"
 "Apparition de nouvelles variables pour l'espacement vertical."
 
-#: convertrules.py:2926
+#: convertrules.py:2927
 msgid "Vertical spacing no longer depends on the Y-extent of a VerticalAxisGroup.\n"
 msgstr "L'espacement vertical ne dépend plus du Y-extent d'un VerticalAxisGroup.\n"
 
-#: convertrules.py:2932
+#: convertrules.py:2933
 msgid "Unify fetaNumber and fetaDynamic encodings"
 msgstr "Uniformisation des encodages de fetaNumber et fetaDynamic."
 
-#: convertrules.py:2937
+#: convertrules.py:2938
 msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
 msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
 
-#: convertrules.py:2948
+#: convertrules.py:2949
 msgid "\\cresc etc. are now postfix operators"
 msgstr "\\cresc etc. sont désormais des opérateurs postfix"
 
-#: convertrules.py:2960
+#: convertrules.py:2961
 msgid ""
 "Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
 "\"accordion.accEtcbase\" -> \"accordion.etcbass\""
@@ -680,38 +724,38 @@ msgstr ""
 "\\overrideBeamSettings et \\revertBeamSettings.\n"
 "\"accordion.accEtcbase\" -> \"accordion.etcbass\""
 
-#: convertrules.py:2978
+#: convertrules.py:2979
 msgid "Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
 msgstr "Utiliser \\set beamExceptions ou \\overrideTimeSignatureSettings.\n"
 
-#: convertrules.py:2982
+#: convertrules.py:2983
 msgid "Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
 msgstr "Utiliser \\set beamExceptions ou \\revertTimeSignatureSettings.\n"
 
-#: convertrules.py:2986
+#: convertrules.py:2987
 msgid "Use baseMoment, beatStructure, and beamExceptions.\n"
 msgstr "Utiliser baseMoment, beatStructure et beamExceptions.\n"
 
-#: convertrules.py:2990 convertrules.py:2994
+#: convertrules.py:2991 convertrules.py:2995
 msgid "Use baseMoment and beatStructure.\n"
 msgstr "Utiliser baseMoment et beatStructure.\n"
 
-#: convertrules.py:2999
+#: convertrules.py:3000
 msgid ""
 "Woodwind diagrams: Move size, thickness, and graphic from argument list to properties.\n"
 "Deprecate negative dash-period for hidden lines: use #'style = #'none instead."
 msgstr ""
-"Diagramme pour vent : taille, épaisseur et graphique deviennent des propriétés.\n"
-"Dépréciation des longueurs de tiret négatives pour des lignes masquées ;\n"
+"Diagramme pour vent : taille, épaisseur et graphique deviennent des propriétés.\n"
+"Dépréciation des longueurs de tiret négatives pour des lignes masquées ;\n"
 "utiliser désormais #'style = #'none"
 
-#: convertrules.py:3004
+#: convertrules.py:3005
 msgid "Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
 msgstr ""
 "Taille, épaisseur et graphique sont des propriétés.\n"
 "L'argument devrait ne contenir que la liste des clés.\n"
 
-#: convertrules.py:3012
+#: convertrules.py:3013
 msgid ""
 "Rename vertical spacing variables.\n"
 "Add fretboard-table argument to savePredefinedFretboard."
@@ -719,23 +763,23 @@ msgstr ""
 "Renommage des variables d'espacement vertical.\n"
 "Ajout de l'argument fretboard-table à savePredefinedFretboard."
 
-#: convertrules.py:3030
+#: convertrules.py:3031
 msgid "Rename vertical spacing grob properties."
 msgstr "Renommage des propriétés d'objet en matière d'espacement vertical."
 
-#: convertrules.py:3046
+#: convertrules.py:3047
 msgid "Remove \\paper variables head-separation and foot-separation."
 msgstr "Suppression des variables de \\paper head-separation et foot-separation."
 
-#: convertrules.py:3050
+#: convertrules.py:3051
 msgid "Adjust settings for top-system-spacing instead.\n"
 msgstr "Ajustez plutôt le réglage de top-system-spacing.\n"
 
-#: convertrules.py:3054
+#: convertrules.py:3055
 msgid "Adjust settings for last-bottom-spacing instead.\n"
 msgstr "Ajustez plutôt le réglage de last-bottom-spacing.\n"
 
-#: convertrules.py:3060
+#: convertrules.py:3061
 msgid ""
 "Rename space to basic-distance in various spacing alists.\n"
 "Remove HarmonicParenthesesItem grob."
@@ -743,624 +787,437 @@ msgstr ""
 "space est renommé basic-distance dans diverses variables liées à l'espacement.\n"
 "Suppression du grob HarmonicParenthesesItem."
 
-#: convertrules.py:3067
+#: convertrules.py:3068
 msgid "HarmonicParenthesesItem has been eliminated.\n"
 msgstr "Élimination de HarmonicParenthesesItem.\n"
 
-#: convertrules.py:3068
+#: convertrules.py:3069
 msgid "Harmonic parentheses are part of the TabNoteHead grob.\n"
 msgstr "Les parenthèses harmoniques sont attachées au grob TabNoteHead.\n"
 
-#: convertrules.py:3073
+#: convertrules.py:3074
 msgid "Remove context from overrideTimeSignatureSettings and revertTimeSignatureSettings.\n"
 msgstr "Suppression du contexte dans overrideTimeSignatureSettings et revertTimeSignatureSettings.\n"
 
-#: convertrules.py:3080
+#: convertrules.py:3081
 msgid ""
 "Change stringTunings from a list of semitones to a list of pitches.\n"
 "Change tenor and baritone ukulele names in string tunings.\n"
 "Generate messages for manual conversion of vertical spacing if required."
 msgstr ""
-"stringTunings : d'une liste de demi-tons, devient une liste de hauteurs.\n"
+"stringTunings : d'une liste de demi-tons, devient une liste de hauteurs.\n"
 "Les noms de ukulele tenor et baryton sont modifiés en accordage personnalisé.\n"
 "Génération d'un message au besoin pour les conversions liées à l'espacement vertical."
 
-#: convertrules.py:3123
+#: convertrules.py:3124
 msgid "Vertical spacing changes might affect user-defined contexts."
 msgstr ""
 "Les modifications apportées à l'espacement vertical peuvent mettre en\n"
 "péril certains contextes personnalisés."
 
-#: convertrules.py:3129
+#: convertrules.py:3130
 msgid "Replace bar-size with bar-extent."
 msgstr "bar-size devient bar-extent."
 
-#: convertrules.py:3141
+#: convertrules.py:3142
 msgid "Woodwind diagrams: Changes to the clarinet diagram."
-msgstr "Diagrammes pour vents : modifications touchant la clarinette."
+msgstr "Diagrammes pour vents : modifications touchant la clarinette."
 
-#: convertrules.py:3145
+#: convertrules.py:3146
 msgid "Clarinet fingering changed to reflect actual anatomy of instrument.\n"
 msgstr "Les doigtés pour clarinette sont plus adaptés à l'instrument actuel.\n"
 
-#: convertrules.py:3155
+#: convertrules.py:3156
 msgid "Handling of non-automatic footnotes."
 msgstr "Gestion des notes de bas de page non automatisée."
 
-#: convertrules.py:3159
+#: convertrules.py:3160
 msgid "If you are using non-automatic footnotes, make sure to set footnote-auto-numbering = ##f in the paper block.\n"
 msgstr ""
 "Pour une gestion non automatisée des notes de bas de page, n'oubliez pas\n"
 "de mentionner footnote-auto-numbering = ##f dans le bloc \\paper.\n"
 
-#: convertrules.py:3164
+#: convertrules.py:3165
 msgid "Change in internal property for MultiMeasureRest"
-msgstr "MultiMeasureRest : modification des propriétés internes."
+msgstr "MultiMeasureRest : modification des propriétés internes."
 
-#: convertrules.py:3168
+#: convertrules.py:3169
 msgid "This internal property has been replaced by round-up-to-longer-rest, round-up-exceptions and usable-duration-logs.\n"
 msgstr ""
-"Cette propriété interne est remplacée par round-to-longer-rest\n"
-"et usable-duration-logs.\n"
+"Cette propriété interne est remplacée par round-up-to-longer-rest,\n"
+"round-up-exceptions et usable-duration-logs.\n"
 
-#: convertrules.py:3173
+#: convertrules.py:3174
 msgid "Creation of a Flag grob and moving of certain Stem properties to this grob"
-msgstr "Déplacement de certaine proriétés de Stem vers le nouvel objet Flag"
+msgstr "Déplacement de certaine propriétés de Stem vers le nouvel objet Flag"
 
-#: convertrules.py:3209
+#: convertrules.py:3210
 msgid "consistent-broken-slope is now handled through the positions callback.\n"
 msgstr "consistent-broken-slope est désormais géré par des rappels de position.\n"
 
-#: convertrules.py:3210
+#: convertrules.py:3211
 msgid "input/regression/beam-broken-classic.ly shows how broken beams are now handled.\n"
 msgstr ""
-"input/regression/beam-broken-classic.ly indique comment sont gérées les\n"
-"ligatures tronquées.\n"
+"input/regression/beam-broken-classic.ly indique comment sont désormais\n"
+"gérées les ligatures tronquées.\n"
 
-#: book_base.py:26
+#: convertrules.py:3372
+msgid "beamExceptions controls whole-measure beaming."
+msgstr "Une ligature sur la mesure est gérée par beamExceptions"
+
+#: convertrules.py:3609
+msgid "Flag.transparent and Flag.color inherit from Stem"
+msgstr "Flag.transparent et Flag.color héritent de Stem"
+
+#: convertrules.py:3675
+msgid "Staff-padding now controls the distance to the baseline, not the nearest point."
+msgstr ""
+"Staff-padding contrôle désormais la distance par rapport à la ligne de\n"
+"  base, au lieu du point le plus proche."
+
+#: convertrules.py:3918
+msgid "Previously the \"id\" grob property (string) was used for SVG output."
+msgstr "Auparavant, la propriété de grob \"id\" (chaîne) servait pour le SVG."
+
+#: convertrules.py:3919
+msgid "Now \"output-attributes\" (association list) is used instead."
+msgstr "Désormais, c'est \"output-attributes\" (liste assiciative) qui sert."
+
+#: fontextract.py:25
 #, python-format
-msgid "file not found: %s"
-msgstr "fichier non trouvé : %s"
+msgid "Scanning %s"
+msgstr "Scannage de %s"
 
-#: book_base.py:164
-msgid "Output function not implemented"
-msgstr "Fonction de production non implémentée."
+#: fontextract.py:70
+#, python-format
+msgid "Extracted %s"
+msgstr "Extraction de %s"
+
+#: fontextract.py:85
+#, python-format
+msgid "Writing fonts to %s"
+msgstr "Écriture des fontes vers %s"
 
-#: lilylib.py:96
+#: lilylib.py:101
 #, python-format
 msgid "Setting loglevel to %s"
 msgstr "Niveau de journalisation fixé à %s"
 
-#: lilylib.py:99
+#: lilylib.py:104
 #, python-format
 msgid "Unknown or invalid loglevel '%s'"
-msgstr "« %s » n'est pas un niveau de journalisation reconnu."
+msgstr "« %s » n'est pas un niveau de journalisation reconnu."
 
-#: lilylib.py:128 warn.cc:211
+#: lilylib.py:133 warn.cc:211
 #, c-format, python-format
 msgid "error: %s"
 msgstr "Erreur : %s"
 
-#: lilylib.py:185
+#: lilylib.py:190
 #, python-format
 msgid "Processing %s.ly"
-msgstr "Traitement de « %s.ly »"
+msgstr "Traitement de « %s.ly »"
 
-#: lilylib.py:189 lilylib.py:250
+#: lilylib.py:194 lilylib.py:255
 #, python-format
 msgid "Invoking `%s'"
-msgstr "Appel de « %s »"
+msgstr "Appel de « %s »"
 
-#: lilylib.py:191 lilylib.py:252
+#: lilylib.py:196 lilylib.py:257
 #, python-format
 msgid "Running %s..."
 msgstr "Exécution de %s..."
 
-#: lilylib.py:328
+#: lilylib.py:333
 #, python-format
 msgid "Usage: %s"
 msgstr "Utilisation : %s"
 
-#: musicexp.py:224 musicexp.py:229
+#: musicexp.py:307 musicexp.py:312
 msgid "Language does not support microtones contained in the piece"
 msgstr "Le langage ne prend pas en charge les microintervalles de ce morceau"
 
-#: musicexp.py:491
+#: musicexp.py:601
 msgid "Tuplet brackets of curved shape are not correctly implemented"
 msgstr "La courbure des crochets de nolet n'est pas implémentée de manière optimale"
 
-#: musicexp.py:677
+#: musicexp.py:787
 #, python-format
 msgid "unable to set the music %(music)s for the repeat %(repeat)s"
 msgstr "impossible d'affecter le fragment %(music)s à la répétition %(repeat)s"
 
-#: musicexp.py:686
+#: musicexp.py:796
 msgid "encountered repeat without body"
 msgstr "reprise vide détectée"
 
 #. no self.elements!
-#: musicexp.py:856
+#: musicexp.py:1009
 #, python-format
 msgid "Grace note with no following music: %s"
-msgstr "Apoggiature non suivie de musique : %s"
+msgstr "Apoggiature non suivie de musique : %s"
 
-#: musicexp.py:1018
+#: musicexp.py:1204
 #, python-format
 msgid "Invalid octave shift size found: %s. Using no shift."
-msgstr "Décalage d'octave invalide : %s. Décalage non appliqué."
+msgstr "Décalage d'octave invalide : %s. Décalage non appliqué."
 
-#: musicexp.py:1476
+#: musicexp.py:1803
 #, python-format
 msgid "Unable to convert alteration %s to a lilypond expression"
 msgstr "Impossible de convertir l'altération %s en expression LilyPond"
 
 #. TODO: Handle pieces without a time signature!
-#: musicxml.py:361
+#: musicxml.py:515
 msgid "Senza-misura time signatures are not yet supported!"
-msgstr "Les métriques « senza-misura » ne sont pas prises en charge."
+msgstr "Les métriques « senza-misura » ne sont pas prises en charge."
 
-#: musicxml.py:379
+#: musicxml.py:533
 msgid "Unable to interpret time signature! Falling back to 4/4."
-msgstr "Métrique non interprétable ; retour au 4/4."
+msgstr "Métrique non interprétable ; retour au 4/4."
 
-#: musicxml.py:435
+#: musicxml.py:589
 #, python-format
 msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
 msgstr ""
-"Octave d'altération indiquée pour une altération numéro %s inexistante ;\n"
-"index d'altération disponibles : 1 à %s"
-
-#: musicxml.py:523
-#, python-format
-msgid "Unable to find instrument for ID=%s\n"
-msgstr "Aucun instrument ne correspond à l'ID %s\n"
+"Octave d'altération indiquée pour une altération numéro %s inexistante ;\n"
+"index d'altération disponibles : 1 à %s"
 
-#. Work around a texi2pdf bug: if LANG=C is not given, a broken regexp is
-#. used to detect relative/absolute paths, so the absolute path is not
-#. detected as such and this command fails:
-#: book_texinfo.py:206
+#: musicxml.py:825
 #, python-format
-msgid "Running texi2pdf on file %s to detect default page settings.\n"
-msgstr "Traitement de %s par texi2pdf pour détecter la mise en page par défaut.\n"
-
-#: book_texinfo.py:228 book_latex.py:209
-msgid "Unable to auto-detect default settings:\n"
-msgstr "Impossible de détecter automatiquement les réglages par défaut :\n"
+msgid "Encountered note at %s without type and duration(=%s)"
+msgstr "Une note se trouve en %s, sans type ni durée (=%s)"
 
-#: book_texinfo.py:240 book_latex.py:221
+#: musicxml.py:867
 #, python-format
-msgid ""
-"Unable to auto-detect default settings:\n"
-"%s"
+msgid "drum %s type unknown, please add to instrument_drumtype_dict"
 msgstr ""
-"Impossible de détecter automatiquement les réglages par défaut :\n"
-"%s"
+"%s n'est pas un type de percussion connu.\n"
+"L'ajouter à instrument_drumtype_dict"
 
-#: book_latex.py:170
-msgid "cannot find \\begin{document} in LaTeX document"
-msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+#: musicxml.py:888
+msgid "cannot find suitable event"
+msgstr "Aucun événement correspondant"
 
-#: book_latex.py:188
+#: musicxml.py:927
 #, python-format
-msgid "Running `%s' on file `%s' to detect default page settings.\n"
-msgstr ""
-"Traitement par %s du fichier « %s »\n"
-"pour déterminer la mise en page par défaut.\n"
+msgid "Unable to find instrument for ID=%s\n"
+msgstr "Aucun instrument ne correspond à l'ID %s\n"
 
-#: musicxml2ly.py:228
+#: musicxml2ly_conversion.py:23
 #, python-format
-msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
 msgstr ""
-"Détection d'un fichier créé par %s et contenant des informations de ligature\n"
-"erronées. Toutes les informations de ligature du fichier MusicXML seront\n"
-"ignorées."
+"Durée rationnelle au dénominateur de %s détectée ;\n"
+"impossible de traduire en durée LilyPond"
 
-#: musicxml2ly.py:247 musicxml2ly.py:249
+#: musicxml2ly_conversion.py:42
 #, python-format
-msgid "Unprocessed PartGroupInfo %s encountered"
-msgstr "PartGroupInfo %s détecté, mais non traité"
+msgid "Encountered unprocessed marker %s\n"
+msgstr "Détection d'un marqueur non traité : %s\n"
 
-#: musicxml2ly.py:502
+#: abc2ly.py:1389 convert-ly.py:85 lilypond-book.py:122 midi2ly.py:1052
 #, python-format
-msgid "Encountered note at %s without type and duration (=%s)"
-msgstr "Une note se trouve en %s, sans type ni durée (=%s)"
+msgid "%s [OPTION]... FILE"
+msgstr "%s [OPTIONS]... FICHIER"
 
-#: musicxml2ly.py:522
+#: abc2ly.py:1390
 #, python-format
-msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
+msgid ""
+"abc2ly converts ABC music files (see\n"
+"%s) to LilyPond input.\n"
 msgstr ""
-"Durée rationnelle au dénominateur de %s détectée ;\n"
-"impossible de traduire en durée LilyPond"
+"abc2ly convertit les fichiers musicaux ABC (voir\n"
+"%s) au format LilyPond.\n"
 
-#: musicxml2ly.py:769
-msgid "Unable to extract key signature!"
-msgstr "Impossible de déterminer l'armure."
+#: abc2ly.py:1398 convert-ly.py:92 etf2ly.py:1208 lilypond-book.py:231
+#: midi2ly.py:1103 musicxml2ly.py:2774 main.cc:184
+msgid "show version number and exit"
+msgstr "affiche le numéro de version et quitte"
 
-#: musicxml2ly.py:796
-#, python-format
-msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
-msgstr ""
-"%s : mode inconnu.\n"
-"Devrait être « majeur », « mineur » ou « mode d'église »."
+#: abc2ly.py:1401 convert-ly.py:96 etf2ly.py:1204 lilypond-book.py:140
+#: midi2ly.py:1070 musicxml2ly.py:2755 main.cc:163
+msgid "show this help and exit"
+msgstr "visualiser cette aide et quitter"
 
-#: musicxml2ly.py:934
-#, python-format
-msgid "Encountered unprocessed marker %s\n"
-msgstr "Détection d'un marqueur non traité : %s\n"
+#: abc2ly.py:1404 etf2ly.py:1209 midi2ly.py:1079
+msgid "write output to FILE"
+msgstr "produit la sortie dans le FICHIER"
 
-#: musicxml2ly.py:1028
-#, python-format
-msgid "unknown span event %s"
-msgstr "Événement de prolongation inconnu : « %s »"
+#: abc2ly.py:1407
+msgid "be strict about success"
+msgstr "être strict sur la réussite"
 
-#: musicxml2ly.py:1038
-#, python-format
-msgid "unknown span type %s for %s"
-msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
+#: abc2ly.py:1410
+msgid "preserve ABC's notion of beams"
+msgstr "préserver la notion de ligature propre à ABC"
 
-#: musicxml2ly.py:1458
-msgid "Unknown metronome mark, ignoring"
-msgstr "Indication métronomique inconnue et ignorée."
+#: abc2ly.py:1413
+msgid "suppress progress messages"
+msgstr "n'affiche pas les messages de progression"
 
-#. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1463
-msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
+#. Translators, please translate this string as
+#. "Report bugs in English via %s",
+#. or if there is a LilyPond users list or forum in your language
+#. "Report bugs in English via %s or in YOUR_LANG via URI"
+#: abc2ly.py:1416 convert-ly.py:157 etf2ly.py:1218 lilypond-book.py:258
+#: midi2ly.py:1115 musicxml2ly.py:2917 main.cc:318
+#, c-format, python-format
+msgid "Report bugs via %s"
 msgstr ""
-"Les indications métronomiques aux relations complexes (<metronome-note> pour\n"
-"MusicXML) n'ont pas encore été implémentées."
+"Signalez tout bogue, en français à\n"
+" http://lilypond-french-users.1298960.n2.nabble.com/\n"
+"ou en anglais à\n"
+"%s"
 
-#: musicxml2ly.py:1665
-#, python-format
-msgid "Unable to convert chord type %s to lilypond."
-msgstr "Impossible de convertir le type d'accord %s au format LilyPond"
+#: convert-ly.py:47
+msgid ""
+"Update LilyPond input to newer version.  By default, update from the\n"
+"version taken from the \\version command, to the current LilyPond version."
+msgstr ""
+"Mettre à jour le fichier source vers une version plus récente.\n"
+"Par défaut, de la version indiquée par la commande \\version\n"
+"vers la version courante de LilyPond."
+
+#: convert-ly.py:50
+msgid "If FILE is `-', read from standard input."
+msgstr "Lit l'entrée standard si FICHIER égale « - »"
+
+#: convert-ly.py:52 lilypond-book.py:82
+msgid "Examples:"
+msgstr "Exemples :"
 
-#: musicxml2ly.py:1814
+#: convert-ly.py:79 etf2ly.py:1191 lilypond-book.py:115 midi2ly.py:80
 #, python-format
-msgid "drum %s type unknown, please add to instrument_drumtype_dict"
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s détenu par"
+
+#: convert-ly.py:81 etf2ly.py:1193 lilypond-book.py:117 midi2ly.py:82
+msgid "Distributed under terms of the GNU General Public License."
+msgstr "Distribué selon les termes de la GNU General Public License."
+
+#: convert-ly.py:82 etf2ly.py:1194 lilypond-book.py:118 midi2ly.py:83
+msgid "It comes with NO WARRANTY."
+msgstr "Le logiciel est distribué SANS GARANTIE."
+
+#: convert-ly.py:100 convert-ly.py:141
+msgid "VERSION"
+msgstr "VERSION"
+
+#: convert-ly.py:102
+msgid "start from VERSION [default: \\version found in file]"
+msgstr "partir de la VERSION [par défaut : \\version trouvée dans le fichier]"
+
+#: convert-ly.py:105
+msgid "edit in place"
+msgstr "éditer le fichier d'origine"
+
+#: convert-ly.py:109 lilypond-book.py:179 musicxml2ly.py:2811
+msgid "Print log messages according to LOGLEVEL (NONE, ERROR, WARNING, PROGRESS (default), DEBUG)"
 msgstr ""
-"%s n'est pas un type de percussion connu.\n"
-"L'ajouter à instrument_drumtype_dict"
+"Afficher les informations selon le niveau de LOGLEVEL\n"
+"(NONE, ERROR, WARNING, PROGRESS (par défaut), DEBUG)"
 
-#: musicxml2ly.py:1818
-msgid "cannot find suitable event"
-msgstr "Aucun événement correspondant"
+#: convert-ly.py:111 lilypond-book.py:163 lilypond-book.py:181
+#: musicxml2ly.py:2813 main.cc:177
+msgid "LOGLEVEL"
+msgstr "LOGLEVEL"
 
-#: musicxml2ly.py:1966
+#: convert-ly.py:117
+msgid "do not add \\version command if missing"
+msgstr "ne pas ajouter la commande \\version si elle est absente"
+
+#: convert-ly.py:123
 #, python-format
-msgid "Negative skip %s (from position %s to %s)"
-msgstr "Retour en arrière de %s (partant de %s et jusqu'à %s)"
+msgid "force updating \\version number to %s"
+msgstr "forcer la mise à jour de \\version à %s"
+
+#: convert-ly.py:129
+msgid "only update \\version number if file is modified"
+msgstr "ne changer le numéro de \\version que si le fichier est modifié"
 
-#: musicxml2ly.py:2107
+#: convert-ly.py:135
 #, python-format
-msgid "Negative skip found: from %s to %s, difference is %s"
-msgstr "Retour en arrière, de %s à %s ; différence = %s"
+msgid "show rules [default: -f 0, -t %s]"
+msgstr "afficher les règles [par défaut : -f 0, -t %s]"
 
-#: musicxml2ly.py:2188
+#: convert-ly.py:140
 #, python-format
-msgid "unexpected %s; expected %s or %s or %s"
-msgstr "%s détecté, au lieu de %s, %s ou %s"
+msgid "convert to VERSION [default: %s]"
+msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
 
-#: musicxml2ly.py:2294
-msgid "Encountered closing slur, but no slur is open"
-msgstr "Terminaison d'une liaison qui n'a pas été débutée"
+#: convert-ly.py:147
+msgid "make a numbered backup [default: filename.ext~]"
+msgstr "effectue un archivage numéroté [par défaut : nomfichier.etx~]"
 
-#: musicxml2ly.py:2297
-msgid "Cannot have two simultaneous (closing) slurs"
-msgstr "deux liaisons ne peuvent se terminer simultanément"
+#: convert-ly.py:152 etf2ly.py:1212 lilypond-book.py:234 midi2ly.py:1104
+#: main.cc:186
+msgid "show warranty and copyright"
+msgstr "affiche les notices de garantie et du droit d'auteur"
 
-#: musicxml2ly.py:2306
-msgid "Cannot have a slur inside another slur"
-msgstr "des liaisons ne peuvent s'imbriquer"
+#: convert-ly.py:196
+msgid "Applying conversion: "
+msgstr "Conversion en cours : "
 
-#: musicxml2ly.py:2309
-msgid "Cannot have two simultaneous slurs"
-msgstr "deux liaisons ne peuvent intervenir simultanément"
+#: convert-ly.py:215
+msgid "Error while converting"
+msgstr "Erreur lors de la conversion"
+
+#: convert-ly.py:217
+msgid "Stopping at last successful rule"
+msgstr "Arrêt à la dernière règle appliquée avec succès"
 
-#: musicxml2ly.py:2443
+#: convert-ly.py:256
 #, python-format
-msgid "cannot simultaneously have more than one mode: %s"
-msgstr "SVP, un seul mode à la fois : %s"
+msgid "Processing `%s'... "
+msgstr "Traitement de « %s »..."
 
-#: musicxml2ly.py:2551
-msgid "Converting to LilyPond expressions..."
-msgstr "Conversion en expressions LilyPond..."
+#: convert-ly.py:366
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "impossible d'ouvrir le fichier « %s »"
 
-#: musicxml2ly.py:2562
-msgid "musicxml2ly [OPTION]... FILE.xml"
-msgstr "musicxml2ly [OPTION]... FICHIER.xml"
+#: convert-ly.py:372
+#, python-format
+msgid "%s: Unable to determine version.  Skipping"
+msgstr ""
+"impossible de déterminer la version de « %s ».\n"
+" Au suivant !"
 
-#: musicxml2ly.py:2564
-msgid ""
-"Convert MusicXML from FILE.xml to LilyPond input.\n"
-"If the given filename is -, musicxml2ly reads from the command line.\n"
-msgstr ""
-"Convertit FICHIER.xml (MusicXML) au format LilyPond.\n"
-"Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
-
-#: musicxml2ly.py:2570 midi2ly.py:1060 abc2ly.py:1387 lilypond-book.py:141
-#: convert-ly.py:92 etf2ly.py:1204 main.cc:153
-msgid "show this help and exit"
-msgstr "visualiser cette aide et quitter"
-
-#: musicxml2ly.py:2574
-msgid ""
-"Copyright (c) 2005--2012 by\n"
-"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
-"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
-"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
-msgstr ""
-"Copyright (c) 2005--2012 par\n"
-"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
-"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
-"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
-
-#: musicxml2ly.py:2588 midi2ly.py:1091 abc2ly.py:1383 lilypond-book.py:232
-#: convert-ly.py:88 etf2ly.py:1208 main.cc:174
-msgid "show version number and exit"
-msgstr "affiche le numéro de version et quitte"
-
-#: musicxml2ly.py:2594 midi2ly.py:1085 lilypond-book.py:224
-msgid "be verbose"
-msgstr "passe en mode verbeux"
-
-#: musicxml2ly.py:2600
-msgid "use lxml.etree; uses less memory and cpu time"
-msgstr ""
-"utilise lxml.etree pour consommer moins de mémoire\n"
-"et de temps processeur."
-
-#: musicxml2ly.py:2606
-msgid "input file is a zip-compressed MusicXML file"
-msgstr "le fichier d'entrée est un fichier MusicXML compressé"
-
-#: musicxml2ly.py:2612
-msgid "convert pitches in relative mode (default)"
-msgstr "convertit les hauteurs en mode relatif (par défaut)"
-
-#: musicxml2ly.py:2617
-msgid "convert pitches in absolute mode"
-msgstr "convertit les hauteurs en mode absolu"
-
-#: musicxml2ly.py:2620
-msgid "LANG"
-msgstr "LANG"
-
-#: musicxml2ly.py:2622
-msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
-msgstr ""
-"utilise une autre définition linguistique (LANG),\n"
-"p.ex. deutsch pour l'allemand"
-
-#: musicxml2ly.py:2625 lilypond-book.py:180 convert-ly.py:105
-msgid "Print log messages according to LOGLEVEL (NONE, ERROR, WARNING, PROGRESS (default), DEBUG)"
-msgstr ""
-"Afficher les informations selon le niveau de LOGLEVEL\n"
-"(NONE, ERROR, WARNING, PROGRESS (par défaut), DEBUG)"
-
-#: musicxml2ly.py:2627 lilypond-book.py:164 lilypond-book.py:182
-#: convert-ly.py:107 main.cc:167
-msgid "LOGLEVEL"
-msgstr "LOGLEVEL"
-
-#: musicxml2ly.py:2636
-msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
-msgstr ""
-"ne convertit pas les emplacements (^, _ ou -) des articulations,\n"
-"nuances, etc."
-
-#: musicxml2ly.py:2642
-msgid "do not convert exact vertical positions of rests"
-msgstr "ne convertit pas le positionnement absolu des silences"
-
-#: musicxml2ly.py:2648
-msgid "do not convert the exact page layout and breaks"
-msgstr "ne convertit pas les sauts et la mise en page"
-
-#: musicxml2ly.py:2654
-msgid "do not convert beaming information, use lilypond's automatic beaming instead"
-msgstr ""
-"ne convertit pas les informations de ligature ; \n"
-"laisse LilyPond gérer les ligatures automatiques"
-
-#: musicxml2ly.py:2657 midi2ly.py:1065 midi2ly.py:1070 etf2ly.py:1210
-#: main.cc:159 main.cc:171
-msgid "FILE"
-msgstr "FICHIER"
-
-#: musicxml2ly.py:2662
-msgid "set output filename to FILE, stdout if -"
-msgstr "produit la sortie dans FICHIER (stdout si -)"
-
-#: musicxml2ly.py:2668
-msgid "add midi-block to .ly file"
-msgstr "ajout d'une setcion midi au fichier .ly"
-
-#. Translators, please translate this string as
-#. "Report bugs in English via %s",
-#. or if there is a LilyPond users list or forum in your language
-#. "Report bugs in English via %s or in YOUR_LANG via URI"
-#: musicxml2ly.py:2672 midi2ly.py:1104 abc2ly.py:1396 lilypond-book.py:259
-#: convert-ly.py:146 etf2ly.py:1218 main.cc:285
-#, c-format, python-format
-msgid "Report bugs via %s"
-msgstr ""
-"Signalez tout bogue, en français à\n"
-" http://lilypond-french-users.1298960.n2.nabble.com/\n"
-"ou en anglais à\n"
-"%s"
-
-#: musicxml2ly.py:2752
-#, python-format
-msgid "unknown part in part-list: %s"
-msgstr "la partie %s n'est pas mentionnée dans part-list"
-
-#: musicxml2ly.py:2814
-msgid "Input is compressed, extracting raw MusicXML data from stdin"
-msgstr ""
-"Le fichier d'entrée est compressé.\n"
-"Extraction des données MusicXML brutes à partir de stdin"
-
-#: musicxml2ly.py:2827
-#, python-format
-msgid "Input file %s is compressed, extracting raw MusicXML data"
-msgstr ""
-"Le fichier d'entrée (%s) est compressé.\n"
-"Extraction des données MusicXML brutes"
-
-#: musicxml2ly.py:2857
-msgid "Reading MusicXML from Standard input ..."
-msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
-
-#: musicxml2ly.py:2859
-#, python-format
-msgid "Reading MusicXML from %s ..."
-msgstr "Lecture du fichier MusicXML %s..."
-
-#: musicxml2ly.py:2892
+#: convert-ly.py:378
 #, python-format
-msgid "Output to `%s'"
-msgstr "Fichier de sortie : « %s »"
-
-#: musicxml2ly.py:2962
-#, python-format
-msgid "Unable to find input file %s"
-msgstr "Impossible de trouver le fichier d'entrée : « %s »"
-
-#: midi2ly.py:81 lilypond-book.py:116 convert-ly.py:75 etf2ly.py:1191
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s détenu par"
-
-#: midi2ly.py:83 lilypond-book.py:118 convert-ly.py:77 etf2ly.py:1193
-msgid "Distributed under terms of the GNU General Public License."
-msgstr "Distribué selon les termes de la GNU General Public License."
-
-#: midi2ly.py:84 lilypond-book.py:119 convert-ly.py:78 etf2ly.py:1194
-msgid "It comes with NO WARRANTY."
-msgstr "Le logiciel est distribué SANS GARANTIE."
-
-#: midi2ly.py:90
-msgid "warning: "
-msgstr "Avertissement : "
-
-#: midi2ly.py:93 midi2ly.py:1121
-msgid "error: "
-msgstr "Erreur : "
-
-#: midi2ly.py:94
-msgid "Exiting... "
-msgstr "Fin d'exécution... "
-
-#: midi2ly.py:834
-msgid "found more than 5 voices on a staff, expect bad output"
+msgid ""
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
 msgstr ""
-"l'une des portées contient plus de cinq voix ;\n"
-"attendez-vous à un piètre résultat."
-
-#: midi2ly.py:1030
-#, python-format
-msgid "%s output to `%s'..."
-msgstr "%s reproduit dans « %s »..."
+"« %s » porte un numéro de version invalide : %s \n"
+"Un numéro de version valide est formé de trois nombres séparés par un point,\n"
+"comme par exemple « 2.8.12 »"
 
-#: midi2ly.py:1042 abc2ly.py:1374 lilypond-book.py:123 convert-ly.py:81
+#: convert-ly.py:384
 #, python-format
-msgid "%s [OPTION]... FILE"
-msgstr "%s [OPTIONS]... FICHIER"
+msgid "There was %d error."
+msgid_plural "There were %d errors."
+msgstr[0] "Il y a %d erreur."
+msgstr[1] "Il y a %d erreurs."
 
-#: midi2ly.py:1043
+#: etf2ly.py:1197
 #, python-format
-msgid "Convert %s to LilyPond input.\n"
-msgstr "convertit %s au format source LilyPond.\n"
-
-#: midi2ly.py:1048
-msgid "print absolute pitches"
-msgstr "affecte des hauteurs absolues"
-
-#: midi2ly.py:1050 midi2ly.py:1075
-msgid "DUR"
-msgstr "DUR"
-
-#: midi2ly.py:1051
-msgid "quantise note durations on DUR"
-msgstr "quantifie les durées de note d'après DUR"
-
-#: midi2ly.py:1054
-msgid "debug printing"
-msgstr "affiche des informations de débogage"
-
-#: midi2ly.py:1057
-msgid "print explicit durations"
-msgstr "affecte des durées explicites"
-
-#: midi2ly.py:1062
-msgid "prepend FILE to output"
-msgstr "ajoute FICHIER à la sortie"
-
-#: midi2ly.py:1066
-msgid "set key: ALT=+sharps|-flats; MINOR=1"
-msgstr "définit l'armure : ALT=+dièse|-bémol; MINEUR=1"
-
-#: midi2ly.py:1067
-msgid "ALT[:MINOR]"
-msgstr "ALT[:MINEUR]"
-
-#: midi2ly.py:1069 abc2ly.py:1389 etf2ly.py:1209
-msgid "write output to FILE"
-msgstr "produit la sortie dans le FICHIER"
-
-#: midi2ly.py:1072
-msgid "preview of first 4 bars"
-msgstr "prévisualisation des quatre premières mesures"
-
-#: midi2ly.py:1074
-msgid "quantise note starts on DUR"
-msgstr "quantifie les débuts de note sur DUR"
-
-#: midi2ly.py:1078
-msgid "use s instead of r for rests"
-msgstr "traduit les silences en « s », non en « r »"
-
-#: midi2ly.py:1080
-msgid "DUR*NUM/DEN"
-msgstr "DUR*NUM/DEN"
-
-#: midi2ly.py:1083
-msgid "allow tuplet durations DUR*NUM/DEN"
-msgstr "permet des n-olets de durée DUR*NUM/DEN"
-
-#: midi2ly.py:1092 lilypond-book.py:235 convert-ly.py:141 etf2ly.py:1212
-#: main.cc:176
-msgid "show warranty and copyright"
-msgstr "affiche les notices de garantie et du droit d'auteur"
-
-#: midi2ly.py:1095
-msgid "treat every text as a lyric"
-msgstr "traite tout texte comme étant des paroles"
-
-#: midi2ly.py:1098
-msgid "Examples"
-msgstr "Exemples"
-
-#: midi2ly.py:1122
-msgid "no files specified on command line."
-msgstr "aucun fichier spéficié sur la ligne de commande."
+msgid "%s [OPTION]... ETF-FILE"
+msgstr "%s [OPTIONS]... FICHIER-ETF"
 
-#: abc2ly.py:1375
-#, python-format
+#: etf2ly.py:1198
 msgid ""
-"abc2ly converts ABC music files (see\n"
-"%s) to LilyPond input.\n"
+"Enigma Transport Format is a format used by Coda Music Technology's\n"
+"Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
 msgstr ""
-"abc2ly convertit les fichiers musicaux ABC (voir\n"
-"%s) au format LilyPond.\n"
-
-#: abc2ly.py:1391
-msgid "be strict about success"
-msgstr "être strict sur la réussite"
+"Enigma Transport Format est utilisé par Finale, de Coda Music Technology.\n"
+"etf2ly convertit partiellement un fichier ETF en un fichier LilyPond\n"
+"exploitable.\n"
 
-#: abc2ly.py:1393
-msgid "preserve ABC's notion of beams"
-msgstr "préserver la notion de ligature propre à ABC"
+#: etf2ly.py:1210 midi2ly.py:1075 midi2ly.py:1080 musicxml2ly.py:2867
+#: main.cc:169 main.cc:181
+msgid "FILE"
+msgstr "FICHIER"
 
 #: lilypond-book.py:80
 msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
@@ -1368,10 +1225,6 @@ msgstr ""
 "Traite les extraits LilyPond dans un document HTML hybride, LaTeX,\n"
 "texinfo ou Docbook."
 
-#: lilypond-book.py:82 convert-ly.py:48
-msgid "Examples:"
-msgstr "Exemples :"
-
 #: lilypond-book.py:87
 msgid "BOOK"
 msgstr "LIVRE"
@@ -1381,104 +1234,108 @@ msgstr "LIVRE"
 msgid "Exiting (%d)..."
 msgstr "Fin d'exécution (%d)..."
 
-#: lilypond-book.py:128
+#: lilypond-book.py:127
 msgid "FILTER"
 msgstr "FILTRE"
 
-#: lilypond-book.py:131
+#: lilypond-book.py:130
 msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
-msgstr "passe les extraits à travers le FILTRE [par défaut : `convert-ly -n -']"
+msgstr "passe les extraits à travers le FILTRE [par défaut : « convert-ly -n - »]"
 
-#: lilypond-book.py:135
+#: lilypond-book.py:134
 msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr ""
 "utilise le format de sortie FORMAT (texi par défaut, texi-html, latex,\n"
 "html ou docbook)"
 
-#: lilypond-book.py:136
+#: lilypond-book.py:135
 msgid "FORMAT"
 msgstr "FORMAT"
 
-#: lilypond-book.py:143
+#: lilypond-book.py:142
 msgid "add DIR to include path"
 msgstr "ajoute le RÉP au chemin de recherche des inclusions"
 
-#: lilypond-book.py:144 lilypond-book.py:151 lilypond-book.py:170
-#: lilypond-book.py:188 lilypond-book.py:209 lilypond-book.py:215 main.cc:158
+#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:169
+#: lilypond-book.py:187 lilypond-book.py:208 lilypond-book.py:214 main.cc:168
 msgid "DIR"
 msgstr "RÉP"
 
-#: lilypond-book.py:149
+#: lilypond-book.py:148
 msgid "format Texinfo output so that Info will look for images of music in DIR"
 msgstr "formate la sortie Texinfo pour qu'Info cherche les images dans RÉP"
 
-#: lilypond-book.py:156
+#: lilypond-book.py:155
 msgid "PAD"
 msgstr "PAD"
 
-#: lilypond-book.py:158
-msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
+#: lilypond-book.py:157
+msgid "pad left side of music to align music in spite of uneven bar numbers (in mm)"
 msgstr ""
 "tasse la musique par la gauche pour la répartir en dépit du nombre irrégulier\n"
 "de mesures (en mm)"
 
-#: lilypond-book.py:163
+#: lilypond-book.py:162
 msgid "Print lilypond log messages according to LOGLEVEL"
 msgstr "Affiche les messages du journal selon la vakeur de LOGLEVEL"
 
-#: lilypond-book.py:169
+#: lilypond-book.py:168
 msgid "write lily-XXX files to DIR, link into --output dir"
 msgstr ""
 "écrit les fichiers lily-XXX dans RÉP et crée un lien vers le répertoire\n"
 "spécifié par --output"
 
-#: lilypond-book.py:174
+#: lilypond-book.py:173
 msgid "Load the additional python PACKAGE (containing e.g. a custom output format)"
 msgstr ""
-"charge le PAQUETAGE python supplémentaire (contenant p.ex. un format\n"
-"de sortie particulier)"
+"charge le PAQUETAGE python supplémentaire (contenant par exemple\n"
+"un format de sortie particulier)"
 
-#: lilypond-book.py:175
+#: lilypond-book.py:174
 msgid "PACKAGE"
 msgstr "PAQUETAGE"
 
-#: lilypond-book.py:187
+#: lilypond-book.py:186
 msgid "write output to DIR"
 msgstr "produit la sortie dans RÉP"
 
-#: lilypond-book.py:192
+#: lilypond-book.py:191
 msgid "COMMAND"
 msgstr "COMMANDE"
 
-#: lilypond-book.py:193
+#: lilypond-book.py:192
 msgid "process ly_files using COMMAND FILE..."
 msgstr "traîte ly_files en utilisant COMMANDE FICHIER..."
 
-#: lilypond-book.py:198
+#: lilypond-book.py:197
 msgid "Redirect the lilypond output"
 msgstr "redirige la sortie la sortie lilypond"
 
-#: lilypond-book.py:202
+#: lilypond-book.py:201
 msgid "Compile snippets in safe mode"
 msgstr "compile des extraits en mode protégé"
 
-#: lilypond-book.py:208
+#: lilypond-book.py:207
 msgid "do not fail if no lilypond output is found"
 msgstr "désactive la mise en échec en l’absence de sortie de lilypond"
 
-#: lilypond-book.py:214
+#: lilypond-book.py:213
 msgid "do not fail if no PNG images are found for EPS files"
 msgstr ""
 "désactive la mise en échec en l’absence d’images PNG\n"
 "correspondant aux fichiers EPS"
 
-#: lilypond-book.py:220
+#: lilypond-book.py:219
 msgid "write snippet output files with the same base name as their source file"
 msgstr ""
 "affecte au résultat des extraits la même racine\n"
-"que celle des fichiers source"
+"que celle des fichiers sources"
 
-#: lilypond-book.py:240
+#: lilypond-book.py:223 midi2ly.py:1098 musicxml2ly.py:2780
+msgid "be verbose"
+msgstr "passe en mode verbeux"
+
+#: lilypond-book.py:239
 msgid ""
 "run executable PROG instead of latex, or in\n"
 "case --pdf option is set instead of pdflatex"
@@ -1486,970 +1343,1133 @@ msgstr ""
 "utilise l’exécutable PROG en lieu et place de latex,\n"
 "ou lorsque l'option --pdf remplace pdflatex"
 
-#: lilypond-book.py:242 lilypond-book.py:247
+#: lilypond-book.py:241 lilypond-book.py:246
 msgid "PROG"
 msgstr "PROG"
 
-#: lilypond-book.py:246
+#: lilypond-book.py:245
 msgid "run executable PROG instead of texi2pdf"
 msgstr "utilise l'exécutable PROG au lieu de texi2pdf"
 
-#: lilypond-book.py:253
+#: lilypond-book.py:252
 msgid "create PDF files for use with PDFTeX"
 msgstr "crée des fichiers PDF pour utilisation par PDFTeX"
 
-#: lilypond-book.py:456
+#: lilypond-book.py:463
 msgid "Writing snippets..."
 msgstr "Écriture des extraits..."
 
-#: lilypond-book.py:461
+#: lilypond-book.py:468
 msgid "Processing..."
 msgstr "Traitement..."
 
-#: lilypond-book.py:466
+#: lilypond-book.py:473
 msgid "All snippets are up to date..."
 msgstr "Tous les extraits sont à jour..."
 
-#: lilypond-book.py:485
+#: lilypond-book.py:475
+msgid "Linking files..."
+msgstr "Liaison des fichiers..."
+
+#: lilypond-book.py:495
 #, python-format
 msgid "cannot determine format for: %s"
-msgstr "format indéterminé pour %s"
+msgstr "format indéterminé pour « %s »"
 
-#: lilypond-book.py:494
+#: lilypond-book.py:504
 #, python-format
 msgid "%s is up to date."
-msgstr "%s est à jour."
+msgstr "« %s » est à jour."
 
-#: lilypond-book.py:507
+#: lilypond-book.py:517
 #, python-format
 msgid "Writing `%s'..."
-msgstr "Écriture de « %s »..."
+msgstr "Écriture de « %s »..."
 
-#: lilypond-book.py:568
+#: lilypond-book.py:580
 msgid "Output would overwrite input file; use --output."
-msgstr "La sortie va écraser le fichier d'entrée ; utiliser --output"
+msgstr "La sortie va écraser le fichier d'entrée ; utiliser --output"
 
-#: lilypond-book.py:572
+#: lilypond-book.py:584
 #, python-format
 msgid "Reading %s..."
-msgstr "Lecture en cours de %s..."
+msgstr "Lecture en cours de « %s »..."
 
-#: lilypond-book.py:579
+#: lilypond-book.py:591
 msgid "Dissecting..."
 msgstr "Dissection en cours..."
 
-#: lilypond-book.py:590
+#: lilypond-book.py:602
 #, python-format
 msgid "Compiling %s..."
-msgstr "Compilation de %s..."
+msgstr "Compilation de « %s »..."
 
-#: lilypond-book.py:598
+#: lilypond-book.py:610
 #, python-format
 msgid "Processing include: %s"
-msgstr "Traitement d'inclusion : %s"
+msgstr "Traitement d'inclusion : %s"
 
-#: lilypond-book.py:609
+#: lilypond-book.py:621
 #, python-format
 msgid "Removing `%s'"
-msgstr "Suppression de « %s »"
+msgstr "Suppression de « %s »"
 
-#: lilypond-book.py:676
+#: lilypond-book.py:727
 #, python-format
 msgid "Setting LilyPond's loglevel to %s"
 msgstr "Niveau de journalisation de LilyPond fixé à %s"
 
-#: lilypond-book.py:680
+#: lilypond-book.py:731
 #, python-format
 msgid "Setting LilyPond's loglevel to %s (from environment variable LILYPOND_LOGLEVEL)"
 msgstr ""
 "Détermination du niveau de journalisation de LilyPond à %s\n"
 "(à partir de la variable d'environnement LILYPOND_LOGLEVEL)"
 
-#: lilypond-book.py:683
+#: lilypond-book.py:734
 msgid "Setting LilyPond's output to --verbose, implied by lilypond-book's setting"
 msgstr "Utilisation de l'option LilyPond --verbose (réglage implicite de lilypond-book)"
 
-#: convert-ly.py:46
-msgid ""
-"Update LilyPond input to newer version.  By default, update from the\n"
-"version taken from the \\version command, to the current LilyPond version."
-msgstr ""
-"Mettre à jour le fichier source vers une version plus récente.\n"
-"Par défaut, de la version indiquée par la commande \\version \n"
-"vers la version courante de LilyPond."
+#: midi2ly.py:89
+msgid "warning: "
+msgstr "Avertissement : "
 
-#: convert-ly.py:96 convert-ly.py:137
-msgid "VERSION"
-msgstr "VERSION"
+#: midi2ly.py:92 midi2ly.py:1132
+msgid "error: "
+msgstr "Erreur : "
 
-#: convert-ly.py:98
-msgid "start from VERSION [default: \\version found in file]"
-msgstr "partir de la VERSION [par défaut : \\version trouvée dans le fichier]"
+#: midi2ly.py:93
+msgid "Exiting... "
+msgstr "Fin d'exécution... "
 
-#: convert-ly.py:101
-msgid "edit in place"
-msgstr "éditer le fichier d'origine"
+#: midi2ly.py:840
+msgid "found more than 5 voices on a staff, expect bad output"
+msgstr ""
+"l'une des portées contient plus de cinq voix ;\n"
+"attendez-vous à un piètre résultat."
 
-#: convert-ly.py:113
-msgid "do not add \\version command if missing"
-msgstr "ne pas ajouter la commande \\version si elle est absente"
+#: midi2ly.py:1040
+#, python-format
+msgid "%s output to `%s'..."
+msgstr "%s reproduit dans « %s »..."
 
-#: convert-ly.py:119
+#: midi2ly.py:1053
 #, python-format
-msgid "force updating \\version number to %s"
-msgstr "forcer la mise à jour de \\version à %s"
+msgid "Convert %s to LilyPond input.\n"
+msgstr "convertit %s au format source LilyPond.\n"
 
-#: convert-ly.py:125
-msgid "only update \\version number if file is modified"
-msgstr "ne changer le numéro de \\version que si le fichier est modifié"
+#: midi2ly.py:1058
+msgid "print absolute pitches"
+msgstr "affecte des hauteurs absolues"
+
+#: midi2ly.py:1060 midi2ly.py:1088
+msgid "DUR"
+msgstr "DUR"
+
+#: midi2ly.py:1061
+msgid "quantise note durations on DUR"
+msgstr "quantifie les durées de note d'après DUR"
+
+#: midi2ly.py:1064
+msgid "debug printing"
+msgstr "affiche des informations de débogage"
+
+#: midi2ly.py:1067
+msgid "print explicit durations"
+msgstr "affecte des durées explicites"
+
+#: midi2ly.py:1072
+msgid "prepend FILE to output"
+msgstr "ajoute FICHIER à la sortie"
+
+#: midi2ly.py:1076
+msgid "set key: ALT=+sharps|-flats; MINOR=1"
+msgstr "définit l'armure : ALT=+dièse|-bémol ; MINEUR=1"
+
+#: midi2ly.py:1077
+msgid "ALT[:MINOR]"
+msgstr "ALT[:MINEUR]"
+
+#: midi2ly.py:1082
+msgid "preview of first 4 bars"
+msgstr "prévisualisation des quatre premières mesures"
+
+#: midi2ly.py:1086
+msgid "suppress progress messages and warnings about excess voices"
+msgstr "n'affiche aucun message de progression ni de nombre excessif de voix"
+
+#: midi2ly.py:1087
+msgid "quantise note starts on DUR"
+msgstr "quantifie les débuts de note sur DUR"
+
+#: midi2ly.py:1091
+msgid "use s instead of r for rests"
+msgstr "traduit les silences en « s », non en « r »"
+
+#: midi2ly.py:1093
+msgid "DUR*NUM/DEN"
+msgstr "DUR*NUM/DEN"
+
+#: midi2ly.py:1096
+msgid "allow tuplet durations DUR*NUM/DEN"
+msgstr "permet des n-olets de durée DUR*NUM/DEN"
+
+#: midi2ly.py:1106
+msgid "treat every text as a lyric"
+msgstr "traite tout texte comme étant des paroles"
+
+#: midi2ly.py:1109
+msgid "Examples"
+msgstr "Exemples"
+
+#: midi2ly.py:1133
+msgid "no files specified on command line."
+msgstr "aucun fichier spéficié sur la ligne de commande."
 
-#: convert-ly.py:131
+#: musicxml2ly.py:260
 #, python-format
-msgid "show rules [default: -f 0, -t %s]"
-msgstr "afficher les règles [par défaut : -f 0, -t %s]"
+msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr ""
+"Détection d'un fichier créé par %s et contenant des informations de ligature\n"
+"erronées. Toutes les informations de ligature du fichier MusicXML seront\n"
+"ignorées."
 
-#: convert-ly.py:136
+#: musicxml2ly.py:302 musicxml2ly.py:304
 #, python-format
-msgid "convert to VERSION [default: %s]"
-msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
+msgid "Unprocessed PartGroupInfo %s encountered"
+msgstr "PartGroupInfo %s détecté, mais non traité"
 
-#: convert-ly.py:186
-msgid "Applying conversion: "
-msgstr "Conversion en cours : "
+#: musicxml2ly.py:792
+msgid "Unable to extract key signature!"
+msgstr "Impossible de déterminer l'armure."
 
-#: convert-ly.py:202
-msgid "Error while converting"
-msgstr "Erreur lors de la conversion"
+#: musicxml2ly.py:819
+#, python-format
+msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+msgstr ""
+"%s : mode inconnu.\n"
+"Devrait être « majeur », « mineur » ou « mode d'église »."
 
-#: convert-ly.py:204
-msgid "Stopping at last successful rule"
-msgstr "Arrêt à la dernière règle appliquée avec succès"
+#: musicxml2ly.py:988
+#, python-format
+msgid "unknown span event %s"
+msgstr "Événement de prolongation inconnu : « %s »"
 
-#: convert-ly.py:231
+#: musicxml2ly.py:1000
 #, python-format
-msgid "Processing `%s'... "
-msgstr "Traitement de « %s »..."
+msgid "unknown span type %s for %s"
+msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
+
+#: musicxml2ly.py:1497
+msgid "Unknown metronome mark, ignoring"
+msgstr "Indication métronomique inconnue et ignorée."
+
+#. TODO: Implement the other (more complex) way for tempo marks!
+#: musicxml2ly.py:1502
+msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
+msgstr ""
+"Les indications métronomiques aux relations complexes (<metronome-note> pour\n"
+"MusicXML) n'ont pas encore été implémentées."
 
-#: convert-ly.py:338
+#: musicxml2ly.py:1653
 #, python-format
-msgid "%s: Unable to open file"
-msgstr "impossible d'ouvrir le fichier « %s »"
+msgid "Unable to convert chord type %s to lilypond."
+msgstr "Impossible de convertir le type d'accord %s au format LilyPond"
 
-#: convert-ly.py:345
+#: musicxml2ly.py:2007
 #, python-format
-msgid "%s: Unable to determine version.  Skipping"
-msgstr ""
-"impossible de déterminer la version  de « %s ».\n"
-" Au suivant !"
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Retour en arrière de %s (partant de %s et jusqu'à %s)"
+
+#: musicxml2ly.py:2245
+#, python-format
+msgid "Negative skip found: from %s to %s, difference is %s"
+msgstr "Retour en arrière, de %s à %s ; différence = %s"
+
+#: musicxml2ly.py:2346
+#, python-format
+msgid "unexpected %s; expected %s or %s or %s"
+msgstr "%s détecté, au lieu de %s, %s ou %s"
+
+#: musicxml2ly.py:2475
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Terminaison d'une liaison qui n'a pas été débutée"
+
+#: musicxml2ly.py:2478
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "Deux liaisons ne peuvent se terminer simultanément"
+
+#: musicxml2ly.py:2487
+msgid "Cannot have a slur inside another slur"
+msgstr "Des liaisons ne peuvent s'imbriquer"
+
+#: musicxml2ly.py:2490
+msgid "Cannot have two simultaneous slurs"
+msgstr "Deux liaisons ne peuvent intervenir simultanément"
 
-#: convert-ly.py:350
+#: musicxml2ly.py:2616
 #, python-format
+msgid "cannot simultaneously have more than one mode: %s"
+msgstr "SVP, un seul mode à la fois : %s"
+
+#: musicxml2ly.py:2735
+msgid "Converting to LilyPond expressions..."
+msgstr "Conversion en expressions LilyPond..."
+
+#: musicxml2ly.py:2747
+msgid "musicxml2ly [OPTION]... FILE.xml"
+msgstr "musicxml2ly [OPTION]... FICHIER.xml"
+
+#: musicxml2ly.py:2749
 msgid ""
-"%s: Invalid version string `%s' \n"
-"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
+"Convert MusicXML from FILE.xml to LilyPond input.\n"
+"If the given filename is -, musicxml2ly reads from the command line.\n"
 msgstr ""
-"%s porte un numéro de version invalide : %s \n"
-"Un numéro de version valide est formé de trois nombres séparés par un point,\n"
-"comme par exemple « 2.8.12 »"
+"Convertit FICHIER.xml (MusicXML) au format LilyPond.\n"
+"Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
 
-#: etf2ly.py:1197
+#: musicxml2ly.py:2759
 #, python-format
-msgid "%s [OPTION]... ETF-FILE"
-msgstr "%s [OPTIONS]... FICHIER-ETF"
-
-#: etf2ly.py:1198
 msgid ""
-"Enigma Transport Format is a format used by Coda Music Technology's\n"
-"Finale product.  etf2ly converts a subset of ETF to a ready-to-use LilyPond file.\n"
+"Copyright (c) 2005--2016 by\n"
+"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
+"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
+"    Patrick L. Schmidt <pls@philomelos.net>\n"
+"\n"
+"This program is free software.  It is covered by the GNU General Public\n"
+"License and you are welcome to change it and/or distribute copies of it\n"
+"under certain conditions.  Invoke as `%s --warranty' for more\n"
+"information."
 msgstr ""
-"Enigma Transport Format est utilisé par Finale, de Coda Music Technology.\n"
-"etf2ly convertit partiellement un fichier ETF en un fichier LilyPond\n"
-"exploitable.\n"
+"Copyright (c) 2005--2016 by\n"
+"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
+"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
+"    Patrick L. Schmidt <pls@philomelos.net>\n"
+"\n"
+"Ce logiciel est libre. Il est couvert par la licence GNU General Public\n"
+"License, et vous êtes libre de le modifier ou d'en distribuer des copies\n"
+"sous certaines conditions.\n"
+"Invoquez « %s --warranty » pour plus d'informations."
 
-#: website_post.py:123
-msgid "English"
-msgstr "Anglais"
+#: musicxml2ly.py:2786
+msgid "use lxml.etree; uses less memory and cpu time"
+msgstr ""
+"utilise lxml.etree pour consommer moins de mémoire\n"
+"et de temps processeur."
 
-#: website_post.py:126
-msgid "Other languages"
-msgstr "Autres langues"
+#: musicxml2ly.py:2792
+msgid "input file is a zip-compressed MusicXML file"
+msgstr "le fichier d'entrée est un fichier MusicXML compressé"
 
-#: warn.cc:56
-#, c-format
-msgid "Log level set to %d\n"
-msgstr "Niveau de journalisation fixé à %d\n"
+#: musicxml2ly.py:2798
+msgid "convert pitches in relative mode (default)"
+msgstr "convertit les hauteurs en mode relatif (par défaut)"
 
-#: warn.cc:89
-#, c-format
-msgid "unknown log level `%s', using default (INFO)"
-msgstr "« %s » n'est pas un niveau de journalisation reconnu ; utilisation de INFO"
+#: musicxml2ly.py:2803
+msgid "convert pitches in absolute mode"
+msgstr "convertit les hauteurs en mode absolu"
 
-#. Some expected warning was not triggered, so print out a warning.
-#: warn.cc:112
-#, c-format
-msgid "%d expected warning(s) not encountered: "
-msgstr "%d avertissement(s) étaient attendus sans avoir été déclenchés :"
+#: musicxml2ly.py:2806
+msgid "LANG"
+msgstr "LANG"
 
-#: warn.cc:183
-#, c-format
-msgid "fatal error: %s"
-msgstr "erreur fatale : %s"
+#: musicxml2ly.py:2808
+msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
+msgstr ""
+"utilise une autre définition linguistique (LANG),\n"
+"par ex. deutsch pour l'allemand"
 
-#: warn.cc:192
-#, c-format
-msgid "suppressed programming error: %s"
-msgstr "erreur de programmation supprimée : %s"
+#: musicxml2ly.py:2822
+msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
+msgstr ""
+"ne convertit pas les positionnements (^, _ ou -) des articulations,\n"
+"nuances etc."
 
-#: warn.cc:197
-#, c-format
-msgid "programming error: %s"
-msgstr "erreur de programmation : %s"
+#: musicxml2ly.py:2828
+msgid "do not convert exact vertical positions of rests"
+msgstr "ne convertit pas le positionnement absolu des silences"
 
-#: warn.cc:198
-msgid "continuing, cross fingers"
-msgstr "poursuite ; croisons les doigts."
+#: musicxml2ly.py:2834
+msgid "ignore system breaks"
+msgstr "ignore les sauts de ligne"
 
-#: warn.cc:207
-#, c-format
-msgid "suppressed error: %s"
-msgstr "erreur supprimée : %s"
+#: musicxml2ly.py:2840
+msgid "ignore page breaks"
+msgstr "ignore les sauts de page"
 
-#: warn.cc:219
-#, c-format
-msgid "suppressed warning: %s"
-msgstr "avertissement supprimé : %s"
+#: musicxml2ly.py:2846
+msgid "ignore page margins"
+msgstr "ignore les marges"
 
-#: getopt-long.cc:153
-#, c-format
-msgid "option `%s' requires an argument"
-msgstr "L'option « %s » requiert un argument"
+#: musicxml2ly.py:2852
+msgid "do not convert the exact page layout and breaks (shortcut for \"--nsb --npb --npm\" options)"
+msgstr ""
+"ne convertit pas les sauts et la mise en page\n"
+"(raccourci des options \"--nsb --npb\")"
 
-#: getopt-long.cc:157
-#, c-format
-msgid "option `%s' does not allow an argument"
-msgstr "L'option « %s » s'emploie sans argument"
+#: musicxml2ly.py:2858
+msgid "ignore stem directions from MusicXML, use lilypond's automatic stemming instead"
+msgstr ""
+"ignore l'orientation des hampes de MusicXML ;\n"
+"laisse LilyPond gérer leur orientation"
 
-#: getopt-long.cc:161
-#, c-format
-msgid "unrecognized option: `%s'"
-msgstr "option non reconnue : « %s »"
+#: musicxml2ly.py:2864
+msgid "do not convert beaming information, use lilypond's automatic beaming instead"
+msgstr ""
+"ne convertit pas les informations de ligature ;\n"
+"laisse LilyPond gérer les ligatures automatiques"
 
-#: getopt-long.cc:167
-#, c-format
-msgid "invalid argument `%s' to option `%s'"
-msgstr "argument « %s » invalide pour l'option « %s »"
+#: musicxml2ly.py:2872
+msgid "set output filename to FILE, stdout if -"
+msgstr "produit la sortie dans FICHIER (stdout si -)"
 
-#: flag.cc:110
-#, c-format
-msgid "flag `%s' not found"
-msgstr "crochet inconnu : « %s »"
+#: musicxml2ly.py:2878
+msgid "activate midi-block in .ly file"
+msgstr "activation du bloc midi dans le fichier .ly"
 
-#: flag.cc:130
-#, c-format
-msgid "flag stroke `%s' not found"
-msgstr "type de crochet inconnu : « %s »"
+#: musicxml2ly.py:2882
+msgid "TOPITCH"
+msgstr "AHAUTEUR"
 
-#: parse-scm.cc:112
-msgid "GUILE signaled an error for the expression beginning here"
-msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
+#: musicxml2ly.py:2885
+msgid "set pitch to transpose by the interval between pitch 'c' and TOPITCH"
+msgstr "détermnine la hauteur où transposer par l'intervalle entre do et AHAUTEUR"
 
-#: lily-lexer.cc:255
-msgid "include files are not allowed in safe mode"
-msgstr "l'inclusion de fichiers n'est pas permise en mode sans échec"
+#: musicxml2ly.py:2889
+msgid "BEATS/BEATTYPE"
+msgstr "TEMPS/BATTUE"
 
-#: lily-lexer.cc:282
-#, c-format
-msgid "identifier name is a keyword: `%s'"
-msgstr "Le nom de l'identificateur est un mot clé : « %s »"
+#: musicxml2ly.py:2892
+msgid "change the length|duration of notes as a function of a given time signature to make the score look faster or slower, (eg. '4/4' or '2/2')"
+msgstr ""
+"change la longueur|durée des notes en fonction d'une métrique\n"
+"pour accélérer ou ralentir la partition (par ex. 4/4 ou 2/2)"
 
-#: lily-lexer.cc:303 lily-lexer.cc:316
-#, c-format
-msgid "%s:EOF"
-msgstr "%s:EOF"
+#: musicxml2ly.py:2896
+msgid "TABCLEFNAME"
+msgstr "TABCLEFNOM"
 
-#. if we get to here, just put everything on one line
-#: constrained-breaking.cc:187 constrained-breaking.cc:205
-msgid "cannot find line breaking that satisfies constraints"
-msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
+#: musicxml2ly.py:2899
+msgid "switch between two versions of tab clefs (\"tab\" and \"moderntab\")"
+msgstr "bascule entre deux versions de clefs de tablature (\"tab\" et \"moderntab\")"
 
-#: context-property.cc:43
-msgid "need symbol arguments for \\override and \\revert"
-msgstr "\\override et \\revert requièrent des arguments symboliques"
+#: musicxml2ly.py:2903
+msgid "t[rue]/f[alse]"
+msgstr "t[rue]/f[alse] (vrai/faux)"
 
-#: horizontal-bracket-engraver.cc:62
-msgid "do not have that many brackets"
-msgstr "n'a pas autant de crochets"
+#: musicxml2ly.py:2906
+msgid "deactivate string number stencil with --string-numbers f[alse]. Default is t[rue]"
+msgstr ""
+"désactive le stencil du numéro de corde avec --string-numbers f[alse].\n"
+"Valeur par défaut : t[rue]"
 
-#: horizontal-bracket-engraver.cc:71
-msgid "conflicting note group events"
-msgstr "événements de groupe de notes conflictuels"
+#: musicxml2ly.py:2913
+msgid "converts '<frame>' events to a separate FretBoards voice instead of markups"
+msgstr ""
+"convertit les événements '<frame>' dans une voix FretBoards séparée\n"
+"plutôt qu'en « markups »"
 
-#: new-fingering-engraver.cc:113
-msgid "cannot add text scripts to individual note heads"
-msgstr "impossible d'ajouter du texte à des têtes de note individuelles"
+#: musicxml2ly.py:2987
+#, python-format
+msgid "unknown part in part-list: %s"
+msgstr "la partie « %s » n'est pas mentionnée dans part-list"
 
-#: new-fingering-engraver.cc:265
-msgid "no placement found for fingerings"
-msgstr "nulle part où positionner des doigtés"
+#: musicxml2ly.py:3077
+msgid "Input is compressed, extracting raw MusicXML data from stdin"
+msgstr ""
+"Le fichier d'entrée est compressé.\n"
+"Extraction des données MusicXML brutes à partir de stdin"
 
-#: new-fingering-engraver.cc:266
-msgid "placing below"
-msgstr "on les place en dessous"
+#: musicxml2ly.py:3090
+#, python-format
+msgid "Input file %s is compressed, extracting raw MusicXML data"
+msgstr ""
+"Le fichier d'entrée (%s) est compressé.\n"
+"Extraction des données MusicXML brutes"
 
-#: translator-group.cc:188
-#, c-format
-msgid "cannot find: `%s'"
-msgstr " « %s » inconnu(e)"
+#: musicxml2ly.py:3120
+msgid "Reading MusicXML from Standard input ..."
+msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
 
-#: glissando-engraver.cc:158
-msgid "unterminated glissando"
-msgstr "glissando non terminé"
+#: musicxml2ly.py:3122
+#, python-format
+msgid "Reading MusicXML from %s ..."
+msgstr "Lecture du fichier MusicXML « %s »..."
+
+#: musicxml2ly.py:3154
+#, python-format
+msgid "Output to `%s'"
+msgstr "Fichier de sortie : « %s »"
+
+#: musicxml2ly.py:3180
+#, python-format
+msgid "Converting to current version (%s) notations ..."
+msgstr "Conversion des notes à la version courante (%s)..."
+
+#: musicxml2ly.py:3254
+#, python-format
+msgid "Unable to find input file %s"
+msgstr "Impossible de trouver le fichier d'entrée « %s »"
+
+#: website_post.py:129
+msgid "English"
+msgstr "Anglais"
+
+#: website_post.py:132
+msgid "Other languages"
+msgstr "Autres langues"
+
+#: website_post.py:133
+#, python-format
+msgid "About <a href=\"%s\">automatic language selection</a>."
+msgstr "À propos de la <a href=\"%s\">sélection automatique de la langue</a>."
 
-#: midi-item.cc:89
+#: getopt-long.cc:153
 #, c-format
-msgid "no such MIDI instrument: `%s'"
-msgstr "instrument MIDI non répertorié : « %s »"
+msgid "option `%s' requires an argument"
+msgstr "L'option « %s » requiert un argument"
 
-#: open-type-font.cc:44
+#: getopt-long.cc:157
 #, c-format
-msgid "cannot allocate %lu bytes"
-msgstr "impossible d'allouer %lu octets"
+msgid "option `%s' does not allow an argument"
+msgstr "L'option « %s » s'emploie sans argument"
 
-#: open-type-font.cc:48
+#: getopt-long.cc:161
 #, c-format
-msgid "cannot load font table: %s"
-msgstr "impossible de charger la table des fontes : %s"
+msgid "unrecognized option: `%s'"
+msgstr "option non reconnue : « %s »"
 
-#: open-type-font.cc:53
+#: getopt-long.cc:167
 #, c-format
-msgid "FreeType error: %s"
-msgstr "Erreur FreeType : %s"
+msgid "invalid argument `%s' to option `%s'"
+msgstr "argument « %s » invalide pour l'option « %s »"
 
-#: open-type-font.cc:110
+#: warn.cc:56
 #, c-format
-msgid "unsupported font format: %s"
-msgstr "format de police non supporté : %s"
+msgid "Log level set to %d\n"
+msgstr "Niveau de journalisation fixé à %d\n"
 
-#: open-type-font.cc:112
+#: warn.cc:89
 #, c-format
-msgid "error reading font file %s: %s"
-msgstr "erreur de lecture du fichier de fontes %s : %s"
+msgid "unknown log level `%s', using default (INFO)"
+msgstr "« %s » n'est pas un niveau de journalisation reconnu ; utilisation de INFO"
 
-#: open-type-font.cc:187
+#. Some expected warning was not triggered, so print out a warning.
+#: warn.cc:112
 #, c-format
-msgid "FT_Get_Glyph_Name () Freetype error: %s"
-msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
+msgid "%d expected warning(s) not encountered: "
+msgstr "%d avertissement(s) étaient attendus sans avoir été déclenchés :"
 
-#: open-type-font.cc:318 pango-font.cc:189
+#: warn.cc:183
 #, c-format
-msgid "FT_Get_Glyph_Name () error: %s"
-msgstr "Erreur FT_Get_Glyph_Name () : %s"
+msgid "fatal error: %s"
+msgstr "erreur fatale : %s"
 
-#: note-heads-engraver.cc:76
-msgid "NoteEvent without pitch"
-msgstr "NoteEvent sans hauteur"
+#: warn.cc:192
+#, c-format
+msgid "suppressed programming error: %s"
+msgstr "erreur de programmation supprimée : %s"
 
-#: skyline-pair.cc:131
-msgid "direction must not be CENTER in ly:skyline-pair::skyline"
-msgstr "direction ne saurait être CENTER pour ly:skyline-pair::skyline"
+#: warn.cc:197
+#, c-format
+msgid "programming error: %s"
+msgstr "erreur de programmation : %s"
 
-#: hyphen-engraver.cc:104
-msgid "removing unterminated hyphen"
-msgstr "retrait du trait d'union sans suite"
+#: warn.cc:198
+msgid "continuing, cross fingers"
+msgstr "poursuite ; croisons les doigts."
 
-#: hyphen-engraver.cc:118
-msgid "unterminated hyphen; removing"
-msgstr "trait d'union sans suite ; escamoté"
+#: warn.cc:207
+#, c-format
+msgid "suppressed error: %s"
+msgstr "erreur supprimée : %s"
 
-#: output-def.cc:235
-msgid "margins do not fit with line-width, setting default values"
+#: warn.cc:219
+#, c-format
+msgid "suppressed warning: %s"
+msgstr "avertissement supprimé : %s"
+
+#: accidental-engraver.cc:180
+#, c-format
+msgid "accidental typesetting list must begin with context-name: %s"
 msgstr ""
-"les marges ne sont pas en cohérence avec la longueur de ligne ;\n"
-"retour aux valeurs par défaut"
+"La saisie d'une liste d'altérations accidentelles doit débuter\n"
+"par un nom de contexte : %s"
 
-#: output-def.cc:242
-msgid "systems run off the page due to improper paper settings, setting default values"
+#: accidental-engraver.cc:207
+#, c-format
+msgid "procedure or context-name expected for accidental rule, found %s"
 msgstr ""
-"les systèmes débordent de la page en raison de réglages de papier erronés ;\n"
-"retour aux valeurs par défaut"
+"procédure ou nom de contexte requis pour la règle d'altération accidentelle,\n"
+"%s trouvé"
 
-#: accidental.cc:200
+#: accidental.cc:141
 #, c-format
 msgid "Could not find glyph-name for alteration %s"
 msgstr "Aucun nom de glyphe ne correspond à l'altération %s"
 
-#: accidental.cc:215
+#: accidental.cc:157
 msgid "natural alteration glyph not found"
 msgstr "pas de glyphe correspondant au bécarre"
 
-#: lyric-combine-music-iterator.cc:337
+#: all-font-metrics.cc:159
 #, c-format
-msgid "cannot find Voice `%s'"
-msgstr "impossible de repérer la voix (Voice) « %s »"
+msgid "cannot find font: `%s'"
+msgstr "fonte « %s » introuvable"
 
-#: context.cc:148
-#, c-format
-msgid "cannot find or create new `%s'"
-msgstr "impossible de trouver ou créer un nouveau « %s »"
+#: apply-context-iterator.cc:42
+msgid "\\applycontext argument is not a procedure"
+msgstr "l'argument \\applycontext n'est pas une procédure"
 
-#: context.cc:206
-#, c-format
-msgid "cannot find or create `%s' called `%s'"
-msgstr "impossible de trouver ou créer « %s » dénommé « %s »"
+#: arpeggio.cc:138
+msgid "no heads for arpeggio found?"
+msgstr "arpeggio sans tête de note ?"
 
-#: context.cc:399
+#: audio-item.cc:139
 #, c-format
-msgid "cannot find or create: `%s'"
-msgstr "impossible de trouver ou créer « %s »"
+msgid "end moment (%s) < start moment (%s)"
+msgstr "moment de fin (%s) < moment de début (%s)"
 
-#: dispatcher.cc:82
-msgid "Event class should be a symbol"
-msgstr "La classe Event devrait être un symbole"
-
-#: dispatcher.cc:89
+#: audio-item.cc:153
 #, c-format
-msgid "Unknown event class %s"
-msgstr "Classe d'événement inconnue : « %s »"
+msgid "invalid start volume: %f"
+msgstr "volume de départ invalide : %f"
 
-#: dispatcher.cc:171
+#: audio-item.cc:159
 #, c-format
-msgid "Junking event: %s"
-msgstr "Événement escamoté : « %s »"
+msgid "invalid target volume: %f"
+msgstr "volume d'arrivée invalide : %f"
 
-#: auto-change-iterator.cc:74 change-iterator.cc:72
+#: audio-item.cc:174
 #, c-format
-msgid "cannot change, already in translator: %s"
-msgstr "modification impossible, c'est déjà dans le translateur : %s"
-
-#: tie-engraver.cc:117
-msgid "unterminated tie"
-msgstr "liaison de prolongation non terminée"
-
-#: tie-engraver.cc:348
-msgid "lonely tie"
-msgstr "liaison de prolongation orpheline"
-
-#: dynamic-engraver.cc:193
-msgid "cannot find start of (de)crescendo"
-msgstr "impossible de repérer le début du (de)crescendo"
+msgid "asked to compute volume at %f for dynamic span of duration %f starting at %s"
+msgstr "demande de calculer le volume à %f d'une nuance durant %f et débutant à %s"
 
-#: dynamic-engraver.cc:200
-msgid "already have a decrescendo"
-msgstr "decrescendo déjà présent"
-
-#: dynamic-engraver.cc:202
-msgid "already have a crescendo"
-msgstr "crescendo déjà présent"
+#: audio-item.cc:182
+#, c-format
+msgid "asked to compute volume at +%f for dynamic span of duration %f starting at %s"
+msgstr "demande de calculer le volume à +%f d'une nuance durant %f et débutant à %s"
 
-#: dynamic-engraver.cc:205
-msgid "cresc starts here"
-msgstr "le crescendo débute ici"
+#: axis-group-engraver.cc:154
+msgid "Axis_group_engraver: vertical group already has a parent"
+msgstr "Axis_group_engraver : le groupe vertical a déjà un parent"
 
-#: dynamic-engraver.cc:333
-msgid "unterminated (de)crescendo"
-msgstr "(de)crescendo non terminé"
+#: axis-group-engraver.cc:155
+msgid "are there two Axis_group_engravers?"
+msgstr "Axis_group_engraver redondant"
 
-#: paper-score.cc:122 minimal-page-breaking.cc:40
-msgid "Calculating line breaks..."
-msgstr "Calcul des sauts de ligne..."
+#: axis-group-engraver.cc:156
+msgid "removing this vertical group"
+msgstr "retrait de ce groupe vertical"
 
-#: paper-score.cc:134
+#: axis-group-interface.cc:716
 #, c-format
-msgid "Element count %d (spanners %d) "
-msgstr "%d éléments dénombrés (%d extensions)"
-
-#: paper-score.cc:138
-msgid "Preprocessing graphical objects..."
-msgstr "Pré-traitement des éléments graphiques..."
-
-#: paper-score.cc:162 optimal-page-breaking.cc:208
-#: page-turn-page-breaking.cc:248
-msgid "Drawing systems..."
-msgstr "Dessin des systèmes..."
+msgid "\"%s\" is not a valid outside-staff-placement-directive"
+msgstr ""
+"on ne peut positionner un objet externe à la portée avec \"%s\"\n"
+"  (outside-staff-position-directive)"
 
-#: mensural-ligature-engraver.cc:96
-msgid "ligature with less than 2 heads -> skipping"
-msgstr "ligature avec moins de 2 têtes -> escamotage"
+#: axis-group-interface.cc:788
+msgid "an outside-staff object should have a direction, defaulting to up"
+msgstr ""
+"un objet externe à la portée devrait avoir un positionnement.\n"
+"  Placé par défaut au-dessus."
 
-#: mensural-ligature-engraver.cc:123
-msgid "cannot determine pitch of ligature primitive -> skipping"
-msgstr "impossible de déterminer la hauteur de la primitive de ligature -> escamotage"
+#: bar-check-iterator.cc:84
+#, c-format
+msgid "barcheck failed at: %s"
+msgstr "échec du contrôle de mesure (barcheck) à %s"
 
-#: mensural-ligature-engraver.cc:137
-msgid "single note ligature - skipping"
-msgstr "ligature sur note unique -> escamotage"
+#: beam-engraver.cc:147
+msgid "already have a beam"
+msgstr "ligature déjà présente"
 
-#: mensural-ligature-engraver.cc:148
-msgid "prime interval within ligature -> skipping"
-msgstr "intervale de prime dans la ligature -> escamotage"
+#: beam-engraver.cc:234
+msgid "unterminated beam"
+msgstr "ligature non terminée"
 
-#: mensural-ligature-engraver.cc:159
-msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
-msgstr "ligature mensurale : aucune durée parmi Mx, L, B, S -> escamotage"
+#: beam-engraver.cc:281 chord-tremolo-engraver.cc:148
+msgid "stem must have Rhythmic structure"
+msgstr "la hampe doit avoir une structure Rythmic"
 
-#: mensural-ligature-engraver.cc:202
-msgid "semibrevis must be followed by another one -> skipping"
-msgstr "une ronde doit être suivie d'une autre -> escamotage"
+#: beam-engraver.cc:292
+msgid "stem does not fit in beam"
+msgstr "la hampe ne s'insère pas dans la ligature"
 
-#: mensural-ligature-engraver.cc:212
-msgid ""
-"semibreves can only appear at the beginning of a ligature,\n"
-"and there may be only zero or two of them"
-msgstr ""
-"les rondes ne peuvent apparaître qu'en début de ligature,\n"
-"et il ne peut y en avoir que zéro ou deux"
+#: beam-engraver.cc:293
+msgid "beam was started here"
+msgstr "la ligature a débuté ici"
 
-#: mensural-ligature-engraver.cc:232
-msgid ""
-"invalid ligatura ending:\n"
-"when the last note is a descending brevis,\n"
-"the penultimate note must be another one,\n"
-"or the ligatura must be LB or SSB"
+#. We are completely screwed.
+#: beam-quanting.cc:850
+msgid "no viable initial configuration found: may not find good beam slope"
 msgstr ""
-"terminaison de ligature invalide :\n"
-"lorsque la dernière note est une brève descendante,\n"
-"l'avant dernière note doit en être une autre,\n"
-"sinon la ligature doit être LB ou SSB"
+"pas de configuration initiale viable repérée :\n"
+"la pente de la ligature pourrait être inesthétique."
 
-#: mensural-ligature-engraver.cc:387
-msgid "unexpected case fall-through"
-msgstr "cas inattendu et non interprétable"
+#: beam.cc:183
+msgid "removing beam with no stems"
+msgstr "suppression d'une ligature ayant moins de deux hampes"
 
-#: piano-pedal-engraver.cc:279
+#: change-iterator.cc:34
 #, c-format
-msgid "expect 3 strings for piano pedals, found: %ld"
-msgstr "Les pédales de piano nécessitent 3 cordes. Il y en a %ld"
+msgid "cannot change `%s' to `%s'"
+msgstr "impossible de changer « %s » en « %s »"
 
-#: piano-pedal-engraver.cc:294 piano-pedal-engraver.cc:305
-#: piano-pedal-performer.cc:104
-#, c-format
-msgid "cannot find start of piano pedal: `%s'"
-msgstr "début de la pédale de piano indéterminé : « %s »"
+#. FIXME: constant error message.
+#: change-iterator.cc:67
+msgid "cannot find context to switch to"
+msgstr "impossible de repérer le contexte vers lequel commuter"
 
-#: piano-pedal-engraver.cc:340
+#. No enclosing context was found because the iterator's immediate
+#. context is the kind that was sought.
+#. We could change the current translator's id, but that would make
+#. errors hard to catch.
+#.
+#. last->translator_id_string () = get_change
+#. ()->change_to_id_string ();
+#: change-iterator.cc:78
 #, c-format
-msgid "cannot find start of piano pedal bracket: `%s'"
-msgstr "début du crochet de la pédale de piano indéterminé : « %s »"
+msgid "not changing to same context type: %s"
+msgstr "pas de changement vers le même type de contexte : %s"
 
-#: input.cc:138 source-file.cc:178 source-file.cc:193
-msgid "position unknown"
-msgstr "position inconnue"
+#. FIXME: incomprehensible message
+#: change-iterator.cc:82
+msgid "none of these in my family"
+msgstr "aucun de ceux-ci dans ma famille"
 
-#: stem.cc:128
-msgid "weird stem size, check for narrow beams"
-msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
+#: chord-tremolo-engraver.cc:87
+msgid "No tremolo to end"
+msgstr "Aucun trémolo à terminer"
 
-#: relative-octave-check.cc:49
-msgid "Failed octave check, got: "
-msgstr "échec de la vérification d'octave, a obtenu : "
+#: chord-tremolo-engraver.cc:108
+msgid "unterminated chord tremolo"
+msgstr "accord en trémolo non terminé"
 
-#: translator-ctors.cc:65
+#: clef.cc:65
 #, c-format
-msgid "unknown translator: `%s'"
-msgstr "translateur inconnu : « %s »"
+msgid "clef `%s' not found"
+msgstr "clé « %s » introuvable"
 
-#: ligature-engraver.cc:104 ligature-bracket-engraver.cc:72
-msgid "cannot find start of ligature"
-msgstr "impossible de trouver le début de la ligature"
+#: cluster.cc:120
+#, c-format
+msgid "unknown cluster style `%s'"
+msgstr "style de cluster inconnu : « %s »"
 
-#: ligature-engraver.cc:109
-msgid "no right bound"
-msgstr "pas de borne à droite"
+#: cluster.cc:157
+msgid "junking empty cluster"
+msgstr "mise au rebut d'un cluster vide"
 
-#: ligature-engraver.cc:131 ligature-bracket-engraver.cc:85
-msgid "already have a ligature"
-msgstr "a déjà une ligature"
+#: coherent-ligature-engraver.cc:110
+#, c-format
+msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
+msgstr "Coherent_ligature_engraver : initialise « spacing-increment=0.01 » : ptr=%ul"
 
-#: ligature-engraver.cc:140
-msgid "no left bound"
-msgstr "pas de borne à gauche"
+#: constrained-breaking.cc:187 constrained-breaking.cc:206
+msgid "cannot find line breaking that satisfies constraints"
+msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
 
-#: ligature-engraver.cc:184
-msgid "unterminated ligature"
-msgstr "ligature non terminée"
+#: context-property.cc:46
+msgid "need symbol argument for \\override and \\revert"
+msgstr "\\override et \\revert requièrent des arguments symboliques"
 
-#: ligature-engraver.cc:211
-msgid "ignoring rest: ligature may not contain rest"
-msgstr "le silence est ignoré : une ligature ne peut contenir de silence"
+#: context.cc:147
+#, c-format
+msgid "cannot find or create new `%s'"
+msgstr "impossible de trouver ou créer un nouveau « %s »"
 
-#: ligature-engraver.cc:212
-msgid "ligature was started here"
-msgstr "la ligature a débuté ici"
+#: context.cc:226
+#, c-format
+msgid "cannot find or create `%s' called `%s'"
+msgstr "impossible de trouver ou créer « %s » dénommé(e) « %s »"
 
-#: tuplet-engraver.cc:110
-msgid "No tuplet to end"
-msgstr "Aucun n-olet à terminer"
+#: context.cc:457
+#, c-format
+msgid "cannot find or create: `%s'"
+msgstr "impossible de trouver ou créer « %s »"
 
-#: ttf.cc:480 ttf.cc:528
+#: context.cc:471
 #, c-format
-msgid "font index %d too large for font `%s', using index 0"
-msgstr ""
-"index %d trop grand pour la fonte « %s » ;\n"
-"réindexé sur 0"
+msgid "cannot find or create new Bottom = \"%s\""
+msgstr "impossible de trouver ou créer un nouveau « %s »"
 
-#: ttf.cc:512 ttf.cc:562
-msgid "font index must be non-negative, using index 0"
-msgstr "l'index de fonte ne peut être négatif ; réindexé sur 0"
+#: custos.cc:87
+#, c-format
+msgid "custos `%s' not found"
+msgstr "custode « %s » introuvable"
 
-#: multi-measure-rest.cc:140
-msgid "usable-duration-logs must be a non-empty list.  Falling back to whole rests."
-msgstr ""
-"usable-duration-logs ne peut être constitué d'une liste vide.\n"
-"Retour à des pauses."
+#: dispatcher.cc:82
+msgid "Event class should be a list"
+msgstr "La classe d'événement devrait être une liste"
 
-#: partial-iterator.cc:45
-msgid "trying to use \\partial after the start of a piece"
-msgstr "\\partial ne devrait intervenir qu'en début de morceau"
+#: dispatcher.cc:165
+#, c-format
+msgid "Junking event: %s"
+msgstr "Événement escamoté : « %s »"
 
-#: minimal-page-breaking.cc:44
-msgid "Calculating page breaks..."
-msgstr "Calcul des sauts de page..."
+#: dispatcher.cc:279
+msgid "Attempting to remove nonexisting listener."
+msgstr "Tentative de suppression d'un écouteur inexistant."
 
-#: vaticana-ligature-engraver.cc:400
-#, c-format
-msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
-msgstr ""
-"préfixe(s) « %s » ignoré(s) pour la tête de note, \n"
-"selon les restrictions du style de ligature sélectionné"
+#: dispatcher.cc:305
+msgid "Already listening to dispatcher, ignoring request"
+msgstr "Déjà à l'écoute du dispatcheur ; requête ignorée."
 
-#: vaticana-ligature-engraver.cc:736
+#: dots.cc:48
 #, c-format
-msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
-msgstr "Vaticana_ligature_engraver : fixé `spacing-increment = %f': ptr=%ul"
+msgid "dot `%s' not found"
+msgstr "point « %s » introuvable"
 
-#: paper-book.cc:214
+#: dynamic-engraver.cc:166
 #, c-format
-msgid "program option -dprint-pages not supported by backend `%s'"
-msgstr "l'option -dprint-pages n'est pas opérationnelle avec le moteur %s"
+msgid ""
+"unknown crescendo style: %s\n"
+"defaulting to hairpin."
+msgstr ""
+"style de crescendo inconnu : %s\n"
+"retour à la valeur par défaut (soufflet)."
 
-#: paper-book.cc:233
+#: dynamic-engraver.cc:231 slur-engraver.cc:185
 #, c-format
-msgid "program option -dpreview not supported by backend `%s'"
-msgstr "l'option -dpreview n'est pas opérationnelle avec le moteur %s"
+msgid "unterminated %s"
+msgstr "%s non terminé(e)"
 
-#: episema-engraver.cc:75
+#: episema-engraver.cc:74
 msgid "already have an episema"
 msgstr "épisème déjà présent"
 
-#: episema-engraver.cc:88
+#: episema-engraver.cc:87
 msgid "cannot find start of episema"
 msgstr "impossible de trouver le début de l'épisème"
 
-#: episema-engraver.cc:137
+#: episema-engraver.cc:136
 msgid "unterminated episema"
 msgstr "épisème non terminé"
 
-#: score-engraver.cc:78
-#, c-format
-msgid "cannot find `%s'"
-msgstr "impossible de trouver « %s »"
+#: extender-engraver.cc:167 extender-engraver.cc:176
+msgid "unterminated extender"
+msgstr "prolongation ou extenseur non terminé"
 
-#: score-engraver.cc:80
-msgid "Music font has not been installed properly."
-msgstr "Les fontes musicales n'ont pas été installées correctement."
+#: flag.cc:133
+#, c-format
+msgid "flag `%s' not found"
+msgstr "crochet inconnu : « %s »"
 
-#: score-engraver.cc:82
+#: flag.cc:153
 #, c-format
-msgid "Search path `%s'"
-msgstr "Chemin de recherche : « %s »"
+msgid "flag stroke `%s' not found"
+msgstr "type de crochet inconnu : « %s »"
 
-#: score-engraver.cc:84
-msgid "Aborting"
-msgstr "Abandon"
+#: font-config-scheme.cc:151 font-config.cc:82
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
 
-#: performance.cc:54
-msgid "Track..."
-msgstr "Piste..."
+#: font-config-scheme.cc:153 font-config.cc:84
+#, c-format
+msgid "Adding font directory: %s"
+msgstr "Ajout d'un répertoire de fontes : « %s »"
 
-#: performance.cc:82
+#: font-config-scheme.cc:167
 #, c-format
-msgid "MIDI output to `%s'..."
-msgstr "Sortie MIDI vers « %s »..."
+msgid "failed adding font file: %s"
+msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
 
-#: note-collision.cc:504
-msgid "ignoring too many clashing note columns"
-msgstr "trop d'empilements de notes se chevauchent. On fera au mieux."
+#: font-config-scheme.cc:169
+#, c-format
+msgid "Adding font file: %s"
+msgstr "Ajout d'un fichier de fontes : « %s »"
 
-#. fixme: be more verbose.
-#: volta-engraver.cc:111
-msgid "cannot end volta spanner"
-msgstr "extension de reprise sans terminaison"
+#: font-config.cc:38
+msgid "Initializing FontConfig..."
+msgstr "Initialisation de FontConfig..."
 
-#: volta-engraver.cc:121
-msgid "already have a volta spanner, ending that one prematurely"
-msgstr "extension de reprise déjà présente, fin prématurée de celle-ci"
+#: font-config.cc:70
+#, c-format
+msgid "failed to add fontconfig configuration file `%s'"
+msgstr "échec lors de l'ajout du fichier de configuration de fontconfig « %s »"
 
-#: volta-engraver.cc:125
-msgid "also already have an ended spanner"
-msgstr "a déjà une extension terminée"
+#: font-config.cc:73
+#, c-format
+msgid "Adding fontconfig configuration file: %s"
+msgstr "Ajout du fichier de configuration de fontconfig : « %s »"
 
-#: volta-engraver.cc:126
-msgid "giving up"
-msgstr "abandon"
+#: font-config.cc:86
+msgid "Building font database..."
+msgstr "Construction de la base de donnée des fontes..."
 
-#: page-layout-problem.cc:709
-msgid "cannot fit music on page: ragged-spacing was requested, but page was compressed"
-msgstr ""
-"impossible de faire tenir la musique sur la page :\n"
-"  justification demandée, mais page déjà compressée"
+#: footnote-engraver.cc:87
+msgid "Must be footnote-event."
+msgstr "Doit être un événement note de bas de page (footnote-event)."
 
-#: page-layout-problem.cc:712
+#: general-scheme.cc:403
 #, c-format
-msgid "cannot fit music on page: overflow is %f"
-msgstr "impossible de faire tenir la musique sur la page.  Débordement de %f"
-
-#: page-layout-problem.cc:714
-msgid "compressing music to fit"
-msgstr "compression de la musique pour que cela tienne"
+msgid "failed redirecting stderr to `%s'"
+msgstr "échec lors de la redirection de stderr vers « %s »"
 
-#: page-layout-problem.cc:1176
-msgid "staff-affinities should only decrease"
-msgstr "staff-affinities devraient aller en ordre décroissant"
+#: general-scheme.cc:482
+msgid "Found infinity or nan in output.  Substituting 0.0"
+msgstr "Détection d'une valeur infini ou non numérique. Substitution par 0.0"
 
-#: apply-context-iterator.cc:42
-msgid "\\applycontext argument is not a procedure"
-msgstr "l'argument \\applycontext n'est pas une procédure"
+#: general-scheme.cc:623
+#, c-format
+msgid "g_spawn_sync failed (%d): %s: %s"
+msgstr "échec de g_spawn_sync (%d) : %s : %s"
 
-#. FIXME: constant error message.
-#: mark-engraver.cc:157
-msgid "rehearsalMark must have integer value"
-msgstr "rehearsalMark doit être un entier"
+#: glissando-engraver.cc:157
+msgid "unterminated glissando"
+msgstr "glissando non terminé"
 
-#: mark-engraver.cc:163
-msgid "mark label must be a markup object"
-msgstr "les étiquettes de marque doivent être des objets de type \"markup\""
+#: global-context-scheme.cc:95 global-context-scheme.cc:113
+msgid "no music found in score"
+msgstr "Il n'y a pas de musique dans cette partition"
 
-#: stem-engraver.cc:105
-msgid "tremolo duration is too long"
-msgstr "durée du tremolo trop longue"
+#: global-context-scheme.cc:103
+msgid "Interpreting music..."
+msgstr "Interprétation en cours de la musique..."
 
-#: stem-engraver.cc:157
+#: global-context-scheme.cc:125
 #, c-format
-msgid "adding note head to incompatible stem (type = %d/%d)"
-msgstr "Ajout d'une tête de note à une hampe incompatible (type = %d/%d)"
-
-#: stem-engraver.cc:160
-msgid "maybe input should specify polyphonic voices"
-msgstr "la source devrait spécifier des voix polyphoniques"
+msgid "elapsed time: %.2f seconds"
+msgstr "temps écoulé : %.2f secondes"
 
-#: includable-lexer.cc:71 lily-guile.cc:91 lily-parser-scheme.cc:108
+#: gregorian-ligature-engraver.cc:70
 #, c-format
-msgid "cannot find file: `%s'"
-msgstr "fichier non trouvé : « %s »"
+msgid "\\%s ignored"
+msgstr "\\%s ignoré(e)"
 
-#: includable-lexer.cc:73 lily-parser-scheme.cc:100
+#: gregorian-ligature-engraver.cc:75
 #, c-format
-msgid "(search path: `%s')"
-msgstr "(chemin de recherche : « %s »)"
+msgid "implied \\%s added"
+msgstr "\\%s implicite ajouté(e)"
 
-#: relocate.cc:52
-#, c-format
-msgid "Setting %s to %s"
-msgstr "%s fixé à %s"
+#. ligature may not start with 2nd head of pes or flexa
+#: gregorian-ligature-engraver.cc:224
+msgid "cannot apply `\\~' on first head of ligature"
+msgstr "Impossible d'appliquer « \\~ » à la première tête de ligature"
 
-#. this warning should only be printed in debug mode!
-#: relocate.cc:73
-#, c-format
-msgid "no such file: %s for %s"
-msgstr "fichier inexistant : %s pour %s"
+#. (pitch == prev_pitch)
+#: gregorian-ligature-engraver.cc:236
+msgid "cannot apply `\\~' on heads with identical pitch"
+msgstr "Impossible d'appliquer « \\~ » à des têtes ayant la même hauteur"
 
-#. this warning should only be printed in debug mode!
-#. this warning should only be printed in debug mode
-#: relocate.cc:84 relocate.cc:102
+#: grob-interface.cc:68
 #, c-format
-msgid "no such directory: %s for %s"
-msgstr "répertoire inexistant : %s pour %s"
+msgid "Unknown interface `%s'"
+msgstr "Interface inconnue : « %s »"
 
-#: relocate.cc:93
+#: grob-interface.cc:79
 #, c-format
-msgid "%s=%s (prepend)\n"
-msgstr "%s=%s (ajout)\n"
+msgid "Grob `%s' has no interface for property `%s'"
+msgstr ""
+"L'objet graphique (Grob) « %s »\n"
+" n'a pas d'interface pour la propriété « %s »"
 
-#: relocate.cc:124
+#: grob-property.cc:32
 #, c-format
-msgid "not relocating, no %s/ or current/ found under %s"
-msgstr "relocalisation non effectuée, ni %s/ ni courrant/ n'existent sous %s"
+msgid "%d: %s"
+msgstr "%d : %s"
 
-#: relocate.cc:134
+#: grob.cc:489
 #, c-format
-msgid "Relocation: compile datadir=%s, new datadir=%s"
-msgstr "Relocalisation : datadir de compilation = %s, nouveau datadir = %s"
+msgid "ignored infinite %s-offset"
+msgstr "%s-offset infini ignoré"
 
-#: relocate.cc:146
-#, c-format
-msgid "Relocation: framework_prefix=%s"
-msgstr "Relocalisation : framework_prefix = %s"
+#: hairpin.cc:60
+msgid "Asking for broken bound padding at a non-broken bound."
+msgstr "Tentative de décalage d'un fragment de souflet alors qu'il n'est pas rompu."
 
-#: relocate.cc:186
-#, c-format
-msgid "Relocation: is absolute: argv0=%s\n"
-msgstr "Relocalisation absolue : argv0=%s\n"
+#: hairpin.cc:257
+msgid "decrescendo too small"
+msgstr "decrescendo trop petit"
 
-#: relocate.cc:192
-#, c-format
-msgid "Relocation: from cwd: argv0=%s\n"
-msgstr "Relocalisation à partir du répertoire courant : argv0=%s\n"
+#: horizontal-bracket-engraver.cc:61
+msgid "do not have that many brackets"
+msgstr "il ne devrait pas y avoir autant de crochets"
 
-#: relocate.cc:208
-#, c-format
-msgid ""
-"Relocation: from PATH=%s\n"
-"argv0=%s"
-msgstr ""
-"Relocalisation : à partir de PATH=%s\n"
-"argv0=%s"
+#: horizontal-bracket-engraver.cc:70
+msgid "conflicting note group events"
+msgstr "événements de groupe de notes conflictuels"
 
-#: relocate.cc:235
-msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
-msgstr "LILYPONDPREFIX est obsolète, utiliser LILYPOND_DATADIR"
+#: hyphen-engraver.cc:103
+msgid "removing unterminated hyphen"
+msgstr "retrait du trait d'union sans suite"
+
+#: hyphen-engraver.cc:117
+msgid "unterminated hyphen; removing"
+msgstr "trait d'union sans suite ; escamoté"
 
-#: relocate.cc:360
+#: includable-lexer.cc:71 lily-guile.cc:92 lily-parser-scheme.cc:108
 #, c-format
-msgid "Relocation file: %s"
-msgstr "Fichier de relocalisation : %s"
+msgid "cannot find file: `%s'"
+msgstr "fichier non trouvé : « %s »"
 
-#: relocate.cc:364 source-file.cc:65
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
 #, c-format
-msgid "cannot open file: `%s'"
-msgstr "Impossible d'ouvrir le fichier « %s »"
+msgid "(search path: `%s')"
+msgstr "(chemin de recherche : « %s »)"
 
-#: relocate.cc:394
+#: input.cc:138 source-file.cc:180 source-file.cc:195
+msgid "position unknown"
+msgstr "position inconnue"
+
+#: keep-alive-together-engraver.cc:93
 #, c-format
-msgid "Unknown relocation command %s"
-msgstr "Commande de relocalisation inconnue : %s"
+msgid "unknown remove-layer value `%s'"
+msgstr "valeur « %s » de calque à retirer inconnue"
 
-#: note-column.cc:135
-msgid "cannot have note heads and rests together on a stem"
-msgstr "impossible de superposer une note et un silence sur une même hampe"
+#: key-engraver.cc:197
+msgid "Incomplete keyAlterationOrder for key signature"
+msgstr "Propriété keyAlterationOrder incomplète pour cette armure."
 
-#: beam.cc:180
-msgid "removing beam with no stems"
-msgstr "suppression d'une ligature ayant moins de deux hampes"
+#: key-signature-interface.cc:77
+#, c-format
+msgid "No glyph found for alteration: %s"
+msgstr "Pas de glyphe pour l'altération « %s »"
 
-#: staff-performer.cc:257
-msgid "MIDI channel wrapped around"
-msgstr "Bouclage du canal MIDI"
+#: key-signature-interface.cc:87
+msgid "alteration not found"
+msgstr "altération non trouvée"
 
-#: staff-performer.cc:258
-msgid "remapping modulo 16"
-msgstr "réaffectation modulo 16"
+#: ligature-bracket-engraver.cc:71 ligature-engraver.cc:109
+msgid "cannot find start of ligature"
+msgstr "impossible de trouver le début de la ligature"
 
-#: dots.cc:48
-#, c-format
-msgid "dot `%s' not found"
-msgstr "point « %s » introuvable"
+#: ligature-bracket-engraver.cc:84 ligature-engraver.cc:136
+msgid "already have a ligature"
+msgstr "a déjà une ligature"
 
-#: font-config.cc:38
-msgid "Initializing FontConfig..."
-msgstr "Initialisation de FontConfig..."
+#: ligature-engraver.cc:114
+msgid "no right bound"
+msgstr "pas de borne à droite"
 
-#: font-config.cc:53 font-config-scheme.cc:151
-#, c-format
-msgid "failed adding font directory: %s"
-msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
+#: ligature-engraver.cc:145
+msgid "no left bound"
+msgstr "pas de borne à gauche"
 
-#: font-config.cc:55 font-config-scheme.cc:153
-#, c-format
-msgid "Adding font directory: %s"
-msgstr "Ajout d'un répertoire de fontes : « %s »"
+#: ligature-engraver.cc:189
+msgid "unterminated ligature"
+msgstr "ligature non terminée"
 
-#: font-config.cc:58
-msgid "Building font database..."
-msgstr "Construction de la base de donnée des fontes..."
+#: ligature-engraver.cc:216
+msgid "ignoring rest: ligature may not contain rest"
+msgstr "le silence est ignoré : une ligature ne peut contenir de silence"
 
-#: change-iterator.cc:34
-#, c-format
-msgid "cannot change `%s' to `%s'"
-msgstr "impossible de changer « %s » en « %s »"
+#: ligature-engraver.cc:217
+msgid "ligature was started here"
+msgstr "la ligature a débuté ici"
 
-#. FIXME: constant error message.
-#: change-iterator.cc:93
-msgid "cannot find context to switch to"
-msgstr "impossible de repérer le contexte vers lequel commuter"
+#: lily-guile.cc:94
+#, c-format
+msgid "(load path: `%s')"
+msgstr "(chemin de chargement : « %s »)"
 
-#. We could change the current translator's id, but that would make
-#. errors hard to catch.
-#.
-#. last->translator_id_string () = get_change
-#. ()->change_to_id_string ();
-#: change-iterator.cc:102
+#: lily-guile.cc:413
 #, c-format
-msgid "not changing to same context type: %s"
-msgstr "pas de changement vers le même type de contexte : %s"
+msgid "cannot find property type-check for `%s' (%s)."
+msgstr "vérification du type de propriété pour « %s » (%s) non trouvée"
 
-#. FIXME: uncomprehensable message
-#: change-iterator.cc:106
-msgid "none of these in my family"
-msgstr "aucun de ceux-ci dans ma famille"
+#: lily-guile.cc:416
+msgid "perhaps a typing error?"
+msgstr "Probable faute de frappe"
+
+#: lily-guile.cc:423
+msgid "skipping assignment"
+msgstr "affectation ignorée"
 
-#: slur.cc:438
+#: lily-guile.cc:442
 #, c-format
-msgid "Ignoring grob for slur: %s. avoid-slur not set?"
+msgid "type check for `%s' failed; value `%s' must be of type `%s'"
 msgstr ""
-"objet graphique (grob) non concerné par la liaison : %s.\n"
-"avoid-slur non définie ?"
+"la vérification du type de « %s » a échoué ; \n"
+"   la valeur « %s » doit être du type « %s »"
 
-#: source-file.cc:85
-#, c-format
-msgid "expected to read %d characters, got %d"
-msgstr "au lieu de %d caractères à lire, il y en a %d"
+#. Uh oh.  unsmob<T> delivered 0, yet
+#. unsmob<T> delivers true.  This means that unsmob<T> is a
+#. matching check from a base class of T, but var is of an
+#. incompatible derived type.
+#: lily-guile.cc:462
+msgid "Wrong kind of "
+msgstr "Mauvais genre de "
 
-#. find out the ideal number of pages
-#: optimal-page-breaking.cc:62
-msgid "Finding the ideal number of pages..."
-msgstr "Détermination du nombre optimal de pages..."
+#: lily-lexer.cc:251
+msgid "include files are not allowed in safe mode"
+msgstr "l'inclusion de fichiers n'est pas permise en mode sans échec"
 
-#: optimal-page-breaking.cc:85
-msgid "could not satisfy systems-per-page and page-count at the same time, ignoring systems-per-page"
-msgstr "incompatilité entre systems-per-page et page-count ; systems-per-page ignoré"
+#: lily-lexer.cc:278
+#, c-format
+msgid "identifier name is a keyword: `%s'"
+msgstr "Le nom de l'identificateur est un mot clé : « %s »"
 
-#: optimal-page-breaking.cc:105
-msgid "Fitting music on 1 page..."
-msgstr "Répartition de la musique sur une page..."
+#: lily-lexer.cc:301 lily-lexer.cc:314
+#, c-format
+msgid "%s:EOF"
+msgstr "%s:EOF"
 
-#: optimal-page-breaking.cc:107
+#: lily-modules.cc:81
 #, c-format
-msgid "Fitting music on %d pages..."
-msgstr "Répartition de la musique sur %d pages..."
+msgid "Uninitialized variable `%s' in module (%s)"
+msgstr "Variable « %s » dans le module « %s » non initialisée"
 
-#: optimal-page-breaking.cc:109
+#: lily-parser-scheme.cc:80
 #, c-format
-msgid "Fitting music on %d or %d pages..."
-msgstr "Répartition de la musique sur %d à %d pages..."
+msgid "Changing working directory to: `%s'"
+msgstr ""
+"Modification du répertoire de travail pour\n"
+" « %s »"
 
-#: optimal-page-breaking.cc:119 optimal-page-breaking.cc:173
+#: lily-parser-scheme.cc:84
 #, c-format
-msgid "trying %d systems"
-msgstr "tentative pour %d systèmes"
+msgid "unable to change directory to: `%s'"
+msgstr ""
+"impossible d'accéder au répertoire\n"
+" « %s »"
 
-#: optimal-page-breaking.cc:138 optimal-page-breaking.cc:201
+#: lily-parser-scheme.cc:99
 #, c-format
-msgid "best score for this sys-count: %f"
-msgstr "meilleur résultat pour cette configuration « sys-count » : %f"
+msgid "cannot find init file: `%s'"
+msgstr ""
+"impossible de trouver le fichier d'initialisation\n"
+" « %s »"
 
-#: new-dynamic-engraver.cc:168
+#: lily-parser-scheme.cc:117
 #, c-format
-msgid ""
-"unknown crescendo style: %s\n"
-"defaulting to hairpin."
+msgid "Processing `%s'"
+msgstr "Traitement de « %s »"
+
+#: lily-parser-scheme.cc:210
+msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
+msgstr ""
+"ly:parser-parse-string ne peut foncionner qu'avec un nouvel analyseur.\n"
+"Utilisez plutôt ly:parser-include-string"
+
+#: lily-parser-scheme.cc:241
+msgid "ly:parse-string-expression is only valid with a new parser.  Use ly:parser-include-string instead."
 msgstr ""
-"style de crescendo inconnu : %s\n"
-"retour à la valeur par défaut (soufflet)."
+"ly:parse-string-expression ne peut foncionner qu'avec un nouvel analyseur.\n"
+"Utilisez plutôt ly:parser-include-string"
 
-#: new-dynamic-engraver.cc:233
+#: lily-parser.cc:106
+msgid "Parsing..."
+msgstr "Analyse..."
+
+#: lookup.cc:177
 #, c-format
-msgid "unterminated %s"
-msgstr "%s non terminé(e)"
+msgid "Not drawing a box with negative dimension, %.2f by %.2f."
+msgstr "La boîte aux dimensions négatives, %.2f par %.2f, ne sera pas dessinée."
 
-#: hairpin.cc:263
-msgid "decrescendo too small"
-msgstr "decrescendo trop petit"
+#: lyric-combine-music-iterator.cc:204
+msgid "argument of \\lyricsto should contain Lyrics context"
+msgstr "les arguments de \\lyricsto doivent comporter un contexte Lyrics."
 
-#: extender-engraver.cc:169 extender-engraver.cc:178
-msgid "unterminated extender"
-msgstr "prolongation ou extenseur non terminé"
+#: lyric-combine-music-iterator.cc:344
+#, c-format
+msgid "cannot find %s `%s'"
+msgstr "le contexte %s « %s » n'existe pas"
 
-#: main.cc:101
+#: main.cc:106
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -2458,11 +2478,11 @@ msgid ""
 "information.\n"
 msgstr ""
 "Ce logiciel est libre. Il est couvert par la licence GNU General Public\n"
-"License, et vous êtes libre de le modifier et/ou d'en distribuer des copies\n"
+"License, et vous êtes libre de le modifier ou d'en distribuer des copies\n"
 "sous certaines conditions.\n"
-"Invoquez « %s --warranty » pour plus d'informations.\n"
+"Invoquez « %s --warranty » pour plus d'informations.\n"
 
-#: main.cc:107
+#: main.cc:112
 msgid ""
 "    This program is free software; you can redistribute it and/or\n"
 "modify it under the terms of the GNU General Public License as \n"
@@ -2479,25 +2499,25 @@ msgid ""
 "the Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 msgstr ""
-"    Ce logiciel est libre; vous pouvez le redistribuer et/ou le modifier\n"
+"    Ce logiciel est libre ; vous pouvez le redistribuer ou le modifier\n"
 "selon les termes de la licence GNU General Public License version 3\n"
 "tel que publiée par la Free Software Foundation.\n"
 "\n"
 "    Ce logiciel est distribué dans l'espoir qu'il soit utile\n"
-"mais sans AUCUNE GARANTIE sans aucune garantie implicite\n"
-"COMMERCIALE ou pour RÉPONDRE À UN BESOIN PARTICULIER.. Consulter\n"
+"mais sans AUCUNE GARANTIE ; sans aucune garantie implicite\n"
+"COMMERCIALE ou pour RÉPONDRE À UN BESOIN PARTICULIER. Consultez\n"
 "la license GNU General Public License pour plus de détails.\n"
 "\n"
 "    Vous devriez avoir reçu une copie (consulter le fichier COPYING) de la\n"
-"license GNU General Public License accompagnant ce logiciel; si absente,\n"
-" écrire à la Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
+"license GNU General Public License accompagnant ce logiciel ; si absente,\n"
+"écrire à la Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:141
+#: main.cc:150
 msgid "SYM[=VAL]"
 msgstr "SYM[=VAL]"
 
-#: main.cc:142
+#: main.cc:151
 msgid ""
 "set Scheme option SYM to VAL (default: #t).\n"
 "Use -dhelp for help."
@@ -2505,65 +2525,69 @@ msgstr ""
 "affecte VAL (par défaut #t) à l'option Scheme SYM.\n"
 "Utiliser -dhelp pour avoir de l'aide."
 
-#: main.cc:146
+#: main.cc:155
 msgid "EXPR"
 msgstr "EXPR"
 
-#: main.cc:146
+#: main.cc:155
 msgid "evaluate scheme code"
 msgstr "évaluation du code Scheme"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:149
+#: main.cc:158
 msgid "FORMATs"
 msgstr "FORMATs"
 
-#: main.cc:149
+#: main.cc:158
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr ""
-"produire FORMAT,...\n"
-"Aussi comme options séparées :"
+"produire FORMAT...\n"
+"Aussi comme options séparées :"
 
-#: main.cc:150
+#: main.cc:159
 msgid "generate PDF (default)"
 msgstr "générer le PDF (par défaut)"
 
-#: main.cc:151
+#: main.cc:160
 msgid "generate PNG"
 msgstr "générer le PNG"
 
-#: main.cc:152
+#: main.cc:161
 msgid "generate PostScript"
 msgstr "générer le PostScript"
 
-#: main.cc:155
+#: main.cc:162
+msgid "generate big PDF files"
+msgstr "générer de gros fichiers PDF"
+
+#: main.cc:165
 msgid "FIELD"
 msgstr "CHAMP"
 
-#: main.cc:155
+#: main.cc:165
 msgid ""
 "dump header field FIELD to file\n"
 "named BASENAME.FIELD"
 msgstr ""
 "écrire le champ d'entête CHAMP dans le\n"
-"fichier nommé BASENAME.CHAMP"
+"fichier nommé RACINE.CHAMP"
 
-#: main.cc:158
+#: main.cc:168
 msgid "add DIR to search path"
 msgstr "ajouter RÉPERTOIRE au chemin de recherche"
 
-#: main.cc:159
+#: main.cc:169
 msgid "use FILE as init file"
 msgstr ""
 "utiliser FICHIER comme\n"
 "fichier d'initialisation"
 
-#: main.cc:162
+#: main.cc:172
 msgid "USER, GROUP, JAIL, DIR"
-msgstr "USER,GROUP,CAGE,RÉP"
+msgstr "USER, GROUP, CAGE, RÉP"
 
-#: main.cc:162
+#: main.cc:172
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -2571,38 +2595,38 @@ msgstr ""
 "chroot dans CAGE, devenir UTILISATEUR:GROUPE\n"
 "et cd dans RÉPERTOIRE"
 
-#: main.cc:167
+#: main.cc:177
 msgid ""
 "print log messages according to LOGLEVEL.  Possible values are:\n"
 "NONE, ERROR, WARNING, BASIC, PROGRESS, INFO (default) and DEBUG."
 msgstr ""
-"\"affiche les informations selon le niveau de LOGLEVEL :\n"
+"affiche les informations selon le niveau de LOGLEVEL :\n"
 "NONE, ERROR, WARNING, BASIC, PROGRESS, INFO (défaut) ou DEBUG."
 
-#: main.cc:171
+#: main.cc:181
 msgid "write output to FILE (suffix will be added)"
 msgstr ""
 "produire la sortie dans FICHIER \n"
 "(adjonction automatique du suffixe)"
 
-#: main.cc:172
+#: main.cc:182
 msgid "relocate using directory of lilypond program"
 msgstr ""
 "redétermine le chemin d'exécution\n"
 "des composants de LilyPond"
 
-#: main.cc:173
+#: main.cc:183
 msgid "no progress, only error messages (equivalent to loglevel=ERROR)"
 msgstr ""
 "pas de progression, seulement les messages d'erreur\n"
 "(équivalent à loglevel=ERROR)"
 
-#: main.cc:175
+#: main.cc:185
 msgid "be verbose (equivalent to loglevel=DEBUG)"
-msgstr "état verbeux (équivalent to loglevel=DEBUG)"
+msgstr "état verbeux (équivalent à loglevel=DEBUG)"
 
 #. Do not update the copyright years here, run `make grand-replace'
-#: main.cc:242
+#: main.cc:264
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -2612,1291 +2636,1783 @@ msgstr ""
 "%s et autres."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:269
+#: main.cc:302
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
-msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
+msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
 
-#: main.cc:271
+#: main.cc:304
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Composer la musique ou jouer en format MIDI à partir du FICHIER"
 
-#: main.cc:273
+#: main.cc:306
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond produit une jolie notation musicale"
 
-#: main.cc:275
+#: main.cc:308
 #, c-format
 msgid "For more information, see %s"
 msgstr "Pour plus d'informations, voir %s"
 
-#: main.cc:277
+#: main.cc:310
 msgid "Options:"
-msgstr "Options :"
+msgstr "Options :"
 
-#: main.cc:331
+#: main.cc:377
 #, c-format
 msgid "expected %d arguments with jail, found: %u"
 msgstr "une cage requiert %d arguments, il y en a %u"
 
-#: main.cc:345
+#: main.cc:391
 #, c-format
 msgid "no such user: %s"
-msgstr "utilisateur inconnu : « %s »"
+msgstr "utilisateur inconnu : « %s »"
 
-#: main.cc:347
+#: main.cc:393
 #, c-format
 msgid "cannot get user id from user name: %s: %s"
 msgstr ""
-"impossible de repérer l'identifiant utilisateur à partir du nom d'utilisateur :\n"
-"%s : %s"
+"impossible de repérer l'identifiant utilisateur à partir du nom d'utilisateur :\n"
+"%s : %s"
 
-#: main.cc:362
+#: main.cc:408
 #, c-format
 msgid "no such group: %s"
-msgstr "groupe inconnu : %s"
+msgstr "groupe inconnu : %s"
 
-#: main.cc:364
+#: main.cc:410
 #, c-format
 msgid "cannot get group id from group name: %s: %s"
 msgstr ""
-"impossible de repérer l'identifiant groupe à partir du nom de groupe :\n"
-"%s : %s "
+"impossible de repérer l'identifiant groupe à partir du nom de groupe :\n"
+"%s : %s "
 
-#: main.cc:372
+#: main.cc:418
 #, c-format
 msgid "cannot chroot to: %s: %s"
-msgstr "impossible de chrooter vers : %s : %s"
+msgstr "impossible de chrooter vers : %s : %s"
 
-#: main.cc:379
+#: main.cc:425
 #, c-format
 msgid "cannot change group id to: %d: %s"
-msgstr "impossible de changer l'identifiant de groupe en %d : %s"
+msgstr "impossible de changer l'identifiant de groupe en %d : %s"
 
-#: main.cc:385
+#: main.cc:431
 #, c-format
 msgid "cannot change user id to: %d: %s"
-msgstr "impossible de changer l'identifiant utilisateur en %d : %s"
+msgstr "impossible de changer l'identifiant utilisateur en %d : %s"
 
-#: main.cc:391
+#: main.cc:437
 #, c-format
 msgid "cannot change working directory to: %s: %s"
-msgstr "impossible de changer le répertoire de travail en %s : %s"
+msgstr "impossible de changer le répertoire de travail en %s : %s"
 
-#: main.cc:639
+#: main.cc:826
 #, c-format
 msgid "exception caught: %s"
-msgstr "exception capturée : %s"
+msgstr "exception capturée : %s"
+
+#. FIXME: constant error message.
+#: mark-engraver.cc:149
+msgid "rehearsalMark must have integer value"
+msgstr "rehearsalMark doit être un entier"
+
+#: mark-engraver.cc:155
+msgid "mark label must be a markup object"
+msgstr "les étiquettes de marque doivent être des objets de type « markup »."
+
+#: mensural-ligature-engraver.cc:93
+msgid "ligature with less than 2 heads -> skipping"
+msgstr "ligature avec moins de 2 têtes -> escamotage"
+
+#: mensural-ligature-engraver.cc:120
+msgid "cannot determine pitch of ligature primitive -> skipping"
+msgstr "impossible de déterminer la hauteur de la primitive de ligature -> escamotage"
+
+#: mensural-ligature-engraver.cc:134
+msgid "single note ligature - skipping"
+msgstr "ligature sur note unique -> escamotage"
+
+#: mensural-ligature-engraver.cc:145
+msgid "prime interval within ligature -> skipping"
+msgstr "intervale de prime dans la ligature -> escamotage"
+
+#: mensural-ligature-engraver.cc:156
+msgid "mensural ligature: duration none of Mx, L, B, S -> skipping"
+msgstr "ligature mensurale : aucune durée parmi Mx, L, B, S -> escamotage"
+
+#: mensural-ligature-engraver.cc:199
+msgid "semibrevis must be followed by another one -> skipping"
+msgstr "une ronde doit être suivie d'une autre -> escamotage"
+
+#: mensural-ligature-engraver.cc:209
+msgid ""
+"semibreves can only appear at the beginning of a ligature,\n"
+"and there may be only zero or two of them"
+msgstr ""
+"les rondes ne peuvent apparaître qu'en début de ligature,\n"
+"et il ne peut y en avoir que zéro ou deux"
+
+#: mensural-ligature-engraver.cc:229
+msgid ""
+"invalid ligatura ending:\n"
+"when the last note is a descending brevis,\n"
+"the penultimate note must be another one,\n"
+"or the ligatura must be LB or SSB"
+msgstr ""
+"terminaison de ligature invalide :\n"
+"lorsque la dernière note est une brève descendante,\n"
+"l'avant dernière note doit en être une autre,\n"
+"sinon la ligature doit être LB ou SSB"
+
+#: mensural-ligature-engraver.cc:389
+msgid "unexpected case fall-through"
+msgstr "cas inattendu et non interprétable"
+
+#: midi-cc-announcer.cc:99
+#, c-format
+msgid "ignoring out-of-range value change for MIDI property `%s'"
+msgstr "propriété MIDI « %s » : modification de valeur hors limite donc ignorée"
+
+#: midi-item.cc:91
+#, c-format
+msgid "no such MIDI instrument: `%s'"
+msgstr "instrument MIDI non répertorié : « %s »"
+
+#: midi-item.cc:177
+msgid "Time signature with more than 255 beats.  Truncating"
+msgstr "Métrique comportant plus de 255 pulsations ; on limite."
+
+#: midi-stream.cc:38
+#, c-format
+msgid "cannot open for write: %s: %s"
+msgstr ""
+"impossible d'ouvrir le fichier en écriture : %s :\n"
+"  %s"
+
+#: midi-stream.cc:54
+#, c-format
+msgid "cannot write to file: `%s'"
+msgstr "impossible d'écrire dans le fichier « %s »"
+
+#. LINE BREAKING
+#: minimal-page-breaking.cc:40 one-page-breaking.cc:72 paper-score.cc:116
+msgid "Calculating line breaks..."
+msgstr "Calcul des sauts de ligne..."
+
+#: minimal-page-breaking.cc:44
+msgid "Calculating page breaks..."
+msgstr "Calcul des sauts de page..."
+
+#: multi-measure-rest.cc:152
+msgid "usable-duration-logs must be a non-empty list.  Falling back to whole rests."
+msgstr ""
+"usable-duration-logs ne peut être constitué d'une liste vide.\n"
+"Retour à des pauses."
+
+#: music.cc:154
+#, c-format
+msgid "octave check failed; expected \"%s\", found: \"%s\""
+msgstr ""
+"Échec de vérification d'octave.\n"
+"Aurait dû être \"%s\", \"%s\" obtenu"
+
+#: new-fingering-engraver.cc:113
+msgid "cannot add text scripts to individual note heads"
+msgstr "impossible d'ajouter du texte à des têtes de note individuelles"
+
+#: new-fingering-engraver.cc:267
+msgid "no placement found for fingerings"
+msgstr "nulle part où positionner des doigtés"
+
+#: new-fingering-engraver.cc:268
+msgid "placing below"
+msgstr "on les place en dessous"
+
+#: note-collision.cc:512
+msgid "this Voice needs a \\voiceXx or \\shiftXx setting"
+msgstr "ce contexte de voix rrequiert un réglage \\voiceXx ou \\shiftXx"
+
+#: note-column.cc:150
+msgid "cannot have note heads and rests together on a stem"
+msgstr "impossible de superposer une note et un silence sur une même hampe"
+
+#: note-head.cc:95
+#, c-format
+msgid "none of note heads `%s' or `%s' found"
+msgstr "tête de note « %s » ou « %s » non trouvée"
+
+#: note-heads-engraver.cc:75
+msgid "NoteEvent without pitch"
+msgstr "NoteEvent sans hauteur"
+
+#. PAGE BREAKING
+#: one-page-breaking.cc:78 optimal-page-breaking.cc:114
+msgid "Fitting music on 1 page..."
+msgstr "Répartition de la musique sur une page..."
+
+#: open-type-font-scheme.cc:149 open-type-font-scheme.cc:195
+#: open-type-font-scheme.cc:241 pfb-scheme.cc:60 ttf.cc:512 ttf.cc:561
+msgid "font index must be non-negative, using index 0"
+msgstr "l'index de fonte ne peut être négatif ; réindexé sur 0"
+
+#: open-type-font-scheme.cc:163 open-type-font-scheme.cc:209
+#: open-type-font-scheme.cc:289 pfb-scheme.cc:75 ttf.cc:480 ttf.cc:528
+#, c-format
+msgid "font index %d too large for font `%s', using index 0"
+msgstr ""
+"index %d trop grand pour la fonte « %s » ;\n"
+"réindexé sur 0"
+
+#: open-type-font-scheme.cc:251
+#, c-format
+msgid "cannot open font filename `%s'"
+msgstr "Impossible d'ouvrir le fichier de fonte « %s »"
+
+#: open-type-font-scheme.cc:261 open-type-font-scheme.cc:277
+#: open-type-font-scheme.cc:300 open-type-font-scheme.cc:320
+#: open-type-font-scheme.cc:338 open-type-font-scheme.cc:354
+#, c-format
+msgid "cannot read %s of `%s'"
+msgstr "%s non trouvé dans « %s »"
+
+#: open-type-font-scheme.cc:376
+#, c-format
+msgid "font `%s' index %d does not have `CFF' table"
+msgstr "la fonte « %s » index %d ne contient pas de table CFF"
+
+#: open-type-font.cc:54
+#, c-format
+msgid "cannot allocate %lu bytes"
+msgstr "impossible d'allouer %lu octets"
+
+#: open-type-font.cc:58
+#, c-format
+msgid "cannot load font table: %s"
+msgstr "impossible de charger la table des fontes : %s"
+
+#: open-type-font.cc:63
+#, c-format
+msgid "FreeType error: %s"
+msgstr "Erreur FreeType : %s"
+
+#: open-type-font.cc:124
+#, c-format
+msgid "unsupported font format: %s"
+msgstr "format de police non supporté : %s"
+
+#: open-type-font.cc:126
+#, c-format
+msgid "error reading font file %s: %s"
+msgstr "erreur de lecture du fichier de fontes %s : %s"
+
+#: open-type-font.cc:141
+msgid "cannot get postscript name"
+msgstr "nom postscript introuvable"
+
+#: open-type-font.cc:153
+#, c-format
+msgid "cannot get font %s format"
+msgstr "impossible de déterminer le format de la fonte « %s »"
+
+#: open-type-font.cc:176
+#, c-format
+msgid "cannot read CFF %s: %s"
+msgstr "impossible de lire le CFF de %s : %s"
+
+#. FreeType 2.6 and 2.6.1 cannot get PS name from pure-CFF.
+#. (FreeType 2.5.5 and earlier does not have this issue.
+#. FreeType 2.6.2+ has this bug fixed.)
+#. So we need direct parsing of the 'CFF' table, in this case.
+#: open-type-font.cc:193
+#, c-format
+msgid "Directly parsing 'CFF' table of font %s."
+msgstr "Analyse en direct de la table CFF de la fonte %s."
+
+#: open-type-font.cc:232
+#, c-format
+msgid "cannot get font %s CFF name"
+msgstr "nom CFF de la fonte « %s » introuvable"
+
+#: open-type-font.cc:237
+#, c-format
+msgid "Replace font name from %s to %s."
+msgstr "Remplace le nom de la font %s par %s."
+
+#: open-type-font.cc:321
+#, c-format
+msgid "FT_Get_Glyph_Name () Freetype error: %s"
+msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
+
+#: open-type-font.cc:469 pango-font.cc:261
+#, c-format
+msgid "FT_Get_Glyph_Name () error: %s"
+msgstr "Erreur FT_Get_Glyph_Name () : %s"
+
+#. find out the ideal number of pages
+#: optimal-page-breaking.cc:62
+msgid "Finding the ideal number of pages..."
+msgstr "Détermination du nombre optimal de pages..."
+
+#: optimal-page-breaking.cc:94
+msgid "could not satisfy systems-per-page and page-count at the same time, ignoring systems-per-page"
+msgstr "incompatilité entre systems-per-page et page-count ; systems-per-page ignoré"
+
+#: optimal-page-breaking.cc:116
+#, c-format
+msgid "Fitting music on %d pages..."
+msgstr "Répartition de la musique sur %d pages..."
+
+#: optimal-page-breaking.cc:118
+#, c-format
+msgid "Fitting music on %d or %d pages..."
+msgstr "Répartition de la musique sur %d à %d pages..."
+
+#: optimal-page-breaking.cc:128 optimal-page-breaking.cc:181
+#, c-format
+msgid "trying %d systems"
+msgstr "tentative pour %d systèmes"
+
+#: optimal-page-breaking.cc:147 optimal-page-breaking.cc:209
+#, c-format
+msgid "best score for this sys-count: %f"
+msgstr "meilleur résultat pour cette configuration « sys-count » : %f"
+
+#: optimal-page-breaking.cc:216 page-turn-page-breaking.cc:249
+#: paper-score.cc:156
+msgid "Drawing systems..."
+msgstr "Dessin des systèmes..."
+
+#: output-def.cc:229
+msgid "margins do not fit with line-width, setting default values"
+msgstr ""
+"les marges ne sont pas en cohérence avec la longueur de ligne ;\n"
+"retour aux valeurs par défaut"
+
+#: output-def.cc:236
+msgid "systems run off the page due to improper paper settings, setting default values"
+msgstr ""
+"les systèmes débordent de la page en raison de réglages de papier erronés ;\n"
+"retour aux valeurs par défaut"
+
+#: page-breaking.cc:276
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
+msgstr ""
+"systems-per-page non défini :\n"
+"  min-systems-per-page et max-systems-per-page ignorés"
+
+#: page-breaking.cc:281
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
+msgstr ""
+"min-systems-per-page supérieur à max-systems-per-page :\n"
+"  tous deux seront ignorés"
+
+#: page-breaking.cc:636
+#, c-format
+msgid "page %d has been compressed"
+msgstr "la page %d a été comprimée"
+
+#: page-layout-problem.cc:400
+msgid "A page layout problem has been initiated that cannot accommodate footnotes."
+msgstr "Un défaut de mise en page perturbe la gestion des notes de bas de page."
 
-#: page-turn-page-breaking.cc:168
+#: page-layout-problem.cc:729
+msgid "ragged-bottom was specified, but page must be compressed"
+msgstr "ragged-bottom spécifié, mais la page doit être comprimée"
+
+#: page-layout-problem.cc:732
+#, c-format
+msgid "compressing over-full page by %.1f staff-spaces"
+msgstr "compression du débordement de page de %.1f espace de portée"
+
+#: page-layout-problem.cc:1197
+msgid "staff-affinities should only decrease"
+msgstr "staff-affinities devraient aller en ordre décroissant"
+
+#: page-turn-page-breaking.cc:169
 #, c-format
 msgid "page-turn-page-breaking: breaking from %d to %d"
 msgstr ""
-"Saut de page et tourne (page-turn-page-breaking) :\n"
+"Saut de page et tourne (page-turn-page-breaking) :\n"
 "coupure entre %d et %d"
 
-#: page-turn-page-breaking.cc:217
+#: page-turn-page-breaking.cc:218
 msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
 msgstr ""
 "Impossible de cadrer sur une seule page ce qui précède la première tourne.\n"
 "Envisagez de définir un numéro pair pour first-page-number."
 
-#: page-turn-page-breaking.cc:230
+#: page-turn-page-breaking.cc:231
 #, c-format
 msgid "Calculating page and line breaks (%d possible page breaks)..."
 msgstr "Calcul des sauts de page et de ligne (%d sauts de pages possibles)..."
 
-#: page-turn-page-breaking.cc:300
+#: page-turn-page-breaking.cc:301
 #, c-format
 msgid "break starting at page %d"
 msgstr "saut intervenant à la page %d"
 
-#: page-turn-page-breaking.cc:301
+#: page-turn-page-breaking.cc:302
 #, c-format
 msgid "\tdemerits: %f"
-msgstr "        démérites : %f"
+msgstr "        démérites : %f"
 
-#: page-turn-page-breaking.cc:302
+#: page-turn-page-breaking.cc:303
 #, c-format
 msgid "\tsystem count: %d"
-msgstr "        nombre de systèmes : %d"
+msgstr "        nombre de systèmes : %d"
 
-#: page-turn-page-breaking.cc:303
+#: page-turn-page-breaking.cc:304
 #, c-format
 msgid "\tpage count: %d"
-msgstr "        nombre de pages : %d"
+msgstr "        nombre de pages : %d"
 
-#: page-turn-page-breaking.cc:304
+#: page-turn-page-breaking.cc:305
 #, c-format
 msgid "\tprevious break: %d"
-msgstr "        coupure précédente : %d"
+msgstr "        coupure précédente : %d"
 
-#: key-signature-interface.cc:77
+#: pango-font.cc:250
 #, c-format
-msgid "No glyph found for alteration: %s"
-msgstr "Pas de glyphe pour l'altération « %s »"
+msgid "no glyph for character U+%0X in font `%s'"
+msgstr "aucun glyphe ne correspond au caractère U+%0X dans la fonte « %s »"
 
-#: key-signature-interface.cc:87
-msgid "alteration not found"
-msgstr "altération non trouvée"
-
-#: music.cc:150
+#: pango-font.cc:277
 #, c-format
-msgid "octave check failed; expected \"%s\", found: \"%s\""
+msgid ""
+"Glyph has no name, but font supports glyph naming.\n"
+"Skipping glyph U+%0X, file %s"
 msgstr ""
-"Échec de vérification d'octave.\n"
-"Aurait dû être \"%s\", \"%s\" obtenu"
+"Le glyphe n'a pas de nom alors que la fonte prend en charge leur nommage.\n"
+"Glyphe U+%0X ignoré dans le fichier « %s »"
+
+#: pango-font.cc:327
+#, c-format
+msgid "no PostScript font name for font `%s'"
+msgstr "« %s » n'est pas un fichier de fonte PostScript"
 
-#: music.cc:219
-msgid "(normalized pitch)"
-msgstr "(hauteur normalisée)"
+#: pango-font.cc:377
+msgid "FreeType face has no PostScript font name"
+msgstr "Caractère FreeType sans nom de police PostScript"
 
-#: music.cc:223
+#: paper-book.cc:200
 #, c-format
-msgid "Transposing %s by %s makes alteration larger than double"
-msgstr "La transposition de %s à %s crée des altérations supérieures aux doubles"
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "l'option -dprint-pages n'est pas opérationnelle avec le moteur %s"
 
-#: vaticana-ligature.cc:95
-msgid "flexa-height undefined; assuming 0"
-msgstr "Vaticana_ligature : décalage en X indéfini ; ramené à 0"
+#: paper-book.cc:219
+#, c-format
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "l'option -dpreview n'est pas opérationnelle avec le moteur %s"
 
-#: vaticana-ligature.cc:100
-msgid "ascending vaticana style flexa"
-msgstr "flexe de style vaticana ascendant"
+#: paper-column-engraver.cc:273
+msgid "forced break was overridden by some other event, should you be using bar checks?"
+msgstr ""
+"Un saut explicite a été outrepassé par un autre événement.\n"
+"Positionnez quelques contrôles de mesure (bar check) pour vérifier."
 
-#: translator.cc:356
+#: paper-outputter-scheme.cc:41
 #, c-format
-msgid "Two simultaneous %s events, junking this one"
-msgstr "Deux événements %s simultanés, rejet de celui-ci"
+msgid "Layout output to `%s'..."
+msgstr "Sortie mise en page vers « %s »..."
 
-#: translator.cc:357
+#: paper-score.cc:128
 #, c-format
-msgid "Previous %s event here"
-msgstr "Événement %s précédent ici"
+msgid "Element count %d (spanners %d) "
+msgstr "%d éléments dénombrés (%d extensions)"
 
-#: lily-guile.cc:93
-#, c-format
-msgid "(load path: `%s')"
-msgstr "(chemin de chargement : « %s »)"
+#: paper-score.cc:132
+msgid "Preprocessing graphical objects..."
+msgstr "Pré-traitement des éléments graphiques..."
 
-#: lily-guile.cc:416
+#: parse-scm.cc:124
+msgid "GUILE signaled an error for the expression beginning here"
+msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
+
+#: pdf-scheme.cc:65
 #, c-format
-msgid "cannot find property type-check for `%s' (%s)."
-msgstr "vérification du type de propriété pour « %s » (%s) non trouvée"
+msgid "Conversion of string `%s' to UTF-16be failed: %s"
+msgstr ""
+"La conversion de la chaîne « %s » en UTF-16be a échoué :\n"
+"  %s"
 
-#: lily-guile.cc:419
-msgid "perhaps a typing error?"
-msgstr "Probable faute de frappe"
+#: percent-repeat-engraver.cc:147
+msgid "unterminated percent repeat"
+msgstr "répétition en pourcent non terminée"
 
-#: lily-guile.cc:426
-msgid "doing assignment anyway"
-msgstr "affectation faite malgré tout"
+#: performance.cc:76
+msgid "Track..."
+msgstr "Piste..."
 
-#: lily-guile.cc:438
+#: performance.cc:126
 #, c-format
-msgid "type check for `%s' failed; value `%s' must be of type `%s'"
-msgstr ""
-"la vérification du type de « %s » a échoué ; \n"
-"   la valeur « %s » doit être du type « %s »"
+msgid "MIDI output to `%s'..."
+msgstr "Sortie MIDI vers « %s »..."
 
-#: text-spanner-engraver.cc:72
-msgid "cannot find start of text spanner"
-msgstr "impossible de repérer le point de départ de l'extension de texte"
+#: pfb.cc:45
+msgid "Segment header of the Type 1 (PFB) font is broken."
+msgstr "Entête de segment de la fonte Type 1 (PFB) tronqué."
 
-#: text-spanner-engraver.cc:85
-msgid "already have a text spanner"
-msgstr "a déjà une extension de texte"
+#: pfb.cc:59
+msgid "Segment length of the Type 1 (PFB) font is too long."
+msgstr "Taille de segment de la fonte Type 1 (PFB) trop long."
 
-#: text-spanner-engraver.cc:130
-msgid "unterminated text spanner"
-msgstr "extension de texte non terminée"
+#: pfb.cc:86
+msgid "Segment type of the Type 1 (PFB) font is unknown."
+msgstr "Type de segment de la fonte Type 1 (PFB) inconnu."
 
-#: clef.cc:65
+#: piano-pedal-engraver.cc:276
 #, c-format
-msgid "clef `%s' not found"
-msgstr "clé « %s » introuvable"
+msgid "expect 3 strings for piano pedals, found: %ld"
+msgstr "Les pédales de piano nécessitent trois cordes. Il y en a %ld"
 
-#: beam-engraver.cc:147
-msgid "already have a beam"
-msgstr "ligature déjà présente"
+#: piano-pedal-engraver.cc:291 piano-pedal-engraver.cc:302
+#: piano-pedal-performer.cc:104
+#, c-format
+msgid "cannot find start of piano pedal: `%s'"
+msgstr "début de la pédale de piano indéterminé : « %s »"
 
-#: beam-engraver.cc:230
-msgid "unterminated beam"
-msgstr "ligature non terminée"
+#: piano-pedal-engraver.cc:337
+#, c-format
+msgid "cannot find start of piano pedal bracket: `%s'"
+msgstr "début du crochet de la pédale de piano indéterminé : « %s »"
 
-#: beam-engraver.cc:266 chord-tremolo-engraver.cc:149
-msgid "stem must have Rhythmic structure"
-msgstr "la hampe doit avoir une structure Rythmic"
+#: program-option-scheme.cc:223
+#, c-format
+msgid "no such internal option: %s"
+msgstr "option interne inconnue : %s"
 
-#: beam-engraver.cc:277
-msgid "stem does not fit in beam"
-msgstr "la hampe ne s'insère pas dans la ligature"
+#: property-iterator.cc:66
+#, c-format
+msgid "not a grob name, `%s'"
+msgstr "« %s » n'est pas un nom d'objet graphique (grob)"
 
-#: beam-engraver.cc:278
-msgid "beam was started here"
-msgstr "la ligature a débuté ici"
+#: relative-octave-check.cc:49
+msgid "Failed octave check, got: "
+msgstr "échec de la vérification d'octave, a obtenu : "
 
-#.
-#. Todo: should make typecheck?
-#.
-#. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
-#.
-#: time-signature-engraver.cc:75
+#: relocate.cc:56
 #, c-format
-msgid "strange time signature found: %d/%d"
-msgstr "Chiffrage de mesure inhabituel : %d/%d"
+msgid "Setting %s to %s"
+msgstr "%s fixé à %s"
 
-#: paper-column-engraver.cc:261
-msgid "forced break was overridden by some other event, should you be using bar checks?"
-msgstr ""
-"Un saut explicite a été outrepassé par un autre événement.\n"
-"Positionnez quelques contrôles de mesure (bar check) pour vérifier."
+#. this warning should only be printed in debug mode!
+#: relocate.cc:77
+#, c-format
+msgid "no such file: %s for %s"
+msgstr "fichier inexistant : %s pour %s"
 
-#: lily-parser-scheme.cc:80
+#. this warning should only be printed in debug mode!
+#. this warning should only be printed in debug mode
+#: relocate.cc:88 relocate.cc:106
 #, c-format
-msgid "Changing working directory to: `%s'"
-msgstr ""
-"Modification du répertoire de travail pour\n"
-" « %s »"
+msgid "no such directory: %s for %s"
+msgstr "répertoire inexistant : %s pour %s"
 
-#: lily-parser-scheme.cc:84
+#: relocate.cc:97
 #, c-format
-msgid "unable to change directory to: `%s'"
-msgstr ""
-"impossible d'accéder au répertoire\n"
-" « %s »"
+msgid "%s=%s (prepend)\n"
+msgstr "%s=%s (ajout)\n"
 
-#: lily-parser-scheme.cc:99
+#: relocate.cc:124
 #, c-format
-msgid "cannot find init file: `%s'"
-msgstr "impossible de trouver le fichier d'initialisation « %s »"
+msgid "not relocating, no %s/ or current/ found under %s"
+msgstr "relocalisation non effectuée, ni %s/ ni courant/ n'existent sous %s"
 
-#: lily-parser-scheme.cc:117
+#: relocate.cc:134
 #, c-format
-msgid "Processing `%s'"
-msgstr "Traitement de « %s »"
+msgid "Relocation: compile datadir=%s, new datadir=%s"
+msgstr "Relocalisation : datadir de compilation = %s, nouveau datadir = %s"
 
-#: lily-parser-scheme.cc:208
-msgid "ly:parser-parse-string is only valid with a new parser.  Use ly:parser-include-string instead."
-msgstr ""
-"ly:parser-parse-string ne peut foncionner qu'avec un nouvel analyseur.\n"
-"Utilisez plutôt ly:parser-include-string"
+#: relocate.cc:146
+#, c-format
+msgid "Relocation: framework_prefix=%s"
+msgstr "Relocalisation : framework_prefix = %s"
 
-#: lily-parser-scheme.cc:239
-msgid "ly:parse-string-expression is only valid with a new parser.  Use ly:parser-include-string instead."
-msgstr ""
-"ly:parse-string-expression ne peut foncionner qu'avec un nouvel analyseur.\n"
-"Utilisez plutôt ly:parser-include-string"
+#: relocate.cc:172
+#, c-format
+msgid "Relocation: is absolute: argv0=%s\n"
+msgstr "Relocalisation absolue : argv0=%s\n"
 
-#: font-config-scheme.cc:167
+#: relocate.cc:178
 #, c-format
-msgid "failed adding font file: %s"
-msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
+msgid "Relocation : from cwd: argv0=%s\n"
+msgstr "Relocalisation à partir du répertoire courant : argv0=%s\n"
 
-#: font-config-scheme.cc:169
+#: relocate.cc:196
 #, c-format
-msgid "Adding font file: %s"
-msgstr "Ajout d'un fichier de fontes : « %s »"
+msgid ""
+"Relocation: from PATH=%s\n"
+"argv0=%s\n"
+msgstr ""
+"Relocalisation : à partir de PATH=%s\n"
+"argv0=%s\n"
+
+#: relocate.cc:222
+msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
+msgstr "LILYPONDPREFIX est obsolète, utiliser LILYPOND_DATADIR"
 
-#: custos.cc:88
+#: relocate.cc:347
 #, c-format
-msgid "custos `%s' not found"
-msgstr "custode « %s » introuvable"
+msgid "Relocation file: %s"
+msgstr "Fichier de relocalisation : %s"
 
-#: accidental-engraver.cc:179
+#: relocate.cc:351 source-file.cc:65
 #, c-format
-msgid "accidental typesetting list must begin with context-name: %s"
-msgstr ""
-"La saisie d'une liste d'altérations accidentelles doit débuter\n"
-"par un nom de contexte : %s"
+msgid "cannot open file: `%s'"
+msgstr "Impossible d'ouvrir le fichier « %s »"
 
-#: accidental-engraver.cc:209
+#: relocate.cc:381
 #, c-format
-msgid "procedure or context-name expected for accidental rule, found %s"
-msgstr ""
-"procédure ou nom de contexte requis pour la règle d'altération accidentelle,\n"
-"%s trouvé"
+msgid "Unknown relocation command %s"
+msgstr "Commande de relocalisation inconnue : %s"
 
-#: rest-collision.cc:146
+#: rest-collision.cc:154
 msgid "cannot resolve rest collision: rest direction not set"
-msgstr "collision de silences insoluble : positionnement du silence indéterminée"
+msgstr "collision de silences insoluble : positionnement du silence indéterminée"
 
-#: rest-collision.cc:160 rest-collision.cc:276
+#: rest-collision.cc:165 rest-collision.cc:274
 msgid "too many colliding rests"
 msgstr "trop de silences se chevauchent"
 
-#: pango-font.cc:205
+#: rest.cc:239
 #, c-format
-msgid ""
-"Glyph has no name, but font supports glyph naming.\n"
-"Skipping glyph U+%0X, file %s"
-msgstr ""
-"Le glyphe n'a pas de nom alors que la fonte prend en charge leur nommage.\n"
-"Glyphe U+%0X ignoré dans le fichier %s"
+msgid "rest `%s' not found"
+msgstr "silence « %s » inconnu"
 
-#: pango-font.cc:242
+#: score-engraver.cc:79
 #, c-format
-msgid "no PostScript font name for font `%s'"
-msgstr "« %s » n'est pas un fichier de fonte PostScript"
+msgid "cannot find `%s'"
+msgstr "impossible de trouver « %s »"
 
-#: pango-font.cc:291
-msgid "FreeType face has no PostScript font name"
-msgstr "Caractère FreeType sans nom de police PostScript"
+#: score-engraver.cc:81
+msgid "Music font has not been installed properly."
+msgstr "Les fontes musicales n'ont pas été installées correctement."
 
-#: lyric-engraver.cc:186
-msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
-msgstr "Syllabe sans note de rattachement. Utiliser \\lyricsto ou associatedVoice."
+#: score-engraver.cc:83
+#, c-format
+msgid "Search path `%s'"
+msgstr "Chemin de recherche : « %s »"
 
-#: page-breaking.cc:277
-msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
-msgstr ""
-"systems-per-page non défini :\n"
-"  min-systems-per-page et max-systems-per-page ignorés"
+#: score-engraver.cc:85
+msgid "Aborting"
+msgstr "Abandon"
 
-#: page-breaking.cc:282
-msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
-msgstr ""
-"min-systems-per-page supérieur à max-systems-per-page :\n"
-"  tous deux seront ignorés"
+#: score.cc:161
+msgid "already have music in score"
+msgstr "il y a déjà de la musique dans la partition"
 
-#: paper-outputter-scheme.cc:41
-#, c-format
-msgid "Layout output to `%s'..."
-msgstr "Sortie mise en page vers « %s »..."
+#: score.cc:163
+msgid "this is the previous music"
+msgstr "voici la musique précédente"
 
-#: gregorian-ligature-engraver.cc:70
-#, c-format
-msgid "\\%s ignored"
-msgstr "\\%s ignoré(e)"
+#: score.cc:169
+msgid "errors found, ignoring music expression"
+msgstr "suite à des erreurs répétées, l'expression musicale sera ignorée"
 
-#: gregorian-ligature-engraver.cc:75
-#, c-format
-msgid "implied \\%s added"
-msgstr "\\%s implicite ajouté(e)"
+#. FIXME:
+#: script-engraver.cc:114
+msgid "do not know how to interpret articulation:"
+msgstr "ne sait comment interpréter l'articulation"
 
-#. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:224
-msgid "cannot apply `\\~' on first head of ligature"
-msgstr "Impossible d'appliquer « \\~ » à la première tête de ligature"
+#: script-engraver.cc:115
+msgid " scheme encoding: "
+msgstr "encodage Scheme : "
 
-#. (pitch == prev_pitch)
-#: gregorian-ligature-engraver.cc:236
-msgid "cannot apply `\\~' on heads with identical pitch"
-msgstr "Impossible d'appliquer « \\~ » à des têtes ayant la même hauteur"
+#: skyline-pair.cc:135
+msgid "direction must not be CENTER in ly:skyline-pair::skyline"
+msgstr "direction ne saurait être CENTER pour ly:skyline-pair::skyline"
 
-#: chord-tremolo-engraver.cc:88
-msgid "No tremolo to end"
-msgstr "Aucun trémolo à terminer"
+#: slur-engraver.cc:121
+#, c-format
+msgid "direction of %s invalid: %d"
+msgstr "l'orientation de %s n'est pas valide : %d"
 
-#: chord-tremolo-engraver.cc:109
-msgid "unterminated chord tremolo"
-msgstr "accord en tremolo non terminé"
+#. We already have an old slur, so give a warning
+#. and completely ignore the new slur.
+#: slur-engraver.cc:238
+#, c-format
+msgid "already have %s"
+msgstr "%s déjà en place"
 
-#: general-scheme.cc:390
+#: slur-engraver.cc:255
 #, c-format
-msgid "failed redirecting stderr to `%s'"
-msgstr "échec lors de la redirection de stderr vers « %s »"
+msgid "%s without a cause"
+msgstr "%s san origine"
 
-#: general-scheme.cc:469
-msgid "Found infinity or nan in output. Substituting 0.0"
-msgstr ""
-"La sortie contient l'infini ou une valeur non numérique.\n"
-"Substitution par 0.0"
+#: slur-engraver.cc:320
+#, c-format
+msgid "cannot end %s"
+msgstr "impossible de terminer %s"
 
-#: system.cc:200
+#: slur.cc:431
 #, c-format
-msgid "Element count %d"
-msgstr "%d éléments dénombrés."
+msgid "Ignoring grob for slur: %s.  avoid-slur not set?"
+msgstr ""
+"objet graphique (grob) non concerné par la liaison : %s.\n"
+"avoid-slur non définie ?"
 
-#: system.cc:466
+#: source-file.cc:85
 #, c-format
-msgid "Grob count %d"
-msgstr "%d objet graphiques (grob) dénombrés"
+msgid "expected to read %d characters, got %d"
+msgstr "au lieu de %d caractères à lire, il y en a %d"
 
-#: axis-group-engraver.cc:94
-msgid "Axis_group_engraver: vertical group already has a parent"
-msgstr "Axis_group_engraver : le groupe vertical a déjà un parent"
+#: staff-performer.cc:273
+msgid "MIDI channel wrapped around"
+msgstr "Bouclage du canal MIDI"
 
-#: axis-group-engraver.cc:95
-msgid "are there two Axis_group_engravers?"
-msgstr "Axis_group_engraver redondant"
+#: staff-performer.cc:274
+msgid "remapping modulo 16"
+msgstr "réaffectation modulo 16"
 
-#: axis-group-engraver.cc:96
-msgid "removing this vertical group"
-msgstr "retrait de ce groupe vertical"
+#: stem-engraver.cc:100
+msgid "tremolo duration is too long"
+msgstr "durée du tremolo trop longue"
 
-#: cluster.cc:120
+#: stem-engraver.cc:152
 #, c-format
-msgid "unknown cluster style `%s'"
-msgstr "style de cluster inconnu : « %s »"
-
-#: cluster.cc:157
-msgid "junking empty cluster"
-msgstr "mise au rebut d'un cluster vide"
+msgid "adding note head to incompatible stem (type = %d/%d)"
+msgstr "Ajout d'une tête de note à une hampe incompatible (type = %d/%d)"
 
-#: grob-property.cc:35
-#, c-format
-msgid "%d: %s"
-msgstr "%d : %s"
+#: stem-engraver.cc:155
+msgid "maybe input should specify polyphonic voices"
+msgstr "la source devrait spécifier des voix polyphoniques"
 
-#: rest-collision-engraver.cc:70
-msgid "rhythmic head is not part of a rhythmic column"
-msgstr "tête rythmique non rattachée à un empilement rythmique"
+#: stem.cc:128
+msgid "weird stem size, check for narrow beams"
+msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
 
-#: axis-group-interface.cc:670
-msgid "an outside-staff object should have a direction, defaulting to up"
-msgstr ""
-"un objet externe à la portée devrait avoir un positionnement.\n"
-"  Placé par défaut au-dessus."
+#: system.cc:195
+#, c-format
+msgid "Element count %d"
+msgstr "%d éléments dénombrés."
 
-#: coherent-ligature-engraver.cc:110
+#: system.cc:506
 #, c-format
-msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
-msgstr "Coherent_ligature_engraver : initialise `spacing-increment=0.01': ptr=%ul"
+msgid "Grob count %d"
+msgstr "%d objet graphiques (grob) dénombrés."
 
-#. We are completely screwed.
-#: beam-quanting.cc:853
-msgid "no viable initial configuration found: may not find good beam slope"
+#. TODO: Also print the arguments of the markup!
+#: text-interface.cc:140
+#, c-format
+msgid "Markup depth exceeds maximal value of %d; Markup: %s"
 msgstr ""
-"pas de configuration initiale viable repérée :\n"
-"la pente de la ligature pourrait être inesthétique."
+"Cascade de « markups » dépassant la valeur maximale de %d ;\n"
+"  markup : %s"
 
-#: percent-repeat-engraver.cc:147
-msgid "unterminated percent repeat"
-msgstr "répétition en pourcent non terminée"
+#: text-spanner-engraver.cc:71
+msgid "cannot find start of text spanner"
+msgstr "impossible de repérer le point de départ de l'extension de texte"
+
+#: text-spanner-engraver.cc:84
+msgid "already have a text spanner"
+msgstr "extension de texte déjà présente"
 
-#: note-head.cc:85
-#, c-format
-msgid "none of note heads `%s' or `%s' found"
-msgstr "tête de note « %s » ou « %s » non trouvée"
+#: text-spanner-engraver.cc:131
+msgid "unterminated text spanner"
+msgstr "extension de texte non terminée"
 
-#. FIXME:
-#: script-engraver.cc:113
-msgid "do not know how to interpret articulation:"
-msgstr "ne sait comment interpréter l'articulation"
+#: tie-engraver.cc:120
+msgid "unterminated tie"
+msgstr "liaison de prolongation non terminée"
 
-#: script-engraver.cc:114
-msgid " scheme encoding: "
-msgstr "encodage Scheme : "
+#: tie-engraver.cc:376
+msgid "lonely tie"
+msgstr "liaison de prolongation orpheline"
 
-#: program-option-scheme.cc:235
+#.
+#. Todo: should make typecheck?
+#.
+#. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
+#.
+#: time-signature-engraver.cc:94
 #, c-format
-msgid "no such internal option: %s"
-msgstr "option interne inconnue : %s"
+msgid "strange time signature found: %d/%d"
+msgstr "Chiffrage de mesure inhabituel : %d/%d"
 
-#: property-iterator.cc:93
+#: translator-ctors.cc:70
 #, c-format
-msgid "not a grob name, `%s'"
-msgstr " « %s » n'est pas un nom d'objet graphique (grob)"
+msgid "unknown translator: `%s'"
+msgstr "translateur inconnu : « %s »"
 
-#: all-font-metrics.cc:149
+#: translator-group-ctors.cc:40
 #, c-format
-msgid "cannot find font: `%s'"
-msgstr "fonte « %s » introuvable"
+msgid "fatal error.  Couldn't find type: %s"
+msgstr "Erreur fatale. Type inconnu : %s"
 
-#: pdf-scheme.cc:50
+#: translator-group.cc:185
 #, c-format
-msgid "Conversion of string `%s' to UTF-16be failed: %s"
-msgstr ""
-"La conversion de la chaîne « %s » en UTF-16be a échoué :\n"
-" %s"
+msgid "cannot find: `%s'"
+msgstr "« %s » inconnu(e)"
 
-#: rest.cc:171
+#: translator.cc:305
 #, c-format
-msgid "rest `%s' not found"
-msgstr "silence « %s » inconnu"
+msgid "Two simultaneous %s events, junking this one"
+msgstr "Deux événements %s simultanés, rejet de celui-ci"
 
-#: bar-check-iterator.cc:84
+#: translator.cc:306
 #, c-format
-msgid "barcheck failed at: %s"
-msgstr "échec du contrôle de mesure (barcheck) Ã  %s"
+msgid "Previous %s event here"
+msgstr "Ã\89vénement %s précédent ici"
 
-#: slur-engraver.cc:92 phrasing-slur-engraver.cc:91
-#, c-format
-msgid "direction of %s invalid: %d"
-msgstr "l'orientation de %s n'est pas valide : %d"
+#: tuplet-engraver.cc:109
+msgid "No tuplet to end"
+msgstr "Aucun n-olet à terminer"
 
-#: slur-engraver.cc:166
-msgid "unterminated slur"
-msgstr "liaison non terminée"
+#: vaticana-ligature-engraver.cc:384
+#, c-format
+msgid "ignored prefix(es) `%s' of this head according to restrictions of the selected ligature style"
+msgstr ""
+"préfixe(s) « %s » ignoré(s) pour la tête de note,\n"
+"selon les restrictions du style de ligature sélectionné"
 
-#: slur-engraver.cc:191
-msgid "cannot end slur"
-msgstr "impossible de terminer la liaison"
+#: vaticana-ligature-engraver.cc:450
+msgid "Ambiguous use of dots in ligature: there are multiple dotted notes with the same pitch.  The ligature should be split."
+msgstr ""
+"Utilisation ambigüe de points dans une ligature : plusieurs notes\n"
+"pointées ont la même hauteur. La ligature devrait être coupée."
 
-#. We already have a slur, so give a warning and completely ignore
-#. the new slur.
-#: slur-engraver.cc:208
-msgid "already have slur"
-msgstr "a déjà une liaison"
+#: vaticana-ligature-engraver.cc:508
+msgid "This ligature has a dotted head followed by a non-dotted head.  The ligature should be split after the last dotted head before this head."
+msgstr ""
+"Cette ligature comporte une note pointée suivie d'une non pointée.\n"
+"La ligature devrait s'interrompre entre ces deux notes."
 
-#: global-context-scheme.cc:96 global-context-scheme.cc:114
-msgid "no music found in score"
-msgstr "Il n'y a pas de musique dans cette partition"
+#: vaticana-ligature-engraver.cc:720
+#, c-format
+msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
+msgstr "Vaticana_ligature_engraver : fixé « spacing-increment = %f » : ptr=%ul"
 
-#: global-context-scheme.cc:104
-msgid "Interpreting music... "
-msgstr "Interprétation en cours de la musique..."
+#: vaticana-ligature.cc:94
+msgid "flexa-height undefined; assuming 0"
+msgstr "Vaticana_ligature : décalage en X indéfini ; ramené à 0"
 
-#: global-context-scheme.cc:126
-#, c-format
-msgid "elapsed time: %.2f seconds"
-msgstr "temps écoulé : %.2f secondes"
+#: vaticana-ligature.cc:99
+msgid "ascending vaticana style flexa"
+msgstr "flexe de style vaticana ascendant"
 
-#: translator-group-ctors.cc:40
-#, c-format
-msgid "fatal error. Couldn't find type: %s"
-msgstr "Erreur fatale. Type inconnu : %s"
+#: vertical-align-engraver.cc:100
+msgid "Ignoring Vertical_align_engraver in VerticalAxisGroup"
+msgstr "Vertical_align_engraver dans le VerticalAxisGroup ignoré"
 
-#: phrasing-slur-engraver.cc:165
-msgid "unterminated phrasing slur"
-msgstr "liaison de phrasé non terminée"
+#. fixme: be more verbose.
+#: volta-engraver.cc:110
+msgid "cannot end volta spanner"
+msgstr "extension de reprise sans terminaison"
 
-#: phrasing-slur-engraver.cc:190
-msgid "cannot end phrasing slur"
-msgstr "impossible de terminer la liaison de phrasé"
+#: volta-engraver.cc:120
+msgid "already have a volta spanner, ending that one prematurely"
+msgstr "extension de reprise déjà présente, fin prématurée de celle-ci"
 
-#: phrasing-slur-engraver.cc:204
-msgid "already have phrasing slur"
-msgstr "il y a déjà une liaison de phrasé"
+#: volta-engraver.cc:124
+msgid "also already have an ended spanner"
+msgstr "a déjà une extension terminée"
 
-#: lily-parser.cc:109
-msgid "Parsing..."
-msgstr "Analyse..."
+#: volta-engraver.cc:125
+msgid "giving up"
+msgstr "abandon"
 
-#: score.cc:176
-msgid "already have music in score"
-msgstr "il y a déjà de la musique dans la partition"
+#: parser.yy:482 parser.yy:649 parser.yy:988 parser.yy:1069 parser.yy:1305
+msgid "bad expression type"
+msgstr "type d'expression erroné"
 
-#: score.cc:177
-msgid "this is the previous music"
-msgstr "voici la musique précédente"
+#: parser.yy:901 parser.yy:1508 parser.yy:1570
+msgid "not a context mod"
+msgstr "ceci n'est pas un module de contexte"
 
-#: score.cc:182
-msgid "errors found, ignoring music expression"
-msgstr "suite à des erreurs répétées, l'expression musicale sera ignorée"
+#: parser.yy:982 parser.yy:1061 parser.yy:1213
+msgid "need \\paper for paper block"
+msgstr "\\paper est nécessaire pour définir les paramètres de la page"
 
-#. If there is no such symbol, we default to the numbered style.
-#. (Here really with a warning!)
-#: time-signature.cc:94
-#, c-format
-msgid "time signature symbol `%s' not found; reverting to numbered style"
-msgstr ""
-"symbole de chiffrage de mesure « %s » inconnu ;\n"
-"retour à un style numérique"
+#: parser.yy:1095
+msgid "Missing music in \\score"
+msgstr "Il n'y a pas de musique dans ce \\score"
 
-#: grob-interface.cc:68
-#, c-format
-msgid "Unknown interface `%s'"
-msgstr "Interface inconnue : « %s »"
+#: parser.yy:1132
+msgid "\\paper cannot be used in \\score, use \\layout instead"
+msgstr "dans la section \\score, utiliser \\layout au lieu de \\paper"
 
-#: grob-interface.cc:79
-#, c-format
-msgid "Grob `%s' has no interface for property `%s'"
-msgstr ""
-"L'objet graphique (Grob) « %s »\n"
-" n'a pas d'interface pour la propriété « %s »"
+#: parser.yy:1183
+msgid "Spurious expression in \\score"
+msgstr "Expression invalide dans \\score"
 
-#: midi-stream.cc:39
-#, c-format
-msgid "cannot open for write: %s: %s"
-msgstr "impossible d'ouvrir le fichier en écriture : %s : %s"
+#: parser.yy:1387
+msgid "music expected"
+msgstr "On attendait de la musique"
 
-#: midi-stream.cc:55
-#, c-format
-msgid "cannot write to file: `%s'"
-msgstr "impossible d'écrire dans le fichier « %s »"
+#: parser.yy:1397 parser.yy:1431
+msgid "unexpected post-event"
+msgstr "« post-event » inattendu"
 
-#. TODO: Also print the arguments of the markup!
-#: text-interface.cc:129
-#, c-format
-msgid "Cyclic markup detected: %s"
-msgstr "Markup avec référence circulaire : %s"
+#: parser.yy:1439
+msgid "Ignoring non-music expression"
+msgstr "Expression non musicale ignorée"
 
-#. TODO: Also print the arguments of the markup!
-#: text-interface.cc:142
-#, c-format
-msgid "Markup depth exceeds maximal value of %d; Markup: %s"
-msgstr ""
-"Cascade de markups dépassant la valeur maximale de %d ;\n"
-"Markup : %s"
+#: parser.yy:1749 parser.yy:1768
+msgid "not a key"
+msgstr "n'est pas une clé"
 
-#: parser.yy:162 parser.yy:176
-msgid "Too much lookahead"
-msgstr "Trop d'anticipation"
+#: parser.yy:2628 parser.yy:2746 parser.yy:2759 parser.yy:2768
+msgid "bad grob property path"
+msgstr "chemin erroné d'accès à la propriété de « grob »"
 
-#: parser.yy:827 parser.yy:1193 parser.yy:1226
-msgid "not a context mod"
-msgstr "ceci n'est pas un module de contexte"
+#: parser.yy:2726
+msgid "only \\consists and \\remove take non-string argument."
+msgstr "seuls \\consists et \\remove peuvent prendre un argument autre qu'une chaîne."
 
-#: parser.yy:995
-msgid "\\paper cannot be used in \\score, use \\layout instead"
-msgstr "dans la section \\score, utiliser \\layout au lieu de \\paper"
+#: parser.yy:2787
+msgid "bad context property path"
+msgstr "chemin erroné d'accès à la propriété de contexte"
 
-#: parser.yy:1019
-msgid "need \\paper for paper block"
-msgstr "\\paper est nécessaire pour définir les paramètres de la page"
+#: parser.yy:2872
+msgid "markup expected"
+msgstr "on attendait un « markup »"
 
-#: parser.yy:1943
-msgid "only \\consists takes non-string argument."
-msgstr "seul \\consists peut prendre un argument autre qu'une chaîne"
+#: parser.yy:2884
+msgid "simple string expected"
+msgstr "on attendait une chaîne simple"
 
-#: parser.yy:1956
-msgid "Grob name should be alphanumeric"
-msgstr "Un nom de Grob devrait être alphanumérique"
+#: parser.yy:2901
+msgid "symbol expected"
+msgstr "symbole requis"
 
-#: parser.yy:2150
+#: parser.yy:3041
 msgid "not a rhythmic event"
 msgstr "événement non rythmique"
 
-#: parser.yy:2246 parser.yy:2251
+#: parser.yy:3091
+msgid "post-event expected"
+msgstr "On attendait un « post-event »"
+
+#: parser.yy:3100 parser.yy:3105
 msgid "have to be in Lyric mode for lyrics"
-msgstr "doit être en mode Lyric pour des paroles"
+msgstr "Des paroles requièrent d'utiliser le mode Lyric."
 
-#: parser.yy:2366
-msgid "expecting string as script definition"
-msgstr "chaîne requise pour définir un script"
+#: parser.yy:3181
+msgid "expecting string or post-event as script definition"
+msgstr "chaîne ou « post-event » requis pour définir un script"
 
-#: parser.yy:2518 parser.yy:2569
-#, c-format
-msgid "not a duration: %d"
-msgstr "%d n'est pas une durée"
+#: parser.yy:3285
+msgid "not an articulation"
+msgstr "n'est pas une articulation"
+
+#: parser.yy:3351 parser.yy:3403
+msgid "not a duration"
+msgstr "ceci n'est pas une durée"
 
-#: parser.yy:2688
+#: parser.yy:3424
+msgid "bass number expected"
+msgstr "On attendait un numéro de basse"
+
+#: parser.yy:3516
 msgid "have to be in Note mode for notes"
-msgstr "doit être en mode Note pour des notes"
+msgstr "Des notes requièrent d'utiliser le mode Note."
 
-#: parser.yy:2737
+#: parser.yy:3555
 msgid "have to be in Chord mode for chords"
-msgstr "doit être en mode Chord pour des accords"
+msgstr "Des accords requièrent d'utiliser le mode Chord."
+
+#: parser.yy:3598
+msgid "markup outside of text script or \\lyricmode"
+msgstr "« markup » en dehors d'un script textuel ou de \\lyricmode"
 
-#: parser.yy:2997
+#: parser.yy:3603
+msgid "unrecognized string, not in text script or \\lyricmode"
+msgstr "chaîne non reconnue ; en dehors d'un script textuel ou de \\lyricmode"
+
+#: parser.yy:3755 parser.yy:3764
+msgid "not an unsigned integer"
+msgstr "n'est pas un entier sans signe"
+
+#: parser.yy:3851
 msgid "not a markup"
-msgstr "n'est pas un « markup »"
+msgstr "n'est pas un « markup »"
 
-#: lexer.ll:225
+#: lexer.ll:193
 msgid "stray UTF-8 BOM encountered"
 msgstr "parasitage par UTF-8 BOM"
 
-#: lexer.ll:228
+#: lexer.ll:196
 msgid "Skipping UTF-8 BOM"
 msgstr "Escamotage d'UTF-8 BOM"
 
-#: lexer.ll:286
+#: lexer.ll:248
 #, c-format
 msgid "Renaming input to: `%s'"
-msgstr "L'entrée a été renommée en « %s »"
+msgstr "L'entrée a été renommée en « %s »"
 
-#: lexer.ll:303
+#: lexer.ll:265
 msgid "quoted string expected after \\version"
 msgstr "\\version doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:307
+#: lexer.ll:269
 msgid "quoted string expected after \\sourcefilename"
 msgstr "\\sourcefilename doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:311
+#: lexer.ll:273
 msgid "integer expected after \\sourcefileline"
 msgstr "\\sourcefilename doit être suivi d'un nombre entier"
 
-#: lexer.ll:334
+#: lexer.ll:300
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput n'est pas permis en dehors des fichiers d'initialisation"
 
-#: lexer.ll:358
+#: lexer.ll:324
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
-msgstr "identificateur erroné ou non défini : « %s »"
+msgstr "identificateur erroné ou non défini : « %s »"
 
-#: lexer.ll:384
+#: lexer.ll:349
 msgid "string expected after \\include"
 msgstr "\\include doit être suivi d'une chaîne entre guillemets"
 
-#. backup rule
-#: lexer.ll:394
+#: lexer.ll:359
 msgid "end quote missing"
 msgstr "absence de guillemet fermant"
 
-#: lexer.ll:556
-msgid "Brace found at end of lyric.  Did you forget a space?"
-msgstr "Accolade repérée à la fin d'une parole. Manquerait-il une espace ?"
-
-#: lexer.ll:671
-msgid "Brace found at end of markup.  Did you forget a space?"
-msgstr "Accolade repérée à la fin d'un \"markup\". Manquerait-il une espace ?"
-
-#: lexer.ll:683
+#: lexer.ll:714
 msgid "EOF found inside a comment"
 msgstr "Fin de fichier (EOF) à l'intérieur du commentaire"
 
-#: lexer.ll:775
+#: lexer.ll:719
+msgid "EOF found inside string"
+msgstr "Fin de fichier (EOF) à l'intérieur d'une chaîne"
+
+#: lexer.ll:734
+msgid "Unfinished main input"
+msgstr "Fichier principal non fini"
+
+#: lexer.ll:805
 #, c-format
 msgid "invalid character: `%s'"
-msgstr "caractère invalide : « %s »"
+msgstr "caractère invalide : « %s »"
 
-#: lexer.ll:868 lexer.ll:869
+#: lexer.ll:925
 #, c-format
 msgid "unknown escaped string: `\\%s'"
-msgstr "chaîne d'échappement inconnue : « \\%s »"
+msgstr "chaîne d'échappement inconnue : « \\%s »"
+
+#: lexer.ll:945
+#, c-format
+msgid "undefined character or shorthand: %s"
+msgstr "caractère ou raccourci non défini : %s"
 
-#: lexer.ll:1117 lexer.ll:1118
+#: lexer.ll:1236
 msgid "non-UTF-8 input"
 msgstr "la source n'est pas en UTF-8"
 
-#: lexer.ll:1161 lexer.ll:1162
+#: lexer.ll:1280
+#, c-format
+msgid "Invalid version string \"%s\""
+msgstr "Numérotation de version \"%s\" invalide"
+
+#: lexer.ll:1285
 #, c-format
 msgid "file too old: %s (oldest supported: %s)"
 msgstr ""
-"%s est plus qu'obsolète ;\n"
+"%s est plus qu'obsolète ;\n"
 "le plus ancien pouvant être supporté est %s"
 
-#: lexer.ll:1162 lexer.ll:1163
+#: lexer.ll:1286
 msgid "consider updating the input with the convert-ly script"
 msgstr "Envisagez la mise à jour de la source à l'aide du script convert-ly"
 
-#: lexer.ll:1168 lexer.ll:1169
+#: lexer.ll:1292
 #, c-format
 msgid "program too old: %s (file requires: %s)"
-msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
+msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
 
-#: parser-clef.scm:141 parser-clef.scm:181
+#: auto-beam.scm:147
+msgid "Beam end fits no pattern"
+msgstr "La terminaison de ligature ne correspond à aucun modèle"
+
+#: backend-library.scm:27
 #, scheme-format
-msgid "unknown clef type `~a'"
-msgstr "type de clef inconnu : « ~a »"
+msgid "Invoking `~a'..."
+msgstr "Appel de « ~a »..."
 
-#: parser-clef.scm:142 parser-clef.scm:182
+#: backend-library.scm:31
 #, scheme-format
-msgid "supported clefs: ~a"
-msgstr "clefs reconnues : ~a"
+msgid "`~a' failed (~a)\n"
+msgstr "échec de « ~a » (~a)\n"
+
+#: backend-library.scm:108
+#, scheme-format
+msgid "Converting to `~a'...\n"
+msgstr "Conversion à « ~a »...\n"
+
+#. Do not try to guess the name of the png file,
+#. GS produces PNG files like BASE-page%d.png.
+#: backend-library.scm:118
+#, scheme-format
+msgid "Converting to ~a..."
+msgstr "Conversion à « ~a »..."
+
+#: backend-library.scm:134
+#, scheme-format
+msgid "Copying to `~a'...\n"
+msgstr "Copie vers « ~a »...\n"
+
+#: backend-library.scm:200
+#, scheme-format
+msgid "Deleting `~a'...\n"
+msgstr "Suppression de « ~a »...\n"
+
+#: backend-library.scm:219
+#, scheme-format
+msgid "Writing header field `~a' to `~a'..."
+msgstr "écriture du champ d'entête « ~a » dans « ~a »..."
+
+#: backend-library.scm:268
+#, scheme-format
+msgid "missing stencil expression `~S'"
+msgstr "absence d'expression stencil « ~S »"
+
+#: bar-line.scm:142
+#, scheme-format
+msgid "Bar glyph ~a not known. Ignoring."
+msgstr "~a n'est pas un glyphe de barre connu ; on l'ignore."
+
+#: bar-line.scm:170
+#, scheme-format
+msgid "Annotation '~a' is allowed in the first argument of a bar line definition only."
+msgstr ""
+"L'annotation « ~a » n'est autorisée qu'en premier argument\n"
+"  dans la définition d'une barre de mesure."
+
+#: bar-line.scm:178
+#, scheme-format
+msgid "Replacement '~a' is allowed in the last argument of a bar line definition only."
+msgstr ""
+"Le remplacement « ~a » n'est autorisé qu'en dernier argument\n"
+"  dans la définition d'une barre de mesure."
+
+#: bar-line.scm:239
+#, scheme-format
+msgid "add-bar-glyph-print-procedure: glyph '~a' has to be a single ASCII character."
+msgstr ""
+"add-bar-glyph-print-procedure : le glyphe « ~a » doit être un caractère\n"
+"  ASCII simple."
+
+#: bar-line.scm:807
+#, scheme-format
+msgid "No span bar glyph defined for bar glyph '~a'; ignoring."
+msgstr ""
+"Le glyphe de barre « ~a » ne comporte pas de glyphe d'extension ;\n"
+"  on l'ignore."
+
+#: chord-entry.scm:57
+#, scheme-format
+msgid "Spurious garbage following chord: ~A"
+msgstr "Information incompréhensible à la suite de l'accord « ~A »"
+
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21 lily.scm:102
+#, scheme-format
+msgid "symbol ~S redefined"
+msgstr "symbole « ~S » redéfini"
+
+#: define-event-classes.scm:74
+#, scheme-format
+msgid "unknown parent class `~a'"
+msgstr "Classe parente inconnue : « ~a »"
+
+#: define-event-classes.scm:108
+#, scheme-format
+msgid "Cannot redefine event class `~S'"
+msgstr "Impossible de redéfinir la classe d'événement « ~S »"
+
+#: define-event-classes.scm:110
+#, scheme-format
+msgid "Undefined parent event class `~S'"
+msgstr "Classe d'événement parente « ~a » non définie"
+
+#: define-markup-commands.scm:1272
+msgid "no systems found in \\score markup, does it have a \\layout block?"
+msgstr ""
+"pas de système trouvé dans le bloc \\score du « markup » ;\n"
+"  contient-il un bloc \\layout ?"
+
+#: define-markup-commands.scm:3122
+#, scheme-format
+msgid "Cannot find glyph ~a"
+msgstr "impossible de trouver le glyphe « ~a »"
+
+#: define-markup-commands.scm:3598
+#, scheme-format
+msgid "no brace found for point size ~S "
+msgstr "il n'y a pas d'accolade qui fasse ~S points"
+
+#: define-markup-commands.scm:3599
+#, scheme-format
+msgid "defaulting to ~S pt"
+msgstr "application de la taille par défaut (~S pt)"
+
+#: define-markup-commands.scm:3858
+#, scheme-format
+msgid "not a valid duration string: ~a"
+msgstr "chaîne de durée invalide : ~a"
+
+#: define-markup-commands.scm:4071
+#, scheme-format
+msgid "not a valid duration string: ~a - ignoring"
+msgstr "chaîne de durée invalide : ~a -- ignorée"
 
-#: document-backend.scm:132
+#: define-music-types.scm:796
+#, scheme-format
+msgid "symbol expected: ~S"
+msgstr "symbole requis : ~S"
+
+#: define-music-types.scm:799
+#, scheme-format
+msgid "cannot find music object: ~S"
+msgstr "impossible de trouver l'objet de type musique : ~S"
+
+#: define-music-types.scm:819
+#, scheme-format
+msgid "bad make-music argument: ~S"
+msgstr "argument de make-music erronné : ~S"
+
+#: define-note-names.scm:1112
+msgid "Select note names language."
+msgstr "Sélection de la langue des noms de note."
+
+#: define-note-names.scm:1118
+#, scheme-format
+msgid "Using `~a' note names..."
+msgstr "Utilisation de « ~a » pour le nom des notes..."
+
+#: define-note-names.scm:1121
+#, scheme-format
+msgid "Could not find language `~a'.  Ignoring."
+msgstr ""
+"« ~a » n'est pas une langue reconnue pour les noms de note.\n"
+" Abandon."
+
+#: document-backend.scm:135
 #, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "le document ~s devrait contenir une paire"
 
-#: document-backend.scm:189
+#: document-backend.scm:202
 #, scheme-format
 msgid "cannot find interface for property: ~S"
-msgstr "impossible de trouver l'interface pour la propriété ~S"
+msgstr "impossible de trouver l'interface pour la propriété « ~S »"
 
-#: document-backend.scm:199
+#: document-backend.scm:212
 #, scheme-format
 msgid "unknown Grob interface: ~S"
-msgstr "interface d'objet graphique (Grob) inconnue : ~S"
+msgstr "interface d'objet graphique (Grob) inconnue : ~S"
 
-#: graphviz.scm:64
+#: documentation-lib.scm:61
 #, scheme-format
-msgid "Writing graph `~a'..."
-msgstr "Écriture du graphique « ~a »..."
+msgid "Processing ~S..."
+msgstr "Traitement de « ~S »..."
 
-#: parser-ly-from-scheme.scm:71
-msgid "error in #{ ... #}"
-msgstr "erreur dans #{ ... #}"
+#: documentation-lib.scm:177
+#, scheme-format
+msgid "Writing ~S..."
+msgstr "Écriture de « ~S »..."
+
+#: documentation-lib.scm:189
+#, scheme-format
+msgid "cannot find description for property `~S' (~S)"
+msgstr ""
+"impossible de trouver une description de la propriété « ~S »\n"
+" (~S)"
+
+#: documentation-lib.scm:210
+#, scheme-format
+msgid "cannot find description for property ~S (~S)"
+msgstr ""
+"impossible de trouver une description de la propriété « ~S »\n"
+" (~S)"
 
-#: framework-eps.scm:108
+#: flag-styles.scm:154
+#, scheme-format
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "type de crochet inconnu : « ~a » ou « ~a »"
+
+#: framework-eps.scm:112
 #, scheme-format
 msgid "Writing ~a..."
-msgstr "Écriture de ~a..."
+msgstr "Écriture de « ~a »..."
 
-#: output-ps.scm:48
-msgid "Found infinity or nan in output.  Substituting 0.0"
-msgstr "Détection d'une valeur infini ou non numérique. Substitution par 0.0"
+#: framework-ps.scm:265
+#, scheme-format
+msgid "CFF font `~a' already embedded, skipping."
+msgstr "Fonte CFF « ~a » déjà embarquée, on passe."
 
-#: output-ps.scm:313 output-svg.scm:556
+#: framework-ps.scm:268
 #, scheme-format
-msgid "unknown line-cap-style: ~S"
-msgstr "line-cap-style inconnu : ~S"
+msgid "Different CFF fonts which have the same name `~a' has been detected. The font cannot be embedded."
+msgstr "Plusieurs fontes CFF s'appellent « ~a ». La fonte ne peut être embarquée."
 
-#: output-ps.scm:318 output-svg.scm:562
+#: framework-ps.scm:272
 #, scheme-format
-msgid "unknown line-join-style: ~S"
-msgstr "line-join-style inconnu : ~S"
+msgid "Embedding CFF font `~a'."
+msgstr "Embarquement de la fonte « ~a »."
 
-#: paper.scm:120
-msgid "set-global-staff-size: not in toplevel scope"
-msgstr "set-global-staff-size n'est pas à un niveau de portée globale"
+#: framework-ps.scm:277
+msgid "Initializing embedded CFF font list."
+msgstr "Initialisation de la liste des fontes CFF à empaqueter."
 
-#: paper.scm:304
+#: framework-ps.scm:331
 #, scheme-format
-msgid "This is not a \\layout {} object, ~S"
-msgstr "~S n'est pas un objet de \\layout {}"
+msgid "Font ~a cannot be loaded via Ghostscript because its font-index (~a) is not zero."
+msgstr ""
+"La fonte ~a ne peut être chargée via Ghostscript,\n"
+" son index (~a) étant différent de zéro."
 
-#: paper.scm:316
+#: framework-ps.scm:337
 #, scheme-format
-msgid "Unknown paper size: ~a"
-msgstr "Format de papier inconnu : ~a"
+msgid "Font ~a cannot be loaded via Ghostscript because it is an OpenType/CFF Collection (OTC) font."
+msgstr ""
+"La fonte ~a ne peut être chargée via Ghostscript,\n"
+" c'est une fonte OpenType/CFF Collection (OTC)."
 
-#. TODO: should raise (generic) exception with throw, and catch
-#. that in parse-scm.cc
-#: paper.scm:331
-msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
-msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
+#: framework-ps.scm:343
+#, scheme-format
+msgid "Font ~a cannot be used via Ghostscript because it is a TrueType font that does not have glyph names."
+msgstr ""
+"La fonte ~a ne peut être utilisée via Ghostscript,\n"
+" c'est une fonte TrueType sans nom de glyphe."
 
-#: backend-library.scm:27
+#: framework-ps.scm:365
 #, scheme-format
-msgid "Invoking `~a'..."
-msgstr "Appel de « ~a »..."
+msgid "cannot embed ~S=~S"
+msgstr "intégration impossible : ~S=~S"
 
-#: backend-library.scm:31
+#: framework-ps.scm:408
 #, scheme-format
-msgid "`~a' failed (~a)\n"
-msgstr "échec de « ~a » (~a)\n"
+msgid "cannot extract file matching ~a from ~a"
+msgstr "impossible d'extraire le fichier « ~a » à partir de « ~a »"
 
-#: backend-library.scm:90
+#: framework-ps.scm:427
 #, scheme-format
-msgid "Converting to `~a'...\n"
-msgstr "Conversion à « ~a »...\n"
+msgid "do not know how to embed ~S=~S"
+msgstr "imposible de réaliser l'intégration ~S=~S"
 
-#. Do not try to guess the name of the png file,
-#. GS produces PNG files like BASE-page%d.png.
-#: backend-library.scm:99
+#: framework-ps.scm:452
 #, scheme-format
-msgid "Converting to ~a..."
-msgstr "Conversion à ~a..."
+msgid "do not know how to embed font ~s ~s ~s"
+msgstr "impossible d'intégrer les fontes ~s ~s ~s"
 
-#: backend-library.scm:137
+#: framework-ps.scm:517
 #, scheme-format
-msgid "Writing header field `~a' to `~a'..."
-msgstr "écriture du champ d'entête « ~a » dans « ~a »..."
+msgid "Font file `~a' already exists, skipping."
+msgstr "Fichier de fonte « ~a » déjà présent. On passe."
 
-#: backend-library.scm:187
+#: framework-ps.scm:527
 #, scheme-format
-msgid "missing stencil expression `~S'"
-msgstr "absence d'expression stencil « ~S »"
+msgid "Exporting font file `~a'."
+msgstr "Export du fichier de fonte « ~a »."
 
-#: output-svg.scm:47
+#: framework-ps.scm:543
 #, scheme-format
-msgid "undefined: ~S"
-msgstr "~S indéfini(e)"
+msgid "Font export directory `~a' already exists."
+msgstr "Répertoire d'export des fontes « ~a » déjà présent."
 
-#: output-svg.scm:157
+#: framework-ps.scm:546
 #, scheme-format
-msgid "cannot decypher Pango description: ~a"
-msgstr "la description de Pango ne peut être déchiffrée : ~a"
+msgid "Making font export directory `~a'."
+msgstr "Création du répertoire d'export de fontes « ~a »."
 
-#: output-svg.scm:237
-msgid "Glyph must have a unicode value"
-msgstr "Un glyphe doit avoir une valeur unicode"
+#: framework-ps.scm:892
+msgid ""
+"\n"
+"The PostScript backend does not support the\n"
+"system-by-system output.  For that, use the EPS backend instead,\n"
+"\n"
+"  lilypond -dbackend=eps FILE\n"
+"\n"
+"If you have cut & pasted a lilypond fragment from a webpage, be sure\n"
+"to only remove anything before\n"
+"\n"
+"  %% ****************************************************************\n"
+"  %% Start cut-&-pastable-section\n"
+"  %% ****************************************************************\n"
+msgstr ""
+"\n"
+"Le support PostScript ne peut traiter une sortie système par système.\n"
+"Utiliser de préférence le support EPS\n"
+"\n"
+"  lilypond -dbackend=eps FICHIER\n"
+"\n"
+"Si vous avez copié et collé un fragment lilypond à partir d'une page\n"
+"internet, assurez-vous d'avoir bien supprimé tout ce qui précède\n"
+"\n"
+"  %% ****************************************************************\n"
+"  %% Start cut-&-pastable-section\n"
+"  %% ****************************************************************\n"
 
-#: output-svg.scm:289 output-svg.scm:299
+#: framework-svg.scm:84
 #, scheme-format
-msgid "cannot find SVG font ~S"
-msgstr "fonte SVG ~S introuvable"
+msgid "Updating font into: ~a"
+msgstr "Actualisation de la fonte dans « ~a »"
 
-#: flag-styles.scm:151
+#: graphviz.scm:64
 #, scheme-format
-msgid "flag stroke `~a' or `~a' not found"
-msgstr "type de crochet inconnu : « ~a » ou « ~a »"
+msgid "Writing graph `~a'..."
+msgstr "Écriture du graphique « ~a »..."
 
-#: modal-transforms.scm:38
-msgid "'from' pitch not in scale; ignoring"
-msgstr "hauteur de départ (from) absente de la gamme ; rien à transposer"
+#: layout-beam.scm:40
+#, scheme-format
+msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
+msgstr "Erreur de définition de ligature : attendait (~S,~S), ~S trouvé."
 
-#: modal-transforms.scm:42 modal-transforms.scm:75
-msgid "'to' pitch not in scale; ignoring"
-msgstr "hauteur d'arrivée (to) absente de la gamme ; rien à transposer"
+#: layout-beam.scm:54
+#, scheme-format
+msgid "Error in beam quanting.  Expected ~S 0, found ~S."
+msgstr "Erreur de définition de ligature : attendait ~S 0, repéré ~S."
 
-#: modal-transforms.scm:46
-msgid "pitch to be transposed not in scale; ignoring"
-msgstr "hauteur à laquelle transposer absente de la gamme ; rien à transposer"
+#: lily-library.scm:333
+msgid "Music unsuitable for context-mod"
+msgstr "Inadéquation entre la musique et le context-mod"
 
-#: modal-transforms.scm:71
-msgid "'around' pitch not in scale; ignoring"
-msgstr "hauteur pivot (around) absente de la gamme : rien à transposer"
+#: lily-library.scm:388
+#, scheme-format
+msgid "Cannot find context-def \\~a"
+msgstr "Impossible de repérer un context-def (définition de contexte) \\~a"
 
-#: modal-transforms.scm:79
-msgid "pitch to be inverted not in scale; ignoring"
-msgstr "hauteur d'inversion absente de la gamme : rien à transposer"
+#: lily-library.scm:404
+msgid "Music unsuitable for output-def"
+msgstr "Inadéquation entre la musique et le output-def"
 
-#: modal-transforms.scm:95
-msgid "negative replication count; ignoring"
-msgstr "compteur de réplication négatif : rien à transposer"
+#: lily-library.scm:900
+msgid ""
+"Find the index between @var{start} and @var{end} (an integer)\n"
+"which produces the closest match to @var{target-val} if\n"
+"applied to function @var{getter}."
+msgstr ""
+"Recherche un index compris entre @var{début} et @var{fin}\n"
+"(nombre entier) qui soit le plus proche de @var{valeur-cible}\n"
+"lorsqu'appliqué à la fonction @var{appelant}."
 
-#: to-xml.scm:191
+#: lily-library.scm:994
 #, scheme-format
-msgid "assertion failed: ~S"
-msgstr "erreur d'assertion : ~S"
+msgid "unknown unit: ~S"
+msgstr "unité inconnue : ~S"
 
-#: define-grob-properties.scm:21 define-context-properties.scm:31
-#: define-music-properties.scm:21
+#: lily-library.scm:1019
 #, scheme-format
-msgid "symbol ~S redefined"
-msgstr "symbole « ~S » redéfini"
+msgid "no \\version statement found, please add~afor future compatibility"
+msgstr ""
+"déclaration de \\version absente ;\n"
+"  ajoutez ~a pour une compatibilité future"
 
-#: chord-entry.scm:52
-#, scheme-format
-msgid "Spurious garbage following chord: ~A"
-msgstr "Information incompréhensible à la suite de l'accord « ~A »"
+#: lily.scm:94
+msgid "call-after-session used after session start"
+msgstr "call-after-session utilisé après le début de la session"
 
-#: lily.scm:234
+#: lily.scm:99
+msgid "define-session used after session start"
+msgstr "define-session utilisé après le début de la session"
+
+#: lily.scm:450
 msgid "Using (ice-9 curried-definitions) module\n"
 msgstr "Utilisation du module (ice-9 curried-definitions)\n"
 
-#: lily.scm:237
+#: lily.scm:453
 msgid "Guile 1.8\n"
 msgstr "Guile 1.8\n"
 
-#: lily.scm:297
+#: lily.scm:510
 #, scheme-format
 msgid "cannot find: ~A"
-msgstr "impossible de trouver ~A"
+msgstr "impossible de trouver « ~A »"
 
-#: lily.scm:701
+#: lily.scm:940
 msgid "Success: compilation successfully completed"
 msgstr "Compilation menée à son terme, avec succès."
 
-#: lily.scm:702
+#: lily.scm:941
 msgid "Compilation completed with warnings or errors"
 msgstr "Compilation menée à son terme, avec des avertissements ou erreurs."
 
-#: lily.scm:764
+#: lily.scm:1002
 #, scheme-format
 msgid "job ~a terminated with signal: ~a"
-msgstr "le travail ~a s'est terminé avec le signal ~a"
+msgstr "le travail « ~a » s'est terminé avec le signal ~a"
 
-#: lily.scm:767
+#: lily.scm:1005
 #, scheme-format
 msgid ""
 "logfile ~a (exit ~a):\n"
 "~a"
 msgstr ""
-"fichier journal ~a (sortie ~a) :\n"
+"fichier journal « ~a » (sortie ~a) :\n"
 "~a"
 
-#: lily.scm:789 lily.scm:869
+#: lily.scm:1027 lily.scm:1116
 #, scheme-format
 msgid "failed files: ~S"
 msgstr "erreur sur les fichiers ~S"
 
-#: lily.scm:860
+#: lily.scm:1107
 #, scheme-format
 msgid "Redirecting output to ~a..."
-msgstr "Redirection de la sortie vers ~a..."
+msgstr "Redirection de la sortie vers « ~a »..."
 
-#: lily.scm:879 ps-to-png.scm:66
+#: lily.scm:1126
 #, scheme-format
 msgid "Invoking `~a'...\n"
-msgstr "Appel de « ~a »...\n"
+msgstr "Appel de « ~a »...\n"
 
-#: lily-library.scm:761
-msgid ""
-"Find the index between @var{start} and @var{end} (an integer)\n"
-"which produces the closest match to @var{target-val} if\n"
-"applied to function @var{getter}."
+#: ly-syntax-constructors.scm:27
+#, scheme-format
+msgid "~a function cannot return ~a"
+msgstr "La fonction ~a ne peut retourner ~a."
+
+#: ly-syntax-constructors.scm:60
+#, scheme-format
+msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
 msgstr ""
-"Recherche un index compris entre @var{début} et @var{fin}\n"
-"(nombre entier) qui soit le plus proche de @var{valeur-cible}\n"
-"lorsqu'appliqué à la fonction @var{appelant}."
+"type d'argument erroné pour ~a.\n"
+" Attendait ~a, ~s trouvé"
 
-#: lily-library.scm:835
+#: markup-macros.scm:331
 #, scheme-format
-msgid "unknown unit: ~S"
-msgstr "unité inconnue : ~S"
+msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
+msgstr ""
+"Nombre d'arguments erroné : ~A requis, ~A présent(s) :\n"
+" ~S"
 
-#: lily-library.scm:860
+#: markup-macros.scm:337
 #, scheme-format
-msgid "no \\version statement found, please add~afor future compatibility"
+msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr ""
-"déclaration de \\version absente ;\n"
-"ajoutez ~a pour une compatibilité future"
+"Argument invalide à la position ~A.\n"
+" ~A requis, trouvé ~S."
 
-#: lily-library.scm:866
-msgid "old relative compatibility not used"
-msgstr "compatibilité avec l'ancien mode relatif non utilisée"
+#: markup-macros.scm:373
+#, scheme-format
+msgid "Not a markup command: ~A"
+msgstr "~A n'est pas une commande de type « markup »"
 
-#: framework-svg.scm:84
+#: modal-transforms.scm:38
+msgid "'from' pitch not in scale; ignoring"
+msgstr "hauteur de départ (from) absente de la gamme ; rien à transposer"
+
+#: modal-transforms.scm:42 modal-transforms.scm:75
+msgid "'to' pitch not in scale; ignoring"
+msgstr "hauteur d'arrivée (to) absente de la gamme ; rien à transposer"
+
+#: modal-transforms.scm:46
+msgid "pitch to be transposed not in scale; ignoring"
+msgstr "hauteur à laquelle transposer absente de la gamme ; rien à transposer"
+
+#: modal-transforms.scm:71
+msgid "'around' pitch not in scale; ignoring"
+msgstr "hauteur pivot (around) absente de la gamme : rien à transposer"
+
+#: modal-transforms.scm:79
+msgid "pitch to be inverted not in scale; ignoring"
+msgstr "hauteur d'inversion absente de la gamme : rien à transposer"
+
+#: modal-transforms.scm:95
+msgid "negative replication count; ignoring"
+msgstr "compteur de réplication négatif : rien à transposer"
+
+#: modal-transforms.scm:287
+msgid "Dangling tie in \\retrograde"
+msgstr "Liaison de prolongation ambiguê dans un \\retrograde"
+
+#: music-functions.scm:321
 #, scheme-format
-msgid "Updating font into: ~a"
-msgstr "Actualisation de la fonte dans ~a"
+msgid "invalid tremolo repeat count: ~a"
+msgstr "nombre de répétition en trémolo invalide : ~a"
 
-#: part-combiner.scm:598
+#: music-functions.scm:350
 #, scheme-format
-msgid "quoted music `~a' is empty"
-msgstr "il n'y a rien à reproduire de « ~a » "
+msgid "unknown repeat type `~S': must be volta, unfold, percent, or tremolo"
+msgstr "type de répétition « ~S » inconnu : doit être volta, unfold, percent ou tremolo"
 
-#: music-functions.scm:273
+#: music-functions.scm:354
 msgid "More alternatives than repeats.  Junking excess alternatives"
 msgstr ""
 "Plus d'alternatives que de répétitions.\n"
 " Escamotage des alternatives surnuméraires."
 
-#: music-functions.scm:302
+#: music-functions.scm:506
 #, scheme-format
-msgid "invalid tremolo repeat count: ~a"
-msgstr "nombre de répétition en trémolo invalide : ~a"
+msgid "bad grob property path ~a"
+msgstr "chemin d'accès au « grob » erroné : ~a"
+
+#: music-functions.scm:530
+#, scheme-format
+msgid "bad context property ~a"
+msgstr "propriété de contexte ~a erronée"
 
-#: music-functions.scm:634
+#: music-functions.scm:553
+#, scheme-format
+msgid "bad music property ~a"
+msgstr "propriété musicale ~a erronée"
+
+#: music-functions.scm:861
 msgid "Bad chord repetition"
 msgstr "Mauvaise répétition d'accord"
 
-#: music-functions.scm:669
+#: music-functions.scm:966
 #, scheme-format
 msgid "music expected: ~S"
 msgstr "~S requiert de la musique"
 
-#: music-functions.scm:985
+#: music-functions.scm:1316
 #, scheme-format
 msgid "cannot find quoted music: `~S'"
-msgstr "impossible de trouver la citation de musique « ~S »"
+msgstr "impossible de trouver la citation de musique « ~S »"
 
-#: music-functions.scm:1123
+#: music-functions.scm:1453
 msgid "Add @var{octave-shift} to the octave of @var{pitch}."
 msgstr "Ajoute @var{octave-shift} à l'octave de @var{hauteur}."
 
-#: music-functions.scm:1183
+#: music-functions.scm:1516
 #, scheme-format
 msgid "Unknown octaveness type: ~S "
-msgstr "Octave inconnue : « ~S »"
+msgstr "Octave inconnue : « ~S »"
 
-#: music-functions.scm:1184
+#: music-functions.scm:1517
 msgid "Defaulting to 'any-octave."
 msgstr "Application de la valeur par défaut 'any-octave."
 
-#: music-functions.scm:1521
+#: music-functions.scm:1916
 #, scheme-format
 msgid "unknown accidental style: ~S"
-msgstr "style d'altération inconnu : ~S"
+msgstr "style d'altération inconnu : ~S"
 
-#: define-event-classes.scm:80
-msgid "All classes must be the last in their matrilineal line."
-msgstr "Toute classe doit être la dernière de sa lignée."
-
-#: define-event-classes.scm:84
-msgid "All classes must have a well-defined pedigree in the existing class hierarchy."
-msgstr ""
-"Chaque classe requiert que son pédigrée soit correctement défini\n"
-"dans la hiérarchie de la classe existante."
+#: music-functions.scm:2141
+msgid "Missing duration"
+msgstr "Durée absente"
 
-#: define-event-classes.scm:151
+#: music-functions.scm:2662
 #, scheme-format
-msgid "event class ~A seems to be unused"
-msgstr "la classe d'événement ~A semble être inutilisée"
+msgid "not a symbol list: ~a"
+msgstr "n'est pas une liste de symboles : ~a"
 
-#. should be programming-error
-#: define-event-classes.scm:157
+#: music-functions.scm:2665
 #, scheme-format
-msgid "translator listens to nonexisting event class ~A"
-msgstr "le traducteur écoute une classe d'événements ~A inexistante"
+msgid "conflicting tag group ~a"
+msgstr "groupe de balises (tag) ~a conflictuel"
 
-#: markup-macros.scm:331
+#: output-ps.scm:271 output-svg.scm:544
 #, scheme-format
-msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
-msgstr ""
-"Nombre d'arguments erroné : ~A requis, ~A présent(s) :\n"
-" ~S"
+msgid "unknown line-cap-style: ~S"
+msgstr "line-cap-style inconnu : ~S"
 
-#: markup-macros.scm:337
+#: output-ps.scm:276 output-svg.scm:550
 #, scheme-format
-msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
-msgstr ""
-"Argument invalide à la position ~A.\n"
-" ~A requis, trouvé ~S ."
+msgid "unknown line-join-style: ~S"
+msgstr "line-join-style inconnu : ~S"
 
-#: markup-macros.scm:373
+#: output-svg.scm:153
 #, scheme-format
-msgid "Not a markup command: ~A"
-msgstr "~A n'est pas une commande de type « markup »"
+msgid "cannot decypher Pango description: ~a"
+msgstr "la description de Pango ne peut être déchiffrée : ~a"
 
-#: define-note-names.scm:962
-msgid "Select note names language."
-msgstr "Sélection de la langue des noms de note."
+#: output-svg.scm:233
+msgid "Glyph must have a unicode value"
+msgstr "Un glyphe doit avoir une valeur unicode"
 
-#: define-note-names.scm:968
+#: output-svg.scm:285 output-svg.scm:295
 #, scheme-format
-msgid "Using `~a' note names..."
-msgstr "Utilisation de « ~a » pour le nom des notes..."
+msgid "cannot find SVG font ~S"
+msgstr "fonte SVG « ~S » introuvable."
 
-#: define-note-names.scm:971
-#, scheme-format
-msgid "Could not find language `~a'.  Ignoring."
-msgstr ""
-"« ~a » n'est pas une langue reconnue pour les noms de note.\n"
-" Abandon."
+#: paper.scm:121
+msgid "set-global-staff-size: not in toplevel scope"
+msgstr "set-global-staff-size n'est pas à un niveau de portée globale"
 
-#: framework-ps.scm:250
+#: paper.scm:321
 #, scheme-format
-msgid "cannot embed ~S=~S"
-msgstr "intégration impossible : ~S=~S"
+msgid "This is not a \\layout {} object, ~S"
+msgstr "~S n'est pas un objet de \\layout {}"
 
-#: framework-ps.scm:293
+#: paper.scm:329
 #, scheme-format
-msgid "cannot extract file matching ~a from ~a"
-msgstr "impossible d'extraire le fichier ~a à partir de ~a"
+msgid "Unknown paper size: ~a"
+msgstr "Format de papier inconnu : ~a"
+
+#. TODO: should raise (generic) exception with throw, and catch
+#. that in parse-scm.cc
+#: paper.scm:348
+msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
+msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
 
-#: framework-ps.scm:311
+#: parser-clef.scm:154
 #, scheme-format
-msgid "do not know how to embed ~S=~S"
-msgstr "imposible de réaliser l'intégration ~S=~S"
+msgid "unknown clef type `~a'"
+msgstr "type de clef inconnu : « ~a »"
 
-#: framework-ps.scm:336
+#: parser-clef.scm:155
 #, scheme-format
-msgid "do not know how to embed font ~s ~s ~s"
-msgstr "impossible d'intégrer les fontes ~s ~s ~s"
+msgid "supported clefs: ~a"
+msgstr "clefs reconnues : ~a"
 
-#: framework-ps.scm:686
-msgid ""
-"\n"
-"The PostScript backend does not support the\n"
-"system-by-system output.  For that, use the EPS backend instead,\n"
-"\n"
-"  lilypond -dbackend=eps FILE\n"
-"\n"
-"If have cut & pasted a lilypond fragment from a webpage, be sure\n"
-"to only remove anything before\n"
-"\n"
-"  %% ****************************************************************\n"
-"  %% Start cut-&-pastable-section\n"
-"  %% ****************************************************************\n"
-msgstr ""
-"\n"
-"Le support PostScript ne peut traiter une sortie système par système.\n"
-"Utiliser de préférence le support EPS\n"
-"\n"
-"  lilypond -dbackend=eps FICHIER\n"
-"\n"
-"Si vous avez copié et collé un fragment lilypond à partir d'une page internet,\n"
-"assurez-vous d'avoir bien supprimé tout ce qui précède\n"
-"\n"
-"  %% ****************************************************************\n"
-"  %% Start cut-&-pastable-section\n"
-"  %% ****************************************************************\n"
+#: parser-ly-from-scheme.scm:73
+msgid "error in #{ ... #}"
+msgstr "erreur dans #{ ... #}"
 
-#: layout-beam.scm:40
+#: part-combiner.scm:931
 #, scheme-format
-msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
-msgstr "Erreur de définition de ligature : attendait (~S,~S), ~S trouvé."
+msgid "quoted music `~a' is empty"
+msgstr "il n'y a rien à reproduire dans « ~a »"
 
-#: layout-beam.scm:54
+#: ps-to-png.scm:74 ps-to-png.scm:77
 #, scheme-format
-msgid "Error in beam quanting.  Expected ~S 0, found ~S."
-msgstr "Erreur de définition de ligature : attendait ~S 0, repéré ~S."
+msgid "Copying `~a' to `~a'..."
+msgstr "Copie de « ~a » en « ~a »..."
 
-#: define-music-types.scm:752
+#: ps-to-png.scm:79 ps-to-png.scm:81
 #, scheme-format
-msgid "symbol expected: ~S"
-msgstr "symbole requis : ~S"
+msgid "Deleting `~a'..."
+msgstr "Suppression de « ~a »..."
 
-#: define-music-types.scm:755
+#: to-xml.scm:190
 #, scheme-format
-msgid "cannot find music object: ~S"
-msgstr "impossible de trouver l'objet de type musique : ~S"
+msgid "assertion failed: ~S"
+msgstr "erreur d'assertion : ~S"
 
-#: define-music-types.scm:774
+#: translation-functions.scm:379
 #, scheme-format
-msgid "unknown repeat type `~S'"
-msgstr "type de répétition inconnu : « ~S »"
-
-#: define-music-types.scm:775
-msgid "See define-music-types.scm for supported repeats"
-msgstr ""
-"Consulter define-music-types.scm pour connaître les répétitions\n"
-" prises en charge"
+msgid "Negative fret for pitch ~a on string ~a"
+msgstr "La hauteur « ~a » sur la corde « ~a » donne un fret négatif"
 
-#: translation-functions.scm:351
+#: translation-functions.scm:384
 #, scheme-format
-msgid "Negative fret for pitch ~a on string ~a"
-msgstr "La hauteur ~a sur la corde ~a donne un fret négatif"
+msgid "Missing fret for pitch ~a on string ~a"
+msgstr "Aucun fret pour « ~a » sur la corde « ~a »"
 
-#: translation-functions.scm:402
+#: translation-functions.scm:427
 #, scheme-format
 msgid "No open string for pitch ~a"
-msgstr "Pas de corde à vide pour la hauteur ~a"
+msgstr "Pas de corde à vide pour la hauteur « ~a »"
 
-#: translation-functions.scm:417 translation-functions.scm:429
+#: translation-functions.scm:450 translation-functions.scm:462
 #, scheme-format
 msgid "Requested string for pitch requires negative fret: string ~a pitch ~a"
 msgstr ""
-"Hauteur et corde requises demandent un fret négatif :\n"
-" corde ~a hauteur ~a"
+"Hauteur et corde requises demandent un fret négatif :\n"
+" corde « ~a » hauteur « ~a »"
 
-#: translation-functions.scm:420
+#: translation-functions.scm:453
 msgid "Ignoring string request and recalculating."
 msgstr "Cette corde sera ignorée et redéfinie."
 
-#: translation-functions.scm:432
+#: translation-functions.scm:465
 msgid "Ignoring note in tablature."
 msgstr "Cette note sera ignorée dans la tablature."
 
-#: translation-functions.scm:455
+#: translation-functions.scm:490
 #, scheme-format
 msgid "No string for pitch ~a (given frets ~a)"
-msgstr "Aucune corde ne contient la hauteur ~a avec un fret ~a"
+msgstr "Aucune corde ne contient la hauteur « ~a » avec un fret « ~a »"
 
-#: translation-functions.scm:560
+#: translation-functions.scm:606
 #, scheme-format
 msgid ""
 "No label for fret ~a (on string ~a);\n"
 "only ~a fret labels provided"
 msgstr ""
-"Pas d'étiquette correspondant au fret ~a (corde de ~a) ;\n"
-"les seules disponibles sont : ~a"
-
-#: ps-to-png.scm:70
-#, scheme-format
-msgid "~a exited with status: ~S"
-msgstr "~a s'est terminé avec le statut ~S"
-
-#: define-markup-commands.scm:887
-msgid "no systems found in \\score markup, does it have a \\layout block?"
-msgstr "pas de système trouvé dans le bloc \\score, contient-il un bloc \\layout ?"
-
-#: define-markup-commands.scm:2614
-#, scheme-format
-msgid "Cannot find glyph ~a"
-msgstr "impossible de trouver le glyphe ~a"
-
-#: define-markup-commands.scm:3040
-#, scheme-format
-msgid "no brace found for point size ~S "
-msgstr "il n'y a pas d'accolade qui fasse ~S points"
-
-#: define-markup-commands.scm:3041
-#, scheme-format
-msgid "defaulting to ~S pt"
-msgstr "application de la taille par défaut (~S pt)"
-
-#: define-markup-commands.scm:3194
-#, scheme-format
-msgid "not a valid duration string: ~a"
-msgstr "chaîne de durée invalide : ~a"
-
-#: documentation-lib.scm:59
-#, scheme-format
-msgid "Processing ~S..."
-msgstr "Traitement de ~S..."
-
-#: documentation-lib.scm:176
-#, scheme-format
-msgid "Writing ~S..."
-msgstr "Écriture de ~S..."
-
-#: documentation-lib.scm:188
-#, scheme-format
-msgid "cannot find description for property `~S' (~S)"
-msgstr ""
-"impossible de trouver une description de la propriété « ~S »\n"
-" (~S)"
-
-#: documentation-lib.scm:209
-#, scheme-format
-msgid "cannot find description for property ~S (~S)"
-msgstr ""
-"impossible de trouver une description de la propriété ~S\n"
-" (~S)"
-
-#: ly-syntax-constructors.scm:65
-#, scheme-format
-msgid "~a function cannot return ~a"
-msgstr "La fonction ~a ne peut retourner ~a."
-
-#: ly-syntax-constructors.scm:74
-#, scheme-format
-msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
-msgstr ""
-"type d'argument erroné pour ~a.\n"
-" Attendait ~a, ~s trouvé"
-
-#: ly-syntax-constructors.scm:187
-#, scheme-format
-msgid "Invalid property operation ~a"
-msgstr "Opération de propriété invalide : ~a"
+"Pas d'étiquette correspondant au fret « ~a » (corde de « ~a ») ;\n"
+"  les seules disponibles sont : ~a"