]> git.donarmstrong.com Git - lilypond.git/blobdiff - po/fr.po
Merge branch 'lilypond/translation' of ssh://git.sv.gnu.org/srv/git/lilypond into...
[lilypond.git] / po / fr.po
index d398da5778e1d35bffa229141b5ba0abba34c245..93157579340e0a44d5ea3bd29a25e8b798d3ecfb 100644 (file)
--- a/po/fr.po
+++ b/po/fr.po
@@ -1,15 +1,17 @@
+# Translation of 'lilypond' messages to French.
+# This file is distributed under the same license as the lilypond package.
 # 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 <lolyfan@wanadoo.fr>, 2007
+# Jean-Charles Malahieude <lilyfan@orange.fr>, 2007-2009
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: lilypond 2.11.22\n"
+"Project-Id-Version: lilypond 2.13.3\n"
 "Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2007-04-28 12:03+0200\n"
-"PO-Revision-Date: 2007-10-02 21:50+0200\n"
-"Last-Translator: Jean-Charles Malahieude <lolyfan@wanadoo.fr>\n"
+"POT-Creation-Date: 2008-12-20 11:58+0100\n"
+"PO-Revision-Date: 2009-07-28 18:25+0200\n"
+"Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
 "Language-Team: French <traduc@traduc.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
@@ -32,478 +34,1161 @@ msgstr ""
 msgid "%s has been replaced by %s"
 msgstr "%s a été remplacé par %s"
 
-#: convertrules.py:2408
+#: convertrules.py:24 musicexp.py:16 convert-ly.py:50 lilypond-book.py:94
+#: warn.cc:48 input.cc:90
+#, c-format, python-format
+msgid "warning: %s"
+msgstr "Avertissement : %s"
+
+#: convertrules.py:49 convertrules.py:99
+msgid "\\header { key = concat + with + operator }"
+msgstr "\\header { clé = concat + avec + opérateur }"
+
+#: convertrules.py:58
+#, python-format
+msgid "deprecated %s"
+msgstr "%s est obsolète"
+
+#: convertrules.py:70
+msgid "deprecated \\textstyle, new \\key syntax"
+msgstr "\\textstyle est obsolète ; utiliser désormais la syntaxe \\key"
+
+#: convertrules.py:86 convertrules.py:1906 convertrules.py:2085
+#: convertrules.py:2237 convertrules.py:2567
+msgid "bump version for release"
+msgstr "sauter de version pour mise à jour"
+
+#: convertrules.py:103
+msgid "new \\header format"
+msgstr "nouveau format de \\header"
+
+#: convertrules.py:132
+msgid "\\translator syntax"
+msgstr "syntaxe de \\translator"
+
+#: convertrules.py:184
+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:2379
+#, python-format
+msgid "deprecate %s"
+msgstr "%s obsolète"
+
+#: convertrules.py:290
+#, python-format
+msgid "deprecate %s "
+msgstr "%s obsolète"
+
+#: convertrules.py:319
+msgid "new \\notenames format"
+msgstr "nouveau format de \\notenames"
+
+#: convertrules.py:337
+msgid "new tremolo format"
+msgstr "nouveau format de tremolo"
+
+#: convertrules.py:342
+msgid "Staff_margin_engraver deprecated, use 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:457
+msgid "new \\textscript markup text"
+msgstr "nouvelle étiquette de texte \\textscript"
+
+#: convertrules.py:530
+#, python-format
+msgid "identifier names: %s"
+msgstr "Noms des identificateurs : %s"
+
+#: convertrules.py:569
+msgid "point-and-click argument changed to procedure."
+msgstr "L'argument de point-and-click a été changé en procédure."
+
+#: convertrules.py:611
+msgid "semicolons removed"
+msgstr "Suppression des points-virgules"
+
+#. 40 ?
+#: convertrules.py:654
+#, python-format
+msgid "%s property names"
+msgstr "Nom des propriétés %s"
+
+#: convertrules.py:724
+msgid "automaticMelismata turned on by default"
+msgstr "automaticMelismata est activé par défaut."
+
+#: convertrules.py:963 convertrules.py:1682 convertrules.py:1943
+#: convertrules.py:2190
+#, python-format
+msgid "remove %s"
+msgstr "Retrait de %s"
+
+#: convertrules.py:1001 convertrules.py:1005
+msgid "cluster syntax"
+msgstr "Syntaxe de cluster"
+
+#: convertrules.py:1014
+msgid "new Pedal style syntax"
+msgstr "nouvelle syntaxe du style de Pedal"
+
+#: convertrules.py:1273
+msgid ""
+"New relative mode,\n"
+"Postfix articulations, new text markup syntax, new chord syntax."
+msgstr ""
+"Nouveau mode relatif,\n"
+"articulations Postfix, nouvelle syntaxe des étiquettes de texte,\n"
+"nouvelle syntaxe d'accord"
+
+#: convertrules.py:1286
+msgid "Remove - before articulation"
+msgstr "Retrait du - précédant l'articulation"
+
+#: convertrules.py:1324
+#, python-format
+msgid "%s misspelling"
+msgstr "%s mal orthographié"
+
+#: convertrules.py:1346
+msgid "Swap < > and << >>"
+msgstr "Interchanger < > et << >>"
+
+#: convertrules.py:1349
+msgid "attempting automatic \\figures conversion.  Check results!"
+msgstr ""
+"tentative de convertir automatiquement les \\figures. \n"
+"Résultats à vérifier !"
+
+#: convertrules.py:1400
+msgid "Use Scheme code to construct arbitrary note events."
+msgstr "Utiliser du code Scheme pour construire des événements note arbitraires."
+
+#: convertrules.py:1407
+msgid ""
+"use symbolic constants for alterations,\n"
+"remove \\outputproperty, move ly:verbose into ly:get-option"
+msgstr ""
+"utiliser des constantes symboliques pour les altérations,\n"
+"supprimer \\outputproperty, déplacer ly:verbose à l'intérieur de ly:get-option"
+
+#: convertrules.py:1432
+#, python-format
+msgid ""
+"\\outputproperty found,\n"
+"Please hand-edit, using\n"
+"\n"
+"  \\applyoutput #(outputproperty-compatibility %s '%s <GROB PROPERTY VALUE>)\n"
+"\n"
+"as a substitution text."
+msgstr ""
+"Un \\outputproperty a été localisé.\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
+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"
+"\n"
+"* 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"
+"le nombre d'arguments d'une altération a été doublé. \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
+msgid "removal of automaticMelismata; use melismaBusyProperties instead."
+msgstr "suppression de automaticMelismata au profit de melismaBusyProperties"
+
+#: convertrules.py:1600
+msgid "\\partcombine syntax change to \\newpartcombine"
+msgstr "La syntaxe de \\partcombine évolue avec \\newpartcombine"
+
+#: convertrules.py:1628
+msgid ""
+"Drum notation changes, Removing \\chordmodifiers, \\notenames.\n"
+"Harmonic notes. Thread context removed. Lyrics context removed."
+msgstr ""
+"Changements de notation pour percussions. \\chordmodifiers \\notenames supprimés.\n"
+"Notes harmoniques. Contextes Thread et Lyrics supprimés."
+
+#: convertrules.py:1632
+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
+#, python-format
+msgid ""
+"\n"
+"%s found. Check file manually!\n"
+msgstr ""
+"\n"
+"Détection de %s. Vérifier le fichier manuellement !\n"
+
+#: convertrules.py:1643
+msgid "Drum notation"
+msgstr "Notation de percussions"
+
+#: convertrules.py:1702
+msgid "new syntax for property settings:"
+msgstr "nouvelle syntaxe des réglages de propriétés :"
+
+#: convertrules.py:1728
+msgid "Property setting syntax in \\translator{ }"
+msgstr "Syntaxe pour régler une propriété dans \\translator{ }"
+
+#: convertrules.py:1767
+msgid "Scheme grob function renaming"
+msgstr "Renommage de fonction grob Scheme"
+
+#: convertrules.py:1780
+#, python-format
+msgid "use %s"
+msgstr "Utilisation : %s"
+
+#: convertrules.py:1797
+msgid "More Scheme function renaming"
+msgstr "Renommage d'autres fonctions Scheme"
+
+#: convertrules.py:1925
+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"
+
+#: convertrules.py:2011
+msgid ""
+"\\foo -> \\foomode (for chords, notes, etc.)\n"
+"fold \\new FooContext \\foomode into \\foo."
+msgstr ""
+"\\foo -> \\foomode (pour accords, notes, etc.)\n"
+"incorporer « \\new FooContext \\foomode » dans \\foo."
+
+#: convertrules.py:2049
+msgid ""
+"staff size should be changed at top-level\n"
+"with\n"
+"\n"
+"  #(set-global-staff-size <STAFF-HEIGHT-IN-POINT>)\n"
+"\n"
+msgstr ""
+"la taille des portées devrait être changée au niveau le plus haut\n"
+"avec\n"
+"\n"
+"  #(set-global-staff-size <HAUTEUR-DE-PORTÉE-EN-POINTS>)\n"
+"\n"
+
+#: convertrules.py:2069
+msgid "regularize other identifiers"
+msgstr "normaliser les autres identificateurs"
+
+#: convertrules.py:2137
+msgid "\\encoding: smart recode latin1..utf-8. Remove ly:point-and-click"
+msgstr "\\encoding : smart recode latin1..utf-8. Supprimer ly:point-and-click"
+
+#: convertrules.py:2150
 msgid "LilyPond source must be UTF-8"
 msgstr "Le fichier source LilyPond doit être codé en UTF-8."
 
-#: convertrules.py:2411
+#: convertrules.py:2153
 msgid "Try the texstrings backend"
 msgstr "Essayer le moteur texstrings (texstrings backend)."
 
-#: convertrules.py:2414
+#: convertrules.py:2156
 #, python-format
 msgid "Do something like: %s"
 msgstr "Faites quelque chose comme : %s"
 
-#: convertrules.py:2417
+#: convertrules.py:2159
 msgid "Or save as UTF-8 in your editor"
 msgstr "Ou sauvegarder en format UTF-8 à l'aide de votre éditeur"
 
