]> git.donarmstrong.com Git - lilypond.git/blobdiff - po/fr.po
Imported Upstream version 2.16.0
[lilypond.git] / po / fr.po
index d46f1a4313022c5a20e57da4c28bdb00bc0f123a..e76c0f828dd143f0f5cc1a0e5db539a1da8c7fe7 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -3,14 +3,14 @@
 # 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-2011
+# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2012
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.13.53\n"
+"Project-Id-Version: lilypond 2.15.95\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2011-03-02 10:34+0100\n"
-"PO-Revision-Date: 2011-04-06 19:38+0200\n"
+"POT-Creation-Date: 2012-08-11 14:29+0200\n"
+"PO-Revision-Date: 2012-08-14 19:48+0200\n"
 "Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
 "Language: fr\n"
@@ -19,64 +19,123 @@ msgstr ""
 "Content-Transfer-Encoding: 8bit\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:170
+msgid "cannot find \\begin{document} in LaTeX document"
+msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+
+#: book_latex.py:188
 #, 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:209 book_texinfo.py:228
+msgid "Unable to auto-detect default settings:\n"
+msgstr "Impossible de détecter automatiquement les réglages par défaut :\n"
+
+#: book_latex.py:221 book_texinfo.py:240
 #, 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:519
+#: book_snippets.py:409
 #, 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:521
+#: book_snippets.py:411
 #, 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:524
+#: book_snippets.py:414
 #, 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:526
+#: book_snippets.py:416
 #, python-format
 msgid "compatibility mode translation: %s"
-msgstr "bascule en mode de compatibilité : %s"
+msgstr "bascule en mode de compatibilité : %s"
 
-#: book_snippets.py:544
+#: book_snippets.py:533
 #, 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:624
+#, python-format
+msgid "Missing files: %s"
+msgstr "Fichier absent : %s"
+
+#: book_snippets.py:654
+#, python-format
+msgid "Could not overwrite file %s"
+msgstr "Impossible d'écraser le fichier « %s »"
 
-#: book_snippets.py:736
+#: book_snippets.py:741
 #, python-format
-msgid "Opening filter `%s'\n"
-msgstr "Ouverture du filtre « %s »\n"
+msgid "Running through filter `%s'"
+msgstr "Passage par le filtre « %s »"
 
-#: book_snippets.py:756
+#: book_snippets.py:761
 #, python-format
 msgid "`%s' failed (%d)"
-msgstr "« %s » a échoué (%d)"
+msgstr "« %s » a échoué (%d)"
 
-#: book_snippets.py:757
+#: book_snippets.py:762
 msgid "The error log is as follows:"
-msgstr "Voici le journal d'erreurs :"
+msgstr "Voici le journal d'erreurs :"
+
+#: book_snippets.py:882
+#, python-format
+msgid "Converting MusicXML file `%s'...\n"
+msgstr "Lecture du fichier MusicXML « %s »...\n"
+
+#: book_snippets.py:909
+#, 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."
+
+#: book_snippets.py:922
+#, 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."
+
+#. 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
+#, 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"
 
 #: convertrules.py:12
 #, python-format
-msgid "Not smart enough to convert %s"
-msgstr "Pas assez d'intelligence pour convertir %s"
+msgid "Not smart enough to convert %s."
+msgstr "Pas assez intelligent pour convertir « %s »."
 
 #: convertrules.py:13
 msgid "Please refer to the manual for details, and update manually."
@@ -89,111 +148,115 @@ msgstr ""
 msgid "%s has been replaced by %s"
 msgstr "%s a été remplacé par %s"
 
-#: convertrules.py:24 lilylib.py:78 musicexp.py:17 convert-ly.py:64 warn.cc:66
-#: input.cc:109
+#: convertrules.py:24 lilylib.py:131 warn.cc:223
 #, c-format, python-format
 msgid "warning: %s"
 msgstr "Avertissement : %s"
 
-#: convertrules.py:49 convertrules.py:99
+#: convertrules.py:49 convertrules.py:94
 msgid "\\header { key = concat + with + operator }"
 msgstr "\\header { clé = concat + avec + opérateur }"
 
-#: convertrules.py:58
+#: convertrules.py:56
 #, python-format
 msgid "deprecated %s"
 msgstr "%s est obsolète"
 
-#: convertrules.py:70
+#: convertrules.py:65
 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:86 convertrules.py:1905 convertrules.py:2084
-#: convertrules.py:2236 convertrules.py:2566 convertrules.py:2862
+#: convertrules.py:81 convertrules.py:1855 convertrules.py:2031
+#: convertrules.py:2174 convertrules.py:2505 convertrules.py:2800
+#: convertrules.py:3150
 msgid "bump version for release"
 msgstr "sauter de version pour mise à jour"
 
-#: convertrules.py:103
+#: convertrules.py:97
 msgid "new \\header format"
 msgstr "nouveau format de \\header"
 
-#: convertrules.py:132
+#: convertrules.py:124
 msgid "\\translator syntax"
 msgstr "syntaxe de \\translator"
 
-#: convertrules.py:184
+#: convertrules.py:175
 msgid "\\repeat NUM Music Alternative -> \\repeat FOLDSTR Music Alternative"
 msgstr "\\repeat NUM Musique Alternative -> \\repeat FOLDSTR Musique Alternative"
 
-#: convertrules.py:216 convertrules.py:699 convertrules.py:1383
-#: convertrules.py:2378
+#: convertrules.py:205 convertrules.py:678 convertrules.py:1350
+#: convertrules.py:2317
 #, python-format
 msgid "deprecate %s"
 msgstr "%s obsolète"
 
-#: convertrules.py:290
+#: convertrules.py:279
 #, python-format
 msgid "deprecate %s "
 msgstr "%s obsolète"
 
-#: convertrules.py:319
+#: convertrules.py:305
 msgid "new \\notenames format"
 msgstr "nouveau format de \\notenames"
 
-#: convertrules.py:337
+#: convertrules.py:321
 msgid "new tremolo format"
 msgstr "nouveau format de tremolo"
 
-#: convertrules.py:342
+#: convertrules.py:325
 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:395
-msgid "change property definiton case (eg. onevoice -> oneVoice)"
-msgstr "modifier la casse pour définir une propriété (p.ex. onevoice -> oneVoice)"
+#: convertrules.py:376
+msgid "change property definition case (eg. onevoice -> oneVoice)"
+msgstr "modifier la casse pour définir une propriété (par ex. onevoice -> oneVoice)"
 
-#: convertrules.py:457
+#: convertrules.py:437
 msgid "new \\textscript markup text"
 msgstr "nouvelle étiquette de texte \\textscript"
 
-#: convertrules.py:530
+#: convertrules.py:509
 #, python-format
 msgid "identifier names: %s"
-msgstr "Nom des identificateurs : %s"
+msgstr "Nom des identificateurs : %s"
 
-#: convertrules.py:569
+#: convertrules.py:548
 msgid "point-and-click argument changed to procedure."
 msgstr "L'argument de point-and-click a été changé en procédure."
 
-#: convertrules.py:611
+#: convertrules.py:590
 msgid "semicolons removed"
 msgstr "Suppression des points-virgules"
 
 #. 40 ?
-#: convertrules.py:654
+#: convertrules.py:633
 #, python-format
 msgid "%s property names"
 msgstr "%s noms de propriété"
 
-#: convertrules.py:724
+#: convertrules.py:703
 msgid "automaticMelismata turned on by default"
 msgstr "automaticMelismata est activé par défaut."
 
-#: convertrules.py:963 convertrules.py:1682 convertrules.py:1942
-#: convertrules.py:2189
+#: convertrules.py:708
+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
 #, python-format
 msgid "remove %s"
 msgstr "Retrait de %s"
 
-#: convertrules.py:1001 convertrules.py:1005
+#: convertrules.py:977 convertrules.py:980
 msgid "cluster syntax"
 msgstr "Syntaxe de cluster"
 
-#: convertrules.py:1014
+#: convertrules.py:987
 msgid "new Pedal style syntax"
 msgstr "Nouvelle syntaxe du style de Pedal"
 
-#: convertrules.py:1273
+#: convertrules.py:1246
 msgid ""
 "New relative mode,\n"
 "Postfix articulations, new text markup syntax, new chord syntax."
@@ -201,30 +264,30 @@ msgstr ""
 "Nouveau mode relatif, articulations Postfix,\n"
 "nouvelle syntaxe des étiquettes de texte, nouvelle syntaxe d'accord."
 
-#: convertrules.py:1286
+#: convertrules.py:1259
 msgid "Remove - before articulation"
 msgstr "Retrait du - précédant l'articulation"
 
-#: convertrules.py:1324
+#: convertrules.py:1294
 #, python-format
 msgid "%s misspelling"
 msgstr "%s mal orthographié"
 
-#: convertrules.py:1346
+#: convertrules.py:1313
 msgid "Swap < > and << >>"
 msgstr "Interchanger < > et << >>"
 
-#: convertrules.py:1349
+#: convertrules.py:1316
 msgid "attempting automatic \\figures conversion.  Check results!"
 msgstr ""
-"tentative de convesion automatique des \\figures. \n"
-"Résultats à vérifier !"
+"tentative de conversion automatique des \\figures.\n"
+"Résultats à vérifier !"
 
-#: convertrules.py:1400
+#: convertrules.py:1362
 msgid "Use Scheme code to construct arbitrary note events."
 msgstr "Utilisation de code Scheme pour construire des événements note arbitraires."
 
-#: convertrules.py:1407
+#: convertrules.py:1369
 msgid ""
 "use symbolic constants for alterations,\n"
 "remove \\outputproperty, move ly:verbose into ly:get-option"
@@ -232,7 +295,7 @@ msgstr ""
 "Utilisation de constantes symboliques pour les altérations,\n"
 "suppression de \\outputproperty, ly:verbose devient ly:get-option"
 
-#: convertrules.py:1432
+#: convertrules.py:1394
 #, python-format
 msgid ""
 "\\outputproperty found,\n"
@@ -242,14 +305,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:1446
+#: convertrules.py:1406
 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"
@@ -257,22 +320,22 @@ msgid ""
 "* calls of ly:make-pitch and ly:pitch-alteration\n"
 "* keySignature settings made with \\property\n"
 msgstr ""
-"Pour pouvoir tenir compte des quarts de ton en codage Scheme, \n"
+"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:1493
+#: convertrules.py:1449
 msgid "removal of automaticMelismata; use melismaBusyProperties instead."
 msgstr "Suppression de automaticMelismata au profit de melismaBusyProperties."
 
-#: convertrules.py:1600
+#: convertrules.py:1556
 msgid "\\partcombine syntax change to \\newpartcombine"
 msgstr "La syntaxe de \\partcombine évolue avec \\newpartcombine"
 
-#: convertrules.py:1628
+#: convertrules.py:1581
 msgid ""
 "Drum notation changes, Removing \\chordmodifiers, \\notenames.\n"
 "Harmonic notes. Thread context removed. Lyrics context removed."
@@ -280,61 +343,62 @@ msgstr ""
 "Changements de notation pour percussions. Suppression de \\chordmodifiers\n"
 "et \\notenames. Notes harmoniques. Contextes Thread et Lyrics supprimés."
 
-#: convertrules.py:1632
+#: convertrules.py:1585
 msgid "Drums found. Enclose drum notes in \\drummode"
 msgstr "Il y a des percussions. Encadrer leurs notes dans un \\drummode."
 
-#: convertrules.py:1643 convertrules.py:1650 convertrules.py:1661
+#: convertrules.py:1596 convertrules.py:1603 convertrules.py:1614
 #, 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:1643
+#: convertrules.py:1596
 msgid "Drum notation"
 msgstr "Notation de percussions"
 
-#: convertrules.py:1702
+#: convertrules.py:1655
 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:1728
+#: convertrules.py:1681
 msgid "Property setting syntax in \\translator{ }"
 msgstr "Syntaxe pour régler une propriété dans \\translator{ }"
 
-#: convertrules.py:1767
+#: convertrules.py:1720
 msgid "Scheme grob function renaming"
 msgstr "Renommage de fonction grob Scheme"
 
-#: convertrules.py:1780
+#: convertrules.py:1731 convertrules.py:2138 convertrules.py:2142
+#: convertrules.py:2708
 #, python-format
-msgid "use %s"
-msgstr "Utilisation de %s"
+msgid "Use %s\n"
+msgstr "Utilisation de %s\n"
 
-#: convertrules.py:1797
+#: convertrules.py:1747
 msgid "More Scheme function renaming"
 msgstr "Renommage d'autres fonctions Scheme"
 
-#: convertrules.py:1924
+#: convertrules.py:1871
 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:2010
+#: convertrules.py:1957
 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:2048
+#: convertrules.py:1995
 msgid ""
 "staff size should be changed at top-level\n"
 "with\n"
@@ -348,40 +412,40 @@ msgstr ""
 "  #(set-global-staff-size <HAUTEUR-DE-PORTÉE-EN-POINTS>)\n"
 "\n"
 
-#: convertrules.py:2068
+#: convertrules.py:2015
 msgid "regularize other identifiers"
 msgstr "Normalisation d'autres identifiants"
 
-#: convertrules.py:2136
+#: convertrules.py:2083
 msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
 msgstr "\\encoding : recodage latin1..utf-8. Suppression de ly:point-and-click"
 
-#: convertrules.py:2149
+#: convertrules.py:2094
 msgid "LilyPond source must be UTF-8"
 msgstr "Le fichier source LilyPond doit être codé en UTF-8."
 
-#: convertrules.py:2152
+#: convertrules.py:2097
 msgid "Try the texstrings backend"
 msgstr "Essayer le moteur texstrings (texstrings backend)."
 
-#: convertrules.py:2155
+#: convertrules.py:2100
 #, python-format
 msgid "Do something like: %s"
-msgstr "Faites quelque chose comme : %s"
+msgstr "Faites quelque chose comme : %s"
 
-#: convertrules.py:2158
+#: convertrules.py:2103
 msgid "Or save as UTF-8 in your editor"
-msgstr "ou sauvegardez en format UTF-8 à l'aide de votre éditeur"
+msgstr "ou sauvegardez au format UTF-8 à l'aide de votre éditeur"
 
-#: convertrules.py:2212
+#: convertrules.py:2153
 msgid "warn about auto beam settings"
 msgstr "Avertissement au sujet des ligatures automatiques"
 
-#: convertrules.py:2217
+#: convertrules.py:2157
 msgid "auto beam settings"
 msgstr "réglage des ligatures automatiques"
 
-#: convertrules.py:2219
+#: convertrules.py:2158
 msgid ""
 "\n"
 "Auto beam settings must now specify each interesting moment in a measure\n"
@@ -391,90 +455,90 @@ 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:2333
+#: convertrules.py:2271
 msgid "verticalAlignmentChildCallback has been deprecated"
 msgstr "verticalAlignmentChildCallback est désuet"
 
-#: convertrules.py:2337
+#: convertrules.py:2276
 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:2358
+#: convertrules.py:2297
 msgid "Use grob closures iso. XY-offset-callbacks."
 msgstr "Utilisation des clôtures de grob comme avec XY-offset-callbacks."
 
-#: convertrules.py:2420
+#: convertrules.py:2359
 msgid "foobar -> foo-bar for \\paper, \\layout"
 msgstr "taratata -> tara-tata pour \\paper et \\layout"
 
-#: convertrules.py:2530
+#: convertrules.py:2469
 msgid "deprecate \\tempo in \\midi"
 msgstr "\\tempo au sein d'une section \\midi est obsolète"
 
-#: convertrules.py:2583
+#: convertrules.py:2522
 msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
 msgstr "cautionary-style est désuet. Utilisation des propriétés AccidentalCautionary."
 
-#: convertrules.py:2596
+#: convertrules.py:2535
 msgid "Rename accidental glyphs, use glyph-name-alist."
 msgstr "Renommage des glyphes d'altération, utilisation de glyph-name-alist."
 
-#: convertrules.py:2651
-msgid "edge-text settings for TextSpanner."
-msgstr "réglages des limites de texte pour TextSpanner."
+#: convertrules.py:2590
+msgid "edge-text settings for TextSpanner"
+msgstr "réglages des limites de texte pour TextSpanner"
 
-#: convertrules.py:2652
+#: convertrules.py:2591
 #, python-format
 msgid ""
 "Use\n"
 "\n"
 "%s"
 msgstr ""
-"Utiliser dorénavant \n"
+"Utiliser dorénavant\n"
 "\n"
 "%s"
 
-#: convertrules.py:2685
+#: convertrules.py:2624
 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:2686
+#: convertrules.py:2625
 msgid "NonMusicalPaperColumn #'line-break-system-details\n"
 msgstr "NonMusicalPaperColumn #'line-break-system-details\n"
 
-#: convertrules.py:2687
+#: convertrules.py:2626
 msgid "to set fixed distances between staves.\n"
 msgstr "pour définir un espacement fixe des systèmes.\n"
 
-#: convertrules.py:2699
+#: convertrules.py:2638
 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:2705
-msgid "all settings related to dashed lines.\n"
-msgstr "tous les réglages concernant les lignes pointillées.\n"
+#: convertrules.py:2644
+msgid "all settings related to dashed lines"
+msgstr "tous les réglages concernant les lignes pointillées"
 
-#: convertrules.py:2706
+#: convertrules.py:2645
 msgid "Use \\override ... #'style = #'line for solid lines and\n"
 msgstr "Utiliser \\override ... #'style = #'line pour des lignes pleines, et\n"
 
-#: convertrules.py:2707
+#: convertrules.py:2646
 msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
 msgstr "\t\\override ... #'style = #'dashed-line pour des lignes pointillées."
 
-#: convertrules.py:2743
+#: convertrules.py:2682
 msgid ""
 "metronomeMarkFormatter uses text markup as second argument,\n"
 "fret diagram properties moved to fret-diagram-details."
 msgstr ""
 "metronomeMarkFormatter prend une étiquette en deuxième argument,\n"
-"les propriétés de tablature sont désormais dans fret-diagram-details."
+"les propriétés des diagrammes de fret sont désormais dans fret-diagram-details."
 
-#: convertrules.py:2748
+#: convertrules.py:2688
 msgid "metronomeMarkFormatter got an additional text argument.\n"
 msgstr "metronomeMarkFormatter prend un argument textuel suplémentaire.\n"
 
-#: convertrules.py:2749
+#: convertrules.py:2689
 #, python-format
 msgid ""
 "The function assigned to Score.metronomeMarkFunction now uses the signature\n"
@@ -483,43 +547,48 @@ msgstr ""
 "La fonction assignée à Score.metronomeMarkFunction utilise la signature\n"
 "%s"
 
-#: convertrules.py:2812
-msgid "\\put-adjacent argument order.\n"
-msgstr "ordre de l'argument \\put-adjacent\n"
+#: convertrules.py:2707
+#, python-format
+msgid "%s in fret-diagram properties"
+msgstr "%s va dans les propriétés de fret-diagram"
+
+#: convertrules.py:2751
+msgid "\\put-adjacent argument order"
+msgstr "ordre de l'argument \\put-adjacent"
 
-#: convertrules.py:2813
+#: convertrules.py:2752
 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:2814
+#: convertrules.py:2753
 msgid "\\put-adjacent axis dir markup markup."
 msgstr "\\put-adjacent axe direction étiquette étiquette."
 
-#: convertrules.py:2845
-msgid "re-definition of InnerStaffGroup.\n"
-msgstr "Redéfinition de InnerStaffGroup.\n"
+#: convertrules.py:2784
+msgid "re-definition of InnerStaffGroup"
+msgstr "Redéfinition de InnerStaffGroup"
 
-#: convertrules.py:2851
-msgid "re-definition of InnerChoirStaff.\n"
-msgstr "Redéfinition de InnerChoirStaff.\n"
+#: convertrules.py:2789
+msgid "re-definition of InnerChoirStaff"
+msgstr "Redéfinition de InnerChoirStaff"
 
-#: convertrules.py:2861
+#: convertrules.py:2799
 msgid "Syntax changes for \\addChordShape and \\chord-shape"
 msgstr "Changement de syntaxe pour \\addChordShape et \\chord-shape"
 
-#: convertrules.py:2866
+#: convertrules.py:2804
 msgid "stringTuning must be added to addChordShape call.\n"
 msgstr "stringTuning est requis lors de l'appel à addChordShape.\n"
 
-#: convertrules.py:2872
+#: convertrules.py:2809
 msgid "stringTuning must be added to chord-shape call.\n"
 msgstr "stringTuning est requis lors de l'appel à chord-shape.\n"
 
-#: convertrules.py:2879
+#: convertrules.py:2815
 msgid "Remove oldaddlyrics"
 msgstr "Suppression de oldaddlyrics"
 
-#: convertrules.py:2883
+#: convertrules.py:2819
 msgid ""
 "oldaddlyrics is no longer supported. \n"
 "         Use addlyrics or lyrsicsto instead.\n"
@@ -527,19 +596,19 @@ msgstr ""
 "oldaddlyrics n'est désormais plus pris en charge.\n"
 "         Utilisez maintenant addlyrics ou lyricsto.\n"
 
-#: convertrules.py:2889
+#: convertrules.py:2825
 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:2894
+#: convertrules.py:2830
 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:2900
+#: convertrules.py:2836
 msgid ""
 "\\bar \".\" now produces a thick barline\n"
 "ly:hairpin::after-line-breaking -> ly:spanner::kill-zero-spanned-time\n"
@@ -549,15 +618,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:2906
+#: convertrules.py:2842
 msgid "\\bar \".\" now produces a thick barline.\n"
 msgstr "\\bar \".\" produit désormais une barre épaisse.\n"
 
-#: convertrules.py:2912
+#: 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:2917
+#: convertrules.py:2853
 msgid ""
 "Autobeaming rules have changed.  override-auto-beam-setting and\n"
 "revert-auto-beam-setting have been eliminated.\n"
@@ -571,54 +640,46 @@ 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:2931
-msgid ""
-"override-auto-beam-setting.\n"
-"   Autobeam settings are now overriden with \\overrideBeamSettings.\n"
+#: convertrules.py:2867
+msgid "    Autobeam settings are now overriden with \\overrideBeamSettings.\n"
 msgstr ""
