all-translations-update: po-update translation-status
$(foreach lang, $(LANGS), make ISOLANG=$(lang) skeleton-update snippet-update &&) true
+ifneq ($(NO_COLOR),)
+CHECK_TRANSLATION_FLAGS = --no-color
+endif
+
ifneq ($(ISOLANG),)
new-lang:
@if (( $$(file -b $(ISOLANG)) == directory )) 2>/dev/null; \
CHECKED_FILES = $(ISOLANG)/index.html.in $(shell find $(ISOLANG)/user/ -maxdepth 1 -name '*.*te??')
-ifneq ($(NO_COLOR),)
-CHECK_TRANSLATION_FLAGS = --no-color
-endif
-
TELY_FILES = $(call src-wildcard,$(ISOLANG)/user/*.tely)
skeleton-update:
$(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -l $(ISOLANG) --skeleton $(TELY_FILES:$(ISOLANG)/user/%.tely=../user/%.tely)
1146 user/expressive.itely
555 user/repeats.itely
1455 user/simultaneous.itely
-1635 user/staff.itely
+1701 user/staff.itely
895 user/editorial.itely
2286 user/text.itely
76 user/specialist.itely -- Specialist notation
5202 user/programming-interface.itely -- Interfaces for programmers
1190 user/notation-appendices.itely -- Notation manual tables
250 user/cheatsheet.itely -- Cheat sheet
-62690 total
+62756 total
-5- Application usage
3248 user/lilypond-book.itely -- LilyPond-book
-·<p><i>Zuletzt aktualisiert am·Sun Dec 28 01:18:10 UTC 2008
+·<p><i>Zuletzt aktualisiert am·Wed Dec 31 01:23:25 UTC 2008
</i></p>
<html>
<!-- This page is automatically generated by translation-status.py from
<td>Till Rettig</td>
<td></td>
<td><span style="background-color: #1fff1f">ja</span></td>
- <td><span style="background-color: #1fff1f">ja</span></td>
+ <td><span style="background-color: #2cff20">teilweise</span></td>
<td>vor-GDP</td>
</tr>
<tr align="left">
<td>vor-GDP</td>
</tr>
<tr align="left">
- <td>1.6 Notation auf Systemen<br>(1635)</td>
+ <td>1.6 Notation auf Systemen<br>(1701)</td>
<td>Till Rettig</td>
<td></td>
<td><span style="background-color: #1fff1f">ja</span></td>
- <td><span style="background-color: #1fff1f">ja</span></td>
+ <td><span style="background-color: #25fe1f">teilweise</span></td>
<td>vor-GDP</td>
</tr>
<tr align="left">
<td>Till Rettig</td>
<td></td>
<td><span style="background-color: #1fff1f">ja</span></td>
- <td><span style="background-color: #1fff1f">ja</span></td>
+ <td><span style="background-color: #2cff20">teilweise</span></td>
<td>vor-GDP</td>
</tr>
<tr align="left">
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Ancient notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c TODO: add tablature.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Chord notation
@section Chord notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Reinhold Kainhofer
@c Translation checkers: Till Rettig
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@quotation
Wir wollen dieses Programm allen Freunden widmen, die wir
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Editorial annotations
@section Editorial annotations
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Expressive marks
@section Expressive marks
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Fretted string instruments
@section Fretted string instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Till Rettig, Reinhold Kainhofer
@node Fundamental concepts
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node General input and output
@chapter General input and output
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Till Rettig, Reinhold Kainhofer
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Till Rettig, Reinhold Kainhofer
@node Introduction
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Keyboard and other multi-staff instruments
@section Keyboard and other multi-staff instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Reinhold Kainhofer
@c Translation checkers: Till Rettig
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Literature list
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Notation manual tables
@appendix Notation manual tables
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Musical notation
@chapter Musical notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Percussion
@section Percussion
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Pitches
@section Pitches
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Preface
@unnumbered Preface
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Repeats
@section Repeats
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Rhythms
@section Rhythms
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Reinhold Kainhofer, Till Rettig
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Scheme tutorial
@appendix Scheme tutorial
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Till Rettig, Reinhold Kainhofer
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Simultaneous notes
@section Simultaneous notes
version that you are working on. See TRANSLATION for details.
@end ignore
+@c \version "2.12.0"
@node Spacing issues
@chapter Spacing issues
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Specialist notation
@chapter Specialist notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Staff notation
@section Staff notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Templates
@appendix Templates
@ The `line-width' is for \header.
@li lypond[quote,verbatim,ragged-right,line-width]
-\version "2.11.61"
+\version "2.12.0"
\header {
dedication = "dedication"
title = "Title"
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Text
@section Text
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@ignore
Tutorial guidelines:
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Tweaking output
@chapter Tweaking output
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Unfretted string instruments
@section Unfretted string instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Vocal music
@section Vocal music
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Wind instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Working on LilyPond projects
@chapter Working on LilyPond projects
@item @strong{Schreiben Sie immer mit @code{\version} die
Versionsnummer
in jede Datei}. Beachten Sie, dass in allen Vorlagen die Versionsnummer
-@code{\version "2.11.61"} eingetragen ist. Es empfiehlt sich, in alle
+@code{\version "2.12.0"} eingetragen ist. Es empfiehlt sich, in alle
Dateien, unabhängig von ihrer Größe, den @code{\version}-Befehl
einzufügen. Persönliche Erfahrung hat gezeigt, dass es ziemlich
frustrierend sein kann zu erinnern, welche Programmversion man etwa
@example
%%% global.ly
-\version "2.11.61"
+\version "2.12.0"
#(ly:set-option 'point-and-click #f)
\include "../init/init-defs.ly"
\include "../init/init-layout.ly"
@c Translators: Till Rettig
+@c \version "2.12.0"
@node World music
@section World music
- <p><i>Actualizado en Sun Dec 28 01:18:10 UTC 2008
+ <p><i>Actualizado en Wed Dec 31 01:23:25 UTC 2008
</i></p>
<html>
<!-- This page is automatically generated by translation-status.py from
<td>Francisco Vila</td>
<td></td>
<td><span style="background-color: #1fff1f">sí</span></td>
- <td><span style="background-color: #1fff1f">sí</span></td>
+ <td><span style="background-color: #2cff20">parcialmente</span></td>
<td>pre-GDP</td>
</tr>
<tr align="left">
<td>post-GDP</td>
</tr>
<tr align="left">
- <td>1.6 Notación de los pentagramas<br>(1635)</td>
+ <td>1.6 Notación de los pentagramas<br>(1701)</td>
<td>Francisco Vila</td>
<td></td>
<td><span style="background-color: #1fff1f">sí</span></td>
- <td><span style="background-color: #1fff1f">sí</span></td>
+ <td><span style="background-color: #25fe1f">parcialmente</span></td>
<td>pre-GDP</td>
</tr>
<tr align="left">
<td>Francisco Vila</td>
<td></td>
<td><span style="background-color: #1fff1f">sí</span></td>
- <td><span style="background-color: #1fff1f">sí</span></td>
+ <td><span style="background-color: #2cff20">parcialmente</span></td>
<td>pre-GDP</td>
</tr>
<tr align="left">
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Ancient notation
@section Ancient notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Changing defaults
@chapter Changing defaults
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c TODO: add tablature.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Chord notation
@section Chord notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Converting from other formats
@chapter Converting from other formats
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@quotation
Queremos dedicar este programa a todos los amigos que hemos
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Editorial annotations
@section Editorial annotations
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Expressive marks
@section Expressive marks
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Fretted string instruments
@section Fretted string instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Fundamental concepts
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node General input and output
@chapter General input and output
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Francisco Vila
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translation status: post-GDP
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Keyboard and other multi-staff instruments
@section Keyboard and other multi-staff instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Note: keep this node named so that `info lilypond-book' brings you here.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Literature list
@appendix Literature list
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Notation manual tables
@appendix Notation manual tables
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Musical notation
@chapter Musical notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Percussion
@section Percussion
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Pitches
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Preface
@unnumbered Preface
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Interfaces for programmers
@chapter Interfaces for programmers
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Repeats
@section Repeats
@c -*- coding: utf-8; mode: texinfo; documentlanguage: es -*-
@ignore
- Translation of GIT committish: 4f8c7b381812949e6f765f641fba9108b52af56b
+ Translation of GIT committish: d12be863e1a7243f95d327002906c497f4741e33
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Rhythms
@section Rhythms
@code{measureLength}, @code{beatLength} y @code{beatGrouping}. Estas
propiedades se deben establecer en los contextos @code{Score},
@code{Staff} o @code{Voice} para delimitar el ámbito de su efecto.
+Los valores predeterminados se establecen al procesarse las
+instrucciones @code{\time}, por ello las instrucciones @code{\set} se
+deben escribir después de todas las instrucciones @code{\time}.
Dichas propiedades determinan el barrado de la siguiente forma:
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Running LilyPond
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Scheme tutorial
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Setup
@chapter Setup
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translation status: post-GDP
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.64"
+@c \version "2.12.0"
@node Spacing issues
@chapter Spacing issues
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Specialist notation
@chapter Specialist notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Staff notation
@section Staff notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Templates
@appendix Templates
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Text
@section Text
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@ignore
Tutorial guidelines: (different from policy.txt!)
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Tweaking output
@chapter Tweaking output
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Unfretted string instruments
@section Unfretted string instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Vocal music
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Wind instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Working on LilyPond projects
@chapter Working on LilyPond projects
version that you are working on. See TRANSLATION for details.
@end ignore
+@c \version "2.12.0"
@node World music
@section World music
- <p><i>Dernière mise à jour Sun Dec 28 01:18:10 UTC 2008
+ <p><i>Dernière mise à jour Wed Dec 31 01:23:25 UTC 2008
</i></p>
<html>
<!-- This page is automatically generated by translation-status.py from
<tr align="left">
<td>Préface<br>(411)</td>
<td>Valentin Villenave</td>
- <td>Ludovic Sardain</td>
+ <td>Ludovic Sardain<br>
+ Damien Heurtebise</td>
<td><span style="background-color: #1fff1f">oui</span></td>
<td><span style="background-color: #1fff1f">oui</span></td>
<td>pré-GDP</td>
<td>Ludovic Sardain<br>
John Mandereau</td>
<td>Jean-Charles Malahieude<br>
- Jean-Yves Baudais</td>
+ Jean-Yves Baudais<br>
+ Damien Heurtebise</td>
<td><span style="background-color: #1fff1f">oui</span></td>
<td><span style="background-color: #40fe23">partiellement</span></td>
<td>post-GDP</td>
<table align="center" border="2">
<tr align="center">
- <th>GNU LilyPond --- Utilisation des programmes</th> <th>Traducteurs</th>
+ <th>GNU LilyPond --- Utilisation du programme</th> <th>Traducteurs</th>
<th>Relecteurs</th>
<th>Traduit</th>
<th>À jour</th>
<td>Jean-Charles Malahieude</td>
<td></td>
<td><span style="background-color: #1fff1f">oui</span></td>
- <td><span style="background-color: #d587ff">N/A</span></td>
+ <td><span style="background-color: #1fff1f">oui</span></td>
<td>pré-GDP</td>
</tr>
<tr align="left">
<td>Jean-Charles Malahieude</td>
<td></td>
<td><span style="background-color: #1fff1f">oui</span></td>
- <td><span style="background-color: #d587ff">N/A</span></td>
+ <td><span style="background-color: #1fff1f">oui</span></td>
<td>pré-GDP</td>
</tr>
</table>
<table align="center" border="2">
<tr align="center">
- <th>GNU LilyPond --- Manuel de notation</th> <th>Traducteurs</th>
+ <th>GNU LilyPond --- Manuel d'initiation</th> <th>Traducteurs</th>
<th>Relecteurs</th>
<th>Traduit</th>
<th>À jour</th>
Jean-Charles Malahieude</td>
<td></td>
<td><span style="background-color: #1fff1f">oui</span></td>
- <td><span style="background-color: #1fff1f">oui</span></td>
+ <td><span style="background-color: #2cff20">partiellement</span></td>
<td>pré-GDP</td>
</tr>
<tr align="left">
<td>pré-GDP</td>
</tr>
<tr align="left">
- <td>1.6 Notation sur la portée<br>(1635)</td>
+ <td>1.6 Notation sur la portée<br>(1701)</td>
<td>Valentin Villenave<br>
Jean-Charles Malahieude</td>
<td>John Mandereau</td>
- <td><span style="background-color: #dfef77">partiellement (70 %)</span></td>
+ <td><span style="background-color: #dfef77">partiellement (69 %)</span></td>
<td><span style="background-color: #ff6f57">partiellement</span></td>
<td>pré-GDP</td>
</tr>
Jean-Charles Malahieude</td>
<td></td>
<td><span style="background-color: #1fff1f">oui</span></td>
- <td><span style="background-color: #1fff1f">oui</span></td>
+ <td><span style="background-color: #2cff20">partiellement</span></td>
<td>pré-GDP</td>
</tr>
<tr align="left">
<td>John Mandereau<br>
Jean-Charles Malahieude</td>
<td></td>
- <td><span style="background-color: #dfef77">partiellement (79 %)</span></td>
+ <td><span style="background-color: #dfef77">partiellement (82 %)</span></td>
<td><span style="background-color: #ff6d58">partiellement</span></td>
<td>pré-GDP</td>
</tr>
@end ignore
+@c \version "2.12.0"
+
@node Ancient notation
@section Ancient notation
-@untranslated
-
-
@menu
* Introduction to ancient notation::
* Alternative note signs::
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Gilles Thibault
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of lilypond-program.tely
@ignore
- Translation of GIT committish: 1e2013ba299c3640143448cbd5ea72f2aa61e380
+ Translation of GIT committish: e2070eadd7d3d7a87450aab195a48945ee0b144a
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@quotation
Nous souhaitons dédier ce programme à tous les amis que nous avons
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Jean-Charles Malahieude
<es'-2>4
@end lilypond
+@snippets
+
+@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+{avoiding-collisions-of-chord-fingering-with-beams.ly}
+
@seealso
Référence du programme : @rinternals{Fingering}.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave, Jean-Charles Malahieude
@c Translation checkers: John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Jean-Charles Malahieude, Valentin Villenave
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Ludovic Sardain, John Mandereau
-@c Translation checkers: Jean-Charles Malahieude, Jean-Yves Baudais
+@c Translation checkers: Jean-Charles Malahieude, Jean-Yves Baudais, Damien Heurtebise
@c Translation status: post-GDP
@node Engraving
@unnumberedsubsec Engraving
+
@cindex gravure
@cindex typographie musicale
@cindex musique et typographie
creux et les bosses retenant l'encre. Une image était formée en
pressant du papier sur la plaque. La découpe et l'embossage étaient
entièrement faits à la main. Il était pénible d'appliquer une
-correction, quand celle-ci n'était pas impossible, la gravure devait
+correction, quand celle-ci n'était pas impossible ; la gravure devait
donc être parfaite du premier coup. La gravure demandait une
qualification hautement spécialisée : un artisan devait accomplir
environ cinq ans de formation avant de mériter le titre de maître
De nos jours, toutes les partitions récentes sont produites avec des
ordinateurs. Ceci a des avantages évidents : le coût des impressions
-a diminué, et le travail d'éditeur peut être envoyé par courriel.
+a diminué, et le travail d'édition peut être envoyé par courriel.
Malheureusement, l'utilisation dominante des ordinateurs a également
diminué la qualité graphique des partitions. L'impression
informatisée leur donne un aspect fade et mécanique qui les rend
Ces exemples démontrent que la typographie musicale est un art subtil
et complexe, et que la produire demande une expertise considérable,
-que les musiciens n'ont généralement pas. LilyPond représente notre
-effort pour apporter l'excellence graphique de la gravure à la main à
-l'ère de l'ordinateur, et la rendre accessible à tous les musiciens.
-Nous avons conçu nos algorithmes, fontes et paramètres de programme
-pour retrouver la qualité d'édition des anciennes partitions que nous
-aimons tant lire et jouer.
-
+que les musiciens ne possèdent généralement pas. LilyPond est le
+fruit de nos efforts pour restaurer l'excellence graphique de la
+gravure à la main à l'ère de l'ordinateur, et la rendre accessible à
+tous les musiciens. Nous avons conçu nos algorithmes, fontes et
+paramètres de programme pour retrouver la qualité d'édition des
+anciennes partitions que nous aimons tant lire et jouer.
@node Automated engraving
La réponse est : nous ne le pouvons pas. La typographie se base sur
le jugement visuel humain, donc les humains ne peuvent pas être
-complètement remplacés. Si LilyPond arrive à résoudre la plupart des
+complètement remplacés. Si LilyPond arrive à traiter la plupart des
situations correctement, ce sera déjà une grande avancée sur les
-logiciels existants. Les autres situations peuvent être résolues à la
+logiciels existants. Les problèmes restants peuvent être résolus à la
main. Au fil des ans, le logiciel peut être affiné pour faire de plus
en plus de choses automatiquement, pour que les ajustements manuels
soient de moins en moins nécessaires.
à l'utilisateur.
@item Enfin, nous affinons continuellement les algorithmes de formatage,
-donc nous avons besoin d'une approche souple des règles. Le language
+donc nous avons besoin d'une approche souple des règles. Le langage
C++ oblige à une certaine méthode de groupage des règles qui ne
convient pas bien au fonctionnement de la notation musicale.
-
+
@end itemize
@cindex langage de programmation Scheme
Ces problèmes ont été résolus en intégrant un interpréteur pour le
-language de programmation Scheme, et en réécrivant des parties de
+langage de programmation Scheme, et en réécrivant des parties de
LilyPond en Scheme. L'architecture actuelle de formatage est
construite autour de la notion d'objets graphiques, décrits par des
fonctions et des variables Scheme. Cette architecture comprend les
La notation musicale usuelle est un système d'écriture qui a évolué à
travers les dix derniers siècles. La forme qui est aujourd'hui
communément utilisée date du début de la Renaissance. Bien que la forme
-basique --- les têtes de notes sur une portée de cinq lignes --- n'a pas
+basique --- les têtes de notes sur une portée de cinq lignes --- n'ait pas
changé, les détails continuent d'évoluer pour exprimer les innovations
de la notation contemporaine. Par conséquent, elle comprend quelque 500
ans de musique, avec des applications allant des mélodies monodiques à
@end lilypond
@noindent
-Le graveur de hampe est notifié de chaque tête de note qui survient.
+Le graveur de hampe est informé de chaque tête de note qui survient.
Chaque fois qu'une tête de note --- plusieurs pour un accord --- est
rencontrée, un objet hampe est créé et connecté à la tête de note. En
ajoutant des graveurs pour les barres de ligature, les liaisons, les
Idéalement, le format d'entrée pour n'importe quel système de
formatage est une description abstraite du contenu. Dans ce cas-ci,
ce serait la musique elle-même. Cela pose un formidable problème :
-comment pouvons-nous définir ce que la musique est réellement ? Plutôt
+comment pouvons-nous définir ce qu'est réellement la musique ? Plutôt
que d'essayer de trouver une réponse, nous avons renversé la question.
Nous écrivons un logiciel capable de produire de la musique écrite, et
adaptons le format pour atteindre la plus grande concision possible.
définition le contenu lui-même. Notre logiciel sert de définition
formelle d'un document de musique.
-La syntaxe est également l'interface utilisateur pour LilyPond, par
+Pour LilyPond, la syntaxe est également l'interface utilisateur ; par
conséquent il est facile de saisir
@example
@end example
@noindent
-c'est-à-dire un do central noire et, juste au-dessus un ré croche
+c'est-à-dire un do central noire et, juste au-dessus, un ré croche
@lilypond[quote]
{
@end lilypond
Sur une échelle microscopique, une telle syntaxe est facile à
-utiliser. A plus grande échelle, la syntaxe a besoin aussi de
+utiliser. À plus grande échelle, la syntaxe a besoin aussi de
structure. Comment serait-il possible autrement de rentrer des
pièces complexes comme des symphonies ou des opéras ? La structure
est formée par le concept d'expression musicale : en combinant
@end lilypond
@noindent
-Cette expression est mise dans une séquence grace à l'encadrement par
+On met cette expression dans une séquence en l'encadrant par
des accolades @code{@{@tie{}@dots{}@tie{}@}}
@example
@noindent
Ceci est également une expression, et peut donc encore une fois
-être combinée avec d'autres expressions simultanées (une blanche)
+être combiné avec d'autres expressions simultanées (une blanche)
en utilisant <<, @code{\\}, et >>
@example
De telles structures récursives peuvent être spécifiées formellement
et de manière ordonnée dans une grammaire indépendante de tout
-contexte. Le code d'analyse est aussi générée à partir de cette
+contexte. Le code d'analyse est aussi généré à partir de cette
grammaire. Autrement dit, la syntaxe de LilyPond est définie
clairement et sans ambiguité.
@ref{Scheme tutorial} : courte introduction à Scheme, le langage de
programmation utilisé dans les fonctions de musique. Ces quelques
lignes vous aideront à construire des retouches avancées ; nombre
-d'utilisateurs n'ont jamais touché à Scheme.
+d'utilisateurs ne touchent jamais à Scheme.
@end itemize
@cindex langues étrangères
@cindex langue
@cindex langage
-
+
@rglosnamed{Top,Glossaire musical} : ce document explique en anglais
des termes musicaux, et donne leur traduction dans diverses langues.
Si vous n'êtes pas familier avec la notation et la terminologie
(presque) tout ce que vous désirez.
@item
-@ruser{Interfaces for programmers} :.création de fonctions de musique
+@ruser{Interfaces for programmers} : création de fonctions de musique
à l'aide de Scheme.
@end itemize
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Frédéric Chiasson, Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Musical notation
@chapter Musical notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.62"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Frédéric Chiasson
@c Translation checkers: Valentin Villenave, Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
-@c Translation checkers: Ludovic Sardain
+@c Translation checkers: Ludovic Sardain, Damien Heurtebise
@node Preface
@unnumbered Preface
n'est pas encouragé par d'autres --- professeurs, chefs ou public ---
en décourager plus d'un. Pourtant, pour peu que l'on persévère,
l'instrument devient progressivement une partie de notre vie. Si
-certains jours en jouer semble naturel, c'est un vrai bonheur. Et si
-d'autres jours on ne peut tout simplement rien en tirer, on continue
-quand même à travailler, jour après jour.
+certains jours il semble naturel d'en jouer, c'est un vrai bonheur.
+Et si d'autres jours on ne peut tout simplement rien en tirer, on
+continue quand même à travailler, coûte que coûte.
De même, développer LilyPond peut être une tâche harassante. Certains
jours, c'est un monceau de bugs duquel il faut se dépêtrer. Pourtant,
-il fait maintenant partie de notre vie, et nous nous accrochons.
-Notre principale motivation est sans doute que notre logiciel est
-véritablement utile aux gens. En flânant sur Internet, nous trouvons
-beaucoup de gens qui se servent de LilyPond, et réalisent des
-partitions très impressionnantes : c'est incroyable, mais en même
-temps très flatteur.
+il fait maintenant partie de notre vie, et nous nous accrochons.
+Notre principale motivation vient sans doute de l'utilité réelle de
+notre logiciel. En flânant sur Internet, nous trouvons beaucoup de
+gens qui utilisent LilyPond pour réaliser d'impressionnantes
+partitions : c'est incroyable, mais en même temps très flatteur.
Les utilisateurs ne se contentent pas de nous encourager en utilisant
notre logiciel ; nombre d'entre eux nous aident aussi en faisant des
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Gilles Thibault
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Frédéric Chiasson
@c Translation checkers: Valentin Villenave, Jean-Charles Malahieude
@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*-
@c This file is part of lilypond-program.tely
@ignore
- Translation of GIT committish: 1e2013ba299c3640143448cbd5ea72f2aa61e380
+ Translation of GIT committish: e2070eadd7d3d7a87450aab195a48945ee0b144a
When revising a translation, copy the HEAD committish of the
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Frédéric Chiasson, Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Frédéric Chiasson, Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Specialist notation
@chapter Specialist notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave, Jean-Charles Malahieude
@c Translation checkers: John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Jean-Charles Malahieude
@c Translation checkers: Valentin Villenave, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@ignore
Tutorial guidelines: (different from policy.txt!)
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave, Nicolas Klutchnikoff, Damien Heurtebise
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Valentin Villenave
@c Translation checkers: Jean-Charles Malahieude, John Mandereau
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Translators: Ludovic Sardain
@c Translation checkers: Jean-Yves Baudais, Valentin Villenave, John Mandereau, Jean-Charles Malahieude
"Project-Id-Version: fr\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2008-12-25 12:33+0100\n"
-"PO-Revision-Date: 2008-11-09 13:14+0100\n"
+"PO-Revision-Date: 2008-12-29 20:31+0100\n"
"Last-Translator: Jean-Charles Malahieude <lolyfan-AT-wanadoo-DOT-fr>\n"
"Language-Team: Français <lilypond-user-fr@gnu.org>\n"
"MIME-Version: 1.0\n"
#. Documentation/user/tweaks.itely:2118 (comment)
msgid "This markup is short enough to fit without collision"
-msgstr "Ce morceau de texte est assez court pour ne pas faire de collision"
+msgstr "Ce morceau de texte est assez court pour ne pas risquer de collision"
#. Documentation/user/tweaks.itely:2122 (comment)
msgid "This is too long to fit, so it is displaced upwards"
msgid "Objects and interfaces"
msgstr "Objets et interfaces"
+# jcm - Journal officiel de la République française du 19/11/2008
+# jcm - (NOR : CTNX0825937X) traduction de naming
#. @node in Documentation/user/tweaks.itely
#. @subsection in Documentation/user/tweaks.itely
#. @node in Documentation/fr/user/tweaks.itely
#. @node in Documentation/de/user/tweaks.itely
#. @subsection in Documentation/de/user/tweaks.itely
msgid "Naming conventions of objects and properties"
-msgstr "Conventions de nom des objets et propriétés"
+msgstr "Conventions de nommage des objets et propriétés"
#. @node in Documentation/user/tweaks.itely
#. @subsection in Documentation/user/tweaks.itely
#. @node in Documentation/de/user/working.itely
#. @section in Documentation/de/user/working.itely
msgid "Suggestions for writing LilyPond input files"
-msgstr "Suggestions de saisie des fichiers LilyPond"
+msgstr "Suggestions pour la saisie de fichiers LilyPond"
#. @node in Documentation/user/working.itely
#. @subsection in Documentation/user/working.itely
#. @node in Documentation/de/user/working.itely
#. @subsection in Documentation/de/user/working.itely
msgid "Troubleshooting (taking it all apart)"
-msgstr "Résolution de problèmes --- tout remettre à plat"
+msgstr "Résolution de problèmes -- tout remettre à plat"
#. @node in Documentation/user/working.itely
#. @subsection in Documentation/user/working.itely
#. @node in Documentation/de/user/working.itely
#. @subsection in Documentation/de/user/working.itely
msgid "Minimal examples"
-msgstr "Exemples minimaux"
+msgstr "Exemples minimalistes"
#. @node in Documentation/user/working.itely
#. @section in Documentation/user/working.itely
#. @section in Documentation/es/user/lilypond-book.itely
#. @section in Documentation/de/user/lilypond-book.itely
msgid "Invoking @command{lilypond-book}"
-msgstr "Lancement de @command{lilypond-book}"
+msgstr "Utilisation de @command{lilypond-book}"
#. @subheading in Documentation/user/lilypond-book.itely
#. @subheading in Documentation/fr/user/lilypond-book.itely
#. Documentation/user/rhythms.itely:320 (comment)
msgid "Scale music by *2"
-msgstr "Échelonnement de la musique par 2"
+msgstr "Échelonnement de la musique au double"
#. Documentation/user/rhythms.itely:404 (comment)
msgid "First alternative: following note is tied normally"
#. Documentation/user/rhythms.itely:522 (comment)
msgid "These two lines are just to prettify this example"
-msgstr "Les deux lignes qui suivent ne sont là que pourillustrer le propos"
+msgstr "Les deux lignes qui suivent ne sont là que pour illustrer le propos"
#. Documentation/user/rhythms.itely:525 (comment)
msgid "Print a maxima rest, equal to four breves"
#. @node in Documentation/de/user/simultaneous.itely
#. @unnumberedsubsubsec in Documentation/de/user/simultaneous.itely
msgid "Writing music in parallel"
-msgstr "Saisie la musique en parallèle"
+msgstr "Saisie de musique en parallèle"
#. Documentation/user/staff.itely:1045 (variable)
#. Documentation/user/staff.itely:1060 (variable)
msgstr "Notation spécialisée"
#. Documentation/user/vocal.itely:512 (comment)
-#, fuzzy
msgid "not recommended: left aligns syllables"
-msgstr "peu recommandable : les paroles sont alignées à gauche"
+msgstr "peu recommandable : les syllabes sont alignées à gauche"
#. Documentation/user/vocal.itely:515 (comment)
msgid "wrong: durations needed"
msgstr "lala"
#. Documentation/user/vocal.itely:1284 (comment)
-#, fuzzy
msgid "moves the column off the left margin;"
msgstr "décalage par rapport à la marge de gauche"
msgstr "ajout d'espace vertical entre les couplets"
#. Documentation/user/vocal.itely:1301 (comment)
-#, fuzzy
msgid "adds horizontal spacing between columns;"
msgstr "ajout d'espace horizontal entre les colonnes"
#. Documentation/user/vocal.itely:1302 (comment)
-#, fuzzy
msgid "if they are still too close, add more \\\" \\\" pairs"
msgstr ""
"si elles sont toujours trop proches, ajouter d'autres paires de \\\" \\\""
msgstr "jusqu'à ce que le résultat soit acceptable."
#. Documentation/user/vocal.itely:1319 (comment)
-#, fuzzy
msgid "gives some extra space on the right margin;"
msgstr "décalage par rapport à la marge de droite"
#. @unnumberedsubsubsec in Documentation/es/user/keyboards.itely
#. @node in Documentation/de/user/keyboards.itely
#. @unnumberedsubsubsec in Documentation/de/user/keyboards.itely
-#, fuzzy
msgid "References for harps"
-msgstr "Généralités sur les instruments à clavier"
+msgstr "Généralités sur la harpe"
#. @node in Documentation/user/keyboards.itely
#. @unnumberedsubsubsec in Documentation/user/keyboards.itely
#. @unnumberedsubsubsec in Documentation/es/user/keyboards.itely
#. @node in Documentation/de/user/keyboards.itely
#. @unnumberedsubsubsec in Documentation/de/user/keyboards.itely
-#, fuzzy
msgid "Harp pedals"
-msgstr "Pédales de piano"
+msgstr "Pédales de harpe"
#. @node in Documentation/user/unfretted-strings.itely
#. @section in Documentation/user/unfretted-strings.itely
#. @node in Documentation/de/user/percussion.itely
#. @unnumberedsubsubsec in Documentation/de/user/percussion.itely
msgid "Percussion staves"
-msgstr "Portée de percussion"
+msgstr "Portées de percussion"
#. @node in Documentation/user/percussion.itely
#. @unnumberedsubsubsec in Documentation/user/percussion.itely
#. Documentation/user/ancient.itely:2434 (variable)
#. Documentation/user/ancient.itely:2502 (context id)
#. input/lsr/ancient-notation-template----modern-transcription-of-gregorian-music.ly:37 (variable)
-#, fuzzy
msgid "chant"
-msgstr "Chants"
+msgstr "Chant"
#. Documentation/user/ancient.itely:2405 (variable)
#. Documentation/user/ancient.itely:2445 (variable)
#. input/lsr/ancient-notation-template----modern-transcription-of-gregorian-music.ly:44 (variable)
-#, fuzzy
msgid "verba"
-msgstr "couplet"
+msgstr "verba"
#. Documentation/user/ancient.itely:2487 (variable)
msgid "spiritus"
-msgstr ""
+msgstr "spiritus"
#. Documentation/user/ancient.itely:2495 (variable)
-#, fuzzy
msgid "spirLyr"
-msgstr "sopranoParoles"
+msgstr "spiritusParoles"
#. @node in Documentation/user/ancient.itely
#. @section in Documentation/user/ancient.itely
#. Documentation/user/changing-defaults.itely:2896 (comment)
msgid "move horizontally left"
-msgstr "déplacement vers la droite"
+msgstr "déplacement vers la gauche"
#. Documentation/user/changing-defaults.itely:2898 (comment)
msgid "move vertically up"
msgstr "Pour centrer le repère au-dessus de la métrique"
#. Documentation/user/changing-defaults.itely:2974 (comment)
-#, fuzzy
msgid "the RehearsalMark will be centered above the Key Signature"
msgstr "Pour centrer le repère au-dessus de l'armure"
#. @node in Documentation/de/user/changing-defaults.itely
#. @subsection in Documentation/de/user/changing-defaults.itely
msgid "Naming conventions"
-msgstr "Conventions d'attribution de nom"
+msgstr "Conventions de nommage"
#. @node in Documentation/user/changing-defaults.itely
#. @section in Documentation/user/changing-defaults.itely
msgstr "Aide-mémoire"
#. @top in Documentation/fr/user/lilypond-learning.tely
-#, fuzzy
msgid "GNU LilyPond --- Manuel d'initiation"
-msgstr "GNU LilyPond --- manuel d'initiation"
+msgstr "GNU LilyPond --- Manuel d'initiation"
#. @subsubheading in Documentation/fr/user/macros.itexi
#. @subsubheading in Documentation/de/user/macros.itexi
#. @subheading in Documentation/fr/user/tutorial.itely
msgid "Hauteurs"
-msgstr ""
+msgstr "Hauteurs"
#. @subheading in Documentation/fr/user/tutorial.itely
msgid "Durées et rythme"
-msgstr ""
+msgstr "Durées et rythme"
#. @subheading in Documentation/fr/user/tutorial.itely
msgid "Silences"
msgstr "Mise à jour d'anciens fichiers"
#. @top in Documentation/fr/user/lilypond-program.tely
-#, fuzzy
msgid "GNU LilyPond --- Utilisation des programmes"
msgstr "GNU LilyPond --- Utilisation du programme"
msgstr "Mise à jour avec @command{convert-ly}"
#. @top in Documentation/fr/user/lilypond.tely
-#, fuzzy
msgid "GNU LilyPond --- Manuel de notation"
-msgstr "GNU LilyPond --- manuel d'initiation"
+msgstr "GNU LilyPond --- Manuel d'initiation"
#. @node in Documentation/fr/user/repeats.itely
#. @unnumberedsubsubsec in Documentation/fr/user/repeats.itely
msgstr ""
#. @subsubheading in Documentation/de/user/vocal.itely
-#, fuzzy
msgid "Ignorieren von Melismen"
msgstr "Désactivation du traitement des mélismes"
msgstr "Utilisation de @code{break-aligned-interface}"
#. input/lsr/accordion-discant-symbols.ly:34 (variable)
-#, fuzzy
msgid "discant"
msgstr "discantus"
#. input/lsr/accordion-discant-symbols.ly:37 (variable)
-#, fuzzy
msgid "dot"
-msgstr "saut"
+msgstr "point"
#. input/lsr/accordion-discant-symbols.ly:43 (comment)
msgid "16 voets register"
-msgstr ""
+msgstr "registre de 16 pieds"
#. input/lsr/accordion-discant-symbols.ly:44 (variable)
-#, fuzzy
msgid "accBasson"
-msgstr "cbasson"
+msgstr "accBasson"
#. input/lsr/accordion-discant-symbols.ly:50 (comment)
msgid "een korig 8 en 16 voets register"
#. input/lsr/accordion-discant-symbols.ly:51 (variable)
msgid "accBandon"
-msgstr ""
+msgstr "accBandon"
#. input/lsr/accordion-discant-symbols.ly:59 (variable)
-#, fuzzy
msgid "accVCello"
-msgstr "cello"
+msgstr "accVCelle"
#. input/lsr/accordion-discant-symbols.ly:69 (comment)
msgid "4-8-16 voets register"
-msgstr ""
+msgstr "ergistre 4-8-16 pieds"
#. input/lsr/accordion-discant-symbols.ly:70 (variable)
-#, fuzzy
msgid "accHarmon"
-msgstr "Harmoniques"
+msgstr "accHarmonica"
#. input/lsr/accordion-discant-symbols.ly:80 (variable)
-#, fuzzy
msgid "accTrombon"
-msgstr "Symboles de jazz"
+msgstr "accTrombonne"
#. input/lsr/accordion-discant-symbols.ly:92 (comment)
msgid "eenkorig 4 en 16 voets register"
msgstr ""
#. input/lsr/accordion-discant-symbols.ly:93 (variable)
-#, fuzzy
msgid "accOrgan"
-msgstr "PedalierOrgue"
+msgstr "accOrgue"
#. input/lsr/accordion-discant-symbols.ly:101 (variable)
-#, fuzzy
msgid "accMaster"
-msgstr "cluster"
+msgstr "accMaitre"
#. input/lsr/accordion-discant-symbols.ly:115 (variable)
-#, fuzzy
msgid "accAccord"
-msgstr "Accordéon"
+msgstr "accAccordeon"
#. input/lsr/accordion-discant-symbols.ly:127 (variable)
-#, fuzzy
msgid "accMusette"
-msgstr "accent"
+msgstr "accMusette"
#. input/lsr/accordion-discant-symbols.ly:137 (variable)
-#, fuzzy
msgid "accCeleste"
-msgstr "accent"
+msgstr "accCeleste"
#. input/lsr/accordion-discant-symbols.ly:145 (variable)
-#, fuzzy
msgid "accOboe"
-msgstr "accent"
+msgstr "accHautbois"
#. input/lsr/accordion-discant-symbols.ly:153 (variable)
-#, fuzzy
msgid "accClarin"
-msgstr "clarinette"
+msgstr "accClarinette"
#. input/lsr/accordion-discant-symbols.ly:159 (variable)
-#, fuzzy
msgid "accPiccolo"
-msgstr "piccolo"
+msgstr "accPiccolo"
#. input/lsr/accordion-discant-symbols.ly:165 (variable)
-#, fuzzy
msgid "accViolin"
-msgstr "violon"
+msgstr "accViolon"
#. input/lsr/adding-a-figured-bass-above-or-below-the-notes.ly:39 (variable)
#. input/lsr/jazz-combo-template.ly:231 (variable)
#. input/lsr/jazz-combo-template.ly:279 (context id)
-#, fuzzy
msgid "bass"
-msgstr "basses"
+msgstr "basse"
#. input/lsr/adding-a-figured-bass-above-or-below-the-notes.ly:40 (variable)
msgid "continuo"
-msgstr ""
+msgstr "continuo"
#. input/lsr/adding-a-figured-bass-above-or-below-the-notes.ly:51 (context id)
#. input/lsr/adding-a-figured-bass-above-or-below-the-notes.ly:52 (context id)
-#, fuzzy
msgid "bassStaff"
-msgstr "portée"
+msgstr "bassePortee"
#. input/lsr/adding-an-extra-staff-at-a-line-break.ly:52 (comment)
msgid "The next line is not needed in 2.11.x or later:"
-msgstr ""
+msgstr "la ligne suivante n'est plus nécessaire à partir de la version 2.11.x"
#. input/lsr/adding-drum-parts.ly:32 (variable)
msgid "drh"
#. input/lsr/adding-drum-parts.ly:34 (variable)
msgid "timb"
-msgstr ""
+msgstr "timb"
#. input/lsr/adding-fingerings-to-tablatures.ly:18 (variable)
-#, fuzzy
msgid "threeTwo"
-msgstr "CoupletDeux"
+msgstr "troisDeux"
#. input/lsr/adding-fingerings-to-tablatures.ly:25 (variable)
-#, fuzzy
msgid "threeFour"
-msgstr "CoupletQuatre"
+msgstr "troisQuatre"
#. input/lsr/adding-the-current-date-to-a-score.ly:23 (comment)
msgid "first, define a variable to hold the formatted date:"
-msgstr ""
+msgstr "tout d'abord, définir une variable qui contiendra la date formattée"
#. input/lsr/adding-the-current-date-to-a-score.ly:24 (variable)
msgid "date"
-msgstr ""
+msgstr "date"
#. input/lsr/adding-the-current-date-to-a-score.ly:24 (comment)
msgid "d-%m-%Y\\\" (localtime (current-time)))"
-msgstr ""
+msgstr "d-%m-%Y\\\" (localtime (current-time)))"
#. input/lsr/adding-the-current-date-to-a-score.ly:26 (comment)
msgid "use it in the title block:"
-msgstr ""
+msgstr "utilisation dans le bloc de titre :"
#. input/lsr/adding-the-current-date-to-a-score.ly:37 (comment)
msgid "and use it in a \\markup block:"
-msgstr ""
+msgstr "et utilisation dans un bloc \\markup :"
#. input/lsr/additional-voices-to-avoid-collisions.ly:27 (variable)
-#, fuzzy
msgid "voiceFive"
-msgstr "voix"
+msgstr "voixCinq"
#. input/lsr/adjusting-lyrics-vertical-spacing.ly:22 (comment)
-#, fuzzy
msgid "Default layout:"
-msgstr "Tablatures par défaut"
+msgstr "Mise en forme par défaut :"
#. input/lsr/adjusting-lyrics-vertical-spacing.ly:31 (comment)
msgid "Reducing the minimum space below the staff and above the lyrics:"
#. input/lsr/aligning-marks-with-various-notation-objects.ly:65 (comment)
#. input/lsr/aligning-marks-with-various-notation-objects.ly:77 (comment)
-#, fuzzy
msgid ""
"the RehearsalMark will be aligned with the left edge of the KeySignature"
msgstr "Pour aligner le repère sur le coin gauche de l'armure"
#. input/lsr/aligning-marks-with-various-notation-objects.ly:71 (comment)
-#, fuzzy
msgid ""
"the RehearsalMark will be aligned with the right edge of the KeySignature"
msgstr "Pour aligner le repère sur le coin droit de l'armure"
#. input/lsr/aligning-marks-with-various-notation-objects.ly:78 (comment)
-#, fuzzy
msgid "and then shifted right by one unit."
-msgstr "puis décaler vers la droite de 3,5 espaces"
+msgstr "puis décaler vers la droite d'une unité."
#. input/lsr/ancient-fonts.ly:26 (variable)
#. input/lsr/ancient-fonts.ly:26 (context id)
-#, fuzzy
msgid "upperStaff"
-msgstr "superieur"
+msgstr "porteeSuperieure"
#. input/lsr/ancient-fonts.ly:38 (comment)
msgid "\\break % 1 (8*1)"
#. input/lsr/ancient-fonts.ly:123 (context id)
#, fuzzy
msgid "lowerStaff"
-msgstr "inferieur"
+msgstr "porteeInferieure"
#. input/lsr/ancient-fonts.ly:133 (comment)
msgid "\\break % 2 (16*1)"
#. input/lsr/ancient-fonts.ly:179 (comment)
msgid "lig"
-msgstr ""
+msgstr "lig"
#. input/lsr/ancient-fonts.ly:183 (comment)
msgid "\\break % 11 (16*1)"
#. input/lsr/incipit.ly:19 (variable)
#. input/lsr/incipit.ly:191 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:212 (comment)
-#, fuzzy
msgid "incipit"
-msgstr "Des incipits"
+msgstr "incipit"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:51 (comment)
-#, fuzzy
msgid "tight spacing"
-msgstr "Espacement vertical"
+msgstr "espacement resserré"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:58 (comment)
msgid "turn off bar lines"
-msgstr ""
+msgstr "désactivation des barres de mesure"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:62 (comment)
msgid "need this extra \\skip such that clef change comes"
msgstr ""
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:63 (comment)
-#, fuzzy
msgid "after bar line"
-msgstr "Barres de mesure"
+msgstr ""
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:67 (comment)
msgid "CHECK: no effect?"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:83 (comment)
#. input/lsr/incipit.ly:64 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:37 (comment)
-#, fuzzy
msgid "the actual music"
-msgstr "Musique vocale"
+msgstr ""
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:85 (comment)
#. input/lsr/incipit.ly:67 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:39 (comment)
-#, fuzzy
msgid "let finis bar go through all staves"
-msgstr "définition des règles de ligature pour toutes les portées"
+msgstr ""
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:88 (comment)
#. input/lsr/incipit.ly:70 (comment)
#. input/lsr/incipit.ly:87 (variable)
#. input/lsr/incipit.ly:222 (context id)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:47 (variable)
-#, fuzzy
msgid "discantusNotes"
-msgstr "discantus"
+msgstr "discantusNotes"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:98 (comment)
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:135 (comment)
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:202 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:139 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:213 (comment)
-#, fuzzy
msgid "eight bars"
-msgstr "Indications textuelles"
+msgstr "huit mesures"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:100 (comment)
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:134 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:162 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:188 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:190 (comment)
-#, fuzzy
msgid "one bar"
-msgstr "un"
+msgstr "une mesure"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:114 (variable)
#. input/lsr/incipit.ly:101 (variable)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:60 (variable)
-#, fuzzy
msgid "discantusLyrics"
-msgstr "discantus"
+msgstr "discantusParoles"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:128 (variable)
#. input/lsr/incipit.ly:124 (variable)
#. input/lsr/incipit.ly:229 (context id)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:70 (variable)
-#, fuzzy
msgid "altusNotes"
-msgstr "alti"
+msgstr "altusNotes"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:136 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:164 (comment)
msgid "seven bars"
-msgstr ""
+msgstr "sept mesures"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:150 (variable)
#. input/lsr/incipit.ly:138 (variable)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:82 (variable)
-#, fuzzy
msgid "altusLyrics"
-msgstr "tuttiParoles"
+msgstr "altusParoles"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:162 (variable)
#. input/lsr/incipit.ly:162 (variable)
#. input/lsr/incipit.ly:236 (context id)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:90 (variable)
-#, fuzzy
msgid "tenorNotes"
-msgstr "tenors"
+msgstr "tenorNotes"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:168 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:186 (comment)
-#, fuzzy
msgid "four bars"
-msgstr "basse chiffrée"
+msgstr "quatre mesures"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:186 (variable)
#. input/lsr/incipit.ly:177 (variable)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:102 (variable)
-#, fuzzy
msgid "tenorLyrics"
-msgstr "tenors"
+msgstr "tenorParoles"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:196 (variable)
#. input/lsr/incipit.ly:199 (variable)
#. input/lsr/incipit.ly:243 (context id)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:108 (variable)
-#, fuzzy
msgid "bassusNotes"
-msgstr "basses"
+msgstr "bassusNotes"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:218 (variable)
#. input/lsr/incipit.ly:213 (variable)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:121 (variable)
-#, fuzzy
msgid "bassusLyrics"
-msgstr "basseMusique"
+msgstr "bassusParoles"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:229 (context id)
#. input/lsr/incipit.ly:221 (context id)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:229 (context id)
-#, fuzzy
msgid "choirStaff"
-msgstr "fin du ChoirStaff (système pour chœur)"
+msgstr "choirStaff"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:251 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:266 (comment)
-#, fuzzy
msgid "no bars in staves"
-msgstr "Portée de percussion"
+msgstr "pas de barre dans les portées"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:254 (comment)
msgid "incipit should not start with a start delimiter"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:260 (comment)
#. input/lsr/incipit.ly:272 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:277 (comment)
-#, fuzzy
msgid "no slurs"
-msgstr "liaison d'articulation"
+msgstr "pas de liaison"
#. input/lsr/ancient-notation-template----modern-transcription-of-mensural-music.ly:263 (comment)
#. input/lsr/incipit.ly:274 (comment)
#. input/lsr/applying-note-head-styles-depending-on-the-step-of-the-scale.ly:75 (variable)
#. input/lsr/clusters.ly:27 (variable)
-#, fuzzy
msgid "fragment"
-msgstr "fragmentA"
+msgstr "fragment"
#. input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly:29 (comment)
msgid "Automatic beams two per two in 4/4 or 2/2 time signature"
#. input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly:30 (comment)
msgid "_____"
-msgstr ""
+msgstr "_____"
#. input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly:31 (comment)
msgid "Default | | | |"
msgstr ""
#. input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly:36 (variable)
-#, fuzzy
msgid "qBeam"
-msgstr "Barres de ligature"
+msgstr ""
#. input/lsr/automatic-beams-two-per-two-in-4-4-or-2-2-time-signature.ly:49 (comment)
msgid "Use the macro"
msgstr "héritage des règles de ligature du contexte Score"
#. input/lsr/beam-endings-in-score-context.ly:48 (comment)
-#, fuzzy
msgid "Modify beaming for this voice only"
-msgstr "changement des règles de ligature seulement pour cette portée"
+msgstr "changement des règles de ligature seulement pour cette voix"
#. input/lsr/beam-grouping-in-7-8-time.ly:40 (comment)
msgid "rhythm 2-3-2"
msgstr ""
#. input/lsr/breathing-signs.ly:21 (comment)
-#, fuzzy
msgid "Modern notation:"
-msgstr "Notation des accords"
+msgstr "Notation moderne :"
#. input/lsr/breathing-signs.ly:22 (comment)
msgid "by default, \\breathe uses the rcomma, just as if saying:"
msgstr ""
#. input/lsr/breathing-signs.ly:31 (comment)
-#, fuzzy
msgid "vee"
-msgstr "couplet"
+msgstr ""
#. input/lsr/caesura-railtracks-with-fermata.ly:28 (comment)
msgid "construct the symbol"
msgstr ""
#. input/lsr/center-text-below-hairpin-dynamics.ly:39 (variable)
-#, fuzzy
msgid "hairpinMolto"
-msgstr "soufflet"
+msgstr "souffletMolto"
#. input/lsr/center-text-below-hairpin-dynamics.ly:40 (variable)
-#, fuzzy
msgid "hairpinMore"
-msgstr "soufflet"
+msgstr "souffletPlus"
#. input/lsr/changing--flageolet-mark-size.ly:23 (variable)
msgid "smallFlageolet"
-msgstr ""
+msgstr "petitFlageolet"
#. input/lsr/changing-the-chord-names-to-german-or-semi-german-notation.ly:34 (comment)
msgid "The following is only here to print the names of the"
#. input/lsr/engravers-one-by-one.ly:191 (comment)
#. input/lsr/score-for-diatonic-accordion.ly:110 (comment)
msgid "{"
-msgstr ""
+msgstr "{"
#. input/lsr/changing-the-default-text-font-family.ly:23 (comment)
#. input/lsr/engravers-one-by-one.ly:194 (comment)
#. input/lsr/score-for-diatonic-accordion.ly:233 (comment)
#. input/lsr/string-quartet-template-with-separate-parts.ly:163 (comment)
msgid "}"
-msgstr ""
+msgstr "}"
#. input/lsr/changing-the-time-signature-without-affecting-the-beaming.ly:35 (comment)
-#, fuzzy
msgid "Change time signature symbol but keep 3/4 beaming"
-msgstr "la métrique change mais on garde les règles de ligatures en 3/4"
+msgstr "La métrique change mais on garde les règles de ligatures en 3/4"
#. input/lsr/changing-the-time-signature-without-affecting-the-beaming.ly:36 (comment)
-#, fuzzy
msgid "due to unchanged underlying time signature"
msgstr "car la durée de pulsation n'a pas changée"
#. input/lsr/changing-the-time-signature-without-affecting-the-beaming.ly:41 (comment)
-#, fuzzy
msgid "Lose 3/4 beaming now \\time has been changed"
-msgstr ""
-"la durée de pulsation est maintenant 16, on perd les règles de ligature en "
-"3/4"
+msgstr "\\time a été modifié, on abandonne les règles de ligature en 3/4"
#. input/lsr/chant-or-psalms-notation.ly:23 (variable)
-#, fuzzy
msgid "stemOn"
-msgstr "stencil"
+msgstr "hampeOui"
#. input/lsr/chant-or-psalms-notation.ly:24 (variable)
-#, fuzzy
msgid "stemOff"
-msgstr "portée"
+msgstr "hampeNon"
#. input/lsr/chord-name-exceptions.ly:24 (comment)
msgid "modify maj9 and 6(add9)"
msgstr ""
#. input/lsr/chord-name-exceptions.ly:26 (variable)
-#, fuzzy
msgid "chExceptionMusic"
-msgstr "violoncelleMusique"
+msgstr ""
#. input/lsr/chord-name-exceptions.ly:31 (comment)
msgid "Convert music to list and prepend to existing exceptions."
msgstr ""
#. input/lsr/chord-name-exceptions.ly:36 (variable)
-#, fuzzy
msgid "theMusic"
-msgstr "mdMusique"
+msgstr "laMusique"
#. input/lsr/clip-systems.ly:37 (variable)
msgid "origScore"
msgstr ""
#. input/lsr/clip-systems.ly:56 (comment)
-#, fuzzy
msgid "where both are rhythmic-locations."
-msgstr "Notation du rythme dans la musique baroque"
+msgstr ""
#. input/lsr/clip-systems.ly:58 (comment)
msgid "(make-rhythmic-locations BAR-NUMBER NUM DEN)"
#. input/lsr/combining-dynamics-with-markup-texts.ly:24 (variable)
msgid "piuF"
-msgstr ""
+msgstr "piuF"
#. input/lsr/combining-two-parts-on-the-same-staff.ly:51 (variable)
-#, fuzzy
msgid "musicUp"
-msgstr "musique"
+msgstr "musiqueHaut"
#. input/lsr/combining-two-parts-on-the-same-staff.ly:58 (variable)
-#, fuzzy
msgid "musicDown"
-msgstr "musique"
+msgstr "musiqueBas"
#. input/lsr/creating-a-sequence-of-notes-on-various-pitches.ly:53 (variable)
#. input/lsr/jazz-combo-template.ly:275 (context id)
-#, fuzzy
msgid "rhythm"
-msgstr "Rythme"
+msgstr ""
#. input/lsr/creating-real-parenthesized-dynamics.ly:45 (variable)
-#, fuzzy
msgid "parenF"
-msgstr "motif"
+msgstr ""
#. input/lsr/creating-simultaneous-rehearsal-marks.ly:40 (comment)
msgid "the hidden measure and bar line"
#. input/lsr/customizing-fretboard-fret-diagrams.ly:40 (comment)
#. input/lsr/customizing-markup-fret-diagrams.ly:31 (comment)
#. input/lsr/fret-diagrams-explained-and-developed.ly:22 (comment)
-#, fuzzy
msgid "Set global properties of fret diagram"
-msgstr "Tablatures automatiques"
+msgstr ""
#. input/lsr/customizing-markup-fret-diagrams.ly:29 (context id)
#. input/lsr/formatting-lyrics-syllables.ly:21 (variable)
#. input/lsr/fret-diagrams-explained-and-developed.ly:20 (context id)
#. input/lsr/piano-template-with-melody-and-lyrics.ly:58 (context id)
-#, fuzzy
msgid "mel"
msgstr "melodie"
#. input/lsr/customizing-markup-fret-diagrams.ly:39 (comment)
#. input/lsr/customizing-markup-fret-diagrams.ly:89 (comment)
-#, fuzzy
msgid "terse style"
-msgstr "Styles de tête de note"
+msgstr ""
#. input/lsr/customizing-markup-fret-diagrams.ly:42 (comment)
#. input/lsr/customizing-markup-fret-diagrams.ly:64 (comment)
#. input/lsr/customizing-markup-fret-diagrams.ly:65 (comment)
#. input/lsr/fret-diagrams-explained-and-developed.ly:49 (comment)
#. input/lsr/fret-diagrams-explained-and-developed.ly:70 (comment)
-#, fuzzy
msgid "verbose style"
-msgstr "Styles de voix"
+msgstr ""
#. input/lsr/customizing-markup-fret-diagrams.ly:44 (comment)
msgid "size 1.0"
msgstr ""
#. input/lsr/customizing-markup-fret-diagrams.ly:47 (comment)
-#, fuzzy
msgid "standard size"
-msgstr "Format du papier"
+msgstr ""
#. input/lsr/customizing-markup-fret-diagrams.ly:66 (comment)
msgid "landscape orientation, arabic numbers, M for mute string"
msgstr ""
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:42 (comment)
-#, fuzzy
msgid "predefined-cuatro-fretboards.ly"
-msgstr "Tablatures prédéfinies"
+msgstr "predefined-cuatro-fretboards.ly"
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:43 (comment)
msgid "and \\included into each of your compositions"
msgstr ""
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:48 (variable)
-#, fuzzy
msgid "dMajor"
-msgstr "majeur"
+msgstr ""
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:49 (variable)
msgid "aMajSeven"
msgstr ""
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:51 (variable)
-#, fuzzy
msgid "gMajor"
-msgstr "majeur"
+msgstr ""
#. input/lsr/defining-predefined-fretboards-for-other-instruments.ly:69 (comment)
msgid "end of potential include file /predefined-cuatro-fretboards.ly"
msgstr ""
#. input/lsr/demo-midiinstruments.ly:23 (variable)
-#, fuzzy
msgid "baseMelody"
-msgstr "melodie"
+msgstr ""
#. input/lsr/display-bracket-with-only-one-staff-in-a-system.ly:37 (comment)
msgid "Must be lower than the actual number of staff lines"
msgstr ""
#. input/lsr/double-glissando.ly:22 (comment)
-#, fuzzy
msgid "attach glissando to note heads"
-msgstr "Indications attachées à des notes"
+msgstr "rattachement du glissando aux têtes de note"
#. input/lsr/double-glissando.ly:27 (comment)
msgid "original voice with chords rearranged so that"
#. input/lsr/embedding-native-postscript-in-a--markup-block.ly:23 (comment)
msgid "PostScript is a registered trademark of Adobe Systems Inc."
-msgstr ""
+msgstr "PostScript est une marque déposée par Adobe Systems Inc."
#. input/lsr/engravers-one-by-one.ly:75 (comment)
-#, fuzzy
msgid "sample music"
-msgstr "Musique vocale"
+msgstr ""
#. input/lsr/engravers-one-by-one.ly:76 (variable)
-#, fuzzy
msgid "topVoice"
-msgstr "voix"
+msgstr ""
#. input/lsr/engravers-one-by-one.ly:84 (variable)
-#, fuzzy
msgid "botVoice"
-msgstr "voix"
+msgstr ""
#. input/lsr/engravers-one-by-one.ly:92 (variable)
msgid "hoom"
#. input/lsr/engravers-one-by-one.ly:234 (variable)
#. input/lsr/engravers-one-by-one.ly:290 (variable)
#. input/lsr/engravers-one-by-one.ly:304 (variable)
-#, fuzzy
msgid "MyStaff"
-msgstr "portée"
+msgstr "MaPortee"
#. input/lsr/engravers-one-by-one.ly:148 (comment)
msgid "explicitly set instrument, so we don't get "
msgstr ""
#. input/lsr/engravers-one-by-one.ly:150 (comment)
-#, fuzzy
msgid "piano staves"
-msgstr "Portées d'ossia"
+msgstr "portées de piano"
#. input/lsr/engravers-one-by-one.ly:159 (variable)
#. input/lsr/engravers-one-by-one.ly:248 (variable)
#. input/lsr/engravers-one-by-one.ly:261 (variable)
#. input/lsr/engravers-one-by-one.ly:274 (variable)
-#, fuzzy
msgid "MyVoice"
-msgstr "voix"
+msgstr "MaVoix"
#. input/lsr/engravers-one-by-one.ly:174 (comment)
msgid "must come before all"
msgstr ""
#. input/lsr/flamenco-notation.ly:48 (comment)
-#, fuzzy
msgid "Text indicators"
-msgstr "LilyPond et les éditeurs de texte"
+msgstr ""
#. input/lsr/flamenco-notation.ly:49 (variable)
msgid "abanico"
msgstr ""
#. input/lsr/flamenco-notation.ly:53 (comment)
-#, fuzzy
msgid "Finger stroke symbols"
-msgstr "Symboles de jeux"
+msgstr ""
#. input/lsr/flamenco-notation.ly:54 (variable)
msgid "strokeUp"
msgstr ""
#. input/lsr/flamenco-notation.ly:74 (comment)
-#, fuzzy
msgid "Golpe symbol"
-msgstr "pipeSymbole"
+msgstr ""
#. input/lsr/flamenco-notation.ly:75 (variable)
-#, fuzzy
msgid "golpe"
-msgstr "dolce"
+msgstr ""
#. input/lsr/flamenco-notation.ly:89 (variable)
msgid "strokeUpGolpe"
msgstr ""
#. input/lsr/flamenco-notation.ly:93 (variable)
-#, fuzzy
msgid "pUp"
-msgstr "Haut :"
+msgstr ""
#. input/lsr/flamenco-notation.ly:94 (variable)
-#, fuzzy
msgid "pDown"
-msgstr "bas"
+msgstr ""
#. input/lsr/flamenco-notation.ly:95 (variable)
-#, fuzzy
msgid "iUp"
-msgstr "Haut :"
+msgstr ""
#. input/lsr/flamenco-notation.ly:96 (variable)
-#, fuzzy
msgid "iDown"
-msgstr "bas"
+msgstr ""
#. input/lsr/flamenco-notation.ly:97 (variable)
-#, fuzzy
msgid "mUp"
-msgstr "Haut :"
+msgstr ""
#. input/lsr/flamenco-notation.ly:98 (variable)
-#, fuzzy
msgid "mDown"
-msgstr "bas"
+msgstr ""
#. input/lsr/flamenco-notation.ly:99 (variable)
-#, fuzzy
msgid "aUp"
-msgstr "Haut :"
+msgstr ""
#. input/lsr/flamenco-notation.ly:100 (variable)
-#, fuzzy
msgid "aDown"
-msgstr "bas"
+msgstr ""
#. input/lsr/flamenco-notation.ly:101 (variable)
-#, fuzzy
msgid "xUp"
-msgstr "Haut :"
+msgstr ""
#. input/lsr/flamenco-notation.ly:102 (variable)
-#, fuzzy
msgid "xDown"
-msgstr "bas"
+msgstr ""
#. input/lsr/flamenco-notation.ly:105 (comment)
msgid "Just handy :)"
msgstr ""
#. input/lsr/flamenco-notation.ly:106 (variable)
-#, fuzzy
msgid "tupletOff"
-msgstr "nolet"
+msgstr "noletNon"
#. input/lsr/flamenco-notation.ly:111 (variable)
-#, fuzzy
msgid "tupletsOff"
-msgstr "nolet"
+msgstr "noletsNon"
#. input/lsr/flamenco-notation.ly:116 (variable)
-#, fuzzy
msgid "tupletsOn"
-msgstr "nolet"
+msgstr "noletsOui"
#. input/lsr/flamenco-notation.ly:121 (variable)
msgid "headsOff"
-msgstr ""
+msgstr "tetesNon"
#. input/lsr/flamenco-notation.ly:127 (variable)
msgid "headsOn"
-msgstr ""
+msgstr "tetesOui"
#. input/lsr/flamenco-notation.ly:133 (comment)
msgid "Cut here ----- End 'flamenco.ly' "
#. input/lsr/flat-flags-and-beam-nibs.ly:109 (comment)
msgid "Example 1"
-msgstr ""
+msgstr "Exemple 1"
#. input/lsr/flat-flags-and-beam-nibs.ly:116 (comment)
msgid "Example 2"
-msgstr ""
+msgstr "Exemple 2"
#. input/lsr/flat-flags-and-beam-nibs.ly:123 (comment)
msgid "Example 3"
-msgstr ""
+msgstr "Exemple 3"
#. input/lsr/flat-flags-and-beam-nibs.ly:137 (comment)
msgid "Example 4"
-msgstr ""
+msgstr "Exemple 4"
#. input/lsr/flute-slap-notation.ly:18 (variable)
-#, fuzzy
msgid "slap"
-msgstr "dièse"
+msgstr ""
#. input/lsr/formatting-lyrics-syllables.ly:16 (comment)
msgid ""
"Tip taken from http://lists.gnu.org/archive/html/lilypond-user/2007-12/"
"msg00215.html"
-msgstr ""
+msgstr "Truc extrait de http://lists.gnu.org/archive/html/lilypond-user/2007-12/msg00215.html"
#. input/lsr/fret-diagrams-explained-and-developed.ly:37 (comment)
msgid "A chord for ukelele, with formatting defined in definition string"
#. input/lsr/fret-diagrams-explained-and-developed.ly:52 (comment)
#. input/lsr/fret-diagrams-explained-and-developed.ly:72 (comment)
-#, fuzzy, python-format
+#, python-format
msgid "110% of default size"
-msgstr "retour à la taille par défaut"
+msgstr "110 % de la taille par défaut"
#. input/lsr/grid-lines--changing-their-appearance.ly:33 (comment)
msgid "this moves them up one staff space from the default position"
msgstr ""
#. input/lsr/heavily-customized-polymetric-time-signatures.ly:51 (variable)
-#, fuzzy
msgid "drum"
-msgstr "percuA"
+msgstr ""
#. input/lsr/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly:54 (comment)
msgid "Solution 1: Using a simple markup with a particular halign value"
msgstr ""
#. input/lsr/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly:56 (variable)
-#, fuzzy
msgid "semppMarkup"
-msgstr "tempoMarque"
+msgstr "semppMarque"
#. input/lsr/horizontally-aligning-custom-dynamics-e.g.-sempre-pp,-piu-f,-subito-p.ly:58 (comment)
msgid ""
#. input/lsr/showing-chords-at-changes.ly:23 (variable)
#. input/lsr/single-staff-template-with-notes,-lyrics,-and-chords.ly:40 (variable)
#. input/lsr/single-staff-template-with-notes-and-chords.ly:38 (variable)
-#, fuzzy
msgid "harmonies"
-msgstr "harmoniques"
+msgstr ""
#. input/lsr/how-to-change-fret-diagram-position.ly:31 (comment)
msgid "THE FOLLOWING IS THE COMMAND TO MOVE THE CHORD NAME"
#. input/lsr/incipit.ly:74 (variable)
#. input/lsr/incipit.ly:75 (context id)
-#, fuzzy
msgid "discantusIncipit"
-msgstr "discantus"
+msgstr "discantusIncipit"
#. input/lsr/incipit.ly:111 (variable)
#. input/lsr/incipit.ly:112 (context id)
-#, fuzzy
msgid "altusIncipit"
-msgstr "Des incipits"
+msgstr "altusIncipit"
#. input/lsr/incipit.ly:127 (comment)
#. input/lsr/incipit.ly:139 (comment)
#. input/lsr/incipit.ly:169 (comment)
#. input/lsr/incipit.ly:178 (comment)
-#, fuzzy
msgid "two measures"
-msgstr "Mesure incomplète"
+msgstr "deux mesures"
#. input/lsr/incipit.ly:147 (variable)
#. input/lsr/incipit.ly:148 (context id)
-#, fuzzy
msgid "tenorIncipit"
-msgstr "Des incipits"
+msgstr "tenorIncipit"
#. input/lsr/incipit.ly:184 (variable)
#. input/lsr/incipit.ly:185 (context id)
-#, fuzzy
msgid "bassusIncipit"
-msgstr "Des incipits"
+msgstr "bassusIncipit"
#. input/lsr/incipit.ly:251 (comment)
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:258 (comment)
msgstr ""
#. input/lsr/inserting-score-fragments-above-a-staff,-as-markups.ly:16 (variable)
-#, fuzzy
msgid "tuning"
-msgstr "melodie"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:52 (comment)
msgid "#(set-global-staff-size 16)"
msgstr ""
#. input/lsr/jazz-combo-template.ly:57 (variable)
-#, fuzzy
msgid "sl"
-msgstr "liaison d'articulation"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:61 (variable)
-#, fuzzy
msgid "nsl"
-msgstr "Installation"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:65 (variable)
msgid "crOn"
msgstr ""
#. input/lsr/jazz-combo-template.ly:70 (variable)
-#, fuzzy
msgid "jazzChords"
-msgstr "mesAccords"
+msgstr "jazzAccords"
#. input/lsr/jazz-combo-template.ly:72 (comment)
msgid "Keys'n'thangs %%%%%%%%%%%%%%%%%"
msgstr ""
#. input/lsr/jazz-combo-template.ly:76 (variable)
-#, fuzzy
msgid "Key"
-msgstr "MetriqueArmure"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:78 (comment)
msgid "############ Horns ############"
msgstr ""
#. input/lsr/jazz-combo-template.ly:81 (variable)
-#, fuzzy
msgid "trpt"
-msgstr "triolet"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:85 (variable)
-#, fuzzy
msgid "trpHarmony"
-msgstr "Harmoniques"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:88 (variable)
#. input/lsr/jazz-combo-template.ly:268 (context id)
-#, fuzzy
msgid "trumpet"
-msgstr "nolet"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:97 (comment)
msgid "------ Alto Saxophone ------"
msgstr ""
#. input/lsr/jazz-combo-template.ly:98 (variable)
-#, fuzzy
msgid "alto"
-msgstr "alti"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:102 (variable)
-#, fuzzy
msgid "altoHarmony"
-msgstr "Harmoniques"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:105 (variable)
-#, fuzzy
msgid "altoSax"
-msgstr "alti"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:114 (comment)
msgid "------ Baritone Saxophone ------"
msgstr ""
#. input/lsr/jazz-combo-template.ly:115 (variable)
-#, fuzzy
msgid "bari"
-msgstr "mesureA"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:123 (variable)
-#, fuzzy
msgid "bariHarmony"
-msgstr "baryton"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:126 (variable)
msgid "bariSax"
msgstr ""
#. input/lsr/jazz-combo-template.ly:136 (variable)
-#, fuzzy
msgid "tbone"
-msgstr "un"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:140 (variable)
msgid "tboneHarmony"
#. input/lsr/jazz-combo-template.ly:143 (variable)
#. input/lsr/jazz-combo-template.ly:272 (context id)
-#, fuzzy
msgid "trombone"
-msgstr "hautbois"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:152 (comment)
msgid "############ Rhythm Section #############"
msgstr ""
#. input/lsr/jazz-combo-template.ly:163 (variable)
-#, fuzzy
msgid "gtrHarmony"
-msgstr "Harmoniques"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:167 (variable)
#. input/lsr/jazz-combo-template.ly:277 (context id)
#. input/lsr/polyphony-in-tablature.ly:39 (context id)
#. input/lsr/polyphony-in-tablature.ly:44 (context id)
-#, fuzzy
msgid "guitar"
-msgstr "Guitare"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:176 (comment)
msgid "------ Piano ------"
msgstr ""
#. input/lsr/jazz-combo-template.ly:177 (variable)
-#, fuzzy
msgid "rhUpper"
-msgstr "superieur"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:182 (variable)
-#, fuzzy
msgid "rhLower"
-msgstr "inferieur"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:188 (variable)
-#, fuzzy
msgid "lhUpper"
-msgstr "superieur"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:193 (variable)
-#, fuzzy
msgid "lhLower"
-msgstr "inferieur"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:199 (variable)
-#, fuzzy
msgid "PianoRH"
-msgstr "Piano"
+msgstr "PianoMD"
#. input/lsr/jazz-combo-template.ly:208 (variable)
-#, fuzzy
msgid "PianoLH"
-msgstr "Piano"
+msgstr "PianoMG"
#. input/lsr/jazz-combo-template.ly:226 (comment)
msgid "------ Bass Guitar ------"
msgstr ""
#. input/lsr/jazz-combo-template.ly:267 (context id)
-#, fuzzy
msgid "horns"
-msgstr "corNotes"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:269 (context id)
-#, fuzzy
msgid "altosax"
-msgstr "alti"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:270 (context id)
-#, fuzzy
msgid "barichords"
-msgstr "accord"
+msgstr ""
#. input/lsr/jazz-combo-template.ly:271 (context id)
msgid "barisax"
msgstr ""
#. input/lsr/jazz-combo-template.ly:276 (context id)
-#, fuzzy
msgid "chords"
-msgstr "accord"
+msgstr ""
#. input/lsr/makam-example.ly:26 (comment)
-#, fuzzy
msgid "Initialize makam settings"
-msgstr "Notation éditoriale"
+msgstr ""
#. input/lsr/manually-break-figured-bass-extenders-for-only-some-numbers.ly:19 (variable)
-#, fuzzy
msgid "bassfigures"
-msgstr "basses"
+msgstr ""
#. input/lsr/manually-controlling-beam-positions.ly:21 (comment)
msgid "from upper staffline (position 4) to center (position 0)"
msgstr ""
#. input/lsr/marking-notes-of-spoken-parts-with-a-cross-on-the-stem.ly:31 (variable)
-#, fuzzy
msgid "speakOff"
-msgstr "portée"
+msgstr ""
#. input/lsr/markup-lines.ly:19 (comment)
msgid "Candide, Voltaire"
msgstr ""
#. input/lsr/merging-multi-measure-rests-in-a-polyphonic-part.ly:17 (variable)
-#, fuzzy
msgid "normalPos"
-msgstr "normal"
+msgstr ""
#. input/lsr/modern-tab-text-clef.ly:16 (variable)
msgid "TAB"
msgstr ""
#. input/lsr/percussion-beaters.ly:18 (variable)
-#, fuzzy
msgid "stick"
-msgstr "musique"
+msgstr ""
#. input/lsr/permitting-line-breaks-within-beamed-tuplets.ly:39 (comment)
msgid "Permit line breaks within tuplets"
msgstr ""
#. input/lsr/piano-template-with-centered-dynamics.ly:51 (variable)
-#, fuzzy
msgid "pedal"
-msgstr "Opéra"
+msgstr "pedale"
#. input/lsr/piano-template-with-centered-dynamics.ly:64 (comment)
-#, fuzzy
msgid "define Dynamics context"
-msgstr "Ajout d'une nuance textuelle"
+msgstr ""
#. input/lsr/piano-template-with-centered-dynamics.ly:85 (comment)
msgid "modify PianoStaff context to accept Dynamics context"
msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:45 (comment)
-#, fuzzy
msgid "\\noBreak"
-msgstr "Sauts"
+msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:54 (comment)
msgid "Here begins the trickery! "
msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:60 (comment)
-#, fuzzy
msgid "text line-aligned"
-msgstr "Alignement du texte"
+msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:61 (comment)
msgid "=================="
msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:66 (comment)
-#, fuzzy
msgid "text center-aligned"
-msgstr "ligne de prolongation"
+msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:67 (comment)
msgid "===================="
msgstr ""
#. input/lsr/positioning-segno-and-coda-with-line-break.ly:112 (comment)
-#, fuzzy
msgid "The coda"
-msgstr "La commande de fixation (set)"
+msgstr "La coda"
#. input/lsr/printing-metronome-and-rehearsal-marks-below-the-staff.ly:31 (comment)
-#, fuzzy
msgid "Metronome marks below the staff "
-msgstr "Indications métronomiques"
+msgstr "Indications métronimiques sous la portée"
#. input/lsr/printing-metronome-and-rehearsal-marks-below-the-staff.ly:36 (comment)
-#, fuzzy
msgid "Rehearsal marks below the staff"
-msgstr "Indications de repère"
+msgstr "Indications de repère sous la portée"
#. input/lsr/printing-music-with-different-time-signatures.ly:49 (variable)
-#, fuzzy
msgid "Bassklarinette"
-msgstr "clarinette"
+msgstr "ClarinetteBasse"
#. input/lsr/printing-music-with-different-time-signatures.ly:89 (variable)
-#, fuzzy
msgid "Perkussion"
msgstr "Percussions"
#. input/lsr/quoting-another-voice-with-transposition.ly:38 (comment)
msgid "french horn"
-msgstr ""
+msgstr "cor anglais"
#. input/lsr/quoting-another-voice.ly:27 (variable)
msgid "quoteMe"
msgstr ""
#. input/lsr/quoting-another-voice.ly:32 (variable)
-#, fuzzy
msgid "original"
-msgstr "Tutoriel"
+msgstr "original"
#. input/lsr/removing-the-first-empty-line.ly:43 (comment)
msgid "To use the setting globally, uncomment the following line:"
msgstr "puis on ajoute des règles de fin de ligature"
#. input/lsr/rhythmic-slashes.ly:25 (comment)
-#, fuzzy
msgid "Macro to print single slash"
-msgstr "Modification de portées individuelles"
+msgstr ""
#. input/lsr/rhythmic-slashes.ly:26 (variable)
-#, fuzzy
msgid "rs"
-msgstr "silence"
+msgstr ""
#. input/lsr/rhythmic-slashes.ly:33 (comment)
msgid "Function to print a specified number of slashes"
msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:69 (variable)
-#, fuzzy
msgid "NoStem"
-msgstr "Hampes"
+msgstr "SansHampe"
#. input/lsr/score-for-diatonic-accordion.ly:70 (variable)
-#, fuzzy
msgid "NoNoteHead"
-msgstr "Têtes de note"
+msgstr "SansTetedeNote"
#. input/lsr/score-for-diatonic-accordion.ly:71 (variable)
-#, fuzzy
msgid "ZeroBeam"
-msgstr "Barres de ligature"
+msgstr "ZeroLigature"
#. input/lsr/score-for-diatonic-accordion.ly:73 (variable)
msgid "staffTabLine"
#. input/lsr/score-for-diatonic-accordion.ly:118 (comment)
#. input/lsr/score-for-diatonic-accordion.ly:137 (comment)
-#, fuzzy
msgid "Tips:"
-msgstr "Liaisons de prolongation"
+msgstr "Astuces :"
#. input/lsr/score-for-diatonic-accordion.ly:119 (comment)
#. input/lsr/score-for-diatonic-accordion.ly:138 (comment)
msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:161 (variable)
-#, fuzzy
msgid "staffVoice"
-msgstr "portée"
+msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:169 (context id)
-#, fuzzy
msgid "melodyVoi"
-msgstr "melodie"
+msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:175 (variable)
-#, fuzzy
msgid "staffAccordionMel"
-msgstr "Accordéon"
+msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:176 (comment)
msgid "Set the accidentals (Vorzeichen) for each note, "
msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:196 (variable)
-#, fuzzy
msgid "BassRhytm"
-msgstr "Rythme"
+msgstr ""
#. input/lsr/score-for-diatonic-accordion.ly:197 (variable)
msgid "LyricBassRhythmI"
msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:24 (comment)
-#, fuzzy
msgid "Define the fret diagrams to be used"
-msgstr "Tablatures prédéfinies"
+msgstr "Définition du diagramme de fret à utiliser"
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:25 (variable)
-#, fuzzy
msgid "cFretDiagram"
-msgstr "Tablatures sous forme d'étiquette"
+msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:29 (variable)
-#, fuzzy
msgid "gFretDiagram"
-msgstr "Tablatures sous forme d'étiquette"
+msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:33 (variable)
-#, fuzzy
msgid "verseI"
-msgstr "couplet"
+msgstr "coupletI"
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:38 (variable)
-#, fuzzy
msgid "verseII"
-msgstr "couplet"
+msgstr "coupletII"
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:43 (variable)
-#, fuzzy
msgid "theChords"
-msgstr "mesAccords"
+msgstr "lesAccords"
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:45 (comment)
msgid "insert the chords for chordnames here"
msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:50 (variable)
-#, fuzzy
msgid "staffMelody"
-msgstr "portée"
+msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:51 (context id)
-#, fuzzy
msgid "voiceMelody"
-msgstr "voix"
+msgstr ""
#. input/lsr/single-staff-template-with-notes,-lyrics,-chords-and-frets.ly:55 (comment)
-#, fuzzy
msgid "Type notes and fret diagram markups here"
-msgstr "Tablatures sous forme d'étiquette"
+msgstr ""
#. input/lsr/snap-pizzicato-markup-bartok-pizzicato.ly:54 (variable)
-#, fuzzy
msgid "snapPizzicato"
-msgstr "Pizzicato Bartok"
+msgstr ""
#. input/lsr/snap-pizzicato-markup-bartok-pizzicato.ly:56 (comment)
msgid "now it can be used as \\snappizzicato after the note/chord"
msgstr ""
#. input/lsr/snap-pizzicato-markup-bartok-pizzicato.ly:60 (comment)
-#, fuzzy
msgid "This does NOT work:"
-msgstr "Celle-ci produit le résultat escompté"
+msgstr ""
#. input/lsr/snap-pizzicato-markup-bartok-pizzicato.ly:61 (comment)
msgid "<c e g>\\snapPizzicato"
msgstr ""
#. input/lsr/string-quartet-template-simple.ly:34 (variable)
-#, fuzzy
msgid "violinOne"
-msgstr "violon"
+msgstr "violonUn"
#. input/lsr/string-quartet-template-simple.ly:43 (variable)
-#, fuzzy
msgid "violinTwo"
-msgstr "violon"
+msgstr "violonDeux"
#. input/lsr/string-quartet-template-simple.ly:52 (variable)
-#, fuzzy
msgid "viola"
-msgstr "volta"
+msgstr "viola"
#. input/lsr/string-quartet-template-with-separate-parts.ly:63 (comment)
msgid "piece.ly"
-msgstr ""
+msgstr "piece.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:64 (comment)
msgid "(This is the global definitions file)"
msgstr ""
#. input/lsr/string-quartet-template-with-separate-parts.ly:71 (variable)
-#, fuzzy
msgid "Violinone"
-msgstr "violon"
+msgstr "Violonun"
#. input/lsr/string-quartet-template-with-separate-parts.ly:76 (comment)
#. input/lsr/string-quartet-template-with-separate-parts.ly:82 (comment)
msgstr ""
#. input/lsr/string-quartet-template-with-separate-parts.ly:77 (variable)
-#, fuzzy
msgid "Violintwo"
-msgstr "violon"
+msgstr "Violondeux"
#. input/lsr/string-quartet-template-with-separate-parts.ly:83 (variable)
-#, fuzzy
msgid "Viola"
-msgstr "volta"
+msgstr "Viola"
#. input/lsr/string-quartet-template-with-separate-parts.ly:90 (variable)
-#, fuzzy
msgid "Cello"
-msgstr "cello"
+msgstr "Cello"
#. input/lsr/string-quartet-template-with-separate-parts.ly:96 (comment)
msgid "**********************************"
msgstr ""
#. input/lsr/string-quartet-template-with-separate-parts.ly:109 (comment)
-#, fuzzy
msgid "score.ly"
-msgstr "Mise en forme de la partition"
+msgstr "score.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:110 (comment)
msgid "(This is the main file)"
#. input/lsr/string-quartet-template-with-separate-parts.ly:124 (comment)
msgid "vn1.ly"
-msgstr ""
+msgstr "vn1.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:125 (comment)
msgid "(This is the Violin 1 part file)"
#. input/lsr/string-quartet-template-with-separate-parts.ly:134 (comment)
msgid "vn2.ly"
-msgstr ""
+msgstr "vn2.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:135 (comment)
msgid "(This is the Violin 2 part file)"
msgstr ""
#. input/lsr/string-quartet-template-with-separate-parts.ly:144 (comment)
-#, fuzzy
msgid "vla.ly"
-msgstr "global"
+msgstr "vla.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:145 (comment)
msgid "(This is the Viola part file)"
#. input/lsr/string-quartet-template-with-separate-parts.ly:154 (comment)
msgid "vlc.ly"
-msgstr ""
+msgstr "vcl.ly"
#. input/lsr/string-quartet-template-with-separate-parts.ly:155 (comment)
msgid "(This is the Cello part file)"
msgstr "Subdivision des ligatures à la double-croche"
#. input/lsr/suppressing-warnings-for-clashing-note-columns.ly:19 (variable)
-#, fuzzy
msgid "ignore"
-msgstr "mineur"
+msgstr ""
#. input/lsr/three-sided-box.ly:16 (comment)
msgid "New command to add a three sided box, with sides north, west and south"
msgstr ""
#. input/lsr/three-sided-box.ly:47 (comment)
-#, fuzzy
msgid "Test it:"
-msgstr "Commentaires textuels"
+msgstr ""
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:127 (variable)
-#, fuzzy
msgid "incipitDiscantus"
-msgstr "discantus"
+msgstr "incipitDiscantus"
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:151 (variable)
-#, fuzzy
msgid "incipitAltus"
-msgstr "Des incipits"
+msgstr "incipitAltus"
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:176 (variable)
-#, fuzzy
msgid "incipitTenor"
-msgstr "Des incipits"
+msgstr "incipitTenor"
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:202 (variable)
-#, fuzzy
msgid "incipitBassus"
-msgstr "Des incipits"
+msgstr "incipitBassus"
#. input/lsr/transcription-of-ancient-music-with-incipit.ly:226 (comment)
msgid ""
msgstr ""
#. input/lsr/transposing-pitches-with-minimum-accidentals-smart-transpose.ly:131 (variable)
-#, fuzzy
msgid "naturalizeMusic"
-msgstr "bécarre"
+msgstr ""
#. input/lsr/tweaking-clef-properties.ly:111 (comment)
msgid "The default treble clef"
msgstr ""
#. input/lsr/tweaking-clef-properties.ly:118 (comment)
-#, fuzzy
msgid "The baritone clef"
-msgstr "baryton"
+msgstr ""
#. input/lsr/tweaking-clef-properties.ly:123 (comment)
msgid "The standard choral tenor clef"
msgstr ""
#. input/lsr/tweaking-clef-properties.ly:135 (comment)
-#, fuzzy
msgid "The following clef changes do not preserve"
-msgstr "Les notes qui suivent sont monophoniques"
+msgstr ""
#. input/lsr/tweaking-clef-properties.ly:136 (comment)
msgid "the normal relationship between notes and clefs:"
#. input/lsr/using-postscript-to-generate-special-note-head-shapes.ly:17 (variable)
#, fuzzy
msgid "parallelogram"
-msgstr "allegro"
+msgstr "parallelogramme"
#. input/lsr/using-postscript-to-generate-special-note-head-shapes.ly:32 (variable)
-#, fuzzy
msgid "myNoteHeads"
-msgstr "Têtes de note"
+msgstr ""
#. input/lsr/using-postscript-to-generate-special-note-head-shapes.ly:33 (variable)
-#, fuzzy
msgid "normalNoteHeads"
-msgstr "Têtes de note mensurales"
+msgstr ""
#. input/lsr/utf-8.ly:34 (comment)
msgid "end verbatim - this comment is a hack to prevent texinfo.tex"
msgstr ""
#. input/lsr/utf-8.ly:45 (variable)
-#, fuzzy
msgid "japanese"
-msgstr "Extenseurs et prolongateurs"
+msgstr "japonais"
#. input/lsr/utf-8.ly:52 (comment)
msgid "\\\"a legal song to you\\\""
#. input/lsr/utf-8.ly:53 (variable)
msgid "portuguese"
-msgstr ""
+msgstr "portugais"
#. input/lsr/vertically-centered-common-lyrics.ly:19 (variable)
-#, fuzzy
msgid "leftbrace"
-msgstr "accolade"
+msgstr "accoladegauche"
#. input/lsr/vertically-centered-common-lyrics.ly:20 (variable)
-#, fuzzy
msgid "rightbrace"
-msgstr "accolade"
+msgstr "accoladedroite"
#. input/lsr/vertically-centered-common-lyrics.ly:22 (variable)
-#, fuzzy
msgid "dropLyrics"
-msgstr "SopUnParoles"
+msgstr ""
#. input/lsr/vertically-centered-common-lyrics.ly:29 (variable)
-#, fuzzy
msgid "raiseLyrics"
-msgstr "tuttiParoles"
+msgstr ""
#. input/lsr/vertically-centered-common-lyrics.ly:36 (variable)
msgid "skipFour"
msgstr ""
#. input/lsr/vertically-centered-common-lyrics.ly:38 (variable)
-#, fuzzy
msgid "lyricsA"
-msgstr "paroles"
+msgstr "parolesA"
#. input/lsr/vertically-centered-common-lyrics.ly:40 (variable)
-#, fuzzy
msgid "lyricsB"
-msgstr "paroles"
+msgstr "parolesB"
#. input/lsr/vertically-centered-common-lyrics.ly:41 (variable)
-#, fuzzy
msgid "lyricsC"
-msgstr "paroles"
+msgstr "parolesC"
#. input/lsr/vertically-centered-common-lyrics.ly:42 (variable)
-#, fuzzy
msgid "lyricsD"
-msgstr "paroles"
+msgstr "parolesD"
#. input/lsr/vertically-centered-common-lyrics.ly:49 (context id)
msgid "m"
-msgstr ""
+msgstr "m"
#. input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly:44 (variable)
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:37 (variable)
#. input/lsr/vocal-ensemble-template.ly:41 (variable)
-#, fuzzy
msgid "sopMusic"
-msgstr "SopMusique"
+msgstr "sopranoMusique"
#. input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly:47 (variable)
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:40 (variable)
#. input/lsr/vocal-ensemble-template.ly:44 (variable)
-#, fuzzy
msgid "sopWords"
msgstr "sopranoParoles"
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:67 (context id)
#. input/lsr/vocal-ensemble-template.ly:72 (context id)
msgid "women"
-msgstr ""
+msgstr "femmes"
#. input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly:82 (context id)
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:77 (context id)
#. input/lsr/vocal-ensemble-template.ly:84 (context id)
-#, fuzzy
msgid "men"
-msgstr "melodieUn"
+msgstr "hommes"
#. input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly:111 (comment)
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:89 (comment)
#. input/lsr/vocal-ensemble-template-with-automatic-piano-reduction.ly:112 (comment)
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:90 (comment)
#. input/lsr/vocal-ensemble-template.ly:103 (comment)
-#, fuzzy
msgid "can be closer to the staff"
-msgstr "cette fois, le texte est plus proche de la portée"
+msgstr ""
#. input/lsr/vocal-ensemble-template-with-lyrics-aligned-below-and-above-the-staves.ly:73 (comment)
msgid "we could remove the line about this with the line below, since we want"
msgstr ""
#. input/lsr/volta-multi-staff.ly:13 (variable)
-#, fuzzy
msgid "voltaMusic"
-msgstr "AltoMusique"
+msgstr ""
msgid "Up:"
msgstr "Haut :"
msgid "Table of Contents"
msgstr "Table des matières"
-#~ msgid "MacOS X on the command-line"
-#~ msgstr "MacOS X et la ligne de commande"
-
-#, fuzzy
-#~ msgid "Harp notation"
-#~ msgstr "Notation sur la portée"
-
-#, fuzzy
-#~ msgid "GNU LilyPond -- Notationsreferenz"
-#~ msgstr "GNU LilyPond --- Manuel de notation"
-
-#~ msgid "Common properties"
-#~ msgstr "Propriétés couramment utilisées"
-
-#~ msgid "Controlling visibility of objects"
-#~ msgstr "Contrôle de la visibilité des objets"
-
-#~ msgid "Modifying ends of spanners"
-#~ msgstr "Modification de la terminaison des extenseurs"
-
-#~ msgid "Discussion of specific tweaks"
-#~ msgstr "Considération de certaines retouches spécifiques"
-
-#~ msgid "old Contexts explained"
-#~ msgstr "ex Tout savoir sur les contextes"
-
-#~ msgid "applies to \\\"fas\\\""
-#~ msgstr "s'applique à \\\"fas\\\""
-
-#~ msgid "Common tweaks"
-#~ msgstr "Retouches courantes"
-
-#~ msgid "System start delimiters"
-#~ msgstr "Délimitations en début de système"
-
-#, fuzzy
-#~ msgid "lines length"
-#~ msgstr "Longueur de ligne"
-
-#, fuzzy
-#~ msgid "making sure the lines will be placed outside the Staff"
-#~ msgstr "cette fois, le texte est plus proche de la portée"
-
-#~ msgid "auto beam on 1/4 note groups"
-#~ msgstr "ligature automatique par noire"
-
-#~ msgid "keep 3/4 beaming"
-#~ msgstr "maintien des règles de ligature pour 3/4"
-
-#~ msgid "due to beatLength"
-#~ msgstr "en raison de la battue"
-
-#~ msgid "beam on 1/8 notes"
-#~ msgstr "ligature basée sur la croche"
-
-#~ msgid "beam on 3/16, 7/16, 9/16, 12/16"
-#~ msgstr "ligature sur les 3ème, 7ème, 9ème et 12ème double croche"
-
-#~ msgid "force-hshift-Eigenschaft"
-#~ msgstr "la propriété force-hshift"
-
-#~ msgid "Laissez vibrer ties"
-#~ msgstr "Liaisons ``laissez vibrer''"
@finalout
@node Top
-@top New features in 2.11 since 2.10
+@top New features in 2.12 since 2.10
@ifhtml
This document is also available in @uref{NEWS.pdf,PDF}. It is part of
@item
Unbeamed 128th notes are now supported:
-@lilypond
+@lilypond[quote]
\relative c'' {
g128
}
@end lilypond
+@item
+Extending LilyPond's existing support for microtones, there are
+now arrowed accidentals for the notation of microtonal alterations.
+To use them, redefine the @code{glyph-name-alist} property of
+@code{Accidental} as in the following example which uses quartertones
+to typeset arrowed accidentals. Alternatively, it is possible to
+define separate names for all notes with arrowed accidentals (see
+@code{ly/makam.ly} for boilerplate code).
+
+@lilypond[quote]
+microAccs = #'((0 . "accidentals.natural")
+ (-1/2 . "accidentals.flat")
+ (1/2 . "accidentals.sharp")
+
+ (1 . "accidentals.doublesharp")
+ (-1 . "accidentals.flatflat")
+
+ (3/4 . "accidentals.sharp.arrowup")
+ (1/4 . "accidentals.sharp.arrowdown")
+ (-1/4 . "accidentals.flat.arrowup")
+ (-3/4 . "accidentals.flat.arrowdown"))
+
+\relative c'' {
+ #(set-accidental-style 'modern)
+ \override Accidental #'glyph-name-alist = #microAccs
+ geseh geh aih aisih
+}
+@end lilypond
+
@item
Straight flags (used in old scores of e.g. Bach, but also in different form in
modern scores of e.g. Stockhausen) are now implemented:
-@lilypond
+@lilypond[quote]
\relative c'' {
\override Stem #'flag = #modern-straight-flag
c,16 \acciaccatura {c'8} d4 d32
@item
Nested contexts of the same type are now allowed.
This deprecates @code{InnerStaffGroup} and @code{InnerChoirStaff}.
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
\new StaffGroup <<
\new Staff { c1 }
\new StaffGroup <<
@item
Percent repeat counters can be shown at regular intervals using the
context property @code{repeatCountVisibility}.
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
{
\set countPercentRepeats = ##t
\set repeatCountVisibility = #(every-nth-repeat-count-visible 2)
- \repeat percent 8 { c4 d e f }
+ \repeat percent 6 { c4 d e f }
}
@end lilypond
In addition to the already existing @code{showLastLength} property,
@code{showFirstLength} can now be set as well, rendering only the first
measures of a piece. Both properties may be set at the same time:
-@lilypond[]
+@lilypond[quote]
showFirstLength = R1*2
showLastLength = R1*3
\relative c' { c1 d e f g a b c }
@item
Two variations on the default double repeat bar line are now available.
-@lilypond[]
+@lilypond[quote]
{
\set Score.doubleRepeatType = #":|.:"
\repeat volta 2 {
Four automatic accidentals rules have been added: @code{neo-modern},
@code{neo-modern-cautionary}, @code{dodecaphonic} and @code{teaching}.
The following example illustrates @code{neo-modern} rule.
-@lilypond[]
+@lilypond[quote]
notes = {
<<
\relative c' {
@item
Flags can now be generated with Scheme-code using the @code{'flag}
@code{Stem} grob property. Existing scores will work without change.
-@lilypond[]
+@lilypond[quote]
testnotes = {
\autoBeamOff
c'8 d'16 c''8 d''16
@item
Harp pedalling diagrams were added:
-@lilypond[]
+@lilypond[quote]
\markup { \harp-pedal #"^v-|vv-o^" }
@end lilypond
@item
Predefined, user-configurable, transposable fret diagrams
are now available in the @code{FretBoards} context:
-@lilypond[]
+@lilypond[quote]
\include "predefined-guitar-fretboards.ly"
<<
\new ChordNames {
Metronome marks can now also contain a textual description. The
duration and count (if given) are shown in parentheses after the text.
-@lilypond[]
+@lilypond[quote]
{
\tempo "Fast"
c'4 c' c' c'
In figured bass you can now also use a backslash through a number to
indicate a raised 6th step.
-@lilypond[]
+@lilypond[quote]
\new FiguredBass \figuremode { < 6\\ 5\\ > < 6/ > }
@end lilypond
@item
Arpeggios may now use ``parenthesis'' style brackets:
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
\override Arpeggio #'stencil = #ly:arpeggio::brew-chord-slur
% Note: does not work for cross-staff arpeggios.
crescendos and other text spanners. The old syntax for setting
text on line spanners is no longer valid.
-@lilypond[]
+@lilypond[quote]
\relative c'' {
\override Glissando #'(bound-details right text) = \markup { \center-align \bold down }
\override Glissando #'(bound-details right Y) = #-4
Notes or rests, such as a typical end note, that fill an entire
measure are preceded by some more space.
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
\time 4/4
s1
c2. c4
fractions. This allows some forms of microtonal music. For example,
Turkish makam music uses 1/9th tone alterations.
-@lilypondfile{makam-example.ly}
+@lilypondfile[quote]{makam-example.ly}
@item
Tie directions may be set with @code{^~} and @code{_~}.
@item
Tablature now supports harmonics and slides:
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
\new TabVoice {
<c g'\harmonic>4 d\2\glissando e2\2
}
Horizontal spacing now follows object outlines more accurately.
This allows tighter horizontal spacing.
-@lilypond[]
+@lilypond[quote]
{
\stemUp
c''4... ceses'! s16
Objects that belong outside of the staff are now positioned
automatically to avoid collisions.
-@lilypond[relative=1]
+@lilypond[quote,relative=1]
c''4
\once \override TextScript #'self-alignment-X = #CENTER
a,4^"this doesn't collide with the c"
Staves are spaced vertically using a skyline algorithm. This helps
prevent uneven vertical spacing.
-@lilypond[ragged-right]
+@lilypond[quote,ragged-right]
%% todo: fix 'landscape PDF.
#(set-default-paper-size "a6")
is finished.
</p>
- <p><i>Last updated Sun Dec 28 01:18:10 UTC 2008
+ <p><i>Last updated Wed Dec 31 01:23:25 UTC 2008
</i></p>
<table align="center" border="2">
<tr align="center">
<tr align="left">
<td>Preface<br>(411)</td>
<td>Valentin Villenave<br>
- <small>Ludovic Sardain</small><br>
+ <small>Ludovic Sardain<br>
+ Damien Heurtebise</small><br>
<span style="background-color: #1fff1f">translated</span><br>
<span style="background-color: #1fff1f">up to date</span><br>
</td>
<td>Ludovic Sardain<br>
John Mandereau<br>
<small>Jean-Charles Malahieude<br>
- Jean-Yves Baudais</small><br>
+ Jean-Yves Baudais<br>
+ Damien Heurtebise</small><br>
<span style="background-color: #1fff1f">translated</span><br>
<span style="background-color: #40fe23">partially up to date</span><br>
</td>
<td>2 Setup<br>(1149)</td>
<td>Jean-Charles Malahieude<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #d587ff"></span><br>
+ <span style="background-color: #1fff1f">up to date</span><br>
</td>
<td>Till Rettig<br>
Reinhold Kainhofer<br>
<td>5 Converting from other formats<br>(1171)</td>
<td>Jean-Charles Malahieude<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #d587ff"></span><br>
+ <span style="background-color: #1fff1f">up to date</span><br>
</td>
<td>Reinhold Kainhofer<br>
<small>Till Rettig</small><br>
<td>John Mandereau<br>
Jean-Charles Malahieude<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
<td>Till Rettig<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
<td>Francisco Vila<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
</tr>
<tr align="left">
</td>
</tr>
<tr align="left">
- <td>1.6 Staff notation<br>(1635)</td>
+ <td>1.6 Staff notation<br>(1701)</td>
<td>Valentin Villenave<br>
Jean-Charles Malahieude<br>
<small>John Mandereau</small><br>
- <span style="background-color: #dfef77">partially translated (70 %)</span><br>
+ <span style="background-color: #dfef77">partially translated (69 %)</span><br>
<span style="background-color: #ff6f57">partially up to date</span><br>
</td>
<td>Till Rettig<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #25fe1f">partially up to date</span><br>
</td>
<td>Francisco Vila<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #25fe1f">partially up to date</span><br>
</td>
</tr>
<tr align="left">
<td>John Mandereau<br>
Jean-Charles Malahieude<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
<td>Till Rettig<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
<td>Francisco Vila<br>
<span style="background-color: #1fff1f">translated</span><br>
- <span style="background-color: #1fff1f">up to date</span><br>
+ <span style="background-color: #2cff20">partially up to date</span><br>
</td>
</tr>
<tr align="left">
<td>2.8 Ancient notation<br>(4487)</td>
<td>John Mandereau<br>
Jean-Charles Malahieude<br>
- <span style="background-color: #dfef77">partially translated (79 %)</span><br>
+ <span style="background-color: #dfef77">partially translated (82 %)</span><br>
<span style="background-color: #ff6d58">partially up to date</span><br>
</td>
<td>Till Rettig<br>
%%%%% UPDATING DOCS
cd into Documentation and run
-find -name '*.itely' | xargs convert-ly -e
+find . -name '*.itely' | xargs convert-ly -e
(This also updates translated docs.)
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Ancient notation
@section Ancient notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Changing defaults
@chapter Changing defaults
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c TODO: add tablature.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Chord notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Converting from other formats
@chapter Converting from other formats
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@quotation
We want to dedicate this program to all the friends that we
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Editorial annotations
@section Editorial annotations
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Expressive marks
@section Expressive marks
@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
{using-double-slurs-for-legato-chords.ly}
-@c TODO remove ignores after LSR update
-@ignore
@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-{positioning-text-markups-inside-slurs}
-@end ignore
+{positioning-text-markups-inside-slurs.ly}
@seealso
Music Glossary:
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Fretted string instruments
@section Fretted string instruments
are covered elsewhere:
@itemize
-@item Fingerings are indicated with @ref{Fingering instructions}.
+@item Fingerings are indicated as shown in @ref{Fingering instructions}.
@item Instructions for @notation{Laissez vibrer} ties
-as well as ties on arpeggios and tremolos is described in
+as well as ties on arpeggios and tremolos can be found in
@ref{Ties}.
-@item Instructions on handling multiple voices is described
+@item Instructions for handling multiple voices can be found
in @ref{Collision resolution}.
+@item Instructions for indicating harmonics can be found in
+@ref{Harmonics}.
+
@end itemize
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Fundamental concepts
@chapter Fundamental concepts
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node General input and output
@chapter General input and output
@end example
Files which are to be included can also contain @code{\include}
-statements of their own. These second-level
+statements of their own. By default, these second-level
@code{\include} statements are not interpreted until they have
been brought into the main file, so the file names they specify
must all be relative to the directory containing the main file,
-not the directory containing the included file.
+not the directory containing the included file. However,
+this behavior can be changed by passing the option
+@code{-drelative-includes} option at the command line
+(or by adding @code{#(ly:set-option 'relative-includes #t)}
+at the top of the main input file). With @code{relative-includes}
+set, the path for each @code{\include} command will be taken
+relative to the file containing that command. This behavior is
+recommended and it will become the default behavior in a future
+version of lilypond.
Files can also be included from a directory in a search path
specified as an option when invoking LilyPond from the command
Files which are to be included in many scores may be placed in
the LilyPond directory @file{../ly}. (The location of this
-directory is installation-dependent - see @rlearning{Other sources
-of information}). These files can then be included simply by
-naming them on an @code{\include} statement. This is how the
-language-dependent files like @file{english.ly} are included.
+directory is installation-dependent - see
+@rlearning{Other sources of information}). These files can then
+be included simply by naming them on an @code{\include} statement.
+This is how the language-dependent files like @file{english.ly} are
+included.
LilyPond includes a number of files by default when you start
the program. These includes are not apparent to the user, but the
files may be identified by running @code{lilypond --verbose} from
the command line. This will display a list of paths and files that
LilyPond uses, along with much other information. Alternatively,
-the more important of these files are discussed in @rlearning{Other
-sources of information}. These files may be edited, but changes to
-them will be lost on installing a new version of LilyPond.
+the more important of these files are discussed in
+@rlearning{Other sources of information}. These files may be
+edited, but changes to them will be lost on installing a new
+version of LilyPond.
Some simple examples of using @code{\include} are shown in
@rlearning{Scores and parts}.
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@ifclear INSTALL
@node Install
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Introduction
@chapter Introduction
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Keyboard and other multi-staff instruments
@section Keyboard and other multi-staff instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@c Note: keep this node named so that `info lilypond-book' brings you here.
@node LilyPond-book
Each snippet will call the following macros if they have been defined by
the user:
-@itemize bullet
+@itemize @bullet
@item @code{\preLilyPondExample} called before the music,
@item @code{\postLilyPondExample} called after the music,
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Literature list
@appendix Literature list
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Notation manual tables
@appendix Notation manual tables
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Musical notation
@chapter Musical notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Percussion
@section Percussion
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Pitches
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Preface
@unnumbered Preface
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Interfaces for programmers
@chapter Interfaces for programmers
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Repeats
@section Repeats
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Rhythms
@section Rhythms
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Running LilyPond
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Scheme tutorial
@appendix Scheme tutorial
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Setup
@chapter Setup
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Simultaneous notes
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.64"
+@c \version "2.12.0"
@ignore
GDP TODO list
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Specialist notation
@chapter Specialist notation
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.64"
+@c \version "2.12.0"
@node Staff notation
@section Staff notation
@lilypond[verbatim,quote,relative=2]
\new PianoStaff <<
- \set PianoStaff.instrumentName = "Piano"
+ \set PianoStaff.instrumentName = #"Piano"
\new Staff { c1 c }
\new Staff { c1 c }
>>
of @code{shortInstrumentName} is used for all succeeding staves.
@lilypond[verbatim,quote,ragged-right,relative=1]
-\set Staff.instrumentName = "Violin "
-\set Staff.shortInstrumentName = "Vln "
+\set Staff.instrumentName = #"Violin "
+\set Staff.shortInstrumentName = #"Vln "
c4.. g'16 c4.. g'16
\break
c1
@lilypond[verbatim,quote,indent=1.5\cm,relative=2]
<<
\new Staff {
- \set Staff.instrumentName = "Flute"
+ \set Staff.instrumentName = #"Flute"
f2 g4 f
}
\new Staff {
\relative c'' <<
\new Staff {
- \set Staff.instrumentName = "Alto Flute in G"
- \set Staff.shortInstrumentName = "Fl."
+ \set Staff.instrumentName = #"Alto Flute in G"
+ \set Staff.shortInstrumentName = #"Fl."
f2 g4 f \break
g4 f g2
}
\new Staff {
- \set Staff.instrumentName = "Clarinet"
- \set Staff.shortInstrumentName = "Clar."
+ \set Staff.instrumentName = #"Clarinet"
+ \set Staff.shortInstrumentName = #"Clar."
c,4 b c2 \break
c2 b4 c
}
Instrument names may be changed in the middle of a piece:
@lilypond[verbatim,quote,ragged-right,relative=1]
-\set Staff.instrumentName = "First"
-\set Staff.shortInstrumentName = "one"
+\set Staff.instrumentName = #"First"
+\set Staff.shortInstrumentName = #"one"
c1 c c c \break
c1 c c c \break
-\set Staff.instrumentName = "Second"
-\set Staff.shortInstrumentName = "two"
+\set Staff.instrumentName = #"Second"
+\set Staff.shortInstrumentName = #"two"
c1 c c c \break
c1 c c c \break
@end lilypond
(midiInstrument . "bassoon"))
\new Staff \with {
- instrumentName = "Bassoon"
+ instrumentName = #"Bassoon"
}
\relative c' {
\clef tenor
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Templates
@appendix Templates
@ The `line-width' is for \header.
@li lypond[quote,verbatim,ragged-right,line-width]
-\version "2.11.61"
+\version "2.12.0"
\header {
dedication = "dedication"
title = "Title"
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Text
@section Text
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@ignore
Tutorial guidelines: (different from policy.txt!)
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Tweaking output
@chapter Tweaking output
c, c c c
@end lilypond
+@cindex slurs and outside-staff-priority
+@cindex slurs and articulations
+@cindex articulations and slurs
+
+Slurs by default are classed as within-staff objects, but
+they often appear above the staff if the notes to
+which they are attached are high on the staff. This can push
+outside-staff objects such as articulations too high, as the slur
+will be placed first. The @code{avoid-slur} property of the
+articulation can be set to @code{'inside} to bring the articulation
+inside the slur, but the @code{avoid-slur} property is effective
+only if the @code{outside-staff-priority} is also set to @code{#f}.
+Alternatively, the @code{outside-staff-priority} of the slur
+can be set to a numerical value to cause it to be placed along with
+other outside-staff objects according to that value. Here's an
+example showing the effect of the two methods:
+
+@lilypond[quote,verbatim,relative=2]
+c4( c^\markup\tiny\sharp d4.) c8
+c4(
+\once \override TextScript #'avoid-slur = #'inside
+\once \override TextScript #'outside-staff-priority = ##f
+c^\markup\tiny\sharp d4.) c8
+\once \override Slur #'outside-staff-priority = #500
+c4( c^\markup\tiny\sharp d4.) c8
+@end lilypond
+
Changing the @code{outside-staff-priority} can also be used to
control the vertical placement of individual objects, although
the results may not always be desirable. Suppose we would
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Unfretted string instruments
@section Unfretted string instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.65"
+@c \version "2.12.0"
@node Vocal music
@section Vocal music
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Wind instruments
@section Wind instruments
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node Working on LilyPond projects
@chapter Working on LilyPond projects
version that you are working on. See TRANSLATION for details.
@end ignore
-@c \version "2.11.61"
+@c \version "2.12.0"
@node World music
@section World music
-Release 2.11
+Release 2.12
************
Maarten Hijzelendoorn
Marc Lanoiselée
Mark Polesky
+Matthieu Jacquot
Matthijs Frankeno
Martijn Vromans
Marnen Laibow-Koser
centrado) y @code{#DOWN} (o @code{#-1}, abajo).
Como podemos ver, esta propiedad se puede cambiar tantas veces
-como queramos. Utilice @code{\\once \\override} si no quiere que el
+como queramos. Utilice @code{\\once \\override} si no quiere que el
truco se aplique a toda la partitura.
"
doctitlees = "Añadir un bajo cifrado encima o debajo de las notas"
+
+ doctitlefr = "Ajout d'une basse chiffrée au-dessus ou au-dessous des notes"
+
texidoc = "
When writing a figured bass, here's a way to specify if you want your
{
r16[ g16 \times 2/3 { r16 e'8] }
g16( a \times 2/3 { b d e') }
- g8[( a \times 2/3 { b d') e']~ }
+ g8[( a \times 2/3 { b d') e'] ~ }
\time 2/4
\times 4/5 { e'32\( a b d' e' } a'4.\)
}
\header {
lsrtags = "fretted-strings"
+ texidocfr = "Ajout de doigtés à des tablatures"
+
+ doctitlefr = "
+L'ajout de doigtés à des tablatures s'obtient en conjuguant des
+@code{\\markup} et des @code{\\finger}.
+"
+
texidoc = "
To add fingerings to tablatures, use a combination of @code{\\markup}
and @code{\\finger}.
c2-\parenthesize ->
\override ParenthesesItem #'padding = #0.1
\override ParenthesesItem #'font-size = #-4
- <d \parenthesize fis a>2
+ <d \parenthesize f a>2
}
texidoces = "
Con algo de código de Scheme, se puede añadir fácilmente la fecha
actual a una partitura.
-
"
doctitlees = "Añadir la fecha actual a una partitura"
+
+ texidocfr = "
+Avec un peu de code Scheme, voici comment ajouter facilement
+la date du jour à votre partition.
+"
+
+ doctitlefr = "Ajout de la date du jour à une partition"
texidoc = "
With a little Scheme code, the current date can easily be added to a
} % begin verbatim
\layout {
- ragged-right = ##t
\context {
\Voice
\consists "Ambitus_engraver"
}
}
-\relative
<<
\new Staff {
- \time 2/4 c4 f'
+ \relative c' {
+ \time 2/4
+ c4 f'
+ }
}
- \new Staff \relative {
- \time 2/4
- \key d \major
- cis as'
+ \new Staff {
+ \relative c' {
+ \time 2/4
+ \key d \major
+ cis4 as'
+ }
}
>>
-
doctitle = "Applying note head styles depending on the step of the scale"
} % begin verbatim
-\layout { ragged-right = ##t }
-
fragment = {
\key c \major
c2 d
\fragment
}
}
+ \layout { ragged-right = ##t }
}
doctitle = "Automatic beam subdivisions"
} % begin verbatim
-\score {
- \new Staff \relative c'' {
- << {
- \voiceOne
- \set subdivideBeams = ##t
- b32[ a g f c' b a g b^"subdivide beams" a g f c' b a g]
- \oneVoice
- }
- \new Voice {
- \voiceTwo
- b32_"default"[ a g f c' b a g b a g f c' b a g]
- } >>
+\new Staff {
+ \relative c'' {
+ <<
+ {
+ \voiceOne
+ \set subdivideBeams = ##t
+ b32[ a g f c' b a g
+ b32^"subdivide beams" a g f c' b a g]
+ }
+ \new Voice {
+ \voiceTwo
+ b32_"default"[ a g f c' b a g
+ b32 a g f c' b a g]
+ }
+ >>
+ \oneVoice
\set beatLength = #(ly:make-moment 1 8)
b32^"beatLength 1 8"[ a g f c' b a g]
\set beatLength = #(ly:make-moment 1 16)
b32^"beatLength 1 16"[ a g f c' b a g]
}
}
-
\score {
<<
- \new Staff \relative c'' {
- \time 4/4
- g8^\markup { without the macro } g g g g g g g
- g8 g g g4 g8 g g
+ \new Staff {
+ \relative c'' {
+ \time 4/4
+ g8-"without the macro" g g g g g g g
+ g8 g g g4 g8 g g
+ }
}
%Use the macro
- \new Staff \relative c'' {
- \time 4/4
- \qBeam
- g8^\markup { with the macro } g g g g g g g
- g8 g g g4 g8 g g
+ \new Staff {
+ \relative c'' {
+ \time 4/4
+ \qBeam
+ g8-"with the macro" g g g g g g g
+ g8 g g g4 g8 g g
+ }
}
>>
\layout {
"
doctitle = "Avoiding collisions of chord fingering with beams"
+ texidocfr = "
+Les doigtés et les numéros de cordes attachés à des notes seules
+évitent automatiquement les barres de ligature, mais ce n'est pas le
+cas par défaut pour les doigtés ou numéros de cordes attachés aux
+notes d'un accord. L'exemple qui suit montre comment ce comportement
+par défaut peut être corrigé.
+"
+ doctitlefr = "Éviter les collisions entre les doigtés d'accords et les ligatures"
} % begin verbatim
\relative c' {
doctitle = "Changing \\flageolet mark size"
} % begin verbatim
-smallFlageolet = #(let ((m (make-music 'ArticulationEvent
- 'articulation-type "flageolet")))
- (set! (ly:music-property m 'tweaks)
- (acons 'font-size -3
- (ly:music-property m 'tweaks)))
- m)
+smallFlageolet =
+#(let ((m (make-music 'ArticulationEvent
+ 'articulation-type "flageolet")))
+ (ly:music-set-property! m 'tweaks
+ (acons 'font-size -3
+ (ly:music-property m 'tweaks)))
+ m)
\layout { ragged-right = ##f }
} % begin verbatim
\relative c'' {
- \times 2/3 { c8 c c } \times 2/3 { c8 c c }
+ \times 2/3 { c8 c c }
+ \times 2/3 { c8 c c }
\override TupletNumber #'text = #tuplet-number::calc-fraction-text
\times 2/3 { c8 c c }
\override TupletNumber #'stencil = ##f
doctitle = "Chant or psalms notation"
} % begin verbatim
-stemOn = { \override Staff.Stem #'transparent = ##f }
+stemOn = { \revert Staff.Stem #'transparent }
stemOff = { \override Staff.Stem #'transparent = ##t }
\score {
'element elt))
-rhythm = #(define-music-function (parser location note) (ly:music?)
- "Make the rhythm in Mars (the Planets) at the given note's pitch"
- (let* ((p (ly:music-property
- (car (ly:music-property note 'elements))
- 'pitch)))
- (seq-music-list (list
- (make-triplet (seq-music-list (list
- (make-note p (ly:make-duration 3 0 2 3))
- (make-note p (ly:make-duration 3 0 2 3))
- (make-note p (ly:make-duration 3 0 2 3))
- )))
- (make-note p (ly:make-duration 2 0))
- (make-note p (ly:make-duration 2 0))
- (make-note p (ly:make-duration 3 0))
- (make-note p (ly:make-duration 3 0))
- (make-note p (ly:make-duration 2 0))
- ))))
+rhythm =
+#(define-music-function (parser location note) (ly:music?)
+ "Make the rhythm in Mars (the Planets) at the given note's pitch"
+ (let ((p (ly:music-property
+ (car (ly:music-property note 'elements))
+ 'pitch)))
+ (seq-music-list (list
+ (make-triplet (seq-music-list (list
+ (make-note p (ly:make-duration 3 0 2 3))
+ (make-note p (ly:make-duration 3 0 2 3))
+ (make-note p (ly:make-duration 3 0 2 3))
+ )))
+ (make-note p (ly:make-duration 2 0))
+ (make-note p (ly:make-duration 2 0))
+ (make-note p (ly:make-duration 3 0))
+ (make-note p (ly:make-duration 3 0))
+ (make-note p (ly:make-duration 2 0))
+ ))))
-\score {
- \new Staff {
- \time 5/4
- \rhythm c'
- \rhythm c''
- \rhythm g
- }
+\new Staff {
+ \time 5/4
+ \rhythm c'
+ \rhythm c''
+ \rhythm g
}
} % begin verbatim
\relative c' {
- << {
- d16( a') s a s a[ s a] s a[ s a]
- }
- \\
- {
- \slurUp
- bes,16[ s e](
- \hideNotes a)
- \unHideNotes f[(
- \hideNotes a)
- \unHideNotes fis](
- \hideNotes a)
- \unHideNotes g[(
- \hideNotes a)
- \unHideNotes gis](
- \hideNotes a)
- } >>
+ <<
+ {
+ d16( a') s a s a[ s a] s a[ s a]
+ }
+ \\
+ {
+ \slurUp
+ bes,16[ s e](
+ \hideNotes a)
+ \unHideNotes f[(
+ \hideNotes a)
+ \unHideNotes fis](
+ \hideNotes a)
+ \unHideNotes g[(
+ \hideNotes a)
+ \unHideNotes gis](
+ \hideNotes a)
+ }
+ >>
}
}
\layout {
\context {
- \Staff
- \remove "Key_engraver"
+ \Staff
+ \remove "Key_engraver"
}
}
}
making-some-staff-lines-thicker-than-the-others.ly
marking-notes-of-spoken-parts-with-a-cross-on-the-stem.ly
measure-counter.ly
+positioning-text-markups-inside-slurs.ly
using-postscript-to-generate-special-note-head-shapes.ly
line-arrows.ly
modifying-default-values-for-articulation-shorthand-notation.ly
piano-template-with-centered-dynamics.ly
+positioning-text-markups-inside-slurs.ly
printing-hairpins-using-al-niente-notation.ly
printing-metronome-and-rehearsal-marks-below-the-staff.ly
setting-hairpin-behavior-at-bar-lines.ly
texidoc = "
Flat flags on lone notes and beam nibs at the ends of beamed figures
are both possible with a combination of @code{stemLeftBeamCount},
-@code{stemRightBeamCount} and paired @code{[ ]} beam indicators.
+@code{stemRightBeamCount} and paired @code{[]} beam indicators.
-For right-pointing flat flags on lone notes, use paired @code{[ ]} beam
+For right-pointing flat flags on lone notes, use paired @code{[]} beam
indicators and set @code{stemLeftBeamCount} to zero (see Example 1).
Sometimes it may make sense for a lone note surrounded by rests to
carry both a left- and right-pointing flat flag. Do this with paired
-@code{[ ]} beam indicators alone (Example 4).
+@code{[]} beam indicators alone (Example 4).
-(Note that @code{\\set stemLeftBeamCount}is always equivalent to
-@code{\\once \\set}. In other words, the beam count settings aren't
-\"sticky\", so the pair of flat flags attached to the lone @code{c'16
-[ ]} in the last example have nothing to do with the @code{\\set} two
-notes prior.)
+(Note that @code{\\set stemLeftBeamCount} is always equivalent to
+@code{\\once \\set}. In other words, the beam count settings are not
+\"sticky\", so the pair of flat flags attached to the lone
+@code{c'16[]} in the last example have nothing to do with the
+@code{\\set} two notes prior.)
} % begin verbatim
\score {
-<<
-% Example 1
-\new RhythmicStaff {
- \set stemLeftBeamCount = #0
- c'16 [ ]
- r8.
-}
-
-% Example 2
-\new RhythmicStaff {
- r8.
- \set stemRightBeamCount = #0
- c'16 [ ]
-}
-
-% Example 3
-\new RhythmicStaff {
- c'16
- c'16
- \set stemRightBeamCount = #2
- c'16
- r16
- r16
- \set stemLeftBeamCount = #2
- c'16
- c'16
- c'16
-}
-
-% Example 4
-\new RhythmicStaff {
- c'16
- c'16
- \set stemRightBeamCount = #2
- c'16
- r16
- c'16 [ ]
- r16
- \set stemLeftBeamCount = #2
- c'16
- c'16
-}
->>
+ <<
+ % Example 1
+ \new RhythmicStaff {
+ \set stemLeftBeamCount = #0
+ c16[]
+ r8.
+ }
+
+ % Example 2
+ \new RhythmicStaff {
+ r8.
+ \set stemRightBeamCount = #0
+ c16[]
+ }
+
+ % Example 3
+ \new RhythmicStaff {
+ c16 c
+ \set stemRightBeamCount = #2
+ c16 r r
+ \set stemLeftBeamCount = #2
+ c16 c c
+ }
+
+ % Example 4
+ \new RhythmicStaff {
+ c16 c
+ \set stemRightBeamCount = #2
+ c16 r
+ c16[]
+ r16
+ \set stemLeftBeamCount = #2
+ c16 c
+ }
+ >>
}
texidoc = "
This snippet demonstrates how to obtain automatic ordered rehearsal
-marks, but from the letter or number you want.
+marks, but from the letter or number desired.
"
doctitle = "Forcing rehearsal marks to start from a given letter or number"
\relative c'' {
\time 5/16
+ #(override-auto-beam-setting '(end * * 5 16) 5 16)
\set beatGrouping = #'(2 3)
- c8[^"(2+3)" c16 c8]
+ c8^"(2+3)" c16 c8
\set beatGrouping = #'(3 2)
- c8[^"(3+2)" c16 c8]
+ c8^"(3+2)" c16 c8
}
c1 f g c
}
}
-
\new FretBoards {
\chordmode {
c1 f g c
}
}
-
-
\new Voice \with {
- \consists Pitch_squash_engraver
- } \relative c'' {
- \improvisationOn
- c4 c8 c c4 c8 c
- f4 f8 f f4 f8 f
- g4 g8 g g4 g8 g
- c4 c8 c c4 c8 c
+ \consists "Pitch_squash_engraver"
+ } {
+ \relative c'' {
+ \improvisationOn
+ c4 c8 c c4 c8 c
+ f4 f8 f f4 f8 f
+ g4 g8 g g4 g8 g
+ c4 c8 c c4 c8 c
+ }
}
-
-
\new Voice = "melody" {
\relative c'' {
- \improvisationOff
c2 e4 e4
f2. r4
g2. a4
e4 c2.
}
}
-
\new Lyrics {
\lyricsto "melody" {
This is my song.
\once \override Staff.InstrumentName #'self-alignment-Y = #UP
\once \override Staff.InstrumentName #'Y-offset = #4
\once \override Staff.InstrumentName #'padding = #0.3
- \once \override Staff.InstrumentName #'stencil =
+ \once \override Staff.InstrumentName #'stencil =
#(lambda (grob)
(let* ((instrument-name (ly:grob-property grob 'long-text))
(layout (ly:output-def-clone (ly:grob-layout grob)))
(ly:output-def-set-variable! layout 'ragged-last #f)
(ly:output-def-set-variable! layout 'system-count 1)
(ly:score-add-output-def! score layout)
- (set! (ly:grob-property grob 'long-text)
+ (ly:grob-set-property! grob 'long-text
(markup #:score score))
(ly:system-start-text::print grob)))
#})
\set Score.skipBars = ##t
\key g \major
\time 4/4
-
- %make the staff lines invisible on staves
- \override Staff.BarLine #'transparent = ##t
+
% the actual music
\skip 1*8
\incipit \bassusIncipit
\bassusNotes
>>
+ \new Lyrics = "bassusLyrics" \lyricsto bassusNotes { \bassusLyrics }
>>
- \new Lyrics = "bassusLyrics" \lyricsto bassusNotes { \bassusLyrics }
- %% Keep the bass lyrics outside of the staff group to avoid bar lines
- %% between the lyrics.
>>
\layout {
\context {
\Score
- %% no bar lines in staves
+ %% no bar lines in staves or lyrics
\override BarLine #'transparent = ##t
}
- %% the next three instructions keep the lyrics between the bar lines
+ %% the next two instructions keep the lyrics between the bar lines
\context {
\Lyrics
- \consists "Bar_engraver"
- \override BarLine #'transparent = ##t
- }
- \context {
- \StaffGroup
+ \consists "Bar_engraver"
\consists "Separating_line_group_engraver"
}
\context {
\relative c'' {
\time 2/4
- << {
- \once \override Stem #'transparent = ##t
- \once \override Stem #'length = #8
- b8 ~ b\noBeam
- \once \override Stem #'transparent = ##t
- \once \override Stem #'length = #8
- g8 ~ g\noBeam
- }
- \\
- {
- b8 g g e
- } >>
+ <<
+ {
+ \once \override Stem #'transparent = ##t
+ \once \override Stem #'length = #8
+ b8 ~ b\noBeam
+ \once \override Stem #'transparent = ##t
+ \once \override Stem #'length = #8
+ g8 ~ g\noBeam
+ }
+ \\
+ {
+ b8 g g e
+ }
+ >>
}
\relative c' {
\time 2/4
- % from upper staffline (position 4) to center (position 0)
+ % from upper staff-line (position 2) to center (position 0)
\override Beam #'positions = #'(2 . 0)
c8 c
- % from center to one above center (position 2)
+ % from center to one above center (position 1)
\override Beam #'positions = #'(0 . 1)
c8 c
}
texidoc = "
This example shows how to put crosses on stems. Mark the beginning
of a spoken section with the @code{\\speakOn} keyword, and end it
-with the @code{\\speakOff} keyword. Remember to end cross sections
-before entering any rest: this function also adds crosses to the
-invisible stems of rests.
+with the @code{\\speakOff} keyword.
"
doctitle = "Marking notes of spoken parts with a cross on the stem"
} % begin verbatim
speakOn = {
\override Stem #'stencil = #(lambda (grob)
- (ly:stencil-combine-at-edge
- (ly:stem::print grob)
- Y
- (- (ly:grob-property grob 'direction))
- (grob-interpret-markup grob
- (markup #:hspace -1.025 #:fontsize -4
- #:musicglyph "noteheads.s2cross"))
- -2.3 0))
+ (let* ((x-parent (ly:grob-parent grob X))
+ (is-rest? (ly:grob? (ly:grob-object x-parent 'rest))))
+ (if is-rest?
+ empty-stencil
+ (ly:stencil-combine-at-edge
+ (ly:stem::print grob)
+ Y
+ (- (ly:grob-property grob 'direction))
+ (grob-interpret-markup grob
+ (markup #:hspace -1.025 #:fontsize -4
+ #:musicglyph "noteheads.s2cross"))
+ -2.3 0))))
}
speakOff = {
doctitle = "Merging multi-measure rests in a polyphonic part"
} % begin verbatim
-normalPos= \revert MultiMeasureRest #'staff-position
+normalPos = \revert MultiMeasureRest #'staff-position
{
<<
{
- c''1
- R1
- c''1
- \normalPos
- R1
- }
- \\
- {
- c'1
- R1
- c'1
- \normalPos
- R1
- }
+ c''1
+ R1
+ c''1
+ \normalPos
+ R1
+ }
+ \\
+ {
+ c'1
+ R1
+ c'1
+ \normalPos
+ R1
+ }
>>
}
-%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% Do not edit this file; it is auto-generated from input/new
%% This file is in the public domain.
\version "2.12.0"
\header {
- lsrtags = "pitches, text"
-
texidoces = "
Internamente, la función @code{set-octavation} establece las
propiedades @code{ottavation} (por ejemplo, a @code{\"8va\"} o a
doctitlede = "Ottava-Text"
+ lsrtags = "pitches, text"
texidoc = "
-Internally, the @code{set-octavation} function sets the properties
-@code{ottavation} (for example, to @code{\"8va\"} or @code{\"8vb\"})
-and @code{middleCPosition}. To override the text of the bracket, set
-@code{ottavation} after invoking @code{set-octavation}.
-
-
-
+Internally, @code{\\ottava} sets the properties @code{ottavation}
+(for example, to @code{\"8va\"} or @code{\"8vb\"}) and
+@code{middleCPosition}. To override the text of the bracket, set
+@code{ottavation} after invoking @code{\\ottava}.
"
doctitle = "Ottava text"
} % begin verbatim
+
{
\ottava #1
\set Staff.ottavation = #"8"
}
\relative c'' {
a8
- \repeat unfold 8 { \times 2/3 { c[ b a] } }
+ \repeat unfold 5 { \times 2/3 { c[ b a] } }
% Insert a manual line break within a tuplet
\times 2/3 { c[ b \bar "" \break a] }
- \repeat unfold 2 { \times 2/3 { c[ b a] } }
+ \repeat unfold 5 { \times 2/3 { c[ b a] } }
c8
}
--- /dev/null
+%% Do not edit this file; it is auto-generated from LSR http://lsr.dsi.unimi.it
+%% This file is in the public domain.
+\version "2.12.0"
+
+\header {
+ lsrtags = "expressive-marks, editorial-annotations, tweaks-and-overrides"
+
+ texidoc = "
+Text markups need to have the @code{outside-staff-priority} property
+set to false in order to be printed inside slurs.
+
+"
+ doctitle = "Positioning text markups inside slurs"
+} % begin verbatim
+
+\relative c'' {
+ \override TextScript #'avoid-slur = #'inside
+ \override TextScript #'outside-staff-priority = ##f
+ c2(^\markup { \halign #-10 \natural } d4.) c8
+}
+
In the following snippet, two parts have a completely different time
signature, yet remain synchronized. The bar lines can no longer be
printed at the @code{Score} level; to allow independent bar lines in
-each part, the @code{Barline_engraver} is moved from the @code{Score}
-context to the @code{Staff} context.
+each part, the @code{Default_barline_engraver} and
+@code{Timing_translator} are moved from the @code{Score} context to the
+@code{Staff} context.
"
doctitle = "Printing music with different time signatures"
>>
\score {
- << \Bassklarinette \Perkussion >>
+ <<
+ \Bassklarinette
+ \Perkussion
+ >>
}
% Macro to print single slash
rs = {
\once \override Rest #'stencil = #ly:percent-repeat-item-interface::beat-slash
- \once \override Rest #'thickness = #'0.48
- \once \override Rest #'slope = #'1.7
+ \once \override Rest #'thickness = #0.48
+ \once \override Rest #'slope = #1.7
r4
}
comp = #(define-music-function (parser location count) ( integer?)
#{
\override Rest #'stencil = #ly:percent-repeat-item-interface::beat-slash
- \override Rest #'thickness = #'0.48
- \override Rest #'slope = #'1.7
+ \override Rest #'thickness = #0.48
+ \override Rest #'slope = #1.7
\repeat unfold $count { r4 }
\revert Rest #'stencil
#}
)
-\score{
+\score {
\relative c' {
- c d e f |
+ c4 d e f |
\rs \rs \rs \rs |
\comp #4 |
}
By specifying the context, the effect of @code{beatGrouping} can be
limited to the context specified, and the values which may have
been set in higher-level contexts can be overridden. The
-@code{\set} commands must be placed @emph{after} all @code{\time}
+@code{\\set} commands must be placed @emph{after} all @code{\\time}
commands:
"
doctitle = "Specifying context with beatGrouping"
\new Voice {
\relative c' {
\voiceTwo
- \set Voice.beatGrouping = #'(1 3 3)
+ \set beatGrouping = #'(1 3 3)
f8 f f f f f f
}
}
% New command to add a three sided box, with sides north, west and south
% Based on the box-stencil command defined in scm/stencil.scm
-% Note that you use ";" to comment a line in Scheme
+% Note that ";" is used to comment a line in Scheme
#(define-public (NWS-box-stencil stencil thickness padding)
"Add a box around STENCIL, producing a new stencil."
(let* ((x-ext (interval-widen (ly:stencil-extent stencil 0) padding))
- (y-ext (interval-widen (ly:stencil-extent stencil 1) padding))
- (y-rule (make-filled-box-stencil (cons 0 thickness) y-ext))
- (x-rule (make-filled-box-stencil
- (interval-widen x-ext thickness) (cons 0 thickness))))
+ (y-ext (interval-widen (ly:stencil-extent stencil 1) padding))
+ (y-rule (make-filled-box-stencil (cons 0 thickness) y-ext))
+ (x-rule (make-filled-box-stencil
+ (interval-widen x-ext thickness) (cons 0 thickness))))
; (set! stencil (ly:stencil-combine-at-edge stencil X 1 y-rule padding))
(set! stencil (ly:stencil-combine-at-edge stencil X -1 y-rule padding))
- (set! stencil (ly:stencil-combine-at-edge stencil Y 1 x-rule 0.0))
+ (set! stencil (ly:stencil-combine-at-edge stencil Y 1 x-rule 0.0))
(set! stencil (ly:stencil-combine-at-edge stencil Y -1 x-rule 0.0))
stencil))
#(define-markup-command (NWS-box layout props arg) (markup?)
"Draw a box round @var{arg}. Looks at @code{thickness},
@code{box-padding} and @code{font-size} properties to determine line
-thickness and padding around the markup."
-
+thickness and padding around the markup."
(let* ((th (chain-assoc-get 'thickness props 0.1))
- (size (chain-assoc-get 'font-size props 0))
- (pad (* (magstep size)
- (chain-assoc-get 'box-padding props 0.2)))
- (m (interpret-markup layout props arg)))
+ (size (chain-assoc-get 'font-size props 0))
+ (pad (* (magstep size)
+ (chain-assoc-get 'box-padding props 0.2)))
+ (m (interpret-markup layout props arg)))
(NWS-box-stencil m th pad)))
-
% Test it:
\layout { ragged-right = ##f }
-
-\relative c' {
+\relative c' {
c2^\markup { \NWS-box ABCD }
- c^\markup { \NWS-box \note #"4" #1.0 }
+ c2^\markup { \NWS-box \note #"4" #1.0 }
}
#(define (naturalize-pitch p)
(let* ((o (ly:pitch-octave p))
(a (* 4 (ly:pitch-alteration p)))
- ; alteration, a, in quarter tone steps, for historical reasons
+ ; alteration, a, in quarter tone steps,
+ ; for historical reasons
(n (ly:pitch-notename p)))
(cond
((and (> a 1) (or (eq? n 6) (eq? n 2)))
(e (ly:music-property music 'element))
(p (ly:music-property music 'pitch)))
(if (pair? es)
- (ly:music-set-property!
+ (ly:music-set-property!
music 'elements
(map (lambda (x) (naturalize x)) es)))
(if (ly:music? e)
- (ly:music-set-property!
+ (ly:music-set-property!
music 'element
(naturalize e)))
(if (ly:pitch? p)
- (begin
- (set! p (naturalize-pitch p))
- (ly:music-set-property! music 'pitch p)))
+ (begin
+ (set! p (naturalize-pitch p))
+ (ly:music-set-property! music 'pitch p)))
music))
naturalizeMusic =
#(define-music-function (parser location m)
- (ly:music?)
- (naturalize m))
+ (ly:music?)
+ (naturalize m))
music = \relative c' { c4 d e g }
\set Staff.clefPosition = #0
c'1
- % Here we go back to the normal clef:
+ % Return to the normal clef:
\set Staff.middleCPosition = #0
c'1
nesting-staves.ly
percent-repeat-count-visibility.ly
positioning-multi--measure-rests.ly
+positioning-text-markups-inside-slurs.ly
printing-a-repeat-sign-at-the-beginning-of-a-piece.ly
printing-metronome-and-rehearsal-marks-below-the-staff.ly
proportional-strict-notespacing.ly
\version "2.12.0"
\header {
- lsrtags = "expressive-marks, editorial-annotations, tweaks-and-overrides"
- texidoc = "Creating a delayed turn, where the lower note of the
- turn uses the accidental, requires several overrides. The
- @code{outside-staff-priority} property must be set to #f, as otherwise
- this would take precedence over the @code{avoid-slur property}. The
- value of @code{halign} is used to position the turn horizontally."
+ lsrtags = "expressive-marks, editorial-annotations,
+tweaks-and-overrides"
+
+ texidoc = "
+Creating a delayed turn, where the lower note of the
+turn uses the accidental, requires several overrides. The
+@code{outside-staff-priority} property must be set to @code{#f},
+as otherwise this would take precedence over the
+@code{avoid-slur property}. The value of @code{halign} is used
+to position the turn horizontally."
doctitle = "Creating a delayed turn"
}
}
\layout {
\context {
- \Staff
- \remove "Key_engraver"
+ \Staff
+ \remove "Key_engraver"
}
}
}
c1 f g c
}
}
-
\new FretBoards {
\chordmode {
c1 f g c
}
}
-
-
\new Voice \with {
- \consists Pitch_squash_engraver
- } \relative c'' {
- \improvisationOn
- c4 c8 c c4 c8 c
- f4 f8 f f4 f8 f
- g4 g8 g g4 g8 g
- c4 c8 c c4 c8 c
+ \consists "Pitch_squash_engraver"
+ } {
+ \relative c'' {
+ \improvisationOn
+ c4 c8 c c4 c8 c
+ f4 f8 f f4 f8 f
+ g4 g8 g g4 g8 g
+ c4 c8 c c4 c8 c
+ }
}
-
-
\new Voice = "melody" {
\relative c'' {
- \improvisationOff
c2 e4 e4
f2. r4
g2. a4
e4 c2.
}
}
-
\new Lyrics {
\lyricsto "melody" {
This is my song.
\once \override Staff.InstrumentName #'self-alignment-Y = #UP
\once \override Staff.InstrumentName #'Y-offset = #4
\once \override Staff.InstrumentName #'padding = #0.3
- \once \override Staff.InstrumentName #'stencil =
+ \once \override Staff.InstrumentName #'stencil =
#(lambda (grob)
(let* ((instrument-name (ly:grob-property grob 'long-text))
(layout (ly:output-def-clone (ly:grob-layout grob)))
(ly:output-def-set-variable! layout 'ragged-last #f)
(ly:output-def-set-variable! layout 'system-count 1)
(ly:score-add-output-def! score layout)
- (set! (ly:grob-property grob 'long-text)
+ (ly:grob-set-property! grob 'long-text
(markup #:score score))
(ly:system-start-text::print grob)))
#})
\set Score.skipBars = ##t
\key g \major
\time 4/4
-
- %make the staff lines invisible on staves
- \override Staff.BarLine #'transparent = ##t
+
% the actual music
\skip 1*8
\incipit \bassusIncipit
\bassusNotes
>>
+ \new Lyrics = "bassusLyrics" \lyricsto bassusNotes { \bassusLyrics }
>>
- \new Lyrics = "bassusLyrics" \lyricsto bassusNotes { \bassusLyrics }
- %% Keep the bass lyrics outside of the staff group to avoid bar lines
- %% between the lyrics.
>>
\layout {
\context {
\Score
- %% no bar lines in staves
+ %% no bar lines in staves or lyrics
\override BarLine #'transparent = ##t
}
- %% the next three instructions keep the lyrics between the bar lines
+ %% the next two instructions keep the lyrics between the bar lines
\context {
\Lyrics
- \consists "Bar_engraver"
- \override BarLine #'transparent = ##t
- }
- \context {
- \StaffGroup
+ \consists "Bar_engraver"
\consists "Separating_line_group_engraver"
}
\context {
\relative c'' {
\time 2/4
- << {
- \once \override Stem #'transparent = ##t
- \once \override Stem #'length = #8
- b8 ~ b\noBeam
- \once \override Stem #'transparent = ##t
- \once \override Stem #'length = #8
- g8 ~ g\noBeam
- }
- \\
- {
- b8 g g e
- } >>
+ <<
+ {
+ \once \override Stem #'transparent = ##t
+ \once \override Stem #'length = #8
+ b8 ~ b\noBeam
+ \once \override Stem #'transparent = ##t
+ \once \override Stem #'length = #8
+ g8 ~ g\noBeam
+ }
+ \\
+ {
+ b8 g g e
+ }
+ >>
}
texidoc = "
This example shows how to put crosses on stems. Mark the beginning
of a spoken section with the @code{\\speakOn} keyword, and end it
-with the @code{\\speakOff} keyword. Remember to end cross sections
-before entering any rest: this function also adds crosses to the
-invisible stems of rests.
+with the @code{\\speakOff} keyword.
"
doctitle = "Marking notes of spoken parts with a cross on the stem"
}
speakOn = {
\override Stem #'stencil = #(lambda (grob)
- (ly:stencil-combine-at-edge
- (ly:stem::print grob)
- Y
- (- (ly:grob-property grob 'direction))
- (grob-interpret-markup grob
- (markup #:hspace -1.025 #:fontsize -4
- #:musicglyph "noteheads.s2cross"))
- -2.3 0))
+ (let* ((x-parent (ly:grob-parent grob X))
+ (is-rest? (ly:grob? (ly:grob-object x-parent 'rest))))
+ (if is-rest?
+ empty-stencil
+ (ly:stencil-combine-at-edge
+ (ly:stem::print grob)
+ Y
+ (- (ly:grob-property grob 'direction))
+ (grob-interpret-markup grob
+ (markup #:hspace -1.025 #:fontsize -4
+ #:musicglyph "noteheads.s2cross"))
+ -2.3 0))))
}
speakOff = {
--- /dev/null
+\version "2.12.0"
+
+\header {
+ lsrtags = "pitches, text"
+ texidoc = "
+Internally, @code{\\ottava} sets the properties @code{ottavation}
+(for example, to @code{\"8va\"} or @code{\"8vb\"}) and
+@code{middleCPosition}. To override the text of the bracket, set
+@code{ottavation} after invoking @code{\\ottava}.
+"
+ doctitle = "Ottava text"
+}
+
+{
+ \ottava #1
+ \set Staff.ottavation = #"8"
+ c''1
+ \ottava #0
+ c'1
+ \ottava #1
+ \set Staff.ottavation = #"Text"
+ c''1
+}
By specifying the context, the effect of @code{beatGrouping} can be
limited to the context specified, and the values which may have
been set in higher-level contexts can be overridden. The
-@code{\set} commands must be placed @emph{after} all @code{\time}
+@code{\\set} commands must be placed @emph{after} all @code{\\time}
commands:
"
doctitle = "Specifying context with beatGrouping"
\new Voice {
\relative c' {
\voiceTwo
- \set Voice.beatGrouping = #'(1 3 3)
+ \set beatGrouping = #'(1 3 3)
f8 f f f f f f
}
}
#(define (naturalize-pitch p)
(let* ((o (ly:pitch-octave p))
(a (* 4 (ly:pitch-alteration p)))
- ; alteration, a, in quarter tone steps, for historical reasons
+ ; alteration, a, in quarter tone steps,
+ ; for historical reasons
(n (ly:pitch-notename p)))
(cond
((and (> a 1) (or (eq? n 6) (eq? n 2)))
(e (ly:music-property music 'element))
(p (ly:music-property music 'pitch)))
(if (pair? es)
- (ly:music-set-property!
+ (ly:music-set-property!
music 'elements
(map (lambda (x) (naturalize x)) es)))
(if (ly:music? e)
- (ly:music-set-property!
+ (ly:music-set-property!
music 'element
(naturalize e)))
(if (ly:pitch? p)
- (begin
- (set! p (naturalize-pitch p))
- (ly:music-set-property! music 'pitch p)))
+ (begin
+ (set! p (naturalize-pitch p))
+ (ly:music-set-property! music 'pitch p)))
music))
naturalizeMusic =
#(define-music-function (parser location m)
- (ly:music?)
- (naturalize m))
+ (ly:music?)
+ (naturalize m))
music = \relative c' { c4 d e g }
centrado) y @code{#DOWN} (o @code{#-1}, abajo).
Como podemos ver, esta propiedad se puede cambiar tantas veces
-como queramos. Utilice @code{\\once \\override} si no quiere que el
+como queramos. Utilice @code{\\once \\override} si no quiere que el
truco se aplique a toda la partitura.
"
doctitlees = "Añadir un bajo cifrado encima o debajo de las notas"
+
+ doctitlefr = "Ajout d'une basse chiffrée au-dessus ou au-dessous des notes"
--- /dev/null
+ texidocfr = "Ajout de doigtés à des tablatures"
+
+ doctitlefr = "
+L'ajout de doigtés à des tablatures s'obtient en conjuguant des
+@code{\\markup} et des @code{\\finger}.
+"
texidoces = "
Con algo de código de Scheme, se puede añadir fácilmente la fecha
actual a una partitura.
-
"
doctitlees = "Añadir la fecha actual a una partitura"
+
+ texidocfr = "
+Avec un peu de code Scheme, voici comment ajouter facilement
+la date du jour à votre partition.
+"
+
+ doctitlefr = "Ajout de la date du jour à une partition"
"
doctitlees = "Evitar colisiones entre digitaciones de acordes y barras de corchea"
+
+%% Translation of GIT committish: 98dc713cb34b498f145badf23d14957367a19ece
+ texidocfr = "
+Les doigtés et les numéros de cordes attachés à des notes seules
+évitent automatiquement les barres de ligature, mais ce n'est pas le cas par
+défaut pour les doigtés ou numéros de cordes attachés aux notes d'un
+accord. L'exemple qui suit montre comment ce comportement par défaut
+peut être corrigé.
+"
+ doctitlefr = "Éviter les collisions entre les doigtés d'accords et les ligatures"
Position_stem_segments_map stem_segments;
Real lt = me->layout ()->get_dimension (ly_symbol2scm ("line-thickness"));
+ /* There are two concepts of "rank" that are used in the following code.
+ The beam_rank is the vertical position of the beam (larger numbers are
+ closer to the noteheads). Beam_stem_segment.rank_, on the other hand,
+ is the horizontal position of the segment (this is incremented by two
+ for each stem; the beam segment on the right side of the stem has
+ a higher rank (by one) than its neighbour to the left). */
Slice ranks;
for (vsize i = 0; i < stems.size (); i++)
{
Direction d = LEFT;
do
{
+ // Find the maximum and minimum beam ranks.
+ // Given that RANKS is never reset to empty, the interval will always be
+ // smallest for the left beamlet of the first stem, and then it might grow.
+ // Do we really want this? (It only affects the tremolo gaps) --jneem
for (SCM s = index_get_cell (beaming, d);
scm_is_pair (s); s = scm_cdr (s))
{
Beam_segment current;
+ // Iterate over all of the segments of the current beam rank,
+ // merging the adjacent Beam_stem_segments into one Beam_segment
+ // when appropriate.
int vertical_count = (*i).first;
for (vsize j = 0; j < segs.size (); j++)
{
- /*
- event_dir == LEFT: left edge of a beamsegment.
- */
+ // Keeping track of the different directions here is a little tricky.
+ // segs[j].dir_ is the direction of the beam segment relative to the stem
+ // (ie. segs[j].dir_ == LEFT if the beam segment sticks out to the left of
+ // its stem) whereas event_dir refers to the edge of the beam segment that
+ // we are currently looking at (ie. if segs[j].dir_ == event_dir then we
+ // are looking at that edge of the beam segment that is furthest from its
+ // stem).
Direction event_dir = LEFT;
+ Beam_stem_segment const& seg = segs[j];
do
{
- bool on_line_bound = (segs[j].dir_ == LEFT) ? segs[j].stem_index_ == 0
- : segs[j].stem_index_ == stems.size() - 1;
+ Beam_stem_segment const& neighbor_seg = segs[j + event_dir];
+ // TODO: make names clearer? --jneem
+ // on_line_bound: whether the current segment is on the boundary of the WHOLE beam
+ // on_beam_bound: whether the current segment is on the boundary of just that part
+ // of the beam with the current beam_rank
+ bool on_line_bound = (seg.dir_ == LEFT) ? seg.stem_index_ == 0
+ : seg.stem_index_ == stems.size() - 1;
bool on_beam_bound = (event_dir == LEFT) ? j == 0 :
j == segs.size () - 1;
bool inside_stem = (event_dir == LEFT)
- ? segs[j].stem_index_ > 0
- : segs[j].stem_index_ + 1 < stems.size () ;
+ ? seg.stem_index_ > 0
+ : seg.stem_index_ + 1 < stems.size () ;
bool event = on_beam_bound
- || abs (segs[j].rank_ - segs[j+event_dir].rank_) > 1
- || (abs (vertical_count) >= segs[j].max_connect_
- || abs (vertical_count) >= segs[j + event_dir].max_connect_);
+ || abs (seg.rank_ - neighbor_seg.rank_) > 1
+ || (abs (vertical_count) >= seg.max_connect_
+ || abs (vertical_count) >= neighbor_seg.max_connect_);
if (!event)
+ // Then this edge of the current segment is irrelevent because it will
+ // be connected with the next segment in the event_dir direction.
continue;
current.vertical_count_ = vertical_count;
- current.horizontal_[event_dir] = segs[j].stem_x_;
- if (segs[j].dir_ == event_dir)
+ current.horizontal_[event_dir] = seg.stem_x_;
+ if (seg.dir_ == event_dir)
+ // then we are examining the edge of a beam segment that is furthest
+ // from its stem.
{
if (on_line_bound
&& me->get_bound (event_dir)->break_status_dir ())
}
else
{
- Real notehead_width =
- Stem::duration_log (segs[j].stem_) == 1
- ? 1.98
- : 1.32; // URG.
-
+ Grob *stem = stems[seg.stem_index_];
+ Drul_array<Real> beamlet_length =
+ robust_scm2interval (stem->get_property ("beamlet-default-length"), Interval (1.1, 1.1));
+ Drul_array<Real> max_proportion =
+ robust_scm2interval (stem->get_property ("beamlet-max-length-proportion"), Interval (0.75, 0.75));
+ Real length = beamlet_length[seg.dir_];
if (inside_stem)
{
- Grob *neighbor_stem = stems[segs[j].stem_index_ + event_dir];
- Real neighbor_stem_x
- = neighbor_stem->relative_coordinate (commonx, X_AXIS);
+ Grob *neighbor_stem = stems[seg.stem_index_ + event_dir];
+ Real neighbor_stem_x = neighbor_stem->relative_coordinate (commonx, X_AXIS);
- notehead_width = min (notehead_width,
- fabs (neighbor_stem_x - segs[j].stem_x_)/2.5);
+ length = min (length,
+ fabs (neighbor_stem_x - seg.stem_x_) * max_proportion[seg.dir_]);
}
- current.horizontal_[event_dir] += event_dir * notehead_width;
+ current.horizontal_[event_dir] += event_dir * length;
}
}
else
+ // we are examining the edge of a beam segment that is closest
+ // (ie. touching, unless there is a gap) its stem.
{
- current.horizontal_[event_dir] += event_dir * segs[j].width_/2;
- if (segs[j].gapped_)
+ current.horizontal_[event_dir] += event_dir * seg.width_/2;
+ if (seg.gapped_)
{
current.horizontal_[event_dir] -= event_dir * gap_length;
- if (Stem::is_invisible (segs[j].stem_))
+ if (Stem::is_invisible (seg.stem_))
{
/*
Need to do this in case of whole notes. We don't want the
heads to collide with the beams.
*/
- extract_grob_set (segs[j].stem_, "note-heads", heads);
+ extract_grob_set (seg.stem_, "note-heads", heads);
for (vsize k = 0; k < heads.size (); k ++)
current.horizontal_[event_dir]
#include "config.hh"
+#include "file-name.hh"
#include "file-path.hh"
#include "international.hh"
#include "main.hh"
(yy_buffer_stack != 0 ? yy_buffer_stack[yy_buffer_stack_top] : 0)
#endif
+extern bool relative_includes;
+
Includable_lexer::Includable_lexer ()
{
#if HAVE_FLEXLEXER_YY_CURRENT_BUFFER
void
Includable_lexer::new_input (string name, Sources *sources)
{
- Source_file *file = sources->get_file (&name);
+ string current_dir = dir_name (main_input_name_);
+ if (relative_includes)
+ current_dir = include_stack_.size () ? dir_name (include_stack_.back ()->name_string ()) : "";
+
+ Source_file *file = sources->get_file (name, current_dir);
if (!file)
{
string msg = _f ("cannot find file: `%s'", name);
msg += "\n";
msg += _f ("(search path: `%s')",
- sources->path_->to_string ().c_str ());
+ (current_dir.length () ? (current_dir + PATHSEP) : "") + sources->path_->to_string ().c_str ());
LexerError (msg.c_str ());
return;
}
state_stack_.push_back (yy_current_buffer);
if (be_verbose_global)
- progress_indication (string ("[") + name);
+ progress_indication (string ("[") + file->name_string ());
include_stack_.push_back (file);
Includable_lexer ();
~Includable_lexer ();
+ string main_input_name_;
/// store dependencies for Makefile stuff.
vector<string> file_name_strings_;
int hidden_state_;
public:
vector<int> extra_token_types_;
- string main_input_name_;
void *lexval;
Input *lexloc;
bool is_main_input_;
Sources ();
~Sources ();
- Source_file *get_file (string *file_name);
- Source_file *get_sourcefile (char const *);
+ Source_file *get_file (string file_name, string const& currentpath);
void add (Source_file *sourcefile);
void set_path (File_path *);
file name. */
File_name out_file_name (file_name);
- global_path.append (out_file_name.dir_);
-
out_file_name.ext_ = "";
out_file_name.root_ = "";
if (ly_get_option (ly_symbol2scm ("gui")) != SCM_BOOL_T
bool debug_property_callbacks;
bool debug_page_breaking_scoring;
+bool relative_includes;
+
/*
Backwards compatibility.
*/
/* ignore input value. */
val = ly_string2scm (lilypond_datadir);
}
+ else if (var == ly_symbol2scm ("relative-includes"))
+ {
+ relative_includes = to_boolean (val);
+ val = scm_from_bool (to_boolean (val));
+ }
scm_hashq_set_x (option_hash, var, val);
#include "sources.hh"
+#include "config.hh"
#include "source-file.hh"
+#include "file-name.hh"
#include "file-path.hh"
Sources::Sources ()
}
/**
- open a file
+ Open a file. If the name is not absolute, look in CURRENT_DIR first.
+ Afterwards, check the rest of the path_.
- File_string the file to be opened, name might be changed if it is
- found in a search path.
+ FILE_STRING the name of the file to be opened.
+ CURRENT_DIR a path to a directory, either absolute or relative to the
+ working directory.
*/
Source_file *
-Sources::get_file (string *file_string) //UGH
-{
- if (*file_string != "-" && path_)
+Sources::get_file (string file_string, string const& current_dir)
+{
+ if (file_string != "-")
{
- string file_string_o = path_->find (*file_string);
- if ((file_string_o == "") && (*file_string != ""))
- return 0;
- *file_string = file_string_o;
+ // First, check for a path relative to the directory of the
+ // file currently being parsed.
+ if (current_dir.length ()
+ && file_string.length ()
+ && !File_name (file_string).is_absolute ()
+ && is_file (current_dir + DIRSEP + file_string))
+ file_string = current_dir + DIRSEP + file_string;
+
+ // Otherwise, check the rest of the path.
+ else if (path_)
+ {
+ string file_string_o = path_->find (file_string);
+ if ((file_string_o == "") && (file_string != ""))
+ return 0;
+
+ file_string = file_string_o;
+ }
}
- Source_file *f = new Source_file (*file_string);
+
+ Source_file *f = new Source_file (file_string);
add (f);
return f;
}
"avoid-note-head "
"beam "
"beaming "
+ "beamlet-default-length "
+ "beamlet-max-length-proportion "
"default-direction "
"details "
"direction "
\Voice
\name "GregorianTranscriptionVoice"
\alias "Voice"
-
+
%% Removing ligature bracket engraver without replacing it by some
%% other ligature engraver would cause a "Junking event: `LigatureEvent'"
%% warning for every "\[" and "\]". Therefore, we make the grob
\consists "Mensural_ligature_engraver"
%% Set default head for notes outside of \[ \].
- \override NoteHead #'style = #'petrucci
+ \override NoteHead #'style = #'mensural
+ \override Rest #'style = #'mensural
%% There are no beams in mensural notation.
autoBeaming = ##f
%% FIXME: unit on StaffSymbol's width should be \linewidth.
%% \override StaffSymbol #'width = #60.0
- %% Choose petrucci g clef on 2nd line as default.
- clefGlyph = #"clefs.petrucci.g"
+ %% Choose mensural g clef on 2nd line as default.
+ clefGlyph = #"clefs.mensural.g"
middleCClefPosition = #-6
middleCPosition = #-6
clefPosition = #-2
%% #(set-accidental-style 'forget))
extraNatural = ##f
autoAccidentals = #`(Staff ,(make-accidental-rule 'same-octave -1))
- autoCautionaries = #'()
+ autoCautionaries = #'()
printKeyCancellation = ##f
}
#
msgid ""
msgstr ""
-"Project-Id-Version: lilypond 2.11.57\n"
+"Project-Id-Version: lilypond 2.12.0\n"
"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-08-23 18:49+0200\n"
-"PO-Revision-Date: 2008-12-08 21:17+0200\n"
+"POT-Creation-Date: 2008-12-20 11:58+0100\n"
+"PO-Revision-Date: 2008-12-31 17:51+0200\n"
"Last-Translator: Till Rettig <till.rettig@gmx.de>\n"
"Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
"MIME-Version: 1.0\n"
msgid "%s has been replaced by %s"
msgstr "%s wurde durch %s ersetzt"
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:48 lilypond-book.py:82
+#: 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"
msgid "\\put-adjacent axis dir markup markup."
msgstr "\\put-adjacent Achse Richtung Beschriftung Beschriftung."
+#: convertrules.py:2832
+msgid "re-definition of InnerStaffGroup.\n"
+msgstr "Neudefinition von InnerStaffGroup.\n"
+
+#: convertrules.py:2838
+msgid "re-definition of InnerChoirStaff.\n"
+msgstr "Neudefinition von InnerChoirStaff.\n"
+
+#: convertrules.py:2851
+msgid "stringTuning must be added to addChordShape call.\n"
+msgstr "stringTuning·muss zu einem·addChordShape -Aufruf hinzugefügt werden.\n"
+
+#: convertrules.py:2857
+msgid "stringTuning must be added to chord-shape call.\n"
+msgstr "stringTuning muss zu dem·chord-shape -Aufruf hinzugefügt werden.\n"
+
#: fontextract.py:25
#, python-format
msgid "Scanning %s"
msgid "Writing fonts to %s"
msgstr "Schreiben der Schriftarten nach %s"
-#: lilylib.py:101 lilylib.py:152
+#: lilylib.py:91 lilylib.py:142
#, python-format
msgid "Invoking `%s'"
msgstr "`%s' wird aufgerufen"
-#: lilylib.py:103 lilylib.py:154
+#: lilylib.py:93 lilylib.py:144
#, python-format
msgid "Running %s..."
msgstr "%s wird ausgeführt..."
-#: lilylib.py:219
+#: lilylib.py:209
#, python-format
msgid "Usage: %s"
msgstr "Aufruf: %s"
-#: musicexp.py:585
+#: musicexp.py:215 musicexp.py:220
+msgid "Language does not support microtones contained in the piece"
+msgstr "Die Sprache unterstützt nicht die Mikrotöne in diesem Stück"
+
+#: musicexp.py:482
+msgid "Tuplet brackets of curved shape are not correctly implemented"
+msgstr "N-tolen-Klammern mit gekrümmten Klammern sind nicht richtig implementiert"
+
+#. 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 "N-tolen-Klammern, die beide Notendauern darstellen, sind nicht implementiert, benutze Standard"
+
+#: musicexp.py:656
#, python-format
msgid "unable to set the music %(music)s for the repeat %(repeat)s"
msgstr "kann die Noten %(music)s für die Wiederholung %(repeat)s nicht setzen"
-#: musicexp.py:594
+#: musicexp.py:665
msgid "encountered repeat without body"
msgstr "Wiederholung ohne Body angetroffen"
-#: musicxml.py:13 convert-ly.py:51 lilypond-book.py:85 warn.cc:54 input.cc:96
+#. no self.elements!
+#: musicexp.py:835
+#, python-format
+msgid "Grace note with no following music: %s"
+msgstr "Verzierungsnoten ohne folgende Noten: %s"
+
+#: musicexp.py:997
+#, python-format
+msgid "Invalid octave shift size found: %s. Using no shift."
+msgstr "Ungültige Oktavenversetzungsgröße gefunden: %s. Versetzung wird nicht angewendet."
+
+#: musicexp.py:1455
+#, python-format
+msgid "Unable to convert alteration %s to a lilypond expression"
+msgstr "Kann Alteration %s nicht in einen LilyPond-Ausdruck umwandeln"
+
+#: 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 "Fehler: %s"
-#: musicxml.py:298
-msgid "requested time signature, but time sig is unknown"
-msgstr "Taktangabe angefragt, aber Taktart ist unbekannt"
+#. TODO: Handle pieces without a time signature!
+#: musicxml.py:357
+msgid "Senza-misura time signatures are not yet supported!"
+msgstr "Senza-misura-Taktarten sind noch nicht unterstützt!"
+
+#: musicxml.py:375
+msgid "Unable to interpret time signature! Falling back to 4/4."
+msgstr "Unfähig, die Taktart zu interpretieren! Benutze 4/4-Takt."
-#: musicxml.py:354
+#: musicxml.py:431
#, python-format
-msgid "Encountered note at %s with %s duration (no <type> element):"
-msgstr "Note bei %s mit Dauer %s angetroffen (kein <type>-Element):"
+msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
+msgstr "Tonartalterationsoktave für eine nicht existente Alteration Nr. %s angegeben, mögliche Nummern: %s!"
-#: musicxml.py:388
+#: musicxml.py:519
#, python-format
msgid "Unable to find instrument for ID=%s\n"
msgstr "Kann kein Instrument für ID=%s finden\n"
-#: abc2ly.py:1342 convert-ly.py:72 lilypond-book.py:109 midi2ly.py:846
+#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
#, python-format
msgid "%s [OPTION]... FILE"
msgstr "%s [OPTIONEN]... DATEI"
-#: abc2ly.py:1343
+#: abc2ly.py:1342
#, python-format
msgid ""
"abc2ly converts ABC music files (see\n"
"abc2ly wandelt ABC-Musikdateien in LilyPond-Eingabe um\n"
"(siehe auch %s).\n"
-#: abc2ly.py:1351 convert-ly.py:79 etf2ly.py:1190 lilypond-book.py:195
-#: midi2ly.py:882 musicxml2ly.py:2185 main.cc:161
+#: 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 "Versionsnummer ausgeben und beenden"
-#: abc2ly.py:1355 convert-ly.py:83 etf2ly.py:1186 lilypond-book.py:126
-#: midi2ly.py:861 musicxml2ly.py:2167 main.cc:150
+#: 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 "diese Hilfe anzeigen und beenden"
-#: abc2ly.py:1357 etf2ly.py:1191 midi2ly.py:865
+#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
msgid "write output to FILE"
msgstr "Ausgabe in DATEI schreiben"
-#: abc2ly.py:1359
+#: abc2ly.py:1358
msgid "be strict about success"
msgstr "bzgl. Erfolg streng sein"
-#: abc2ly.py:1361
+#: abc2ly.py:1360
msgid "preserve ABC's notion of beams"
msgstr "ABCs Prinzip der Balken beibehalten"
-#: abc2ly.py:1363 convert-ly.py:120 etf2ly.py:1199 lilypond-book.py:202
-#: midi2ly.py:894 musicxml2ly.py:2240
-msgid "Report bugs via"
-msgstr "Melden Sie Fehler an"
+#. 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 "Melden Sie Fehler an %s"
-#: convert-ly.py:31
+#: 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."
"LilyPond-Eingabe auf neuere Version bringen. Standardmäßig wird von der\n"
"Version vom Kommando \\version zur aktuellen LilyPond-Version gegangen."
-#: convert-ly.py:33 lilypond-book.py:59
+#: convert-ly.py:35 lilypond-book.py:71
msgid "Examples:"
msgstr "Beispiele:"
-#: convert-ly.py:67 etf2ly.py:1173 lilypond-book.py:105 midi2ly.py:77
+#: 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 "Vertrieben unter den Bedingungen der GNU General Public License."
-#: convert-ly.py:68 etf2ly.py:1174 lilypond-book.py:106 midi2ly.py:78
+#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
msgid "It comes with NO WARRANTY."
msgstr "Es wird OHNE GARANTIE ausgeliefert."
-#: convert-ly.py:87 convert-ly.py:114
+#: convert-ly.py:89 convert-ly.py:116
msgid "VERSION"
msgstr "VERSION"
-#: convert-ly.py:89
+#: convert-ly.py:91
msgid "start from VERSION [default: \\version found in file]"
msgstr "bei VERSION anfangen [Standard: \\version in Datei gefunden]"
-#: convert-ly.py:92
+#: convert-ly.py:94
msgid "edit in place"
msgstr "vor Ort ändern"
-#: convert-ly.py:96
+#: convert-ly.py:98
msgid "do not add \\version command if missing"
msgstr "keinen \\version-Befehl hinzufügen, falls es fehlt"
-#: convert-ly.py:102
+#: convert-ly.py:104
#, python-format
msgid "force updating \\version number to %s"
msgstr "erzwinge Aktualisierung von \\version nach %s"
-#: convert-ly.py:108
+#: convert-ly.py:110
#, python-format
msgid "show rules [default: -f 0, -t %s]"
msgstr "Regeln anzeigen [Standard: -f 0, -t %s]"
-#: convert-ly.py:113
+#: convert-ly.py:115
#, python-format
msgid "convert to VERSION [default: %s]"
msgstr "zu VERSION konvertieren [Standard: %s]"
-#: convert-ly.py:160
+#: convert-ly.py:163
msgid "Applying conversion: "
msgstr "Anwenden der Umwandlung: "
-#: convert-ly.py:173
+#: convert-ly.py:176
msgid "Error while converting"
msgstr "Fehler beim Umwandeln"
-#: convert-ly.py:175
-msgid "Stopping at last succesful rule"
+#: convert-ly.py:178
+msgid "Stopping at last successful rule"
msgstr "Abbruch bei letzter erfolgreicher Regel"
-#: convert-ly.py:196
+#: convert-ly.py:199
#, python-format
msgid "Processing `%s'... "
msgstr "»%s« wird verarbeitet..."
-#: convert-ly.py:286 relocate.cc:362 source-file.cc:59
+#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
#, c-format, python-format
msgid "cannot open file: `%s'"
msgstr "Datei kann nicht geöffnet werden: »%s«"
-#: convert-ly.py:293
+#: convert-ly.py:296
#, python-format
msgid "cannot determine version for `%s'. Skipping"
msgstr "Version für »%s« kann nicht erkannt werden. Wird übersprungen"
"verwendetes Format. etf2ly wandelt eine Teilmenge von ETF in\n"
"eine von Lilypond verwendbare Datei um.\n"
-#: etf2ly.py:1192 midi2ly.py:866 musicxml2ly.py:2233 main.cc:154 main.cc:159
+#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
msgid "FILE"
msgstr "DATEI"
-#: etf2ly.py:1194 lilypond-book.py:198 midi2ly.py:883 main.cc:163
+#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
msgid "show warranty and copyright"
msgstr "Informationen zu Gewährleistung und Copyright anzeigen"
-#: lilypond-book.py:57
+#: lilypond-book.py:69
msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
msgstr "LilyPond-Schnipsel in Mischdatei (HTML, LaTeX, texinfo oder DocBook) verarbeiten"
-#: lilypond-book.py:64
+#: lilypond-book.py:76
msgid "BOOK"
msgstr "BUCH"
-#: lilypond-book.py:72
+#: lilypond-book.py:84
#, python-format
msgid "Exiting (%d)..."
msgstr "Beenden (%d)..."
-#: lilypond-book.py:103
+#: lilypond-book.py:115
#, python-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s bei"
-#: lilypond-book.py:113
+#: lilypond-book.py:125
msgid "FILTER"
msgstr "FILTER"
-#: lilypond-book.py:116
+#: lilypond-book.py:128
msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
msgstr "Auszüge durch FILTER [Standard: »convert-ly -n -«] leiten (Pipe)"
-#: lilypond-book.py:120
+#: lilypond-book.py:132
msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
msgstr "Ausgabeformat FORMAT (texi [Vorgabe], texi-html, latex, html, docbook) verwenden"
-#: lilypond-book.py:121
+#: lilypond-book.py:133
msgid "FORMAT"
msgstr "FORMAT"
-#: lilypond-book.py:128
+#: lilypond-book.py:140
msgid "add DIR to include path"
msgstr "VERZ zum Einfügepfad hinzufügen"
-#: lilypond-book.py:129 lilypond-book.py:136 lilypond-book.py:154
-#: lilypond-book.py:160 lilypond-book.py:166 lilypond-book.py:172 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 "VERZ"
-#: lilypond-book.py:134
+#: lilypond-book.py:146
msgid "format Texinfo output so that Info will look for images of music in DIR"
msgstr "Formatiere Texinfo-Ausgabe so, dass Info nach Bildern und Noten im VERZ suchen kann"
-#: lilypond-book.py:141
+#: lilypond-book.py:153
msgid "run executable PROG instead of latex"
msgstr "benutze ausführbare Datei PROG anstelle von latex"
-#: lilypond-book.py:142
+#: lilypond-book.py:154
msgid "PROG"
msgstr "PROG"
-#: lilypond-book.py:147
+#: lilypond-book.py:159
msgid "PAD"
msgstr "FÜLLUNG"
-#: lilypond-book.py:149
+#: lilypond-book.py:161
msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
msgstr "verschiebe linken Rand der Noten um an den Noten auszurichten, obwohl Taktnummer ungerade ist (in mm)"
-#: lilypond-book.py:153
+#: lilypond-book.py:165
msgid "write output to DIR"
msgstr "Ausgabe in DATEI schreiben"
-#: lilypond-book.py:159
+#: lilypond-book.py:171
msgid "do not fail if no lilypond output is found"
msgstr "nicht abbrechen wenn keine lilypond-Ausgabe gefunden wird"
-#: lilypond-book.py:165
+#: lilypond-book.py:177
msgid "do not fail if no PNG images are found for EPS files"
msgstr "nicht abbrechen wenn, keine PNG-Bilder für EPS-Dateien gefunden werden"
-#: lilypond-book.py:171
+#: lilypond-book.py:183
msgid "write lily-XXX files to DIR, link into --output dir"
msgstr "schreibe lily-XXX-Dateien nach VERZ, verlinke nach --output dir"
-#: lilypond-book.py:176
+#: lilypond-book.py:188
msgid "COMMAND"
msgstr "BEFEHL"
-#: lilypond-book.py:177
+#: lilypond-book.py:189
msgid "process ly_files using COMMAND FILE..."
msgstr "ly_files mit BEFEHL DATEI... verarbeiten"
-#: lilypond-book.py:184
+#: lilypond-book.py:196
msgid "create PDF files for use with PDFTeX"
msgstr "PDF-Dateien für Verwendung mit PDFTeX erzeugen"
-#: lilypond-book.py:187 midi2ly.py:876 musicxml2ly.py:2190 main.cc:162
+#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
msgid "be verbose"
msgstr "wortreich sein"
-#: lilypond-book.py:825
+#: lilypond-book.py:871
#, python-format
msgid "file not found: %s"
msgstr "Datei `%s' nicht gefunden"
-#: lilypond-book.py:1087
+#: lilypond-book.py:1142
#, python-format
msgid "deprecated ly-option used: %s=%s"
msgstr "veraltete ly-option verwendet: %s=%s"
-#: lilypond-book.py:1089
+#: lilypond-book.py:1144
#, python-format
msgid "compatibility mode translation: %s=%s"
msgstr "Übersetzung im Kompatibilitätsmodus: %s=%s"
-#: lilypond-book.py:1092
+#: lilypond-book.py:1147
#, python-format
msgid "deprecated ly-option used: %s"
msgstr "veraltete ly-option verwendet: %s"
-#: lilypond-book.py:1094
+#: lilypond-book.py:1149
#, python-format
msgid "compatibility mode translation: %s"
msgstr "Übersetzung im Kompatibilitätsmodus: %s"
-#: lilypond-book.py:1112
+#: lilypond-book.py:1167
#, python-format
msgid "ignoring unknown ly option: %s"
msgstr "unbekannte Option ignoriert: %s"
-#: lilypond-book.py:1538
+#: lilypond-book.py:1604
#, python-format
msgid "Opening filter `%s'"
msgstr "Filter »%s« wird geöffnet"
-#: lilypond-book.py:1555
+#: lilypond-book.py:1621
#, python-format
msgid "`%s' failed (%d)"
msgstr "»%s« gescheitert (%d)"
-#: lilypond-book.py:1556
+#: lilypond-book.py:1622
msgid "The error log is as follows:"
msgstr "Das Fehlerprotokoll lautet wie folgt:"
-#: lilypond-book.py:1618
+#: lilypond-book.py:1684
msgid "cannot find \\begin{document} in LaTeX document"
msgstr "\\begin{document} im LaTeX-Dokument kann nicht gefunden werden"
-#: lilypond-book.py:1718
+#: lilypond-book.py:1784
msgid "Writing snippets..."
msgstr "Auszüge werden geschrieben..."
-#: lilypond-book.py:1724
+#: lilypond-book.py:1790
msgid "Processing..."
msgstr "Verarbeiten..."
-#: lilypond-book.py:1730
+#: lilypond-book.py:1796
msgid "All snippets are up to date..."
msgstr "Alle Auszüge sind auf dem neuesten Stand..."
-#: lilypond-book.py:1764
+#: lilypond-book.py:1830
#, python-format
msgid "cannot determine format for: %s"
msgstr "Format für %s kann nicht ermittelt werden"
-#: lilypond-book.py:1775
+#: lilypond-book.py:1841
#, python-format
msgid "%s is up to date."
msgstr "%s ist aktuell."
-#: lilypond-book.py:1789
+#: lilypond-book.py:1855
#, python-format
msgid "Writing `%s'..."
msgstr "»%s« wird geschrieben..."
-#: lilypond-book.py:1847
+#: lilypond-book.py:1913
msgid "Output would overwrite input file; use --output."
msgstr "Ausgabe würde Eingabedatei überschreiben; verwenden Sie --output."
-#: lilypond-book.py:1851
+#: lilypond-book.py:1917
#, python-format
msgid "Reading %s..."
msgstr "%s lesen..."
-#: lilypond-book.py:1870
+#: lilypond-book.py:1937
msgid "Dissecting..."
msgstr "Zerlegen..."
-#: lilypond-book.py:1886
+#: lilypond-book.py:1953
#, python-format
msgid "Compiling %s..."
msgstr "%s kompilieren..."
-#: lilypond-book.py:1895
+#: lilypond-book.py:1962
#, python-format
msgid "Processing include: %s"
msgstr "Einfügung wird verarbeitet: %s"
-#: lilypond-book.py:1907
+#: lilypond-book.py:1974
#, python-format
msgid "Removing `%s'"
msgstr "»%s« wird gelöscht"
-#: midi2ly.py:85 lily-library.scm:620 lily-library.scm:629
+#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
msgid "warning: "
msgstr "Warnung: "
-#: midi2ly.py:88 midi2ly.py:907
+#: midi2ly.py:87 midi2ly.py:907
msgid "error: "
msgstr "Fehler: "
-#: midi2ly.py:89
+#: midi2ly.py:88
msgid "Exiting... "
msgstr "Beenden... "
-#: midi2ly.py:834
+#: midi2ly.py:833
#, python-format
msgid "%s output to `%s'..."
msgstr "%s nach »%s« ausgeben..."
-#: midi2ly.py:847
+#: midi2ly.py:846
#, python-format
msgid "Convert %s to LilyPond input.\n"
msgstr "%s in LilyPond-Quelltext umwandeln.\n"
-#: midi2ly.py:852
+#: midi2ly.py:851
msgid "print absolute pitches"
msgstr "Absolute Tonhöhen ausgeben"
-#: midi2ly.py:854 midi2ly.py:869
+#: midi2ly.py:853 midi2ly.py:868
msgid "DUR"
msgstr "DAUER"
-#: midi2ly.py:855
+#: midi2ly.py:854
msgid "quantise note durations on DUR"
msgstr "Notenlängen auf DAUER quantisieren"
-#: midi2ly.py:858
+#: midi2ly.py:857
msgid "print explicit durations"
msgstr "Explizite Notenlängen ausgeben"
-#: midi2ly.py:862
+#: midi2ly.py:861
msgid "set key: ALT=+sharps|-flats; MINOR=1"
msgstr "Tonart setzen: VORZ=+Kreuze|-B's; MOLL=1"
-#: midi2ly.py:863
+#: midi2ly.py:862
msgid "ALT[:MINOR]"
msgstr "VORZ[:MOLL]"
-#: midi2ly.py:868
+#: midi2ly.py:867
msgid "quantise note starts on DUR"
msgstr "Notenanfänge auf DAUER quantisieren"
-#: midi2ly.py:871
+#: midi2ly.py:870
msgid "DUR*NUM/DEN"
msgstr "DAUER*ZÄHLER/NENNER"
# tuplet = Wertaufteilung nach: Peter Giger: Die Kunst des Rhythmus, Seite 25
-#: midi2ly.py:874
+#: midi2ly.py:873
msgid "allow tuplet durations DUR*NUM/DEN"
msgstr "Wertaufteilungsdauern DAUER*ZÄHLER/NENNER erlauben"
-#: midi2ly.py:886
+#: midi2ly.py:885
msgid "treat every text as a lyric"
msgstr "Jeden Text als Liedtext behandeln"
-#: midi2ly.py:889
+#: midi2ly.py:888
msgid "Examples"
msgstr "Beispiele"
msgid "no files specified on command line."
msgstr "Keine Dateien auf der Kommandozeile angegeben."
-#: musicxml2ly.py:213
+#: 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 "Die Datei wurde von Dolet 3.4 für SIbelius erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
-#: musicxml2ly.py:229 musicxml2ly.py:231
+#: 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 "Die Datei wurde von Noteworthy·Composer's·nwc2xml erstellt und enthält falsche Balkeninformation. Alle Balkeninformation in der MusicXML-Datei wird ignoriert"
+
+#: musicxml2ly.py:362 musicxml2ly.py:364
#, python-format
msgid "Unprocessed PartGroupInfo %s encountered"
msgstr "Unverarbeitetes PartGroupInfo %s angetroffen"
-#: musicxml2ly.py:471
+#: musicxml2ly.py:594
+#, python-format
+msgid "Encountered note at %s without type and duration (=%s)"
+msgstr "Note bei %s ohne Art und Dauer angetroffen (=%s)"
+
+#: musicxml2ly.py:613
#, python-format
msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
msgstr "Rationale Dauer mit Nenner %s angetroffen, kann nicht in lilypond-Dauer umgewandelt werden"
-#: musicxml2ly.py:654
+#: musicxml2ly.py:868
+msgid "Unable to extract key signature!"
+msgstr "Kann die Tonart nicht extrahieren!"
+
+#: musicxml2ly.py:895
#, python-format
-msgid "unknown mode %s, expecting 'major' or 'minor'"
-msgstr "unbekannter Modus %s, 'major' (Dur) oder 'minor' (Moll) wird erwartet"
+msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+msgstr "unbekannter Modus %s, 'major' (Dur) oder 'minor' (Moll) oder eine Kirchentonart wird erwartet"
-#: musicxml2ly.py:692
+#: musicxml2ly.py:968
#, python-format
msgid "Encountered unprocessed marker %s\n"
msgstr "Unverarbeiteter Marker %s angetroffen\n"
-#: musicxml2ly.py:786
+#: musicxml2ly.py:1062
#, python-format
msgid "unknown span event %s"
msgstr "Unbekannte Spannerklasse »%s«"
-#: musicxml2ly.py:796
+#: musicxml2ly.py:1072
#, python-format
msgid "unknown span type %s for %s"
msgstr "Unbekannter Spannertyp %s für %s"
-#: musicxml2ly.py:1222
+#: musicxml2ly.py:1498
msgid "Unknown metronome mark, ignoring"
msgstr "Unbekanntes Metronom-Zeichen, wird ignoriert"
#. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1227
+#: musicxml2ly.py:1503
msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
msgstr "Metronommakern mit komplexen Beziehungen (<metronome-note> in MusicXML) sind noch nicht implementiert."
-#: musicxml2ly.py:1383
+#: musicxml2ly.py:1703
#, python-format
msgid "Unable to convert chord type %s to lilypond."
msgstr "Kann Akkordtyp %s nicht nach lilypond umwandeln"
-#: musicxml2ly.py:1529
+#: musicxml2ly.py:1849
#, python-format
msgid "drum %s type unknown, please add to instrument_drumtype_dict"
msgstr "Schlagzeug %s Typ unbekannt, bitte zum instrument_drumtype_dict hinzufügen"
-#: musicxml2ly.py:1533
+#: musicxml2ly.py:1853
msgid "cannot find suitable event"
msgstr "passendes Ereignis kann nicht gefunden werden"
-#: musicxml2ly.py:1623
+#: musicxml2ly.py:1994
#, python-format
-msgid "Negative skip %s"
-msgstr "Negativer Sprung (skip) %s"
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Negativer Sprung (skip) %s (von Position %s bis %s)"
-#: musicxml2ly.py:1775
+#: musicxml2ly.py:2134
#, python-format
msgid "Negative skip found: from %s to %s, difference is %s"
msgstr "Negativer Sprung (skip) gefunden: von %s bis %s, Differenz ist %s"
-#: musicxml2ly.py:1802
+#: musicxml2ly.py:2205
#, python-format
msgid "unexpected %s; expected %s or %s or %s"
msgstr "unerwartetes %s; %s oder %s oder %s erwartet"
-#: musicxml2ly.py:1912
-msgid "cannot have two simultaneous slurs"
-msgstr "Zwei gleichzeitige Legatobögen haben"
+#: musicxml2ly.py:2311
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Auf schließenden Legatobogen gestoßen, aber es wurde kein Bogen begonnen"
-#: musicxml2ly.py:2050
+#: musicxml2ly.py:2314
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "Zwei gleichzeitige (schließende) Legatobögen sind nicht möglich"
+
+#: musicxml2ly.py:2324
+msgid "Cannot have a slur inside another slur"
+msgstr "Ein Legatobogen innerhalb eines anderen Legatobogens ist nicht möglich"
+
+#: musicxml2ly.py:2327
+msgid "Cannot have two simultaneous slurs"
+msgstr "Zwei gleichzeitige Legatobögen sind nicht möglich"
+
+#: musicxml2ly.py:2455
#, python-format
msgid "cannot simultaneously have more than one mode: %s"
msgstr "Kann nicht gleichzeitig mehr als einen Modus haben: %s"
-#: musicxml2ly.py:2148
+#: musicxml2ly.py:2553
msgid "Converting to LilyPond expressions..."
msgstr "In LilyPond-Ausdrücke umwandeln..."
-#: musicxml2ly.py:2159
+#: musicxml2ly.py:2564
msgid "musicxml2ly [OPTION]... FILE.xml"
msgstr "musicxml2ly [Optionen]... DATEI.xml"
-#: musicxml2ly.py:2161
+#: 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"
"Wandle MusicXML-Datei von DAT.xml nach LilyPond-Eingabe um.\n"
"Wenn der angegebene Dateiname - ist, list musicxml2ly von der Kommandozeile.\n"
-#: musicxml2ly.py:2171
+#: musicxml2ly.py:2576
msgid ""
"Copyright (c) 2005--2008 by\n"
" Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
"····Jan·Nieuwenhuizen·<janneke@gnu.org>·and\n"
"····Reinhold·Kainhofer·<reinhold@kainhofer.com>\n"
-#: musicxml2ly.py:2196
+#: musicxml2ly.py:2601
msgid "use lxml.etree; uses less memory and cpu time"
msgstr "lxml.etree verwenden; benötigt weniger Speicher und Prozessorzeit"
-#: musicxml2ly.py:2202
+#: musicxml2ly.py:2607
msgid "input file is a zip-compressed MusicXML file"
msgstr "Eingabedatei ist eine zip-komprimierte MusicXML-Datei"
-#: musicxml2ly.py:2208
+#: musicxml2ly.py:2613
msgid "convert pitches in relative mode (default)"
msgstr "Tonhöhen im relativen Modus konvertieren (Standard)"
-#: musicxml2ly.py:2213
+#: musicxml2ly.py:2618
msgid "convert pitches in absolute mode"
msgstr "Tonhöhen im absoluten Modus konvertieren"
-#: musicxml2ly.py:2216
+#: musicxml2ly.py:2621
msgid "LANG"
msgstr "SPRA"
-#: musicxml2ly.py:2218
+#: musicxml2ly.py:2623
msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
msgstr "benutze eine andere Sprach-Datei 'SPRA.ly' und entsprechende Notenbezeichnungen, etwa 'deutsch' für deutsch.ly"
-#: musicxml2ly.py:2224
+#: musicxml2ly.py:2629
msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
msgstr "Richtungen (^, _ oder -) for Artikulationen, Dynamik usw. nicht konvertieren"
-#: musicxml2ly.py:2230
+#: musicxml2ly.py:2635
msgid "do not convert beaming information, use lilypond's automatic beaming instead"
msgstr "Balkeninformation nicht konvertieren, benutze die automatischen Balken von lilypond statt dessen"
-#: musicxml2ly.py:2238
+#: musicxml2ly.py:2643
msgid "set output filename to FILE, stdout if -"
msgstr "Ausgabedateiname auf DATEI setzen, stout if -"
-#: musicxml2ly.py:2320
+#: musicxml2ly.py:2726
#, python-format
msgid "unknown part in part-list: %s"
msgstr "unbekannte Stimme in part-list (Stimmen-Liste): %s"
-#: musicxml2ly.py:2382
+#: musicxml2ly.py:2788
msgid "Input is compressed, extracting raw MusicXML data from stdin"
msgstr "Eingabedatei %s ist komprimiert, entpacke die MusicXML-Daten von stdin"
-#: musicxml2ly.py:2385
+#: musicxml2ly.py:2791
#, python-format
msgid "Input file %s is compressed, extracting raw MusicXML data"
msgstr "Eingabedatei %s ist komprimiert, entpacke die MusicXML-Daten"
-#: musicxml2ly.py:2415
+#: musicxml2ly.py:2821
msgid "Reading MusicXML from Standard input ..."
msgstr "MusicXML von standard input lesen..."
-#: musicxml2ly.py:2417
+#: musicxml2ly.py:2823
#, python-format
msgid "Reading MusicXML from %s ..."
msgstr "MusicXML aus %s lesen..."
-#: musicxml2ly.py:2450
+#: musicxml2ly.py:2856
#, python-format
msgid "Output to `%s'"
msgstr "Ausgabe nach »%s«"
-#: musicxml2ly.py:2512
+#: musicxml2ly.py:2922
#, python-format
msgid "Unable to find input file %s"
msgstr "Eingabedatei kann nicht gefunden werden %s"
msgid "continuing, cross fingers"
msgstr "Fortsetzung, die Daumen drücken"
-#: accidental-engraver.cc:249
+#: accidental-engraver.cc:298
#, c-format
msgid "accidental typesetting list must begin with context-name: %s"
msgstr "Versetzungszeichensatzliste muss mit Kontextnamen beginnen: %s"
-#: accidental-engraver.cc:276
+#: accidental-engraver.cc:328
#, c-format
-msgid "ignoring unknown accidental rule: %s"
-msgstr "unbekannte Versetzungszeichenregel wird ignoriert: %s"
-
-#: accidental-engraver.cc:292
-#, c-format
-msgid "pair or context-name expected for accidental rule, found %s"
-msgstr "Paar oder Kontextname für Versetzungszeichenregel erwartet, %s gefunden"
+msgid "procedure or context-name expected for accidental rule, found %s"
+msgstr "Prozedur oder Kontextname für Versetzungszeichenregel erwartet, %s gefunden"
#: accidental.cc:187
#, c-format
msgid "unterminated extender"
msgstr "unbegrenzter Textunterstrich"
+#: font-config-scheme.cc:140 font-config.cc:57
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "Schriftartverzeichnis konnte nicht hinzugefügt werden: %s"
+
+#: font-config-scheme.cc:142 font-config.cc:59
+#, c-format
+msgid "adding font directory: %s"
+msgstr "Schriftartverzeichnis wird hinzugefügt: %s"
+
+#: font-config-scheme.cc:156
+#, c-format
+msgid "failed adding font file: %s"
+msgstr "Schriftartdatei konnte nicht hinzugefügt werden: %s"
+
+#: font-config-scheme.cc:158
+#, c-format
+msgid "adding font file: %s"
+msgstr "Schriftartdatei wird hinzugefügt: %s"
+
#: font-config.cc:28
msgid "Initializing FontConfig..."
msgstr "FontConfig wird initialisiert..."
msgid "Rebuilding FontConfig cache %s, this may take a while..."
msgstr "FontConfig-Cache %s wird erneuert. Dies kann eine Weile dauern..."
-#: font-config.cc:57
-#, c-format
-msgid "failed adding font directory: %s"
-msgstr "Schriftartverzeichnis konnte nicht hinzugefügt werden: %s"
-
-#: font-config.cc:59
-#, c-format
-msgid "adding font directory: %s"
-msgstr "Schriftartverzeichnis wird hinzugefügt: %s"
+#: font-config.cc:63
+msgid "Building font database."
+msgstr "Schriftartendatenbank aufbauen..."
#: general-scheme.cc:202
msgid "infinity or NaN encountered while converting Real number"
msgid "setting to zero"
msgstr "auf Null gesetzt"
-#: general-scheme.cc:422 output-ps.scm:62
+#: general-scheme.cc:422 output-ps.scm:63
msgid "Found infinity or nan in output. Substituting 0.0"
msgstr "Unendlich oder NaN in Ausgabe gefunden. Wird durch 0.0 ersetzt"
msgid "type check for `%s' failed; value `%s' must be of type `%s'"
msgstr "Typprüfung für »%s« gescheitert; Wert »%s« muss vom Typ »%s« sein"
-#: lily-lexer.cc:251
+#: lily-lexer.cc:252
msgid "include files are not allowed in safe mode"
msgstr "eingefügte Dateien sind im abgesicherten Modus nicht erlaubt"
-#: lily-lexer.cc:270
+#: lily-lexer.cc:271
#, c-format
msgid "identifier name is a keyword: `%s'"
msgstr "Bezeichnername ist ein Schlüsselwort: »%s«"
-#: lily-lexer.cc:285
+#: lily-lexer.cc:286
#, c-format
msgid "error at EOF: %s"
msgstr "Fehler am Dateiende (EOF): %s"
msgid "Processing `%s'"
msgstr "»%s« wird verarbeitet"
-#: lily-parser.cc:99
+#: lily-parser.cc:95
msgid "Parsing..."
msgstr "Analysieren..."
-#: lily-parser.cc:127
+#: lily-parser.cc:123
msgid "braces do not match"
msgstr "Klammern passen nicht zueinander"
msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
msgstr "Textsilbe hat keine Note. \\lyricsto oder associatedVoice verwenden."
-#: main.cc:100
+#: main.cc:97
#, c-format
msgid ""
"This program is free software. It is covered by the GNU General Public\n"
"Bedingungen weitergeben. Rufen Sie »%s --warranty« für weitere\n"
"Informationen auf.\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"
"Sie bitte an die 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[=WERT]"
-#: main.cc:138
+#: main.cc:135
msgid ""
"set Scheme option SYM to VAL (default: #t).\n"
"Use -dhelp for help."
"Scheme-Option SYM auf WERT setzen (Vorgabe: #t).\n"
"-dhelp für Hilfe verwenden."
-#: main.cc:141
+#: main.cc:138
msgid "EXPR"
msgstr "AUSD"
-#: main.cc:141
+#: main.cc:138
msgid "evaluate scheme code"
msgstr "Scheme-Code auswerten"
#. Bug in option parser: --output =foe is taken as an abbreviation
#. for --output-format.
-#: main.cc:144
+#: main.cc:141
msgid "FORMATs"
msgstr "FORMATe"
-#: main.cc:144
+#: main.cc:141
msgid "dump FORMAT,... Also as separate options:"
msgstr "dump FORMAT,... Auch als separate Optionen:"
-#: main.cc:145
-msgid "generate DVI (tex backend only)"
-msgstr "DVI erzeugen (nur TeX-Backend)"
-
-#: main.cc:146
+#: main.cc:142
msgid "generate PDF (default)"
msgstr "PDF erzeugen (Standard)"
-#: main.cc:147
+#: main.cc:143
msgid "generate PNG"
msgstr "PNG erzeugen"
-#: main.cc:148
+#: main.cc:144
msgid "generate PostScript"
msgstr "PostScript erzeugen"
-#: main.cc:149
-msgid "generate TeX (tex backend only)"
-msgstr "TeX erzeugen (nur TeX-Backend)"
-
-#: main.cc:151
+#: main.cc:146
msgid "FIELD"
msgstr "FELD"
-#: main.cc:151
+#: main.cc:146
msgid ""
"dump header field FIELD to file\n"
"named BASENAME.FIELD"
msgstr "Header-Feld FELD in Datei BASISNAME.FELD schreiben"
-#: main.cc:153
+#: main.cc:148
msgid "add DIR to search path"
msgstr "VERZ zum Suchpfad hinzufügen"
-#: main.cc:154
+#: main.cc:149
msgid "use FILE as init file"
msgstr "DATEI als Anfangsdatei verwenden"
-#: main.cc:156
+#: main.cc:151
msgid "USER, GROUP, JAIL, DIR"
msgstr "BENUTZER,GRUPPE,KERKER,VERZ"
-#: main.cc:156
+#: main.cc:151
msgid ""
"chroot to JAIL, become USER:GROUP\n"
"and cd into DIR"
"chroot in KERKER, wird BENUTZER:GRUPPE\n"
"und cd in VERZ"
-#: main.cc:159
+#: main.cc:154
msgid "write output to FILE (suffix will be added)"
msgstr "Ausgabe in DATEI schreiben (Endung wird hinzugefügt)"
-#: main.cc:160
+#: main.cc:155
msgid "relocate using directory of lilypond program"
msgstr "wiederfinden mit Hilfe des Lilypond-Programmverzeichnisses"
-#: main.cc:226
+#: main.cc:221
#, c-format
msgid ""
"Copyright (c) %s by\n"
"%s und anderen."
#. No version number or newline here. It confuses help2man.
-#: main.cc:254
+#: main.cc:249
#, c-format
msgid "Usage: %s [OPTION]... FILE..."
msgstr "Aufruf: %s [OPTION]... DATEI..."
-#: main.cc:256
+#: main.cc:251
#, c-format
msgid "Typeset music and/or produce MIDI from FILE."
msgstr "Musiksatz und/oder MIDI aus DATEI erzeugen."
-#: main.cc:258
+#: main.cc:253
#, c-format
msgid "LilyPond produces beautiful music notation."
msgstr "LilyPond erzeugt ansprechenden Notensatz."
-#: main.cc:260
+#: main.cc:255
#, c-format
msgid "For more information, see %s"
msgstr "Für weitere Informationen siehe %s"
-#: main.cc:262
+#: main.cc:257
#, c-format
msgid "Options:"
msgstr "Optionen:"
-#: main.cc:266
-#, c-format
-msgid "Report bugs via %s"
-msgstr "Melden Sie Fehler an %s"
-
-#: main.cc:312
+#: main.cc:311
#, c-format
msgid "expected %d arguments with jail, found: %u"
msgstr "%d Argumente mit Kerker erwartet, %u gefunden"
-#: main.cc:326
+#: main.cc:325
#, c-format
msgid "no such user: %s"
msgstr "kein solcher Benutzer: %s"
-#: main.cc:328
+#: main.cc:327
#, c-format
msgid "cannot get user id from user name: %s: %s"
msgstr "Benutzer-ID von Benutzername kann nicht gefunden werden: %s: %s"
-#: main.cc:343
+#: main.cc:342
#, c-format
msgid "no such group: %s"
msgstr "keine solche Gruppe: %s"
-#: main.cc:345
+#: main.cc:344
#, c-format
msgid "cannot get group id from group name: %s: %s"
msgstr "Gruppen-ID kann nicht von Gruppenname ermittelt werden: %s: %s"
-#: main.cc:353
+#: main.cc:352
#, c-format
msgid "cannot chroot to: %s: %s"
msgstr "kein chroot möglich nach: %s: %s"
-#: main.cc:360
+#: main.cc:359
#, c-format
msgid "cannot change group id to: %d: %s"
msgstr "Gruppen-ID kann nicht geändert werden in: %d: %s"
-#: main.cc:366
+#: main.cc:365
#, c-format
msgid "cannot change user id to: %d: %s"
msgstr "Benutzer-ID kann nicht geändert werden in: %d: %s"
-#: main.cc:372
+#: main.cc:371
#, c-format
msgid "cannot change working directory to: %s: %s"
msgstr "aktuelles Verzeichnis kann nicht geändert werden in: %s: %s"
-#: main.cc:619
+#: main.cc:611
#, c-format
msgid "exception caught: %s"
msgstr "Ausnahme gefangen: %s"
msgid "cannot write to file: `%s'"
msgstr "Es kann nicht in Datei geschrieben werden: »%s«"
-#: minimal-page-breaking.cc:42
-msgid "Computing page breaks..."
-msgstr "Seitenumbrüche werden berechnet..."
+#: minimal-page-breaking.cc:38 paper-score.cc:105
+msgid "Calculating line breaks..."
+msgstr "Zeilenumbrüche werden berechnet..."
+
+#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+msgid "Calculating page breaks..."
+msgstr "Zeilenumbrüche werden berechnet..."
#: music-iterator.cc:171
msgid "Sending non-event to context"
msgid "transposition by %s makes alteration larger than double"
msgstr "Transponieren um %s erzeugt Vorzeichen größer als ein doppeltes"
-#: new-dynamic-engraver.cc:128
+#: new-dynamic-engraver.cc:129
#, c-format
msgid ""
"unknown crescendo style: %s\n"
msgid "Finding the ideal number of pages..."
msgstr "Ideale Seitenanzahl wird gefunden..."
-#: optimal-page-breaking.cc:76
+#: optimal-page-breaking.cc:78
msgid "Fitting music on 1 page..."
msgstr "Musik wird auf eine Seite angepasst..."
-#: optimal-page-breaking.cc:78
+#: optimal-page-breaking.cc:80
#, c-format
msgid "Fitting music on %d pages..."
msgstr "Musik wird auf %d Seiten angepasst..."
-#: optimal-page-breaking.cc:80
+#: optimal-page-breaking.cc:82
#, c-format
msgid "Fitting music on %d or %d pages..."
msgstr "Musik wird auf %d oder %d Seiten angepasst..."
-#: optimal-page-breaking.cc:157 page-turn-page-breaking.cc:226
+#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
#: paper-score.cc:146
msgid "Drawing systems..."
msgstr "Systeme erstellen..."
msgid "Layout output to `%s'..."
msgstr "Layout nach »%s« ausgeben..."
-#: paper-score.cc:105
-msgid "Calculating line breaks..."
-msgstr "Zeilenumbrüche werden berechnet..."
-
#: paper-score.cc:118
#, c-format
msgid "Element count %d (spanners %d) "
msgid "GUILE signaled an error for the expression beginning here"
msgstr "GUILE signalisierte einen Fehler für den hier beginnenden Ausdruck"
-#: percent-repeat-engraver.cc:200
+#: percent-repeat-engraver.cc:202
msgid "unterminated percent repeat"
msgstr "unbegrenzte Prozentwiederholung"
msgid "remapping modulo 16"
msgstr "modulo 16 neu zuordnen"
-#: performance.cc:101
+#: performance.cc:100
#, c-format
msgid "MIDI output to `%s'..."
msgstr "MIDI-Ausgabe nach »%s«..."
-#: phrasing-slur-engraver.cc:139
+#: phrasing-slur-engraver.cc:146
msgid "unterminated phrasing slur"
msgstr "nicht beendeter Phrasierungsbogen"
msgid "cannot end slur"
msgstr "Legatobogen kann nicht beendet werden"
-#: slur.cc:357
+#: slur.cc:359
#, c-format
msgid "Ignoring grob for slur: %s. avoid-slur not set?"
msgstr "Grob für Legatobogen wird ignoriert: %s. avoid-slur nicht gesetzt?"
msgid "weird stem size, check for narrow beams"
msgstr "Eigenartige Notenhalslänge; auf enge Balken überprüfen"
-#: stem.cc:627
+#: stem.cc:623
#, c-format
msgid "flag `%s' not found"
msgstr "Fähnchen »%s« nicht gefunden"
-#: stem.cc:638
+#: stem.cc:639
#, c-format
msgid "flag stroke `%s' not found"
msgstr "Fähnchenstrich »%s« nicht gefunden"
msgid "giving up"
msgstr "aufgeben"
-#: parser.yy:729
+#: parser.yy:804
msgid "\\paper cannot be used in \\score, use \\layout instead"
msgstr "\\paper kann nicht in \\source verwendet werden; stattdessen \\layout verwenden"
-#: parser.yy:753
+#: parser.yy:828
msgid "need \\paper for paper block"
msgstr "Für Papier-Block wird \\paper benötigt"
-#: parser.yy:1224
+#: parser.yy:1299
msgid "Grob name should be alphanumeric"
msgstr "Grob-Name sollte alphanumerisch sein"
-#: parser.yy:1522
+#: parser.yy:1597
msgid "second argument must be pitch list"
msgstr "zweites Argument muss eine Tonhöhenliste sein"
-#: parser.yy:1549 parser.yy:1554 parser.yy:2026
+#: parser.yy:1624 parser.yy:1629 parser.yy:2101
msgid "have to be in Lyric mode for lyrics"
msgstr "muss in Liedtextmodus sein um Liedtext setzen zu können"
-#: parser.yy:1651
+#: parser.yy:1726
msgid "expecting string as script definition"
msgstr "Zeichenkette als Skriptdefinition erwartet"
-#: parser.yy:1806 parser.yy:1856
+#: parser.yy:1881 parser.yy:1931
#, c-format
msgid "not a duration: %d"
msgstr "keine gültige Dauer: %d"
-#: parser.yy:1980
+#: parser.yy:2055
msgid "have to be in Note mode for notes"
msgstr "Muss im Notenmodus sein für Noten"
-#: parser.yy:2041
+#: parser.yy:2116
msgid "have to be in Chord mode for chords"
msgstr "Muss im Akkordmodus sein für Akkorde"
msgid "invalid character: `%c'"
msgstr "Ungültiges Zeichen: »%c«"
-#: lexer.ll:803 lexer.ll:804
+#: lexer.ll:803
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "Ungültige Fluchtsequenz: »\\%s«"
-#: lexer.ll:910 lexer.ll:911
+#: lexer.ll:910
#, c-format
msgid "file too old: %s (oldest supported: %s)"
msgstr "Datei zu alt: %s (älteste unterstützte: %s)"
-#: lexer.ll:911 lexer.ll:912
+#: lexer.ll:911
msgid "consider updating the input with the convert-ly script"
msgstr "Erwägen Sie die Aktualisierung der Eingabe mit dem Skript convert-ly"
-#: lexer.ll:917 lexer.ll:918
+#: lexer.ll:917
#, c-format
msgid "program too old: %s (file requires: %s)"
msgstr "Programm zu alt: %s (Datei erfordert: %s)"
-#: backend-library.scm:19 lily.scm:777 ps-to-png.scm:58
+#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
#, scheme-format
msgid "Invoking `~a'..."
msgstr "»~s« wird aufgerufen..."
msgid "`~a' failed (~a)"
msgstr "»~a« gescheitert (~a)"
-#: backend-library.scm:116 framework-tex.scm:344 framework-tex.scm:369
+#: backend-library.scm:116
#, scheme-format
msgid "Converting to `~a'..."
msgstr "Konvertierung nach »~a«..."
msgid "translator listens to nonexisting event class ~A"
msgstr "Übersetzer hört auf fehlende Ereignisklasse ~A"
-#: define-markup-commands.scm:599
+#: define-markup-commands.scm:569
msgid "no systems found in \\score markup, does it have a \\layout block?"
msgstr "keine Systeme in \\score-Markup gefunden, hat es einen \\layout-Block?"
-#: define-markup-commands.scm:2428
+#: define-markup-commands.scm:2387
#, scheme-format
msgid "Cannot find glyph ~a"
msgstr "Kann kein Zeichen ~a finden"
-#: define-markup-commands.scm:2737
+#: define-markup-commands.scm:2696
#, scheme-format
msgid "not a valid duration string: ~a"
msgstr "keine gültige Dauer: ~a"
msgstr "unbekannter Wiederholungstyp »~S«"
#: define-music-types.scm:693
-msgid "See music-types.scm for supported repeats"
-msgstr "Siehe music-types.scm für unterstützte Wiederholungen"
+msgid "See define-music-types.scm for supported repeats"
+msgstr "Siehe define-music-types.scm für unterstützte Wiederholungen"
#: document-backend.scm:99
#, scheme-format
msgid "unknown Grob interface: ~S"
msgstr "Unbekannte Grob-Schnittstelle: ~S"
-#: documentation-lib.scm:48
+#: documentation-lib.scm:49
#, scheme-format
msgid "Processing ~S..."
msgstr "~S wird verarbeitet..."
-#: documentation-lib.scm:164
+#: documentation-lib.scm:165
#, scheme-format
msgid "Writing ~S..."
msgstr "~S wird geschrieben..."
-#: documentation-lib.scm:186
+#: documentation-lib.scm:187
#, scheme-format
msgid "cannot find description for property ~S (~S)"
msgstr "Beschreibung für Eigenschaft ~S (~S) kann nicht gefunden werden"
+#: flag-styles.scm:145
+#, scheme-format
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "Fähnchenstrich »~a«·or·»~a« nicht gefunden"
+
#: framework-eps.scm:90
#, scheme-format
msgid "Writing ~a..."
msgstr "~a wird geschrieben..."
-#: framework-ps.scm:282
+#: framework-ps.scm:277
#, scheme-format
msgid "cannot embed ~S=~S"
msgstr "~S=~S kann nicht eingebettet werden"
-#: framework-ps.scm:335
+#: framework-ps.scm:330
#, scheme-format
msgid "cannot extract file matching ~a from ~a"
msgstr "Eine zu ~a passende Datei kann nicht aus ~a gewonnen werden"
-#: framework-ps.scm:352
+#: framework-ps.scm:347
#, scheme-format
msgid "do not know how to embed ~S=~S"
msgstr "Unbekannte Einbettung ~S=~S"
-#: framework-ps.scm:383
+#: framework-ps.scm:378
#, scheme-format
msgid "do not know how to embed font ~s ~s ~s"
msgstr "Unbekannte Schriftsatzeinbettung ~s ~s ~s"
-#: framework-ps.scm:753
+#: framework-ps.scm:748
#, scheme-format
msgid "cannot convert <stdout> to ~S"
msgstr "<stdout> kann nicht in ~S konvertiert werden"
-#: framework-ps.scm:772 framework-ps.scm:775
-#, scheme-format
-msgid "cannot generate ~S using the postscript back-end"
-msgstr "~S kann nicht mit PostScript-Backend erzeugt werden"
-
-#: framework-ps.scm:782
+#: framework-ps.scm:771
msgid ""
"\n"
"The PostScript backend does not support the system-by-system \n"
"entfernt werden\n"
"\n"
-#: framework-tex.scm:361
-#, scheme-format
-msgid "TeX file name must not contain whitespace: `~a'"
-msgstr "TeX-Dateiname darf keine Leerzeichen enthalten: »~a«"
-
#: graphviz.scm:53
#, scheme-format
msgid "Writing graph `~a'..."
msgid "Error in beam quanting. Expected ~S 0, found ~S."
msgstr "Fehler bei Balkenzuschnitt. ~S 0 erwartet, ~S gefunden."
-#: layout-page-layout.scm:124
+#: layout-page-layout.scm:126
msgid "Can't fit systems on page -- ignoring between-system-padding"
msgstr "Systeme passen nicht auf Seite -- Zwischen-System-Abstand wird ignoriert"
-#: layout-page-layout.scm:458
-msgid "Calculating page breaks..."
-msgstr "Zeilenumbrüche werden berechnet..."
-
-#: lily-library.scm:588
+#: lily-library.scm:602
#, scheme-format
msgid "unknown unit: ~S"
msgstr "unbekannte Einheit: ~S"
-#: lily-library.scm:622
+#: lily-library.scm:636
#, scheme-format
msgid "no \\version statement found, please add~afor future compatibility"
msgstr "keine \\version-Anweisung gefunden, ~a für zukünftige Kompatibilität hinzufügen"
-#: lily-library.scm:630
+#: lily-library.scm:644
msgid "old relative compatibility not used"
msgstr "alte relative Kompatibilität nicht verwendet"
-#: lily.scm:178
+#: lily.scm:179
#, scheme-format
msgid "cannot find: ~A"
msgstr "~A kann nicht gefunden werden"
-#: lily.scm:243
+#: lily.scm:228
#, scheme-format
msgid "wrong type for argument ~a. Expecting ~a, found ~s"
msgstr "falscher Typ für Argument ~a; ~a erwartet, ~s gefunden"
-#: lily.scm:641
+#: lily.scm:625
#, scheme-format
msgid "job ~a terminated with signal: ~a"
msgstr "Auftrag ~a mit Signal ~a beendet"
-#: lily.scm:644
+#: lily.scm:628
#, scheme-format
msgid ""
"logfile ~a (exit ~a):\n"
"Logdatei ~a (Ende ~a):\n"
"~a"
-#: lily.scm:669 lily.scm:767
+#: lily.scm:653 lily.scm:751
#, scheme-format
msgid "failed files: ~S"
msgstr "gescheiterte Dateien: ~S"
-#: lily.scm:757
+#: lily.scm:741
#, scheme-format
msgid "Redirecting output to ~a..."
msgstr "Ausgabeumleitung nach ~a..."
msgid "Music head function must return Music object"
msgstr "Musikkopf-Funktion muss Musikobjekt zurückliefern."
-#: ly-syntax-constructors.scm:150
+#: ly-syntax-constructors.scm:154
#, scheme-format
msgid "Invalid property operation ~a"
msgstr "Ungültige Eigenschaftsoperation ~a"
msgid "cannot find quoted music: `~S'"
msgstr "zitierte Musik »~S« kann nicht gefunden werden"
-#: music-functions.scm:990
+#: music-functions.scm:1198
#, scheme-format
msgid "unknown accidental style: ~S"
msgstr "unbekannter Versetzungszeichenstil: ~S"
-#: output-ps.scm:285
+#: output-ps.scm:294
msgid "utf-8-string encountered in PS backend"
msgstr "UTF-8-Zeichenkette in PostScript-Backend gefunden"
msgid "cannot decypher Pango description: ~a"
msgstr "Pango-Beschreibung kann nicht entschlüsselt werden: ~a"
-#: output-tex.scm:96
-#, scheme-format
-msgid "cannot find ~a in ~a"
-msgstr "~a kann nicht in ~a gefunden werden"
-
-#: paper.scm:86
+#: paper.scm:104
msgid "set-global-staff-size: not in toplevel scope"
msgstr "set-global-staff-size: Nicht auf höchster Ebene im Gültigkeitsbereich"
-#: paper.scm:226
+#: paper.scm:244
#, scheme-format
msgid "This is not a \\layout {} object, ~S"
msgstr "Dies ist kein \\layout {} Objekt, ~S"
-#: paper.scm:238
+#: paper.scm:256
#, scheme-format
-msgid "Unknown papersize: ~a"
+msgid "Unknown paper size: ~a"
msgstr "Unbekannte Papiergröße: ~a"
#. TODO: should raise (generic) exception with throw, and catch
#. that in parse-scm.cc
-#: paper.scm:253
+#: paper.scm:271
msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
msgstr "#(set-paper-size ..) muss innerhalb von \\paper { ... } verwendet werden"
msgid "assertion failed: ~S"
msgstr "Behauptung gescheitert: ~S"
+#~ msgid "requested time signature, but time sig is unknown"
+#~ msgstr "Taktangabe angefragt, aber Taktart ist unbekannt"
+
+#~ msgid "Report bugs via"
+#~ msgstr "Melden Sie Fehler an"
+
+#~ msgid "Negative skip %s"
+#~ msgstr "Negativer Sprung (skip) %s"
+
+#~ msgid "ignoring unknown accidental rule: %s"
+#~ msgstr "unbekannte Versetzungszeichenregel wird ignoriert: %s"
+
+#~ msgid "generate DVI (tex backend only)"
+#~ msgstr "DVI erzeugen (nur TeX-Backend)"
+
+#~ msgid "generate TeX (tex backend only)"
+#~ msgstr "TeX erzeugen (nur TeX-Backend)"
+
+#~ msgid "Computing page breaks..."
+#~ msgstr "Seitenumbrüche werden berechnet..."
+
+#~ msgid "cannot generate ~S using the postscript back-end"
+#~ msgstr "~S kann nicht mit PostScript-Backend erzeugt werden"
+
+#~ msgid "TeX file name must not contain whitespace: `~a'"
+#~ msgstr "TeX-Dateiname darf keine Leerzeichen enthalten: »~a«"
+
+#~ msgid "cannot find ~a in ~a"
+#~ msgstr "~a kann nicht in ~a gefunden werden"
+
#~ msgid "Bugs"
#~ msgstr "Fehler"
-# translation of lilypond-2.11.57.po to Spanish
+# translation of lilypond-2.12.0.po to Español
# Spanish translation of GNU Lilypond - http://lilypond.org
# Copyright (C) 2002, 2007, 2008 Free Software Foundation, Inc.
#
# This file is distributed under the same license as the lilypond package.
+#
# Quique <quique@sindominio.net>, 2002, 2004.
# Daniel Tonda <daniel dot tonda (at) gmail dot com>, 2006.
# Francisco Vila <francisco.vila@hispalinux.es>, 2007, 2008.
+# This file is distributed under the same license as the lilypond package.
msgid ""
msgstr ""
-"Project-Id-Version: lilypond-2.11.57\n"
+"Project-Id-Version: lilypond-2.12.0\n"
"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-08-23 18:49+0200\n"
-"PO-Revision-Date: 2008-08-31 00:52+0200\n"
+"POT-Creation-Date: 2008-12-20 11:58+0100\n"
+"PO-Revision-Date: 2008-12-30 01:36+0100\n"
"Last-Translator: Francisco Vila <francisco.vila@hispalinux.es>\n"
"Language-Team: Spanish <es@li.org>\n"
"MIME-Version: 1.0\n"
msgid "%s has been replaced by %s"
msgstr "%s se ha sustituido por %s"
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:48 lilypond-book.py:82
+#: 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"
msgid "\\put-adjacent axis dir markup markup."
msgstr "\\put-adjacent eje dirección marcado marcado."
+#: convertrules.py:2832
+msgid "re-definition of InnerStaffGroup.\n"
+msgstr "redefinición de InnerStaffGroup.\n"
+
+#: convertrules.py:2838
+msgid "re-definition of InnerChoirStaff.\n"
+msgstr "redefinición de InnerChoirStaff.\n"
+
+#: convertrules.py:2851
+msgid "stringTuning must be added to addChordShape call.\n"
+msgstr "stringTuning se debe añadir a la llamada a addChordShape.\n"
+
+#: convertrules.py:2857
+msgid "stringTuning must be added to chord-shape call.\n"
+msgstr "stringTuning se debe añadir a la llamada a chord-shape.\n"
+
#: fontextract.py:25
#, python-format
msgid "Scanning %s"
msgid "Writing fonts to %s"
msgstr "Escribiendo las tipografías en %s"
-#: lilylib.py:101 lilylib.py:152
+#: lilylib.py:91 lilylib.py:142
#, python-format
msgid "Invoking `%s'"
msgstr "Invocando «%s»"
-#: lilylib.py:103 lilylib.py:154
+#: lilylib.py:93 lilylib.py:144
#, python-format
msgid "Running %s..."
msgstr "Ejecutando %s..."
-#: lilylib.py:219
+#: lilylib.py:209
#, python-format
msgid "Usage: %s"
msgstr "uso: %s"
-#: musicexp.py:585
+#: musicexp.py:215 musicexp.py:220
+msgid "Language does not support microtones contained in the piece"
+msgstr "El lenguaje no contempla los microtonos de la pieza"
+
+#: musicexp.py:482
+msgid "Tuplet brackets of curved shape are not correctly implemented"
+msgstr "Los corchetes curvos de grupo especial no están implementados correctamente"
+
+#. 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 "Los corchetes de grupo especial que muestran las dos duraciones de nota no están implementados, se usa el predeterminado"
+
+#: musicexp.py:656
#, python-format
msgid "unable to set the music %(music)s for the repeat %(repeat)s"
msgstr "no se ha podido establecer el fragmento de música %(music)s para la repetición %(repeat)s"
-#: musicexp.py:594
+#: musicexp.py:665
msgid "encountered repeat without body"
msgstr "se ha encontrado una repetición sin cuerpo"
-#: musicxml.py:13 convert-ly.py:51 lilypond-book.py:85 warn.cc:54 input.cc:96
+#. no self.elements!
+#: musicexp.py:835
+#, python-format
+msgid "Grace note with no following music: %s"
+msgstr "Nota de adorno sin música que le siga: %s"
+
+#: musicexp.py:997
+#, python-format
+msgid "Invalid octave shift size found: %s. Using no shift."
+msgstr "Se ha encontrado un tamaño de desplazamiento de octava no válido: %s. No se usará ningún desplazamiento."
+
+#: musicexp.py:1455
+#, python-format
+msgid "Unable to convert alteration %s to a lilypond expression"
+msgstr "No se pudo convertir la alteración %s a una expresión de 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 "error: %s"
-#: musicxml.py:298
-msgid "requested time signature, but time sig is unknown"
-msgstr "se requiere una indicación de compás, pero ésta es desconocida"
+#. TODO: Handle pieces without a time signature!
+#: musicxml.py:357
+msgid "Senza-misura time signatures are not yet supported!"
+msgstr "¡Los compases senza-misura no están contemplados aún!"
+
+#: musicxml.py:375
+msgid "Unable to interpret time signature! Falling back to 4/4."
+msgstr "¡Ha sido imposible interpretar la indicación de compás! Se va a usar 4/4 como opción de retroceso."
-#: musicxml.py:354
+#: musicxml.py:431
#, python-format
-msgid "Encountered note at %s with %s duration (no <type> element):"
-msgstr "Se ha encontrado una nota en %s con la duración %s (sin ningún elemento de <type> ):"
+msgid "Key alteration octave given for a non-existing alteration nr. %s, available numbers: %s!"
+msgstr "¡Se ha proporcionado una octava de alteración de tonalidad para un número de alteraciones inexistente %s, números disponibles: %s!"
-#: musicxml.py:388
+#: musicxml.py:519
#, python-format
msgid "Unable to find instrument for ID=%s\n"
msgstr "No se ha podido encontrar el instrumento con el ID=%s\n"
-#: abc2ly.py:1342 convert-ly.py:72 lilypond-book.py:109 midi2ly.py:846
+#: abc2ly.py:1341 convert-ly.py:74 lilypond-book.py:121 midi2ly.py:845
#, python-format
msgid "%s [OPTION]... FILE"
msgstr "%s [OPCIÓN]... ARCHIVO"
-#: abc2ly.py:1343
+#: abc2ly.py:1342
#, python-format
msgid ""
"abc2ly converts ABC music files (see\n"
"abc2ly convierte archivos de música de ABC\n"
"(véase %s) en código de entrada de LilyPond.\n"
-#: abc2ly.py:1351 convert-ly.py:79 etf2ly.py:1190 lilypond-book.py:195
-#: midi2ly.py:882 musicxml2ly.py:2185 main.cc:161
+#: 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 "mostrar el número de versión y salir"
-#: abc2ly.py:1355 convert-ly.py:83 etf2ly.py:1186 lilypond-book.py:126
-#: midi2ly.py:861 musicxml2ly.py:2167 main.cc:150
+#: 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 "mostrar esta ayuda y salir"
-#: abc2ly.py:1357 etf2ly.py:1191 midi2ly.py:865
+#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
msgid "write output to FILE"
msgstr "escribir la salida en el ARCHIVO"
-#: abc2ly.py:1359
+#: abc2ly.py:1358
msgid "be strict about success"
msgstr "ser estricto respecto al éxito"
-#: abc2ly.py:1361
+#: abc2ly.py:1360
msgid "preserve ABC's notion of beams"
msgstr "preservar la noción de las barras de ABC"
-#: abc2ly.py:1363 convert-ly.py:120 etf2ly.py:1199 lilypond-book.py:202
-#: midi2ly.py:894 musicxml2ly.py:2240
-msgid "Report bugs via"
-msgstr "Informe de los fallos a través de"
+#. 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 "Informe de los fallos a %s"
-#: convert-ly.py:31
+#: 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."
"De manera predeterminada, actualizarlo desde la versión sacada de\n"
"la instrucción \\version, a la versión actual de LilyPond."
-#: convert-ly.py:33 lilypond-book.py:59
+#: convert-ly.py:35 lilypond-book.py:71
msgid "Examples:"
msgstr "Ejemplos:"
-#: convert-ly.py:67 etf2ly.py:1173 lilypond-book.py:105 midi2ly.py:77
+#: 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 "Distribuido bajo los términos de la Licencia Pública General de GNU."
-#: convert-ly.py:68 etf2ly.py:1174 lilypond-book.py:106 midi2ly.py:78
+#: convert-ly.py:70 etf2ly.py:1174 lilypond-book.py:118 midi2ly.py:77
msgid "It comes with NO WARRANTY."
msgstr "Se distribuye SIN NINGUNA GARANTÍA."
-#: convert-ly.py:87 convert-ly.py:114
+#: convert-ly.py:89 convert-ly.py:116
msgid "VERSION"
msgstr "VERSIÓN"
-#: convert-ly.py:89
+#: convert-ly.py:91
msgid "start from VERSION [default: \\version found in file]"
msgstr "comenzar a partir de VERSIÓN [predeterminado: \\version del archivo]"
-#: convert-ly.py:92
+#: convert-ly.py:94
msgid "edit in place"
msgstr "editar in situ"
-#: convert-ly.py:96
+#: convert-ly.py:98
msgid "do not add \\version command if missing"
msgstr "no añadir la instrucción \\version si no está presente"
-#: convert-ly.py:102
+#: convert-ly.py:104
#, python-format
msgid "force updating \\version number to %s"
msgstr "forzar la actualización del número de \\version a %s"
-#: convert-ly.py:108
+#: convert-ly.py:110
#, python-format
msgid "show rules [default: -f 0, -t %s]"
msgstr "mostrar las reglas [predeterminado: -f 0, -t %s]"
-#: convert-ly.py:113
+#: convert-ly.py:115
#, python-format
msgid "convert to VERSION [default: %s]"
msgstr "convertir a VERSIÓN [predeterminado: %s]"
-#: convert-ly.py:160
+#: convert-ly.py:163
msgid "Applying conversion: "
msgstr "Aplicando la conversión: "
-#: convert-ly.py:173
+#: convert-ly.py:176
msgid "Error while converting"
msgstr "Error al convertir"
-#: convert-ly.py:175
-msgid "Stopping at last succesful rule"
-msgstr "Detención en la primera regla satisfactoria"
+#: convert-ly.py:178
+msgid "Stopping at last successful rule"
+msgstr "Detención en la última regla satisfactoria"
-#: convert-ly.py:196
+#: convert-ly.py:199
#, python-format
msgid "Processing `%s'... "
msgstr "Procesando «%s»... "
-#: convert-ly.py:286 relocate.cc:362 source-file.cc:59
+#: convert-ly.py:289 relocate.cc:362 source-file.cc:59
#, c-format, python-format
msgid "cannot open file: `%s'"
msgstr "no se puede abrir el archivo: «%s»"
-#: convert-ly.py:293
+#: convert-ly.py:296
#, python-format
msgid "cannot determine version for `%s'. Skipping"
msgstr "no se puede determinar la versión de «%s»; se salta"
"Finale de Coda Music Technology. etf2ly convierte un subconjunto de ETF a un\n"
"archivo de LilyPond listo para usar.\n"
-#: etf2ly.py:1192 midi2ly.py:866 musicxml2ly.py:2233 main.cc:154 main.cc:159
+#: etf2ly.py:1192 midi2ly.py:865 musicxml2ly.py:2638 main.cc:149 main.cc:154
msgid "FILE"
msgstr "ARCHIVO"
-#: etf2ly.py:1194 lilypond-book.py:198 midi2ly.py:883 main.cc:163
+#: etf2ly.py:1194 lilypond-book.py:210 midi2ly.py:882 main.cc:158
msgid "show warranty and copyright"
msgstr "mostrar los avisos de garantía y de copyright"
-#: lilypond-book.py:57
+#: lilypond-book.py:69
msgid "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document."
msgstr "Procesar los fragmentos de LylyPond en un documento de HTML híbrido, LaTeX, texinfo o DocBook."
-#: lilypond-book.py:64
+#: lilypond-book.py:76
msgid "BOOK"
msgstr "LIBRO"
-#: lilypond-book.py:72
+#: lilypond-book.py:84
#, python-format
msgid "Exiting (%d)..."
msgstr "Saliendo (%d)..."
-#: lilypond-book.py:103
+#: lilypond-book.py:115
#, python-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s por"
-#: lilypond-book.py:113
+#: lilypond-book.py:125
msgid "FILTER"
msgstr "FILTRO"
-#: lilypond-book.py:116
+#: lilypond-book.py:128
msgid "pipe snippets through FILTER [default: `convert-ly -n -']"
msgstr "redirigir fragmentos a través de FILTRO [predeterminado: `convert-ly -n -']"
-#: lilypond-book.py:120
+#: lilypond-book.py:132
msgid "use output format FORMAT (texi [default], texi-html, latex, html, docbook)"
msgstr "usar el formato de salida FORMATO (texi [predeterminado], texi-html, latex, html, docbook)"
-#: lilypond-book.py:121
+#: lilypond-book.py:133
msgid "FORMAT"
msgstr "FORMATO"
-#: lilypond-book.py:128
+#: lilypond-book.py:140
msgid "add DIR to include path"
msgstr "añadir DIRECTORIO a la ruta de inclusión"
-#: lilypond-book.py:129 lilypond-book.py:136 lilypond-book.py:154
-#: lilypond-book.py:160 lilypond-book.py:166 lilypond-book.py:172 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 "DIRECTORIO"
-#: lilypond-book.py:134
+#: lilypond-book.py:146
msgid "format Texinfo output so that Info will look for images of music in DIR"
msgstr "formatear la salida de Texinfo de manera que Info busque las imágenes de música en DIRECTORIO"
-#: lilypond-book.py:141
+#: lilypond-book.py:153
msgid "run executable PROG instead of latex"
msgstr "ejecutar el programa PROGRAMA en lugar de latex"
-#: lilypond-book.py:142
+#: lilypond-book.py:154
msgid "PROG"
msgstr "PROGRAMA"
-#: lilypond-book.py:147
+#: lilypond-book.py:159
msgid "PAD"
msgstr "RELLENAR"
-#: lilypond-book.py:149
+#: lilypond-book.py:161
msgid "pad left side of music to align music inspite of uneven bar numbers (in mm)"
msgstr "rellenar el lado izquierdo de la música para alinear la música aunque haya un número desigual de compases (en mm)"
-#: lilypond-book.py:153
+#: lilypond-book.py:165
msgid "write output to DIR"
msgstr "escribir la salida en el DIRECTORIO"
-#: lilypond-book.py:159
+#: lilypond-book.py:171
msgid "do not fail if no lilypond output is found"
msgstr "no fracasar si no se encuentra ninguna salida de lilypond"
-#: lilypond-book.py:165
+#: lilypond-book.py:177
msgid "do not fail if no PNG images are found for EPS files"
msgstr "no fracasar si no se encuentra ninguna imagen PNG para los archivos EPS"
-#: lilypond-book.py:171
+#: lilypond-book.py:183
msgid "write lily-XXX files to DIR, link into --output dir"
msgstr "escribir archivos lily-XXX en DIR, enlazar al directorio de --output"
-#: lilypond-book.py:176
+#: lilypond-book.py:188
msgid "COMMAND"
msgstr "INSTRUCCIÓN"
-#: lilypond-book.py:177
+#: lilypond-book.py:189
msgid "process ly_files using COMMAND FILE..."
msgstr "procesar ly_files utilizando INSTRUCCIÓN ARCHIVO..."
-#: lilypond-book.py:184
+#: lilypond-book.py:196
msgid "create PDF files for use with PDFTeX"
msgstr "crear archivos PDF para su utilización con PDFTeX"
-#: lilypond-book.py:187 midi2ly.py:876 musicxml2ly.py:2190 main.cc:162
+#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
msgid "be verbose"
msgstr "ser prolijo"
-#: lilypond-book.py:825
+#: lilypond-book.py:871
#, python-format
msgid "file not found: %s"
msgstr "archivo no encontrado: %s"
-#: lilypond-book.py:1087
+#: lilypond-book.py:1142
#, python-format
msgid "deprecated ly-option used: %s=%s"
msgstr "se ha usado una ly-option obsoleta: %s=%s"
-#: lilypond-book.py:1089
+#: lilypond-book.py:1144
#, python-format
msgid "compatibility mode translation: %s=%s"
msgstr "traducción en modo de compatibilidad: %s=%s"
-#: lilypond-book.py:1092
+#: lilypond-book.py:1147
#, python-format
msgid "deprecated ly-option used: %s"
msgstr "se usó una ly-option obsoleta: %s"
-#: lilypond-book.py:1094
+#: lilypond-book.py:1149
#, python-format
msgid "compatibility mode translation: %s"
msgstr "traducción en modo compatible: %s"
-#: lilypond-book.py:1112
+#: lilypond-book.py:1167
#, python-format
msgid "ignoring unknown ly option: %s"
msgstr "opción ly desconocida e ignorada: %s"
-#: lilypond-book.py:1538
+#: lilypond-book.py:1604
#, python-format
msgid "Opening filter `%s'"
msgstr "Filtro de apertura «%s»"
-#: lilypond-book.py:1555
+#: lilypond-book.py:1621
#, python-format
msgid "`%s' failed (%d)"
msgstr "«%s» ha fallado (%d)"
-#: lilypond-book.py:1556
+#: lilypond-book.py:1622
msgid "The error log is as follows:"
msgstr "El registro de errores es como sigue:"
-#: lilypond-book.py:1618
+#: lilypond-book.py:1684
msgid "cannot find \\begin{document} in LaTeX document"
msgstr "no se encuentra \\begin{document} en el documento de LaTeX"
-#: lilypond-book.py:1718
+#: lilypond-book.py:1784
msgid "Writing snippets..."
msgstr "Escribiendo fragmentos..."
-#: lilypond-book.py:1724
+#: lilypond-book.py:1790
msgid "Processing..."
msgstr "Procesando..."
-#: lilypond-book.py:1730
+#: lilypond-book.py:1796
msgid "All snippets are up to date..."
msgstr "Todos los fragmentos están actualizados..."
-#: lilypond-book.py:1764
+#: lilypond-book.py:1830
#, python-format
msgid "cannot determine format for: %s"
msgstr "no se puede determinar el formato de: %s"
-#: lilypond-book.py:1775
+#: lilypond-book.py:1841
#, python-format
msgid "%s is up to date."
msgstr "%s está actualizado."
-#: lilypond-book.py:1789
+#: lilypond-book.py:1855
#, python-format
msgid "Writing `%s'..."
msgstr "Escribiendo «%s»..."
-#: lilypond-book.py:1847
+#: lilypond-book.py:1913
msgid "Output would overwrite input file; use --output."
msgstr "La salida sobreescribiría el archivo de entrada; utilice --output."
-#: lilypond-book.py:1851
+#: lilypond-book.py:1917
#, python-format
msgid "Reading %s..."
msgstr "Leyendo %s..."
-#: lilypond-book.py:1870
+#: lilypond-book.py:1937
msgid "Dissecting..."
msgstr "Diseccionando..."
-#: lilypond-book.py:1886
+#: lilypond-book.py:1953
#, python-format
msgid "Compiling %s..."
msgstr "Compilando %s..."
-#: lilypond-book.py:1895
+#: lilypond-book.py:1962
#, python-format
msgid "Processing include: %s"
msgstr "Procesando el archivo de inclusión: %s"
-#: lilypond-book.py:1907
+#: lilypond-book.py:1974
#, python-format
msgid "Removing `%s'"
msgstr "Suprimiendo «%s»"
-#: midi2ly.py:85 lily-library.scm:620 lily-library.scm:629
+#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
msgid "warning: "
msgstr "advertencia: "
-#: midi2ly.py:88 midi2ly.py:907
+#: midi2ly.py:87 midi2ly.py:907
msgid "error: "
msgstr "error: "
-#: midi2ly.py:89
+#: midi2ly.py:88
msgid "Exiting... "
msgstr "Saliendo... "
-#: midi2ly.py:834
+#: midi2ly.py:833
#, python-format
msgid "%s output to `%s'..."
msgstr "salida de %s hacia «%s»..."
-#: midi2ly.py:847
+#: midi2ly.py:846
#, python-format
msgid "Convert %s to LilyPond input.\n"
msgstr "Convertir %s a entrada de LilyPond.\n"
-#: midi2ly.py:852
+#: midi2ly.py:851
msgid "print absolute pitches"
msgstr "mostrar las alturas absolutas"
-#: midi2ly.py:854 midi2ly.py:869
+#: midi2ly.py:853 midi2ly.py:868
msgid "DUR"
msgstr "DURACIÓN"
-#: midi2ly.py:855
+#: midi2ly.py:854
msgid "quantise note durations on DUR"
msgstr "cuantizar las duraciones de las notas sobre DURACIÓN"
-#: midi2ly.py:858
+#: midi2ly.py:857
msgid "print explicit durations"
msgstr "mostrar las duraciones explícitas"
-#: midi2ly.py:862
+#: midi2ly.py:861
msgid "set key: ALT=+sharps|-flats; MINOR=1"
msgstr "establecer la tonalidad: ALT=+sostenidos|-bemoles; MENOR=1"
-#: midi2ly.py:863
+#: midi2ly.py:862
msgid "ALT[:MINOR]"
msgstr "ALT[:MENOR]"
-#: midi2ly.py:868
+#: midi2ly.py:867
msgid "quantise note starts on DUR"
msgstr "cuantizar los comienzos de las notras sobre DUR"
-#: midi2ly.py:871
+#: midi2ly.py:870
msgid "DUR*NUM/DEN"
msgstr "DURACIÓN*NUMERADOR/DENOMINADOR"
-#: midi2ly.py:874
+#: midi2ly.py:873
msgid "allow tuplet durations DUR*NUM/DEN"
msgstr "permitir duraciones de grupos irregulares DURACIÓN*NUMERADOR/DENOMINADOR"
-#: midi2ly.py:886
+#: midi2ly.py:885
msgid "treat every text as a lyric"
msgstr "tratar todos los textos como letra"
-#: midi2ly.py:889
+#: midi2ly.py:888
msgid "Examples"
msgstr "Ejemplos"
msgid "no files specified on command line."
msgstr "no se ha especificado ningún archivo en la línea de órdenes."
-#: musicxml2ly.py:213
+#: 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 "Se encontró un archivo creado mediante Dolet 3.4 para Sibelius que contiene información de barrados errónea. Toda la información de barrado en el archivo MusicXML se ignorará"
-#: musicxml2ly.py:229 musicxml2ly.py:231
+#: 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 "Se encontró un archivo creado mediante Noteworthy Composer's nwc2xml que contiene información de barrados errónea. Toda la información de barrado en el archivo MusicXML se ignorará"
+
+#: musicxml2ly.py:362 musicxml2ly.py:364
#, python-format
msgid "Unprocessed PartGroupInfo %s encountered"
msgstr "Se ha encontrado el PartGroupInfo sin procesar %s"
-#: musicxml2ly.py:471
+#: musicxml2ly.py:594
+#, python-format
+msgid "Encountered note at %s without type and duration (=%s)"
+msgstr "Se ha encontrado una nota en %s sin typo y duración (=%s)"
+
+#: musicxml2ly.py:613
#, python-format
msgid "Encountered rational duration with denominator %s, unable to convert to lilypond duration"
msgstr "Se ha encontrado una duración racional con denominador %s, no se puede convertir a duracion de lilypond"
-#: musicxml2ly.py:654
+#: musicxml2ly.py:868
+msgid "Unable to extract key signature!"
+msgstr "¡No se ha podido extraer la armadura de la tonalidad!"
+
+#: musicxml2ly.py:895
#, python-format
-msgid "unknown mode %s, expecting 'major' or 'minor'"
-msgstr "modo %s desconocido, se esperaba «major» or «minor»"
+msgid "unknown mode %s, expecting 'major' or 'minor' or a church mode!"
+msgstr "¡Modo %s desconocido, se esperaba «major», «minor» o un modo eclesiástico!"
-#: musicxml2ly.py:692
+#: musicxml2ly.py:968
#, python-format
msgid "Encountered unprocessed marker %s\n"
msgstr "Se ha encontrado el marcador sin procesar %s\n"
-#: musicxml2ly.py:786
+#: musicxml2ly.py:1062
#, python-format
msgid "unknown span event %s"
msgstr "evento de extensión %s desconocido"
-#: musicxml2ly.py:796
+#: musicxml2ly.py:1072
#, python-format
msgid "unknown span type %s for %s"
msgstr "tipo de extensión %s deconocido para %s"
-#: musicxml2ly.py:1222
+#: musicxml2ly.py:1498
msgid "Unknown metronome mark, ignoring"
msgstr "Marca de metrónomo desconocida, se ignora"
#. TODO: Implement the other (more complex) way for tempo marks!
-#: musicxml2ly.py:1227
+#: musicxml2ly.py:1503
msgid "Metronome marks with complex relations (<metronome-note> in MusicXML) are not yet implemented."
msgstr "Las marcas metronómicas con relaciones complejas (<metronome-note> en MusicXML) no se encuentran implementadas aún."
-#: musicxml2ly.py:1383
+#: musicxml2ly.py:1703
#, python-format
msgid "Unable to convert chord type %s to lilypond."
msgstr "No se pudo convertir el acorde de tipo %s a lilypond."
-#: musicxml2ly.py:1529
+#: musicxml2ly.py:1849
#, python-format
msgid "drum %s type unknown, please add to instrument_drumtype_dict"
msgstr "tipo de percusión %s desconocido, añádalo al diccionario instrument_drumtype_dict"
-#: musicxml2ly.py:1533
+#: musicxml2ly.py:1853
msgid "cannot find suitable event"
msgstr "no se encuentra un evento adecuado"
-#: musicxml2ly.py:1623
+#: musicxml2ly.py:1994
#, python-format
-msgid "Negative skip %s"
-msgstr "Desplazamiento %s negativo"
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Desplazamiento negativo %s (desde la posición %s hasta la %s)"
-#: musicxml2ly.py:1775
+#: musicxml2ly.py:2134
#, python-format
msgid "Negative skip found: from %s to %s, difference is %s"
msgstr "Se ha encontrado un desplazamiento negativo: desde %s hasta %s, la diferencia es %s"
-#: musicxml2ly.py:1802
+#: musicxml2ly.py:2205
#, python-format
msgid "unexpected %s; expected %s or %s or %s"
msgstr "%s inesperado; se esperaba %s o %s o %s"
-#: musicxml2ly.py:1912
-msgid "cannot have two simultaneous slurs"
-msgstr "no puede haber dos ligaduras de expresión simultáneas"
+#: musicxml2ly.py:2311
+msgid "Encountered closing slur, but no slur is open"
+msgstr "Se ha encontrado el cierre de una ligadura de expresión, pero no hay ninguna abierta"
+
+#: musicxml2ly.py:2314
+msgid "Cannot have two simultaneous (closing) slurs"
+msgstr "No puede haber dos ligaduras de expresión (cerrándose) simultáneas"
+
+#: musicxml2ly.py:2324
+msgid "Cannot have a slur inside another slur"
+msgstr "No puede haber una ligadura de expresión dentro de otra"
-#: musicxml2ly.py:2050
+#: musicxml2ly.py:2327
+msgid "Cannot have two simultaneous slurs"
+msgstr "No puede haber dos ligaduras de expresión simultáneas"
+
+#: musicxml2ly.py:2455
#, python-format
msgid "cannot simultaneously have more than one mode: %s"
msgstr "no puede haber más de un modo al mismo tiempo: %s"
-#: musicxml2ly.py:2148
+#: musicxml2ly.py:2553
msgid "Converting to LilyPond expressions..."
msgstr "Conversión a expresiones de LilyPond..."
-#: musicxml2ly.py:2159
+#: musicxml2ly.py:2564
msgid "musicxml2ly [OPTION]... FILE.xml"
msgstr "musicxml2ly [OPCIÓN]... ARCHIVO.xml"
-#: musicxml2ly.py:2161
+#: 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"
"Convertir MusicXML desde ARCHIVO.xml a entrada de LilyPond.\n"
"SI el nombre de archivo aportado es -, musicxml2ly lee de la línea de órdenes.\n"
-#: musicxml2ly.py:2171
+#: musicxml2ly.py:2576
msgid ""
"Copyright (c) 2005--2008 by\n"
" Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
" Jan Nieuwenhuizen <janneke@gnu.org> y\n"
" Reinhold Kainhofer <reinhold@kainhofer.com>\n"
-#: musicxml2ly.py:2196
+#: musicxml2ly.py:2601
msgid "use lxml.etree; uses less memory and cpu time"
msgstr "usar lxml.etree; utiliza menos memoria y tiempo de procesador"
-#: musicxml2ly.py:2202
+#: musicxml2ly.py:2607
msgid "input file is a zip-compressed MusicXML file"
msgstr "el archivo de entrada es un archivo MusicXML comprimido en zip"
-#: musicxml2ly.py:2208
+#: musicxml2ly.py:2613
msgid "convert pitches in relative mode (default)"
msgstr "convertir las notas al modo relativo (por omisión)"
-#: musicxml2ly.py:2213
+#: musicxml2ly.py:2618
msgid "convert pitches in absolute mode"
msgstr "convertir las notas al modo absoluto"
-#: musicxml2ly.py:2216
+#: musicxml2ly.py:2621
msgid "LANG"
msgstr "IDIOMA"
-#: musicxml2ly.py:2218
+#: musicxml2ly.py:2623
msgid "use a different language file 'LANG.ly' and corresponding pitch names, e.g. 'deutsch' for deutsch.ly"
msgstr "usar un archivo de idioma distinto 'IDIOMA.ly' y los nombres de nota correspondientes, p.ej. 'deutsch' (alemán) para deutsch.ly"
-#: musicxml2ly.py:2224
+#: musicxml2ly.py:2629
msgid "do not convert directions (^, _ or -) for articulations, dynamics, etc."
msgstr "no convertir las direcciones (^, _ o -) para las articulaciones, expresiones de dinámica, etc."
-#: musicxml2ly.py:2230
+#: musicxml2ly.py:2635
msgid "do not convert beaming information, use lilypond's automatic beaming instead"
msgstr "no convertir la información de barrado, en vez de ello utilizar el barrado automático de lilypond"
-#: musicxml2ly.py:2238
+#: musicxml2ly.py:2643
msgid "set output filename to FILE, stdout if -"
msgstr "establecer el nombre del archivo de salida a ARCHIVO, y a la salida estándar si es -"
-#: musicxml2ly.py:2320
+#: musicxml2ly.py:2726
#, python-format
msgid "unknown part in part-list: %s"
msgstr "parte desconocida en la lista part-list: %s"
-#: musicxml2ly.py:2382
+#: musicxml2ly.py:2788
msgid "Input is compressed, extracting raw MusicXML data from stdin"
msgstr "El archivo de entrada está comprimido, extrayendo los datos de MusicXML en bruto a partir de la entrada estándar"
-#: musicxml2ly.py:2385
+#: musicxml2ly.py:2791
#, python-format
msgid "Input file %s is compressed, extracting raw MusicXML data"
msgstr "El archivo de entrada %s está comprimido, extrayendo los datos de MusicXML en bruto"
-#: musicxml2ly.py:2415
+#: musicxml2ly.py:2821
msgid "Reading MusicXML from Standard input ..."
msgstr "Leyendo MusicXML desde la entrada estándar..."
-#: musicxml2ly.py:2417
+#: musicxml2ly.py:2823
#, python-format
msgid "Reading MusicXML from %s ..."
msgstr "Leyendo MusicXML desde %s ..."
-#: musicxml2ly.py:2450
+#: musicxml2ly.py:2856
#, python-format
msgid "Output to `%s'"
msgstr "La salida se dirige hacia `%s'"
-#: musicxml2ly.py:2512
+#: musicxml2ly.py:2922
#, python-format
msgid "Unable to find input file %s"
msgstr "No se encuentra el archivo de entrada %s"
msgid "continuing, cross fingers"
msgstr "continuamos; cruce los dedos"
-#: accidental-engraver.cc:249
+#: accidental-engraver.cc:298
#, c-format
msgid "accidental typesetting list must begin with context-name: %s"
msgstr "la lista de tippografiado de alteraciones accidentales debe comenzar con context-name: %s"
-#: accidental-engraver.cc:276
-#, c-format
-msgid "ignoring unknown accidental rule: %s"
-msgstr "se ignora la regla desconocida de alteración accidental: %s"
-
-#: accidental-engraver.cc:292
+#: accidental-engraver.cc:328
#, c-format
-msgid "pair or context-name expected for accidental rule, found %s"
-msgstr "se esperaba una pareja o un nombre de contexto para la regla de alteración accidental, se ha encontrado %s"
+msgid "procedure or context-name expected for accidental rule, found %s"
+msgstr "se esperaba un procedimiento o un nombre de contexto para la regla de alteración accidental, se ha encontrado %s"
#: accidental.cc:187
#, c-format
msgid "unterminated extender"
msgstr "prolongación sin terminar"
+#: font-config-scheme.cc:140 font-config.cc:57
+#, c-format
+msgid "failed adding font directory: %s"
+msgstr "fallo al añadir la carpeta de tipografías: %s"
+
+#: font-config-scheme.cc:142 font-config.cc:59
+#, c-format
+msgid "adding font directory: %s"
+msgstr "añadiendo carpeta de tipografías: %s"
+
+#: font-config-scheme.cc:156
+#, c-format
+msgid "failed adding font file: %s"
+msgstr "fallo al añadir el archivo de fuente tipográfica: %s"
+
+#: font-config-scheme.cc:158
+#, c-format
+msgid "adding font file: %s"
+msgstr "añadiendo archivo de fuente tipográfica: %s"
+
#: font-config.cc:28
msgid "Initializing FontConfig..."
msgstr "Inicializando FontConfig..."
msgid "Rebuilding FontConfig cache %s, this may take a while..."
msgstr "Reconstruyendo la caché de FontConfig %s, puede tardar un rato..."
-#: font-config.cc:57
-#, c-format
-msgid "failed adding font directory: %s"
-msgstr "fallo al añadir la carpeta de tipografías: %s"
-
-#: font-config.cc:59
-#, c-format
-msgid "adding font directory: %s"
-msgstr "añadiendo carpeta de tipografías: %s"
+#: font-config.cc:63
+msgid "Building font database."
+msgstr "Construyendo la base de datos de fuentes tipográficas."
#: general-scheme.cc:202
msgid "infinity or NaN encountered while converting Real number"
msgid "setting to zero"
msgstr "estableciendo al valor cero"
-#: general-scheme.cc:422 output-ps.scm:62
+#: general-scheme.cc:422 output-ps.scm:63
msgid "Found infinity or nan in output. Substituting 0.0"
msgstr "Se ha encontrado Infinito o NaN en la salida. Se sustituye por 0.0"
msgid "type check for `%s' failed; value `%s' must be of type `%s'"
msgstr "ha fallado la comprobación de tipo para «%s»; el valor «%s» debe ser del tipo «%s»"
-#: lily-lexer.cc:251
+#: lily-lexer.cc:252
msgid "include files are not allowed in safe mode"
msgstr "no se permiten los archivos de inclusión en el modo seguro"
-#: lily-lexer.cc:270
+#: lily-lexer.cc:271
#, c-format
msgid "identifier name is a keyword: `%s'"
msgstr "el nombre del identificativo es una palabra clave: «%s»"
-#: lily-lexer.cc:285
+#: lily-lexer.cc:286
#, c-format
msgid "error at EOF: %s"
msgstr "error al final del archivo (EOF): %s"
msgid "Processing `%s'"
msgstr "Procesando «%s»"
-#: lily-parser.cc:99
+#: lily-parser.cc:95
msgid "Parsing..."
msgstr "Analizando..."
-#: lily-parser.cc:127
+#: lily-parser.cc:123
msgid "braces do not match"
msgstr "las llaves no concuerdan"
msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice."
msgstr "La sílaba de la letra no tiene nota. Utilice \\lyricsto o associatedVoice."
-#: main.cc:100
+#: main.cc:97
#, c-format
msgid ""
"This program is free software. It is covered by the GNU General Public\n"
"él bajo ciertas condiciones. Invóquelo como `%s --warranty' para obtener\n"
"más información.\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"
"59 Temple Place - Suite 330,\n"
"Boston, MA 02111-1307, USA.\n"
-#: main.cc:137
+#: main.cc:134
msgid "SYM[=VAL]"
msgstr "SÍMBOLO[=VALOR]"
-#: main.cc:138
+#: main.cc:135
msgid ""
"set Scheme option SYM to VAL (default: #t).\n"
"Use -dhelp for help."
"establecer la opción de Scheme SÍMBOLO a VALOR (por omisión: #t).\n"
"Use -dhelp para obtener ayuda."
-#: main.cc:141
+#: main.cc:138
msgid "EXPR"
msgstr "EXPRESIÓN"
-#: main.cc:141
+#: main.cc:138
msgid "evaluate scheme code"
msgstr "evaluar código de Scheme"
#. Bug in option parser: --output =foe is taken as an abbreviation
#. for --output-format.
-#: main.cc:144
+#: main.cc:141
msgid "FORMATs"
msgstr "FORMATOs"
-#: main.cc:144
+#: main.cc:141
msgid "dump FORMAT,... Also as separate options:"
msgstr "volcar FORMATO,... También como opciones separadas:"
-#: main.cc:145
-msgid "generate DVI (tex backend only)"
-msgstr "generar un DVI (sólo para el 'backend' tex)"
-
-#: main.cc:146
+#: main.cc:142
msgid "generate PDF (default)"
msgstr "generar un PDF (predeterminado)"
-#: main.cc:147
+#: main.cc:143
msgid "generate PNG"
msgstr "generar un PNG"
-#: main.cc:148
+#: main.cc:144
msgid "generate PostScript"
msgstr "generar un PostScript"
-#: main.cc:149
-msgid "generate TeX (tex backend only)"
-msgstr "generar un TeX (sólo para el 'backend' tex)"
-
-#: main.cc:151
+#: main.cc:146
msgid "FIELD"
msgstr "CAMPO"
-#: main.cc:151
+#: main.cc:146
msgid ""
"dump header field FIELD to file\n"
"named BASENAME.FIELD"
"volcar el campo de cabecera CAMPO a un archivo\n"
"llamado NOMBRE_BASE.CAMPO"
-#: main.cc:153
+#: main.cc:148
msgid "add DIR to search path"
msgstr "añadir DIRECTORIO a la ruta de búsqueda"
-#: main.cc:154
+#: main.cc:149
msgid "use FILE as init file"
msgstr "usar ARCHIVO como archivo de inicialización"
-#: main.cc:156
+#: main.cc:151
msgid "USER, GROUP, JAIL, DIR"
msgstr "USUARIO, GRUPO, JAULA, DIRECTORIO"
-#: main.cc:156
+#: main.cc:151
msgid ""
"chroot to JAIL, become USER:GROUP\n"
"and cd into DIR"
"chroot a JAULA, convertirse en USUARIO:GRUPO\n"
"y cd al DIRECTORIO"
-#: main.cc:159
+#: main.cc:154
msgid "write output to FILE (suffix will be added)"
msgstr "escribir la salida en el ARCHIVO (se añadirá el sufijo)"
-#: main.cc:160
+#: main.cc:155
msgid "relocate using directory of lilypond program"
msgstr "relocalizar utilizando el directorio del programa lilypond"
-#: main.cc:226
+#: main.cc:221
#, c-format
msgid ""
"Copyright (c) %s by\n"
"%s y otros."
#. No version number or newline here. It confuses help2man.
-#: main.cc:254
+#: main.cc:249
#, c-format
msgid "Usage: %s [OPTION]... FILE..."
msgstr "Uso: %s [OPCIÓN]... ARCHIVO..."
-#: main.cc:256
+#: main.cc:251
#, c-format
msgid "Typeset music and/or produce MIDI from FILE."
msgstr "Componer tipográficamente la música y/o producir MIDI a partir de ARCHIVO."
-#: main.cc:258
+#: main.cc:253
#, c-format
msgid "LilyPond produces beautiful music notation."
msgstr "LilyPond produce una notación musical bella y hermosa."
-#: main.cc:260
+#: main.cc:255
#, c-format
msgid "For more information, see %s"
msgstr "Para ver más información, consulte %s"
-#: main.cc:262
+#: main.cc:257
#, c-format
msgid "Options:"
msgstr "Opciones:"
-#: main.cc:266
-#, c-format
-msgid "Report bugs via %s"
-msgstr "Informe de los fallos a %s"
-
-#: main.cc:312
+#: main.cc:311
#, c-format
msgid "expected %d arguments with jail, found: %u"
msgstr "se esperaban %d argumentos con la jaula, se han encontrado: %u"
-#: main.cc:326
+#: main.cc:325
#, c-format
msgid "no such user: %s"
msgstr "no existe el usuario %s"
-#: main.cc:328
+#: main.cc:327
#, c-format
msgid "cannot get user id from user name: %s: %s"
msgstr "no se puede obtener el identificador de usuario a partir del nombre: %s: %s"
-#: main.cc:343
+#: main.cc:342
#, c-format
msgid "no such group: %s"
msgstr "no existe este grupo: %s"
-#: main.cc:345
+#: main.cc:344
#, c-format
msgid "cannot get group id from group name: %s: %s"
msgstr "no se puede obtener el id de grupo a partir del nombre: %s: %s"
-#: main.cc:353
+#: main.cc:352
#, c-format
msgid "cannot chroot to: %s: %s"
msgstr "no se puede hacer chroot a: %s: %s"
-#: main.cc:360
+#: main.cc:359
#, c-format
msgid "cannot change group id to: %d: %s"
msgstr "no se puede cambiar el grupo del usuario a %d: %s"
-#: main.cc:366
+#: main.cc:365
#, c-format
msgid "cannot change user id to: %d: %s"
msgstr "no se puede cambiar el identificador de usuario a %d: %s"
-#: main.cc:372
+#: main.cc:371
#, c-format
msgid "cannot change working directory to: %s: %s"
msgstr "no se puede cambiar el directorio de trabajo a: %s: %s"
-#: main.cc:619
+#: main.cc:611
#, c-format
msgid "exception caught: %s"
msgstr "se ha capturado una excepción: %s"
msgid "cannot write to file: `%s'"
msgstr "no se puede escribir el archivo: «%s»"
-#: minimal-page-breaking.cc:42
-msgid "Computing page breaks..."
+#: minimal-page-breaking.cc:38 paper-score.cc:105
+msgid "Calculating line breaks..."
+msgstr "Calculando los saltos de línea..."
+
+#: minimal-page-breaking.cc:42 layout-page-layout.scm:463
+msgid "Calculating page breaks..."
msgstr "Calculando saltos de página..."
#: music-iterator.cc:171
msgid "transposition by %s makes alteration larger than double"
msgstr "la transposición de %s transforma la alteración en más que doble"
-#: new-dynamic-engraver.cc:128
+#: new-dynamic-engraver.cc:129
#, c-format
msgid ""
"unknown crescendo style: %s\n"
msgid "Finding the ideal number of pages..."
msgstr "Buscando el número de páginas ideal..."
-#: optimal-page-breaking.cc:76
+#: optimal-page-breaking.cc:78
msgid "Fitting music on 1 page..."
msgstr "Disponiendo la música en una página..."
-#: optimal-page-breaking.cc:78
+#: optimal-page-breaking.cc:80
#, c-format
msgid "Fitting music on %d pages..."
msgstr "Disponiendo la música en %d páginas..."
-#: optimal-page-breaking.cc:80
+#: optimal-page-breaking.cc:82
#, c-format
msgid "Fitting music on %d or %d pages..."
msgstr "Disponiendo la música en %d o %d páginas..."
-#: optimal-page-breaking.cc:157 page-turn-page-breaking.cc:226
+#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
#: paper-score.cc:146
msgid "Drawing systems..."
msgstr "Dibujando los sistemas..."
msgid "Layout output to `%s'..."
msgstr "Salida de la página hacia «%s»..."
-#: paper-score.cc:105
-msgid "Calculating line breaks..."
-msgstr "Calculando los saltos de línea..."
-
#: paper-score.cc:118
#, c-format
msgid "Element count %d (spanners %d) "
msgid "GUILE signaled an error for the expression beginning here"
msgstr "GUILE ha señalado un error para la expresión que comienza aquí"
-#: percent-repeat-engraver.cc:200
+#: percent-repeat-engraver.cc:202
msgid "unterminated percent repeat"
msgstr "repetición de porcentaje sin terminar"
msgid "remapping modulo 16"
msgstr "se reasigna módulo 16"
-#: performance.cc:101
+#: performance.cc:100
#, c-format
msgid "MIDI output to `%s'..."
msgstr "Salida MIDI hacia «%s»..."
-#: phrasing-slur-engraver.cc:139
+#: phrasing-slur-engraver.cc:146
msgid "unterminated phrasing slur"
msgstr "ligadura de fraseo sin terminar"
msgid "cannot end slur"
msgstr "no se puede terminar la ligadura de expresión"
-#: slur.cc:357
+#: slur.cc:359
#, c-format
msgid "Ignoring grob for slur: %s. avoid-slur not set?"
msgstr "Se ignora el objeto gráfico para la ligadura: %s. ¿No está establecido avoid-slur?"
msgid "weird stem size, check for narrow beams"
msgstr "tamaño de plica extraño, compruebe que no haya barras estrechas"
-#: stem.cc:627
+#: stem.cc:623
#, c-format
msgid "flag `%s' not found"
msgstr "no se encuentra el indicador «%s»"
-#: stem.cc:638
+#: stem.cc:639
#, c-format
msgid "flag stroke `%s' not found"
msgstr "no se encuentra el impacto «%s» de indicador"
msgid "giving up"
msgstr "abandonando"
-#: parser.yy:729
+#: parser.yy:804
msgid "\\paper cannot be used in \\score, use \\layout instead"
msgstr "no se puede usar \\paper dentro de \\score, utilice \\layout en su lugar"
-#: parser.yy:753
+#: parser.yy:828
msgid "need \\paper for paper block"
msgstr "es necesario \\paper para el bloque 'paper'"
-#: parser.yy:1224
+#: parser.yy:1299
msgid "Grob name should be alphanumeric"
msgstr "El nombre del objeto gráfico ha de ser alfanumérico"
-#: parser.yy:1522
+#: parser.yy:1597
msgid "second argument must be pitch list"
msgstr "el segundo argumento debe ser una lista de notas"
-#: parser.yy:1549 parser.yy:1554 parser.yy:2026
+#: parser.yy:1624 parser.yy:1629 parser.yy:2101
msgid "have to be in Lyric mode for lyrics"
msgstr "para la letra se debe estar en el modo Lyric"
-#: parser.yy:1651
+#: parser.yy:1726
msgid "expecting string as script definition"
msgstr "se espera una cadena como definición del guión"
-#: parser.yy:1806 parser.yy:1856
+#: parser.yy:1881 parser.yy:1931
#, c-format
msgid "not a duration: %d"
msgstr "no es una duración: %d"
-#: parser.yy:1980
+#: parser.yy:2055
msgid "have to be in Note mode for notes"
msgstr "para las notas se debe estar en el modo Note"
-#: parser.yy:2041
+#: parser.yy:2116
msgid "have to be in Chord mode for chords"
msgstr "para los acordes se debe estar en el modo Chord"
msgid "invalid character: `%c'"
msgstr "carácter no válido: «%c»"
-#: lexer.ll:803 lexer.ll:804
+#: lexer.ll:803
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "cadena de escape desconocida: `\\%s'"
-#: lexer.ll:910 lexer.ll:911
+#: lexer.ll:910
#, c-format
msgid "file too old: %s (oldest supported: %s)"
msgstr "archivo demasiado antiguo: %s (el más antiguo que se puede tratar es: %s)"
-#: lexer.ll:911 lexer.ll:912
+#: lexer.ll:911
msgid "consider updating the input with the convert-ly script"
msgstr "considere la actualización de la entrada mediante el guión (script) convert-ly"
-#: lexer.ll:917 lexer.ll:918
+#: lexer.ll:917
#, c-format
msgid "program too old: %s (file requires: %s)"
msgstr "el programa es demasiado antiguo: %s (el archivo necesita: %s)"
-#: backend-library.scm:19 lily.scm:777 ps-to-png.scm:58
+#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
#, scheme-format
msgid "Invoking `~a'..."
msgstr "Invocando «~a»..."
msgid "`~a' failed (~a)"
msgstr "«~a» ha fallado (~a)"
-#: backend-library.scm:116 framework-tex.scm:344 framework-tex.scm:369
+#: backend-library.scm:116
#, scheme-format
msgid "Converting to `~a'..."
msgstr "Convirtiendo en «~a»..."
msgid "translator listens to nonexisting event class ~A"
msgstr "el traductor está escuchando a una clase de evento ~A que no existe"
-#: define-markup-commands.scm:599
+#: define-markup-commands.scm:569
msgid "no systems found in \\score markup, does it have a \\layout block?"
msgstr "no se ha encontrado ningún sistema en el marcado \\score, ¿tiene un bloque \\layout?"
-#: define-markup-commands.scm:2428
+#: define-markup-commands.scm:2387
#, scheme-format
msgid "Cannot find glyph ~a"
msgstr "No se encuentra el glifo ~a"
-#: define-markup-commands.scm:2737
+#: define-markup-commands.scm:2696
#, scheme-format
msgid "not a valid duration string: ~a"
msgstr "no es una cadena válida de duración: ~a"
msgstr "tipo de repetición «~S» desconocido"
#: define-music-types.scm:693
-msgid "See music-types.scm for supported repeats"
-msgstr "Consulte el archivo music-types.scm para ver los tipos de repetición soportados"
+msgid "See define-music-types.scm for supported repeats"
+msgstr "Consulte el archivo define-music-types.scm para ver los tipos de repetición soportados"
#: document-backend.scm:99
#, scheme-format
msgid "unknown Grob interface: ~S"
msgstr "interfaz de Objeto gráfico desconocido: ~S"
-#: documentation-lib.scm:48
+#: documentation-lib.scm:49
#, scheme-format
msgid "Processing ~S..."
msgstr "Procesando ~S..."
-#: documentation-lib.scm:164
+#: documentation-lib.scm:165
#, scheme-format
msgid "Writing ~S..."
msgstr "Escribiendo ~S..."
-#: documentation-lib.scm:186
+#: documentation-lib.scm:187
#, scheme-format
msgid "cannot find description for property ~S (~S)"
msgstr "no se encuentra la descripción de la propiedad ~S (~S)"
+#: flag-styles.scm:145
+#, scheme-format
+msgid "flag stroke `~a' or `~a' not found"
+msgstr "no se encuentra el impacto `~a' o `~a' de indicador"
+
#: framework-eps.scm:90
#, scheme-format
msgid "Writing ~a..."
msgstr "Escribiendo «~a»..."
-#: framework-ps.scm:282
+#: framework-ps.scm:277
#, scheme-format
msgid "cannot embed ~S=~S"
msgstr "no se puede empotrar ~S=~S"
-#: framework-ps.scm:335
+#: framework-ps.scm:330
#, scheme-format
msgid "cannot extract file matching ~a from ~a"
msgstr "no se puede extraer la coincidencia de archivos ~a a partir de ~a"
-#: framework-ps.scm:352
+#: framework-ps.scm:347
#, scheme-format
msgid "do not know how to embed ~S=~S"
msgstr "no sabemos cómo empotrar ~S=~S"
-#: framework-ps.scm:383
+#: framework-ps.scm:378
#, scheme-format
msgid "do not know how to embed font ~s ~s ~s"
msgstr "no sabemos cómo empotrar la tipografía ~s ~s ~s"
-#: framework-ps.scm:753
+#: framework-ps.scm:748
#, scheme-format
msgid "cannot convert <stdout> to ~S"
msgstr "no se puede convertir <stdout> a ~S"
-#: framework-ps.scm:772 framework-ps.scm:775
-#, scheme-format
-msgid "cannot generate ~S using the postscript back-end"
-msgstr "no se puede generar ~S usando el 'back-end' de postscript"
-
-#: framework-ps.scm:782
+#: framework-ps.scm:771
msgid ""
"\n"
"The PostScript backend does not support the system-by-system \n"
" %% Start cut-&-pastable-section\n"
" %% ****************************************************************\n"
-#: framework-tex.scm:361
-#, scheme-format
-msgid "TeX file name must not contain whitespace: `~a'"
-msgstr "El nombre del archivo de TeX no debe contener espacios: «~a»"
-
#: graphviz.scm:53
#, scheme-format
msgid "Writing graph `~a'..."
msgid "Error in beam quanting. Expected ~S 0, found ~S."
msgstr "Error en la cuantización de la barra. Se esperaba ~S 0, se ha encontrado ~S."
-#: layout-page-layout.scm:124
+#: layout-page-layout.scm:126
msgid "Can't fit systems on page -- ignoring between-system-padding"
msgstr "No se pueden dar cabida a todos los sistemas en la página; se ignora between-system-padding"
-#: layout-page-layout.scm:458
-msgid "Calculating page breaks..."
-msgstr "Calculando saltos de página..."
-
-#: lily-library.scm:588
+#: lily-library.scm:602
#, scheme-format
msgid "unknown unit: ~S"
msgstr "unidad desconocida: ~S "
-#: lily-library.scm:622
+#: lily-library.scm:636
#, scheme-format
msgid "no \\version statement found, please add~afor future compatibility"
msgstr "no se ha encontrado ninguna instrucción \\version, escriba~apara disponer de compatibilidad en el futuro"
-#: lily-library.scm:630
+#: lily-library.scm:644
msgid "old relative compatibility not used"
msgstr "no se ha usado la compatibilidad con el modo relativo antiguo"
-#: lily.scm:178
+#: lily.scm:179
#, scheme-format
msgid "cannot find: ~A"
msgstr "no se encuentra: ~A"
-#: lily.scm:243
+#: lily.scm:228
#, scheme-format
msgid "wrong type for argument ~a. Expecting ~a, found ~s"
msgstr "tipo equivocado para el argumento ~a. Se esperaba ~a, se encontró ~s"
-#: lily.scm:641
+#: lily.scm:625
#, scheme-format
msgid "job ~a terminated with signal: ~a"
msgstr "la tarea ~a ha terminado con la señal: ~a"
-#: lily.scm:644
+#: lily.scm:628
#, scheme-format
msgid ""
"logfile ~a (exit ~a):\n"
"archivo de registro ~a (salida ~a):\n"
"~a"
-#: lily.scm:669 lily.scm:767
+#: lily.scm:653 lily.scm:751
#, scheme-format
msgid "failed files: ~S"
msgstr "archivos que han fallado: ~S"
-#: lily.scm:757
+#: lily.scm:741
#, scheme-format
msgid "Redirecting output to ~a..."
msgstr "Redirigiendo la salida hacia ~a..."
msgid "Music head function must return Music object"
msgstr "La función principal de música debe devolver un objeto musical"
-#: ly-syntax-constructors.scm:150
+#: ly-syntax-constructors.scm:154
#, scheme-format
msgid "Invalid property operation ~a"
msgstr "Operación de propiedad ~a inválida"
msgid "cannot find quoted music: `~S'"
msgstr "no se encuentra la música citada: «~S»"
-#: music-functions.scm:990
+#: music-functions.scm:1198
#, scheme-format
msgid "unknown accidental style: ~S"
msgstr "estilo de alteración ~S desconocido"
-#: output-ps.scm:285
+#: output-ps.scm:294
msgid "utf-8-string encountered in PS backend"
msgstr "se ha encontrado una cadena UTF-8 en el 'backend' de PostScript"
msgid "cannot decypher Pango description: ~a"
msgstr "no se puede descifrar la descripción de Pango: ~a"
-#: output-tex.scm:96
-#, scheme-format
-msgid "cannot find ~a in ~a"
-msgstr "no se encuentra ~a dentro de ~a"
-
-#: paper.scm:86
+#: paper.scm:104
msgid "set-global-staff-size: not in toplevel scope"
msgstr "set-global-staff-size: no está en el ámbito de nivel más alto"
-#: paper.scm:226
+#: paper.scm:244
#, scheme-format
msgid "This is not a \\layout {} object, ~S"
msgstr "Esto no es un objeto de \\layout {} , ~S"
-#: paper.scm:238
+#: paper.scm:256
#, scheme-format
-msgid "Unknown papersize: ~a"
+msgid "Unknown paper size: ~a"
msgstr "Tamaño de papel desconocido: ~a"
#. TODO: should raise (generic) exception with throw, and catch
#. that in parse-scm.cc
-#: paper.scm:253
+#: paper.scm:271
msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
msgstr "Debe usar #(set-paper-size .. ) dentro de \\paper { ... }"
# 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>, 2008
+# Jean-Charles Malahieude <lilyfan@orange.fr>, 2008
#
msgid ""
msgstr ""
-"Project-Id-Version: lilypond 2.11.57\n"
+"Project-Id-Version: lilypond 2.12.0\n"
"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs\n"
-"POT-Creation-Date: 2008-08-23 18:49+0200\n"
-"PO-Revision-Date: 2008-08-31 23:33+0200\n"
+"POT-Creation-Date: 2008-12-20 11:58+0100\n"
+"PO-Revision-Date: 2008-12-31 13:53+0100\n"
"Last-Translator: Jean-Charles Malahieude <lilyfan@orange.fr>\n"
"Language-Team: French <traduc@traduc.org>\n"
"MIME-Version: 1.0\n"
msgid "%s has been replaced by %s"
msgstr "%s a été remplacé par %s"
-#: convertrules.py:24 musicexp.py:16 convert-ly.py:48 lilypond-book.py:82
+#: 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"
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"
msgid "Writing fonts to %s"
msgstr "Écriture des fontes vers %s"
-#: lilylib.py:101 lilylib.py:152
+#: lilylib.py:91 lilylib.py:142
#, python-format
msgid "Invoking `%s'"
msgstr "Appel de « %s »"
-#: lilylib.py:103 lilylib.py:154
+#: lilylib.py:93 lilylib.py:144
#, python-format
msgid "Running %s..."
msgstr "Exécution de %s..."
-#: lilylib.py:219
+#: lilylib.py:209
#, python-format
msgid "Usage: %s"
msgstr "Utilisation : %s"
-#: musicexp.py:585
+#: 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:594
+#: musicexp.py:665
msgid "encountered repeat without body"
msgstr "réprise vide détectée"
-#: musicxml.py:13 convert-ly.py:51 lilypond-book.py:85 warn.cc:54 input.cc:96
+#. 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"
-#: musicxml.py:298
-msgid "requested time signature, but time sig is unknown"
-msgstr "Une métrique est obligatoire, mais la définition trouvée est inconnue"
+#. 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:354
+#: musicxml.py:431
#, python-format
-msgid "Encountered note at %s with %s duration (no <type> element):"
-msgstr "Une note se trouve en %s, avec une durée de %s (élément sans <type>) :"
+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:388
+#: 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:1342 convert-ly.py:72 lilypond-book.py:109 midi2ly.py:846
+#: 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:1343
+#: abc2ly.py:1342
#, python-format
msgid ""
"abc2ly converts ABC music files (see\n"
"abc2ly convertit les fichiers musicaux ABC (voir\n"
"%s) au format LilyPond.\n"
-#: abc2ly.py:1351 convert-ly.py:79 etf2ly.py:1190 lilypond-book.py:195
-#: midi2ly.py:882 musicxml2ly.py:2185 main.cc:161
+#: 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:1355 convert-ly.py:83 etf2ly.py:1186 lilypond-book.py:126
-#: midi2ly.py:861 musicxml2ly.py:2167 main.cc:150
+#: 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:1357 etf2ly.py:1191 midi2ly.py:865
+#: abc2ly.py:1356 etf2ly.py:1191 midi2ly.py:864
msgid "write output to FILE"
msgstr "produire la sortie dans le FICHIER"
-#: abc2ly.py:1359
+#: abc2ly.py:1358
msgid "be strict about success"
msgstr "être strict sur la réussite"
-#: abc2ly.py:1361
+#: abc2ly.py:1360
msgid "preserve ABC's notion of beams"
msgstr "préserver la notion de lien de croches propre à ABC"
-#: abc2ly.py:1363 convert-ly.py:120 etf2ly.py:1199 lilypond-book.py:202
-#: midi2ly.py:894 musicxml2ly.py:2240
-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:31
+#: 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."
"Par défaut, de la version indiquée par la commande \\version \n"
"vers la version courante de LilyPond."
-#: convert-ly.py:33 lilypond-book.py:59
+#: convert-ly.py:35 lilypond-book.py:71
msgid "Examples:"
msgstr "Exemples :"
-#: convert-ly.py:67 etf2ly.py:1173 lilypond-book.py:105 midi2ly.py:77
+#: 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:68 etf2ly.py:1174 lilypond-book.py:106 midi2ly.py:78
+#: 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:87 convert-ly.py:114
+#: convert-ly.py:89 convert-ly.py:116
msgid "VERSION"
msgstr "VERSION"
-#: convert-ly.py:89
+#: 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:92
+#: convert-ly.py:94
msgid "edit in place"
msgstr "éditer le fichier d'origine"
-#: convert-ly.py:96
+#: 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:102
+#: convert-ly.py:104
#, python-format
msgid "force updating \\version number to %s"
msgstr "forcer la mise à jour de \\version à %s"
-#: convert-ly.py:108
+#: 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:113
+#: convert-ly.py:115
#, python-format
msgid "convert to VERSION [default: %s]"
msgstr "convertir jusqu'à la VERSION [par défaut : %s]"
-#: convert-ly.py:160
+#: convert-ly.py:163
msgid "Applying conversion: "
msgstr "Conversion en cours : "
-#: convert-ly.py:173
+#: convert-ly.py:176
msgid "Error while converting"
msgstr "Erreur lors de la conversion"
-#: convert-ly.py:175
-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:196
+#: convert-ly.py:199
#, python-format
msgid "Processing `%s'... "
msgstr "Traitement de « %s »..."
-#: convert-ly.py:286 relocate.cc:362 source-file.cc:59
+#: 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:293
+#: 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 convertit partiellement un fichier ETF en un fichier LilyPond \n"
"exploitable.\n"
-#: etf2ly.py:1192 midi2ly.py:866 musicxml2ly.py:2233 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:1194 lilypond-book.py:198 midi2ly.py:883 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 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:103
+#: lilypond-book.py:115
#, python-format
msgid "Copyright (c) %s by"
msgstr "Copyright (c) %s détenu par"
-#: lilypond-book.py:113
+#: lilypond-book.py:125
msgid "FILTER"
msgstr "FILTRE"
-#: lilypond-book.py:116
+#: 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:121
+#: lilypond-book.py:133
msgid "FORMAT"
msgstr "FORMAT"
-#: lilypond-book.py:128
+#: lilypond-book.py:140
msgid "add DIR to include path"
msgstr "ajouter le RÉPERTOIRE au chemin de recherche des inclusions"
-#: lilypond-book.py:129 lilypond-book.py:136 lilypond-book.py:154
-#: lilypond-book.py:160 lilypond-book.py:166 lilypond-book.py:172 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:134
+#: 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:141
+#: lilypond-book.py:153
msgid "run executable PROG instead of latex"
msgstr "lancer l'exécutable PROG plutôt que latex"
-#: lilypond-book.py:142
+#: lilypond-book.py:154
msgid "PROG"
msgstr "PROG"
-#: lilypond-book.py:147
+#: lilypond-book.py:159
msgid "PAD"
msgstr "PAD"
-#: lilypond-book.py:149
+#: 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:153
+#: lilypond-book.py:165
msgid "write output to DIR"
msgstr "produire la sortie dans le RÉPERTOIRE"
-#: lilypond-book.py:159
+#: 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:165
+#: 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:171
+#: 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:176
+#: lilypond-book.py:188
msgid "COMMAND"
msgstr "COMMANDE"
-#: lilypond-book.py:177
+#: lilypond-book.py:189
msgid "process ly_files using COMMAND FILE..."
msgstr "Traîter ly_files en utilisant COMMANDE FICHIER..."
-#: lilypond-book.py:184
+#: 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:187 midi2ly.py:876 musicxml2ly.py:2190 main.cc:162
+#: lilypond-book.py:199 midi2ly.py:875 musicxml2ly.py:2595 main.cc:157
msgid "be verbose"
msgstr "Passer en mode verbeux"
-#: lilypond-book.py:825
+#: lilypond-book.py:871
#, python-format
msgid "file not found: %s"
msgstr "fichier non trouvé : %s"
-#: lilypond-book.py:1087
+#: lilypond-book.py:1142
#, python-format
msgid "deprecated ly-option used: %s=%s"
msgstr "option ly-option obsolète : %s=%s"
-#: lilypond-book.py:1089
+#: lilypond-book.py:1144
#, python-format
msgid "compatibility mode translation: %s=%s"
msgstr "bascule en mode de compatibilité : %s=%s"
-#: lilypond-book.py:1092
+#: lilypond-book.py:1147
#, python-format
msgid "deprecated ly-option used: %s"
msgstr "option ly-option obsolète : %s"
-#: lilypond-book.py:1094
+#: lilypond-book.py:1149
#, python-format
msgid "compatibility mode translation: %s"
msgstr "bascule en mode de compatibilité : %s"
-#: lilypond-book.py:1112
+#: lilypond-book.py:1167
#, python-format
msgid "ignoring unknown ly option: %s"
msgstr "option ly inconnue et ignorée : %s"
-#: lilypond-book.py:1538
+#: lilypond-book.py:1604
#, python-format
msgid "Opening filter `%s'"
msgstr "Ouverture du filtre « %s »"
-#: lilypond-book.py:1555
+#: lilypond-book.py:1621
#, python-format
msgid "`%s' failed (%d)"
msgstr "« %s » a échoué (%d)"
-#: lilypond-book.py:1556
+#: lilypond-book.py:1622
msgid "The error log is as follows:"
msgstr "Voici le journal d'erreurs :"
-#: lilypond-book.py:1618
+#: 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:1718
+#: lilypond-book.py:1784
msgid "Writing snippets..."
msgstr "Écriture des extraits..."
-#: lilypond-book.py:1724
+#: lilypond-book.py:1790
msgid "Processing..."
msgstr "Traitement..."
-#: lilypond-book.py:1730
+#: lilypond-book.py:1796
msgid "All snippets are up to date..."
msgstr "Tous les extraits sont à jour..."
-#: lilypond-book.py:1764
+#: lilypond-book.py:1830
#, python-format
msgid "cannot determine format for: %s"
msgstr "format indéterminé pour %s"
-#: lilypond-book.py:1775
+#: lilypond-book.py:1841
#, python-format
msgid "%s is up to date."
msgstr "%s est à jour."
-#: lilypond-book.py:1789
+#: lilypond-book.py:1855
#, python-format
msgid "Writing `%s'..."
msgstr "Écriture de « %s »..."
-#: lilypond-book.py:1847
+#: 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:1851
+#: lilypond-book.py:1917
#, python-format
msgid "Reading %s..."
msgstr "Lecture en cours de %s..."
-#: lilypond-book.py:1870
+#: lilypond-book.py:1937
msgid "Dissecting..."
msgstr "Dissection en cours..."
-#: lilypond-book.py:1886
+#: lilypond-book.py:1953
#, python-format
msgid "Compiling %s..."
msgstr "Compilation de %s..."
-#: lilypond-book.py:1895
+#: lilypond-book.py:1962
#, python-format
msgid "Processing include: %s"
msgstr "Traitement d'inclusion : %s"
-#: lilypond-book.py:1907
+#: lilypond-book.py:1974
#, python-format
msgid "Removing `%s'"
msgstr "Suppression de « %s »"
-#: midi2ly.py:85 lily-library.scm:620 lily-library.scm:629
+#: midi2ly.py:84 lily-library.scm:634 lily-library.scm:643
msgid "warning: "
msgstr "Avertissement : "
-#: midi2ly.py:88 midi2ly.py:907
+#: midi2ly.py:87 midi2ly.py:907
msgid "error: "
msgstr "Erreur : "
-#: midi2ly.py:89
+#: midi2ly.py:88
msgid "Exiting... "
msgstr "Fin d'exécution... "
-#: midi2ly.py:834
+#: midi2ly.py:833
#, python-format
msgid "%s output to `%s'..."
msgstr "%s reproduit dans « %s »..."
-#: midi2ly.py:847
+#: midi2ly.py:846
#, python-format
msgid "Convert %s to LilyPond input.\n"
msgstr "Convertir %s au format source LilyPond.\n"
-#: midi2ly.py:852
+#: midi2ly.py:851
msgid "print absolute pitches"
msgstr "afficher des tons absolus"
-#: midi2ly.py:854 midi2ly.py:869
+#: midi2ly.py:853 midi2ly.py:868
msgid "DUR"
msgstr "DUR"
-#: midi2ly.py:855
+#: midi2ly.py:854
msgid "quantise note durations on DUR"
msgstr "quantifier les durées de note d'après DUR"
-#: midi2ly.py:858
+#: midi2ly.py:857
msgid "print explicit durations"
msgstr "écrire des durées explicites"
-#: midi2ly.py:862
+#: 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:863
+#: midi2ly.py:862
msgid "ALT[:MINOR]"
msgstr "ALT[:MINEUR]"
-#: midi2ly.py:868
+#: midi2ly.py:867
msgid "quantise note starts on DUR"
msgstr "quantifier les débuts de note sur DUR"
-#: midi2ly.py:871
+#: midi2ly.py:870
msgid "DUR*NUM/DEN"
msgstr "DUR*NUM/DEN"
-#: midi2ly.py:874
+#: midi2ly.py:873
msgid "allow tuplet durations DUR*NUM/DEN"
msgstr "permettre des n-olets de durée DUR*NUM/DEN"
-#: midi2ly.py:886
+#: midi2ly.py:885
msgid "treat every text as a lyric"
msgstr "traiter chaque texte comme des paroles"
-#: midi2ly.py:889
+#: midi2ly.py:888
msgid "Examples"
msgstr "Exemples"
msgid "no files specified on command line."
msgstr "aucun fichier spéficié sur la ligne de commande."
-#: musicxml2ly.py:213
+#: 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:229 musicxml2ly.py:231
+#: 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:471
+#: 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: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:654
+#: 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'"
-msgstr "%s : mode inconnu. Devrait être « majeur » ou « mineur »"
+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:692
+#: musicxml2ly.py:968
#, python-format
msgid "Encountered unprocessed marker %s\n"
msgstr "Détection d'un marqueur non traité : %s\n"
-#: musicxml2ly.py:786
+#: musicxml2ly.py:1062
#, python-format
msgid "unknown span event %s"
msgstr "Événement de prolongation inconnu : « %s »"
-#: musicxml2ly.py:796
+#: 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:1222
+#: 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:1227
+#: 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:1383
+#: 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:1529
+#: 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:1533
+#: musicxml2ly.py:1853
msgid "cannot find suitable event"
msgstr "Aucun événement correspondant"
-#: musicxml2ly.py:1623
+#: musicxml2ly.py:1994
#, python-format
-msgid "Negative skip %s"
-msgstr "Retour en arrière de %s"
+msgid "Negative skip %s (from position %s to %s)"
+msgstr "Retour en arrière de %s (partant de %s et jusqu'à %s)"
-#: musicxml2ly.py:1775
+#: 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:1802
+#: 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:1912
-msgid "cannot have two simultaneous slurs"
+#: 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:2050
+#: musicxml2ly.py:2455
#, python-format
msgid "cannot simultaneously have more than one mode: %s"
msgstr "SVP, un seul mode à la fois : %s"
-#: musicxml2ly.py:2148
+#: musicxml2ly.py:2553
msgid "Converting to LilyPond expressions..."
msgstr "Conversion en expressions LilyPond..."
-#: musicxml2ly.py:2159
+#: musicxml2ly.py:2564
msgid "musicxml2ly [OPTION]... FILE.xml"
msgstr "musicxml2ly [options]... FICHIER.xml"
-#: musicxml2ly.py:2161
+#: 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"
"Convertit FICHIER.xml (MusicXML) au format LilyPnd.\n"
"Si le nom du fichier est « - », musicxml2ly lira la ligne de commande.\n"
-#: musicxml2ly.py:2171
+#: musicxml2ly.py:2576
msgid ""
"Copyright (c) 2005--2008 by\n"
" Han-Wen Nienhuys <hanwen@xs4all.nl>,\n"
" Jan Nieuwenhuizen <janneke@gnu.org> and\n"
" Reinhold Kainhofer <reinhold@kainhofer.com>\n"
-#: musicxml2ly.py:2196
+#: 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:2202
+#: 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:2208
+#: musicxml2ly.py:2613
msgid "convert pitches in relative mode (default)"
msgstr "convertir les hauteurs en mode relatif (par défaut)"
-#: musicxml2ly.py:2213
+#: musicxml2ly.py:2618
msgid "convert pitches in absolute mode"
msgstr "convertir les hauteurs en mode absolu"
-#: musicxml2ly.py:2216
+#: musicxml2ly.py:2621
msgid "LANG"
msgstr "LANG"
-#: musicxml2ly.py:2218
+#: 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:2224
+#: 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:2230
+#: 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:2238
+#: musicxml2ly.py:2643
msgid "set output filename to FILE, stdout if -"
msgstr "produire la sortie dans FICHIER (stdout si -)"
-#: musicxml2ly.py:2320
+#: 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:2382
+#: 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:2385
+#: 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:2415
+#: musicxml2ly.py:2821
msgid "Reading MusicXML from Standard input ..."
msgstr "Lecture du fichier MusicXML à partir de l'entrée standard..."
-#: musicxml2ly.py:2417
+#: musicxml2ly.py:2823
#, python-format
msgid "Reading MusicXML from %s ..."
msgstr "Lecture du fichier MusicXML %s..."
-#: musicxml2ly.py:2450
+#: musicxml2ly.py:2856
#, python-format
msgid "Output to `%s'"
msgstr "Fichier de sortie : « %s »"
-#: musicxml2ly.py:2512
+#: musicxml2ly.py:2922
#, python-format
msgid "Unable to find input file %s"
msgstr "impossible de trouver le fichier d'entrée : « %s »"
msgid "continuing, cross fingers"
msgstr "poursuite ; croisons les doigts."
-#: accidental-engraver.cc:249
+#: 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:276
+#: accidental-engraver.cc:328
#, c-format
-msgid "ignoring unknown accidental rule: %s"
-msgstr "altération accidentelle inconnue, donc ignorée : %s"
-
-#: accidental-engraver.cc:292
-#, 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:187
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..."
msgid "Rebuilding FontConfig cache %s, this may take a while..."
msgstr "Reconstitution du cache FontConfig %s. Patientez..."
-#: 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.cc:59
-#, 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:202
msgid "infinity or NaN encountered while converting Real number"
msgid "setting to zero"
msgstr "initialisation à zéro"
-#: general-scheme.cc:422 output-ps.scm:62
+#: 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"
"la vérification du type de « %s » a échoué ; \n"
" la valeur « %s » doit être du type « %s »"
-#: lily-lexer.cc:251
+#: lily-lexer.cc:252
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:270
+#: 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:285
+#: lily-lexer.cc:286
#, c-format
msgid "error at EOF: %s"
msgstr "erreur à la fin du fichier (EOF) : %s"
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"
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"
"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"
" é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."
"à 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 "é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: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"
"é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"
"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:226
+#: main.cc:221
#, c-format
msgid ""
"Copyright (c) %s by\n"
"%s et autres."
#. No version number or newline here. It confuses help2man.
-#: main.cc:254
+#: main.cc:249
#, c-format
msgid "Usage: %s [OPTION]... FILE..."
msgstr "Utilisation : %s [OPTIONS]... FICHIER..."
-#: main.cc:256
+#: 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:258
+#: main.cc:253
#, c-format
msgid "LilyPond produces beautiful music notation."
msgstr "LilyPond produit une jolie notation musicale"
-#: main.cc:260
+#: main.cc:255
#, c-format
msgid "For more information, see %s"
msgstr "Pour plus d'informations, voir %s"
-#: main.cc:262
+#: main.cc:257
#, c-format
msgid "Options:"
msgstr "Options :"
-#: main.cc:266
-#, c-format
-msgid "Report bugs via %s"
-msgstr ""
-"Signaler toute anomalie à \n"
-"%s"
-
-#: main.cc:312
+#: 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:326
+#: main.cc:325
#, c-format
msgid "no such user: %s"
msgstr "utilisateur inconnu : « %s »"
-#: main.cc:328
+#: 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:343
+#: main.cc:342
#, c-format
msgid "no such group: %s"
msgstr "groupe inconnu : %s"
-#: main.cc:345
+#: 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:353
+#: main.cc:352
#, c-format
msgid "cannot chroot to: %s: %s"
msgstr "impossible de chrooter vers : %s : %s"
-#: main.cc:360
+#: 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:366
+#: 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:372
+#: 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:619
+#: main.cc:611
#, c-format
msgid "exception caught: %s"
msgstr "exception capturée : %s"
msgid "cannot write to file: `%s'"
msgstr "impossible d'écrire dans le fichier : « %s »"
-#: minimal-page-breaking.cc:42
-msgid "Computing page breaks..."
+#: 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 "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:128
+#: new-dynamic-engraver.cc:129
#, c-format
msgid ""
"unknown crescendo style: %s\n"
msgid "Finding the ideal number of pages..."
msgstr "Détermination du nombre optimal de pages..."
-#: optimal-page-breaking.cc:76
+#: optimal-page-breaking.cc:78
msgid "Fitting music on 1 page..."
msgstr "Répartition de la musique sur une page..."
-#: optimal-page-breaking.cc:78
+#: 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:80
+#: 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:157 page-turn-page-breaking.cc:226
+#: optimal-page-breaking.cc:159 page-turn-page-breaking.cc:226
#: paper-score.cc:146
msgid "Drawing systems..."
msgstr "Dessin des systèmes..."
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) "
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"
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:139
+#: phrasing-slur-engraver.cc:146
msgid "unterminated phrasing slur"
msgstr "liaison de phrasé non terminée"
msgid "cannot end slur"
msgstr "impossible de terminer la liaison"
-#: slur.cc:357
+#: slur.cc:359
#, c-format
msgid "Ignoring grob for slur: %s. avoid-slur not set?"
msgstr ""
msgid "weird stem size, check for narrow beams"
msgstr "taille de hampe bizarre ; vérifier la présence de liens étroits"
-#: stem.cc:627
+#: stem.cc:623
#, c-format
msgid "flag `%s' not found"
msgstr "crochet inconnu : « %s »"
-#: stem.cc:638
+#: stem.cc:639
#, c-format
msgid "flag stroke `%s' not found"
msgstr "type de crochet inconnu : « %s »"
msgid "giving up"
msgstr "abandon"
-#: parser.yy:729
+#: 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:753
+#: 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:1224
+#: parser.yy:1299
msgid "Grob name should be alphanumeric"
msgstr "Un nom de Grob devrait être alphanumérique"
-#: parser.yy:1522
+#: parser.yy:1597
msgid "second argument must be pitch list"
msgstr "le second argument doit être une liste de hauteurs"
-#: parser.yy:1549 parser.yy:1554 parser.yy:2026
+#: 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:1651
+#: parser.yy:1726
msgid "expecting string as script definition"
msgstr "chaîne requise pour définir un script"
-#: parser.yy:1806 parser.yy:1856
+#: parser.yy:1881 parser.yy:1931
#, c-format
msgid "not a duration: %d"
msgstr "%d n'est pas une durée"
-#: parser.yy:1980
+#: parser.yy:2055
msgid "have to be in Note mode for notes"
msgstr "doit être en mode Note pour des notes"
-#: parser.yy:2041
+#: parser.yy:2116
msgid "have to be in Chord mode for chords"
msgstr "doit être en mode Chord pour des accords"
msgid "invalid character: `%c'"
msgstr "caractère invalide : « %c »"
-#: lexer.ll:803 lexer.ll:804
+#: lexer.ll:803
#, c-format
msgid "unknown escaped string: `\\%s'"
msgstr "chaîne d'échappement inconnue : « \\%s »"
-#: lexer.ll:910 lexer.ll:911
+#: 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:911 lexer.ll:912
+#: 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:917 lexer.ll:918
+#: 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:777 ps-to-png.scm:58
+#: backend-library.scm:19 lily.scm:761 ps-to-png.scm:58
#, scheme-format
msgid "Invoking `~a'..."
msgstr "Appel de « ~a »..."
msgid "`~a' failed (~a)"
msgstr "échec de « ~a » (~a)"
-#: backend-library.scm:116 framework-tex.scm:344 framework-tex.scm:369
+#: backend-library.scm:116
#, scheme-format
msgid "Converting to `~a'..."
msgstr "Conversion à « ~a »..."
msgid "translator listens to nonexisting event class ~A"
msgstr "le traducteur écoute la classe d'événements ~A inexistante"
-#: define-markup-commands.scm:599
+#: 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:2428
+#: define-markup-commands.scm:2387
#, scheme-format
msgid "Cannot find glyph ~a"
msgstr "impossible de trouver le glyphe ~a"
-#: define-markup-commands.scm:2737
+#: define-markup-commands.scm:2696
#, scheme-format
msgid "not a valid duration string: ~a"
msgstr "chaîne de durée invalide : ~a"
msgstr "type de répétition inconnu : « ~S »"
#: define-music-types.scm:693
-msgid "See music-types.scm for supported repeats"
-msgstr "Consulter music-types.scm pour connaître les types de répétitions reconnus"
+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:99
#, scheme-format
msgid "unknown Grob interface: ~S"
msgstr "interface d'objet graphique (Grob) inconnue : ~S"
-#: documentation-lib.scm:48
+#: documentation-lib.scm:49
#, scheme-format
msgid "Processing ~S..."
msgstr "Traitement de ~S..."
-#: documentation-lib.scm:164
+#: documentation-lib.scm:165
#, scheme-format
msgid "Writing ~S..."
msgstr "Écriture de ~S..."
-#: documentation-lib.scm:186
+#: 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)"
+#: 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:282
+#: framework-ps.scm:277
#, scheme-format
msgid "cannot embed ~S=~S"
msgstr "intégration impossible : ~S=~S"
-#: framework-ps.scm:335
+#: 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:352
+#: 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:383
+#: 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:753
+#: framework-ps.scm:748
#, scheme-format
msgid "cannot convert <stdout> to ~S"
msgstr "impossible de convertir <stdout> en ~S"
-#: framework-ps.scm:772 framework-ps.scm:775
-#, 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:782
+#: framework-ps.scm:771
msgid ""
"\n"
"The PostScript backend does not support the system-by-system \n"
" %% ****************************************************************\n"
"\n"
-#: framework-tex.scm:361
-#, 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'..."
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:124
+#: 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:458
-msgid "Calculating page breaks..."
-msgstr "Calcul des sauts de page..."
-
-#: lily-library.scm:588
+#: lily-library.scm:602
#, scheme-format
msgid "unknown unit: ~S"
msgstr "unité inconnue : ~S"
-#: lily-library.scm:622
+#: 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:630
+#: lily-library.scm:644
msgid "old relative compatibility not used"
msgstr "compatibilité avec l'ancien mode relatif non utilisée"
-#: lily.scm:178
+#: lily.scm:179
#, scheme-format
msgid "cannot find: ~A"
msgstr "impossible de trouver ~A"
-#: lily.scm:243
+#: 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:641
+#: 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:644
+#: lily.scm:628
#, scheme-format
msgid ""
"logfile ~a (exit ~a):\n"
"fichier journal ~a (sortie ~a) :\n"
"~a"
-#: lily.scm:669 lily.scm:767
+#: lily.scm:653 lily.scm:751
#, scheme-format
msgid "failed files: ~S"
msgstr "erreur sur les fichiers : ~S"
-#: lily.scm:757
+#: lily.scm:741
#, scheme-format
msgid "Redirecting output to ~a..."
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:150
+#: ly-syntax-constructors.scm:154
#, scheme-format
msgid "Invalid property operation ~a"
msgstr "Opération de propriété invalide : ~a"
msgid "cannot find quoted music: `~S'"
msgstr "impossible de trouver la citation de musique « ~S »"
-#: music-functions.scm:990
+#: music-functions.scm:1198
#, scheme-format
msgid "unknown accidental style: ~S"
msgstr "style d'altération inconnu : ~S"
-#: output-ps.scm:285
+#: output-ps.scm:294
msgid "utf-8-string encountered in PS backend"
msgstr "le support PS a rencontré une chaîne utf8"
msgid "cannot decypher Pango description: ~a"
msgstr "la description de Pango ne peut être déchiffrée : ~a"
-#: output-tex.scm:96
-#, scheme-format
-msgid "cannot find ~a in ~a"
-msgstr "impossible de trouver ~a dans ~a"
-
-#: paper.scm:86
+#: 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:226
+#: paper.scm:244
#, scheme-format
msgid "This is not a \\layout {} object, ~S"
msgstr "~S n'est pas un objet de \\layout {}"
-#: paper.scm:238
+#: 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:253
+#: paper.scm:271
msgid "Must use #(set-paper-size .. ) within \\paper { ... }"
msgstr "#(set-paper-size ..) doit être dans la section \\paper { ... }"
#, scheme-format
msgid "assertion failed: ~S"
msgstr "erreur d'assertion : ~S"
+
+#~ msgid "requested time signature, but time sig is unknown"
+#~ msgstr "Une métrique est obligatoire, mais la définition trouvée est inconnue"
+
+#~ msgid "Report bugs via"
+#~ msgstr "Rapporter toute anomalie à"
+
+#~ msgid "Negative skip %s"
+#~ msgstr "Retour en arrière de %s"
+
+#~ msgid "ignoring unknown accidental rule: %s"
+#~ msgstr "altération accidentelle inconnue, donc ignorée : %s"
+
+#~ msgid "generate DVI (tex backend only)"
+#~ msgstr "générer le DVI (uniquement pour tex)"
+
+#~ msgid "generate TeX (tex backend only)"
+#~ msgstr "générer le TeX (uniquement pour tex)"
+
+#~ msgid "Computing page breaks..."
+#~ msgstr "Calcul des sauts de page..."
+
+#~ msgid "cannot generate ~S using the postscript back-end"
+#~ msgstr "impossible de générer ~S à l'aide du support postscript"
+
+#~ msgid "TeX file name must not contain whitespace: `~a'"
+#~ msgstr "un nom de fichier TeX ne peut contenir d'espace : « ~a »"
+
+#~ msgid "cannot find ~a in ~a"
+#~ msgstr "impossible de trouver ~a dans ~a"
@code{1}@tie{}is the next beam toward the note, etc. This
information is used to determine how to connect the beaming patterns
from stem to stem inside a beam.")
+ (beamlet-default-length ,pair? "A pair of numbers. The first number
+specifies the default length of a beamlet that sticks out of the left hand
+side of this stem; the second number specifies the default length of the
+beamlet to the right. The actual length of a beamlet is determined by
+taking either the default length or the length specified by
+@code{beamlet-max-length-proportion}, whichever is smaller.")
+ (beamlet-max-length-proportion ,pair? "The maximum length of a beamlet,
+as a proportion of the distance between two adjacent stems.")
(before-line-breaking ,boolean? "Dummy property, used to trigger
a callback function.")
(between-cols ,pair? "Where to attach a loose column to.")
(thickness . 1.3)
(cross-staff . ,ly:stem::calc-cross-staff)
(flag . ,ly:stem::calc-flag)
+ (beamlet-default-length . (1.1 . 1.1))
+ (beamlet-max-length-proportion . (0.75 . 0.75))
(details
. (
;; 3.5 (or 3 measured from note head) is standard length
(srfi srfi-13)
(lily))
-(define format ergonomic-simple-format)
-
-(define framework-eps-module (current-module))
+(define format
+ ergonomic-simple-format)
+(define framework-eps-module
+ (current-module))
(define (widen-left-stencil-edges stencils)
"Change STENCILS to use the union for the left extents in every
-stencil, so LaTeX includegraphics doesn't fuck up the alignment."
-
+stencil so that LaTeX's \\includegraphics command doesn't modify the
+alignment."
(define left
(if (pair? stencils)
-
(apply min
(map (lambda (stc)
(interval-start (ly:stencil-extent stc X)))
stencils))
0.0))
-
+
(map (lambda (stil)
-
(ly:make-stencil
(ly:stencil-expr stil)
- (cons
- left
- (cdr (ly:stencil-extent stil X)))
- (ly:stencil-extent stil Y)
- ))
+ (cons left
+ (cdr (ly:stencil-extent stil X)))
+ (ly:stencil-extent stil Y)))
stencils))
(define (dump-stencils-as-EPSes stencils book basename)
- (define do-pdf (member "pdf" (ly:output-formats)))
- (define paper (ly:paper-book-paper book))
+ (define do-pdf
+ (member "pdf" (ly:output-formats)))
+
+ (define paper
+ (ly:paper-book-paper book))
+
(define (dump-infinite-stack-EPS stencils)
(let* ((dump-me (stack-stencils Y DOWN 2.0 stencils)))
(dump-stencil-as-EPS paper dump-me basename #t)))
(define (dump-counted-stencil stencil-count-pair)
- "Return EPS filename"
- (let*
- ((stencil (car stencil-count-pair))
- (number (cdr stencil-count-pair))
- (name (format "~a-~a" basename number)))
-
- (dump-stencil-as-EPS
- paper stencil name
- (ly:get-option 'include-eps-fonts))
-
+ "Return EPS filename."
+ (let* ((stencil (car stencil-count-pair))
+ (number (cdr stencil-count-pair))
+ (name (format "~a-~a" basename number)))
+ (dump-stencil-as-EPS paper stencil name
+ (ly:get-option 'include-eps-fonts))
(string-append name ".eps")))
-
+
(define (dump-stencils-as-separate-EPS stencils count)
(if (pair? stencils)
(let* ((line (car stencils))
(rest (cdr stencils))
- (system-base-name (format "~a-~a" basename count))
- )
-
- (dump-stencil-as-EPS
- paper line system-base-name)
-
+ (system-base-name (format "~a-~a" basename count)))
+ (dump-stencil-as-EPS paper line system-base-name)
(if do-pdf
- (postscript->pdf 0 0 (string-append system-base-name ".eps")))
+ (postscript->pdf 0 0
+ (string-append system-base-name ".eps")))
(dump-stencils-as-separate-EPS rest (1+ count)))))
- ;; main body
+ ;; main body
(let* ((write-file (lambda (str-port ext)
- (let*
- ((name (format "~a-systems.~a" basename ext))
- (port (open-output-file name)))
+ (let* ((name (format "~a-systems.~a" basename ext))
+ (port (open-output-file name)))
(ly:message (_ "Writing ~a...") name)
(display (get-output-string str-port) port)
- (close-output-port port)
- )))
-
+ (close-output-port port))))
(tex-system-port (open-output-string))
(texi-system-port (open-output-string))
(count-system-port (open-output-string))
(widened-stencils (widen-left-stencil-edges stencils))
(counted-systems (count-list widened-stencils))
- (eps-files (map dump-counted-stencil counted-systems))
- )
-
+ (eps-files (map dump-counted-stencil counted-systems)))
(if do-pdf
-
- ;; par-for-each: a bit faster ...
- (for-each
- (lambda (y)
- (postscript->pdf 0 0 y))
- eps-files))
-
+ ;; par-for-each: a bit faster ...
+ (for-each (lambda (y)
+ (postscript->pdf 0 0 y))
+ eps-files))
(for-each (lambda (c)
(if (< 0 c)
- (display (format "\\ifx\\betweenLilyPondSystem \\undefined
+ (display (format
+ "\\ifx\\betweenLilyPondSystem \\undefined
\\linebreak
\\else
- \\betweenLilyPondSystem{~a}
+ \\expandafter\\betweenLilyPondSystem{~a}%
\\fi
-" c) tex-system-port))
- (display (format "\\includegraphics{~a-~a}\n"
+" c)
+ tex-system-port))
+ (display (format "\\includegraphics{~a-~a}%\n"
basename (1+ c)) tex-system-port)
(display (format "@image{~a-~a}\n"
basename (1+ c)) texi-system-port))
(iota (length stencils)))
-
- (display "@c eof." texi-system-port)
- (display "% eof. " tex-system-port)
+ (display "@c eof\n" texi-system-port)
+ (display "% eof\n" tex-system-port)
(display (format "~a" (length stencils)) count-system-port)
(dump-infinite-stack-EPS stencils)
(postprocess-output book framework-eps-module
(format "~a.eps" basename) (ly:output-formats))
-
(write-file texi-system-port "texi")
(write-file tex-system-port "tex")
-
;; do this as the last action so we know the rest is complete if
;; this file is present.
- (write-file count-system-port "count")
- ))
-
-
+ (write-file count-system-port "count")))
(define-public (output-classic-framework basename book scopes fields)
(output-scopes scopes fields basename)
-
(if (ly:get-option 'dump-signatures)
(write-system-signatures basename (ly:paper-book-systems book) 1))
-
- (dump-stencils-as-EPSes
- (map paper-system-stencil (ly:paper-book-systems book))
- book
- basename))
+ (dump-stencils-as-EPSes (map paper-system-stencil
+ (ly:paper-book-systems book))
+ book
+ basename))
(define-public (output-framework basename book scopes fields)
(output-scopes scopes fields basename)
(if (ly:get-option 'clip-systems)
(clip-system-EPSes basename book))
-
- (dump-stencils-as-EPSes
- (map page-stencil (ly:paper-book-pages book)) book basename))
-
+ (dump-stencils-as-EPSes (map page-stencil
+ (ly:paper-book-pages book))
+ book
+ basename))
; redefine to imports from framework-ps
-(define convert-to-pdf convert-to-pdf)
-(define convert-to-ps convert-to-ps)
-(define convert-to-png convert-to-png)
+(define convert-to-pdf
+ convert-to-pdf)
+
+(define convert-to-ps
+ convert-to-ps)
+
+(define convert-to-png
+ convert-to-png)
(if (and (not embed)
(equal? 'regular (stat:type (stat full-name)))
(equal? name (ly:ttf-ps-name full-name)))
- (set! embed (font-file-as-ps-string name full-name)))
+ (set! embed (font-file-as-ps-string name full-name 0)))
(if (or (equal? "." f)
(equal? ".." f))
#t
(paper (ly:paper-book-paper book))
(systems (ly:paper-book-systems book))
(page-stencils (map page-stencil (ly:paper-book-pages book)))
-
(landscape? (eq? (ly:output-def-lookup paper 'landscape) #t))
(page-number (1- (ly:output-def-lookup paper 'first-page-number)))
(page-count (length page-stencils))
(port (ly:outputter-port outputter)))
-
-
(if (ly:get-option 'clip-systems)
(clip-system-EPSes basename book))
-
(if (ly:get-option 'dump-signatures)
(write-system-signatures basename (ly:paper-book-systems book) 1))
-
(output-scopes scopes fields basename)
(display (file-header paper page-count #t) port)
-
;; don't do BeginDefaults PageMedia: A4
;; not necessary and wrong
-
(write-preamble paper #t port)
-
(for-each
(lambda (page)
(set! page-number (1+ page-number))
(dump-page outputter page page-number page-count landscape?))
page-stencils)
-
(display "%%Trailer\n%%EOF\n" port)
(ly:outputter-close outputter)
(postprocess-output book framework-ps-module filename
- (ly:output-formats))))
+ (ly:output-formats))))
(define-public (dump-stencil-as-EPS paper dump-me filename
load-fonts)
-
- (let*
- ((xext (ly:stencil-extent dump-me X))
- (yext (ly:stencil-extent dump-me Y))
- (padding (ly:get-option 'eps-box-padding))
- (left-overshoot (if (number? padding)
- (* -1 padding (ly:output-def-lookup paper 'mm))
- #f))
- (bbox
- (map
- (lambda (x)
- (if (or (nan? x) (inf? x)
+ (let* ((xext (ly:stencil-extent dump-me X))
+ (yext (ly:stencil-extent dump-me Y))
+ (padding (ly:get-option 'eps-box-padding))
+ (left-overshoot (if (number? padding)
+ (* -1 padding (ly:output-def-lookup paper 'mm))
+ #f))
+ (bbox
+ (map
+ (lambda (x)
+ (if (or (nan? x) (inf? x)
;; FIXME: huh?
- (equal? (format #f "~S" x) "+#.#")
- (equal? (format #f "~S" x) "-#.#"))
- 0.0 x))
+ (equal? (format #f "~S" x) "+#.#")
+ (equal? (format #f "~S" x) "-#.#"))
+ 0.0 x))
;; the left-overshoot is to make sure that
;; bar numbers stick out of margin uniformly.
;;
(list
-
(if (number? left-overshoot)
(min left-overshoot (car xext))
(car xext))
(car yext) (cdr xext) (cdr yext)))))
+ (dump-stencil-as-EPS-with-bbox paper dump-me filename load-fonts bbox)))
- (dump-stencil-as-EPS-with-bbox paper dump-me filename load-fonts bbox)
- ))
-
-
(define-public (dump-stencil-as-EPS-with-bbox paper dump-me filename
load-fonts
bbox)
- "Create an EPS file from stencil DUMP-ME to FILENAME. BBOX has format
- (left-x, lower-y, right x, up-y). If LOAD-FONTS set, include fonts inline."
-
+ "Create an EPS file from stencil DUMP-ME to FILENAME. BBOX has
+format (left-x, lower-y, right x, up-y). If LOAD-FONTS set, include
+fonts inline."
(define (to-rounded-bp-box box)
"Convert box to 1/72 inch with rounding to enlarge the box."
(let* ((scale (ly:output-def-lookup paper 'output-scale))
(strip-non-number (lambda (x)
- (if (or (nan? x) (inf? x)) 0.0 x)))
+ (if (or (nan? x)
+ (inf? x))
+ 0.0
+ x)))
(directed-round (lambda (x rounder)
(inexact->exact
(rounder (/ (* (strip-non-number x) scale)
(list (directed-round (car box) floor)
(directed-round (cadr box) floor)
(directed-round (max (1+ (car box)) (caddr box)) ceiling)
- (directed-round (max (1+ (cadr box)) (cadddr box)) ceiling)
- )))
+ (directed-round (max (1+ (cadr box)) (cadddr box)) ceiling))))
(let* ((outputter (ly:make-paper-outputter
;; FIXME: better wrap open/open-file,
;; MINGW hack: need to have "b"inary for embedding CFFs
(open-file (format "~a.eps" filename) "wb")
'ps))
-
(port (ly:outputter-port outputter))
(rounded-bbox (to-rounded-bp-box bbox))
(port (ly:outputter-port outputter))
(header (eps-header paper rounded-bbox load-fonts)))
-
(display header port)
(write-preamble paper load-fonts port)
(display "gsave set-ps-scale-to-lily-scale\n" port)
(display "stroke grestore\n%%Trailer\n%%EOF\n" port)
(ly:outputter-close outputter)))
-
-
-(define (clip-systems-to-region
- basename paper systems region
- do-pdf)
-
- (let*
- ((extents-system-pairs
- (filtered-map
- (lambda (paper-system)
- (let*
- ((x-ext (system-clipped-x-extent
- (paper-system-system-grob paper-system)
- region)))
-
- (if x-ext
- (cons x-ext paper-system)
- #f)))
-
- systems))
- (count 0))
-
+(define (clip-systems-to-region basename paper systems region do-pdf)
+ (let* ((extents-system-pairs
+ (filtered-map (lambda (paper-system)
+ (let* ((x-ext (system-clipped-x-extent
+ (paper-system-system-grob paper-system)
+ region)))
+ (if x-ext
+ (cons x-ext paper-system)
+ #f)))
+ systems))
+ (count 0))
(for-each
(lambda (ext-system-pair)
- (let*
- ((xext (car ext-system-pair))
- (paper-system (cdr ext-system-pair))
- (yext (paper-system-extent paper-system Y))
- (bbox (list (car xext) (car yext)
- (cdr xext) (cdr yext)))
- (filename (if (< 0 count)
- (format "~a-~a" basename count)
- basename)))
-
+ (let* ((xext (car ext-system-pair))
+ (paper-system (cdr ext-system-pair))
+ (yext (paper-system-extent paper-system Y))
+ (bbox (list (car xext) (car yext)
+ (cdr xext) (cdr yext)))
+ (filename (if (< 0 count)
+ (format "~a-~a" basename count)
+ basename)))
(set! count (1+ count))
- (dump-stencil-as-EPS-with-bbox
- paper
- (paper-system-stencil paper-system)
- filename
- (ly:get-option 'include-eps-fonts)
- bbox)
-
+ (dump-stencil-as-EPS-with-bbox paper
+ (paper-system-stencil paper-system)
+ filename
+ (ly:get-option 'include-eps-fonts)
+ bbox)
(if do-pdf
- (postscript->pdf 0 0 (format "~a.eps" filename)))
- ))
-
- extents-system-pairs)
- ))
-
+ (postscript->pdf 0 0 (format "~a.eps" filename)))))
+ extents-system-pairs)))
(define-public (clip-system-EPSes basename paper-book)
- (define do-pdf (member "pdf" (ly:output-formats)))
+ (define do-pdf
+ (member "pdf" (ly:output-formats)))
(define (clip-score-systems basename systems)
- (let*
- ((layout (ly:grob-layout (paper-system-system-grob (car systems))))
- (regions (ly:output-def-lookup layout 'clip-regions)))
-
+ (let* ((layout (ly:grob-layout (paper-system-system-grob (car systems))))
+ (regions (ly:output-def-lookup layout 'clip-regions)))
(for-each
(lambda (region)
(clip-systems-to-region
(rhythmic-location->file-string (cdr region)))
layout systems region
do-pdf))
-
regions)))
-
;; partition in system lists sharing their layout blocks
- (let*
- ((systems (ly:paper-book-systems paper-book))
- (count 0)
- (score-system-list '()))
-
+ (let* ((systems (ly:paper-book-systems paper-book))
+ (count 0)
+ (score-system-list '()))
(fold
(lambda (system last-system)
-
-
(if (not (and last-system
(equal? (paper-system-layout last-system)
(paper-system-layout system))))
(set! score-system-list (cons '() score-system-list)))
-
(if (paper-system-layout system)
(set-car! score-system-list (cons system (car score-system-list))))
-
;; pass value.
system)
-
#f
systems)
-
- (for-each
- (lambda (system-list)
- (clip-score-systems
- (if (> count 0)
- (format "~a-~a" basename count)
- basename)
- system-list))
-
- score-system-list)))
-
+ (for-each (lambda (system-list)
+ (clip-score-systems
+ (if (> count 0)
+ (format "~a-~a" basename count)
+ basename)
+ system-list))
+ score-system-list)))
(define-public (output-preview-framework basename book scopes fields)
(let* ((paper (ly:paper-book-paper book))
(systems (ly:paper-book-systems book))
(scale (ly:output-def-lookup paper 'output-scale))
(to-dump-systems '()))
-
;; skip booktitles.
- (if (and
- (not (ly:get-option 'include-book-title-preview))
- (pair? systems)
- (ly:prob-property (car systems) 'is-book-title #f))
-
+ (if (and (not (ly:get-option 'include-book-title-preview))
+ (pair? systems)
+ (ly:prob-property (car systems) 'is-book-title #f))
(set! systems (cdr systems)))
-
(for-each
(lambda (sys)
- (if (or
- (paper-system-title? sys)
- (not (pair? to-dump-systems))
- (paper-system-title? (car to-dump-systems)))
+ (if (or (paper-system-title? sys)
+ (not (pair? to-dump-systems))
+ (paper-system-title? (car to-dump-systems)))
(set! to-dump-systems (cons sys to-dump-systems))))
systems)
-
- (dump-stencil-as-EPS
- paper
- (stack-stencils Y DOWN 0.0
- (map paper-system-stencil (reverse to-dump-systems)))
- (format "~a.preview" basename)
- #t)
-
+ (dump-stencil-as-EPS paper
+ (stack-stencils Y DOWN 0.0
+ (map paper-system-stencil
+ (reverse to-dump-systems)))
+ (format "~a.preview" basename)
+ #t)
(postprocess-output book framework-ps-module
(format "~a.preview.eps" basename)
(cons "png" (ly:output-formats)))))
(if #f
(define-public (output-preview-framework basename book scopes fields)
-
(let* ((paper (ly:paper-book-paper book))
(systems (ly:paper-book-systems book))
(scale (ly:output-def-lookup paper 'output-scale))
(dump-stencil-as-EPS paper dump-me
(format "~a.preview" basename)
#t)
-
(postprocess-output book framework-ps-module
(format "~a.preview.eps" basename)
- (ly:output-formats)))))
+ (ly:output-formats)))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(let* ((defs (ly:paper-book-paper book))
(landscape (ly:output-def-lookup defs 'landscape))
(output-scale (ly:output-def-lookup defs 'output-scale))
- (convert (lambda (x) (* x output-scale (/ (ly:bp 1)))))
-
+ (convert (lambda (x)
+ (* x output-scale (/ (ly:bp 1)))))
(paper-width (convert (ly:output-def-lookup defs 'paper-width)))
(paper-height (convert (ly:output-def-lookup defs 'paper-height)))
-
(w (if landscape paper-height paper-width))
- (h (if landscape paper-width paper-height))
- )
-
+ (h (if landscape paper-width paper-height)))
(if (equal? (basename name ".ps") "-")
(ly:warning (_ "cannot convert <stdout> to ~S" "PDF"))
(postscript->pdf w h name))))
(paper-width (ly:output-def-lookup defs 'paper-width))
(paper-height (ly:output-def-lookup defs 'paper-height))
(output-scale (ly:output-def-lookup defs 'output-scale)))
-
(postscript->png resolution
(* paper-width output-scale (/ (ly:bp 1)))
(* paper-height output-scale (/ (ly:bp 1)))
#t)
(define-public (output-classic-framework basename book scopes fields)
-
- (ly:error (_ "\nThe PostScript backend does not support the system-by-system
-output. For that, use the EPS backend instead,
+ (ly:error (_ "\nThe PostScript backend does not support the
+system-by-system output. For that, use the EPS backend instead,
lilypond -dbackend=eps FILE
(resolution 101 "resolution for generating PNG bitmaps")
(read-file-list #f "Read files to be processed from command line arguments")
+ (relative-includes #f "When processing an \\include command, look for the included file
+relative to the current file (instead of the root file)")
(safe #f "Run safely")
(strict-infinity-checking #f "If yes, crash on encountering Inf/NaN.")
(define-music-function (parser location arg1 arg2 ...) (arg1-type? arg2-type? ...)
...function body...)
"
- `(ly:make-music-function (list ,@signature)
- (lambda (,@args)
- ,@body)))
+ (if (and (pair? body) (pair? (car body)) (eqv? '_i (caar body)))
+ ;; When the music function definition contains a i10n doc string,
+ ;; (_i "doc string"), keep the literal string only
+ (let ((docstring (cadar body))
+ (body (cdr body)))
+ `(ly:make-music-function (list ,@signature)
+ (lambda (,@args)
+ ,docstring
+ ,@body)))
+ `(ly:make-music-function (list ,@signature)
+ (lambda (,@args)
+ ,@body))))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
TODO:
* this script is too complex. Modularize.
-
+
* ly-options: intertext?
* --line-width?
* eps in latex / eps by lilypond -b ps?
# Check if program_version contains @ characters. This will be the case if
# the .py file is called directly while building the lilypond documentation.
-# If so, try to check for the env var LILYPOND_VERSION, which is set by our
+# If so, try to check for the env var LILYPOND_VERSION, which is set by our
# makefiles and use its value.
at_re = re.compile (r'@')
if at_re.match (program_version):
action='store', dest='latex_program',
default='latex')
- p.add_option ('--left-padding',
+ p.add_option ('--left-padding',
metavar=_ ("PAD"),
dest="padding_mm",
help=_ ("pad left side of music to align music inspite of uneven bar numbers (in mm)"),
type="float",
default=3.0)
-
+
p.add_option ("-o", '--output', help=_ ("write output to DIR"),
metavar=_ ("DIR"),
action='store', dest='output_dir',
default='')
-
+
p.add_option ('--skip-lily-check',
help=_ ("do not fail if no lilypond output is found"),
metavar=_ ("DIR"),
metavar=_ ("DIR"),
action='store_true', dest='skip_png_check',
default=False)
-
+
p.add_option ('--lily-output-dir',
help=_ ("write lily-XXX files to DIR, link into --output dir"),
metavar=_ ("DIR"),
action='store', dest='lily_output_dir',
default=None)
-
+
p.add_option ('-P', '--process', metavar=_ ("COMMAND"),
help = _ ("process ly_files using COMMAND FILE..."),
- action='store',
+ action='store',
dest='process_cmd', default='')
p.add_option ('--pdf',
#
# (?P<name>regex) -- Assign result of REGEX to NAME.
# *? -- Match non-greedily.
+# (?!...) -- Match if `...' doesn't match next (without consuming
+# the string).
+#
# (?m) -- Multiline regex: Make ^ and $ match at each line.
# (?s) -- Make the dot match all characters including newline.
# (?x) -- Ignore whitespace in patterns.
'lilypond':
r'''(?smx)
(?P<match>
- <(?P<inline>(inline)?)mediaobject>\s*<textobject.*?>\s*<programlisting\s+language="lilypond".*?(role="(?P<options>.*?)")?>(?P<code>.*?)</programlisting\s*>\s*</textobject\s*>\s*</(inline)?mediaobject>)''',
+ <(?P<inline>(inline)?)mediaobject>\s*
+ <textobject.*?>\s*
+ <programlisting\s+language="lilypond".*?(role="(?P<options>.*?)")?>
+ (?P<code>.*?)
+ </programlisting\s*>\s*
+ </textobject\s*>\s*
+ </(inline)?mediaobject>)''',
'lilypond_block':
r'''(?smx)
(?P<match>
- <(?P<inline>(inline)?)mediaobject>\s*<textobject.*?>\s*<programlisting\s+language="lilypond".*?(role="(?P<options>.*?)")?>(?P<code>.*?)</programlisting\s*>\s*</textobject\s*>\s*</(inline)?mediaobject>)''',
+ <(?P<inline>(inline)?)mediaobject>\s*
+ <textobject.*?>\s*
+ <programlisting\s+language="lilypond".*?(role="(?P<options>.*?)")?>
+ (?P<code>.*?)
+ </programlisting\s*>\s*
+ </textobject\s*>\s*
+ </(inline)?mediaobject>)''',
'lilypond_file':
r'''(?smx)
(?P<match>
- <(?P<inline>(inline)?)mediaobject>\s*<imageobject.*?>\s*<imagedata\s+fileref="(?P<filename>.*?\.ly)"\s*(role="(?P<options>.*?)")?\s*(/>|>\s*</imagedata>)\s*</imageobject>\s*</(inline)?mediaobject>)''',
+ <(?P<inline>(inline)?)mediaobject>\s*
+ <imageobject.*?>\s*
+ <imagedata\s+
+ fileref="(?P<filename>.*?\.ly)"\s*
+ (role="(?P<options>.*?)")?\s*
+ (/>|>\s*</imagedata>)\s*
+ </imageobject>\s*
+ </(inline)?mediaobject>)''',
'multiline_comment':
r'''(?smx)
no_match,
'verbatim':
- no_match,
+ no_match,
'lilypondversion':
no_match,
- },
+ },
##
HTML: {
'include':
}
-
-
format_res = {
- DOCBOOK: {
- 'intertext': r',?\s*intertext=\".*?\"',
+ DOCBOOK: {
+ 'intertext': r',?\s*intertext=\".*?\"',
'option_sep': '\s*',
- },
+ },
HTML: {
'intertext': r',?\s*intertext=\".*?\"',
'option_sep': '\s*',
},
}
+
# Options without a pattern in ly_options.
simple_options = [
EXAMPLEINDENT,
output = {
##
- DOCBOOK: {
- FILTER: r'''<mediaobject><textobject><programlisting language="lilypond" role="%(options)s">%(code)s</programlisting></textobject></mediaobject>''',
-
- OUTPUT: r'''
- <imageobject role="latex">
- <imagedata fileref="%(base)s.pdf" format="PDF"/>
- </imageobject>
- <imageobject role="html">
- <imagedata fileref="%(base)s.png" format="PNG"/></imageobject>''',
-
- VERBATIM: r'''<programlisting>%(verb)s</programlisting>''',
-
+ DOCBOOK: {
+ FILTER: r'''<mediaobject>
+ <textobject>
+ <programlisting language="lilypond"
+ role="%(options)s">
+%(code)s
+ </programlisting>
+ </textobject>
+</mediaobject>''',
+
+ OUTPUT: r'''<imageobject role="latex">
+ <imagedata fileref="%(base)s.pdf" format="PDF"/>
+</imageobject>
+<imageobject role="html">
+ <imagedata fileref="%(base)s.png" format="PNG"/>
+</imageobject>''',
+
+ VERBATIM: r'''<programlisting>
+%(verb)s</programlisting>''',
+
VERSION: program_version,
-
- PRINTFILENAME: '<textobject><simpara><ulink url="%(base)s.ly"><filename>%(filename)s</filename></ulink></simpara></textobject>'
+
+ PRINTFILENAME: r'''<textobject>
+ <simpara>
+ <ulink url="%(base)s.ly">
+ <filename>
+ %(filename)s
+ </filename>
+ </ulink>
+ </simpara>
+</textobject>'''
},
##
HTML: {
<a href="%(base)s.ly">''',
OUTPUT: r'''
- <img align="middle"
- border="0" src="%(image)s" alt="%(alt)s">''',
+ <img align="middle"
+ border="0"
+ src="%(image)s"
+ alt="%(alt)s">''',
PRINTFILENAME: '<p><tt><a href="%(base)s.ly">%(filename)s</a></tt></p>',
##
LATEX: {
OUTPUT: r'''{%%
-\parindent 0pt%%
-\ifx\preLilyPondExample \undefined%%
- \relax%%
-\else%%
- \preLilyPondExample%%
-\fi%%
+\parindent 0pt
+\ifx\preLilyPondExample \undefined
+\else
+ \expandafter\preLilyPondExample
+\fi
\def\lilypondbook{}%%
-\input %(base)s-systems.tex%%
-\ifx\postLilyPondExample \undefined%%
- \relax%%
-\else%%
- \postLilyPondExample%%
-\fi%%
+\input %(base)s-systems.tex
+\ifx\postLilyPondExample \undefined
+\else
+ \expandafter\postLilyPondExample
+\fi
}''',
PRINTFILENAME: '''\\texttt{%(filename)s}
- ''',
+''',
- QUOTE: r'''\begin{quotation}%(str)s
+ QUOTE: r'''\begin{quotation}
+%(str)s
\end{quotation}''',
VERBATIM: r'''\noindent
-\begin{verbatim}%(verb)s\end{verbatim}''',
+\begin{verbatim}%(verb)s\end{verbatim}
+''',
VERSION: program_version,
<p>
<a href="%(base)s.ly">
<img align="middle"
- border="0" src="%(image)s" alt="%(alt)s">
+ border="0"
+ src="%(image)s"
+ alt="%(alt)s">
</a>
</p>
@end html
%% ****************************************************************
-%% Start cut-&-pastable-section
+%% Start cut-&-pastable-section
%% ****************************************************************
%(preamble_string)s
full = os.path.join (i, name)
if os.path.exists (full):
return full
-
+
if raise_error:
error (_ ("file not found: %s") % name + '\n')
exit (1)
return s
s = ly_comment_re.sub (lambda m: ly_comment_gettext (t, m), s)
-
+
for v in ly_var_def_re.findall (s):
s = re.sub (r"(?m)(^|[' \\#])%s([^a-zA-Z])" % v,
"\\1" + t (v) + "\\2",
def is_plain (self):
return False
-
+
class Substring (Chunk):
"""A string that does not require extra memory."""
def __init__ (self, source, start, end, line_number):
self.end = end
self.line_number = line_number
self.override_text = None
-
+
def is_plain (self):
return True
## let's not create too long names.
self.checksum = hash.hexdigest ()[:10]
-
+
return self.checksum
def basename (self):
os.makedirs (dst_path)
os.link (src, dst)
-
+
def all_output_files (self, output_dir, output_dir_files):
"""Return all files generated in lily_output_dir, a set.
def consider_file (name):
if name in output_dir_files:
result.add (name)
-
+
def require_file (name):
if name in output_dir_files:
result.add (name)
# markups do not output a signature.
if 'ddump-signature' in global_options.process_cmd:
consider_file (systemfile + '.signature')
-
-
+
+
return (result, missing)
-
+
def is_outdated (self, output_dir, current_files):
found, missing = self.all_output_files (output_dir, current_files)
return missing
-
+
def filter_text (self):
"""Run snippet bodies through a command (say: convert-ly).
single = '%(base)s.png' % vars ()
multiple = '%(base)s-page1.png' % vars ()
images = (single,)
- if (os.path.exists (multiple)
+ if (os.path.exists (multiple)
and (not os.path.exists (single)
or (os.stat (multiple)[stat.ST_MTIME]
> os.stat (single)[stat.ST_MTIME]))):
count = ps_page_count ('%(base)s.eps' % vars ())
images = ['%s-page%d.png' % (base, page) for page in range (1, count+1)]
images = tuple (images)
-
+
return images
def output_docbook (self):
for image in self.get_images ():
(base, ext) = os.path.splitext (image)
str += output[DOCBOOK][OUTPUT] % vars ()
- str += self.output_print_filename (DOCBOOK)
- if (self.substring('inline') == 'inline'):
+ str += self.output_print_filename (DOCBOOK)
+ if (self.substring('inline') == 'inline'):
str = '<inlinemediaobject>' + str + '</inlinemediaobject>'
else:
str = '<mediaobject>' + str + '</mediaobject>'
verb = verbatim_html (self.verb_ly ())
str = output[DOCBOOK][VERBATIM] % vars () + str
return str
-
+
def output_html (self):
str = ''
base = self.basename ()
if 0:
breaks = self.ly ().count ("\n")
str += "".ljust (breaks, "\n").replace ("\n","%\n")
-
+
if QUOTE in self.option_dict:
str = output[LATEX][QUOTE] % vars ()
return str
for type in types:
if not found[type] or found[type][0] < index:
found[type] = None
-
+
m = res[type].search (input_string[index:endex])
if not m:
continue
found[type] = (start, snip)
- if (found[type]
- and (not first
+ if (found[type]
+ and (not first
or found[type][0] < found[first][0])):
first = type
def filter_pipe (input, cmd):
"""Pass input through cmd, and return the result."""
-
+
if global_options.verbose:
progress (_ ("Opening filter `%s'") % cmd)
Because of win32 compatibility, we can't simply use subprocess.
"""
-
+
current = os.getcwd()
os.chdir (directory)
- ly.system(cmd, be_verbose=global_options.verbose,
+ ly.system(cmd, be_verbose=global_options.verbose,
progress_p=1)
os.chdir (current)
-
+
def process_snippets (cmd, snippets,
format, lily_output_dir):
if not snippets:
return
-
+
if format in (HTML, TEXINFO) and '--formats' not in cmd:
cmd += ' --formats=png '
elif format in (DOCBOOK) and '--formats' not in cmd:
cmd += ' --formats=png,pdf '
checksum = snippet_list_checksum (snippets)
- contents = '\n'.join (['snippet-map-%d.ly' % checksum]
+ contents = '\n'.join (['snippet-map-%d.ly' % checksum]
+ [snip.basename() + '.ly' for snip in snippets])
name = os.path.join (lily_output_dir,
'snippet-names-%d.ly' % checksum)
system_in_directory (' '.join ([cmd, ly.mkarg (name)]),
lily_output_dir)
-
-
+
+
###
# Retrieve dimensions from LaTeX
LATEX_INSPECTION_DOCUMENT = r'''
m = re.search (r'''(?P<preamble>\\begin\s*{document})''', source)
if m == None:
warning (_ ("cannot find \\begin{document} in LaTeX document"))
-
+
## what's a sensible default?
return 550.0
-
+
preamble = source[:m.start (0)]
latex_document = LATEX_INSPECTION_DOCUMENT % vars ()
-
+
(handle, tmpfile) = tempfile.mkstemp('.tex')
logfile = os.path.splitext (tmpfile)[0] + '.log'
logfile = os.path.split (logfile)[1]
tmp_handle = os.fdopen (handle,'w')
tmp_handle.write (latex_document)
tmp_handle.close ()
-
+
ly.system ('%s %s' % (global_options.latex_program, tmpfile),
be_verbose=global_options.verbose)
parameter_string = file (logfile).read()
-
+
os.unlink (tmpfile)
os.unlink (logfile)
r"\\usepackage{graphics}" + '\n'
+ r"\\begin{document}",
str)
- chunk.override_text = str
+ chunk.override_text = str
format2ext = {
output_files = split_output_files (options.lily_output_dir)
outdated = [c for c in snippets if c.is_outdated (options.lily_output_dir, output_files)]
-
- write_file_map (outdated, input_name)
+
+ write_file_map (outdated, input_name)
progress (_ ("Writing snippets..."))
for snippet in outdated:
snippet.write_ly()
global_options.output_dir = os.getcwd()
else:
global_options.output_dir = os.path.abspath(global_options.output_dir)
-
+
if not os.path.isdir (global_options.output_dir):
os.mkdir (global_options.output_dir, 0777)
os.chdir (global_options.output_dir)
output_filename = os.path.join(global_options.output_dir,
input_base + format2ext[global_options.format])
- if (os.path.exists (input_filename)
- and os.path.exists (output_filename)
+ if (os.path.exists (input_filename)
+ and os.path.exists (output_filename)
and samefile (output_filename, input_fullname)):
error (
_ ("Output would overwrite input file; use --output."))
write_if_updated (output_filename,
[s.replacement_text ()
for s in chunks])
-
+
def process_include (snippet):
os.chdir (original_dir)
name = snippet.substring ('filename')
chunks))
return chunks + reduce (lambda x, y: x + y, include_chunks, [])
-
+
except CompileError:
os.chdir (original_dir)
progress (_ ("Removing `%s'") % output_filename)
global_options.format = TEXINFO
global_options.include_path = map (os.path.abspath, global_options.include_path)
-
+
if global_options.warranty:
warranty ()
exit (0)
if not args or len (args) > 1:
opt_parser.print_help ()
exit (2)
-
+
return args
def main ():
basename = os.path.splitext (files[0])[0]
basename = os.path.split (basename)[1]
-
+
if not global_options.format:
global_options.format = guess_format (files[0])
formats += ',png'
if global_options.process_cmd == '':
- global_options.process_cmd = (lilypond_binary
+ global_options.process_cmd = (lilypond_binary
+ ' --formats=%s -dbackend=eps ' % formats)
if global_options.process_cmd:
global_options.process_cmd += ' --formats=eps '
if global_options.create_pdf:
global_options.process_cmd += "--pdf -dinclude-eps-fonts -dgs-load-fonts "
-
+
if global_options.verbose:
global_options.process_cmd += " --verbose "
if global_options.padding_mm:
global_options.process_cmd += " -deps-box-padding=%f " % global_options.padding_mm
-
+
global_options.process_cmd += " -dread-file-list -dno-strip-output-dir"
if global_options.lily_output_dir:
os.makedirs (global_options.lily_output_dir)
else:
global_options.lily_output_dir = os.path.abspath(global_options.output_dir)
-
+
identify ()
try:
final_output_file = os.path.join (global_options.output_dir,
base_file_name
+ '.%s' % global_options.format)
-
+
os.chdir (original_dir)
file (dep_file, 'w').write ('%s: %s'
% (final_output_file, ' '.join (inputs)))
depth = ..
-TEX_FILES = $(filter-out texinfo.tex, $(call src-wildcard,*.tex))
-EXTRA_DIST_FILES = $(TEX_FILES) texinfo.tex
+TEXINFO_FILES = texinfo.tex $(call src-wildcard,txi-*.tex)
+TEX_FILES = $(filter-out $TEXINFO_FILES,$(call src-wildcard,*.tex))
+EXTRA_DIST_FILES = $(TEX_FILES) $(TEXINFO_FILES)
STEPMAKE_TEMPLATES = install install-out
INSTALLATION_DIR = $(local_lilypond_datadir)/tex/