-#: fontextract.py:26
+#: convertrules.py:2213
+msgid "warn about auto beam settings"
+msgstr "attention aux réglages des ligatures automatiques"
+
+#: convertrules.py:2218
+msgid "auto beam settings"
+msgstr "réglages des ligatures automatiques"
+
+#: convertrules.py:2220
+msgid ""
+"\n"
+"Auto beam settings must now specify each interesting moment in a measure\n"
+"explicitely; 1/4 is no longer multiplied to cover moments 1/2 and 3/4 too.\n"
+msgstr ""
+"\n"
+"Le réglage des ligatures automatiques doit explicitement spécifier chaque moment\n"
+"de la mesure. 1/4 ne prend désormais plus en charge 1/2 et 3/4.\n"
+
+#: convertrules.py:2334
+msgid "verticalAlignmentChildCallback has been deprecated"
+msgstr "verticalAlignmentChildCallback est désuet"
+
+#: convertrules.py:2338
+msgid "Remove callbacks property, deprecate XY-extent-callback."
+msgstr "Supprimer les propriétés de rappel, les XY-extent-callback sont obsolètes."
+
+#: convertrules.py:2359
+msgid "Use grob closures iso. XY-offset-callbacks."
+msgstr "Utiliser la clôture des grobs comme avec XY-offset-callbacks."
+
+#: convertrules.py:2421
+msgid "foobar -> foo-bar for \\paper, \\layout"
+msgstr "foobar -> foo-bar pour \\paper, \\layout"
+
+#: convertrules.py:2531
+msgid "deprecate \\tempo in \\midi"
+msgstr "\\tempo au sein d'une section \\midi est obsolète"
+
+#: convertrules.py:2578
+msgid "deprecate cautionary-style. Use AccidentalCautionary properties"
+msgstr "cautionary-style est obsolète. Utiliser les propriétés AccidentalCautionary."
+
+#: convertrules.py:2591
+msgid "Rename accidental glyphs, use glyph-name-alist."
+msgstr "Pour renommer les glyphes des altérations, utiliser glyph-name-alist."
+
+#: convertrules.py:2646
+msgid "edge-text settings for TextSpanner."
+msgstr "réglages des limites de texte pour TextSpanner."
+
+#: convertrules.py:2647
+#, python-format
+msgid ""
+"Use\n"
+"\n"
+"%s"
+msgstr ""
+"Utilisation : \n"
+"\n"
+"%s"
+
+#: convertrules.py:2686
+msgid "Use #'style not #'dash-fraction to select solid/dashed lines."
+msgstr ""
+"Utiliser #'style  et non #'dash-fraction pour obtenir des lignes continues\n"
+"ou pointillées."
+
+#: convertrules.py:2692
+msgid "all settings related to dashed lines.\n"
+msgstr "tous les réglages concernant les lignes pointillées.\n"
+
+#: convertrules.py:2693
+msgid "Use \\override ... #'style = #'line for solid lines and\n"
+msgstr "Utiliser \\override ... #'style = #'line pour des lignes pleines, et\n"
+
+#: convertrules.py:2694
+msgid "\t\\override ... #'style = #'dashed-line for dashed lines."
+msgstr "\t\\override ... #'style = #'dashed-line pour des lignes pointillées."
+
+#: convertrules.py:2730
+msgid ""
+"metronomeMarkFormatter uses text markup as second argument,\n"
+"fret diagram properties moved to fret-diagram-details."
+msgstr ""
+"le deuxième argument de metronomeMarkFormatter doit être une étiquette textuelle,\n"
+"les propriétés de tablature sont désormais dans fret-diagram-details."
+
+#: convertrules.py:2735
+msgid "metronomeMarkFormatter got an additional text argument.\n"
+msgstr "metronomeMarkFormatter prend un argument textuel suplémentaire.\n"
+
+#: convertrules.py:2736
+#, python-format
+msgid ""
+"The function assigned to Score.metronomeMarkFunction now uses the signature\n"
+"%s"
+msgstr ""
+"La fonction assignée à Score.metronomeMarkFunction utilise la signature\n"
+"%s"
+
+#: convertrules.py:2799
+msgid "\\put-adjacent argument order.\n"
+msgstr "ordre de l'argument \\put-adjacent\n"
+
+#: convertrules.py:2800
+msgid "Axis and direction now come before markups:\n"
+msgstr "Axe et direction doivent précéder les étiquettes :\n"
+
+#: convertrules.py:2801
+msgid "\\put-adjacent axis dir markup markup."
+msgstr "\\put-adjacent axe direction étiquette étiquette."
+
+#: convertrules.py:2832
+msgid "re-definition of InnerStaffGroup.\n"
+msgstr "redéfinition de InnerStaffGroup.\n"
+
+#: convertrules.py:2838
+msgid "re-definition of InnerChoirStaff.\n"
+msgstr "redéfinition de InnerChoirStaff.\n"
+
+#: convertrules.py:2851
+msgid "stringTuning must be added to addChordShape call.\n"
+msgstr "stringTuning est requis lors de l'appel à addChordShape. \n"
+
+#: convertrules.py:2857
+msgid "stringTuning must be added to chord-shape call.\n"
+msgstr "stringTuning est requis lors de l'appel à chord-shape.\n"
+
+#: fontextract.py:25
 #, python-format
 msgid "Scanning %s"
-msgstr "Scrutation de %s"
+msgstr "Scannage de %s"
 
-#: fontextract.py:71
+#: fontextract.py:70
 #, python-format
 msgid "Extracted %s"
 msgstr "Extraction de %s"
 
-#: fontextract.py:86
+#: fontextract.py:85
 #, python-format
 msgid "Writing fonts to %s"
 msgstr "Écriture des fontes vers %s"
 
-#: lilylib.py:85 lilylib.py:136
+#: lilylib.py:91 lilylib.py:142
 #, python-format
 msgid "Invoking `%s'"
-msgstr "Invocation de « %s »"
+msgstr "Appel de « %s »"
 
-#: lilylib.py:87 lilylib.py:138
+#: lilylib.py:93 lilylib.py:144
 #, python-format
 msgid "Running %s..."
 msgstr "Exécution de %s..."
 
-#: lilylib.py:203
+#: lilylib.py:209
 #, python-format
 msgid "Usage: %s"
 msgstr "Utilisation : %s"
 
-#: abc2ly.py:1342 convert-ly.py:71 lilypond-book.py:110 midi2ly.py:858
+#: musicexp.py:215 musicexp.py:220
+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:482
+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"
+
+#. TODO: Implement this using actual_type and normal_type!
+#: musicexp.py:511
+msgid "Tuplet brackets displaying both note durations are not implemented, using default"
+msgstr "Les crochets de nolet indiquant le deux valeurs rythmiques ne sont pas implémentés ; utilisation du style par défaut"
+
+#: musicexp.py:656
+#, 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:665
+msgid "encountered repeat without body"
+msgstr "réprise vide détectée"
+
+#. no self.elements!
+#: musicexp.py:835
+#, python-format
+msgid "Grace note with no following music: %s"
+msgstr "Apoggiature non suivie de musique :%s"
+
+#: musicexp.py:997
+#, python-format
+msgid "Invalid octave shift size found: %s. Using no shift."
+msgstr "Décalage d'octave invalide : %s. Décalage non appliqué."
+
+#: musicexp.py:1455
+#, python-format
+msgid "Unable to convert alteration %s to a lilypond expression"
+msgstr "Impossible de convertir l'altération %s en expression LilyPond"
+
+#: musicxml.py:13 convert-ly.py:53 lilypond-book.py:97 warn.cc:54 input.cc:96
+#: input.cc:104
+#, c-format, python-format
+msgid "error: %s"
+msgstr "Erreur : %s"
+
+#. TODO: Handle pieces without a time signature!
+#: musicxml.py:357
+msgid "Senza-misura time signatures are not yet supported!"
+msgstr "Les métriques « senza-misura » ne sont pas prises en charge."
+
+#: musicxml.py:375
+msgid "Unable to interpret time signature! Falling back to 4/4."
+msgstr "Métrique non interprétable ; retour au 4/4."
+
+#: musicxml.py:431
+#, python-format
+msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
+msgstr ""
+"Octave d'altération indiquée pour une altération numéro %s inexistante ;\n"
+"index d'altération disponibles : 1 à %s"
+
+#: musicxml.py:519
+#, python-format
+msgid "Unable to find instrument for ID=%s\n"
+msgstr "Aucun instrument ne correspond à l'ID=%s\n"
+
+#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
 #, python-format
 msgid "%s [OPTION]... FILE"
 msgstr "%s [OPTIONS]... FICHIER"
 
-#: abc2ly.py:1344
+#: abc2ly.py:1342
 #, python-format
 msgid ""
 "abc2ly converts ABC music files (see\n"
-"%s) to LilyPond input."
+"%s) to LilyPond input.\n"
 msgstr ""
 "abc2ly convertit les fichiers musicaux ABC (voir\n"
-"%s) vers le format LilyPond."
+"%s) au format LilyPond.\n"
+
+#: abc2ly.py:1350 convert-ly.py:81 etf2ly.py:1190 lilypond-book.py:207
+#: midi2ly.py:881 musicxml2ly.py:2590 main.cc:156
+msgid "show version number and exit"
+msgstr "afficher le numéro de version et quitter"
+
+#: abc2ly.py:1354 convert-ly.py:85 etf2ly.py:1186 lilypond-book.py:138
+#: midi2ly.py:860 musicxml2ly.py:2572 main.cc:145
+msgid "show this help and exit"
+msgstr "visualiser cette aide et quitter"
 
-#: abc2ly.py:1348 etf2ly.py:1184 midi2ly.py:874
+#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
 msgid "write output to FILE"
 msgstr "produire la sortie dans le FICHIER"
 
-#: abc2ly.py:1350
-msgid "be strict about succes"
+#: abc2ly.py:1358
+msgid "be strict about success"
 msgstr "être strict sur la réussite"
 
-#: abc2ly.py:1352
+#: abc2ly.py:1360
 msgid "preserve ABC's notion of beams"
 msgstr "préserver la notion de lien de croches propre à ABC"
 
-#: abc2ly.py:1354 convert-ly.py:103 etf2ly.py:1192 lilypond-book.py:161
-#: midi2ly.py:900 musicxml2ly.py:506
-msgid "Report bugs via"
-msgstr "Rapporter toute anomalie à"
+#. 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:1363 convert-ly.py:123 etf2ly.py:1200 lilypond-book.py:214
+#: midi2ly.py:894 musicxml2ly.py:2646 main.cc:265
+#, c-format, python-format
+msgid "Report bugs via %s"
+msgstr ""
+"Signaler toute anomalie à \n"
+"%s"
 
-#: convert-ly.py:32
+#: convert-ly.py:33
 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. Par défaut,\n"
-"de la version indiquée par la commande \\version vers la version courante\n"
-"de LilyPond."
+"Mettre à jour le fichier source vers une version plus récente. \n"
+"Par défaut, de la version indiquée par la commande \\version \n"
+"vers la version courante de LilyPond."
 
-#: convert-ly.py:34 lilypond-book.py:59
+#: convert-ly.py:35 lilypond-book.py:71
 msgid "Examples:"
 msgstr "Exemples :"
 
-#: convert-ly.py:47 lilypond-book.py:83 warn.cc:48 input.cc:90
-#, c-format, python-format
-msgid "warning: %s"
-msgstr "Avertissement : %s"
-
-#: convert-ly.py:50 lilypond-book.py:86 warn.cc:54 input.cc:96 input.cc:104
-#, c-format, python-format
-msgid "error: %s"
-msgstr "Erreur : %s"
-
-#: convert-ly.py:66 etf2ly.py:1174 lilypond-book.py:106 midi2ly.py:87
+#: convert-ly.py:69 etf2ly.py:1173 lilypond-book.py:117 midi2ly.py:76
 msgid "Distributed under terms of the GNU General Public License."
 msgstr "Distribué selon les termes de la GNU General Public License."
 
-#: convert-ly.py:67 etf2ly.py:1175 lilypond-book.py:107 midi2ly.py:88
+#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
 msgid "It comes with NO WARRANTY."
 msgstr "Le logiciel est distribué SANS GARANTIE."
 
-#: convert-ly.py:77 convert-ly.py:97
+#: convert-ly.py:89 convert-ly.py:116
 msgid "VERSION"
 msgstr "VERSION"
 
-#: convert-ly.py:79
+#: convert-ly.py:91
 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:82
+#: convert-ly.py:94
 msgid "edit in place"
 msgstr "éditer le fichier d'origine"
 
-#: convert-ly.py:85
+#: convert-ly.py:98
 msgid "do not add \\version command if missing"
 msgstr "ne pas ajouter la commande \\version si elle est absente"
 
-#: convert-ly.py:91
-msgid "show rules [default: --from=0, --to=@TOPLEVEL_VERSION@]"
-msgstr "afficher les règles [par défaut : --from=0, --to=@TOPLEVEL_VERSION@]"
+#: convert-ly.py:104
+#, python-format
+msgid "force updating \\version number to %s"
+msgstr "forcer la mise à jour de \\version à %s"
 
-#: convert-ly.py:96
-msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]"
-msgstr "convertir jusqu'à la VERSION [par défaut : @TOPLEVEL_VERSION@]"
+#: convert-ly.py:110
+#, python-format
+msgid "show rules [default: -f 0, -t %s]"
+msgstr "afficher les règles [par défaut : -f 0, -t %s]"
+
+#: convert-ly.py:115
+#, python-format
+msgid "convert to VERSION [default: %s]"
+msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
 
-#: convert-ly.py:144
+#: convert-ly.py:163
 msgid "Applying conversion: "
 msgstr "Conversion en cours : "
 
-#: convert-ly.py:157
+#: convert-ly.py:176
 msgid "Error while converting"
 msgstr "Erreur lors de la conversion"
 
-#: convert-ly.py:159
-msgid "Stopping at last succesful rule"
-msgstr "Arrêt après la dernière règle appliquée avec succès"
+#: convert-ly.py:178
+msgid "Stopping at last successful rule"
+msgstr "Arrêt à la dernière règle appliquée avec succès"
 
-#: convert-ly.py:181
+#: convert-ly.py:199
 #, python-format
 msgid "Processing `%s'... "
 msgstr "Traitement de « %s »..."
 
-#: convert-ly.py:268 relocate.cc:363 source-file.cc:54
+#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
 #, c-format, python-format
 msgid "cannot open file: `%s'"
 msgstr "Impossible d'ouvrir le fichier : « %s »"
 
-#: convert-ly.py:275
+#: convert-ly.py:296
 #, python-format
 msgid "cannot determine version for `%s'.  Skipping"
 msgstr "impossible de déterminer la version  de « %s ». Au suivant !"
 
-#: etf2ly.py:1180
+#: etf2ly.py:1179
 #, python-format
 msgid "%s [OPTION]... ETF-FILE"
 msgstr "%s [OPTIONS]... FICHIER-ETF"
 
-#: etf2ly.py:1182
+#: etf2ly.py:1180
 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."
+"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"
-"Ce programme convertit partiellement un fichier ETF en un fichier LilyPond \n"
-"exploitable."
+"etf2ly convertit partiellement un fichier ETF en un fichier LilyPond \n"
+"exploitable.\n"
 