-"override-auto-beam-setting.\n"
 "   L'introduction d'une dérogation aux ligatures automatiques se fait\n"
 "désormais avec \\overrideBeamSettings.\n"
 
-#: convertrules.py:2936
-msgid ""
-"override-auto-beam-setting.\n"
-"   Autobeam settings are now reverted with \\revertBeamSettings.\n"
+#: convertrules.py:2872
+msgid "    Autobeam settings are now reverted with \\revertBeamSettings.\n"
 msgstr ""
-"override-auto-beam-setting.\n"
 "   La suppression d'une dérogation aux ligatures automatiques se fait\n"
 "   désormais avec \\revertBeamSettings.\n"
 
-#: convertrules.py:2941
+#: convertrules.py:2878
 msgid ""
-"beatGrouping. \n"
-"   beatGrouping with a specified context must now be accomplished with\n"
+"    beatGrouping with a specified context must now be accomplished with\n"
 "   \\overrideBeamSettings.\n"
 msgstr ""
-"beatGrouping.\n"
 "   beatGrouping dans un contexte spécifique s'accomplit désormais avec\n"
 "   \\overrideBeamSettings.\n"
 
-#: convertrules.py:2947
+#: convertrules.py:2884
 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:2958
+#: convertrules.py:2895
 msgid ""
 "Remove obsolete engravers/translators: Note_swallow_translator,\n"
 "Rest_swallow_translator, Skip_event_swallow_translator, Swallow_engraver,\n"
@@ -630,78 +691,63 @@ msgstr ""
 "Swallow_performer et String_number_engraver.\n"
 "Apparition de nouvelles variables pour l'espacement vertical."
 
-#: convertrules.py:2989
-msgid "minimum-Y-extent; vertical spacing no longer depends on the Y-extent of a VerticalAxisGroup.\n"
-msgstr "minimum-Y-extent : l'espacement vertical ne dépend plus du Y-extent d'un VerticalAxisGroup.\n"
+#: convertrules.py:2926
+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:2995
+#: convertrules.py:2932
 msgid "Unify fetaNumber and fetaDynamic encodings"
 msgstr "Uniformisation des encodages de fetaNumber et fetaDynamic."
 
-#: convertrules.py:3000
+#: convertrules.py:2937
 msgid "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
 msgstr "\\RemoveEmpty*StaffContext -> \\*Staff \\RemoveEmptyStaves"
 
-#: convertrules.py:3011
+#: convertrules.py:2948
 msgid "\\cresc etc. are now postfix operators"
 msgstr "\\cresc etc. sont désormais des opérateurs postfix"
 
-#: convertrules.py:3017
+#: convertrules.py:2960
 msgid ""
 "Eliminate beamSettings, beatLength, \\setBeatGrouping, \\overrideBeamSettings and \\revertBeamSettings.\n"
 "\"accordion.accEtcbase\" -> \"accordion.etcbass\""
 msgstr ""
-"Élimination de beamSettings, beatLength, \\setBeatGrouping, \n"
+"Élimination de beamSettings, beatLength, \\setBeatGrouping,\n"
 "\\overrideBeamSettings et \\revertBeamSettings.\n"
 "\"accordion.accEtcbase\" -> \"accordion.etcbass\""
 
-#: convertrules.py:3035
-msgid "\\overrideBeamSettings.  Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
-msgstr ""
-"\\overrideBeamSettings.\n"
-"Utiliser \\set beamExceptions ou \\overrideTimeSignatureSettings.\n"
-
-#: convertrules.py:3039
-msgid "\\revertBeamSettings. Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
-msgstr ""
-"\\revertBeamSettings.\n"
-"Utiliser \\set beamExceptions ou \\revertTimeSignatureSettings.\n"
+#: convertrules.py:2978
+msgid "Use \\set beamExceptions or \\overrideTimeSignatureSettings.\n"
+msgstr "Utiliser \\set beamExceptions ou \\overrideTimeSignatureSettings.\n"
 
-#: convertrules.py:3043
-msgid "beamSettings. Use baseMoment, beatStructure, and beamExceptions.\n"
-msgstr ""
-"beamSettings.\n"
-"Utiliser baseMoment, beatStructure et beamExceptions.\n"
+#: convertrules.py:2982
+msgid "Use \\set beamExceptions or \\revertTimeSignatureSettings.\n"
+msgstr "Utiliser \\set beamExceptions ou \\revertTimeSignatureSettings.\n"
 
-#: convertrules.py:3047
-msgid "beatLength. Use baseMoment and beatStructure.\n"
-msgstr ""
-"beatLength.\n"
-"Utiliser baseMoment et beatStructure.\n"
+#: convertrules.py:2986
+msgid "Use baseMoment, beatStructure, and beamExceptions.\n"
+msgstr "Utiliser baseMoment, beatStructure et beamExceptions.\n"
 
-#: convertrules.py:3051
-msgid "setbeatGrouping. Use baseMoment and beatStructure.\n"
-msgstr ""
-"setbeatGrouping.\n"
-"Utiliser baseMoment et beatStructure.\n"
+#: convertrules.py:2990 convertrules.py:2994
+msgid "Use baseMoment and beatStructure.\n"
+msgstr "Utiliser baseMoment et beatStructure.\n"
 
-#: convertrules.py:3056
+#: convertrules.py:2999
 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 ""
-"Diagrammes pour vents : taille, épaisseur et graphique deviennent des \n"
-"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:3061
-msgid "woodwind-diagrams.  Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
+#: convertrules.py:3004
+msgid "Move size, thickness, and graphic to properties.  Argument should be just the key list.\n"
 msgstr ""
-"Diagrammes pour vents (woodwind-diagrams). Taille, épaisseur et graphique\n"
-"sont des propriétés. L'argument devrait ne contenir que la liste des clés.\n"
+"Taille, épaisseur et graphique sont des propriétés.\n"
+"L'argument devrait ne contenir que la liste des clés.\n"
 
-#: convertrules.py:3069
+#: convertrules.py:3012
 msgid ""
 "Rename vertical spacing variables.\n"
 "Add fretboard-table argument to savePredefinedFretboard."
@@ -709,23 +755,23 @@ msgstr ""
 "Renommage des variables d'espacement vertical.\n"
 "Ajout de l'argument fretboard-table à savePredefinedFretboard."
 
-#: convertrules.py:3087
+#: convertrules.py:3030
 msgid "Rename vertical spacing grob properties."
 msgstr "Renommage des propriétés d'objet en matière d'espacement vertical."
 
-#: convertrules.py:3103
+#: convertrules.py:3046
 msgid "Remove \\paper variables head-separation and foot-separation."
 msgstr "Suppression des variables de \\paper head-separation et foot-separation."
 
-#: convertrules.py:3108
+#: convertrules.py:3050
 msgid "Adjust settings for top-system-spacing instead.\n"
 msgstr "Ajustez plutôt le réglage de top-system-spacing.\n"
 
-#: convertrules.py:3113
+#: convertrules.py:3054
 msgid "Adjust settings for last-bottom-spacing instead.\n"
 msgstr "Ajustez plutôt le réglage de last-bottom-spacing.\n"
 
-#: convertrules.py:3119
+#: convertrules.py:3060
 msgid ""
 "Rename space to basic-distance in various spacing alists.\n"
 "Remove HarmonicParenthesesItem grob."
@@ -733,531 +779,386 @@ msgstr ""
 "space est renommé basic-distance dans diverses variables liées à l'espacement.\n"
 "Suppression du grob HarmonicParenthesesItem."
 
-#: convertrules.py:3127
+#: convertrules.py:3067
 msgid "HarmonicParenthesesItem has been eliminated.\n"
 msgstr "Élimination de HarmonicParenthesesItem.\n"
 
-#: convertrules.py:3128
+#: convertrules.py:3068
 msgid "Harmonic parentheses are part of the TabNoteHead grob.\n"
 msgstr "Les parenthèses harmoniques sont attachées au grob TabNoteHead.\n"
 
-#: convertrules.py:3133
+#: convertrules.py:3073
 msgid "Remove context from overrideTimeSignatureSettings and revertTimeSignatureSettings.\n"
 msgstr "Suppression du contexte dans overrideTimeSignatureSettings et revertTimeSignatureSettings.\n"
 
-#: convertrules.py:3140
+#: convertrules.py:3080
 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:3180
-msgid "Vertical spacing changes might affect user-defined contexts.  "
+#: convertrules.py:3123
+msgid "Vertical spacing changes might affect user-defined contexts."
 msgstr ""
 "Les modifications apportées à l'espacement vertical peuvent mettre en\n"
-"péril les contextes personnalisés."
+"péril certains contextes personnalisés."
 
-#: convertrules.py:3185
+#: convertrules.py:3129
 msgid "Replace bar-size with bar-extent."
 msgstr "bar-size devient bar-extent."
 
-#: convertrules.py:3197
+#: convertrules.py:3141
 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
+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
+msgid "Handling of non-automatic footnotes."
+msgstr "Gestion des notes de bas de page non automatisée."
+
+#: convertrules.py:3159
+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
+msgid "Change in internal property for MultiMeasureRest"
+msgstr "MultiMeasureRest : modification des propriétés internes."
+
+#: convertrules.py:3168
+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-up-to-longer-rest,\n"
+"round-up-exceptions et usable-duration-logs.\n"
+
+#: convertrules.py:3173
+msgid "Creation of a Flag grob and moving of certain Stem properties to this grob"
+msgstr "Déplacement de certaine propriétés de Stem vers le nouvel objet Flag"
 
-#: convertrules.py:3201
-msgid "woodwind-diagrams.  Clarinet fingering changed to reflect actual anatomy of instrument.\n"
-msgstr "Diagrammes pour vents : doigtés plus adaptés à la clarinette actuelle.\n"
+#: convertrules.py:3209
+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"
 
-#: book_base.py:24
+#: convertrules.py:3210
+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 désormais\n"
+"gérées les ligatures tronquées.\n"
+
+#: convertrules.py:3368
+msgid "beamExceptions controls whole-measure beaming."
+msgstr "Une ligature sur la mesure est gérée par beamExceptions"
+
+#: 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:161
-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
+#, python-format
+msgid "Setting loglevel to %s"
+msgstr "Niveau de journalisation fixé à %s"
+
+#: lilylib.py:99
+#, python-format
+msgid "Unknown or invalid loglevel '%s'"
+msgstr "« %s » n'est pas un niveau de journalisation reconnu."
 
-#: lilylib.py:81 musicxml.py:13 convert-ly.py:67 warn.cc:72 input.cc:115
-#: input.cc:123
+#: lilylib.py:128 warn.cc:211
 #, c-format, python-format
 msgid "error: %s"
 msgstr "Erreur : %s"
 
-#: lilylib.py:124 lilylib.py:175
+#: lilylib.py:185
+#, python-format
+msgid "Processing %s.ly"
+msgstr "Traitement de « %s.ly »"
+
+#: lilylib.py:189 lilylib.py:250
 #, python-format
 msgid "Invoking `%s'"
-msgstr "Appel de « %s »"
+msgstr "Appel de « %s »"
 
-#: lilylib.py:126 lilylib.py:177
+#: lilylib.py:191 lilylib.py:252
 #, python-format
 msgid "Running %s..."
 msgstr "Exécution de %s..."
 
-#: lilylib.py:253
+#: lilylib.py:328
 #, python-format
 msgid "Usage: %s"
 msgstr "Utilisation : %s"
 
-#: musicexp.py:216 musicexp.py:221
+#: musicexp.py:224 musicexp.py:229
 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:483
+#: musicexp.py:491
 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:669
+#: musicexp.py:677
 #, 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:678
+#: musicexp.py:686
 msgid "encountered repeat without body"
 msgstr "reprise vide détectée"
 
 #. no self.elements!
-#: musicexp.py:848
+#: musicexp.py:856
 #, 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:1010
+#: musicexp.py:1018
 #, 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:1468
+#: musicexp.py:1476
 #, 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:358
+#: musicxml.py:361
 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:376
+#: musicxml.py:379
 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:432
+#: musicxml.py:435
 #, 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"
+"Octave d'altération indiquée pour une altération numéro %s inexistante ;\n"
+"index d'altération disponibles : 1 à %s"
 
-#: musicxml.py:520
+#: musicxml.py:523
 #, python-format
 msgid "Unable to find instrument for ID=%s\n"
 msgstr "Aucun instrument ne correspond à l'ID %s\n"
 
-#: book_latex.py:156
-msgid "cannot find \\begin{document} in LaTeX document"
-msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
+#: abc2ly.py:1376 convert-ly.py:81 lilypond-book.py:122 midi2ly.py:1044
+#, python-format
+msgid "%s [OPTION]... FILE"
+msgstr "%s [OPTIONS]... FICHIER"
 
-#: musicxml2ly.py:223
+#: abc2ly.py:1377
 #, python-format
-msgid "Encountered file created by %s, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgid ""
+"abc2ly converts ABC music files (see\n"
+"%s) to LilyPond input.\n"
 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."
+"abc2ly convertit les fichiers musicaux ABC (voir\n"
+"%s) au format LilyPond.\n"
 
-#: musicxml2ly.py:239 musicxml2ly.py:241
-#, python-format
-msgid "Unprocessed PartGroupInfo %s encountered"
-msgstr "PartGroupInfo %s détecté, mais non traité"
+#: abc2ly.py:1385 convert-ly.py:88 etf2ly.py:1208 lilypond-book.py:231
+#: midi2ly.py:1095 musicxml2ly.py:2590 main.cc:174
+msgid "show version number and exit"
+msgstr "affiche le numéro de version et quitte"
 
-#: musicxml2ly.py:494
-#, 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)"
+#: abc2ly.py:1388 convert-ly.py:92 etf2ly.py:1204 lilypond-book.py:140
+#: midi2ly.py:1062 musicxml2ly.py:2572 main.cc:153
+msgid "show this help and exit"
+msgstr "visualiser cette aide et quitter"
 
-#: musicxml2ly.py:514
-#, python-format
-msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
-msgstr ""
-"Durée rationnelle au dénominateur de %s détectée ;\n"
-"impossible de traduire en durée LilyPond"
+#: abc2ly.py:1391 etf2ly.py:1209 midi2ly.py:1071
+msgid "write output to FILE"
+msgstr "produit la sortie dans le FICHIER"
 
-#: musicxml2ly.py:761
-msgid "Unable to extract key signature!"
-msgstr "Impossible de déterminer l'armure."
+#: abc2ly.py:1394
+msgid "be strict about success"
+msgstr "être strict sur la réussite"
 
-#: musicxml2ly.py:788
-#, python-format
-msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+#: abc2ly.py:1397
+msgid "preserve ABC's notion of beams"
+msgstr "préserver la notion de ligature propre à ABC"
+
+#: abc2ly.py:1400
+msgid "suppress progress messages"
+msgstr "n'affiche pas les messages de progression"
+
+#. 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:1403 convert-ly.py:146 etf2ly.py:1218 lilypond-book.py:258
+#: midi2ly.py:1107 musicxml2ly.py:2674 main.cc:285
+#, c-format, python-format
+msgid "Report bugs via %s"
 msgstr ""
-"%s : mode inconnu.\n"
-"Devrait être « majeur », « mineur » ou « mode d'église »"
+"Signalez tout bogue, en français à\n"
+" http://lilypond-french-users.1298960.n2.nabble.com/\n"
+"ou en anglais à\n"
+"%s"
 
-#: musicxml2ly.py:926
-#, python-format
-msgid "Encountered unprocessed marker %s\n"
-msgstr "Détection d'un marqueur non traité : %s\n"
+#: 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."
 
-#: musicxml2ly.py:1020
-#, python-format
-msgid "unknown span event %s"
-msgstr "Événement de prolongation inconnu : « %s »"
+#: convert-ly.py:48 lilypond-book.py:82
+msgid "Examples:"
+msgstr "Exemples :"
 
-#: musicxml2ly.py:1030
+#: convert-ly.py:75 etf2ly.py:1191 lilypond-book.py:115 midi2ly.py:81
 #, python-format
-msgid "unknown span type %s for %s"
-msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
+msgid "Copyright (c) %s by"
+msgstr "Copyright (c) %s détenu par"
 
-#: musicxml2ly.py:1450
-msgid "Unknown metronome mark, ignoring"
-msgstr "Indication métronomique inconnue et ignorée."
+#: convert-ly.py:77 etf2ly.py:1193 lilypond-book.py:117 midi2ly.py:83
+msgid "Distributed under terms of the GNU General Public License."
+msgstr "Distribué selon les termes de la GNU General Public License."
 
-#. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1455
-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:78 etf2ly.py:1194 lilypond-book.py:118 midi2ly.py:84
+msgid "It comes with NO WARRANTY."
+msgstr "Le logiciel est distribué SANS GARANTIE."
 
-#: musicxml2ly.py:1657
-#, 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:96 convert-ly.py:137
+msgid "VERSION"
+msgstr "VERSION"
 
-#: musicxml2ly.py:1806
-#, python-format
-msgid "drum %s type unknown, please add to instrument_drumtype_dict"
+#: 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]"
+
+#: convert-ly.py:101
+msgid "edit in place"
+msgstr "éditer le fichier d'origine"
+
+#: convert-ly.py:105 lilypond-book.py:179 musicxml2ly.py:2627
+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:1810
-msgid "cannot find suitable event"
-msgstr "Aucun événement correspondant"
+#: convert-ly.py:107 lilypond-book.py:163 lilypond-book.py:181
+#: musicxml2ly.py:2629 main.cc:167
+msgid "LOGLEVEL"
+msgstr "LOGLEVEL"
+
+#: convert-ly.py:113
+msgid "do not add \\version command if missing"
+msgstr "ne pas ajouter la commande \\version si elle est absente"
 
-#: musicxml2ly.py:1958
+#: convert-ly.py:119
 #, 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"
 
-#: musicxml2ly.py:2099
+#: 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é"
+
+#: convert-ly.py:131
 #, 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:2180
+#: convert-ly.py:136
 #, 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:2286
-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:141 etf2ly.py:1212 lilypond-book.py:234 midi2ly.py:1096
+#: main.cc:176
+msgid "show warranty and copyright"
+msgstr "affiche les notices de garantie et du droit d'auteur"
 
-#: musicxml2ly.py:2289
-msgid "Cannot have two simultaneous (closing) slurs"
-msgstr "deux liaisons ne peuvent se terminer simultanément"
+#: convert-ly.py:186
+msgid "Applying conversion: "
+msgstr "Conversion en cours : "
 
-#: musicxml2ly.py:2298
-msgid "Cannot have a slur inside another slur"
-msgstr "des liaisons ne peuvent s'imbriquer"
+#: convert-ly.py:202
+msgid "Error while converting"
+msgstr "Erreur lors de la conversion"
 
-#: musicxml2ly.py:2301
-msgid "Cannot have two simultaneous slurs"
-msgstr "deux liaisons ne peuvent intervenir simultanément"
+#: 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:2435
+#: convert-ly.py:231
 #, 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:2543
-msgid "Converting to LilyPond expressions..."
-msgstr "Conversion en expressions LilyPond..."
+#: convert-ly.py:338
+#, python-format
+msgid "%s: Unable to open file"
+msgstr "impossible d'ouvrir le fichier « %s »"
 
-#: musicxml2ly.py:2554
-msgid "musicxml2ly [OPTION]... FILE.xml"
-msgstr "musicxml2ly [options]... FICHIER.xml"
+#: convert-ly.py:345
+#, python-format
+msgid "%s: Unable to determine version.  Skipping"
+msgstr ""
+"impossible de déterminer la version de « %s ».\n"
+" Au suivant !"
 
-#: musicxml2ly.py:2556
+#: convert-ly.py:350
+#, python-format
 msgid ""
-"Convert MusicXML from FILE.xml to LilyPond input.\n"
-"If the given filename is -, musicxml2ly reads from the command line.\n"
+"%s: Invalid version string `%s' \n"
+"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
 msgstr ""
-"Convertit FICHIER.xml (MusicXML) au format LilyPond.\n"
-"Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
+"« %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 »"
 
-#: musicxml2ly.py:2562 midi2ly.py:987 abc2ly.py:1386 lilypond-book.py:140
-#: convert-ly.py:98 etf2ly.py:1202 main.cc:157
-msgid "show this help and exit"
-msgstr "visualiser cette aide et quitter"
+#: etf2ly.py:1197
+#, python-format
+msgid "%s [OPTION]... ETF-FILE"
+msgstr "%s [OPTIONS]... FICHIER-ETF"
 
-#: musicxml2ly.py:2566
+#: etf2ly.py:1198
 msgid ""
-"Copyright (c) 2005--2011 by\n"
-"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
-"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
-"    Reinhold Kainhofer <reinhold@kainhofer.com>\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 ""
-"Copyright (c) 2005--2011 by\n"
-"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
-"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
-"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
-
-#: musicxml2ly.py:2580 midi2ly.py:1015 abc2ly.py:1382 lilypond-book.py:212
-#: convert-ly.py:94 etf2ly.py:1206 main.cc:168
-msgid "show version number and exit"
-msgstr "afficher le numéro de version et quitter"
+"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"
 
-#: musicxml2ly.py:2585 midi2ly.py:1009 lilypond-book.py:204 main.cc:169
-msgid "be verbose"
-msgstr "Passe en mode verbeux"
+#: etf2ly.py:1210 midi2ly.py:1067 midi2ly.py:1072 musicxml2ly.py:2659
+#: main.cc:159 main.cc:171
+msgid "FILE"
+msgstr "FICHIER"
 
-#: musicxml2ly.py:2591
-msgid "use lxml.etree; uses less memory and cpu time"
+#: lilypond-book.py:80
+msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr ""
-"utilise lxml.etree pour consommer moins de mémoire\n"
-"et de temps processeur."
+"Traite les extraits LilyPond dans un document HTML hybride, LaTeX,\n"
+"texinfo ou Docbook."
 
-#: musicxml2ly.py:2597
-msgid "input file is a zip-compressed MusicXML file"
-msgstr "le fichier d'entrée est un fichier MusicXML compressé"
-
-#: musicxml2ly.py:2603
-msgid "convert pitches in relative mode (default)"
-msgstr "convertit les hauteurs en mode relatif (par défaut)"
-
-#: musicxml2ly.py:2608
-msgid "convert pitches in absolute mode"
-msgstr "convertit les hauteurs en mode absolu"
-
-#: musicxml2ly.py:2611
-msgid "LANG"
-msgstr "LANG"
-
-#: musicxml2ly.py:2613
-msgid "use LANG for pitch names, e.g. 'deutsch' for note names in German"
-msgstr "utilise une autre définition linguistique (LANG), p.ex. deutsch l'allemand"
-
-#: musicxml2ly.py:2619
-msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
-msgstr ""
-"ne convertit pas les emplacements (^, _ ou -) des articulations, \n"
-"nuances, etc."
-
-#: musicxml2ly.py:2625
-msgid "do not convert exact vertical positions of rests"
-msgstr "ne convertit pas le positionnement absolu des silences"
-
-#: musicxml2ly.py:2631
-msgid "do not convert the exact page layout and breaks"
-msgstr "ne convertit pas les sauts et la mise en page"
-
-#: musicxml2ly.py:2637
-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:2640 midi2ly.py:992 midi2ly.py:997 etf2ly.py:1208
-#: main.cc:161 main.cc:166
-msgid "FILE"
-msgstr "FICHIER"
-
-#: musicxml2ly.py:2645
-msgid "set output filename to FILE, stdout if -"
-msgstr "produit la sortie dans FICHIER (stdout si -)"
-
-#. 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:2648 midi2ly.py:1028 abc2ly.py:1395 lilypond-book.py:234
-#: convert-ly.py:144 etf2ly.py:1216 main.cc:281
-#, 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:2728
-#, python-format
-msgid "unknown part in part-list: %s"
-msgstr "la partie %s n'est pas mentionnée dans part-list"
-
-#: musicxml2ly.py:2790
-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:2793
-#, 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:2823
-msgid "Reading MusicXML from Standard input ..."
-msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
-
-#: musicxml2ly.py:2825
-#, python-format
-msgid "Reading MusicXML from %s ..."
-msgstr "Lecture du fichier MusicXML %s..."
-
-#: musicxml2ly.py:2858
-#, python-format
-msgid "Output to `%s'"
-msgstr "Fichier de sortie : « %s »"
-
-#: musicxml2ly.py:2925
-#, python-format
-msgid "Unable to find input file %s"
-msgstr "Impossible de trouver le fichier d'entrée : « %s »"
-
-#: midi2ly.py:90 lilypond-book.py:116 convert-ly.py:81 etf2ly.py:1189
-#, python-format
-msgid "Copyright (c) %s by"
-msgstr "Copyright (c) %s détenu par"
-
-#: midi2ly.py:92 lilypond-book.py:118 convert-ly.py:83 etf2ly.py:1191
-msgid "Distributed under terms of the GNU General Public License."
-msgstr "Distribué selon les termes de la GNU General Public License."
-
-#: midi2ly.py:93 lilypond-book.py:119 convert-ly.py:84 etf2ly.py:1192
-msgid "It comes with NO WARRANTY."
-msgstr "Le logiciel est distribué SANS GARANTIE."
-
-#: midi2ly.py:99
-msgid "warning: "
-msgstr "Avertissement : "
-
-#: midi2ly.py:102 midi2ly.py:1041
-msgid "error: "
-msgstr "Erreur : "
-
-#: midi2ly.py:103
-msgid "Exiting... "
-msgstr "Fin d'exécution... "
-
-#: midi2ly.py:960
-#, python-format
-msgid "%s output to `%s'..."
-msgstr "%s reproduit dans « %s »..."
-
-#: midi2ly.py:972 abc2ly.py:1373 lilypond-book.py:122 convert-ly.py:87
-#, python-format
-msgid "%s [OPTION]... FILE"
-msgstr "%s [OPTIONS]... FICHIER"
-
-#: midi2ly.py:973
-#, python-format
-msgid "Convert %s to LilyPond input.\n"
-msgstr "Convertir %s au format source LilyPond.\n"
-
-#: midi2ly.py:978
-msgid "print absolute pitches"
-msgstr "Afficher des hauteurs absolues"
-
-#: midi2ly.py:980 midi2ly.py:1002
-msgid "DUR"
-msgstr "DUR"
-
-#: midi2ly.py:981
-msgid "quantise note durations on DUR"
-msgstr "Quantifier les durées de note d'après DUR"
-
-#: midi2ly.py:984
-msgid "print explicit durations"
-msgstr "Écrit des durées explicites"
-
-#: midi2ly.py:989
-msgid "prepend FILE to output"
-msgstr "ajout de FICHIER à la sortie"
-
-#: midi2ly.py:993
-msgid "set key: ALT=+sharps|-flats; MINOR=1"
-msgstr "Définit l'armure : ALT=+dièse|-bémol; MINEUR=1"
-
-#: midi2ly.py:994
-msgid "ALT[:MINOR]"
-msgstr "ALT[:MINEUR]"
-
-#: midi2ly.py:996 abc2ly.py:1388 etf2ly.py:1207
-msgid "write output to FILE"
-msgstr "produire la sortie dans le FICHIER"
-
-#: midi2ly.py:999
-msgid "preview of first 4 bars"
-msgstr "prévisualisation des quatre premières mesures"
-
-#: midi2ly.py:1001
-msgid "quantise note starts on DUR"
-msgstr "Quantifie les débuts de note sur DUR"
-
-#: midi2ly.py:1004
-msgid "DUR*NUM/DEN"
-msgstr "DUR*NUM/DEN"
-
-#: midi2ly.py:1007
-msgid "allow tuplet durations DUR*NUM/DEN"
-msgstr "Permet des n-olets de durée DUR*NUM/DEN"
-
-#: midi2ly.py:1016 lilypond-book.py:215 convert-ly.py:139 etf2ly.py:1210
-#: main.cc:170
-msgid "show warranty and copyright"
-msgstr "afficher les notices de garantie et du droit d'auteur"
-
-#: midi2ly.py:1019
-msgid "treat every text as a lyric"
-msgstr "Traite tout texte comme étant des paroles"
-
-#: midi2ly.py:1022
-msgid "Examples"
-msgstr "Exemples"
-
-#: midi2ly.py:1042
-msgid "no files specified on command line."
-msgstr "aucun fichier spéficié sur la ligne de commande."
-
-#: abc2ly.py:1374
-#, python-format
-msgid ""
-"abc2ly converts ABC music files (see\n"
-"%s) to LilyPond input.\n"
-msgstr ""
-"abc2ly convertit les fichiers musicaux ABC (voir\n"
-"%s) au format LilyPond.\n"
-
-#: abc2ly.py:1390
-msgid "be strict about success"
-msgstr "être strict sur la réussite"
-
-#: abc2ly.py:1392
-msgid "preserve ABC's notion of beams"
-msgstr "préserver la notion de ligature propre à ABC"
-
-#: lilypond-book.py:80
-msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
-msgstr ""
-"Traite les extraits LilyPond dans un document HTML hybride, LaTeX,\n"
-"texinfo ou Docbook."
-
-#: lilypond-book.py:82 convert-ly.py:46
-msgid "Examples:"
-msgstr "Exemples :"
-
-#: lilypond-book.py:87
-msgid "BOOK"
-msgstr "LIVRE"
+#: lilypond-book.py:87
+msgid "BOOK"
+msgstr "LIVRE"
 
 #: lilypond-book.py:95
 #, python-format
@@ -1270,12 +1171,12 @@ msgstr "FILTRE"
 
 #: 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: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"
+"utilise le format de sortie FORMAT (texi par défaut, texi-html, latex,\n"
 "html ou docbook)"
 
 #: lilypond-book.py:135
@@ -1284,16 +1185,16 @@ msgstr "FORMAT"
 
 #: lilypond-book.py:142
 msgid "add DIR to include path"
-msgstr "Ajoute le RÉP au chemin de recherche des inclusions"
+msgstr "ajoute le RÉP au chemin de recherche des inclusions"
 
-#: lilypond-book.py:143 lilypond-book.py:150 lilypond-book.py:163
-#: lilypond-book.py:173 lilypond-book.py:189 lilypond-book.py:195 main.cc:160
+#: 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:158
 msgid "DIR"
 msgstr "RÉP"
 
 #: 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"
+msgstr "formate la sortie Texinfo pour qu'Info cherche les images dans RÉP"
 
 #: lilypond-book.py:155
 msgid "PAD"
@@ -1302,456 +1203,1345 @@ msgstr "PAD"
 #: lilypond-book.py:157
 msgid "pad left side of music to align music inspite 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"
+"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:162
+msgid "Print lilypond log messages according to LOGLEVEL"
+msgstr "Affiche les messages du journal selon la vakeur de LOGLEVEL"
+
+#: lilypond-book.py:168
 msgid "write lily-XXX files to DIR, link into --output dir"
 msgstr ""
-"Ã\89crit les fichiers lily-XXX dans RÉP et crée un lien vers le répertoire\n"
+"é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:167
+#: 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:168
+#: lilypond-book.py:174
 msgid "PACKAGE"
 msgstr "PAQUETAGE"
 
-#: lilypond-book.py:172
+#: lilypond-book.py:186
 msgid "write output to DIR"
-msgstr "Produit la sortie dans RÉP"
+msgstr "produit la sortie dans RÉP"
 
-#: lilypond-book.py:177
+#: lilypond-book.py:191
 msgid "COMMAND"
 msgstr "COMMANDE"
 
-#: lilypond-book.py:178
+#: lilypond-book.py:192
 msgid "process ly_files using COMMAND FILE..."
-msgstr "Traîte ly_files en utilisant COMMANDE FICHIER..."
+msgstr "traîte ly_files en utilisant COMMANDE FICHIER..."
 
-#: lilypond-book.py:182
+#: lilypond-book.py:197
+msgid "Redirect the lilypond output"
+msgstr "redirige la sortie la sortie lilypond"
+
+#: lilypond-book.py:201
 msgid "Compile snippets in safe mode"
-msgstr "Compile des extraits en mode protégé"
+msgstr "compile des extraits en mode protégé"
 
-#: lilypond-book.py:188
+#: 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"
+msgstr "désactive la mise en échec en l’absence de sortie de lilypond"
 
-#: lilypond-book.py:194
+#: 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 correspondant aux\n"
-"fichiers EPS"
+"désactive la mise en échec en l’absence d’images PNG\n"
+"correspondant aux fichiers EPS"
 
-#: lilypond-book.py:200
+#: 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"
+"affecte au résultat des extraits la même racine\n"
+"que celle des fichiers sources"
+
+#: lilypond-book.py:223 midi2ly.py:1090 musicxml2ly.py:2596
+msgid "be verbose"
+msgstr "passe en mode verbeux"
 
-#: lilypond-book.py:220
+#: lilypond-book.py:239
 msgid ""
 "run executable PROG instead of latex, or in\n"
 "case --pdf option is set instead of pdflatex"
 msgstr ""
-"Utilise l’exécutable PROG en lieu et place de latex,\n"
+"utilise l’exécutable PROG en lieu et place de latex,\n"
 "ou lorsque l'option --pdf remplace pdflatex"
 
-#: lilypond-book.py:222
+#: lilypond-book.py:241 lilypond-book.py:246
 msgid "PROG"
 msgstr "PROG"
 
-#: lilypond-book.py:228
+#: lilypond-book.py:245
+msgid "run executable PROG instead of texi2pdf"
+msgstr "utilise l'exécutable PROG au lieu de texi2pdf"
+
+#: lilypond-book.py:252
 msgid "create PDF files for use with PDFTeX"
-msgstr "Crée des fichiers PDF pour utilisation par PDFTeX"
+msgstr "crée des fichiers PDF pour utilisation par PDFTeX"
 
-#: lilypond-book.py:419
+#: lilypond-book.py:455
 msgid "Writing snippets..."
 msgstr "Écriture des extraits..."
 
-#: lilypond-book.py:425
+#: lilypond-book.py:460
 msgid "Processing..."
 msgstr "Traitement..."
 
-#: lilypond-book.py:431
+#: lilypond-book.py:465
 msgid "All snippets are up to date..."
 msgstr "Tous les extraits sont à jour..."
 
-#: lilypond-book.py:452
+#: lilypond-book.py:467
+msgid "Linking files..."
+msgstr "Liaison des fichiers..."
+
+#: lilypond-book.py:487
 #, python-format
 msgid "cannot determine format for: %s"
-msgstr "format indéterminé pour %s"
+msgstr "format indéterminé pour « %s »"
 
-#: lilypond-book.py:461
+#: lilypond-book.py:496
 #, python-format
 msgid "%s is up to date."
-msgstr "%s est à jour."
+msgstr "« %s » est à jour."
 
-#: lilypond-book.py:475
+#: lilypond-book.py:509
 #, python-format
 msgid "Writing `%s'..."
-msgstr "Écriture de « %s »..."
+msgstr "Écriture de « %s »..."
 
-#: lilypond-book.py:537
+#: lilypond-book.py:570
 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:541
+#: lilypond-book.py:574
 #, python-format
 msgid "Reading %s..."
-msgstr "Lecture en cours de %s..."
+msgstr "Lecture en cours de « %s »..."
 
-#: lilypond-book.py:549
+#: lilypond-book.py:581
 msgid "Dissecting..."
 msgstr "Dissection en cours..."
 
-#: lilypond-book.py:561
+#: lilypond-book.py:592
 #, python-format
 msgid "Compiling %s..."
-msgstr "Compilation de %s..."
+msgstr "Compilation de « %s »..."
 
-#: lilypond-book.py:570
+#: lilypond-book.py:600
 #, python-format
 msgid "Processing include: %s"
-msgstr "Traitement d'inclusion : %s"
+msgstr "Traitement d'inclusion : %s"
 
-#: lilypond-book.py:582
+#: lilypond-book.py:611
 #, python-format
 msgid "Removing `%s'"
-msgstr "Suppression de « %s »"
+msgstr "Suppression de « %s »"
 
-#: convert-ly.py:44
-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."
+#: lilypond-book.py:704
+#, python-format
+msgid "Setting LilyPond's loglevel to %s"
+msgstr "Niveau de journalisation de LilyPond fixé à %s"
 
-#: convert-ly.py:102 convert-ly.py:135
-msgid "VERSION"
-msgstr "VERSION"
+#: lilypond-book.py:708
+#, 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)"
 
-#: convert-ly.py:104
-msgid "start from VERSION [default: \\version found in file]"
-msgstr "partir de la VERSION [par défaut : \\version trouvée dans le fichier]"
+#: lilypond-book.py:711
+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:107
-msgid "edit in place"
-msgstr "éditer le fichier d'origine"
+#: midi2ly.py:90
+msgid "warning: "
+msgstr "Avertissement : "
 
-#: convert-ly.py:111
-msgid "do not add \\version command if missing"
-msgstr "ne pas ajouter la commande \\version si elle est absente"
+#: midi2ly.py:93 midi2ly.py:1124
+msgid "error: "
+msgstr "Erreur : "
 
-#: convert-ly.py:117
-#, python-format
-msgid "force updating \\version number to %s"
-msgstr "forcer la mise à jour de \\version à %s"
+#: midi2ly.py:94
+msgid "Exiting... "
+msgstr "Fin d'exécution... "
 
-#: convert-ly.py:123
-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:835
+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:129
+#: midi2ly.py:1032
 #, python-format
-msgid "show rules [default: -f 0, -t %s]"
-msgstr "afficher les règles [par défaut : -f 0, -t %s]"
+msgid "%s output to `%s'..."
+msgstr "%s reproduit dans « %s »..."
 
-#: convert-ly.py:134
+#: midi2ly.py:1045
 #, python-format
-msgid "convert to VERSION [default: %s]"
-msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
+msgid "Convert %s to LilyPond input.\n"
+msgstr "convertit %s au format source LilyPond.\n"
 
-#: convert-ly.py:184
-msgid "Applying conversion: "
-msgstr "Conversion en cours : "
+#: midi2ly.py:1050
+msgid "print absolute pitches"
+msgstr "affecte des hauteurs absolues"
 
-#: convert-ly.py:197
-msgid "Error while converting"
-msgstr "Erreur lors de la conversion"
+#: midi2ly.py:1052 midi2ly.py:1080
+msgid "DUR"
+msgstr "DUR"
 
-#: convert-ly.py:199
-msgid "Stopping at last successful rule"
-msgstr "Arrêt à la dernière règle appliquée avec succès"
+#: midi2ly.py:1053
+msgid "quantise note durations on DUR"
+msgstr "quantifie les durées de note d'après DUR"
 
-#: convert-ly.py:224
-#, python-format
-msgid "Processing `%s'... "
-msgstr "Traitement de « %s »..."
+#: midi2ly.py:1056
+msgid "debug printing"
+msgstr "affiche des informations de débogage"
 
-#: convert-ly.py:332
-#, python-format
-msgid "%s: Unable to open file"
-msgstr "impossible d'ouvrir le fichier « %s »"
+#: midi2ly.py:1059
+msgid "print explicit durations"
+msgstr "affecte des durées explicites"
 
-#: convert-ly.py:339
-#, python-format
-msgid "%s: Unable to determine version.  Skipping"
-msgstr "impossible de déterminer la version  de « %s ». Au suivant !"
+#: midi2ly.py:1064
+msgid "prepend FILE to output"
+msgstr "ajoute FICHIER à la sortie"
 
-#: convert-ly.py:344
-#, python-format
-msgid ""
-"%s: Invalid version string `%s' \n"
-"Valid version strings consist of three numbers, separated by dots, e.g. `2.8.12'"
-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 »"
+#: midi2ly.py:1068
+msgid "set key: ALT=+sharps|-flats; MINOR=1"
+msgstr "définit l'armure : ALT=+dièse|-bémol ; MINEUR=1"
 
-#: etf2ly.py:1195
-#, python-format
-msgid "%s [OPTION]... ETF-FILE"
-msgstr "%s [OPTIONS]... FICHIER-ETF"
+#: midi2ly.py:1069
+msgid "ALT[:MINOR]"
+msgstr "ALT[:MINEUR]"
 
-#: etf2ly.py:1196
-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"
-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"
+#: midi2ly.py:1074
+msgid "preview of first 4 bars"
+msgstr "prévisualisation des quatre premières mesures"
 
-#: website_post.py:123
-msgid "English"
-msgstr "Anglais"
+#: midi2ly.py:1078
+msgid "suppress progress messages and warnings about excess voices"
+msgstr "n'affiche aucun message de progression ni de nombre excessif de voix"
 
-#: website_post.py:126
-msgid "Other languages"
-msgstr "Autres langues"
+#: midi2ly.py:1079
+msgid "quantise note starts on DUR"
+msgstr "quantifie les débuts de note sur DUR"
 
-#: warn.cc:59
-#, c-format
-msgid "success: %s"
-msgstr "Résultat : %s"
+#: midi2ly.py:1083
+msgid "use s instead of r for rests"
+msgstr "traduit les silences en « s », non en « r »"
 
-#: warn.cc:86 grob.cc:617 input.cc:97
-#, c-format
-msgid "programming error: %s"
-msgstr "erreur de programmation : %s"
+#: midi2ly.py:1085
+msgid "DUR*NUM/DEN"
+msgstr "DUR*NUM/DEN"
 
-#: warn.cc:87 input.cc:98
-msgid "continuing, cross fingers"
-msgstr "poursuite ; croisons les doigts."
+#: midi2ly.py:1088
+msgid "allow tuplet durations DUR*NUM/DEN"
+msgstr "permet des n-olets de durée DUR*NUM/DEN"
 