-#: etf2ly.py:1185 midi2ly.py:875 musicxml2ly.py:499 main.cc:154 main.cc:159
+#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
 msgid "FILE"
 msgstr "FICHIER"
 
-#: etf2ly.py:1187 lilypond-book.py:158 midi2ly.py:888 main.cc:163
+#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
 msgid "show warranty and copyright"
-msgstr ""
-"afficher les notices de garantie\n"
-"et du droit d'auteur"
+msgstr "afficher les notices de garantie et du droit d'auteur"
 
-#: lilypond-book.py:57
+#: lilypond-book.py:69
 msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
 msgstr ""
 "Traiter les extraits LilyPond dans un document HTML hybride, LaTeX, \n"
 "texinfo ou Docbook."
 
-#: lilypond-book.py:64
+#: lilypond-book.py:76
 msgid "BOOK"
 msgstr "LIVRE"
 
-#: lilypond-book.py:72
+#: lilypond-book.py:84
 #, python-format
 msgid "Exiting (%d)..."
 msgstr "Fin d'exécution (%d)..."
 
-#: lilypond-book.py:104
+#: lilypond-book.py:115
 #, python-format
 msgid "Copyright (c) %s by"
 msgstr "Copyright (c) %s détenu par"
 
-#: lilypond-book.py:114
+#: lilypond-book.py:125
 msgid "FILTER"
 msgstr "FILTRE"
 
-#: lilypond-book.py:117
-msgid "pipe snippets through FILTER [convert-ly -n -]"
-msgstr "passer les extraits à travers le FILTRE [convert-ly -n -]"
+#: lilypond-book.py:128
+msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
+msgstr "passer les extraits à travers le FILTRE [par défaut : `convert-ly -n -']"
 
-#: lilypond-book.py:120
+#: lilypond-book.py:132
 msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
 msgstr ""
 "utiliser le format de sortie FORMAT (texi (par défaut), texi-html, latex, \n"
 "html, docbook)"
 
-#: lilypond-book.py:123
+#: lilypond-book.py:133
+msgid "FORMAT"
+msgstr "FORMAT"
+
+#: lilypond-book.py:140
 msgid "add DIR to include path"
 msgstr "ajouter le RÉPERTOIRE au chemin de recherche des inclusions"
 
-#: lilypond-book.py:124 lilypond-book.py:136 main.cc:153
+#: lilypond-book.py:141 lilypond-book.py:148 lilypond-book.py:166
+#: lilypond-book.py:172 lilypond-book.py:178 lilypond-book.py:184 main.cc:148
 msgid "DIR"
 msgstr "RÉP"
 
-#: lilypond-book.py:129
+#: lilypond-book.py:146
+msgid "format Texinfo output so that Info will look for images of music in DIR"
+msgstr "formater la sortie Texinfo pour qu'Info cherche les images dans RÉP"
+
+#: lilypond-book.py:153
+msgid "run executable PROG instead of latex"
+msgstr "lancer l'exécutable PROG plutôt que latex"
+
+#: lilypond-book.py:154
+msgid "PROG"
+msgstr "PROG"
+
+#: lilypond-book.py:159
 msgid "PAD"
 msgstr "PAD"
 
-#: lilypond-book.py:135
+#: lilypond-book.py:161
+msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
+msgstr ""
+"Tasser la musique par la gauche pour la répartir en dépit du nombre irrégulier \n"
+"de mesures (en mm)"
+
+#: lilypond-book.py:165
 msgid "write output to DIR"
 msgstr "produire la sortie dans le RÉPERTOIRE"
 
-#: lilypond-book.py:140
+#: lilypond-book.py:171
+msgid "do not fail if no lilypond output is found"
+msgstr "poursuivre même s'il n'y a pas de sortie lilypond"
+
+#: lilypond-book.py:177
+msgid "do not fail if no PNG images are found for EPS files"
+msgstr "poursuivre même s'il n'y a pas d'image PNG pour les fichiers EPS"
+
+#: lilypond-book.py:183
+msgid "write lily-XXX files to DIR, link into --output dir"
+msgstr "écrire les fichiers lily-XXX dans RÉP, et lier à --output rép"
+
+#: lilypond-book.py:188
 msgid "COMMAND"
 msgstr "COMMANDE"
 
-#: lilypond-book.py:141
+#: lilypond-book.py:189
 msgid "process ly_files using COMMAND FILE..."
-msgstr "traitre ly_files en utilisant la COMMANDE FICHIER..."
+msgstr "Traîter ly_files en utilisant COMMANDE FICHIER..."
 
-#: lilypond-book.py:147
-msgid "Create PDF files for use with PDFTeX"
+#: lilypond-book.py:196
+msgid "create PDF files for use with PDFTeX"
 msgstr "Créer des fichiers PDF pour utilisation par PDFTeX"
 
-#: lilypond-book.py:150
-msgid ""
-"extract all PostScript fonts into INPUT.psfonts for LaTeX\n"
-"must use this with dvips -h INPUT.psfonts"
-msgstr ""
-"extraire toutes les polices PostScript dans INPUT.psfonts\n"
-"pour utilisation ultérieure par dvips -h INPUT.psfonts"
-
-#: lilypond-book.py:153 midi2ly.py:885 musicxml2ly.py:490 main.cc:162
+#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
 msgid "be verbose"
-msgstr "passer en mode verbeux"
+msgstr "Passer en mode verbeux"
 
-#: lilypond-book.py:768
+#: lilypond-book.py:871
 #, python-format
 msgid "file not found: %s"
 msgstr "fichier non trouvé : %s"
 
-#: lilypond-book.py:999
+#: lilypond-book.py:1142
 #, python-format
 msgid "deprecated ly-option used: %s=%s"
 msgstr "option ly-option obsolète : %s=%s"
 
-#: lilypond-book.py:1002
+#: lilypond-book.py:1144
 #, python-format
 msgid "compatibility mode translation: %s=%s"
-msgstr "traduction en mode de compatibilité : %s=%s"
+msgstr "bascule en mode de compatibilité : %s=%s"
 
-#: lilypond-book.py:1006
+#: lilypond-book.py:1147
 #, python-format
 msgid "deprecated ly-option used: %s"
 msgstr "option ly-option obsolète : %s"
 
-#: lilypond-book.py:1009
+#: lilypond-book.py:1149
 #, python-format
 msgid "compatibility mode translation: %s"
-msgstr "traduction en mode de compatibilité : %s"
+msgstr "bascule en mode de compatibilité : %s"
 
-#: lilypond-book.py:1028
+#: lilypond-book.py:1167
 #, python-format
 msgid "ignoring unknown ly option: %s"
 msgstr "option ly inconnue et ignorée : %s"
 
-#: lilypond-book.py:1382
+#: lilypond-book.py:1604
 #, python-format
 msgid "Opening filter `%s'"
 msgstr "Ouverture du filtre « %s »"
 
-#: lilypond-book.py:1399
+#: lilypond-book.py:1621
 #, python-format
 msgid "`%s' failed (%d)"
 msgstr "« %s » a échoué (%d)"
 
-#: lilypond-book.py:1400
+#: lilypond-book.py:1622
 msgid "The error log is as follows:"
-msgstr "Le journal d'erreurs est comme suit :"
+msgstr "Voici le journal d'erreurs :"
 
-#: lilypond-book.py:1472
+#: lilypond-book.py:1684
 msgid "cannot find \\begin{document} in LaTeX document"
 msgstr "Impossible de trouver \\begin{document} dans le document LaTeX."
 
-#: lilypond-book.py:1583
+#: lilypond-book.py:1784
 msgid "Writing snippets..."
 msgstr "Écriture des extraits..."
 
-#: lilypond-book.py:1588
+#: lilypond-book.py:1790
 msgid "Processing..."
 msgstr "Traitement..."
 
-#: lilypond-book.py:1592
+#: lilypond-book.py:1796
 msgid "All snippets are up to date..."
 msgstr "Tous les extraits sont à jour..."
 
-#: lilypond-book.py:1602
+#: lilypond-book.py:1830
 #, python-format
 msgid "cannot determine format for: %s"
 msgstr "format indéterminé pour %s"
 
-#: lilypond-book.py:1613
+#: lilypond-book.py:1841
 #, python-format
 msgid "%s is up to date."
 msgstr "%s est à jour."
 
-#: lilypond-book.py:1619
+#: lilypond-book.py:1855
 #, python-format
 msgid "Writing `%s'..."
 msgstr "Écriture de « %s »..."
 
-#: lilypond-book.py:1674
+#: lilypond-book.py:1913
 msgid "Output would overwrite input file; use --output."
 msgstr "La sortie va écraser le fichier d'entrée ; utiliser --output"
 
-#: lilypond-book.py:1678
+#: lilypond-book.py:1917
 #, python-format
 msgid "Reading %s..."
 msgstr "Lecture en cours de %s..."
 
-#: lilypond-book.py:1697
+#: lilypond-book.py:1937
 msgid "Dissecting..."
 msgstr "Dissection en cours..."
 
-#: lilypond-book.py:1713
+#: lilypond-book.py:1953
 #, python-format
 msgid "Compiling %s..."
 msgstr "Compilation de %s..."
 
-#: lilypond-book.py:1722
+#: lilypond-book.py:1962
 #, python-format
 msgid "Processing include: %s"
 msgstr "Traitement d'inclusion : %s"
 
-#: lilypond-book.py:1736
+#: lilypond-book.py:1974
 #, python-format
 msgid "Removing `%s'"
-msgstr "Retrait de « %s »"
-
-#: lilypond-book.py:1769
-msgid "option --psfonts not used"
-msgstr "option --psfonts inutilisée"
+msgstr "Suppression de « %s »"
 
-#: lilypond-book.py:1770
-msgid "processing with dvips will have no fonts"
-msgstr "le traitement par dvips n'aura pas de fontes"
-
-#: lilypond-book.py:1773
-msgid "DVIPS usage:"
-msgstr "utilisation de DVIPS :"
-
-#: lilypond-book.py:1829
-#, python-format
-msgid "Writing fonts to %s..."
-msgstr "Écriture des fontes dans %s..."
-
-#: midi2ly.py:95 lily-library.scm:577 lily-library.scm:586
+#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
 msgid "warning: "
-msgstr "Avertissement :"
+msgstr "Avertissement : "
 
-#: midi2ly.py:98 midi2ly.py:913
+#: midi2ly.py:87 midi2ly.py:907
 msgid "error: "
 msgstr "Erreur : "
 
-#: midi2ly.py:99
-msgid "Exiting ... "
+#: midi2ly.py:88
+msgid "Exiting... "
 msgstr "Fin d'exécution... "
 
-#: midi2ly.py:846
+#: midi2ly.py:833
 #, python-format
 msgid "%s output to `%s'..."
 msgstr "%s reproduit dans « %s »..."
 
-#: midi2ly.py:860 musicxml2ly.py:486
+#: midi2ly.py:846
 #, python-format
-msgid "Convert %s to LilyPond input."
-msgstr "Convertir %s au format source LilyPond."
+msgid "Convert %s to LilyPond input.\n"
+msgstr "Convertir %s au format source LilyPond.\n"
 
-#: midi2ly.py:864
+#: midi2ly.py:851
 msgid "print absolute pitches"
 msgstr "afficher des tons absolus"
 
-#: midi2ly.py:866 midi2ly.py:878
+#: midi2ly.py:853 midi2ly.py:868
 msgid "DUR"
 msgstr "DUR"
 
-#: midi2ly.py:867
+#: midi2ly.py:854
 msgid "quantise note durations on DUR"
 msgstr "quantifier les durées de note d'après DUR"
 
-#: midi2ly.py:870
+#: midi2ly.py:857
 msgid "print explicit durations"
 msgstr "écrire des durées explicites"
 
-#: midi2ly.py:871
+#: midi2ly.py:861
 msgid "set key: ALT=+sharps|-flats; MINOR=1"
 msgstr "définir l'armure : ALT=+dièse|-bémol; MINEUR=1"
 
-#: midi2ly.py:872
+#: midi2ly.py:862
 msgid "ALT[:MINOR]"
 msgstr "ALT[:MINEUR]"
 
-#: midi2ly.py:877
+#: midi2ly.py:867
 msgid "quantise note starts on DUR"
 msgstr "quantifier les débuts de note sur DUR"
 
-#: midi2ly.py:880
+#: midi2ly.py:870
 msgid "DUR*NUM/DEN"
 msgstr "DUR*NUM/DEN"
 
-#: midi2ly.py:883
+#: midi2ly.py:873
 msgid "allow tuplet durations DUR*NUM/DEN"
 msgstr "permettre des n-olets de durée DUR*NUM/DEN"
 