-#: getopt-long.cc:153
+#: midi2ly.py:1098
+msgid "treat every text as a lyric"
+msgstr "traite tout texte comme étant des paroles"
+
+#: midi2ly.py:1101
+msgid "Examples"
+msgstr "Exemples"
+
+#: midi2ly.py:1125
+msgid "no files specified on command line."
+msgstr "aucun fichier spéficié sur la ligne de commande."
+
+#: musicxml2ly.py:228
+#, python-format
+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."
+
+#: musicxml2ly.py:247 musicxml2ly.py:249
+#, python-format
+msgid "Unprocessed PartGroupInfo %s encountered"
+msgstr "PartGroupInfo %s détecté, mais non traité"
+
+#: musicxml2ly.py:500
+#, 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)"
+
+#: musicxml2ly.py:520
+#, python-format
+msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
+msgstr ""
+"Durée rationnelle au dénominateur de %s détectée ;\n"
+"impossible de traduire en durée LilyPond"
+
+#: musicxml2ly.py:767
+msgid "Unable to extract key signature!"
+msgstr "Impossible de déterminer l'armure."
+
+#: musicxml2ly.py:794
+#, 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 »."
+
+#: musicxml2ly.py:932
+#, python-format
+msgid "Encountered unprocessed marker %s\n"
+msgstr "Détection d'un marqueur non traité : %s\n"
+
+#: musicxml2ly.py:1026
+#, python-format
+msgid "unknown span event %s"
+msgstr "Événement de prolongation inconnu : « %s »"
+
+#: musicxml2ly.py:1036
+#, python-format
+msgid "unknown span type %s for %s"
+msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
+
+#: musicxml2ly.py:1456
+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:1461
+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."
+
+#: musicxml2ly.py:1663
+#, python-format
+msgid "Unable to convert chord type %s to lilypond."
+msgstr "Impossible de convertir le type d'accord %s au format LilyPond"
+
+#: musicxml2ly.py:1816
+#, python-format
+msgid "drum %s type unknown, please add to instrument_drumtype_dict"
+msgstr ""
+"%s n'est pas un type de percussion connu.\n"
+"L'ajouter à instrument_drumtype_dict"
+
+#: musicxml2ly.py:1820
+msgid "cannot find suitable event"
+msgstr "Aucun événement correspondant"
+
+#: musicxml2ly.py:1968
+#, python-format
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Retour en arrière de %s (partant de %s et jusqu'à %s)"
+
+#: musicxml2ly.py:2109
+#, 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:2190
+#, python-format
+msgid "unexpected %s; expected %s or %s or %s"
+msgstr "%s détecté, au lieu de %s, %s ou %s"
+
+#: musicxml2ly.py:2296
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Terminaison d'une liaison qui n'a pas été débutée"
+
+#: musicxml2ly.py:2299
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "Deux liaisons ne peuvent se terminer simultanément"
+
+#: musicxml2ly.py:2308
+msgid "Cannot have a slur inside another slur"
+msgstr "Des liaisons ne peuvent s'imbriquer"
+
+#: musicxml2ly.py:2311
+msgid "Cannot have two simultaneous slurs"
+msgstr "Deux liaisons ne peuvent intervenir simultanément"
+
+#: musicxml2ly.py:2445
+#, python-format
+msgid "cannot simultaneously have more than one mode: %s"
+msgstr "SVP, un seul mode à la fois : %s"
+
+#: musicxml2ly.py:2553
+msgid "Converting to LilyPond expressions..."
+msgstr "Conversion en expressions LilyPond..."
+
+#: musicxml2ly.py:2564
+msgid "musicxml2ly [OPTION]... FILE.xml"
+msgstr "musicxml2ly [OPTION]... FICHIER.xml"
+
+#: musicxml2ly.py:2566
+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:2576
+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> et\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
+
+#: musicxml2ly.py:2602
+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:2608
+msgid "input file is a zip-compressed MusicXML file"
+msgstr "le fichier d'entrée est un fichier MusicXML compressé"
+
+#: musicxml2ly.py:2614
+msgid "convert pitches in relative mode (default)"
+msgstr "convertit les hauteurs en mode relatif (par défaut)"
+
+#: musicxml2ly.py:2619
+msgid "convert pitches in absolute mode"
+msgstr "convertit les hauteurs en mode absolu"
+
+#: musicxml2ly.py:2622
+msgid "LANG"
+msgstr "LANG"
+
+#: musicxml2ly.py:2624
+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"
+
+#: musicxml2ly.py:2638
+msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
+msgstr ""
+"ne convertit pas les positionnements (^, _ ou -) des articulations,\n"
+"nuances etc."
+
+#: musicxml2ly.py:2644
+msgid "do not convert exact vertical positions of rests"
+msgstr "ne convertit pas le positionnement absolu des silences"
+
+#: musicxml2ly.py:2650
+msgid "do not convert the exact page layout and breaks"
+msgstr "ne convertit pas les sauts et la mise en page"
+
+#: musicxml2ly.py:2656
+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:2664
+msgid "set output filename to FILE, stdout if -"
+msgstr "produit la sortie dans FICHIER (stdout si -)"
+
+#: musicxml2ly.py:2670
+msgid "activate midi-block"
+msgstr "activation du bloc midi"
+
+#: musicxml2ly.py:2754
+#, python-format
+msgid "unknown part in part-list: %s"
+msgstr "la partie « %s » n'est pas mentionnée dans part-list"
+
+#: musicxml2ly.py:2816
+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:2829
+#, 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:2859
+msgid "Reading MusicXML from Standard input ..."
+msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
+
+#: musicxml2ly.py:2861
+#, python-format
+msgid "Reading MusicXML from %s ..."
+msgstr "Lecture du fichier MusicXML « %s »..."
+
+#: musicxml2ly.py:2894
+#, python-format
+msgid "Output to `%s'"
+msgstr "Fichier de sortie : « %s »"
+
+#: musicxml2ly.py:2964
+#, python-format
+msgid "Unable to find input file %s"
+msgstr "Impossible de trouver le fichier d'entrée « %s »"
+
+#: website_post.py:123
+msgid "English"
+msgstr "Anglais"
+
+#: website_post.py:126
+msgid "Other languages"
+msgstr "Autres langues"
+
+#: website_post.py:127
+#, 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>."
+
+#: getopt-long.cc:153
 #, c-format
 msgid "option `%s' requires an argument"
-msgstr "L'option « %s » requiert un argument"
+msgstr "L'option « %s » requiert un argument"
+
+#: getopt-long.cc:157
+#, c-format
+msgid "option `%s' does not allow an argument"
+msgstr "L'option « %s » s'emploie sans argument"
+
+#: getopt-long.cc:161
+#, c-format
+msgid "unrecognized option: `%s'"
+msgstr "option non reconnue : « %s »"
+
+#: getopt-long.cc:167
+#, c-format
+msgid "invalid argument `%s' to option `%s'"
+msgstr "argument « %s » invalide pour l'option « %s »"
+
+#: warn.cc:56
+#, c-format
+msgid "Log level set to %d\n"
+msgstr "Niveau de journalisation fixé à %d\n"
+
+#: 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"
+
+#. 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 :"
+
+#: warn.cc:183
+#, c-format
+msgid "fatal error: %s"
+msgstr "erreur fatale : %s"
+
+#: warn.cc:192
+#, c-format
+msgid "suppressed programming error: %s"
+msgstr "erreur de programmation supprimée : %s"
+
+#: warn.cc:197
+#, c-format
+msgid "programming error: %s"
+msgstr "erreur de programmation : %s"
+
+#: warn.cc:198
+msgid "continuing, cross fingers"
+msgstr "poursuite ; croisons les doigts."
+
+#: warn.cc:207
+#, c-format
+msgid "suppressed error: %s"
+msgstr "erreur supprimée : %s"
+
+#: 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 ""
+"La saisie d'une liste d'altérations accidentelles doit débuter\n"
+"par un nom de contexte : %s"
+
+#: accidental-engraver.cc:210
+#, 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é"
+
+#: accidental.cc:200
+#, 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
+msgid "natural alteration glyph not found"
+msgstr "pas de glyphe correspondant au bécarre"
+
+#: all-font-metrics.cc:149
+#, c-format
+msgid "cannot find font: `%s'"
+msgstr "fonte « %s » introuvable"
+
+#: apply-context-iterator.cc:42
+msgid "\\applycontext argument is not a procedure"
+msgstr "l'argument \\applycontext n'est pas une procédure"
+
+#: arpeggio.cc:115
+msgid "no heads for arpeggio found?"
+msgstr "arpeggio sans tête de note ?"
+
+#: auto-change-iterator.cc:74 change-iterator.cc:72
+#, c-format
+msgid "cannot change, already in translator: %s"
+msgstr "modification impossible, c'est déjà dans le translateur : %s"
+
+#: 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"
+
+#: axis-group-engraver.cc:95
+msgid "are there two Axis_group_engravers?"
+msgstr "Axis_group_engraver redondant"
+
+#: axis-group-engraver.cc:96
+msgid "removing this vertical group"
+msgstr "retrait de ce groupe vertical"
+
+#: axis-group-interface.cc:668
+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."
+
+#: bar-check-iterator.cc:84
+#, c-format
+msgid "barcheck failed at: %s"
+msgstr "échec du contrôle de mesure (barcheck) à %s"
+
+#: beam-engraver.cc:147
+msgid "already have a beam"
+msgstr "ligature déjà présente"
+
+#: beam-engraver.cc:230
+msgid "unterminated beam"
+msgstr "ligature non terminée"
+
+#: beam-engraver.cc:266 chord-tremolo-engraver.cc:149
+msgid "stem must have Rhythmic structure"
+msgstr "la hampe doit avoir une structure Rythmic"
+
+#: beam-engraver.cc:277
+msgid "stem does not fit in beam"
+msgstr "la hampe ne s'insère pas dans la ligature"
+
+#: beam-engraver.cc:278
+msgid "beam was started here"
+msgstr "la ligature a débuté ici"
+
+#. We are completely screwed.
+#: beam-quanting.cc:839
+msgid "no viable initial configuration found: may not find good beam slope"
+msgstr ""
+"pas de configuration initiale viable repérée :\n"
+"la pente de la ligature pourrait être inesthétique."
+
+#: beam.cc:181
+msgid "removing beam with no stems"
+msgstr "suppression d'une ligature ayant moins de deux hampes"
+
+#: change-iterator.cc:34
+#, c-format
+msgid "cannot change `%s' to `%s'"
+msgstr "impossible de changer « %s » en « %s »"
+
+#. 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"
+
+#. 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
+#, c-format
+msgid "not changing to same context type: %s"
+msgstr "pas de changement vers le même type de contexte : %s"
+
+#. FIXME: uncomprehensable message
+#: change-iterator.cc:106
+msgid "none of these in my family"
+msgstr "aucun de ceux-ci dans ma famille"
+
+#: chord-tremolo-engraver.cc:88
+msgid "No tremolo to end"
+msgstr "Aucun trémolo à terminer"
+
+#: chord-tremolo-engraver.cc:109
+msgid "unterminated chord tremolo"
+msgstr "accord en trémolo non terminé"
+
+#: clef.cc:65
+#, c-format
+msgid "clef `%s' not found"
+msgstr "clé « %s » introuvable"
+
+#: cluster.cc:120
+#, 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"
+
+#: 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"
+
+#. 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"
+
+#: context-property.cc:43
+msgid "need symbol arguments for \\override and \\revert"
+msgstr "\\override et \\revert requièrent des arguments symboliques"
+
+#: context.cc:149
+#, c-format
+msgid "cannot find or create new `%s'"
+msgstr "impossible de trouver ou créer un nouveau « %s »"
+
+#: context.cc:207
+#, c-format
+msgid "cannot find or create `%s' called `%s'"
+msgstr "impossible de trouver ou créer « %s » dénommé(e) « %s »"
+
+#: context.cc:400
+#, c-format
+msgid "cannot find or create: `%s'"
+msgstr "impossible de trouver ou créer « %s »"
+
+#: custos.cc:87
+#, c-format
+msgid "custos `%s' not found"
+msgstr "custode « %s » introuvable"
+
+#: dispatcher.cc:83
+msgid "Event class should be a list"
+msgstr "La classe d'événement devrait être une liste"
+
+#: dispatcher.cc:166
+#, c-format
+msgid "Junking event: %s"
+msgstr "Événement escamoté : « %s »"
+
+#: dispatcher.cc:262
+msgid "Attempting to remove nonexisting listener."
+msgstr "Tentative de suppression d'un écouteur inexistant."
+
+#: dispatcher.cc:284
+msgid "Already listening to dispatcher, ignoring request"
+msgstr "Déjà à l'écoute du dispatcheur ; requête ignorée."
+
+#: dots.cc:48
+#, c-format
+msgid "dot `%s' not found"
+msgstr "point « %s » introuvable"
+
+#: dynamic-engraver.cc:193
+msgid "cannot find start of (de)crescendo"
+msgstr "impossible de repérer le début du (de)crescendo"
+
+#: 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"
+
+#: dynamic-engraver.cc:205
+msgid "cresc starts here"
+msgstr "le crescendo débute ici"
+
+#: dynamic-engraver.cc:333
+msgid "unterminated (de)crescendo"
+msgstr "(de)crescendo non terminé"
+
+#. No explicit dynamic script events have occurred yet, but there is
+#. nevertheless a dynamic spanner.  Initialize last_volume_ to a
+#. value within the available range.
+#: dynamic-performer.cc:129
+msgid "(De)crescendo with unspecified starting volume in MIDI."
+msgstr "Volume de départ du (de)crescendo non spécifié (pour le MIDI)."
+
+#: episema-engraver.cc:75
+msgid "already have an episema"
+msgstr "épisème déjà présent"
+
+#: episema-engraver.cc:88
+msgid "cannot find start of episema"
+msgstr "impossible de trouver le début de l'épisème"
+
+#: episema-engraver.cc:137
+msgid "unterminated episema"
+msgstr "épisème non terminé"
+
+#: extender-engraver.cc:169 extender-engraver.cc:178
+msgid "unterminated extender"
+msgstr "prolongation ou extenseur non terminé"
+
+#: flag.cc:113
+#, c-format
+msgid "flag `%s' not found"
+msgstr "crochet inconnu : « %s »"
+
+#: flag.cc:133
+#, c-format
+msgid "flag stroke `%s' not found"
+msgstr "type de crochet inconnu : « %s »"
+
+#: font-config-scheme.cc:151 font-config.cc:53
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
+
+#: font-config-scheme.cc:153 font-config.cc:55
+#, c-format
+msgid "Adding font directory: %s"
+msgstr "Ajout d'un répertoire de fontes : « %s »"
+
+#: font-config-scheme.cc:167
+#, c-format
+msgid "failed adding font file: %s"
+msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
+
+#: font-config-scheme.cc:169
+#, c-format
+msgid "Adding font file: %s"
+msgstr "Ajout d'un fichier de fontes : « %s »"
+
+#: font-config.cc:38
+msgid "Initializing FontConfig..."
+msgstr "Initialisation de FontConfig..."
+
+#: font-config.cc:58
+msgid "Building font database..."
+msgstr "Construction de la base de donnée des fontes..."
+
+#: footnote-engraver.cc:110
+msgid "Must be footnote-event."
+msgstr "Doit être un événement note de bas de page (footnote-event)."
+
+#: general-scheme.cc:390
+#, c-format
+msgid "failed redirecting stderr to `%s'"
+msgstr "échec lors de la redirection de stderr vers « %s »"
+
+#: general-scheme.cc:469 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"
+
+#: glissando-engraver.cc:158
+msgid "unterminated glissando"
+msgstr "glissando non terminé"
+
+#: 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"
+
+#: global-context-scheme.cc:104
+msgid "Interpreting music..."
+msgstr "Interprétation en cours de la musique..."
+
+#: global-context-scheme.cc:126
+#, c-format
+msgid "elapsed time: %.2f seconds"
+msgstr "temps écoulé : %.2f secondes"
+
+#: gregorian-ligature-engraver.cc:70
+#, c-format
+msgid "\\%s ignored"
+msgstr "\\%s ignoré(e)"
+
+#: gregorian-ligature-engraver.cc:75
+#, c-format
+msgid "implied \\%s added"
+msgstr "\\%s implicite ajouté(e)"
+
+#. 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"
+
+#. (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"
+
+#: grob-interface.cc:68
+#, c-format
+msgid "Unknown interface `%s'"
+msgstr "Interface inconnue : « %s »"
+
+#: 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 »"
+
+#: grob-property.cc:35
+#, c-format
+msgid "%d: %s"
+msgstr "%d : %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."
+
+#: hairpin.cc:254
+msgid "decrescendo too small"
+msgstr "decrescendo trop petit"
+
+#: horizontal-bracket-engraver.cc:62
+msgid "do not have that many brackets"
+msgstr "il ne devrait pas y avoir autant de crochets"
+
+#: horizontal-bracket-engraver.cc:71
+msgid "conflicting note group events"
+msgstr "événements de groupe de notes conflictuels"
+
+#: hyphen-engraver.cc:104
+msgid "removing unterminated hyphen"
+msgstr "retrait du trait d'union sans suite"
+
+#: hyphen-engraver.cc:118
+msgid "unterminated hyphen; removing"
+msgstr "trait d'union sans suite ; escamoté"
+
+#: includable-lexer.cc:71 lily-guile.cc:91 lily-parser-scheme.cc:108
+#, c-format
+msgid "cannot find file: `%s'"
+msgstr "fichier non trouvé : « %s »"
+
+#: includable-lexer.cc:73 lily-parser-scheme.cc:100
+#, c-format
+msgid "(search path: `%s')"
+msgstr "(chemin de recherche : « %s »)"
+
+#: input.cc:138 source-file.cc:178 source-file.cc:193
+msgid "position unknown"
+msgstr "position inconnue"
 
-#: getopt-long.cc:157
-#, c-format
-msgid "option `%s' does not allow an argument"
-msgstr "L'option « %s » s'emploie sans argument"
+#: key-engraver.cc:198
+msgid "Incomplete keyAlterationOrder for key signature"
+msgstr "Propriété keyAlterationOrder incomplète pour cette armure."
 
-#: getopt-long.cc:161
+#: key-signature-interface.cc:77
 #, c-format
-msgid "unrecognized option: `%s'"
-msgstr "option non reconnue : « %s »"
+msgid "No glyph found for alteration: %s"
+msgstr "Pas de glyphe pour l'altération « %s »"
 
-#: getopt-long.cc:167
-#, c-format
-msgid "invalid argument `%s' to option `%s'"
-msgstr "argument « %s » invalide pour l'option « %s »"
+#: key-signature-interface.cc:87
+msgid "alteration not found"
+msgstr "altération non trouvée"
 
-#: grob.cc:286
-msgid "Infinity or NaN encountered"
-msgstr "infini ou valeur non numérique rencontré lors de la conversion d'un nombre réel"
+#: ligature-bracket-engraver.cc:72 ligature-engraver.cc:104
+msgid "cannot find start of ligature"
+msgstr "impossible de trouver le début de la ligature"
 
-#: vaticana-ligature.cc:95
-msgid "flexa-height undefined; assuming 0"
-msgstr "Vaticana_ligature : décalage en X indéfini ; ramené à 0"
+#: ligature-bracket-engraver.cc:85 ligature-engraver.cc:131
+msgid "already have a ligature"
+msgstr "a déjà une ligature"
 
-#: vaticana-ligature.cc:100
-msgid "ascending vaticana style flexa"
-msgstr "flexe de style vaticana ascendant"
+#: ligature-engraver.cc:109
+msgid "no right bound"
+msgstr "pas de borne à droite"
 
-#: vaticana-ligature.cc:188
-msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
-msgstr "Vaticana_ligature: aucun joint (delta_pitch == 0)"
+#: ligature-engraver.cc:140
+msgid "no left bound"
+msgstr "pas de borne à gauche"
 
-#: parse-scm.cc:101
-msgid "GUILE signaled an error for the expression beginning here"
-msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
+#: ligature-engraver.cc:184
+msgid "unterminated ligature"
+msgstr "ligature non terminée"
 
-#: 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"
+#: ligature-engraver.cc:211
+msgid "ignoring rest: ligature may not contain rest"
+msgstr "le silence est ignoré : une ligature ne peut contenir de silence"
 
-#. if we get to here, just put everything on one line
-#: constrained-breaking.cc:189 constrained-breaking.cc:207
-msgid "cannot find line breaking that satisfies constraints"
-msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
+#: ligature-engraver.cc:212
+msgid "ligature was started here"
+msgstr "la ligature a débuté ici"
 
-#: horizontal-bracket-engraver.cc:78
-msgid "do not have that many brackets"
-msgstr "n'a pas autant de crochets"
+#: lily-guile.cc:93
+#, c-format
+msgid "(load path: `%s')"
+msgstr "(chemin de chargement : « %s »)"
 
-#: horizontal-bracket-engraver.cc:87
-msgid "conflicting note group events"
-msgstr "événements de groupe de notes conflictuels"
+#: lily-guile.cc:416
+#, 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"
 
-#: hyphen-engraver.cc:104
-msgid "removing unterminated hyphen"
-msgstr "retrait du trait d'union sans suite"
+#: lily-guile.cc:419
+msgid "perhaps a typing error?"
+msgstr "Probable faute de frappe"
 
-#: hyphen-engraver.cc:118
-msgid "unterminated hyphen; removing"
-msgstr "trait d'union sans suite ; escamoté"
+#: lily-guile.cc:426
+msgid "doing assignment anyway"
+msgstr "affectation faite malgré tout"
 
-#: pango-font.cc:187 open-type-font.cc:319
+#: lily-guile.cc:438
 #, c-format
-msgid "FT_Get_Glyph_Name () error: %s"
-msgstr "Erreur FT_Get_Glyph_Name () : %s"
+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 »"
 
-#: pango-font.cc:204
+#: 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"
+
+#: lily-lexer.cc:282
 #, c-format
-msgid ""
-"Glyph has no name, but font supports glyph naming.\n"
-"Skipping glyph U+%0X, file %s"
+msgid "identifier name is a keyword: `%s'"
+msgstr "Le nom de l'identificateur est un mot clé : « %s »"
+
+#: lily-lexer.cc:303 lily-lexer.cc:316
+#, c-format
+msgid "%s:EOF"
+msgstr "%s:EOF"
+
+#: lily-parser-scheme.cc:80
+#, c-format
+msgid "Changing working directory to: `%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"
+"Modification du répertoire de travail pour\n"
+" « %s »"
 
-#: pango-font.cc:241
+#: lily-parser-scheme.cc:84
 #, c-format
-msgid "no PostScript font name for font `%s'"
-msgstr "« %s » n'est pas un fichier de fonte PostScript"
+msgid "unable to change directory to: `%s'"
+msgstr ""
+"impossible d'accéder au répertoire\n"
+" « %s »"
 
-#: pango-font.cc:290
-msgid "FreeType face has no PostScript font name"
-msgstr "Caractère FreeType sans nom de police PostScript"
+#: lily-parser-scheme.cc:99
+#, c-format
+msgid "cannot find init file: `%s'"
+msgstr ""
+"impossible de trouver le fichier d'initialisation\n"
+" « %s »"
 
-#: midi-item.cc:92
+#: lily-parser-scheme.cc:117
 #, c-format
-msgid "no such MIDI instrument: `%s'"
-msgstr "instrument MIDI non répertorié : « %s »"
+msgid "Processing `%s'"
+msgstr "Traitement de « %s »"
 
-#: note-heads-engraver.cc:76
-msgid "NoteEvent without pitch"
-msgstr "NoteEvent sans hauteur"
+#: 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"
+
+#: 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"
+
+#: lily-parser.cc:109
+msgid "Parsing..."
+msgstr "Analyse..."
 
-#: rest.cc:159
+#: line-spanner.cc:373
+msgid "Line spanner's left point is to the right of its right point."
+msgstr "L'extrémité gauche de la ligne de prolongation se retrouve après la droite."
+
+#: lyric-combine-music-iterator.cc:199
+msgid "argument of \\lyricsto should contain Lyrics context"
+msgstr "les arguments de \\lyricsto doivent comporter un contexte Lyrics."
+
+#: lyric-combine-music-iterator.cc:337
 #, c-format
-msgid "rest `%s' not found"
-msgstr "silence « %s » inconnu"
+msgid "cannot find Voice `%s'"
+msgstr "impossible de repérer la voix (Voice) « %s »"
+
+#: lyric-engraver.cc:186
+msgid "Lyric syllable does not have note.  Use \\lyricsto or associatedVoice."
+msgstr ""
+"Syllabe sans note de rattachement.\n"
+" Utiliser \\lyricsto ou associatedVoice."
 
-#: spaceable-grob.cc:94
+#: main.cc:101
 #, c-format
-msgid "No spring between column %d and next one"
-msgstr "Pas de tension entre la colonne %d et la suivante"
+msgid ""
+"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.\n"
+msgstr ""
+"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.\n"
 
-#: beam-engraver.cc:147
-msgid "already have a beam"
-msgstr "ligature déjà présente"
+#: main.cc:107
+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"
+"published by the Free Software Foundation, either version 3 of\n"
+"the License, or (at your option) any later version.\n"
+"\n"
+"    This program is distributed in the hope that it will be useful,\n"
+"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n"
+"General Public License for more details.\n"
+"\n"
+"    You should have received a copy of the\n"
+"GNU General Public License along with this program; if not, write to\n"
+"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 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. 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"
+"Boston, MA 02111-1307, USA.\n"
 
-#: beam-engraver.cc:230
-msgid "unterminated beam"
-msgstr "ligature non terminée"
+#: main.cc:141
+msgid "SYM[=VAL]"
+msgstr "SYM[=VAL]"
 
-#: beam-engraver.cc:266 chord-tremolo-engraver.cc:150
-msgid "stem must have Rhythmic structure"
-msgstr "la hampe doit avoir une structure Rythmic"
+#: main.cc:142
+msgid ""
+"set Scheme option SYM to VAL (default: #t).\n"
+"Use -dhelp for help."
+msgstr ""
+"affecte VAL (par défaut #t) à l'option Scheme SYM.\n"
+"Utiliser -dhelp pour avoir de l'aide."
 
-#: beam-engraver.cc:274
-msgid "stem does not fit in beam"
-msgstr "la hampe ne s'insère pas dans la ligature"
+#: main.cc:146
+msgid "EXPR"
+msgstr "EXPR"
 
-#: beam-engraver.cc:275
-msgid "beam was started here"
-msgstr "la ligature a débuté ici"
+#: main.cc:146
+msgid "evaluate scheme code"
+msgstr "évaluation du code Scheme"
 
-#: music-iterator.cc:182
-msgid "Sending non-event to context"
-msgstr "Envoi d'un non-événement au contexte"
+#. Bug in option parser: --output =foe is taken as an abbreviation
+#. for --output-format.
+#: main.cc:149
+msgid "FORMATs"
+msgstr "FORMATs"
 
-#: context.cc:149
-#, c-format
-msgid "cannot find or create new `%s'"
-msgstr "impossible de trouver ou créer un nouveau « %s »"
+#: main.cc:149
+msgid "dump FORMAT,...  Also as separate options:"
+msgstr ""
+"produire FORMAT...\n"
+"Aussi comme options séparées :"
 
-#: context.cc:207
-#, c-format
-msgid "cannot find or create `%s' called `%s'"
-msgstr "impossible de trouver ou créer « %s » appelé « %s »"
+#: main.cc:150
+msgid "generate PDF (default)"
+msgstr "générer le PDF (par défaut)"
+
+#: main.cc:151
+msgid "generate PNG"
+msgstr "générer le PNG"
+
+#: main.cc:152
+msgid "generate PostScript"
+msgstr "générer le PostScript"
+
+#: main.cc:155
+msgid "FIELD"
+msgstr "CHAMP"
+
+#: main.cc:155
+msgid ""
+"dump header field FIELD to file\n"
+"named BASENAME.FIELD"
+msgstr ""
+"écrire le champ d'entête CHAMP dans le\n"
+"fichier nommé RACINE.CHAMP"
+
+#: main.cc:158
+msgid "add DIR to search path"
+msgstr "ajouter RÉPERTOIRE au chemin de recherche"
+
+#: main.cc:159
+msgid "use FILE as init file"
+msgstr ""
+"utiliser FICHIER comme\n"
+"fichier d'initialisation"
 
-#: context.cc:269
+#: main.cc:162
+msgid "USER, GROUP, JAIL, DIR"
+msgstr "USER, GROUP, CAGE, RÉP"
+
+#: main.cc:162
+msgid ""
+"chroot to JAIL, become USER:GROUP\n"
+"and cd into DIR"
+msgstr ""
+"chroot dans CAGE, devenir UTILISATEUR:GROUPE\n"
+"et cd dans RÉPERTOIRE"
+
+#: main.cc:167
+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"
+"NONE, ERROR, WARNING, BASIC, PROGRESS, INFO (défaut) ou DEBUG."
+
+#: main.cc:171
+msgid "write output to FILE (suffix will be added)"
+msgstr ""
+"produire la sortie dans FICHIER \n"
+"(adjonction automatique du suffixe)"
+
+#: main.cc:172
+msgid "relocate using directory of lilypond program"
+msgstr ""
+"redétermine le chemin d'exécution\n"
+"des composants de LilyPond"
+
+#: main.cc:173
+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
+msgid "be verbose (equivalent to loglevel=DEBUG)"
+msgstr "état verbeux (équivalent à loglevel=DEBUG)"
+
+#. Do not update the copyright years here, run `make grand-replace'
+#: main.cc:242
 #, c-format
-msgid "Invalid CreateContext event: Cannot create %s context"
-msgstr "Événement CreateContext invalide : impossible de créer le contexte %s"
+msgid ""
+"Copyright (c) %s by\n"
+"%s  and others."
+msgstr ""
+"Copyright © %s détenu par\n"
+"%s et autres."
 
-#: context.cc:400
+#. No version number or newline here.  It confuses help2man.
+#: main.cc:269
 #, c-format
-msgid "cannot find or create: `%s'"
-msgstr "impossible de trouver ou créer « %s »"
+msgid "Usage: %s [OPTION]... FILE..."
+msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
+
+#: main.cc:271
+msgid "Typeset music and/or produce MIDI from FILE."
+msgstr "Composer la musique ou jouer en format MIDI à partir du FICHIER"
 
-#: dispatcher.cc:82
-msgid "Event class should be a symbol"
-msgstr "La classe Event devrait être un symbole"
+#: main.cc:273
+msgid "LilyPond produces beautiful music notation."
+msgstr "LilyPond produit une jolie notation musicale"
 
-#: dispatcher.cc:89
+#: main.cc:275
 #, c-format
-msgid "Unknown event class %s"
-msgstr "Classe d'événement inconnue : « %s »"
+msgid "For more information, see %s"
+msgstr "Pour plus d'informations, voir %s"
 
-#: paper-column-engraver.cc:245
-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."
+#: main.cc:277
+msgid "Options:"
+msgstr "Options :"
 
-#: tie-engraver.cc:116
-msgid "unterminated tie"
-msgstr "liaison de prolongation non terminée"
+#: main.cc:331
+#, c-format
+msgid "expected %d arguments with jail, found: %u"
+msgstr "une cage requiert %d arguments, il y en a %u"
 
-#: tie-engraver.cc:312
-msgid "lonely tie"
-msgstr "liaison de prolongation orpheline"
+#: main.cc:345
+#, c-format
+msgid "no such user: %s"
+msgstr "utilisateur inconnu : « %s »"
+
+#: main.cc:347
+#, 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"
 
-#: dynamic-engraver.cc:197
-msgid "cannot find start of (de)crescendo"
-msgstr "impossible de repérer le début du (de)crescendo"
+#: main.cc:362
+#, c-format
+msgid "no such group: %s"
+msgstr "groupe inconnu : %s"
 
-#: dynamic-engraver.cc:206
-msgid "already have a decrescendo"
-msgstr "decrescendo déjà présent"
+#: main.cc:364
+#, 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 "
 
-#: dynamic-engraver.cc:208
-msgid "already have a crescendo"
-msgstr "crescendo déjà présent"
+#: main.cc:372
+#, c-format
+msgid "cannot chroot to: %s: %s"
+msgstr "impossible de chrooter vers : %s : %s"
 
-#: dynamic-engraver.cc:211
-msgid "cresc starts here"
-msgstr "le crescendo débute ici"
+#: main.cc:379
+#, c-format
+msgid "cannot change group id to: %d: %s"
+msgstr "impossible de changer l'identifiant de groupe en %d : %s"
 
-#: dynamic-engraver.cc:339
-msgid "unterminated (de)crescendo"
-msgstr "(de)crescendo non terminé"
+#: main.cc:385
+#, c-format
+msgid "cannot change user id to: %d: %s"
+msgstr "impossible de changer l'identifiant utilisateur en %d : %s"
 
-#: paper-score.cc:122 minimal-page-breaking.cc:40
-msgid "Calculating line breaks..."
-msgstr "Calcul des sauts de ligne..."
+#: main.cc:391
+#, c-format
+msgid "cannot change working directory to: %s: %s"
+msgstr "impossible de changer le répertoire de travail en %s : %s"
 
-#: paper-score.cc:135
+#: main.cc:639
 #, c-format
-msgid "Element count %d (spanners %d) "
-msgstr "%d éléments dénombrés (%d extensions)"
+msgid "exception caught: %s"
+msgstr "exception capturée : %s"
 
-#: paper-score.cc:139
-msgid "Preprocessing graphical objects..."
-msgstr "Pré-traitement des éléments graphiques..."
+#. FIXME: constant error message.
+#: mark-engraver.cc:156
+msgid "rehearsalMark must have integer value"
+msgstr "rehearsalMark doit être un entier"
 
-#: paper-score.cc:163 optimal-page-breaking.cc:208
-#: page-turn-page-breaking.cc:248
-msgid "Drawing systems..."
-msgstr "Dessin des systèmes..."
+#: mark-engraver.cc:162
+msgid "mark label must be a markup object"
+msgstr "les étiquettes de marque doivent être des objets de type « markup »."
 
 #: mensural-ligature-engraver.cc:96
 msgid "ligature with less than 2 heads -> skipping"
@@ -1797,50 +2587,50 @@ msgstr ""
 "l'avant dernière note doit en être une autre,\n"
 "sinon la ligature doit être LB ou SSB"
 
-#: mensural-ligature-engraver.cc:386
+#: mensural-ligature-engraver.cc:387
 msgid "unexpected case fall-through"
 msgstr "cas inattendu et non interprétable"
 
-#: piano-pedal-engraver.cc:298
+#: midi-item.cc:89
 #, 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 "no such MIDI instrument: `%s'"
+msgstr "instrument MIDI non répertorié : « %s »"
 
-#: piano-pedal-engraver.cc:313 piano-pedal-engraver.cc:324
-#: 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 »"
+#: midi-item.cc:161
+msgid "Time signature with more than 255 beats.  Truncating"
+msgstr "Métrique comportant plus de 255 pulsations ; on limite."
 
-#: piano-pedal-engraver.cc:359
+#: midi-stream.cc:39
 #, 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 »"
-
-#: input.cc:131 source-file.cc:179 source-file.cc:194
-msgid "position unknown"
-msgstr "position inconnue"
+msgid "cannot open for write: %s: %s"
+msgstr ""
+"impossible d'ouvrir le fichier en écriture : %s :\n"
+"  %s"
 
-#: paper-outputter-scheme.cc:41
+#: midi-stream.cc:55
 #, c-format
-msgid "Layout output to `%s'..."
-msgstr "Sortie mise en page vers « %s »..."
+msgid "cannot write to file: `%s'"
+msgstr "impossible d'écrire dans le fichier « %s »"
 
-#: general-scheme.cc:306
-msgid "infinity or NaN encountered while converting Real number"
-msgstr "Infini ou valeur non numérique rencontré lors de la conversion d'un nombre réel"
+#: minimal-page-breaking.cc:40 paper-score.cc:122
+msgid "Calculating line breaks..."
+msgstr "Calcul des sauts de ligne..."
 
-#: general-scheme.cc:307
-msgid "setting to zero"
-msgstr "initialisation à zéro"
+#: minimal-page-breaking.cc:44
+msgid "Calculating page breaks..."
+msgstr "Calcul des sauts de page..."
 
-#: general-scheme.cc:543
-msgid "Found infinity or nan in output. Substituting 0.0"
+#: multi-measure-rest.cc:138
+msgid "usable-duration-logs must be a non-empty list.  Falling back to whole rests."
 msgstr ""
-"La sortie contient l'infini ou une valeur non numérique.\n"
-"Substitution par 0.0"
+"usable-duration-logs ne peut être constitué d'une liste vide.\n"
+"Retour à des pauses."
 
-#: music.cc:151
+#: multi-measure-rest.cc:328
+msgid "Using naive multi measure rest spacing."
+msgstr "Utilisation d'un espacement de type silence multimesure."
+
+#: music.cc:150
 #, c-format
 msgid "octave check failed; expected \"%s\", found: \"%s\""
 msgstr ""
@@ -1856,301 +2646,83 @@ msgstr "(hauteur normalisée)"
 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"
 
-#: translator-ctors.cc:65
-#, c-format
-msgid "unknown translator: `%s'"
-msgstr "translateur inconnu : « %s »"
-
-#: 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"
-
-#: new-fingering-engraver.cc:106
-msgid "cannot add text scripts to individual note heads"
-msgstr "impossible d'ajouter du texte à des têtes de notes individuelles"
-
-#: new-fingering-engraver.cc:250
-msgid "no placement found for fingerings"
-msgstr "nulle part où positionner des doigtés"
-
-#: new-fingering-engraver.cc:251
-msgid "placing below"
-msgstr "on les place en dessous"
-
-#: ligature-engraver.cc:104 ligature-bracket-engraver.cc:72
-msgid "cannot find start of ligature"
-msgstr "impossible de trouver le début d'une ligature"
-
-#: ligature-engraver.cc:109
-msgid "no right bound"
-msgstr "pas de borne à droite"
-
-#: ligature-engraver.cc:131 ligature-bracket-engraver.cc:85
-msgid "already have a ligature"
-msgstr "a déjà une ligature"
-
-#: ligature-engraver.cc:140
-msgid "no left bound"
-msgstr "pas de borne à gauche"
-
-#: ligature-engraver.cc:185
-msgid "unterminated ligature"
-msgstr "ligature non terminée"
-
-#: ligature-engraver.cc:214
-msgid "ignoring rest: ligature may not contain rest"
-msgstr "le silence est ignoré : une ligature ne peut contenir de silence"
-
-#: ligature-engraver.cc:215
-msgid "ligature was started here"
-msgstr "la ligature a débuté ici"
-
-#: auto-change-iterator.cc:74 change-iterator.cc:72
-#, c-format
-msgid "cannot change, already in translator: %s"
-msgstr "modification impossible, c'est déjà dans le translateur : %s"
-
-#: accidental-engraver.cc:180
-#, 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"
-
-#: accidental-engraver.cc:210
-#, 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é"
-
-#: ttf.cc:481 ttf.cc:530
-#, 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"
-
-#: ttf.cc:513 ttf.cc:565
-msgid "font index must be non-negative, using index 0"
-msgstr "l'index de fonte ne peut être négatif ; réindexé sur 0"
-
-#: break-alignment-interface.cc:206
-#, c-format
-msgid "No spacing entry from %s to `%s'"
-msgstr "Pas d'espacement entre %s et « %s »"
-
-#: minimal-page-breaking.cc:44
-msgid "Calculating page breaks..."
-msgstr "Calcul des sauts de page..."
-
-#: 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é"
-
-#: vaticana-ligature-engraver.cc:736
-#, c-format
-msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
-msgstr "Vaticana_ligature_engraver : fixé `spacing-increment = %f': ptr=%ul"
-
-#: paper-book.cc:214
-#, 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"
-
-#: paper-book.cc:233
-#, c-format
-msgid "program option -dpreview not supported by backend `%s'"
-msgstr "l'option -dpreview n'est pas opérationnelle avec le moteur %s"
-
-#: output-def.cc:235
-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:242
-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"
-
-#: score-engraver.cc:78
-#, c-format
-msgid "cannot find `%s'"
-msgstr "impossible de trouver « %s »"
-
-#: score-engraver.cc:80
-msgid "Music font has not been installed properly."
-msgstr "Les fontes musicales n'ont pas été installées correctement."
-
-#: score-engraver.cc:82
-#, c-format
-msgid "Search path `%s'"
-msgstr "Chemin de recherche : « %s »"
-
-#: score-engraver.cc:84
-msgid "Aborting"
-msgstr "Abandon"
-
-#: note-collision.cc:497
-msgid "ignoring too many clashing note columns"
-msgstr "trop d'empilements de notes se chevauchent. On fera au mieux."
-
-#. fixme: be more verbose.
-#: volta-engraver.cc:111
-msgid "cannot end volta spanner"
-msgstr "extension de reprise sans terminaison"
-
-#: 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"
-
-#: volta-engraver.cc:125
-msgid "also already have an ended spanner"
-msgstr "a déjà une extension terminée"
-
-#: volta-engraver.cc:126
-msgid "giving up"
-msgstr "abandon"
-
-#: page-layout-problem.cc:322
-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"
-
-#: page-layout-problem.cc:325
-#, 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:327
-msgid "compressing music to fit"
-msgstr "compression de la musique pour que cela tienne"
-
-#: page-layout-problem.cc:765
-msgid "staff-affinities should only decrease"
-msgstr "staff-affinities devraient aller en ordre décroissant"
-
-#: apply-context-iterator.cc:42
-msgid "\\applycontext argument is not a procedure"
-msgstr "l'argument \\applycontext n'est pas une procédure"
-
-#. FIXME: constant error message.
-#: mark-engraver.cc:157
-msgid "rehearsalMark must have integer value"
-msgstr "rehearsalMark doit être un entier"
-
-#: mark-engraver.cc:163
-msgid "mark label must be a markup object"
-msgstr "les étiquettes de marque doivent être des objets de type \"markup\""
-
-#: new-dynamic-engraver.cc:142
+#: new-dynamic-engraver.cc:168
 #, c-format
 msgid ""
 "unknown crescendo style: %s\n"
 "defaulting to hairpin."
 msgstr ""
-"style de crescendo inconnu : %s\n"
+"style de crescendo inconnu : %s\n"
 "retour à la valeur par défaut (soufflet)."
 
-#: new-dynamic-engraver.cc:200
+#: new-dynamic-engraver.cc:233
 #, c-format
 msgid "unterminated %s"
 msgstr "%s non terminé(e)"
 
-#: stem-engraver.cc:103
-msgid "tremolo duration is too long"
-msgstr "durée du tremolo trop longue"
+#: 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"
 
-#. FIXME:
-#: stem-engraver.cc:140
-#, c-format
-msgid "adding note head to incompatible stem (type = %d)"
-msgstr "Ajout d'une tête de note à une hampe incompatible (type = %d)"
+#: new-fingering-engraver.cc:269
+msgid "no placement found for fingerings"
+msgstr "nulle part où positionner des doigtés"
 
-#: stem-engraver.cc:142
-msgid "maybe input should specify polyphonic voices"
-msgstr "la source devrait spécifier des voix polyphoniques"
+#: new-fingering-engraver.cc:270
+msgid "placing below"
+msgstr "on les place en dessous"
 
-#: lily-lexer.cc:264
-msgid "include files are not allowed in safe mode"
-msgstr "l'inclusion de fichiers n'est pas permise en mode sans échec"
+#: note-collision.cc:496
+msgid "ignoring too many clashing note columns"
+msgstr "trop d'empilements de notes se chevauchent. On fera au mieux."
 
-#: lily-lexer.cc:291
-#, c-format
-msgid "identifier name is a keyword: `%s'"
-msgstr "Le nom de l'identificateur est un mot clé : « %s »"
+#: note-column.cc:147
+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"
 
-#: lily-lexer.cc:312
+#: note-head.cc:95
 #, c-format
-msgid "error at EOF: %s"
-msgstr "erreur à la fin du fichier (EOF) : %s"
+msgid "none of note heads `%s' or `%s' found"
+msgstr "tête de note « %s » ou « %s » non trouvée"
 
-#: lyric-combine-music-iterator.cc:337
-#, c-format
-msgid "cannot find Voice `%s'"
-msgstr "impossible de repérer la voix (Voice) « %s »"
+#: note-heads-engraver.cc:76
+msgid "NoteEvent without pitch"
+msgstr "NoteEvent sans hauteur"
 
-#: includable-lexer.cc:71 lily-guile.cc:87 lily-parser-scheme.cc:109
+#: open-type-font.cc:44
 #, c-format
-msgid "cannot find file: `%s'"
-msgstr "fichier non trouvé : « %s »"
+msgid "cannot allocate %lu bytes"
+msgstr "impossible d'allouer %lu octets"
 
-#: includable-lexer.cc:73 lily-parser-scheme.cc:100
+#: open-type-font.cc:48
 #, c-format
-msgid "(search path: `%s')"
-msgstr "(chemin de recherche : « %s »)"
-
-#: 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"
-
-#: beam.cc:180
-msgid "removing beam with no stems"
-msgstr "suppression d'une ligature ayant moins de deux hampes"
-
-#. We are completely screwed.
-#: beam.cc:1274
-msgid "no viable initial configuration found: may not find good beam slope"
-msgstr ""
-"pas de configuration initiale viable repérée : \n"
-"la pente de la ligature pourrait être inesthétique."
+msgid "cannot load font table: %s"
+msgstr "impossible de charger la table des fontes : %s"
 
-#: slur-engraver.cc:93
+#: open-type-font.cc:53
 #, c-format
-msgid "direction of %s invalid: %d"
-msgstr "l'orientation de %s n'est pas valide : %d"
-
-#: slur-engraver.cc:162
-msgid "unterminated slur"
-msgstr "liaison non terminée"
-
-#: slur-engraver.cc:174
-msgid "cannot end slur"
-msgstr "impossible de terminer la liaison"
+msgid "FreeType error: %s"
+msgstr "Erreur FreeType : %s"
 
-#: font-config.cc:40
-msgid "Initializing FontConfig..."
-msgstr "Initialisation de FontConfig..."
+#: open-type-font.cc:110
+#, c-format
+msgid "unsupported font format: %s"
+msgstr "format de police non supporté : %s"
 
-#: font-config.cc:55 font-config-scheme.cc:152
+#: open-type-font.cc:112
 #, c-format
-msgid "failed adding font directory: %s"
-msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
+msgid "error reading font file %s: %s"
+msgstr "erreur de lecture du fichier de fontes %s : %s"
 
-#: font-config.cc:57 font-config-scheme.cc:154
+#: open-type-font.cc:187
 #, c-format
-msgid "adding font directory: %s"
-msgstr "ajout d'un répertoire de fontes : « %s »"
+msgid "FT_Get_Glyph_Name () Freetype error: %s"
+msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
 
-#: font-config.cc:61
-msgid "Building font database..."
-msgstr "Construction de la base de donnée des fontes..."
+#: open-type-font.cc:318 pango-font.cc:189
+#, 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
@@ -2159,7 +2731,7 @@ msgstr "Détermination du nombre optimal de pages..."
 
 #: 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é"
+msgstr "incompatilité entre systems-per-page et page-count ; systems-per-page ignoré"
 
 #: optimal-page-breaking.cc:105
 msgid "Fitting music on 1 page..."
@@ -2175,438 +2747,255 @@ msgstr "Répartition de la musique sur %d pages..."
 msgid "Fitting music on %d or %d pages..."
 msgstr "Répartition de la musique sur %d à %d pages..."
 
-#: optimal-page-breaking.cc:119 optimal-page-breaking.cc:173
+#: optimal-page-breaking.cc:119 optimal-page-breaking.cc:172
 #, c-format
 msgid "trying %d systems"
 msgstr "tentative pour %d systèmes"
 
-#: optimal-page-breaking.cc:138 optimal-page-breaking.cc:201
+#: optimal-page-breaking.cc:138 optimal-page-breaking.cc:200
 #, c-format
 msgid "best score for this sys-count: %f"
-msgstr "meilleur résultat pour cette configuration « sys-count » : %f"
-
-#: accidental.cc:200
-#, 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
-msgid "natural alteration glyph not found"
-msgstr "pas de glyphe correspondant au bécarre"
-
-#: system.cc:197
-#, c-format
-msgid "Element count %d"
-msgstr "%d éléments dénombrés."
-
-#: system.cc:303
-#, c-format
-msgid "Grob count %d"
-msgstr "%d objet graphiques (grob) dénombrés"
-
-#: slur.cc:362
-#, c-format
-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 ?"
-
-#: font-config-scheme.cc:168
-#, c-format
-msgid "failed adding font file: %s"
-msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
-
-#: font-config-scheme.cc:170
-#, c-format
-msgid "adding font file: %s"
-msgstr "ajout d'un fichier de fontes : « %s »"
-
-#: hairpin.cc:186
-msgid "decrescendo too small"
-msgstr "decrescendo trop petit"
-
-#: extender-engraver.cc:170 extender-engraver.cc:179
-msgid "unterminated extender"
-msgstr "prolongation ou extenseur non terminé"
-
-#: lily-guile.cc:89
-#, c-format
-msgid "(load path: `%s')"
-msgstr "(chemin de chargement : « %s »)"
-
-#: lily-guile.cc:437
-#, 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"
-
-#: lily-guile.cc:440
-msgid "perhaps a typing error?"
-msgstr "Probable faute de frappe"
-
-#: lily-guile.cc:447
-msgid "doing assignment anyway"
-msgstr "affectation faite malgré tout"
-
-#: lily-guile.cc:459
-#, 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 »"
+msgstr "meilleur résultat pour cette configuration « sys-count » : %f"
 
-#: main.cc:109
-#, c-format
-msgid ""
-"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.\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"
-"sous certaines conditions.\n"
-"Invoquez « %s --warranty » pour plus d'informations.\n"
+#: optimal-page-breaking.cc:207 page-turn-page-breaking.cc:248
+#: paper-score.cc:162
+msgid "Drawing systems..."
+msgstr "Dessin des systèmes..."
 
-#: main.cc:115
-msgid ""
-"    This program is free software; you can redistribute it and/or\n"
-"modify it under the terms of the GNU General Public License version 2\n"
-"as published by the Free Software Foundation.\n"
-"\n"
-"    This program is distributed in the hope that it will be useful,\n"
-"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
-"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU\n"
-"General Public License for more details.\n"
-"\n"
-"    You should have received a copy of the\n"
-"GNU General Public License along with this program; if not, write to\n"
-"the Free Software Foundation, Inc., 59 Temple Place - Suite 330,\n"
-"Boston, MA 02111-1307, USA.\n"
+#: output-def.cc:235
+msgid "margins do not fit with line-width, setting default values"
 msgstr ""
-"    Ce logiciel est libre; vous pouvez le redistribuer et/ou le modifier\n"
-"selon les termes de la licence GNU General Public License version 2\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"
-"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"
-"Boston, MA 02111-1307, USA.\n"
-
-#: main.cc:146
-msgid "SYM[=VAL]"
-msgstr "SYM[=VAL]"
+"les marges ne sont pas en cohérence avec la longueur de ligne ;\n"
+"retour aux valeurs par défaut"
 
-#: main.cc:147
-msgid ""
-"set Scheme option SYM to VAL (default: #t).\n"
-"Use -dhelp for help."
+#: output-def.cc:242
+msgid "systems run off the page due to improper paper settings, setting default values"
 msgstr ""
-"affecte VAL (par défaut #t)\n"
-"à l'option Scheme SYM.\n"
-"Utiliser -dhelp pour avoir de l'aide."
-
-#: main.cc:150
-msgid "EXPR"
-msgstr "EXPR"
-
-#: main.cc:150
-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:153
-msgid "FORMATs"
-msgstr "FORMATs"
+"les systèmes débordent de la page en raison de réglages de papier erronés ;\n"
+"retour aux valeurs par défaut"
 
-#: main.cc:153
-msgid "dump FORMAT,...  Also as separate options:"
+#: page-breaking.cc:277
+msgid "ignoring min-systems-per-page and max-systems-per-page because systems-per-page was set"
 msgstr ""
-"produire FORMAT,...\n"
-"Aussi comme options séparées :"
-
-#: main.cc:154
-msgid "generate PDF (default)"
-msgstr "générer le PDF (par défaut)"
-
-#: main.cc:155
-msgid "generate PNG"
-msgstr "générer le PNG"
-
-#: main.cc:156
-msgid "generate PostScript"
-msgstr "générer le PostScript"
-
-#: main.cc:158
-msgid "FIELD"
-msgstr "CHAMP"
+"systems-per-page non défini :\n"
+"  min-systems-per-page et max-systems-per-page ignorés"
 
-#: main.cc:158
-msgid ""
-"dump header field FIELD to file\n"
-"named BASENAME.FIELD"
+#: page-breaking.cc:282
+msgid "min-systems-per-page is larger than max-systems-per-page, ignoring both values"
 msgstr ""
-"écrire le champ d'entête CHAMP dans le\n"
-"fichier nommé BASENAME.CHAMP"
+"min-systems-per-page supérieur à max-systems-per-page :\n"
+"  tous deux seront ignorés"
 
-#: main.cc:160
-msgid "add DIR to search path"
-msgstr "ajouter RÉPERTOIRE au chemin de recherche"
+#: page-layout-problem.cc:403
+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."
 
-#: main.cc:161
-msgid "use FILE as init file"
+#: page-layout-problem.cc:732
+msgid "cannot fit music on page: ragged-spacing was requested, but page was compressed"
 msgstr ""
-"utiliser FICHIER comme\n"
-"fichier d'initialisation"
+"impossible de faire tenir la musique sur la page :\n"
+"  justification demandée, mais page déjà compressée"
 
-#: main.cc:163
-msgid "USER, GROUP, JAIL, DIR"
-msgstr "USER,GROUP,CAGE,RÉP"
+#: page-layout-problem.cc:735
+#, 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"
 
-#: main.cc:163
-msgid ""
-"chroot to JAIL, become USER:GROUP\n"
-"and cd into DIR"
-msgstr ""
-"chroot dans CAGE, devenir UTILISATEUR:GROUPE\n"
-"et cd dans RÉPERTOIRE"
+#: page-layout-problem.cc:737
+msgid "compressing music to fit"
+msgstr "compression de la musique pour que cela tienne"
 
-#: main.cc:166
-msgid "write output to FILE (suffix will be added)"
-msgstr ""
-"produire la sortie dans FICHIER \n"
-"(adjonction automatique du suffixe)"
+#: page-layout-problem.cc:1197
+msgid "staff-affinities should only decrease"
+msgstr "staff-affinities devraient aller en ordre décroissant"
 
-#: main.cc:167
-msgid "relocate using directory of lilypond program"
+#: page-turn-page-breaking.cc:168
+#, c-format
+msgid "page-turn-page-breaking: breaking from %d to %d"
 msgstr ""
-"redétermine le chemin d'exécution\n"
-"des composants de LilyPond"
+"Saut de page et tourne (page-turn-page-breaking) :\n"
+"coupure entre %d et %d"
 
-#. Do not update the copyright years here, run `make grand-replace'
-#: main.cc:238
-#, c-format
-msgid ""
-"Copyright (c) %s by\n"
-"%s  and others."
+#: page-turn-page-breaking.cc:217
+msgid "cannot fit the first page turn onto a single page.  Consider setting first-page-number to an even number."
 msgstr ""
-"Copyright © %s détenu par\n"
-"%s et autres."
+"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."
 
-#. No version number or newline here.  It confuses help2man.
-#: main.cc:265
+#: page-turn-page-breaking.cc:230
 #, c-format
-msgid "Usage: %s [OPTION]... FILE..."
-msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
-
-#: main.cc:267
-msgid "Typeset music and/or produce MIDI from FILE."
-msgstr "Composer la musique ou jouer en format MIDI à partir du FICHIER"
-
-#: main.cc:269
-msgid "LilyPond produces beautiful music notation."
-msgstr "LilyPond produit une jolie notation musicale"
+msgid "Calculating page and line breaks (%d possible page breaks)..."
+msgstr "Calcul des sauts de page et de ligne (%d sauts de pages possibles)..."
 
-#: main.cc:271
+#: page-turn-page-breaking.cc:300
 #, c-format
-msgid "For more information, see %s"
-msgstr "Pour plus d'informations, voir %s"
-
-#: main.cc:273
-msgid "Options:"
-msgstr "Options :"
+msgid "break starting at page %d"
+msgstr "saut intervenant à la page %d"
 
-#: main.cc:327
+#: page-turn-page-breaking.cc:301
 #, c-format
-msgid "expected %d arguments with jail, found: %u"
-msgstr "une cage requiert %d arguments, il y en a %u"
+msgid "\tdemerits: %f"
+msgstr "        démérites : %f"
 
-#: main.cc:341
+#: page-turn-page-breaking.cc:302
 #, c-format
-msgid "no such user: %s"
-msgstr "utilisateur inconnu : « %s »"
+msgid "\tsystem count: %d"
+msgstr "        nombre de systèmes : %d"
 
-#: main.cc:343
+#: page-turn-page-breaking.cc:303
 #, 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"
+msgid "\tpage count: %d"
+msgstr "        nombre de pages : %d"
 
-#: main.cc:358
+#: page-turn-page-breaking.cc:304
 #, c-format
-msgid "no such group: %s"
-msgstr "groupe inconnu : %s"
+msgid "\tprevious break: %d"
+msgstr "        coupure précédente : %d"
 
-#: main.cc:360
+#: pango-font.cc:205
 #, c-format
-msgid "cannot get group id from group name: %s: %s"
+msgid ""
+"Glyph has no name, but font supports glyph naming.\n"
+"Skipping glyph U+%0X, file %s"
 msgstr ""
-"impossible de repérer l'identifiant groupe à partir du nom de groupe :\n"
-"%s : %s "
-
-#: main.cc:368
-#, c-format
-msgid "cannot chroot to: %s: %s"
-msgstr "impossible de chrooter vers : %s : %s"
-
-#: main.cc:375
-#, c-format
-msgid "cannot change group id to: %d: %s"
-msgstr "impossible de changer l'identifiant de groupe en %d : %s"
+"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 »"
 
-#: main.cc:381
+#: pango-font.cc:242
 #, c-format
-msgid "cannot change user id to: %d: %s"
-msgstr "impossible de changer l'identifiant utilisateur en %d : %s"
+msgid "no PostScript font name for font `%s'"
+msgstr "« %s » n'est pas un fichier de fonte PostScript"
 
-#: main.cc:387
-#, c-format
-msgid "cannot change working directory to: %s: %s"
-msgstr "impossible de changer le répertoire de travail en %s : %s"
+#: pango-font.cc:291
+msgid "FreeType face has no PostScript font name"
+msgstr "Caractère FreeType sans nom de police PostScript"
 
-#: main.cc:628
+#: paper-book.cc:214
 #, c-format
-msgid "exception caught: %s"
-msgstr "exception capturée : %s"
+msgid "program option -dprint-pages not supported by backend `%s'"
+msgstr "l'option -dprint-pages n'est pas opérationnelle avec le moteur %s"
 
-#: key-signature-interface.cc:78
+#: paper-book.cc:233
 #, c-format
-msgid "No glyph found for alteration: %s"
-msgstr "Pas de glyphe pour l'altération « %s »"
+msgid "program option -dpreview not supported by backend `%s'"
+msgstr "l'option -dpreview n'est pas opérationnelle avec le moteur %s"
 
-#: key-signature-interface.cc:88
-msgid "alteration not found"
-msgstr "altération non trouvée"
+#: 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."
 
-#: dots.cc:48
+#: paper-outputter-scheme.cc:41
 #, c-format
-msgid "dot `%s' not found"
-msgstr "point « %s » introuvable"
+msgid "Layout output to `%s'..."
+msgstr "Sortie mise en page vers « %s »..."
 
-#: translator.cc:359
+#: paper-score.cc:134
 #, c-format
-msgid "Two simultaneous %s events, junking this one"
-msgstr "Deux événements %s simultanés, rejet de celui-ci"
+msgid "Element count %d (spanners %d) "
+msgstr "%d éléments dénombrés (%d extensions)"
 
-#: translator.cc:360
-#, c-format
-msgid "Previous %s event here"
-msgstr "Événement %s précédent ici"
+#: paper-score.cc:138
+msgid "Preprocessing graphical objects..."
+msgstr "Pré-traitement des éléments graphiques..."
 
-#: glissando-engraver.cc:105
-msgid "unterminated glissando"
-msgstr "glissando non terminé"
+#: parse-scm.cc:121
+msgid "GUILE signaled an error for the expression beginning here"
+msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
 
-#: text-spanner-engraver.cc:73
-msgid "cannot find start of text spanner"
-msgstr "impossible de repérer le point de départ de l'extension de texte"
+#: 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"
 
-#: text-spanner-engraver.cc:86
-msgid "already have a text spanner"
-msgstr "a déjà une extension de texte"
+#: pdf-scheme.cc:50
+#, 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"
 
-#: text-spanner-engraver.cc:132
-msgid "unterminated text spanner"
-msgstr "extension de texte non terminée"
+#: percent-repeat-engraver.cc:147
+msgid "unterminated percent repeat"
+msgstr "répétition en pourcent non terminée"
 
-#: clef.cc:65
-#, c-format
-msgid "clef `%s' not found"
-msgstr "clé `%s' introuvable"
+#: performance.cc:54
+msgid "Track..."
+msgstr "Piste..."
 
-#.
-#. Todo: should make typecheck?
-#.
-#. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
-#.
-#: time-signature-engraver.cc:75
+#: performance.cc:82
 #, c-format
-msgid "strange time signature found: %d/%d"
-msgstr "Chiffrage de mesure inhabituel : %d/%d"
+msgid "MIDI output to `%s'..."
+msgstr "Sortie MIDI vers « %s »..."
 
-#: lily-parser-scheme.cc:82
+#: phrasing-slur-engraver.cc:101 slur-engraver.cc:102
 #, c-format
-msgid "Changing working directory to: `%s'"
-msgstr "Modification du répertoire de travail pour « %s »"
+msgid "direction of %s invalid: %d"
+msgstr "l'orientation de %s n'est pas valide : %d"
 
-#: lily-parser-scheme.cc:99
-#, c-format
-msgid "cannot find init file: `%s'"
-msgstr "impossible de trouver le fichier d'initialisation « %s »"
+#: phrasing-slur-engraver.cc:175
+msgid "unterminated phrasing slur"
+msgstr "liaison de phrasé non terminée"
 
-#: lily-parser-scheme.cc:118
-#, c-format
-msgid "Processing `%s'"
-msgstr "Traitement de « %s »"
+#: phrasing-slur-engraver.cc:210
+msgid "cannot end phrasing slur"
+msgstr "impossible de terminer la liaison de phrasé"
 
-#: lily-parser-scheme.cc:204
-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"
+#. We already have an old slur, so give a warning
+#. and completely ignore the new slur.
+#: phrasing-slur-engraver.cc:230
+msgid "already have phrasing slur"
+msgstr "il y a déjà une liaison de phrasé"
 
-#: custos.cc:88
+#: piano-pedal-engraver.cc:279
 #, c-format
-msgid "custos `%s' not found"
-msgstr "custode « %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"
 
-#: program-option-scheme.cc:237
+#: piano-pedal-engraver.cc:294 piano-pedal-engraver.cc:305
+#: piano-pedal-performer.cc:104
 #, c-format
-msgid "no such internal option: %s"
-msgstr "option interne inconnue : %s"
-
-#: rest-collision.cc:146
-msgid "cannot resolve rest collision: rest direction not set"
-msgstr "collision de silences insoluble : positionnement du silence indéterminée"
-
-#: rest-collision.cc:160 rest-collision.cc:205
-msgid "too many colliding rests"
-msgstr "trop de silences se chevauchent"
-
-#: episema-engraver.cc:75
-msgid "already have an episema"
-msgstr "épisème déjà présent"
-
-#: episema-engraver.cc:88
-msgid "cannot find start of episema"
-msgstr "impossible de trouver le début de l'épisème"
+msgid "cannot find start of piano pedal: `%s'"
+msgstr "début de la pédale de piano indéterminé : « %s »"
 
-#: episema-engraver.cc:137
-msgid "unterminated episema"
-msgstr "épisème non terminé"
+#: piano-pedal-engraver.cc:340
+#, 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 »"
 
-#: grob-property.cc:34
+#: program-option-scheme.cc:235
 #, c-format
-msgid "%d: %s"
-msgstr "%d : %s"
+msgid "no such internal option: %s"
+msgstr "option interne inconnue : %s"
 
-#: grob-property.cc:173
+#: property-iterator.cc:93
 #, c-format
-msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
-msgstr "dépendance circulaire : calculation-in-progress rencontrée pour #'%s (%s)"
+msgid "not a grob name, `%s'"
+msgstr "« %s » n'est pas un nom d'objet graphique (grob)"
+
+#: relative-octave-check.cc:49
+msgid "Failed octave check, got: "
+msgstr "échec de la vérification d'octave, a obtenu : "
 
-#: relocate.cc:54
+#: relocate.cc:52
 #, c-format
 msgid "Setting %s to %s"
 msgstr "%s fixé à %s"
 
-#: relocate.cc:74
+#. 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"
+msgstr "fichier inexistant : %s pour %s"
 
+#. this warning should only be printed in debug mode!
+#. this warning should only be printed in debug mode
 #: relocate.cc:84 relocate.cc:102
 #, c-format
 msgid "no such directory: %s for %s"
-msgstr "répertoire inexistant : %s pour %s"
+msgstr "répertoire inexistant : %s pour %s"
 
-#: relocate.cc:94
+#: relocate.cc:93
 #, c-format
 msgid "%s=%s (prepend)\n"
 msgstr "%s=%s (ajout)\n"
@@ -2614,183 +3003,102 @@ msgstr "%s=%s (ajout)\n"
 #: relocate.cc:124
 #, 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"
+msgstr "relocalisation non effectuée, ni %s/ ni courant/ n'existent sous %s"
 
-#: relocate.cc:135
+#: relocate.cc:134
 #, c-format
 msgid "Relocation: compile datadir=%s, new datadir=%s"
-msgstr "Relocalisation : datadir de compilation=%s, nouveau datadir=%s"
+msgstr "Relocalisation : datadir de compilation = %s, nouveau datadir = %s"
 
-#: relocate.cc:148
+#: relocate.cc:146
 #, c-format
 msgid "Relocation: framework_prefix=%s"
-msgstr "Relocalisation : framework_prefix=%s"
+msgstr "Relocalisation : framework_prefix = %s"
 
-#: relocate.cc:189
+#: relocate.cc:186
 #, c-format
-msgid "Relocation: is absolute: argv0=%s"
-msgstr "Relocalisation : argv0=%s est absolu"
+msgid "Relocation: is absolute: argv0=%s\n"
+msgstr "Relocalisation absolue : argv0=%s\n"
 
-#: relocate.cc:196
+#: relocate.cc:192
 #, c-format
-msgid "Relocation: from cwd: argv0=%s"
-msgstr "Relocalisation : argv0=%s à partir du répertoire courant"
+msgid "Relocation: from cwd: argv0=%s\n"
+msgstr "Relocalisation à partir du répertoire courant : argv0=%s\n"
 
-#: relocate.cc:213
+#: relocate.cc:208
 #, c-format
 msgid ""
 "Relocation: from PATH=%s\n"
 "argv0=%s"
 msgstr ""
-"Relocalisation : à partir de PATH=%s\n"
+"Relocalisation : à partir de PATH=%s\n"
 "argv0=%s"
 
-#: relocate.cc:240
+#: relocate.cc:235
 msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
 msgstr "LILYPONDPREFIX est obsolète, utiliser LILYPOND_DATADIR"
 
-#: relocate.cc:367
+#: relocate.cc:360
 #, c-format
 msgid "Relocation file: %s"
-msgstr "Fichier de relocalisation : %s"
+msgstr "Fichier de relocalisation : %s"
 
-#: relocate.cc:373 source-file.cc:65
+#: relocate.cc:364 source-file.cc:65
 #, c-format
 msgid "cannot open file: `%s'"
-msgstr "Impossible d'ouvrir le fichier « %s »"
+msgstr "Impossible d'ouvrir le fichier « %s »"
 
-#: relocate.cc:403
+#: relocate.cc:394
 #, c-format
 msgid "Unknown relocation command %s"
-msgstr "Commande de relocalisation inconnue : %s"
-
-#: translator-group.cc:188
-#, c-format
-msgid "cannot find: `%s'"
-msgstr " « %s » inconnu(e)"
-
-#: phrasing-slur-engraver.cc:157
-msgid "unterminated phrasing slur"
-msgstr "liaison de phrasé non terminée"
-
-#: lyric-engraver.cc:176
-msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
-msgstr "Syllabe sans note de rattachement. Utiliser \\lyricsto ou associatedVoice."
-
-#: page-breaking.cc:248
-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:253
-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"
-
-#: performance.cc:54
-msgid "Track..."
-msgstr "Piste..."
-
-#: performance.cc:83
-msgid "MIDI channel wrapped around"
-msgstr "Bouclage du canal MIDI"
-
-#: performance.cc:84
-msgid "remapping modulo 16"
-msgstr "réaffectation modulo 16"
+msgstr "Commande de relocalisation inconnue : %s"
 
-#: performance.cc:111
-#, c-format
-msgid "MIDI output to `%s'..."
-msgstr "Sortie MIDI vers « %s »..."
+#: 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"
 
-#: tuplet-engraver.cc:107
-msgid "No tuplet to end"
-msgstr "Aucun n-olet à terminer"
+#: rest-collision.cc:146
+msgid "cannot resolve rest collision: rest direction not set"
+msgstr "collision de silences insoluble : positionnement du silence indéterminée"
 
-#: gregorian-ligature-engraver.cc:70
-#, c-format
-msgid "\\%s ignored"
-msgstr "\\%s ignoré(e)"
+#: rest-collision.cc:157 rest-collision.cc:266
+msgid "too many colliding rests"
+msgstr "trop de silences se chevauchent"
 
-#: gregorian-ligature-engraver.cc:75
+#: rest.cc:192
 #, c-format
-msgid "implied \\%s added"
-msgstr "\\%s implicite ajouté(e)"
-
-#. 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"
-
-#. (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"
-
-#: chord-tremolo-engraver.cc:88
-msgid "No tremolo to end"
-msgstr "Il n'y a aucun trémolo à terminer"
-
-#: chord-tremolo-engraver.cc:109
-msgid "unterminated chord tremolo"
-msgstr "accord en tremolo non terminé"
-
-#: 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"
-
-#: axis-group-engraver.cc:95
-msgid "are there two Axis_group_engravers?"
-msgstr "Axis_group_engraver redondant"
-
-#: axis-group-engraver.cc:96
-msgid "removing this vertical group"
-msgstr "retrait de ce groupe vertical"
+msgid "rest `%s' not found"
+msgstr "silence « %s » inconnu"
 
-#: cluster.cc:120
+#: score-engraver.cc:78
 #, 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 "cannot find `%s'"
+msgstr "impossible de trouver « %s »"
 
-#: context-property.cc:42
-msgid "need symbol arguments for \\override and \\revert"
-msgstr "\\override et \\revert requièrent des arguments symboliques"
+#: score-engraver.cc:80
+msgid "Music font has not been installed properly."
+msgstr "Les fontes musicales n'ont pas été installées correctement."
 
-#: source-file.cc:85
+#: score-engraver.cc:82
 #, c-format
-msgid "expected to read %d characters, got %d"
-msgstr "au lieu de %d caractères à lire, il y en a %d"
-
-#: axis-group-interface.cc:631
-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."
+msgid "Search path `%s'"
+msgstr "Chemin de recherche : « %s »"
 
-#: coherent-ligature-engraver.cc:111
-#, c-format
-msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul"
-msgstr "Coherent_ligature_engraver : initialise `spacing-increment=0.01': ptr=%ul"
+#: score-engraver.cc:84
+msgid "Aborting"
+msgstr "Abandon"
 
-#: percent-repeat-engraver.cc:148
-msgid "unterminated percent repeat"
-msgstr "répétition en pourcent non terminée"
+#: score.cc:172
+msgid "already have music in score"
+msgstr "il y a déjà de la musique dans la partition"
 
-#: note-head.cc:76
-#, c-format
-msgid "none of note heads `%s' or `%s' found"
-msgstr "tête de note « %s » ou « %s » non trouvée"
+#: score.cc:173
+msgid "this is the previous music"
+msgstr "voici la musique précédente"
 
-#: relative-octave-check.cc:49
-msgid "Failed octave check, got: "
-msgstr "échec de la vérification d'octave, a obtenu : "
+#: score.cc:178
+msgid "errors found, ignoring music expression"
+msgstr "suite à des erreurs répétées, l'expression musicale sera ignorée"
 
 #. FIXME:
 #: script-engraver.cc:113
@@ -2799,683 +3107,524 @@ msgstr "ne sait comment interpréter l'articulation"
 
 #: script-engraver.cc:114
 msgid " scheme encoding: "
-msgstr "encodage Scheme : "
-
-#: all-font-metrics.cc:156
-#, c-format
-msgid "cannot find font: `%s'"
-msgstr "fonte « %s » introuvable"
-
-#: property-iterator.cc:85
-#, c-format
-msgid "not a grob name, `%s'"
-msgstr " « %s » n'est pas un nom d'objet graphique (grob)"
-
-#: bar-check-iterator.cc:84
-#, c-format
-msgid "barcheck failed at: %s"
-msgstr "échec du contrôle de mesure (barcheck) à : %s"
-
-#: stem.cc:116
-msgid "weird stem size, check for narrow beams"
-msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
+msgstr "encodage Scheme : "
 
-#: stem.cc:657
-#, c-format
-msgid "flag `%s' not found"
-msgstr "crochet inconnu : « %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"
 
-#: stem.cc:673
-#, c-format
-msgid "flag stroke `%s' not found"
-msgstr "type de crochet inconnu : « %s »"
+#: slur-engraver.cc:176
+msgid "unterminated slur"
+msgstr "liaison non terminée"
 
-#: 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"
+#: slur-engraver.cc:211
+msgid "cannot end slur"
+msgstr "impossible de terminer la liaison"
 
-#: global-context-scheme.cc:104
-msgid "Interpreting music... "
-msgstr "Interprétation en cours de la musique..."
+#. We already have an old slur, so give a warning
+#. and completely ignore the new slur.
+#: slur-engraver.cc:231
+msgid "already have slur"
+msgstr "une liaison est déjà en place"
 
-#: global-context-scheme.cc:127
+#: slur.cc:430
 #, c-format
-msgid "elapsed time: %.2f seconds"
-msgstr "temps écoulé : %.2f secondes"
+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 ?"
 
-#: translator-group-ctors.cc:40
+#: source-file.cc:85
 #, c-format
-msgid "fatal error. Couldn't find type: %s"
-msgstr "Erreur fatale. Type inconnu : %s"
-
-#: mensural-ligature.cc:171
-msgid "Mensural_ligature: unexpected case fall-through"
-msgstr "Mensural_ligature : cas inattendu et non interprétable"
+msgid "expected to read %d characters, got %d"
+msgstr "au lieu de %d caractères à lire, il y en a %d"
 
-#: mensural-ligature.cc:233
-msgid "Mensural_ligature: (join_right == 0)"
-msgstr "Mensural_ligature : (joint_right == 0)"
+#: staff-performer.cc:275
+msgid "MIDI channel wrapped around"
+msgstr "Bouclage du canal MIDI"
 
-#: page-turn-page-breaking.cc:168
-#, c-format
-msgid "page-turn-page-breaking: breaking from %d to %d"
-msgstr ""
-"Saut de page et tourne (page-turn-page-breaking) :\n"
-"coupure entre %d et %d"
+#: staff-performer.cc:276
+msgid "remapping modulo 16"
+msgstr "réaffectation modulo 16"
 
-#: page-turn-page-breaking.cc:217
-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."
+#: stem-engraver.cc:110
+msgid "tremolo duration is too long"
+msgstr "durée du tremolo trop longue"
 
-#: page-turn-page-breaking.cc:230
+#: stem-engraver.cc:162
 #, 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)..."
+msgid "adding note head to incompatible stem (type = %d/%d)"
+msgstr "Ajout d'une tête de note à une hampe incompatible (type = %d/%d)"
 
-#: page-turn-page-breaking.cc:300
-#, c-format
-msgid "break starting at page %d"
-msgstr "saut intervenant à la page %d"
+#: stem-engraver.cc:165
+msgid "maybe input should specify polyphonic voices"
+msgstr "la source devrait spécifier des voix polyphoniques"
 
-#: page-turn-page-breaking.cc:301
-#, c-format
-msgid "\tdemerits: %f"
-msgstr "        démérites : %f"
+#: stem.cc:128
+msgid "weird stem size, check for narrow beams"
+msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
 
-#: page-turn-page-breaking.cc:302
+#: system.cc:200
 #, c-format
-msgid "\tsystem count: %d"
-msgstr "        nombre de systèmes : %d"
+msgid "Element count %d"
+msgstr "%d éléments dénombrés."
 
-#: page-turn-page-breaking.cc:303
+#: system.cc:480
 #, c-format
-msgid "\tpage count: %d"
-msgstr "        nombre de pages : %d"
+msgid "Grob count %d"
+msgstr "%d objet graphiques (grob) dénombrés."
 
-#: page-turn-page-breaking.cc:304
+#. TODO: Also print the arguments of the markup!
+#: text-interface.cc:129
 #, c-format
-msgid "\tprevious break: %d"
-msgstr "        coupure précédente : %d"
-
-#: lily-parser.cc:106
-msgid "Parsing..."
-msgstr "Analyse..."
+msgid "Cyclic markup detected: %s"
+msgstr "Markup avec référence circulaire : %s"
 
-#: lily-parser.cc:134
-msgid "braces do not match"
-msgstr "accolades non pairées"
+#. 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"
 
-#: score.cc:178
-msgid "already have music in score"
-msgstr "il y a déjà de la musique dans la partition"
+#: 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"
 
-#: score.cc:179
-msgid "this is the previous music"
-msgstr "voici la musique précédente"
+#: text-spanner-engraver.cc:85
+msgid "already have a text spanner"
+msgstr "extension de texte déjà présente"
 
-#: score.cc:184
-msgid "errors found, ignoring music expression"
-msgstr "suite à des erreurs répétées, l'expression musicale sera ignorée"
+#: text-spanner-engraver.cc:130
+msgid "unterminated text spanner"
+msgstr "extension de texte non terminée"
 
-#: change-iterator.cc:34
-#, c-format
-msgid "cannot change `%s' to `%s'"
-msgstr "impossible de changer « %s » en « %s »"
+#: tie-engraver.cc:117
+msgid "unterminated tie"
+msgstr "liaison de prolongation non terminée"
 
-#. 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"
+#: tie-engraver.cc:348
+msgid "lonely tie"
+msgstr "liaison de prolongation orpheline"
 
-#. 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
+#. Todo: should make typecheck?
+#.
+#. OTOH, Tristan Keuris writes 8/20 in his Intermezzi.
+#.
+#: time-signature-engraver.cc:75
 #, c-format
-msgid "not changing to same context type: %s"
-msgstr "pas de changement vers le même type de contexte : %s"
-
-#. FIXME: uncomprehensable message
-#: change-iterator.cc:106
-msgid "none of these in my family"
-msgstr "aucun de ceux-ci dans ma famille"
+msgid "strange time signature found: %d/%d"
+msgstr "Chiffrage de mesure inhabituel : %d/%d"
 
 #. If there is no such symbol, we default to the numbered style.
 #. (Here really with a warning!)
-#: time-signature.cc:94
+#: time-signature.cc:122
 #, 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"
+"symbole de chiffrage de mesure « %s » inconnu ;\n"
+"  retour à un style numérique."
 
-#: grob-interface.cc:68
+#: translator-ctors.cc:65
 #, c-format
-msgid "Unknown interface `%s'"
-msgstr "Interface inconnue : « %s »"
+msgid "unknown translator: `%s'"
+msgstr "translateur inconnu : « %s »"
 
-#: grob-interface.cc:79
+#: translator-group-ctors.cc:40
 #, c-format
-msgid "Grob `%s' has no interface for property `%s'"
-msgstr "L'objet graphique (Grob) « %s » n'a pas d'interface pour la propriété « %s »"
+msgid "fatal error.  Couldn't find type: %s"
+msgstr "Erreur fatale. Type inconnu : %s"
 
-#: open-type-font.cc:44
+#: translator-group.cc:188
 #, c-format
-msgid "cannot allocate %lu bytes"
-msgstr "impossible d'allouer %lu octets"
+msgid "cannot find: `%s'"
+msgstr "« %s » inconnu(e)"
 
-#: open-type-font.cc:48
+#: translator.cc:326
 #, c-format
-msgid "cannot load font table: %s"
-msgstr "impossible de charger la table des fontes : %s"
+msgid "Two simultaneous %s events, junking this one"
+msgstr "Deux événements %s simultanés, rejet de celui-ci"
 
-#: open-type-font.cc:53
+#: translator.cc:327
 #, c-format
-msgid "FreeType error: %s"
-msgstr "Erreur FreeType : %s"
+msgid "Previous %s event here"
+msgstr "Événement %s précédent ici"
 
-#: open-type-font.cc:111
+#: ttf.cc:480 ttf.cc:528
 #, c-format
-msgid "unsupported font format: %s"
-msgstr "format de police non supporté : %s"
+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.cc:113
-#, c-format
-msgid "error reading font file %s: %s"
-msgstr "erreur de lecture du fichier de fontes %s : %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"
 
-#: open-type-font.cc:188
-#, c-format
-msgid "FT_Get_Glyph_Name () Freetype error: %s"
-msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
+#: tuplet-engraver.cc:110
+msgid "No tuplet to end"
+msgstr "Aucun n-olet à terminer"
 
-#: midi-stream.cc:39
+#: vaticana-ligature-engraver.cc:400
 #, c-format
-msgid "cannot open for write: %s: %s"
-msgstr "impossible d'ouvrir le fichier en écriture : %s : %s"
+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é"
 
-#: midi-stream.cc:55
+#: vaticana-ligature-engraver.cc:466
+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."
+
+#: vaticana-ligature-engraver.cc:524
+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."
+
+#: vaticana-ligature-engraver.cc:736
 #, c-format
-msgid "cannot write to file: `%s'"
-msgstr "impossible d'écrire dans le fichier « %s »"
+msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
+msgstr "Vaticana_ligature_engraver : fixé « spacing-increment = %f » : ptr=%ul"
+
+#: vaticana-ligature.cc:94
+msgid "flexa-height undefined; assuming 0"
+msgstr "Vaticana_ligature : décalage en X indéfini ; ramené à 0"
+
+#: vaticana-ligature.cc:99
+msgid "ascending vaticana style flexa"
+msgstr "flexe de style vaticana ascendant"
+
+#. fixme: be more verbose.
+#: volta-engraver.cc:110
+msgid "cannot end volta spanner"
+msgstr "extension de reprise sans terminaison"
+
+#: 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"
+
+#: volta-engraver.cc:124
+msgid "also already have an ended spanner"
+msgstr "a déjà une extension terminée"
+
+#: volta-engraver.cc:125
+msgid "giving up"
+msgstr "abandon"
+
+#: parser.yy:161 parser.yy:175
+msgid "Too much lookahead"
+msgstr "Trop d'anticipation"
+
+#: parser.yy:835 parser.yy:1284
+msgid "not a context mod"
+msgstr "ceci n'est pas un module de contexte"
 
-#: parser.yy:820
+#: parser.yy:1027
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "dans la section \\score, utiliser \\layout au lieu de \\paper"
 
-#: parser.yy:844
+#: parser.yy:1051
 msgid "need \\paper for paper block"
 msgstr "\\paper est nécessaire pour définir les paramètres de la page"
 
-#: parser.yy:1363
-msgid "only \\consists takes non-string argument."
-msgstr "seul \\consists peut prendre un argument autre qu'une chaîne"
+#: parser.yy:1204
+msgid "Ignoring non-music expression"
+msgstr "Expression non musicale ignorée"
 
-#: parser.yy:1376
+#: parser.yy:2044
+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:2057
 msgid "Grob name should be alphanumeric"
 msgstr "Un nom de Grob devrait être alphanumérique"
 
-#: parser.yy:1685
-msgid "second argument must be pitch list"
-msgstr "le second argument doit être une liste de hauteurs"
+#: parser.yy:2261
+msgid "not a rhythmic event"
+msgstr "événement non rythmique"
 
-#: parser.yy:1716 parser.yy:1721 parser.yy:2194
+#: parser.yy:2357 parser.yy:2362
 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:1818
+#: parser.yy:2477
 msgid "expecting string as script definition"
 msgstr "chaîne requise pour définir un script"
 
-#: parser.yy:1973 parser.yy:2024
+#: parser.yy:2637 parser.yy:2681
 #, c-format
 msgid "not a duration: %d"
 msgstr "%d n'est pas une durée"
 
-#: parser.yy:2148
+#: parser.yy:2800
 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:2209
+#: parser.yy:2855
 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:3115
+msgid "not a markup"
+msgstr "n'est pas un « markup »"
 
-#: lexer.ll:190
+#: lexer.ll:218
 msgid "stray UTF-8 BOM encountered"
 msgstr "parasitage par UTF-8 BOM"
 
-#: lexer.ll:194
+#: lexer.ll:221
 msgid "Skipping UTF-8 BOM"
 msgstr "Escamotage d'UTF-8 BOM"
 
-#: lexer.ll:249
+#: lexer.ll:279
 #, 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:266
+#: lexer.ll:296
 msgid "quoted string expected after \\version"
 msgstr "\\version doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:270
+#: lexer.ll:300
 msgid "quoted string expected after \\sourcefilename"
 msgstr "\\sourcefilename doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:274
+#: lexer.ll:304
 msgid "integer expected after \\sourcefileline"
 msgstr "\\sourcefilename doit être suivi d'un nombre entier"
 
-#: lexer.ll:287
-msgid "EOF found inside a comment"
-msgstr "Fin de fichier (EOF) à l'intérieur du commentaire"
-
-#: lexer.ll:302
+#: lexer.ll:327
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput n'est pas permis en dehors des fichiers d'initialisation"
 
-#: lexer.ll:326
+#: lexer.ll:351
 #, 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:377
+msgid "string expected after \\include"
+msgstr "\\include doit être suivi d'une chaîne entre guillemets"
 
 #. backup rule
-#: lexer.ll:335
+#: lexer.ll:387
 msgid "end quote missing"
 msgstr "absence de guillemet fermant"
 
-#: lexer.ll:485
+#: lexer.ll:558
 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 ?"
+msgstr "Accolade repérée à la fin d'une parole. Manquerait-il une espace ?"
 
-#: lexer.ll:595
+#: lexer.ll:672
 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 ?"
+msgstr "Accolade repérée à la fin d'un « markup ». Manquerait-il une espace ?"
+
+#: lexer.ll:684
+msgid "EOF found inside a comment"
+msgstr "Fin de fichier (EOF) à l'intérieur du commentaire"
 
-#: lexer.ll:699
+#: lexer.ll:782
 #, c-format
-msgid "invalid character: `%c'"
-msgstr "caractère invalide : « %c »"
+msgid "invalid character: `%s'"
+msgstr "caractère invalide : « %s »"
 
-#: lexer.ll:814 lexer.ll:815
+#: lexer.ll:903 lexer.ll:904
 #, c-format
 msgid "unknown escaped string: `\\%s'"
-msgstr "chaîne d'échappement inconnue : « \\%s »"
+msgstr "chaîne d'échappement inconnue : « \\%s »"
+
+#: lexer.ll:1186 lexer.ll:1187
+msgid "non-UTF-8 input"
+msgstr "la source n'est pas en UTF-8"
 
-#: lexer.ll:924 lexer.ll:925
+#: lexer.ll:1230 lexer.ll:1231
 #, 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:925 lexer.ll:926
+#: lexer.ll:1231 lexer.ll:1232
 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:931 lexer.ll:932
-#, c-format
-msgid "program too old: %s (file requires: %s)"
-msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
-
-#: 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:198
-#, scheme-format
-msgid "cannot find description for property ~S (~S)"
-msgstr "impossible de trouver une description de la propriété ~S (~S)"
-
-#: parser-clef.scm:141 parser-clef.scm:181
-#, scheme-format
-msgid "unknown clef type `~a'"
-msgstr "type de clef inconnu : « ~a »"
-
-#: parser-clef.scm:142 parser-clef.scm:182
-#, scheme-format
-msgid "supported clefs: ~a"
-msgstr "clefs reconnues : ~a"
-
-#: document-backend.scm:132
-#, scheme-format
-msgid "pair expected in doc ~s"
-msgstr "le document ~s devrait contenir une paire"
-
-#: document-backend.scm:189
-#, scheme-format
-msgid "cannot find interface for property: ~S"
-msgstr "impossible de trouver l'interface pour la propriété ~S"
-
-#: document-backend.scm:199
-#, scheme-format
-msgid "unknown Grob interface: ~S"
-msgstr "interface d'objet graphique (Grob) inconnue : ~S"
-
-#: framework-eps.scm:108
-#, scheme-format
-msgid "Writing ~a..."
-msgstr "Écriture de ~a..."
-
-#: define-music-properties.scm:21 define-grob-properties.scm:21
-#: define-context-properties.scm:31
-#, scheme-format
-msgid "symbol ~S redefined"
-msgstr "symbole « ~S » redéfini"
-
-#: paper.scm:115
-msgid "set-global-staff-size: not in toplevel scope"
-msgstr "set-global-staff-size n'est pas à un niveau de portée globale"
-
-#: paper.scm:296
-#, scheme-format
-msgid "This is not a \\layout {} object, ~S"
-msgstr "~S n'est pas un objet de \\layout {}"
-
-#: paper.scm:308
-#, scheme-format
-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:323
-msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
-msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
-
-#: lily.scm:225
-msgid "Using (ice-9 curried-definitions) module\n"
-msgstr "Utilisation du module (ice-9 curried-definitions)\n"
-
-#: lily.scm:230
-msgid "Guile 1.8\n"
-msgstr "Guile 1.8\n"
-
-#: lily.scm:290
-#, scheme-format
-msgid "cannot find: ~A"
-msgstr "impossible de trouver ~A"
-
-#: lily.scm:350
-#, scheme-format
-msgid "wrong type for argument ~a.  Expecting ~a, found ~s"
-msgstr "type d'argument erroné pour ~a. Attendait ~a, ~s trouvé"
-
-#: lily.scm:716
-msgid "Compilation successfully completed"
-msgstr "Compilation menée à son terme, avec succès."
-
-#: lily.scm:717
-msgid "Compilation completed with warnings or errors"
-msgstr "Compilation menée à son terme, avec des avertissements ou erreurs."
-
-#: lily.scm:779
-#, scheme-format
-msgid "job ~a terminated with signal: ~a"
-msgstr "le travail ~a s'est terminé avec le signal ~a"
-
-#: lily.scm:782
-#, scheme-format
-msgid ""
-"logfile ~a (exit ~a):\n"
-"~a"
-msgstr ""
-"fichier journal ~a (sortie ~a) :\n"
-"~a"
-
-#: lily.scm:804 lily.scm:882
-#, scheme-format
-msgid "failed files: ~S"
-msgstr "erreur sur les fichiers ~S"
-
-#: lily.scm:873
-#, scheme-format
-msgid "Redirecting output to ~a..."
-msgstr "Redirection de la sortie vers ~a..."
-
-#: lily.scm:892
-#, scheme-format
-msgid "Invoking `~a'...\n"
-msgstr "Appel de « ~a »...\n"
-
-#: graphviz.scm:64
-#, scheme-format
-msgid "Writing graph `~a'..."
-msgstr "Écriture du graphique « ~a »..."
-
-#: framework-svg.scm:84
-#, scheme-format
-msgid "Updating font into: ~a"
-msgstr "Actualisation de la fonte dans ~a"
-
-#: 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é."
-
-#: 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: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 ; ignorée"
-
-#: 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 : ignorée"
-
-#: modal-transforms.scm:95
-msgid "negative replication count; ignoring"
-msgstr "compteur de réplication négatif : rien à transposer"
+#: lexer.ll:1237 lexer.ll:1238
+#, c-format
+msgid "program too old: %s (file requires: %s)"
+msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
 
-#: backend-library.scm:29 ps-to-png.scm:68
+#: backend-library.scm:27
 #, scheme-format
 msgid "Invoking `~a'..."
-msgstr "Appel de « ~a »..."
+msgstr "Appel de « ~a »..."
 
-#: backend-library.scm:34
+#: backend-library.scm:31
 #, scheme-format
-msgid "`~a' failed (~a)"
-msgstr "échec de « ~a » (~a)"
+msgid "`~a' failed (~a)\n"
+msgstr "échec de « ~a » (~a)\n"
 
-#: backend-library.scm:94
+#: backend-library.scm:90
 #, scheme-format
-msgid "Converting to `~a'..."
-msgstr "Conversion à « ~a »..."
+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:104
+#: backend-library.scm:99
 #, scheme-format
 msgid "Converting to ~a..."
-msgstr "Conversion à ~a..."
+msgstr "Conversion à « ~a »..."
 
-#: backend-library.scm:142
+#: backend-library.scm:137
 #, scheme-format
 msgid "Writing header field `~a' to `~a'..."
-msgstr "écriture du champ d'entête « ~a » dans « ~a »..."
+msgstr "écriture du champ d'entête « ~a » dans « ~a »..."
 
-#: backend-library.scm:192
+#: backend-library.scm:187
 #, scheme-format
 msgid "missing stencil expression `~S'"
-msgstr "absence d'expression stencil « ~S »"
-
-#: to-xml.scm:191
-#, scheme-format
-msgid "assertion failed: ~S"
-msgstr "erreur d'assertion : ~S"
+msgstr "absence d'expression stencil « ~S »"
 
-#: chord-entry.scm:49
+#: chord-entry.scm:52
 #, scheme-format
 msgid "Spurious garbage following chord: ~A"
-msgstr "Information incompréhensible à la suite de l'accord « ~A »"
-
-#: lily-library.scm:758
-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}."
+msgstr "Information incompréhensible à la suite de l'accord « ~A »"
 
-#: lily-library.scm:832
+#: define-context-properties.scm:31 define-grob-properties.scm:21
+#: define-music-properties.scm:21
 #, scheme-format
-msgid "unknown unit: ~S"
-msgstr "unité inconnue : ~S"
-
-#: lily-library.scm:858 lily-library.scm:867
-msgid "warning:"
-msgstr "Avertissement :"
+msgid "symbol ~S redefined"
+msgstr "symbole « ~S » redéfini"
 
-#: lily-library.scm:860
+#: define-event-classes.scm:67
 #, scheme-format
-msgid "no \\version statement found, please add~afor future compatibility"
-msgstr ""
-"déclaration de \\version absente ;\n"
-"ajoutez ~a pour une compatibilité future"
+msgid "unknown parent class `~a'"
+msgstr "Classe parente inconnue : « ~a »"
 
-#: lily-library.scm:868
-msgid "old relative compatibility not used"
-msgstr "compatibilité avec l'ancien mode relatif non utilisée"
-
-#: 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"
+#: 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 ?"
 
-#: output-ps.scm:289 output-svg.scm:550
+#: define-markup-commands.scm:2614
 #, scheme-format
-msgid "unknown line-cap-style: ~S"
-msgstr "line-cap-style inconnu : ~S"
+msgid "Cannot find glyph ~a"
+msgstr "impossible de trouver le glyphe « ~a »"
 