-#: midi2ly.py:891
+#: midi2ly.py:885
 msgid "treat every text as a lyric"
-msgstr "traiter chaque texte comme des paroles"
+msgstr "traiter tout texte comme étant des paroles"
 
-#: midi2ly.py:894
+#: midi2ly.py:888
 msgid "Examples"
 msgstr "Exemples"
 
-#: midi2ly.py:914
+#: midi2ly.py:908
 msgid "no files specified on command line."
 msgstr "aucun fichier spéficié sur la ligne de commande."
 
-#: musicxml2ly.py:474
-msgid "musicxml2ly FILE.xml"
-msgstr "musicxml2ly FICHIER.xml"
+#: musicxml2ly.py:343
+msgid "Encountered file created by Dolet 3.4 for Sibelius, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr ""
+"Détection d'un fichier créé par Dolet 3.4 pour Sibelius et contenant des \n"
+"informations de lien erronées. Toutes les informations de ligature du fichier \n"
+"MusicXML seront ignorées"
+
+#: musicxml2ly.py:346
+msgid "Encountered file created by Noteworthy Composer's nwc2xml, containing wrong beaming information. All beaming information in the MusicXML file will be ignored"
+msgstr ""
+"Détection d'un fichier créé par Noteworthy Composer's nwc2xml et contenant des \n"
+"informations de lien erronées. Toutes les informations de ligature du fichier \n"
+"MusicXML seront ignorées"
+
+#: musicxml2ly.py:362 musicxml2ly.py:364
+#, python-format
+msgid "Unprocessed PartGroupInfo %s encountered"
+msgstr "PartGroupInfo %s détecté, mais non traité"
+
+#: musicxml2ly.py:594
+#, 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:477
+#: musicxml2ly.py:613
 #, 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:868
+msgid "Unable to extract key signature!"
+msgstr "Impossible de trouver l'armure."
+
+#: musicxml2ly.py:895
+#, python-format
+msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+msgstr "%s : mode inconnu. Devrait être « majeur », « mineur » ou « mode d'église »"
+
+#: musicxml2ly.py:968
+#, python-format
+msgid "Encountered unprocessed marker %s\n"
+msgstr "Détection d'un marqueur non traité : %s\n"
+
+#: musicxml2ly.py:1062
+#, python-format
+msgid "unknown span event %s"
+msgstr "Événement de prolongation inconnu : « %s »"
+
+#: musicxml2ly.py:1072
+#, python-format
+msgid "unknown span type %s for %s"
+msgstr "%s n'est pas un type de prolongateur reconnu pour %s"
+
+#: musicxml2ly.py:1498
+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:1503
+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:1703
+#, 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:1849
+#, 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:1853
+msgid "cannot find suitable event"
+msgstr "Aucun événement correspondant"
+
+#: musicxml2ly.py:1994
+#, 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:2134
+#, 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:2205
+#, python-format
+msgid "unexpected %s; expected %s or %s or %s"
+msgstr "%s détecté, au lieu de %s, %s ou %s"
+
+#: musicxml2ly.py:2311
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Terminaison d'une liaison qui n'a pas été débutée"
+
+#: musicxml2ly.py:2314
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "deux liaisons ne peuvent se terminer simultanément"
+
+#: musicxml2ly.py:2324
+msgid "Cannot have a slur inside another slur"
+msgstr "des liaisons ne peuvent s'imbriquer"
+
+#: musicxml2ly.py:2327
+msgid "Cannot have two simultaneous slurs"
+msgstr "deux liaisons ne peuvent intervenir simultanément"
+
+#: musicxml2ly.py:2455
+#, 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 [options]... FICHIER.xml"
+
+#: musicxml2ly.py:2566
 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."
+"Convert MusicXML from FILE.xml to LilyPond input.\n"
+"If the given filename is -, musicxml2ly reads from the command line.\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."
+"Convertit FICHIER.xml (MusicXML) au format LilyPond.\n"
+"Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
 
-#: musicxml2ly.py:496
-msgid "Use lxml.etree; uses less memory and cpu time."
-msgstr "Utiliser lxml.etree pour consommer moins de mémoire et de temps processeur."
+#: musicxml2ly.py:2576
+msgid ""
+"Copyright (c) 2005--2009 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--2009 by\n"
+"    Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
+"    Jan Nieuwenhuizen <janneke@gnu.org> and\n"
+"    Reinhold Kainhofer <reinhold@kainhofer.com>\n"
 
-#: musicxml2ly.py:504
-msgid "set output filename to FILE"
-msgstr "produire la sortie dans le FICHIER"
+#: musicxml2ly.py:2601
+msgid "use lxml.etree; uses less memory and cpu time"
+msgstr ""
+"Utiliser lxml.etree pour consommer moins de mémoire \n"
+"et de temps processeur."
+
+#: musicxml2ly.py:2607
+msgid "input file is a zip-compressed MusicXML file"
+msgstr "le fichier d'entrée est un fichier MusicXML compressé"
+
+#: musicxml2ly.py:2613
+msgid "convert pitches in relative mode (default)"
+msgstr "convertir les hauteurs en mode relatif (par défaut)"
+
+#: musicxml2ly.py:2618
+msgid "convert pitches in absolute mode"
+msgstr "convertir les hauteurs en mode absolu"
+
+#: musicxml2ly.py:2621
+msgid "LANG"
+msgstr "LANG"
+
+#: musicxml2ly.py:2623
+msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
+msgstr ""
+"utiliser un autre fichier linguistique « lang.ly » et ses noms de notes, \n"
+"comme « deutsch » pour deutsch.ly"
+
+#: musicxml2ly.py:2629
+msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
+msgstr ""
+"ne pas convertir les emplacements (^, _ ou -) des articulations, \n"
+"nuances, etc."
+
+#: musicxml2ly.py:2635
+msgid "do not convert beaming information, use lilypond's automatic beaming instead"
+msgstr ""
+"ne pas convertir les informations de ligature ; \n"
+"laisser LilyPond gérer les ligatures automatiques"
+
+#: musicxml2ly.py:2643
+msgid "set output filename to FILE, stdout if -"
+msgstr "produire la sortie dans FICHIER (stdout si -)"
+
+#: musicxml2ly.py:2726
+#, python-format
+msgid "unknown part in part-list: %s"
+msgstr "la partie %s n'est pas mentionnée dans part-list"
+
+#: musicxml2ly.py:2788
+msgid "Input is compressed, extracting raw MusicXML data from stdin"
+msgstr "Le fichier d'entrée est compressé. Extraction des données MusicXML brutes"
+
+#: musicxml2ly.py:2791
+#, 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:2821
+msgid "Reading MusicXML from Standard input ..."
+msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
+
+#: musicxml2ly.py:2823
+#, python-format
+msgid "Reading MusicXML from %s ..."
+msgstr "Lecture du fichier MusicXML %s..."
+
+#: musicxml2ly.py:2856
+#, python-format
+msgid "Output to `%s'"
+msgstr "Fichier de sortie : « %s »"
+
+#: musicxml2ly.py:2922
+#, python-format
+msgid "Unable to find input file %s"
+msgstr "impossible de trouver le fichier d'entrée : « %s »"
 
 #: getopt-long.cc:140
 #, c-format
@@ -523,9 +1208,9 @@ msgstr "option non reconnue : « %s »"
 #: getopt-long.cc:154
 #, c-format
 msgid "invalid argument `%s' to option `%s'"
-msgstr "argument invalide « %s » pour l'option « %s »"
+msgstr "argument « %s » invalide pour l'option « %s »"
 
-#: warn.cc:68 grob.cc:557 input.cc:82
+#: warn.cc:68 grob.cc:566 input.cc:82
 #, c-format
 msgid "programming error: %s"
 msgstr "erreur de programmation : %s"
@@ -534,35 +1219,30 @@ msgstr "erreur de programmation : %s"
 msgid "continuing, cross fingers"
 msgstr "poursuite ; croisons les doigts."
 
-#: accidental-engraver.cc:247
+#: accidental-engraver.cc:298
 #, 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:274
-#, c-format
-msgid "ignoring unknown accidental rule: %s"
-msgstr "altération accidentelle inconnue, donc ignorée : %s"
-
-#: accidental-engraver.cc:290
+#: accidental-engraver.cc:328
 #, c-format
-msgid "pair or context-name expected for accidental rule, found %s"
+msgid "procedure or context-name expected for accidental rule, found %s"
 msgstr ""
-"paire ou nom de contexte requis pour la règle d'altération accidentelle,\n"
+"procédure ou nom de contexte requis pour la règle d'altération accidentelle,\n"
 "%s trouvé"
 
-#: accidental.cc:160
+#: accidental.cc:187
 #, c-format
 msgid "Could not find glyph-name for alteration %s"
 msgstr "Aucun nom de glyphe ne correspond à l'altération %s"
 
-#: accidental.cc:175
+#: accidental.cc:202
 msgid "natural alteration glyph not found"
 msgstr "pas de glyphe correspondant au bécarre"
 
-#: align-interface.cc:322
+#: align-interface.cc:305
 msgid "tried to get a translation for something that is no child of mine"
 msgstr "tentative de déplacement d'un élément sans relation directe"
 
@@ -582,21 +1262,17 @@ msgstr "modification impossible, c'est déjà dans le traducteur : %s"
 
 #: axis-group-engraver.cc:78
 msgid "Axis_group_engraver: vertical group already has a parent"
-msgstr "Axis_group_engraver: le groupe vertical a déjà un parent"
+msgstr "Axis_group_engraver : le groupe vertical a déjà un parent"
 
 #: axis-group-engraver.cc:79
 msgid "are there two Axis_group_engravers?"
-msgstr "auriez-vous deux Axis_group_engravers ?"
+msgstr "Axis_group_engraver redondant"
 
 #: axis-group-engraver.cc:80
 msgid "removing this vertical group"
 msgstr "retrait de ce groupe vertical"
 
-#: axis-group-interface.cc:109
-msgid "tried to calculate pure-height at a non-breakpoint"
-msgstr "tentative de calculer une hauteur pure ailleurs qu'à un point d'arrêt"
-
-#: axis-group-interface.cc:449
+#: axis-group-interface.cc:532
 msgid "an outside-staff object should have a direction, defaulting to up"
 msgstr ""
 "un objet externe à la portée devrait avoir un positionnement.\n"
@@ -627,7 +1303,7 @@ msgstr "la hampe ne s'insère pas dans le lien"
 msgid "beam was started here"
 msgstr "le lien a débuté ici"
 
-#: beam-quanting.cc:314
+#: beam-quanting.cc:307
 msgid "no feasible beam position"
 msgstr "nulle part où positionner le lien"
 
@@ -635,7 +1311,7 @@ msgstr "nulle part où positionner le lien"
 msgid "removing beam with no stems"
 msgstr "suppression du lien ayant moins de deux hampes"
 
-#: beam.cc:1035
+#: beam.cc:1078
 msgid "no viable initial configuration found: may not find good beam slope"
 msgstr ""
 "pas de configuration initiale viable repérée : \n"
@@ -694,7 +1370,7 @@ msgstr "clé `%s' introuvable"
 msgid "unknown cluster style `%s'"
 msgstr "style de cluster inconnu : « %s »"
 
-#: cluster.cc:135
+#: cluster.cc:147
 msgid "junking empty cluster"
 msgstr "mise au rebut d'un cluster vide"
 
@@ -704,7 +1380,7 @@ 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:167 constrained-breaking.cc:184
+#: constrained-breaking.cc:176 constrained-breaking.cc:193
 msgid "cannot find line breaking that satisfies constraints"
 msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
 
@@ -713,26 +1389,26 @@ msgstr "impossible de trouver un saut de ligne qui satisfasse aux contraintes"
 msgid "program has no such type: `%s'"
 msgstr "Le programme n'a pas de tel type : « %s »"
 
-#: context-property.cc:30
+#: context-property.cc:32
 msgid "need symbol arguments for \\override and \\revert"
 msgstr "nécessite des arguments symboliques pour \\override et \\revert"
 
-#: context.cc:144
+#: context.cc:139
 #, c-format
 msgid "cannot find or create new `%s'"
 msgstr "impossible de trouver ou créer un nouveau « %s »"
 
-#: context.cc:206
+#: context.cc:197
 #, c-format
 msgid "cannot find or create `%s' called `%s'"
 msgstr "impossible de trouver ou créer « %s » appelé « %s »"
 
-#: context.cc:268
+#: context.cc:259
 #, c-format
 msgid "Invalid CreateContext event: Cannot create %s context"
 msgstr "Événement CreateContext invalide : impossible de créer le contexte %s"
 