-#: output-ps.scm:294 output-svg.scm:556
+#: define-markup-commands.scm:3040
 #, scheme-format
-msgid "unknown line-join-style: ~S"
-msgstr "line-join-style inconnu : ~S"
+msgid "no brace found for point size ~S "
+msgstr "il n'y a pas d'accolade qui fasse ~S points"
 
-#: output-svg.scm:47
+#: define-markup-commands.scm:3041
 #, scheme-format
-msgid "undefined: ~S"
-msgstr "~S indéfini(e)"
+msgid "defaulting to ~S pt"
+msgstr "application de la taille par défaut (~S pt)"
 
-#: output-svg.scm:151
+#: define-markup-commands.scm:3194
 #, scheme-format
-msgid "cannot decypher Pango description: ~a"
-msgstr "la description de Pango ne peut être déchiffrée : ~a"
+msgid "not a valid duration string: ~a"
+msgstr "chaîne de durée invalide : ~a"
 
-#: output-svg.scm:231
-msgid "Glyph must have a unicode value"
-msgstr "Un glyphe doit avoir une valeur unicode"
+#: define-music-types.scm:765
+#, scheme-format
+msgid "symbol expected: ~S"
+msgstr "symbole requis : ~S"
 
-#: output-svg.scm:283 output-svg.scm:293
+#: define-music-types.scm:768
 #, scheme-format