-#: context.cc:380
+#: context.cc:390
 #, c-format
 msgid "cannot find or create: `%s'"
 msgstr "impossible de trouver ou créer « %s »"
@@ -756,23 +1432,23 @@ msgstr "Classe d'événement inconnue : « %s »"
 msgid "dot `%s' not found"
 msgstr "point « %s » introuvable"
 
-#: dynamic-engraver.cc:184
+#: dynamic-engraver.cc:186
 msgid "cannot find start of (de)crescendo"
 msgstr "impossible de repérer le début du (de)crescendo"
 
-#: dynamic-engraver.cc:193
+#: dynamic-engraver.cc:195
 msgid "already have a decrescendo"
 msgstr "decrescendo déjà présent"
 
-#: dynamic-engraver.cc:195
+#: dynamic-engraver.cc:197
 msgid "already have a crescendo"
 msgstr "crescendo déjà présent"
 
-#: dynamic-engraver.cc:198
+#: dynamic-engraver.cc:200
 msgid "cresc starts here"
 msgstr "le crescendo débute ici"
 
-#: dynamic-engraver.cc:327
+#: dynamic-engraver.cc:328
 msgid "unterminated (de)crescendo"
 msgstr "(de)crescendo non terminé"
 
@@ -780,6 +1456,26 @@ msgstr "(de)crescendo non terminé"
 msgid "unterminated extender"
 msgstr "prolongation non terminée"
 
+#: font-config-scheme.cc:140 font-config.cc:57
+#, 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:142 font-config.cc:59
+#, c-format
+msgid "adding font directory: %s"
+msgstr "ajout d'un répertoire de fontes : « %s »"
+
+#: font-config-scheme.cc:156
+#, c-format
+msgid "failed adding font file: %s"
+msgstr "échec lors de l'ajout d'un fichier de fontes : « %s »"
+
+#: font-config-scheme.cc:158
+#, c-format
+msgid "adding font file: %s"
+msgstr "ajout d'un fichier de fontes : « %s »"
+
 #: font-config.cc:28
 msgid "Initializing FontConfig..."
 msgstr "Initialisation de FontConfig..."
@@ -789,25 +1485,19 @@ msgstr "Initialisation de FontConfig..."
 msgid "Rebuilding FontConfig cache %s, this may take a while..."
 msgstr "Reconstitution du cache FontConfig %s. Patientez..."
 
-#: font-config.cc:55
-#, c-format
-msgid "failed adding font directory: %s"
-msgstr "échec lors de l'ajout d'un répertoire de fontes : « %s »"
-
-#: font-config.cc:57
-#, c-format
-msgid "adding font directory: %s"
-msgstr "ajout d'un répertoire de fontes : « %s »"
+#: font-config.cc:63
+msgid "Building font database."
+msgstr "Construction de la base de donnée des fontes."
 
-#: general-scheme.cc:198
+#: general-scheme.cc:202
 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"
 
-#: general-scheme.cc:199
+#: general-scheme.cc:203
 msgid "setting to zero"
 msgstr "initialisation à zéro"
 
-#: general-scheme.cc:417 output-ps.scm:61
+#: general-scheme.cc:422 output-ps.scm:63
 msgid "Found infinity or nan in output. Substituting 0.0"
 msgstr ""
 "La sortie contient l'infini ou une valeur non numérique. \n"
@@ -817,15 +1507,15 @@ msgstr ""
 msgid "unterminated glissando"
 msgstr "glissando non terminé"
 
-#: global-context-scheme.cc:87 global-context-scheme.cc:105
+#: global-context-scheme.cc:85 global-context-scheme.cc:103
 msgid "no music found in score"
 msgstr "Il n'y a pas de musique dans cette partition"
 
-#: global-context-scheme.cc:95
+#: global-context-scheme.cc:93
 msgid "Interpreting music... "
 msgstr "Interprétation en cours de la musique..."
 
-#: global-context-scheme.cc:118
+#: global-context-scheme.cc:116
 #, c-format
 msgid "elapsed time: %.2f seconds"
 msgstr "temps écoulé : %.2f secondes"
@@ -841,12 +1531,12 @@ msgid "implied \\%s added"
 msgstr "\\%s implicite ajouté(e)"
 
 #. ligature may not start with 2nd head of pes or flexa
-#: gregorian-ligature-engraver.cc:212
+#: gregorian-ligature-engraver.cc:213
 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:224
+#: gregorian-ligature-engraver.cc:225
 msgid "cannot apply `\\~' on heads with identical pitch"
 msgstr "Impossible d'appliquer « \\~ » à des têtes ayant la même hauteur"
 
@@ -865,7 +1555,7 @@ msgstr "L'objet graphique (Grob) « %s » n'a pas d'interface pour la propriét
 msgid "%d: %s"
 msgstr "%d : %s"
 
-#: grob-property.cc:174
+#: grob-property.cc:173
 #, c-format
 msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)"
 msgstr "dépendance circulaire : calculation-in-progress rencontrée pour #'%s (%s)"
@@ -874,19 +1564,15 @@ msgstr "dépendance circulaire : calculation-in-progress rencontrée pour #'%s (
 msgid "Infinity or NaN encountered"
 msgstr "infini ou valeur non numérique rencontré lors de la conversion d'un nombre réel"
 
-#: hairpin.cc:187
+#: hairpin.cc:186
 msgid "decrescendo too small"
 msgstr "decrescendo trop petit"
 
-#: hairpin.cc:188
-msgid "crescendo too small"
-msgstr "crescendo trop petit"
-
-#: horizontal-bracket-engraver.cc:59
+#: horizontal-bracket-engraver.cc:68
 msgid "do not have that many brackets"
 msgstr "n'a pas autant de crochets"
 
-#: horizontal-bracket-engraver.cc:68
+#: horizontal-bracket-engraver.cc:77
 msgid "conflicting note group events"
 msgstr "événements de groupe de notes conflictuels"
 
@@ -898,41 +1584,41 @@ msgstr "retrait du trait d'union sans suite"
 msgid "unterminated hyphen; removing"
 msgstr "trait d'union sans suite ; escamoté"
 
-#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:117
+#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:110
 #, c-format
 msgid "cannot find file: `%s'"
 msgstr "fichier non trouvé : « %s »"
 
-#: includable-lexer.cc:55 lily-parser-scheme.cc:108
+#: includable-lexer.cc:55 lily-parser-scheme.cc:101
 #, c-format
 msgid "(search path: `%s')"
 msgstr "(chemin de recherche : « %s »)"
 
-#: input.cc:112 source-file.cc:168 source-file.cc:183
+#: input.cc:112 source-file.cc:173 source-file.cc:188
 msgid "position unknown"
 msgstr "position inconnue"
 
-#: key-signature-interface.cc:71
+#: key-signature-interface.cc:74
 #, c-format
 msgid "No glyph found for alteration: %s"
 msgstr "Pas de glyphe pour l'altération : %s"
 
-#: key-signature-interface.cc:81
+#: key-signature-interface.cc:84
 msgid "alteration not found"
 msgstr "altération non trouvée"
 
-#: ligature-engraver.cc:93
+#: ligature-bracket-engraver.cc:62 ligature-engraver.cc:93
 msgid "cannot find start of ligature"
 msgstr "impossible de trouver le début d'une ligature"
 
+#: ligature-bracket-engraver.cc:75 ligature-engraver.cc:120
+msgid "already have a ligature"
+msgstr "a déjà une ligature"
+
 #: ligature-engraver.cc:98
 msgid "no right bound"
 msgstr "pas de borne à droite"
 
-#: ligature-engraver.cc:120
-msgid "already have a ligature"
-msgstr "a déjà une ligature"
-
 #: ligature-engraver.cc:129
 msgid "no left bound"
 msgstr "pas de borne à gauche"
@@ -954,36 +1640,36 @@ msgstr "la ligature a débuté ici"
 msgid "(load path: `%s')"
 msgstr "(chemin de chargement : « %s »)"
 
-#: lily-guile.cc:438
+#: lily-guile.cc:428
 #, c-format
 msgid "cannot find property type-check for `%s' (%s)."
-msgstr "vérification de type de propriété pour « %s » (%s) non trouvée"
+msgstr "vérification du type de propriété pour « %s » (%s) non trouvée"
 
-#: lily-guile.cc:441
+#: lily-guile.cc:431
 msgid "perhaps a typing error?"
 msgstr "Probable faute de frappe"
 
-#: lily-guile.cc:448
+#: lily-guile.cc:438
 msgid "doing assignment anyway"
 msgstr "affectation faite malgré tout"
 
-#: lily-guile.cc:460
+#: lily-guile.cc:450
 #, 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 »"
 
-#: lily-lexer.cc:250
+#: lily-lexer.cc:252
 msgid "include files are not allowed in safe mode"
-msgstr "l'inclusion de fichiers n'est pas permise en mode sécurisé"
+msgstr "l'inclusion de fichiers n'est pas permise en mode sans échec"
 
-#: lily-lexer.cc:269
+#: lily-lexer.cc:271
 #, c-format
 msgid "identifier name is a keyword: `%s'"
 msgstr "Le nom de l'identificateur est un mot clé : « %s »"
 
-#: lily-lexer.cc:284
+#: lily-lexer.cc:286
 #, c-format
 msgid "error at EOF: %s"
 msgstr "erreur à la fin du fichier (EOF) : %s"
@@ -993,39 +1679,39 @@ msgstr "erreur à la fin du fichier (EOF) : %s"
 msgid "deprecated function called: %s"
 msgstr "appel à une fonction obsolète : %s"
 
-#: lily-parser-scheme.cc:89
+#: lily-parser-scheme.cc:83
 #, c-format
 msgid "Changing working directory to: `%s'"
 msgstr "Modification du répertoire de travail pour : « %s »"
 
-#: lily-parser-scheme.cc:107
+#: lily-parser-scheme.cc:100
 #, c-format
 msgid "cannot find init file: `%s'"
 msgstr "impossible de trouver le fichier d'initialisation : « %s »"
 
-#: lily-parser-scheme.cc:126
+#: lily-parser-scheme.cc:119
 #, c-format
 msgid "Processing `%s'"
 msgstr "Traitement de « %s »"
 
-#: lily-parser.cc:99
+#: lily-parser.cc:95
 msgid "Parsing..."
 msgstr "Analyse..."
 
-#: lily-parser.cc:127
+#: lily-parser.cc:123
 msgid "braces do not match"
 msgstr "accolades non pairées"
 
-#: lyric-combine-music-iterator.cc:327
+#: lyric-combine-music-iterator.cc:329
 #, c-format
 msgid "cannot find Voice `%s'"
 msgstr "impossible de repérer la voix (Voice) « %s »"
 
-#: lyric-engraver.cc:158
+#: lyric-engraver.cc:162
 msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
 msgstr "Syllabe sans note de rattachement. Utiliser \\lyricsto ou associatedVoice."
 
-#: main.cc:100
+#: main.cc:97
 #, c-format
 msgid ""
 "This program is free software.  It is covered by the GNU General Public\n"
@@ -1038,7 +1724,7 @@ msgstr ""
 "sous certaines conditions.\n"
 "Invoquez « %s --warranty » pour plus d'informations.\n"
 
-#: main.cc:106
+#: main.cc:103
 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"
@@ -1068,11 +1754,11 @@ msgstr ""
 " écrire à la Free Software Foundation, Inc., 59 Temple Place - Suite 330, \n"
 "Boston, MA 02111-1307, USA.\n"
 
-#: main.cc:137
+#: main.cc:134
 msgid "SYM[=VAL]"
 msgstr "SYM[=VAL]"
 
-#: main.cc:138
+#: main.cc:135
 msgid ""
 "set Scheme option SYM to VAL (default: #t).\n"
 "Use -dhelp for help."
@@ -1081,55 +1767,43 @@ msgstr ""
 "à l'option Scheme SYM.\n"
 "Utiliser -dhelp pour avoir de l'aide."
 
-#: main.cc:141
+#: main.cc:138
 msgid "EXPR"
 msgstr "EXPR"
 
-#: main.cc:141
+#: main.cc:138
 msgid "evaluate scheme code"
-msgstr "évaluer du code Scheme"
+msgstr "évaluation du code Scheme"
 
 #. Bug in option parser: --output =foe is taken as an abbreviation
 #. for --output-format.
-#: main.cc:144
+#: main.cc:141
 msgid "FORMATs"
 msgstr "FORMATs"
 
-#: main.cc:144
+#: main.cc:141
 msgid "dump FORMAT,...  Also as separate options:"
 msgstr ""
 "produire FORMAT,...\n"
 "Aussi comme options séparées :"
 