-msgid "cannot find SVG font ~S"
-msgstr "fonte SVG ~S introuvable"
+msgid "cannot find music object: ~S"
+msgstr "impossible de trouver l'objet de type musique : ~S"
 
-#: flag-styles.scm:148
+#: define-music-types.scm:787
 #, scheme-format
-msgid "flag stroke `~a' or `~a' not found"
-msgstr "type de crochet inconnu : « ~a » ou « ~a »"
+msgid "unknown repeat type `~S'"
+msgstr "type de répétition inconnu : « ~S »"
+
+#: define-music-types.scm:788
+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"
 
 #: define-note-names.scm:962
 msgid "Select note names language."
 msgstr "Sélection de la langue des noms de note."
 
-#: define-note-names.scm:969
+#: define-note-names.scm:968
 #, scheme-format
 msgid "Using `~a' note names..."
-msgstr "Utilisation de `~a' pour le nom des notes..."
+msgstr "Utilisation de « ~a » pour le nom des notes..."
 
-#: define-note-names.scm:972
+#: 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. Abandon."
+msgstr ""
+"« ~a » n'est pas une langue reconnue pour les noms de note.\n"
+" Abandon."
 
-#: define-music-types.scm:740
+#: document-backend.scm:132
 #, scheme-format
-msgid "symbol expected: ~S"
-msgstr "symbole requis : ~S"
+msgid "pair expected in doc ~s"
+msgstr "le document ~s devrait contenir une paire"
 