-#: main.cc:145
-msgid "generate DVI (tex backend only)"
-msgstr "générer le DVI (uniquement pour tex)"
-
-#: main.cc:146
+#: main.cc:142
 msgid "generate PDF (default)"
 msgstr "générer le PDF (par défaut)"
 
-#: main.cc:147
+#: main.cc:143
 msgid "generate PNG"
 msgstr "générer le PNG"
 
-#: main.cc:148
+#: main.cc:144
 msgid "generate PostScript"
 msgstr "générer le PostScript"
 
-#: main.cc:149
-msgid "generate TeX (tex backend only)"
-msgstr "générer le TeX (uniquement pour tex)"
-
-#: main.cc:150
-msgid "show this help and exit"
-msgstr "visualiser cette aide et sortir"
-
-#: main.cc:151
+#: main.cc:146
 msgid "FIELD"
 msgstr "CHAMP"
 
-#: main.cc:151
+#: main.cc:146
 msgid ""
 "dump header field FIELD to file\n"
 "named BASENAME.FIELD"
@@ -1137,21 +1811,21 @@ msgstr ""
 "écrire le champ d'en-tête CHAMP dans le\n"
 "fichier nommé BASENAME.CHAMP"
 
-#: main.cc:153
+#: main.cc:148
 msgid "add DIR to search path"
 msgstr "ajouter RÉPERTOIRE au chemin de recherche"
 
-#: main.cc:154
+#: main.cc:149
 msgid "use FILE as init file"
 msgstr ""
 "utiliser FICHIER comme\n"
 "fichier d'initialisation"
 
-#: main.cc:156
+#: main.cc:151
 msgid "USER, GROUP, JAIL, DIR"
 msgstr "USER,GROUP,CAGE,RÉP"
 
-#: main.cc:156
+#: main.cc:151
 msgid ""
 "chroot to JAIL, become USER:GROUP\n"
 "and cd into DIR"
@@ -1159,23 +1833,19 @@ msgstr ""
 "chroot dans CAGE, devenir UTILISATEUR:GROUPE\n"
 "et cd dans RÉPERTOIRE"
 
-#: main.cc:159
+#: main.cc:154
 msgid "write output to FILE (suffix will be added)"
 msgstr ""
 "produire la sortie dans FICHIER \n"
 "(adjonction automatique du suffixe)"
 
-#: main.cc:160
+#: main.cc:155
 msgid "relocate using directory of lilypond program"
 msgstr ""
 "redétermine le chemin d'exécution\n"
 "des composants de LilyPond"
 
-#: main.cc:161
-msgid "show version number and exit"
-msgstr "afficher le numéro de version et sortir"
-
-#: main.cc:203
+#: main.cc:221
 #, c-format
 msgid ""
 "Copyright (c) %s by\n"
@@ -1185,98 +1855,91 @@ msgstr ""
 "%s et autres."
 
 #. No version number or newline here.  It confuses help2man.
-#: main.cc:230
+#: main.cc:249
 #, c-format
 msgid "Usage: %s [OPTION]... FILE..."
 msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
 
-#: main.cc:232
+#: main.cc:251
 #, c-format
 msgid "Typeset music and/or produce MIDI from FILE."
 msgstr "Composer la musique ou jouer en format MIDI à partir du FICHIER"
 
-#: main.cc:234
+#: main.cc:253
 #, c-format
 msgid "LilyPond produces beautiful music notation."
 msgstr "LilyPond produit une jolie notation musicale"
 
-#: main.cc:236
+#: main.cc:255
 #, c-format
 msgid "For more information, see %s"
 msgstr "Pour plus d'informations, voir %s"
 
-#: main.cc:238
+#: main.cc:257
 #, c-format
 msgid "Options:"
 msgstr "Options :"
 
-#: main.cc:242
-#, c-format
-msgid "Report bugs via %s"
-msgstr ""
-"Signaler toute anomalie à \n"
-"%s"
-
-#: main.cc:288
+#: main.cc:311
 #, c-format
 msgid "expected %d arguments with jail, found: %u"
 msgstr "une cage requiert %d arguments, il y en a %u"
 
-#: main.cc:302
+#: main.cc:325
 #, c-format
 msgid "no such user: %s"
 msgstr "utilisateur inconnu : « %s »"
 
-#: main.cc:304
+#: main.cc:327
 #, 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"
 
-#: main.cc:319
+#: main.cc:342
 #, c-format
 msgid "no such group: %s"
 msgstr "groupe inconnu : %s"
 
-#: main.cc:321
+#: main.cc:344
 #, 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 "
 
-#: main.cc:329
+#: main.cc:352
 #, c-format
 msgid "cannot chroot to: %s: %s"
 msgstr "impossible de chrooter vers : %s : %s"
 
-#: main.cc:336
+#: main.cc:359
 #, c-format
 msgid "cannot change group id to: %d: %s"
 msgstr "impossible de changer l'identifiant de groupe en : %d : %s"
 
-#: main.cc:342
+#: main.cc:365
 #, c-format
 msgid "cannot change user id to: %d: %s"
 msgstr "impossible de changer l'identifiant utilisateur en : %d : %s"
 
-#: main.cc:348
+#: main.cc:371
 #, c-format
 msgid "cannot change working directory to: %s: %s"
 msgstr "impossible de changer le répertoire de travail en : %s : %s"
 
-#: main.cc:594
+#: main.cc:611
 #, c-format
 msgid "exception caught: %s"
 msgstr "exception capturée : %s"
 
 #. FIXME: constant error message.
-#: mark-engraver.cc:154
+#: mark-engraver.cc:129
 msgid "rehearsalMark must have integer value"
 msgstr "rehearsalMark doit être un entier"
 
-#: mark-engraver.cc:160
+#: mark-engraver.cc:135
 msgid "mark label must be a markup object"
 msgstr "les étiquettes de marque doivent être des objets de type \"markup\""
 
@@ -1351,6 +2014,14 @@ msgstr "impossible d'ouvrir le fichier en écriture : %s : %s"
 msgid "cannot write to file: `%s'"
 msgstr "impossible d'écrire dans le fichier : « %s »"
 
+#: minimal-page-breaking.cc:38 paper-score.cc:105
+msgid "Calculating line breaks..."
+msgstr "Calcul des sauts de ligne..."
+
+#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+msgid "Calculating page breaks..."
+msgstr "Calcul des sauts de page..."
+
 #: music-iterator.cc:171
 msgid "Sending non-event to context"
 msgstr "Envoi d'un non-événement au contexte"
@@ -1365,6 +2036,15 @@ msgstr "Échec de vérification d'octave. Aurait dû être \"%s\", \"%s\" obtenu
 msgid "transposition by %s makes alteration larger than double"
 msgstr "La transposition de %s crée des altérations supérieures aux doubles"
 
+#: new-dynamic-engraver.cc:129
+#, c-format
+msgid ""
+"unknown crescendo style: %s\n"
+"defaulting to hairpin."
+msgstr ""
+"style de crescendo inconnu : %s\n"
+"retour à la valeur par défaut (soufflet)."
+
 #: new-fingering-engraver.cc:96
 msgid "cannot add text scripts to individual note heads"
 msgstr "impossible d'ajouter du texte à des têtes de notes individuelles"
@@ -1377,9 +2057,9 @@ msgstr "nulle part où positionner des doigtés"
 msgid "placing below"
 msgstr "on les place en dessous"
 
-#: note-collision.cc:464
+#: note-collision.cc:484
 msgid "ignoring too many clashing note columns"
-msgstr "trop de notes se chevauchent. On fera au mieux."
+msgstr "trop d'empilements de notes se chevauchent. On fera au mieux."
 
 #: note-column.cc:124
 msgid "cannot have note heads and rests together on a stem"
@@ -1422,13 +2102,37 @@ msgstr "erreur de lecture du fichier de fontes %s : %s"
 #: open-type-font.cc:177
 #, c-format
 msgid "FT_Get_Glyph_Name () Freetype error: %s"
-msgstr "FT_Get_Glyph_Name () erreur Freetype : %s"
+msgstr "erreur Freetype FT_Get_Glyph_Name () : %s"
 
 #: open-type-font.cc:302 pango-font.cc:167
 #, c-format
 msgid "FT_Get_Glyph_Name () error: %s"
 msgstr "FT_Get_Glyph_Name () erreur : %s"
 
+#. find out the ideal number of pages
+#: optimal-page-breaking.cc:56
+msgid "Finding the ideal number of pages..."
+msgstr "Détermination du nombre optimal de pages..."
+
+#: optimal-page-breaking.cc:78
+msgid "Fitting music on 1 page..."
+msgstr "Répartition de la musique sur une page..."
+
+#: optimal-page-breaking.cc:80
+#, c-format
+msgid "Fitting music on %d pages..."
+msgstr "Répartition de la musique sur %d pages..."
+
+#: optimal-page-breaking.cc:82
+#, c-format
+msgid "Fitting music on %d or %d pages..."
+msgstr "Répartition de la musique sur %d ou %d pages..."
+
+#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
+#: paper-score.cc:146
+msgid "Drawing systems..."
+msgstr "Dessin des systèmes..."
+
 #: page-turn-page-breaking.cc:146
 #, c-format
 msgid "page-turn-page-breaking: breaking from %d to %d"
@@ -1445,10 +2149,6 @@ msgstr ""
 msgid "Calculating page and line breaks (%d possible page breaks)..."
 msgstr "Calcul des sauts de page et de ligne (%d sauts de pages possibles)..."
 
-#: page-turn-page-breaking.cc:226 paper-score.cc:146
-msgid "Drawing systems..."
-msgstr "Dessin des systèmes..."
-
 #: page-turn-page-breaking.cc:275
 #, c-format
 msgid "break starting at page %d"
@@ -1457,22 +2157,22 @@ msgstr "saut intervenant à la page %d"
 #: page-turn-page-breaking.cc:276
 #, c-format
 msgid "\tdemerits: %f"
-msgstr "démérites : %f"
+msgstr "        démérites : %f"
 
 #: page-turn-page-breaking.cc:277
 #, c-format
 msgid "\tsystem count: %d"
-msgstr "nombre de systèmes : %d"
+msgstr "        nombre de systèmes : %d"
 
 #: page-turn-page-breaking.cc:278
 #, c-format
 msgid "\tpage count: %d"
-msgstr "nombre de pages : %d"
+msgstr "        nombre de pages : %d"
 
 #: page-turn-page-breaking.cc:279
 #, c-format
 msgid "\tprevious break: %d"
-msgstr "coupure précédente : %d"
+msgstr "        coupure précédente : %d"
 
 #: pango-font.cc:184
 #, c-format
@@ -1492,7 +2192,7 @@ msgstr "« %s » n'est pas un fichier PostScript"
 msgid "FreeType face has no PostScript font name"
 msgstr "Caractère FreeType sans nom de police PostScript"
 
-#: paper-column-engraver.cc:199
+#: paper-column-engraver.cc:221
 msgid "forced break was overridden by some other event, should you be using bar checks?"
 msgstr ""
 "Une coupure explicite a été outrepassée par un autre événement. \n"
@@ -1503,10 +2203,6 @@ msgstr ""
 msgid "Layout output to `%s'..."
 msgstr "Sortie mise en page vers « %s »..."
 
-#: paper-score.cc:105
-msgid "Calculating line breaks..."
-msgstr "Calcul des sauts de ligne..."
-
 #: paper-score.cc:118
 #, c-format
 msgid "Element count %d (spanners %d) "
@@ -1516,11 +2212,11 @@ msgstr "%d éléments dénombrés (%d extensions)"
 msgid "Preprocessing graphical objects..."
 msgstr "Pré-traitement des éléments graphiques..."
 
-#: parse-scm.cc:87
+#: parse-scm.cc:93
 msgid "GUILE signaled an error for the expression beginning here"
 msgstr "GUILE a signalé une erreur pour l'expression débutant ici"
 
-#: percent-repeat-engraver.cc:200
+#: percent-repeat-engraver.cc:202
 msgid "unterminated percent repeat"
 msgstr "répétition en pourcent non terminée"
 
@@ -1536,32 +2232,32 @@ msgstr "Bouclage du canal MIDI"
 msgid "remapping modulo 16"
 msgstr "réaffectation modulo 16"
 
-#: performance.cc:101
+#: performance.cc:100
 #, c-format
 msgid "MIDI output to `%s'..."
 msgstr "Sortie MIDI vers « %s »..."
 
-#: phrasing-slur-engraver.cc:131
+#: phrasing-slur-engraver.cc:146
 msgid "unterminated phrasing slur"
 msgstr "liaison de phrasé non terminée"
 
-#: piano-pedal-engraver.cc:286
+#: piano-pedal-engraver.cc:287
 #, 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"
 