-#: define-music-types.scm:743
+#: document-backend.scm:189
 #, scheme-format
-msgid "cannot find music object: ~S"
-msgstr "impossible de trouver l'objet de type musique : ~S"
+msgid "cannot find interface for property: ~S"
+msgstr "impossible de trouver l'interface pour la propriété « ~S »"
 
-#: define-music-types.scm:762
+#: document-backend.scm:199
 #, scheme-format
-msgid "unknown repeat type `~S'"
-msgstr "type de répétition inconnu : « ~S »"
-
-#: define-music-types.scm:763
-msgid "See define-music-types.scm for supported repeats"
-msgstr "Consulter define-music-types.scm pour connaître les répétitions prises en charge"
+msgid "unknown Grob interface: ~S"
+msgstr "interface d'objet graphique (Grob) inconnue : ~S"
 
-#: translation-functions.scm:341
+#: documentation-lib.scm:59
 #, 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 "Processing ~S..."
+msgstr "Traitement de « ~S »..."
 
-#: translation-functions.scm:385
+#: documentation-lib.scm:176
 #, scheme-format
-msgid "No open string for pitch ~a"
-msgstr "Pas de corde à vide pour la hauteur ~a"
+msgid "Writing ~S..."
+msgstr "Écriture de « ~S »..."
 
-#: translation-functions.scm:400
+#: documentation-lib.scm:188
 #, scheme-format
-msgid "Requested string for pitch requires negative fret: string ~a pitch ~a"
-msgstr "Hauteur et corde requises demandent un fret négatif : corde ~a hauteur ~a"
+msgid "cannot find description for property `~S' (~S)"
+msgstr ""
+"impossible de trouver une description de la propriété « ~S »\n"
+" (~S)"
 
-#: translation-functions.scm:401
-msgid "Ignoring string request."
-msgstr "Cette corde sera ignorée"
+#: 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)"
 
-#: translation-functions.scm:414
+#: flag-styles.scm:151
 #, scheme-format
-msgid "No string for pitch ~a (given frets ~a)"
-msgstr "Aucune corde ne contient la hauteur ~a avec un fret ~a"
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "type de crochet inconnu : « ~a » ou « ~a »"
 
-#: translation-functions.scm:515
+#: framework-eps.scm:108
 #, 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"
+msgid "Writing ~a..."
+msgstr "Écriture de « ~a »..."
 
 #: framework-ps.scm:250
 #, scheme-format
 msgid "cannot embed ~S=~S"
-msgstr "intégration impossible : ~S=~S"
+msgstr "intégration impossible : ~S=~S"
 
 #: framework-ps.scm:293
 #, scheme-format
 msgid "cannot extract file matching ~a from ~a"
-msgstr "impossible d'extraire le fichier ~a à partir de ~a"
+msgstr "impossible d'extraire le fichier « ~a » à partir de « ~a »"
 
 #: framework-ps.scm:311
 #, scheme-format
@@ -3487,7 +3636,7 @@ msgstr "imposible de réaliser l'intégration ~S=~S"
 msgid "do not know how to embed font ~s ~s ~s"
 msgstr "impossible d'intégrer les fontes ~s ~s ~s"
 
-#: framework-ps.scm:669
+#: framework-ps.scm:686
 msgid ""
 "\n"
 "The PostScript backend does not support the\n"
@@ -3515,123 +3664,336 @@ msgstr ""
 "  %% Start cut-&-pastable-section\n"
 "  %% ****************************************************************\n"
 
-#: music-functions.scm:268
+#: framework-svg.scm:84
+#, scheme-format
+msgid "Updating font into: ~a"
+msgstr "Actualisation de la fonte dans « ~a »"
+
+#: graphviz.scm:64
+#, scheme-format
+msgid "Writing graph `~a'..."
+msgstr "Écriture du graphique « ~a »..."
+
+#: 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é."
+
+#: 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."
+
+#: lily-library.scm:299
+msgid "Music unsuitable for context-mod"
+msgstr "Inadéquation entre la musique et le context-mod"
+
+#: lily-library.scm:349
+#, scheme-format
+msgid "Cannot find context-def \\~a"
+msgstr "Impossible de repérer un context-def (définition de contexte) \\~a"
+
+#: lily-library.scm:365
+msgid "Music unsuitable for output-def"
+msgstr "Inadéquation entre la musique et le output-def"
+
+#: lily-library.scm:892
+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}."
+
+#: lily-library.scm:966
+#, scheme-format
+msgid "unknown unit: ~S"
+msgstr "unité inconnue : ~S"
+
+#: lily-library.scm:991
+#, scheme-format
+msgid "no \\version statement found, please add~afor future compatibility"
+msgstr ""
+"déclaration de \\version absente ;\n"
+"  ajoutez ~a pour une compatibilité future"
+
+#: lily-library.scm:997
+msgid "old relative compatibility not used"
+msgstr "compatibilité avec l'ancien mode relatif non utilisée"
+
+#: lily.scm:234
+msgid "Using (ice-9 curried-definitions) module\n"
+msgstr "Utilisation du module (ice-9 curried-definitions)\n"
+
+#: lily.scm:237
+msgid "Guile 1.8\n"
+msgstr "Guile 1.8\n"
+
+#: lily.scm:297
+#, scheme-format
+msgid "cannot find: ~A"
+msgstr "impossible de trouver « ~A »"
+
+#: lily.scm:708
+msgid "Success: compilation successfully completed"
+msgstr "Compilation menée à son terme, avec succès."
+
+#: lily.scm:709
+msgid "Compilation completed with warnings or errors"
+msgstr "Compilation menée à son terme, avec des avertissements ou erreurs."
+
+#: lily.scm:771
+#, scheme-format
+msgid "job ~a terminated with signal: ~a"
+msgstr "le travail « ~a » s'est terminé avec le signal ~a"
+
+#: lily.scm:774
+#, scheme-format
+msgid ""
+"logfile ~a (exit ~a):\n"
+"~a"
+msgstr ""
+"fichier journal « ~a » (sortie ~a) :\n"
+"~a"
+
+#: lily.scm:796 lily.scm:882
+#, scheme-format
+msgid "failed files: ~S"
+msgstr "erreur sur les fichiers ~S"
+
+#: lily.scm:873
+#, scheme-format
+msgid "Redirecting output to ~a..."
+msgstr "Redirection de la sortie vers « ~a »..."
+
+#: lily.scm:892 ps-to-png.scm:66
+#, scheme-format
+msgid "Invoking `~a'...\n"
+msgstr "Appel de « ~a »...\n"
+
+#: ly-syntax-constructors.scm:66
+#, scheme-format
+msgid "~a function cannot return ~a"
+msgstr "La fonction ~a ne peut retourner ~a."
+
+#: ly-syntax-constructors.scm:75
+#, 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:188
+#, scheme-format
+msgid "Invalid property operation ~a"
+msgstr "Opération de propriété invalide : ~a"
+
+#: markup-macros.scm:331
+#, 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"
+
+#: markup-macros.scm:337
+#, scheme-format
+msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
+msgstr ""
+"Argument invalide à la position ~A.\n"
+" ~A requis, trouvé ~S ."
+
+#: markup-macros.scm:373
+#, scheme-format
+msgid "Not a markup command: ~A"
+msgstr "~A n'est pas une commande de type « markup »"
+
+#: 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"
+
+#: music-functions.scm:272
 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:297
+#: music-functions.scm:303
 #, scheme-format
 msgid "invalid tremolo repeat count: ~a"
-msgstr "nombre de répétition en trémolo invalide : ~a"
+msgstr "nombre de répétition en trémolo invalide : ~a"
 
-#: music-functions.scm:618
+#: music-functions.scm:689
+msgid "Bad chord repetition"
+msgstr "Mauvaise répétition d'accord"
+
+#: music-functions.scm:724
 #, scheme-format
 msgid "music expected: ~S"
 msgstr "~S requiert de la musique"
 
-#. FIXME: uncomprehensable message
-#: music-functions.scm:662
-#, scheme-format
-msgid "Bar check failed.  Expect to be at ~a, instead at ~a"
-msgstr ""
-"Échec du contrôle de barre de mesure. \n"
-"Aurait dû se trouver à ~a au lieu de ~a"
-
-#: music-functions.scm:846
+#: music-functions.scm:1042
 #, 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:982
+#: music-functions.scm:1180
 msgid "Add @var{octave-shift} to the octave of @var{pitch}."
 msgstr "Ajoute @var{octave-shift} à l'octave de @var{hauteur}."
 
-#: music-functions.scm:1037
+#: music-functions.scm:1240
 #, scheme-format
 msgid "Unknown octaveness type: ~S "
-msgstr "Octave inconnue : « ~S »"
+msgstr "Octave inconnue : « ~S »"
 
-#: music-functions.scm:1038
+#: music-functions.scm:1241
 msgid "Defaulting to 'any-octave."
 msgstr "Application de la valeur par défaut 'any-octave."
 
-#: music-functions.scm:1378
+#: music-functions.scm:1578
 #, 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:79
-msgid "All classes must be the last in their matrilineal line."
-msgstr "Toute classe doit être la dernière de sa lignée."
+#: output-ps.scm:277 output-svg.scm:524
+#, scheme-format
+msgid "unknown line-cap-style: ~S"
+msgstr "line-cap-style inconnu : ~S"
 
-#: define-event-classes.scm:83
-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."
+#: output-ps.scm:282 output-svg.scm:530
+#, scheme-format
+msgid "unknown line-join-style: ~S"
+msgstr "line-join-style inconnu : ~S"
 
-#: define-event-classes.scm:149
+#: output-svg.scm:47
 #, scheme-format
-msgid "event class ~A seems to be unused"
-msgstr "la classe d'événement ~A semble être inutilisée"
+msgid "undefined: ~S"
+msgstr "~S indéfini(e)"
 
-#. should be programming-error
-#: define-event-classes.scm:155
+#: output-svg.scm:157
 #, scheme-format
-msgid "translator listens to nonexisting event class ~A"
-msgstr "le traducteur écoute la classe d'événements ~A inexistante"
+msgid "cannot decypher Pango description: ~a"
+msgstr "la description de Pango ne peut être déchiffrée : ~a"
+
+#: output-svg.scm:237
+msgid "Glyph must have a unicode value"
+msgstr "Un glyphe doit avoir une valeur unicode"
 
-#: markup.scm:223
+#: output-svg.scm:289 output-svg.scm:299
 #, scheme-format
-msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
-msgstr "Nombre d'arguments erroné. Requis : ~A, présent(s) ~A : ~S"
+msgid "cannot find SVG font ~S"
+msgstr "fonte SVG « ~S » introuvable."
+
+#: 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"
 
-#: markup.scm:229
+#: paper.scm:315
 #, scheme-format
-msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
-msgstr "Argument invalide à la position ~A. ~A attendu, ~S trouvé."
+msgid "This is not a \\layout {} object, ~S"
+msgstr "~S n'est pas un objet de \\layout {}"
 
-#: markup.scm:292
+#: paper.scm:327
 #, scheme-format
-msgid "Not a markup command: ~A"
-msgstr "~A n'est pas une commande de type « markup»"
+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:342
+msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
+msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
 
-#: ps-to-png.scm:74
+#: parser-clef.scm:143 parser-clef.scm:183
+#, scheme-format
+msgid "unknown clef type `~a'"
+msgstr "type de clef inconnu : « ~a »"
+
+#: parser-clef.scm:144 parser-clef.scm:184
+#, scheme-format
+msgid "supported clefs: ~a"
+msgstr "clefs reconnues : ~a"
+
+#: parser-ly-from-scheme.scm:73
+msgid "error in #{ ... #}"
+msgstr "erreur dans #{ ... #}"
+
+#: part-combiner.scm:598
+#, scheme-format
+msgid "quoted music `~a' is empty"
+msgstr "il n'y a rien à reproduire de « ~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:803
-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 ?"
+#: to-xml.scm:191
+#, scheme-format
+msgid "assertion failed: ~S"
+msgstr "erreur d'assertion : ~S"
 
-#: define-markup-commands.scm:2404
+#: translation-functions.scm:359
 #, scheme-format
-msgid "Cannot find glyph ~a"
-msgstr "impossible de trouver le glyphe ~a"
+msgid "Negative fret for pitch ~a on string ~a"
+msgstr "La hauteur « ~a » sur la corde « ~a » donne un fret négatif"
 
-#: define-markup-commands.scm:2830
+#: translation-functions.scm:362
 #, scheme-format
-msgid "no brace found for point size ~S "
-msgstr "il n'y a pas d'accolade qui fasse ~S points"
+msgid "Missing fret for pitch ~a on string ~a"
+msgstr "Aucun fret pour « ~a » sur la corde « ~a »"
 
-#: define-markup-commands.scm:2831
+#: translation-functions.scm:413
 #, scheme-format
-msgid "defaulting to ~S pt"
-msgstr "application de la taille par défaut (~S pt)"
+msgid "No open string for pitch ~a"
+msgstr "Pas de corde à vide pour la hauteur « ~a »"
 
-#: define-markup-commands.scm:2984
+#: translation-functions.scm:428 translation-functions.scm:440
 #, scheme-format
-msgid "not a valid duration string: ~a"
-msgstr "chaîne de durée invalide : ~a"
+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 »"
+
+#: translation-functions.scm:431
+msgid "Ignoring string request and recalculating."
+msgstr "Cette corde sera ignorée et redéfinie."
 
-#: ly-syntax-constructors.scm:51
-msgid "Music head function must return Music object"
-msgstr "Une fonction musicale primitive devrait renvoyer un objet Music"
+#: translation-functions.scm:443
+msgid "Ignoring note in tablature."
+msgstr "Cette note sera ignorée dans la tablature."
 
-#: ly-syntax-constructors.scm:177
+#: translation-functions.scm:466
 #, scheme-format
-msgid "Invalid property operation ~a"
-msgstr "Opération de propriété invalide : ~a"
+msgid "No string for pitch ~a (given frets ~a)"
+msgstr "Aucune corde ne contient la hauteur « ~a » avec un fret « ~a »"
+
+#: translation-functions.scm:571
+#, 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"