-#: piano-pedal-engraver.cc:301 piano-pedal-engraver.cc:312
+#: piano-pedal-engraver.cc:302 piano-pedal-engraver.cc:313
 #: piano-pedal-performer.cc:93
 #, c-format
 msgid "cannot find start of piano pedal: `%s'"
 msgstr "début de la pédale de piano indéterminé : « %s »"
 
-#: piano-pedal-engraver.cc:347
+#: piano-pedal-engraver.cc:348
 #, 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 »"
 
-#: program-option-scheme.cc:207
+#: program-option-scheme.cc:215
 #, c-format
 msgid "no such internal option: %s"
 msgstr "option interne inconnue : %s"
@@ -1569,7 +2265,7 @@ msgstr "option interne inconnue : %s"
 #: property-iterator.cc:74
 #, c-format
 msgid "not a grob name, `%s'"
-msgstr "n'est pas un nom d'objet graphique (grob), « %s »"
+msgstr " « %s » n'est pas un nom d'objet graphique (grob)"
 
 #: relative-octave-check.cc:38
 msgid "Failed octave check, got: "
@@ -1633,12 +2329,12 @@ msgstr ""
 msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR"
 msgstr "LILYPONDPREFIX est obsolète, utiliser LILYPOND_DATADIR"
 
-#: relocate.cc:357
+#: relocate.cc:356
 #, c-format
 msgid "Relocation file: %s"
 msgstr "Fichier de relocalisation : %s"
 
-#: relocate.cc:393
+#: relocate.cc:392
 #, c-format
 msgid "Unknown relocation command %s"
 msgstr "Commande de relocalisation inconnue : %s"
@@ -1651,7 +2347,7 @@ msgstr "collision de silences insoluble : direction du silence non fixée"
 msgid "too many colliding rests"
 msgstr "trop de silences se chevauchent"
 
-#: rest.cc:132
+#: rest.cc:148
 #, c-format
 msgid "rest `%s' not found"
 msgstr "silence « %s » inconnu"
@@ -1708,19 +2404,19 @@ msgstr "liaison non terminée"
 msgid "cannot end slur"
 msgstr "impossible de terminer la liaison"
 
-#: slur.cc:355
+#: slur.cc:359
 #, 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éterminé ?"
+"avoid-slur non définie ?"
 
-#: source-file.cc:74
+#: source-file.cc:79
 #, c-format
 msgid "expected to read %d characters, got %d"
 msgstr "au lieu de %d caractères à lire, il y en a %d"
 
-#: spaceable-grob.cc:117
+#: spaceable-grob.cc:83
 #, c-format
 msgid "No spring between column %d and next one"
 msgstr "Pas de tension entre la colonne %d et la suivante"
@@ -1747,39 +2443,39 @@ msgstr "la source devrait spécifier des voix polyphoniques"
 msgid "weird stem size, check for narrow beams"
 msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
 
-#: stem.cc:618
+#: stem.cc:623
 #, c-format
 msgid "flag `%s' not found"
 msgstr "crochet inconnu : « %s »"
 
-#: stem.cc:629
+#: stem.cc:639
 #, c-format
 msgid "flag stroke `%s' not found"
 msgstr "type de crochet inconnu : « %s »"
 
-#: system.cc:180
+#: system.cc:178
 #, c-format
 msgid "Element count %d."
 msgstr "%d éléments dénombrés."
 
-#: system.cc:266
+#: system.cc:270
 #, c-format
 msgid "Grob count %d"
 msgstr "%d objet graphiques (grob) dénombrés"
 
-#: text-spanner-engraver.cc:60
+#: text-spanner-engraver.cc:62
 msgid "cannot find start of text spanner"
 msgstr "impossible de repérer le point de départ de l'extension de texte"
 
-#: text-spanner-engraver.cc:72
+#: text-spanner-engraver.cc:75
 msgid "already have a text spanner"
 msgstr "a déjà une extension de texte"
 
-#: text-spanner-engraver.cc:118
+#: text-spanner-engraver.cc:121
 msgid "unterminated text spanner"
 msgstr "extension de texte non terminée"
 
-#: tie-engraver.cc:267
+#: tie-engraver.cc:262
 msgid "lonely tie"
 msgstr "liaison de prolongation orpheline"
 
@@ -1800,10 +2496,10 @@ msgstr "Chiffrage de mesure inhabituel : %d/%d"
 msgid "time signature symbol `%s' not found; reverting to numbered style"
 msgstr "symbole de chiffrage de mesure « %s » inconnu ; retour à un style numérique"
 
-#: translator-ctors.cc:52
+#: translator-ctors.cc:53
 #, c-format
 msgid "unknown translator: `%s'"
-msgstr "traducteur inconnu : « %s »"
+msgstr "translateur inconnu : « %s »"
 
 #: translator-group-ctors.cc:29
 #, c-format
@@ -1815,21 +2511,21 @@ msgstr "Erreur fatale. Type inconnu : %s"
 msgid "cannot find: `%s'"
 msgstr " « %s » inconnu(e)"
 
-#: translator.cc:346
+#: translator.cc:347
 #, c-format
 msgid "Two simultaneous %s events, junking this one"
 msgstr "Deux événements %s simultanés, rejet de celui-ci"
 
-#: translator.cc:347
+#: translator.cc:348
 #, c-format
 msgid "Previous %s event here"
 msgstr "Événement %s précédent ici"
 
-#: trill-spanner-engraver.cc:67
+#: trill-spanner-engraver.cc:85
 msgid "cannot find start of trill spanner"
 msgstr "impossible de repérer le point de départ de l'extension de trille"
 
-#: trill-spanner-engraver.cc:79
+#: trill-spanner-engraver.cc:98
 msgid "already have a trill spanner"
 msgstr "a déjà une extension de trille"
 
@@ -1837,14 +2533,14 @@ msgstr "a déjà une extension de trille"
 msgid "No tuplet to end"
 msgstr "Aucun n-olet à terminer"
 
-#: vaticana-ligature-engraver.cc:388
+#: vaticana-ligature-engraver.cc:389
 #, 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:714
+#: vaticana-ligature-engraver.cc:718
 #, c-format
 msgid "Vaticana_ligature_engraver: setting `spacing-increment = %f': ptr =%ul"
 msgstr "Vaticana_ligature_engraver : fixé `spacing-increment = %f': ptr=%ul"
@@ -1862,151 +2558,153 @@ msgid "Vaticana_ligature: zero join (delta_pitch == 0)"
 msgstr "Vaticana_ligature: aucun joint (delta_pitch == 0)"
 
 #. fixme: be more verbose.
-#: volta-engraver.cc:143
+#: volta-engraver.cc:100
 msgid "cannot end volta spanner"
 msgstr "extension de reprise sans terminaison"
 
-#: volta-engraver.cc:153
+#: volta-engraver.cc:110
 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:157
+#: volta-engraver.cc:114
 msgid "also already have an ended spanner"
 msgstr "a déjà une extension terminée"
 
-#: volta-engraver.cc:158
+#: volta-engraver.cc:115
 msgid "giving up"
 msgstr "abandon"
 
-#: parser.yy:704
+#: parser.yy:804
 msgid "\\paper cannot be used in \\score, use \\layout instead"
 msgstr "dans la section \\score, utiliser \\layout au lieu de \\paper"
 
-#: parser.yy:728
+#: parser.yy:828
 msgid "need \\paper for paper block"
 msgstr "\\paper est nécessaire pour définir les paramètres de la page"
 
-#: parser.yy:1187
+#: parser.yy:1299
 msgid "Grob name should be alphanumeric"
 msgstr "Un nom de Grob devrait être alphanumérique"
 
-#: parser.yy:1485
+#: parser.yy:1597
 msgid "second argument must be pitch list"
 msgstr "le second argument doit être une liste de hauteurs"
 
-#: parser.yy:1512 parser.yy:1517 parser.yy:1982
+#: parser.yy:1624 parser.yy:1629 parser.yy:2101
 msgid "have to be in Lyric mode for lyrics"
 msgstr "doit être en mode Lyric pour des paroles"
 
-#: parser.yy:1614
+#: parser.yy:1726
 msgid "expecting string as script definition"
 msgstr "chaîne requise pour définir un script"
 
-#: parser.yy:1769 parser.yy:1819
+#: parser.yy:1881 parser.yy:1931
 #, c-format
 msgid "not a duration: %d"
-msgstr "n'est pas une durée : %d"
+msgstr "%d n'est pas une durée"
 
-#: parser.yy:1936
+#: parser.yy:2055
 msgid "have to be in Note mode for notes"
 msgstr "doit être en mode Note pour des notes"
 
-#: parser.yy:1997
+#: parser.yy:2116
 msgid "have to be in Chord mode for chords"
 msgstr "doit être en mode Chord pour des accords"
 
-#: lexer.ll:176
+#: lexer.ll:179
 msgid "stray UTF-8 BOM encountered"
 msgstr "parasitage par UTF-8 BOM"
 
-#: lexer.ll:180
+#: lexer.ll:183
 msgid "Skipping UTF-8 BOM"
 msgstr "Escamotage d'UTF-8 BOM"
 
-#: lexer.ll:235
+#: lexer.ll:238
 #, c-format
 msgid "Renaming input to: `%s'"
 msgstr "L'entrée a été renommée en « %s »"
 
-#: lexer.ll:252
+#: lexer.ll:255
 msgid "quoted string expected after \\version"
 msgstr "\\version doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:256
+#: lexer.ll:259
 msgid "quoted string expected after \\sourcefilename"
 msgstr "\\sourcefilename doit être suivi d'une chaîne entre guillemets"
 
-#: lexer.ll:260
+#: lexer.ll:263
 msgid "integer expected after \\sourcefileline"
 msgstr "\\sourcefilename doit être suivi d'un nombre entier"
 
-#: lexer.ll:273
+#: lexer.ll:276
 msgid "EOF found inside a comment"
 msgstr "Fin de fichier (EOF) à l'intérieur du commentaire"
 
-#: lexer.ll:288
+#: lexer.ll:291
 msgid "\\maininput not allowed outside init files"
 msgstr "\\maininput n'est pas permis en dehors des fichiers d'initialisation"
 
-#: lexer.ll:312
+#: lexer.ll:315
 #, c-format
 msgid "wrong or undefined identifier: `%s'"
 msgstr "identificateur erroné ou non défini : « %s »"
 
 #. backup rule
-#: lexer.ll:321
+#: lexer.ll:324
 msgid "end quote missing"
 msgstr "absence de guillemet fermant"
 
-#: lexer.ll:466
+#: lexer.ll:469
 msgid "Brace found at end of lyric.  Did you forget a space?"
 msgstr "Accolade repérée à la fin d'une parole. Manquerait-il un espace ?"
 
-#: lexer.ll:559
+#: lexer.ll:584
 msgid "Brace found at end of markup.  Did you forget a space?"
 msgstr "Accolade repérée à la fin d'un \"markup\". Manquerait-il un espace ?"
 
-#: lexer.ll:663
+#: lexer.ll:688
 #, c-format
 msgid "invalid character: `%c'"
 msgstr "caractère invalide : « %c »"
 
-#: lexer.ll:778
+#: lexer.ll:803
 #, c-format
 msgid "unknown escaped string: `\\%s'"
 msgstr "chaîne d'échappement inconnue : « \\%s »"
 
-#: lexer.ll:884
+#: lexer.ll:910
 #, c-format
 msgid "file too old: %s (oldest supported: %s)"
 msgstr ""
 "%s est plus qu'obsolète ; \n"
 "le plus ancien pouvant être supporté est : %s"
 
-#: lexer.ll:885
+#: lexer.ll:911
 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:891
+#: lexer.ll:917
 #, c-format
 msgid "program too old: %s (file requires: %s)"
 msgstr "Programme plus qu'obsolète : %s (le fichier requiert %s)"
 
-#: backend-library.scm:19 lily.scm:752 ps-to-png.scm:58
+#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
 #, scheme-format
 msgid "Invoking `~a'..."
-msgstr "Invocation de « ~a »..."
+msgstr "Appel de « ~a »..."
 
 #: backend-library.scm:28
 #, scheme-format
 msgid "`~a' failed (~a)"
 msgstr "échec de « ~a » (~a)"
 
-#: backend-library.scm:115 framework-tex.scm:343 framework-tex.scm:368
+#: backend-library.scm:116
 #, scheme-format
 msgid "Converting to `~a'..."
 msgstr "Conversion à « ~a »..."
 
+#. Do not try to guess the name of the png file,
+#. GS produces PNG files like BASE-page%d.png.
 #: backend-library.scm:128
 #, scheme-format
 msgid "Converting to ~a..."
@@ -2034,106 +2732,111 @@ msgstr "la classe d'événement ~A semble être inutilisée"
 msgid "translator listens to nonexisting event class ~A"
 msgstr "le traducteur écoute la classe d'événements ~A inexistante"
 
-#: define-markup-commands.scm:273
+#: define-markup-commands.scm:569
 msgid "no systems found in \\score markup, does it have a \\layout block?"
 msgstr "pas de système trouvé dans le bloc \\score, contient-il un bloc \\layout ?"
 
-#: define-markup-commands.scm:1315
+#: define-markup-commands.scm:2387
+#, scheme-format
+msgid "Cannot find glyph ~a"
+msgstr "impossible de trouver le glyphe ~a"
+
+#: define-markup-commands.scm:2696
 #, scheme-format
 msgid "not a valid duration string: ~a"
 msgstr "chaîne de durée invalide : ~a"
 
-#: define-music-types.scm:743
+#: define-music-types.scm:670
 #, scheme-format
 msgid "symbol expected: ~S"
 msgstr "symbole requis : ~S"
 
-#: define-music-types.scm:746
+#: define-music-types.scm:673
 #, scheme-format
 msgid "cannot find music object: ~S"
 msgstr "impossible de trouver l'objet de type musique : ~S"
 
-#: define-music-types.scm:766
+#: define-music-types.scm:692
 #, scheme-format
 msgid "unknown repeat type `~S'"
 msgstr "type de répétition inconnu : « ~S »"
 
-#: define-music-types.scm:767
-msgid "See music-types.scm for supported repeats"
-msgstr "Consulter music-types.scm pour connaître les types de répétitions reconnus"
+#: define-music-types.scm:693
+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"
 
-#: document-backend.scm:91
+#: document-backend.scm:99
 #, scheme-format
 msgid "pair expected in doc ~s"
 msgstr "le document ~s devrait contenir une paire"
 
-#: document-backend.scm:135
+#: document-backend.scm:154
 #, scheme-format
 msgid "cannot find interface for property: ~S"
 msgstr "impossible de trouver l'interface pour la propriété ~S"
 
-#: document-backend.scm:145
+#: document-backend.scm:164
 #, scheme-format
 msgid "unknown Grob interface: ~S"
 msgstr "interface d'objet graphique (Grob) inconnue : ~S"
 
-#: documentation-lib.scm:45
+#: documentation-lib.scm:49
 #, scheme-format
 msgid "Processing ~S..."
 msgstr "Traitement de ~S..."
 
-#: documentation-lib.scm:150
+#: documentation-lib.scm:165
 #, scheme-format
 msgid "Writing ~S..."
 msgstr "Écriture de ~S..."
 
-#: documentation-lib.scm:172
+#: documentation-lib.scm:187
 #, scheme-format
 msgid "cannot find description for property ~S (~S)"
 msgstr "impossible de trouver une description de la propriété ~S (~S)"
 
-#: framework-eps.scm:89
+#: flag-styles.scm:145
+#, scheme-format
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "type de crochet inconnu : « ~a » ou « ~a »"
+
+#: framework-eps.scm:90
 #, scheme-format
 msgid "Writing ~a..."
 msgstr "Écriture de ~a..."
 
-#: framework-ps.scm:281
+#: framework-ps.scm:277
 #, scheme-format
 msgid "cannot embed ~S=~S"
 msgstr "intégration impossible : ~S=~S"
 
-#: framework-ps.scm:334
+#: framework-ps.scm:330
 #, scheme-format
 msgid "cannot extract file matching ~a from ~a"
 msgstr "impossible d'extraire le fichier ~a à partir de ~a"
 
-#: framework-ps.scm:351
+#: framework-ps.scm:347
 #, scheme-format
 msgid "do not know how to embed ~S=~S"
 msgstr "imposible de réaliser l'intégration ~S=~S"
 
-#: framework-ps.scm:382
+#: framework-ps.scm:378
 #, scheme-format
 msgid "do not know how to embed font ~s ~s ~s"
 msgstr "impossible d'intégrer les fontes ~s ~s ~s"
 
-#: framework-ps.scm:731
+#: framework-ps.scm:748
 #, scheme-format
 msgid "cannot convert <stdout> to ~S"
 msgstr "impossible de convertir <stdout> en ~S"
 
-#: framework-ps.scm:750 framework-ps.scm:753
-#, scheme-format
-msgid "cannot generate ~S using the postscript back-end"
-msgstr "impossible de générer ~S à l'aide du support postscript"
-
-#: framework-ps.scm:760
+#: framework-ps.scm:771
 msgid ""
 "\n"
 "The PostScript backend does not support the system-by-system \n"
 "output. For that, use the EPS backend instead,\n"
 "\n"
-"  lilypond -b eps <file>\n"
+"  lilypond -dbackend=eps FILE\n"
 "\n"
 "If have cut & pasted a lilypond fragment from a webpage, be sure\n"
 "to only remove anything before\n"
@@ -2141,13 +2844,12 @@ msgid ""
 "  %% ****************************************************************\n"
 "  %% Start cut-&-pastable-section\n"
 "  %% ****************************************************************\n"
-"\n"
 msgstr ""
 "\n"
 "Le support PostScript ne peut traiter une sortie système par système.\n"
 "Utiliser de préférence le support EPS\n"
 "\n"
-"  lilypond -b eps <fichier>\n"
+"  lilypond -dbackend=eps FICHIER\n"
 "\n"
 "Si vous avez copié et collé un fragment lilypond à partir d'un page internet,\n"
 "assurez-vous d'avoir bien supprimé tout ce qui précède\n"
@@ -2157,66 +2859,57 @@ msgstr ""
 "  %% ****************************************************************\n"
 "\n"
 
-#: framework-tex.scm:360
-#, scheme-format
-msgid "TeX file name must not contain whitespace: `~a'"
-msgstr "un nom de fichier TeX ne peut contenir d'espace : « ~a »"
-
 #: graphviz.scm:53
 #, scheme-format
 msgid "Writing graph `~a'..."
-msgstr "Écriture de « ~a »..."
+msgstr "Écriture du graphique « ~a »..."
 
 #: layout-beam.scm:29
 #, scheme-format
 msgid "Error in beam quanting.  Expected (~S,~S) found ~S."
 msgstr "Erreur de définition du lien : attendait (~S,~S), ~S trouvé."
 
-#: layout-beam.scm:46
+#: layout-beam.scm:43
 #, scheme-format
 msgid "Error in beam quanting.  Expected ~S 0, found ~S."
 msgstr "Erreur de définition du lien : attendait ~S 0, repéré ~S."
 
-#: layout-page-layout.scm:115
+#: layout-page-layout.scm:126
 msgid "Can't fit systems on page -- ignoring between-system-padding"
 msgstr "Les système ne tiennent pas sur la page ; between-system-padding ignoré"
 
-#: layout-page-layout.scm:449
-msgid "Calculating page breaks..."
-msgstr "Calcul des sauts de page..."
-
-#: lily-library.scm:545
+#: lily-library.scm:602
 #, scheme-format
 msgid "unknown unit: ~S"
 msgstr "unité inconnue : ~S"
 
-#: lily-library.scm:579
+#: lily-library.scm:636
 #, 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:587
+#: lily-library.scm:644
 msgid "old relative compatibility not used"
 msgstr "compatibilité avec l'ancien mode relatif non utilisée"
 
-#: lily.scm:173
+#: lily.scm:179
 #, scheme-format
 msgid "cannot find: ~A"
 msgstr "impossible de trouver ~A"
 
-#: lily.scm:238
+#: lily.scm:228
 #, 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:619
+#: lily.scm:625
 #, scheme-format
 msgid "job ~a terminated with signal: ~a"
 msgstr "le travail ~a s'est terminé avec le signal ~a"
 
-#: lily.scm:622
+#: lily.scm:628
 #, scheme-format
 msgid ""
 "logfile ~a (exit ~a):\n"
@@ -2225,12 +2918,12 @@ msgstr ""
 "fichier journal ~a (sortie ~a) :\n"
 "~a"
 
-#: lily.scm:649 lily.scm:742
+#: lily.scm:653 lily.scm:751
 #, scheme-format
 msgid "failed files: ~S"
 msgstr "erreur sur les fichiers : ~S"
 
-#: lily.scm:732
+#: lily.scm:741
 #, scheme-format
 msgid "Redirecting output to ~a..."
 msgstr "Redirection de la sortie vers ~a..."
@@ -2239,98 +2932,105 @@ msgstr "Redirection de la sortie vers ~a..."
 msgid "Music head function must return Music object"
 msgstr "Une fonction musicale primitive devrait renvoyer un objet Music"
 
-#: ly-syntax-constructors.scm:139
+#: ly-syntax-constructors.scm:154
 #, scheme-format
 msgid "Invalid property operation ~a"
 msgstr "Opération de propriété invalide : ~a"
 
-#: markup.scm:94
+#: markup.scm:204
 #, scheme-format
 msgid "Wrong number of arguments.  Expect: ~A, found ~A: ~S"
 msgstr "Nombre d'arguments erroné. Requis : ~A, présent(s) ~A : ~S"
 
-#: markup.scm:100
+#: markup.scm:210
 #, scheme-format
 msgid "Invalid argument in position ~A.  Expect: ~A, found: ~S."
 msgstr "Argument invalide à la position ~A. ~A attendu, ~S trouvé."
 
+#: markup.scm:274
+#, scheme-format
+msgid "Not a markup command: ~A"
+msgstr "~A n'est pas une commande de type « markup»"
+
 #: music-functions.scm:228
 msgid "More alternatives than repeats.  Junking excess alternatives"
-msgstr "Plus d'alternatives que de répétitions. Escamotage des alternatives en trop."
+msgstr ""
+"Plus d'alternatives que de répétitions.\n"
+" Escamotage des alternatives surnuméraires."
+
+#: music-functions.scm:240
+#, scheme-format
+msgid "invalid tremolo repeat count: ~a"
+msgstr "nombre de répétition en trémolo invalide : ~a"
 
-#: music-functions.scm:250
+#: music-functions.scm:248
 #, scheme-format
 msgid "expecting 2 elements for chord tremolo, found ~a"
 msgstr "2 éléments sont requis pour l'accord de trémolo, ~a trouvé(s)"
 
-#: music-functions.scm:573
+#: music-functions.scm:575
 #, scheme-format
 msgid "music expected: ~S"
-msgstr "requiert de la musique : ~S"
+msgstr "~S requiert de la musique"
 
 #. FIXME: uncomprehensable message
-#: music-functions.scm:623
+#: music-functions.scm:625
 #, 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:773
+#: music-functions.scm:793
 #, scheme-format
 msgid "cannot find quoted music: `~S'"
 msgstr "impossible de trouver la citation de musique « ~S »"
 
-#: music-functions.scm:970
+#: music-functions.scm:1198
 #, scheme-format
 msgid "unknown accidental style: ~S"
 msgstr "style d'altération inconnu : ~S"
 
-#: output-ps.scm:276
+#: output-ps.scm:294
 msgid "utf-8-string encountered in PS backend"
 msgstr "le support PS a rencontré une chaîne utf8"
 
-#: output-svg.scm:42
+#: output-svg.scm:45
 #, scheme-format
 msgid "undefined: ~S"
 msgstr "~S indéfini(e)"
 
-#: output-svg.scm:132
+#: output-svg.scm:135
 #, scheme-format
 msgid "cannot decypher Pango description: ~a"
 msgstr "la description de Pango ne peut être déchiffrée : ~a"
 
-#: output-tex.scm:97
-#, scheme-format
-msgid "cannot find ~a in ~a"
-msgstr "impossible de trouver ~a dans ~a"
-
-#: paper.scm:84
+#: paper.scm:104
 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:132
+#: paper.scm:244
 #, scheme-format
 msgid "This is not a \\layout {} object, ~S"
 msgstr "~S n'est pas un objet de \\layout {}"
 
-#: paper.scm:144
+#: paper.scm:256
 #, scheme-format
-msgid "Unknown papersize: ~a"
+msgid "Unknown paper size: ~a"
 msgstr "Taille de papier inconnue : ~a"
 
 #. TODO: should raise (generic) exception with throw, and catch
 #. that in parse-scm.cc
-#: paper.scm:159
+#: paper.scm:271
 msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
 msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
 
-#: parser-clef.scm:127
+#: parser-clef.scm:129
 #, scheme-format
 msgid "unknown clef type `~a'"
 msgstr "type de clef inconnu : « ~a »"
 
-#: parser-clef.scm:128
+#: parser-clef.scm:130
 #, scheme-format
 msgid "supported clefs: ~a"
 msgstr "clefs reconnues : ~a"