From: Joe Neeman Date: Mon, 26 Feb 2007 08:31:00 +0000 (+1100) Subject: Merge branch 'master' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond X-Git-Tag: release/2.11.21-1~18^2 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=2b5cabd0f53c8fc3e553fee7b3aa5c3352e1106a;hp=f70f949ada045f29480bdfde1e855fa5367dc639;p=lilypond.git Merge branch 'master' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond --- diff --git a/Documentation/GNUmakefile b/Documentation/GNUmakefile index cd96e38b5b..2b5940745c 100644 --- a/Documentation/GNUmakefile +++ b/Documentation/GNUmakefile @@ -29,6 +29,9 @@ OUT_TXT_FILES = $(addprefix $(outdir)/, $(addsuffix .txt, $(README_TOP_FILES))) txt-to-html: $(PYTHON) $(step-bindir)/text2html.py $(OUT_TXT_FILES) +po-update: + make -C po po-update + ifneq ($(ISOLANG),) new-lang: @if (( $$(file -b $(ISOLANG)) == directory )) 2>/dev/null; \ @@ -39,7 +42,7 @@ new-lang: cp fr/GNUmakefile $(ISOLANG) cp fr/user/GNUmakefile $(ISOLANG)/user sed -i -e 's/ISOLANG *= *fr/ISOLANG = $(ISOLANG)/' $(ISOLANG)/GNUmakefile $(ISOLANG)/user/GNUmakefile - $(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -b "UNTRANSLATED NODE: IGNORE ME" -o doc.pot --skeleton --gettext ../user/lilypond.tely + $(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -b "UNTRANSLATED NODE: IGNORE ME" -l $(ISOLANG) -o doc.pot --skeleton --gettext ../user/lilypond.tely mv $(outdir)/*.*tely $(ISOLANG)/user msgmerge -U po/lilypond-doc.pot $(outdir)/doc.pot cp po/lilypond-doc.pot po/$(ISOLANG).po @@ -47,4 +50,8 @@ new-lang: check-translation: find $(ISOLANG)/user/ -name '*.*tely' | xargs $(PYTHON) $(buildscript-dir)/check_translation.py $(buildscript-dir) + +skeleton-update: + $(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -b "UNTRANSLATED NODE: IGNORE ME" -l $(ISOLANG) --skeleton ../user/lilypond.tely + $(PYTHON) $(buildscript-dir)/texi-skeleton-update.py $(ISOLANG)/user $(outdir) endif diff --git a/Documentation/TRANSLATION b/Documentation/TRANSLATION new file mode 100644 index 0000000000..fc770232dc --- /dev/null +++ b/Documentation/TRANSLATION @@ -0,0 +1,188 @@ +LILYPOND DOCUMENTATION TRANSLATION + + +SOURCES + +The sources live in a GIT repository. Git 1.4.4.1 or newer is +required, and Git 1.5.x is highly recommended. To get a fresh version +run + + mkdir lily ; cd lily + git init-db + git fetch git://git.sv.gnu.org/lilypond.git/ refs/heads/master:remotemaster + git checkout -b master remotemaster + + +GIT + +The reader is supposed to be familiar with Git, for example by +having experience from lilypond.org translation; see +http://git.sv.gnu.org/gitweb/?p=lilypond.git;a=blob_plain;f=README;hb=web/master + + +REQUIREMENTS + +Working on LilyPond documentation translations requires: + + * python + * make + * gettext + + +STARTING A TRANSLATION IN A NEW LANGUAGE + +At top of the source directory, do + + ./autogen.sh + +or (if you want to install your self-compiled LilyPond locally): + + ./autogen.sh --prefix=$HOME + +If you want to compile LilyPond -- which is almost required to build +the docs, but is not required to do translation only -- fix all +dependencies and rerun ./configure (with the same options as for +autogen). + +Cd into Documentation and run: + + make ISOLANG= new-lang + +where is the ISO 639 language code + +Add a language definition for your language in +buildscripts/langdefs.py. + +See next section about what files to translate and the following +detailed instructions after the next section. + +FILES TO BE TRANSLATED + +All the following files are in Documentation/ +Translation of Documentation/foo/bar should be +Documentation//foo/bar. +Unmentioned files should not be translated. + +Priorities: 1. delivery, 2. 3. 4. 5. later, 6. optional. + +Files marked with priority 3, 4 or 5 may be submitted individually. + +-1- Documentation index, Tutorial and Cheat Sheet +1 user/lilypond.tely +1 user/tutorial.itely +1 user/dedication.itely +1 user/cheatsheet.itely +1 index.html.in + +-2- User manual introduction +2 user/preface.itely +2 user/introduction.itely + +-3- Learning manual +3 user/putting.itely -- Putting it all together +3 user/working.itely -- Working on LilyPond files +3 user/tweaks.itely -- Tweaking output + +-4- Notation reference +4 user/basic-notation.itely -- Basic notation +4 user/instrument-notation.itely -- Instrument-specific notation +4 user/advanced-notation.itely -- Advanced notation +4 user/changing-defaults.itely -- Changing defaults +4 user/non-music.itely -- Non-musical notation +4 user/spacing.itely -- Spacing issues +4 user/programming-interface.itely -- Interfaces for programmers +4 user/scheme-tutorial.itely -- Scheme tutorial + +-5- Program usage +5 user/running.itely -- Running LilyPond +5 user/lilypond-book.itely -- LilyPond-book +5 user/converters.itely -- Converting from other formats + +-6- Appendices whose translation is optional +6 user/literature.itely +6 user/templates.itely +6 user/notation-appendices.itely + +* WORD COUNTS FOR CATEGORIES + +LANG=C wc --words $(grep ^1 TRANSLATION | cut -d ' ' -f 2 | sed 's@^@site/@') + +LANG=C wc --words $(grep ^2 TRANSLATION | cut -d ' ' -f 2 | sed 's@^@site/@') + + +TRANSLATION DETAILED INSTRUCTIONS + +Please follow all these instructions with care to ensure quality work. + +* USER MANUAL + +Any title which comes with one of the following commands must not be +translated directly in the Texinfo source + +@node @top @majorheading +@chapter @unnumbered @appendix @chapheading +@section @unnumberedsec @appendixsec @heading +@subsection @unnumberedsubsec @appendixsubsec @subheading +@subsubsection @unnumberedsubsubsec @appendixsubsubsec @subsubheading +@ref @rglos + + +In any section which looks like + +@menu +* node1:: thing1 +* node2:: thing2 +... +@end menu + +the node names (nodeN) are NOT to be translated, whereas extra title +information (thingN) is. + + +Every node name or section title must from now on be translated +separately in a .po file (just as well as LilyPond output messages). +This .po file should be in Documentation/po. + +Make sure to keep *verbatim* copies of music snippets (in @lilypond blocs). +@example blocs do not have to be verbatim copies, e.g. variable names, +file names and comments should be translated. + +Index entries (@cindex and so on) should be translated. + +Carefully apply every rule exposed in Documentation/README.txt. If +one of these rules conflicts with a rule specific to your language, +please ask the Translation meister and/or the Documentation Editor on +lilypond-devel@gnu.org. + + +* DOCUMENTATION INDEX index.html.in + + + +CHECK STATE OF TRANSLATION + + + +UPDATE A TRANSLATION + + + +TECHNICAL BACKGROUND + +*** This section is a draft and should be overhauled *** +- J. Mandereau + +When starting a translation, texi-langutils.py quickly parses +lilypond.tely and the included .itely's, and generates a skeleton with +node and sectionning commands. When translating a .itely file, the +skeleton file is replaced with the real translation, in exception of +the the node, sectioning and glossary reference commands, which +remains in English. All this ensures easy navigation between nodes in +different languages in HTML docs, i.e.: there is automatic language +selection on lilypond.org, all sections and cross-references are +always available, at least in English (for example, see the "Other +languages: xxx" menu at bottom of tutorial pages). From the user's +point of view, docs in his native language with node and sections in +English are painful, so texi-langutils generates a .po of node and +section names; this .po file is used to translate the section titles +in the HTML generated docs. diff --git a/Documentation/fr/user/advanced-notation.itely b/Documentation/fr/user/advanced-notation.itely index 8481a50e3f..adec14d979 100644 --- a/Documentation/fr/user/advanced-notation.itely +++ b/Documentation/fr/user/advanced-notation.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Advanced notation @chapter Advanced notation @@ -26,6 +28,7 @@ UNTRANSLATED NODE: IGNORE ME @menu * Text scripts:: +* Text and line spanners:: * Text spanners:: * Text marks:: * Text markup:: @@ -39,6 +42,11 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@node Text and line spanners +@subsection Text and line spanners + +UNTRANSLATED NODE: IGNORE ME + @node Text spanners @subsection Text spanners @@ -64,6 +72,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@include markup-commands.tely @node Font selection @subsection Font selection @@ -174,7 +183,7 @@ UNTRANSLATED NODE: IGNORE ME @menu * Polymetric notation:: * Time administration:: -* Proportional notation:: +* Proportional notation (introduction):: * Clusters:: * Special noteheads:: * Feathered beams:: @@ -191,8 +200,8 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME -@node Proportional notation -@subsection Proportional notation +@node Proportional notation (introduction) +@subsection Proportional notation (introduction) UNTRANSLATED NODE: IGNORE ME @@ -282,3 +291,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/basic-notation.itely b/Documentation/fr/user/basic-notation.itely index 1e545e2047..94364b06e0 100644 --- a/Documentation/fr/user/basic-notation.itely +++ b/Documentation/fr/user/basic-notation.itely @@ -1,7 +1,7 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 0bf1e119501727ab8217767d8ce6c29dedf4fed1 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -75,9 +75,9 @@ c1 @funindex , L'octave précise peut être spécifiée sous forme d'une série -d'apostrophes (`@samp{'}') ou d'une série de virgules -(`@samp{,}'). Chaque @code{'} hausse la note d'une octave ; chaque -@code{,} baisse la note d'une octave. +d'apostrophes @samp{'} ou d'une série de virgules @samp{,}. Chaque +@samp{'} hausse la note d'une octave, chaque @samp{,} baisse la note +d'une octave. @lilypond[quote,ragged-right,fragment,verbatim] \clef treble @@ -126,7 +126,7 @@ a4 aes a2 @end lilypond LilyPond interprète l'entrée @code{d e f} comme @qq{imprimer un ré -naturel, un mi naturel et un fa naturel} sans tenir compte de +naturel, un mi naturel et un fa naturel}, sans tenir compte de l'armure. Pour plus d'information à propos de la distinction entre le contenu musical et sa représentation, voir @ref{Accidentalas and key signatures}. @@ -172,9 +172,9 @@ Référence du programme : @internalsref{LedgerLineSpanner}, Normalement, les altérations sont imprimées automatiquement, mais il se peut que vous vouliez les imprimer manuellement. On peut forcer l'impression d'une altération , dite @qq{de précaution}, en ajoutant un -point d'exclamation `@samp{!}' après la hauteur de note. Une +point d'exclamation @samp{!} après la hauteur de note. Une altération entre parenthèses peut être obtenue en ajoutant un point -d'interrogation `@samp{?}' après la hauteur de note. Ces signes +d'interrogation @samp{?} après la hauteur de note. Ces signes peuvent aussi être utilisés pour imprimer des bécarres. @lilypond[quote,ragged-right,fragment,verbatim,relative=1] @@ -228,10 +228,10 @@ utilisés sont les suivants: @c Oh, and should this be made into a multitable? @cindex note names, other languages) @example - Note Names sharp flat + Noms de note dièse bémol nederlands.ly c d e f g a bes b -is -es english.ly c d e f g a bf b -s/-sharp -f/-flat - -x (double) + -x (double) deutsch.ly c d e f g a b h -is -es norsk.ly c d e f g a b h -iss/-is -ess/-es svenska.ly c d e f g a b h -iss -ess @@ -261,7 +261,7 @@ reste de la pièce à la mauvaise octave. @end example @noindent -or +ou @example \relative @var{musicexpr} @@ -283,7 +283,7 @@ six demi-tons seulement. Les signes de changement d'octaves @code{'} et @code{,} peuvent être ajoutés pour hausser ou baisser la note d'une octave supplémentaire. -Lorsque l'on entre en mode \relative, une hauteur absolue de départ +Lorsque l'on entre en mode @code{\relative}, une hauteur absolue de départ peut être spécifiée, et agira dès lors comme si elle précédait la première note de @var{musicexpr}. Si aucune hauteur de départ n'est spécifiée, le do central sert de point de départ. @@ -291,7 +291,7 @@ spécifiée, le do central sert de point de départ. Voici le mode \relative en action. @lilypond[quote,fragment,ragged-right,verbatim] \relative c'' { - b c d c b c bes a + b c d c b c bes a } @end lilypond @@ -300,7 +300,7 @@ dépassant la quarte. @lilypond[quote,ragged-right,fragment,verbatim] \relative c'' { - c g c f, c' a, e'' + c g c f, c' a, e'' } @end lilypond @@ -310,9 +310,9 @@ accord. @lilypond[quote,ragged-right,fragment,verbatim] \relative c' { - c - - + c + + } @end lilypond @@ -339,10 +339,10 @@ quelle octave absolue elle devrait être. Dans l'exemple suivant, @noindent le @code{d} générera un avertissement, puisqu'on attend un @code{d''} -(il n'y a qu'une tierce entre @code{b'} et @code{d''}), mais qu'on -obtient un @code{d'}. Sur la partition, l'octave sera corrigée pour -donner un @code{d''} et la prochaine note sera calculée en fonction de -@code{d''} plutôt que @code{d'}. +mais qu'on obtient un @code{d'} --- il n'y a qu'une tierce entre +@code{b'} et @code{d''}. Sur la partition, l'octave sera corrigée +pour donner un @code{d''} et la prochaine note sera calculée en +fonction de @code{d''} au lieu de @code{d'}. Il existe aussi une vérification d'octave sans changement visible en sortie, avec cette syntaxe : @@ -351,7 +351,7 @@ sortie, avec cette syntaxe : \octave @var{pitch} @end example -Cette commande vérifie que @var{pitch} (sans apostrophes ou virgules) +Cette commande vérifie que @var{pitch} (sans apostrophe ni virgule) donne @var{pitch} (avec apostrophes ou virgules) dans le mode @code{\relative} comparé à la note donnée dans la commande @code{\relative}. Sinon, un avertissement est émis et l'octave est @@ -367,9 +367,9 @@ octave. @example \relative c' @{ - e - \octave a' - \octave b' + e + \octave a' + \octave b' @} @end example @@ -381,9 +381,9 @@ résultat sur la partition. @lilypond[quote,ragged-right,verbatim,fragment] \relative c' { - e - \octave b - a + e + \octave b + a } @end lilypond @@ -430,10 +430,10 @@ dièses et la deuxième des bémols. @lilypond[quote,ragged-right,verbatim] mus = { \key d \major cis d fis g } \new Staff { - \clef "F" \mus - \clef "G" - \transpose c g' \mus - \transpose c f' \mus + \clef "F" \mus + \clef "G" + \transpose c g' \mus + \transpose c f' \mus } @end lilypond @@ -487,8 +487,8 @@ r1 r2 r4 r8 Les pauses d'une mesure complète, qui sont placées au centre de la mesure, doivent être entrées comme des mesures de silences. Elles peuvent être utilisées pour une seule mesure comme pour plusieurs, et -leur utilisation est expliquée dans la section @ref{Multi measure -rests}. +leur utilisation est expliquée dans la section +@ref{Multi measure rests}. Pour spécifier explicitement la position verticale d'un silence, écrivez une note suivie de @code{\rest}. Un silence sera placé à la @@ -517,9 +517,9 @@ Référence du programme : @internalsref{Rest}. @funindex \skip @funindex s -Un silence invisible (que l'on pourrait appeler un @qq{saut}) peut être -entré comme une note avec le nom de note `@samp{s}' ou avec -@code{\skip @var{duration}} +Un silence invisible --- que l'on pourrait appeler un @qq{saut} --- +peut être entré comme une note avec le nom de note `@samp{s}' ou avec +@code{\skip @var{durée}} @lilypond[fragment,quote,ragged-right,verbatim,relative=2] a4 a4 s4 a4 \skip 1 a4 @@ -531,8 +531,8 @@ paroles par exemple, vous devrez utiliser la commande @code{\skip}. @lilypond[quote,ragged-right,verbatim] << - \relative { a'2 a2 } - \new Lyrics \lyricmode { \skip 2 bla2 } + \relative { a'2 a2 } + \new Lyrics \lyricmode { \skip 2 bla2 } >> @end lilypond @@ -598,29 +598,29 @@ r1 r2 r4 r8 r16 r32 r64 r64 @lilypond[quote] \score { \relative c'' { - a\breve*1/2 \autoBeamOff - a1 a2 a4 a8 a16 a32 a64 a64 - \bar "empty" - \break - r\longa*1/4 r\breve *1/2 - r1 r2 r4 r8 r16 r32 r64 r64 - } - \layout { - ragged-right = ##t - indent=0\mm - \context { - \Score - \remove "Bar_number_engraver" - } - \context { - \Staff - \remove "Clef_engraver" - \override StaffSymbol #'transparent = ##t - \override TimeSignature #'transparent = ##t - \override BarLine #'transparent = ##t - \consists "Pitch_squash_engraver" - } - } + a\breve*1/2 \autoBeamOff + a1 a2 a4 a8 a16 a32 a64 a64 + \bar "empty" + \break + r\longa*1/4 r\breve *1/2 + r1 r2 r4 r8 r16 r32 r64 r64 + } + \layout { + ragged-right = ##t + indent=0\mm + \context { + \Score + \remove "Bar_number_engraver" + } + \context { + \Staff + \remove "Clef_engraver" + \override StaffSymbol #'transparent = ##t + \override TimeSignature #'transparent = ##t + \override BarLine #'transparent = ##t + \consists "Pitch_squash_engraver" + } + } } @end lilypond @@ -643,7 +643,7 @@ Pour obtenir des notes pointées, ajoutez simplement un point la même façon. @lilypond[quote,ragged-right,fragment,verbatim] -a'4 b' c''4. b'8 a'4. b'4.. c''8. +a'4 b' c''4. b'8 a'4. b'4.. c''8. @end lilypond @refcommands @@ -662,7 +662,7 @@ points. @seealso -Référence du programme : @internalsref{Dots}, and @internalsref{DotColumn}. +Référence du programme : @internalsref{Dots}, @internalsref{DotColumn}. @node Tuplets @@ -672,7 +672,7 @@ Référence du programme : @internalsref{Dots}, and @internalsref{DotColumn}. @cindex triplets @funindex \times -Les n-olets (comme les triolets, quintolets, etc.) sont obtenus en +Les nolets --- triolets, quintolets, etc. --- sont obtenus en multipliant toutes les durées d'une expression musicale par une fraction. @@ -683,7 +683,7 @@ fraction. @noindent La durée de @var{musicexpr} sera multipliée par la fraction. Le dénominateur de la fraction sera imprimé au-dessus des notes, -optionnellement avec un crochet. Le n-olet le plus courant est le +optionnellement avec un crochet. Le nolet le plus courant est le triolet, dans lequel 3 notes ont la durée de 2, et où les notes durent donc 2/3 de leur valeur écrite. @@ -691,13 +691,13 @@ donc 2/3 de leur valeur écrite. g'4 \times 2/3 {c'4 c' c'} d'4 d'4 @end lilypond -Les n-olets peuvent être imbriqués ; par exemple, +Les nolets peuvent être imbriqués ; par exemple, @lilypond[fragment,ragged-right,verbatim,relative=2] \override TupletNumber #'text = #tuplet-number::calc-fraction-text \times 4/6 { - a4 a - \times 3/5 { a a a a a } + a4 a + \times 3/5 { a a a a a } } @end lilypond @@ -737,7 +737,7 @@ dénominateur, mais si elle est définie par la fonction @code{tuplet-number::calc-fraction-text}, la fraction entière @var{num}:@var{den} sera imprimée à la place. -Pour éviter d'imprimer les chiffres des n-olets, utilisez +Pour éviter d'imprimer les chiffres des nolets, utilisez @lilypond[quote,fragment,relative=2,ragged-right,verbatim] \times 2/3 { c8 c c } \times 2/3 { c8 c c } @@ -745,23 +745,23 @@ Pour éviter d'imprimer les chiffres des n-olets, utilisez \times 2/3 { c8 c c } \times 2/3 { c8 c c } @end lilypond -Les crochets de n-olets peuvent aller jusqu'aux prémisses de la mesure +Les crochets de nolets peuvent aller jusqu'aux prémisses de la mesure suivante, ou à la prochaine note. @lilypond[ragged-right] \new RhythmicStaff { - \set tupletFullLength = ##t - \time 4/4 - \times 4/5 { - c4 c1 - } - \set tupletFullLengthNote = ##t - \time 2/4 - \times 2/3 { - c4 c c - } - \time 3/4 - c4 + \set tupletFullLength = ##t + \time 4/4 + \times 4/5 { + c4 c1 + } + \set tupletFullLengthNote = ##t + \time 2/4 + \times 2/3 { + c4 c c + } + \time 3/4 + c4 } @end lilypond @@ -769,7 +769,7 @@ suivante, ou à la prochaine note. @seealso Référence du programme : @internalsref{TupletBracket}, -@internalsref{TupletNumber}, and @internalsref{TimeScaledMusic}. +@internalsref{TupletNumber}, @internalsref{TimeScaledMusic}. Exemples: @inputfileref{input/@/regression,tuplet@/-nest@/.ly}. @@ -779,8 +779,8 @@ Exemples: @inputfileref{input/@/regression,tuplet@/-nest@/.ly}. @subsection Scaling durations Vous pouvez altérer la durée des notes en lui joignant une fraction -@var{N/M}, donnant @q{@code{*}@var{N/M}} (ou @q{@code{*}@var{N}} si -@var{M=1}). Ceci n'affectera pas l'apparence des notes ou silences +@var{N/M}, donnant @q{@code{*}@var{N/M}} --- ou @q{@code{*}@var{N}} si +@var{M=1}. Ceci n'affectera pas l'apparence des notes ou silences produits. Dans l'exemple suivant, les trois premières notes prennent exactement @@ -869,10 +869,10 @@ divisées et liées. @lilypond[quote,fragment,verbatim,relative=1,line-width=12\cm] \new Voice \with { - \remove "Note_heads_engraver" - \consists "Completion_heads_engraver" + \remove "Note_heads_engraver" + \consists "Completion_heads_engraver" } { - c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 + c2. c8 d4 e f g a b c8 c2 b4 a g16 f4 e d c8. c2 } @end lilypond @@ -890,10 +890,10 @@ aussi enlever @internalsref{Forbid_line_breaks_engraver}. @refbugs Bien que toutes les durées (particulièrement celles contenant des -n-olets) ne puissent pas être représentées exactement avec des notes -normales et des points, le graveur n'insèrera pas de n-olets. +nolets) ne puissent pas être représentées exactement avec des notes +normales et des points, le graveur n'insèrera pas de nolets. -@code{Completion_heads_engraver} affecte seulement les notes; il ne +@code{Completion_heads_engraver} affecte seulement les notes, il ne divise pas les silences. @seealso @@ -982,22 +982,22 @@ en séparant les voix avec @code{\\} @lilypond[quote,verbatim,fragment] \new Staff \relative c' { - c16 d e f - << - { g4 f e | d2 e2 } \\ - { r8 e4 d c8 ~ | c b16 a b8 g ~ g2 } \\ - { s2. | s4 b4 c2 } - >> + c16 d e f + << + { g4 f e | d2 e2 } \\ + { r8 e4 d c8 ~ | c b16 a b8 g ~ g2 } \\ + { s2. | s4 b4 c2 } + >> } @end lilypond -Le séparateur permet aux @internalsref{Voice} contexts@footnote{Ces -voix polyphoniques sont parfois appelées @qq{couches ou calques} dans -d'autres logiciels de notation. +Le séparateur permet aux contextes @internalsref{Voice}@footnote{Ces +voix polyphoniques sont parfois appelées @qq{couches} ou @qq{calques} dans +d'autres logiciels de notation.} @cindex layers d'être identifiées. Elles portent les noms @code{"1"}, @code{"2"}, etc. Dans chacun de ces contextes, la direction verticale des -liaisons, hampes, etc. est réglée de manière appropriée. +liaisons, hampes, etc. sont réglées de manière appropriée. Ces voix sont toutes séparées de la voix qui contient les notes en dehors de la construction @code{<< \\ >>}. Cela doit être pris en @@ -1017,18 +1017,18 @@ entre les deux constructions. @lilypond[quote,verbatim,fragment] \new Staff \relative c' { - \override NoteHead #'style = #'cross - c16 d e f - << - { g4 f e } \\ - { \override NoteHead #'style = #'triangle - r8 e4 d c8 ~ } - >> | - << - { d2 e2 } \\ - { c8 b16 a b8 g ~ g2 } \\ - { \override NoteHead #'style = #'slash s4 b4 c2 } - >> + \override NoteHead #'style = #'cross + c16 d e f + << + { g4 f e } \\ + { \override NoteHead #'style = #'triangle + r8 e4 d c8 ~ } + >> | + << + { d2 e2 } \\ + { c8 b16 a b8 g ~ g2 } \\ + { \override NoteHead #'style = #'slash s4 b4 c2 } + >> } @end lilypond @@ -1087,41 +1087,41 @@ est maintenant dans un seul contexte de voix. @lilypond[quote,ragged-right,verbatim] \new Staff \relative c' { - \override NoteHead #'style = #'cross - c16 d e f - \voiceOne - << - { g4 f e | d2 e2 } - \new Voice="1" { \voiceTwo - r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 - \oneVoice - } - \new Voice { \voiceThree - s2. | s4 b4 c2 - \oneVoice - } - >> - \oneVoice + \override NoteHead #'style = #'cross + c16 d e f + \voiceOne + << + { g4 f e | d2 e2 } + \new Voice="1" { \voiceTwo + r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 + \oneVoice + } + \new Voice { \voiceThree + s2. | s4 b4 c2 + \oneVoice + } + >> + \oneVoice } @end lilypond La définition correcte des voix permet à la mélodie d'être liée. @lilypond[quote,ragged-right,verbatim] \new Staff \relative c' { - c16^( d e f - \voiceOne - << - { g4 f e | d2 e2) } - \context Voice="1" { \voiceTwo - r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 - \oneVoice - } - \new Voice { \voiceThree - s2. s4 b4 c2 - \oneVoice - } - >> - \oneVoice + c16^( d e f + \voiceOne + << + { g4 f e | d2 e2) } + \context Voice="1" { \voiceTwo + r8 e4 d c8 ~ | c8 b16 a b8 g ~ g2 + \oneVoice + } + \new Voice { \voiceThree + s2. s4 b4 c2 + \oneVoice + } + >> + \oneVoice } @end lilypond @@ -1131,23 +1131,23 @@ naturelle de taper la musique. @lilypond[quote,ragged-right,verbatim] \new Staff \relative c' { - c16^( d e f - \voiceOne - << - { g4 f e | d2 e2) } - \context Voice="1" { \voiceTwo - r8 e4 d c8 ~ | - << - {c8 b16 a b8 g ~ g2} - \new Voice { \voiceThree - s4 b4 c2 - \oneVoice - } - >> - \oneVoice - } - >> - \oneVoice + c16^( d e f + \voiceOne + << + { g4 f e | d2 e2) } + \context Voice="1" { \voiceTwo + r8 e4 d c8 ~ | + << + {c8 b16 a b8 g ~ g2} + \new Voice { \voiceThree + s4 b4 c2 + \oneVoice + } + >> + \oneVoice + } + >> + \oneVoice } @end lilypond @@ -1171,22 +1171,22 @@ voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice) @subsection Collision Resolution D'ordinaire, les têtes de notes pointées et non-pointées ne sont pas -fusionnées, mais lorsque la propriété d'objet -@code{merge-differently-dotted} est définie dans l'objet -@internalsref{NoteCollision}, elles se trouvent fusionnées : +fusionnées, mais lorsque la propriété @code{merge-differently-dotted} +de l'objet @internalsref{NoteCollision} est définie, elles se trouvent +fusionnées : @lilypond[quote,verbatim,fragment,ragged-right,relative=2] \new Voice << { - g8 g8 - \override Staff.NoteCollision - #'merge-differently-dotted = ##t - g8 g8 + g8 g8 + \override Staff.NoteCollision + #'merge-differently-dotted = ##t + g8 g8 } \\ { g8.[ f16] g8.[ f16] } >> @end lilypond De même, vous pouvez fusionner une tête de blanche avec une tête de -croche, en définissant -@code{merge-differently-headed} +croche, en définissant @code{merge-differently-headed} + @lilypond[quote,ragged-right,fragment,relative=2,verbatim] \new Voice << { c8 c4. @@ -1262,12 +1262,12 @@ de placement. @lilypond[quote,verbatim,ragged-right] \relative << { - - + + } \\ { - - \once \override NoteColumn #'force-hshift = #1.7 - + + \once \override NoteColumn #'force-hshift = #1.7 + } >> @end lilypond @@ -1277,13 +1277,6 @@ Référence du programme : les objets appropriés pour résoudre les collisions sont @internalsref{NoteCollision} et @internalsref{RestCollision}. -Exemples : -@inputfileref{input/@/regression,collision@/-dots@/.ly}, -@inputfileref{input/@/regression,collision@/-head-chords@/.ly}, -@inputfileref{input/@/regression,collision@/-heads@/.ly}, -@inputfileref{input/@/regression,collision@/-mesh@/.ly}, et -@inputfileref{input/@/regression,collisions@/.ly}. - @refbugs @@ -1398,22 +1391,22 @@ manuellement. @lilypond[quote,ragged-right,verbatim] { - \set Staff.clefGlyph = #"clefs.F" - \set Staff.clefPosition = #2 - c'4 - \set Staff.clefGlyph = #"clefs.G" - c'4 - \set Staff.clefGlyph = #"clefs.C" - c'4 - \set Staff.clefOctavation = #7 - c'4 - \set Staff.clefOctavation = #0 - \set Staff.clefPosition = #0 - c'4 - \clef "bass" - c'4 - \set Staff.middleCPosition = #4 - c'4 + \set Staff.clefGlyph = #"clefs.F" + \set Staff.clefPosition = #2 + c'4 + \set Staff.clefGlyph = #"clefs.G" + c'4 + \set Staff.clefGlyph = #"clefs.C" + c'4 + \set Staff.clefOctavation = #7 + c'4 + \set Staff.clefOctavation = #0 + \set Staff.clefPosition = #0 + c'4 + \clef "bass" + c'4 + \set Staff.middleCPosition = #4 + c'4 } @end lilypond @@ -1554,18 +1547,18 @@ position. @lilypond[quote,ragged-right,verbatim] \score { - \relative c'' { - #(set-time-signature 9 8 '(2 2 2 3)) - g8[ g] d[ d] g[ g] a8[( bes g]) | - #(set-time-signature 5 8 '(3 2)) - a4. g4 - } - \layout { - \context { - \Staff - \consists "Measure_grouping_engraver" - } - } + \relative c'' { + #(set-time-signature 9 8 '(2 2 2 3)) + g8[ g] d[ d] g[ g] a8[( bes g]) | + #(set-time-signature 5 8 '(3 2)) + a4. g4 + } + \layout { + \context { + \Staff + \consists "Measure_grouping_engraver" + } + } } @end lilypond @@ -1599,24 +1592,24 @@ Les mesures incomplètes, telles que les anacrouses ou levées, doivent être entrées avec la commande @lilypond[quote,ragged-right,fragment,verbatim,relative=2] -\partial 16*5 c16 cis d dis e | a2. c,4 | b2 +\partial 16*5 c16 cis d dis e | a2. c,4 | b2 @end lilypond La syntaxe de cette commande est @example -\partial @var{duration} +\partial @var{durée} @end example -@code{duration} étant la valeur rythmique devant être ajoutée avant la +@code{durée} étant la valeur rythmique devant être ajoutée avant la mesure suivante. Le programme traduit cette commande en @example -\set Timing.measurePosition = -@var{length of duration} +\set Timing.measurePosition = -@var{durée} @end example @@ -1628,8 +1621,8 @@ programme : @qq{Dans cette mesure, il reste juste une noire}. @refbugs -Cette commande de prend pas en compte les petites notes (appogiatures, -accacciatures) au début de la musique. Lorsqu'un morceau commence par +Cette commande ne prend pas en compte les notes d'agrément ou +appogiatures au début de la musique. Lorsqu'un morceau commence par une levée faite de petites notes, la commande @code{\partial} devrait être placée après celles-ci. @@ -1700,15 +1693,15 @@ d'un seul tenant sur les portées d'un @code{StaffGroup}, d'un @lilypond[quote,ragged-right,fragment,verbatim] << - \new StaffGroup << - \new Staff { - e'4 d' - \bar "||" - f' e' - } - \new Staff { \clef bass c4 g e g } - >> - \new Staff { \clef bass c2 c2 } + \new StaffGroup << + \new Staff { + e'4 d' + \bar "||" + f' e' + } + \new Staff { \clef bass c4 g e g } + >> + \new Staff { \clef bass c2 c2 } >> @end lilypond @@ -1740,8 +1733,9 @@ reprises. Voyez à ce sujet @ref{Repeats}. Dans ce manuel : @ref{Repeats}, @ref{System start delimiters}. -Référence du programme : @internalsref{BarLine} (created at -@internalsref{Staff} level), @internalsref{SpanBar} (across staves). +Référence du programme : @internalsref{BarLine} (faisant partie du +contexte @internalsref{Staff}), @internalsref{SpanBar} (sur plusieurs +portées). D'autres exemples : @inputfileref{input/@/test,bar@/-lines@/.ly}, @@ -1808,8 +1802,8 @@ et les barres de mesure sont d'un seul tenant. Il s'agit du contexte @lilypond[verbatim,ragged-right,quote] \new GrandStaff \relative << - \new Staff { c1 c } - \new Staff { c c } + \new Staff { c1 c } + \new Staff { c c } >> @end lilypond @@ -1820,8 +1814,8 @@ de mesure sont d'un seul tenant. Il s'agit du contexte @lilypond[verbatim,ragged-right,quote] \new StaffGroup \relative << - \new Staff { c1 c } - \new Staff { c c } + \new Staff { c1 c } + \new Staff { c c } >> @end lilypond @@ -1834,8 +1828,8 @@ de mesure sont séparées d'une portée à l'autre. Il s'agit du contexte @lilypond[verbatim,ragged-right,quote] \new ChoirStaff \relative << - \new Staff { c1 c } - \new Staff { c c } + \new Staff { c1 c } + \new Staff { c c } >> @end lilypond @@ -1845,8 +1839,8 @@ s'agit de l'assemblage par défaut. @lilypond[verbatim,ragged-right,quote] \relative << - \new Staff { c1 c } - \new Staff { c c } + \new Staff { c1 c } + \new Staff { c c } >> @end lilypond @end itemize @@ -1896,10 +1890,8 @@ b b @end lilypond -@c Does any French translator have any clue -@c about how to tranlate this ? Cette manière de procéder peut être utilisée pour introduire des -qq{Ossias} dans des partitions à portées discontinues @qq{à la française}, +@qq{ossias} dans des partitions à nombre de portées variable, comme sur l'exemple suivant : @cindex ossia @@ -1918,8 +1910,7 @@ Référence du programme : @internalsref{StaffSymbol}. D'autres exemples : @inputfileref{input/@/test,staff@/-lines@/.ly}, @inputfileref{input/@/test@/,ossia.ly}, @inputfileref{input/@/test,staff@/-size@/.ly}, -@inputfileref{input/@/regression,staff@/-line@/-positions@/.ly}. - +@lsr{staff,staff-line-positions.ly} @node Writing music in parallel @subsection Writing music in parallel @@ -1931,14 +1922,14 @@ On peut écrire plusieurs voix de façon entremêlée : @lilypond[quote,fragment,verbatim] \parallelMusic #'(voiceA voiceB) { - r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' e''] | - c'2 c'2 | - r8 a'16[ d''] f''[ a' d'' f''] r8 a'16[ d''] f''[ a' d'' f''] | - c'2 c'2 | + r8 g'16[ c''] e''[ g' c'' e''] r8 g'16[ c''] e''[ g' c'' e''] | + c'2 c'2 | + r8 a'16[ d''] f''[ a' d'' f''] r8 a'16[ d''] f''[ a' d'' f''] | + c'2 c'2 | } \new StaffGroup << - \new Staff \new Voice \voiceA - \new Staff \new Voice \voiceB + \new Staff \new Voice \voiceA + \new Staff \new Voice \voiceB >> @end lilypond @@ -1993,7 +1984,7 @@ deux manières de noter exactement la même idée : @lilypond[quote,fragment,ragged-right] -\time 3/4 c'2. c'2 ~ c'4 +\time 3/4 c'2. c'2 ~ c'4 @end lilypond @noindent @@ -2006,7 +1997,7 @@ ici : @lilypond[fragment,quote,ragged-right] \relative { - r8 c8 ~ c2 r4 | r8^"et non pas" c2 ~ c8 r4 + r8 c8 ~ c2 r4 | r8^"not" c2 ~ c8 r4 } @end lilypond @@ -2020,7 +2011,7 @@ de mesure. @funindex \repeatTie -Lorsque l'indication "2." d'une reprise commence sur une note liée, la +Lorsque l'indication @q{2.} d'une reprise commence sur une note liée, la liaison doit être répétée. C'est à cela que sert la commande @code{\repeatTie}. @@ -2036,11 +2027,11 @@ r \repeatTie Les liaisons de tenues servent parfois à rendre un accord arpégé. Dans ce cas, les notes liées ne sont pas toutes l'une contre l'autre. Il -faut alors définir comme vraie ("t" pour "true") la propriété +faut alors définir comme vraie (@q{t} pour @q{true}) la propriété @code{tieWaitForNote}. Cette même méthode peut servir, par exemple, à lier un trémolo à un accord : -@lilypond[fragment,verbatim,relative=1,ragged-right] +@lilypond[fragment,verbatim,relative=1,ragged-right,quote] \set tieWaitForNote = ##t \grace { c16[~ e~ g]~ } 2 \repeat "tremolo" 8 { c32~ c'~ } 1 @@ -2071,11 +2062,6 @@ Dans ce même manuel : @ref{Automatic note splitting}. Référence du programme : @internalsref{Tie}. -D'autres exemples : -@inputfileref{input/@/regression,tie-arpeggio.ly} -@inputfileref{input/@/regression,tie-manual.ly} - - @refbugs @@ -2129,7 +2115,7 @@ des liaisons plus courtes, il faudra utiliser des @ref{Phrasing slurs}. Certains auteurs utilisent deux liaisons lorsqu'ils veulent lier des accords. Dans LilyPond, il faut pour cela définir comme -vraie ("true") la propriété @code{doubleSlurs} : +vraie (@q{true}) la propriété @code{doubleSlurs} : @lilypond[verbatim,ragged-right,relative,fragment,quote] \set doubleSlurs = ##t @@ -2204,7 +2190,7 @@ Référence du programme : @internalsref{PhrasingSlur}. @cindex Ties, laissez vibrer -Les liaisons de "Laissez Vibrer" (L.V.) sont utilisées pour +Les liaisons @qq{Laissez vibrer} (L.V.) sont utilisées pour le piano, la harpe, et certains instruments de percussion. Elles indiquent à l'instrumentiste de laisser sonner la note au lieu de l'étouffer. Cet effet s'obtient avec la commande @@ -2221,22 +2207,20 @@ Référence du programme : @internalsref{LaissezVibrerTieColumn} D'autres exemples : -@inputfileref{input/regression,laissez-vibrer-tie.ly} - +@lsr{connecting,laissez-vibrer-ties.ly} @node Automatic beams @subsection Automatic beams -LilyPond décide lui-même de la manière de grouper les notes et -d'imprimer les ligatures : +LilyPond décide automatiquement de la manière de grouper les notes et +d'imprimer les ligatures @lilypond[quote,ragged-right,fragment,verbatim,relative=2] -\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8 +\time 2/4 c8 c c c \time 6/8 c c c c8. c16 c8 @end lilypond - -Cependant lorsque ces décisions ne sont pas satisfaisantes, il est +Lorsque ces décisions ne sont pas satisfaisantes, il est possible de préciser quels groupements l'ont veut, ou même de définir des séquences de groupements en lieu et place des groupements par défaut. Voir @ref{Setting automatic beam behavior} @@ -2272,7 +2256,7 @@ de mesure. Le début et la fin de la ligature sont alors indiqués par @lilypond[quote,ragged-right,fragment,relative=1,verbatim] { - r4 r8[ g' a r8] r8 g[ | a] r8 + r4 r8[ g' a r8] r8 g[ | a] r8 } @end lilypond @@ -2292,11 +2276,11 @@ après quoi sa définition est effacée. @lilypond[quote,ragged-right,fragment,relative=1,verbatim] { - f8[ r16 - f g a] - f8[ r16 - \set stemLeftBeamCount = #1 - f g a] + f8[ r16 + f g a] + f8[ r16 + \set stemLeftBeamCount = #1 + f g a] } @end lilypond @@ -2321,10 +2305,9 @@ Pour plus d'information sur @code{make-moment}, voir Lorsqu'une ligature entre des notes franchit une barre de mesure, le retour à la ligne est en principe interdit à cet endroit. -Ce comportement peut être changé en définissant @code{allowBeamBreak} -comme vrai. +Ce comportement peut être changé en définissant @code{breakable}. -@funindex allowBeamBreak +@funindex breakable @cindex beams and line breaks @cindex beams, kneed @cindex kneed beams @@ -2396,23 +2379,23 @@ l'exemple ci-dessus en y ajoutant ces couples de nombres : @lilypond[quote,ragged-right] << - \relative c''{ - c4 \grace c16 c4 \grace { - c16[ d16] } c2 c4 - } - \new Lyrics \lyricmode { - \override LyricText #'font-family = #'typewriter - - \markup { (0,0) } 4 - \grace { \markup { - ( \fraction 1 4 , \fraction -1 16 ) } 16 } - \markup { (\fraction 1 4 , 0 ) } 4 - \grace { - \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16 - \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16 - } - \markup { ( \fraction 2 4 , 0 ) } - } + \relative c''{ + c4 \grace c16 c4 \grace { + c16[ d16] } c2 c4 + } + \new Lyrics \lyricmode { + \override LyricText #'font-family = #'typewriter + + \markup { (0,0) } 4 + \grace { \markup { + ( \fraction 1 4 , \fraction -1 16 ) } 16 } + \markup { (\fraction 1 4 , 0 ) } 4 + \grace { + \markup { (\fraction 2 4 , \fraction "-1" 8 ) } 16 + \markup { (\fraction 2 4 , \fraction "-1" 16 ) } 16 + } + \markup { ( \fraction 2 4 , 0 ) } + } >> @end lilypond @@ -2423,7 +2406,7 @@ pour chaque petite croche. @lilypond[quote,ragged-right,relative=2,verbatim,fragment] << \new Staff { e4 \grace { c16[ d e f] } e4 } - \new Staff { c4 \grace { g8[ b] } c4 } >> + \new Staff { c4 \grace { g8[ b] } c4 } >> @end lilypond @funindex \afterGrace @@ -2441,24 +2424,22 @@ c1 \afterGrace d1 { c16[ d] } c4 Les petites notes se placent alors à 3/4 de la durée de la note réelle. Cet espacement peut être changé en définissant -@code{afterGraceFraction} ; ainsi : +@code{afterGraceFraction} ; ainsi, @example afterGraceFraction = #(cons 7 8) @end example @noindent - -placera la petite note à 7/8èmes de la note réelle. - +placera la petite note à 7/8 de la note réelle. On peut obtenir le même effet manuellement, de la façon suivante : @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Voice { - << { d1^\trill_( } - { s2 \grace { c16[ d] } } >> - c4) + << { d1^\trill_( } + { s2 \grace { c16[ d] } } >> + c4) } @end lilypond @@ -2476,17 +2457,16 @@ introduite par @code{\grace} : @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Voice { - \acciaccatura { - \stemDown - f16-> - \stemNeutral - } - g4 + \acciaccatura { + \stemDown + f16-> + \stemNeutral + } + g4 } @end lilypond @noindent - Tous les réglages ajoutés doivent également être désactivés dans cette même section. @@ -2519,24 +2499,23 @@ s'appliquer dans d'autres situations en définissant @commonprop -Les petites notes peuvent être obligées à s'espacer -de manière fluctuante. +Il est possible de forcer un espacement fluctuant des notes d'agrément. @lilypond[relative=2,ragged-right] << - \override Score.SpacingSpanner #'strict-grace-spacing = ##t - \new Staff { - c'4 - \afterGrace - c'4 - { c'16[ c'8 c'16] } - c'4 - } - \new Staff { - c'16[ c'16 c'16 c'16] - c'16[ c'16 c'16 c'16] - c'4 - } + \override Score.SpacingSpanner #'strict-grace-spacing = ##t + \new Staff { + c'4 + \afterGrace + c'4 + { c'16[ c'8 c'16] } + c'4 + } + \new Staff { + c'16[ c'16 c'16 c'16] + c'16[ c'16 c'16 c'16] + c'4 + } >> @end lilypond @@ -2548,7 +2527,6 @@ Référence du programme : @internalsref{GraceMusic}. @refbugs - Une partition commençant par une section @code{\grace} doit faire intervenir la commande @code{\new Voice}, sans quoi la note réelle et la petite note se retrouveront sur des portées différentes. @@ -2561,7 +2539,7 @@ mélez des portées comprenant des petites notes et d'autres sans : @lilypond[quote,ragged-right,relative=2,verbatim,fragment] << \new Staff { e4 \bar "|:" \grace c16 d4 } - \new Staff { c4 \bar "|:" d4 } >> + \new Staff { c4 \bar "|:" d4 } >> @end lilypond @noindent @@ -2730,7 +2708,7 @@ c^\markup { \finger "2 - 3" } La commande @{\thumb} peut être utilisée pour indiquer, par exemple dans une partition de violoncelle, si une note doit être jouée -avec le pouce (en anglais "thumb") : +avec le pouce (@q{thumb} en anglais) : @lilypond[quote,verbatim,ragged-right,fragment,relative=2] 8 @@ -2771,7 +2749,7 @@ d'indiquer des doigtés très proches des têtes de notes. Référence du programme : @internalsref{Fingering}. -D'autres exemples : @inputfileref{input/@/regression,finger@/-chords@/.ly}. +D'autres exemples : @lsr{expressive,fingering-chords.ly}. @node Dynamics @@ -2839,10 +2817,10 @@ en définissant comme fausse (lettre @q{f}) la propriété @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \set hairpinToBarline = ##f -c4\< c2. c4\! +c4\< c2. c4\! @end lilypond - +@c VERIF sens de soufflet On peut avoir recours à l'indication @code{\espressivo} pour indiquer un @qq{soufflet} --- crescendo puis decrescendo --- sur une seule note. @@ -2867,7 +2845,7 @@ l'objet affecté. Par exemple : Des crescendos ou decrescendos @qq{al niente} peuvent être indiqués -de manière graphique, en définissant comme vraie (lettre "t") la +de manière graphique, en définissant comme vraie (lettre @q{t}) la propriété @code{circled-tip}, ce qui affiche un cercle à leur extrémité. @@ -2901,7 +2879,7 @@ e\> d c b\! On peut même ajouter ses propres indications textuelles : @lilypond[quote,ragged-right,fragment,relative=1,verbatim] -\set crescendoText = \markup { \italic "cresc. poco" } +\set crescendoText = \markup { \italic "cresc. poco" } \set crescendoSpanner = #'dashed-line a'2\< a a a\!\mf @end lilypond @@ -2986,7 +2964,7 @@ Par exemple : @lilypond[quote,ragged-right,fragment,verbatim,relative=1] c'4 \override BreathingSign #'text - = #(make-musicglyph-markup "scripts.rvarcomma") + = #(make-musicglyph-markup "scripts.rvarcomma") \breathe d4 @end lilypond @@ -3010,9 +2988,9 @@ Les trilles plus longs sont délimités par @code{\startTrillSpan} et @lilypond[verbatim,ragged-right,relative=2,quote,fragment] \new Voice { - << { c1 \startTrillSpan } - { s2. \grace { d16[\stopTrillSpan e] } } >> - c4 } + << { c1 \startTrillSpan } + { s2. \grace { d16[\stopTrillSpan e] } } >> + c4 } @end lilypond @cindex Pitched trills @@ -3052,9 +3030,9 @@ Référence du programme : @internalsref{TrillSpanner}. Un glissando relie une hauteur à une autre en passant par chaque -hauteur intermédiaire. Il est indiqué graphiquement, par une ligne -ou des vaguelettes entre ces deux notes. On l'obtient en -accolant la commande @code{\glissando} à la première note. +hauteur intermédiaire. Il est indiqué graphiquement, par une ligne ou +des vaguelettes entre ces deux notes. On l'obtient en accolant la +commande @code{\glissando} à la première note. @lilypond[quote,ragged-right,fragment,relative=2,verbatim] c2\glissando c' @@ -3067,7 +3045,7 @@ c2\glissando c, Référence du programme : @internalsref{Glissando}. -D'autres exemples : @file{input/@/regression/@/glissando@/.ly}. +D'autres exemples : @lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}. @refbugs @@ -3101,22 +3079,21 @@ arpégé, on peut remplacer ce signe par un crochet : @end lilypond -Le sens de l'arpège est parfois indiqué, par une flêche suivant la +Le sens de l'arpège est parfois indiqué, par une flèche suivant la vaguelette : @lilypond[quote,ragged-right,fragment,relative=1,verbatim] \new Voice { - \arpeggioUp - \arpeggio - \arpeggioDown - \arpeggio + \arpeggioUp + \arpeggio + \arpeggioDown + \arpeggio } @end lilypond @commonprop - Quand un arpège se lit sur plusieurs portées, il est possible d'indiquer l'arpège sur chacune des portées, puis de relier la ligne de vaguelettes en définissant comme vraie la propriété @@ -3125,9 +3102,9 @@ ligne de vaguelettes en définissant comme vraie la propriété @lilypond[quote,ragged-right,fragment,relative=1,verbatim] \new PianoStaff << - \set PianoStaff.connectArpeggios = ##t - \new Staff { \arpeggio } - \new Staff { \clef bass \arpeggio } + \set PianoStaff.connectArpeggios = ##t + \new Staff { \arpeggio } + \new Staff { \clef bass \arpeggio } >> @end lilypond @@ -3155,8 +3132,7 @@ Référence du programme : @internalsref{Arpeggio}. @refbugs - -Il est impossible de méler au même moment, dans un contexte +Il est impossible de mêler au même moment, dans un contexte @internalsref{PianoStaff}, des lignes d'arpèges connectées et d'autres non connectées. @@ -3220,8 +3196,8 @@ Pour réaliser des trémolos. Ceux-ci, par défaut, ne seront pas joués dans le rendu MIDI. @item percent -Pour répéter des temps ou des mesures, sous forme de signes -"pourcentage". Ceux-ci, par défaut, ne seront pas joués dans le rendu +Pour répéter des temps ou des mesures, sous forme de signes de +pourcentage. Ceux-ci, par défaut, ne seront pas joués dans le rendu MIDI. Les répétitions indiquées par ces symboles doivent être déclarées dans un contexte @code{Voice}. @@ -3287,9 +3263,9 @@ au début de l'exemple. @lilypond[quote,ragged-right,fragment,verbatim,relative=2] \new Staff { - \partial 4 - \repeat volta 4 { e | c2 d2 | e2 f2 | } - \alternative { { g4 g g } { a | a a a a | b2. } } + \partial 4 + \repeat volta 4 { e | c2 d2 | e2 f2 | } + \alternative { { g4 g g } { a | a a a a | b2. } } } @end lilypond @@ -3310,12 +3286,12 @@ l'exemple suivant, le crochet ne se prolonge que sur une mesure @lilypond[verbatim,ragged-right,quote] \relative c''{ - \time 3/4 - c c c - \set Staff.voltaSpannerDuration = #(ly:make-moment 3 4) - \repeat "volta" 5 { d d d } - \alternative { { e e e f f f } - { g g g } } + \time 3/4 + c c c + \set Staff.voltaSpannerDuration = #(ly:make-moment 3 4) + \repeat "volta" 5 { d d d } + \alternative { { e e e f f f } + { g g g } } } @end lilypond @@ -3324,17 +3300,16 @@ l'exemple suivant, le crochet ne se prolonge que sur une mesure D'autres exemples : - Les crochets précédant une reprise s'impriment d'ordinaire seulement au-dessus de la portée du haut. On peut ajuster cela -en définissant la propriété @code{voltaOnThisStaff} : voir @inputfileref{input/@/regression,volta@/-multi@/-staff@/.ly}. - +en définissant la propriété @code{voltaOnThisStaff} : voir +@lsr{repeats,volta@/-multi@/-staff@/.ly} @refbugs @cindex repeat, ambiguous -Des reprises enchâssées telles que : +Des reprises enchassées telles que @example \repeat @dots{} @@ -3367,7 +3342,6 @@ verticalement. @cindex expanding repeats @funindex \unfoldRepeats - Au prix de quelques réglages, les reprises de toutes sortes peuvent être rendues dans le fichier MIDI. Il suffit pour cela d'avoir recours à la fonction @code{\unfoldRepeats}, qui rend toutes les @@ -3376,13 +3350,13 @@ reprises explicites --- comme celles du type @code{unfold}. @lilypond[quote,verbatim,fragment,line-width=8.0\cm] \unfoldRepeats { - \repeat tremolo 8 {c'32 e' } - \repeat percent 2 { c''8 d'' } - \repeat volta 2 {c'4 d' e' f'} - \alternative { - { g' a' a' g' } - {f' e' d' c' } - } + \repeat tremolo 8 {c'32 e' } + \repeat percent 2 { c''8 d'' } + \repeat volta 2 {c'4 d' e' f'} + \alternative { + { g' a' a' g' } + {f' e' d' c' } + } } \bar "|." @end lilypond @@ -3392,15 +3366,15 @@ Lorsque l'on veut utiliser @code{\unfoldRepeats} seulement pour le rendu MIDI, il faut établir deux blocs @code{\score} : un pour le MIDI, avec des reprises explicites, et l'autre pour la partition, avec des reprises notées sous forme de barres de reprises, de trémolos ou -de symboles "pourcentage". Par exemple : +de symboles de pourcentage. Par exemple @example \score @{ - @var{..music..} + @var{..musique..} \layout @{ .. @} @} \score @{ - \unfoldRepeats @var{..music..} + \unfoldRepeats @var{..musique..} \midi @{ .. @} @} @end example @@ -3438,9 +3412,9 @@ Pour terminer un crochet indiquant une alternative. @lilypond[quote,ragged-right,verbatim,fragment,relative=2] c4 - \set Score.repeatCommands = #'((volta "93") end-repeat) + \set Score.repeatCommands = #'((volta "93") end-repeat) c4 c4 - \set Score.repeatCommands = #'((volta #f)) + \set Score.repeatCommands = #'((volta #f)) c4 c4 @end lilypond @@ -3464,9 +3438,9 @@ On peut placer une notation de trémolo entre deux notes, avec la commande @code{\repeat} suivie du style de trémolo désiré : @lilypond[quote,verbatim,ragged-right] \new Voice \relative c' { - \repeat "tremolo" 8 { c16 d16 } - \repeat "tremolo" 4 { c16 d16 } - \repeat "tremolo" 2 { c16 d16 } + \repeat "tremolo" 8 { c16 d16 } + \repeat "tremolo" 4 { c16 d16 } + \repeat "tremolo" 2 { c16 d16 } } @end lilypond @@ -3489,9 +3463,6 @@ Dans ce manuel : @ref{Tremolo subdivisions}, @ref{Repeats}. Référence du programme : @internalsref{Beam}, @internalsref{StemTremolo}. -D'autres exemples : @inputfileref{input/@/regression,chord@/-tremolo@/.ly}, -@inputfileref{input/@/regression,stem@/-tremolo@/.ly}. - @node Tremolo subdivisions @subsection Tremolo subdivisions @@ -3516,17 +3487,15 @@ c'2:8 c':32 | c': c': | @refbugs - Les trémolos entrés de cette manière ne sont pas rendus dans le fichier MIDI. @seealso +Dans ce manuel : @ref{Tremolo repeats}. -Dans ce même Manuel : @ref{Tremolo repeats}. - -Autre part : @internalsref{StemTremolo}. +Référence du programme : @internalsref{StemTremolo}. @node Measure repeats @@ -3535,7 +3504,6 @@ Autre part : @internalsref{StemTremolo}. @cindex percent repeats @cindex measure repeats - Le style de reprises @code{percent} sert à répéter une séquence de notes. Elle sera imprimée une fois, puis remplacée par un symbole spécial. Les séquences d'une ou deux mesures sont @@ -3545,36 +3513,32 @@ une barre oblique. Toutes ces répétitions doivent être déclarées dans un c @lilypond[quote,verbatim,ragged-right] \new Voice \relative c' { - \repeat "percent" 4 { c4 } - \repeat "percent" 2 { c2 es2 f4 fis4 g4 c4 } + \repeat "percent" 4 { c4 } + \repeat "percent" 2 { c2 es2 f4 fis4 g4 c4 } } @end lilypond - Les répétitions de plus de 2 mesures sont surmontées d'un compteur, -si l'on définit comme vraie (lettre "t") la propriété +si l'on définit comme vraie (lettre @q{t}) la propriété @code{countPercentRepeats}. @lilypond[relative=2,fragment,quote,verbatim,ragged-right] \new Voice { \set countPercentRepeats = ##t - \repeat "percent" 4 { c1 } + \repeat "percent" 4 { c1 } } @end lilypond - -Des symboles de pourcentage isolés peuvent aussi être obtenus, au moyen d'un silence multi-mesures dont on modifie l'aspect : - +Des symboles de pourcentage isolés peuvent aussi être obtenus, au +moyen d'un silence multi-mesures dont on modifie l'aspect : @lilypond[fragment,verbatim,quote] \override MultiMeasureRest #'stencil - = #ly:multi-measure-rest::percent + = #ly:multi-measure-rest::percent R1 @end lilypond - - @seealso Référence du programme : @internalsref{RepeatSlash}, diff --git a/Documentation/fr/user/changing-defaults.itely b/Documentation/fr/user/changing-defaults.itely index 15345c1a60..dc92c26f35 100644 --- a/Documentation/fr/user/changing-defaults.itely +++ b/Documentation/fr/user/changing-defaults.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Changing defaults @chapter Changing defaults @@ -49,9 +51,8 @@ UNTRANSLATED NODE: IGNORE ME * Layout tunings within contexts:: * Changing context default settings:: * Defining new contexts:: -* Aligning contexts:: +* Aligning contexts:: @end menu - @node Contexts explained @subsection Contexts explained @@ -141,3 +142,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/cheatsheet.itely b/Documentation/fr/user/cheatsheet.itely index 0e1c151288..ffea26473e 100644 --- a/Documentation/fr/user/cheatsheet.itely +++ b/Documentation/fr/user/cheatsheet.itely @@ -1,14 +1,20 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Cheat sheet @appendix Cheat sheet UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/converters.itely b/Documentation/fr/user/converters.itely index 93a51dbe27..563d69e0d1 100644 --- a/Documentation/fr/user/converters.itely +++ b/Documentation/fr/user/converters.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 0d9d3feea8ca1b22388bd1c67545a518987e72f1 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Converting from other formats @chapter Converting from other formats @@ -44,3 +46,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/dedication.itely b/Documentation/fr/user/dedication.itely new file mode 100644 index 0000000000..285b005024 --- /dev/null +++ b/Documentation/fr/user/dedication.itely @@ -0,0 +1,16 @@ +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- +@c This file is part of lilypond.tely +@ignore + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + + + When revising a translation, copy the HEAD committish of the + version that you are working on. See TRANSLATION for details. +@end ignore + +@quotation +Nous souhaitons dédier ce programme à tous les amis que nous avons +rencontrés par la musique. + +Han-Wen et Jan +@end quotation diff --git a/Documentation/fr/user/instrument-notation.itely b/Documentation/fr/user/instrument-notation.itely index 46ce66be57..178e14cc25 100644 --- a/Documentation/fr/user/instrument-notation.itely +++ b/Documentation/fr/user/instrument-notation.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Instrument-specific notation @chapter Instrument-specific notation @@ -179,6 +181,11 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@subsubsection Adding stanza numbers +@subsubsection Adding dynamics marks +@subsubsection Adding singer names +@subsubsection Printing stanzas at the end +@subsubsection Printing stanzas at the end in multiple columns @node Ambitus @subsection Ambitus @@ -406,3 +413,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/introduction.itely b/Documentation/fr/user/introduction.itely index 6a80897383..9ef3d7b936 100644 --- a/Documentation/fr/user/introduction.itely +++ b/Documentation/fr/user/introduction.itely @@ -1,7 +1,7 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 94e27fe2da58c91791e1cacb32c16a4acccf0638 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -835,7 +835,7 @@ instruments MIDI, les noms de couleur, et la police Feta. Les @emph{@ref{Templates}} de pièces LilyPond. Copiez et collez un modèle -dans un fichier, ajouter les notes, et c'est prêt! +dans un fichier, ajouter les notes, et c'est prêt ! @item La diff --git a/Documentation/fr/user/lilypond-book.itely b/Documentation/fr/user/lilypond-book.itely index 5f740da1ab..5ca7003077 100644 --- a/Documentation/fr/user/lilypond-book.itely +++ b/Documentation/fr/user/lilypond-book.itely @@ -1,14 +1,16 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node LilyPond-book -@chapter @command{lilypond-book}: Integrating text and music +@chapter UNTRANSLATED NODE: IGNORE ME @@ -22,7 +24,7 @@ UNTRANSLATED NODE: IGNORE ME * Invoking lilypond-book:: * Filename extensions:: * Many quotes of a large score:: -* Inserting LilyPond output into OpenOffice.org:: +* Inserting LilyPond output into OpenOffice.org:: * Inserting LilyPond output into other programs:: @end menu @node An example of a musicological document @@ -84,3 +86,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/lilypond.tely b/Documentation/fr/user/lilypond.tely index b173f38eed..7f8bee9e27 100644 --- a/Documentation/fr/user/lilypond.tely +++ b/Documentation/fr/user/lilypond.tely @@ -1,6 +1,6 @@ \input texinfo @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -72,7 +72,7 @@ Free Documentation License''. @ifnottex Ce fichier documente GNU LilyPond. -Copyright @copyright{} 1999--2006 by the authors +Copyright @copyright{} 1999--2007 par les auteurs @quotation Permission is granted to copy, distribute and/or modify this document @@ -90,7 +90,7 @@ Free Documentation License''. @top GNU LilyPond --- The music typesetter @c HJJ: Info needs `@top', which is a synonym for `@unnumbered' in TeX. -Ce document est le manuel de l'utilisateur pour GNU LilyPond 2.10.x. +Ce document est le manuel de l'utilisateur pour GNU LilyPond 2.11.x. @ifhtml (Allez au bas de la page pour voir le numéro de version exact). @end ifhtml @@ -102,9 +102,7 @@ Vous pouvez obtenir plus d'informations sur @uref{http://@/www@/.lilypond@/.org/}. Ce site contient des copies en ligne de ce manuel, ainsi qu'une documentation supplémentaire. -@ignore @include dedication.itely -@end ignore @menu Manuel d'apprentissage @@ -119,7 +117,7 @@ Manuel d'apprentissage Manuel de référence * Basic notation:: notation musicale standard. -* Instrument-specific notation:: notation spécifique à un instrument. +* Instrument-specific notation:: notation spécifique à des instruments. * Advanced notation:: notation plus rarement utilisée. * Changing defaults:: retoucher la mise en forme. * Non-musical notation:: aspects autres que la notation musicale. @@ -137,7 +135,7 @@ Annexes * Literature list:: ouvrages de référence sur la notation musicale. * Scheme tutorial:: programmer au sein de LilyPond. * Notation manual tables:: tables et diagrammes. -* Example templates:: modèles prêts à l'emploi. +* Templates:: modèles prêts à l'emploi. * Cheat sheet:: résumé de la syntaxe de LilyPond. * GNU Free Documentation License:: licence de ce document. * LilyPond command index:: diff --git a/Documentation/fr/user/literature.itely b/Documentation/fr/user/literature.itely index 5a5a043469..2310ba4ae5 100644 --- a/Documentation/fr/user/literature.itely +++ b/Documentation/fr/user/literature.itely @@ -1,14 +1,20 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Literature list @appendix Literature list UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/macros.itexi b/Documentation/fr/user/macros.itexi index 85c21564a2..09b2a422c0 100644 --- a/Documentation/fr/user/macros.itexi +++ b/Documentation/fr/user/macros.itexi @@ -1,5 +1,19 @@ @c -*- coding: utf-8; mode: texinfo; -*- +@c FIXME: rearranged this file; macros that don't depend on the output +@c format should go at the beginning. -gp + +@c in retrospect this is _not_ one of the output-insensitive macros. +@c I'll fix it soon. +@c usage: @lsr{ancient,custodes.ly} +@macro lsr{DIR,NAME} +@uref{source/input/lsr/\DIR\/collated-files.html#\NAME\,@file{\DIR\/\NAME\}} +@end macro + +@macro lsrdir{DIR} +@uref{source/input/lsr/\DIR\/collated-files.html,@file{\DIR\}} +@end macro + @ifnottex @macro texisharp {word} # diff --git a/Documentation/fr/user/non-music.itely b/Documentation/fr/user/non-music.itely index 9e28ccf00f..eb4e5e979c 100644 --- a/Documentation/fr/user/non-music.itely +++ b/Documentation/fr/user/non-music.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Non-musical notation @chapter Non-musical notation @@ -26,10 +28,10 @@ UNTRANSLATED NODE: IGNORE ME @menu * File structure (introduction):: -* Multiple scores in a book:: -* Extracting fragments of notation:: * File structure:: * A single music expression:: +* Multiple scores in a book:: +* Extracting fragments of notation:: * Including LilyPond files:: * Text encoding:: @end menu @@ -38,23 +40,23 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME -@node Multiple scores in a book -@subsection Multiple scores in a book +@node File structure +@subsection File structure UNTRANSLATED NODE: IGNORE ME -@node Extracting fragments of notation -@subsection Extracting fragments of notation +@node A single music expression +@subsection A single music expression UNTRANSLATED NODE: IGNORE ME -@node File structure -@subsection File structure +@node Multiple scores in a book +@subsection Multiple scores in a book UNTRANSLATED NODE: IGNORE ME -@node A single music expression -@subsection A single music expression +@node Extracting fragments of notation +@subsection Extracting fragments of notation UNTRANSLATED NODE: IGNORE ME @@ -122,3 +124,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/notation-appendices.itely b/Documentation/fr/user/notation-appendices.itely index e47578ee54..12686a0509 100644 --- a/Documentation/fr/user/notation-appendices.itely +++ b/Documentation/fr/user/notation-appendices.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Notation manual tables @appendix Notation manual tables @@ -17,6 +19,7 @@ UNTRANSLATED NODE: IGNORE ME * MIDI instruments:: * List of colors:: * The Feta font:: +* Note head styles:: @end menu @node Chord name chart @appendixsec Chord name chart @@ -43,3 +46,12 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@node Note head styles +@appendixsec Note head styles + +UNTRANSLATED NODE: IGNORE ME + + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/preface.itely b/Documentation/fr/user/preface.itely index 802ba619df..c6d86f668f 100644 --- a/Documentation/fr/user/preface.itely +++ b/Documentation/fr/user/preface.itely @@ -1,4 +1,4 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore Translation of GIT committish: a9d6b9a317e20cff479f9e0e54320dfae40bde31 diff --git a/Documentation/fr/user/programming-interface.itely b/Documentation/fr/user/programming-interface.itely index 27ae074aa0..98f9e31707 100644 --- a/Documentation/fr/user/programming-interface.itely +++ b/Documentation/fr/user/programming-interface.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Interfaces for programmers @chapter Interfaces for programmers @@ -32,6 +34,7 @@ UNTRANSLATED NODE: IGNORE ME * Mathematics in functions:: * Void functions:: * Functions without arguments:: +* Overview of available music functions:: @end menu @node Overview of music functions @subsection Overview of music functions @@ -63,6 +66,12 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@node Overview of available music functions +@subsection Overview of available music functions + +UNTRANSLATED NODE: IGNORE ME + +@include identifiers.tely @node Programmer interfaces @section Programmer interfaces @@ -162,3 +171,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/putting.itely b/Documentation/fr/user/putting.itely index 4a305cbee6..21ee3605bb 100644 --- a/Documentation/fr/user/putting.itely +++ b/Documentation/fr/user/putting.itely @@ -1,7 +1,7 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 0bf1e119501727ab8217767d8ce6c29dedf4fed1 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -11,7 +11,7 @@ @chapter Putting it all together Ce chapitre traite des principes généraux de LilyPond, et de -la manière de créer des blocs @code{\score} @footnote{Le terme @qq{score} signifie partition en anglais.}. +la manière de créer des blocs @code{\score} @footnote{Le terme @q{score} signifie partition en anglais.}. @menu @@ -31,11 +31,11 @@ beau, mais que faire quand ils ne traitent pas ce que l'on veut précisément ? Commencez par le modèle qui vous semblera le plus proche de ce à quoi vous voulez aboutir. Disons par exemple que vous voulez écrire une pièce -pour soprano et violoncelle : dans ce cas l'on pourrait commencer par -@qq{Notes and lyrics}, pour la partie de soprano. +pour soprano et violoncelle : dans ce cas l'on pourrait commencer par les +@qq{notes et paroles}, pour la partie de soprano. @example -\version "2.10.10" +\version "2.11.20" melodie = \relative c' @{ \clef treble \key c \major @@ -62,10 +62,10 @@ texte = \lyricmode @{ @end example Maintenant, on veut ajouter une partie de violoncelle. -Jetons un coup d'oeil sur l'exemple @qq{Notes only} : +Jetons un coup d'oeil sur l'exemple avec les notes seules : @example -\version "2.10.10" +\version "2.11.20" melodie = \relative c' @{ \clef treble \key c \major @@ -84,7 +84,7 @@ melodie = \relative c' @{ On n'a pas besoin de deux commandes @code{\version}. Ce dont on a besoin, c'est la section @code{melodie}. De même, on n'a pas besoin de deux sections -@code{\score} -- si nous les gardions toutes les deux, on obtiendrait deux +@code{\score} --- si nous les gardions toutes les deux, on obtiendrait deux parties séparées ; mais nous voulons un vrai duo, avec les deux parties ensemble. Dans la section @code{\score}, on n'a pas besoin non plus de deux @code{\layout} ou de deux @code{\midi}. @@ -102,7 +102,7 @@ Et puis, toujours tant qu'on y est, mettons le violoncelle en clé de Fa, comme le veut l'usage, et donnons-lui d'autres notes. @example -\version "2.10.10" +\version "2.11.20" musiqueSoprano = \relative c' @{ \clef treble \key c \major @@ -137,7 +137,7 @@ musiqueVioloncelle = \relative c @{ @end example Voilà qui est mieux, mais la partie de violoncelle n'apparaît pas sur -la partition -- en effet, nous ne l'avons pas utilisée dans la section +la partition --- en effet, nous ne l'avons pas utilisée dans la section @code{\score}. Si l'on veut que la partie de violoncelle s'imprime sous la partie de soprano, on va devoir ajouter : @@ -148,9 +148,8 @@ la partie de soprano, on va devoir ajouter : @noindent en dessous de tout ce qui concerne la soprano. Il nous faut également encadrer la musique par des @code{<<} et @code{>>}, qui feront comprendre -à LilyPond que plusieurs évènements -- ici, des objets @code{Staff} -- +à LilyPond que plusieurs évènements --- ici, des objets @code{Staff} --- se déroulent en même temps. Le bloc @code{\score} ressemble maintenant à -ceci : @example \score@{ @@ -175,8 +174,8 @@ mettre un peu d'ordre dans l'indentation. Voici le modèle pour soprano et violoncelle au complet : @lilypond[quote,verbatim,ragged-right] -\version "2.10.10" -musiqueSoprano = \relative c' { +\version "2.11.15" +sopranoMusic = \relative c' { \clef treble \key c \major \time 4/4 @@ -184,11 +183,11 @@ musiqueSoprano = \relative c' { a4 b c d } -parolesSoprano = \lyricmode { - Laaa Siii Dooo Rééé +sopranoLyrics = \lyricmode { + Aaa Bee Cee Dee } -musiqueVioloncelle = \relative c { +celloMusic = \relative c { \clef bass \key c \major \time 4/4 @@ -199,13 +198,13 @@ musiqueVioloncelle = \relative c { \score{ << << - \new Voice = "voixUn" { + \new Voice = "one" { \autoBeamOff - \musiqueSoprano + \sopranoMusic } - \new Lyrics \lyricsto "voixUn" \parolesSoprano + \new Lyrics \lyricsto "one" \sopranoLyrics >> - \new Staff \musiqueVioloncelle + \new Staff \celloMusic >> \layout { } \midi { } @@ -226,7 +225,7 @@ sommairement l'organisation du code LilyPond, en privilégiant la simplicité au détriment de certains détails. Vous trouverez une description plus complète dans @ref{File structure}. -La plupart des exemples de ce manuel sont de courts fragments, par exemple : +La plupart des exemples de ce manuel sont de courts fragments, par exemple @example c4 a b c @@ -244,10 +243,10 @@ exemples complets ; pour pouvoir être traitées, elles doivent au moins @end example La plupart des exemples font aussi intervenir la commande -@code{\relative}, suivie de @code{c'} ou @code{c''}. Elle -n'est pas à proprement parler nécessaire pour le traitement -des exemples, mais dans la plupart des cas le résultat sera -vraiment déplorable si vous l'oubliez. +@code{\relative}, suivie de @code{c'} ou @code{c''}. Elle n'est pas à +proprement parler nécessaire pour le traitement des exemples, mais +dans la plupart des cas le résultat sera vraiment déplorable si vous +l'oubliez. @lilypond[quote,fragment,ragged-right,verbatim] \relative c'' { @@ -255,10 +254,9 @@ vraiment déplorable si vous l'oubliez. } @end lilypond -C'est ici que nous entamons les choses sérieuses : -le code LilyPond, sous cette forme, est en réalité -un @emph{autre} raccourci. Même s'il est traité sans -problème, et aboutit au bon résultat, c'est une forme +C'est ici que nous entamons les choses sérieuses : le code LilyPond, +sous cette forme, est en réalité un @emph{autre} raccourci. Même s'il +est traité sans problème, et aboutit au bon résultat, c'est une forme abrégée de : @example @@ -269,15 +267,14 @@ abrégée de : @} @end example -Un bloc @code{\score} doit commencer par une et une seule -expression musicale. Rappelez-vous que cette expression -peut être ce que vous voulez, entre une note toute seule et -un gigantesque +Un bloc @code{\score} doit commencer par une et une seule expression +musicale. Rappelez-vous que cette expression peut être ce que vous +voulez, d'une note toute seule à un gigantesque @example @{ \new GrandStaff << - collez ici la partition complète de votre opéra Wagnérien préféré + collez ici la partition complète de votre opéra de Wagner préféré >> @} @end example @@ -286,7 +283,7 @@ un gigantesque Dès lors que tout cela est entre accolades : @code{@{ ... @}}, c'est une et une seule expression musicale. -Le bloc @code{\score} peut contenir d'autres éléments, tels que : +Le bloc @code{\score} peut contenir d'autres éléments, tels que @example \score @{ @@ -299,7 +296,7 @@ Le bloc @code{\score} peut contenir d'autres éléments, tels que : @noindent Certains préfèrent mettre ces commandes en dehors du bloc -@code{\score} -- par exemple, on met souvent le @code{\header} +@code{\score} --- par exemple, on met souvent le @code{\header} au-dessus. C'est juste là une autre forme abrégée que LilyPond accepte. @@ -307,7 +304,7 @@ accepte. @cindex indentifiers Une autre abréviation pratique est la possibilité de définir -des variables -- également appelées "identificateurs". Dans tous +des variables --- également appelées @qq{identificateurs}. Dans tous les modèles, vous trouverez : @example @@ -320,15 +317,15 @@ melodie = \relative c' @{ @} @end example -Lorsque LilyPond examinera ce fichier, il va prendre la -valeur de la variable @{melodie}, c'est-à-dire tout ce qui suit -le signe @code{=}, et l'insérer partout où il tombera sur -@code{\melodie}. Vous êtes libre de choisir comment dénommer -vos variables@footnote{Les noms de variables sont sensibles aux capitales -et minuscules, et ne peuvent contenir ni chiffres, ni tirets, -ni caractères accentués.} ; ce peut être @code{melodie}, @code{global}, -@code{maindroitepiano}, ou @code{laTeteAToto}. Pour plus de détails, -voir @ref{Saving typing with identifiers and functions}. +Lorsque LilyPond examinera ce fichier, il va prendre la valeur de la +variable @{melodie}, c'est-à-dire tout ce qui suit le signe @code{=}, +et l'insérer partout où il tombera sur @code{\melodie}. Vous êtes +libre de choisir comment dénommer vos variables@footnote{Les noms de +variables sont sensibles à la casse, et ne peuvent contenir ni +chiffres, ni tirets, ni caractères accentués.} ; ce peut être +@code{melodie}, @code{global}, @code{maindroitepiano}, ou +@code{laTeteAToto}. Pour plus de détails, voir @ref{Saving typing +with identifiers and functions}. Pour une description complète du format des fichiers d'entrée, voir @ref{File structure}. @@ -355,7 +352,7 @@ expression musicale.} Peut-être serait-il judicieux de relire la section @ref{Music expressions explained}, dans laquelle vous avez appris à construire de grandes expressions musicales petit bout -par petit bout -- nous avons vu les notes, puis les accords, etc. +par petit bout --- nous avons vu les notes, puis les accords, etc. Maintenant, nous allons partir d'une grande expression musicale, et redescendre la pente. @@ -363,16 +360,16 @@ et redescendre la pente. \score @{ @{ % cette accolade marque le début de l'expression musicale \new GrandStaff << - insérez ici votre opéra Wagnérien préféré + insérez ici votre opéra de Wagner préféré >> @} % cette accolade marque la fin de l'expression musicale \layout @{ @} @} @end example -Un opéra de Wagner multiplierait aisément la longueur de ce manuel -par deux ou trois, alors faisons ça en version chant/piano. On n'a -plus besoin d'une partition d'orchestre -- @code{GrandStaff} -- donc +Un opéra de Wagner multiplierait facilement la longueur de ce manuel +par deux ou trois, alors faisons-le en version chant/piano. On n'a +plus besoin d'une partition d'orchestre --- @code{GrandStaff} --- donc laissons cela de côté. Par contre, un chanteur et un piano @emph{pourraient} nous être utiles. @@ -413,19 +410,19 @@ soient imprimés ensemble... @} @end example -On y voit nettement plus clair maintenant. Nous voici -donc avec la partie du chanteur, qui contient un ensemble -@code{Voice}, ce qui dans LilyPond correspond à une voix, au -sens de vois musicale, pas forcément chantée donc (ce pourrait être -une partie de violon par exemple). +On y voit nettement plus clair maintenant. Nous voici donc avec la +partie du chanteur, qui contient un ensemble @code{Voice}, ce qui dans +LilyPond correspond à une voix, au sens de voix d'une polyphonie plutôt que +de voix chantée --- ce pourrait être une partie de violon par +exemple. Nous avons également une partie de piano, qui contient deux portées : une pour la main droite, une autre pour la main gauche. -À ce point, on pourrait commencer à ajouter les notes. Dans -les accolades qui suivent @code{\new Voice = chant}, on pourrait -commencer à écrire +À ce point, on pourrait commencer à ajouter les notes. Dans les +accolades qui suivent @code{\new Voice = chant}, on pourrait commencer +à écrire @example \relative c'' @{ @@ -434,7 +431,7 @@ commencer à écrire @end example Mais si l'on procédait ainsi, la section @code{\score} deviendrait -vite plutôt touffue, et il serait très tôt difficile de s'y retrouver. +vite assez touffue, et très rapidement on ne s'y retrouverait plus. C'est pourquoi on utilisera plutôt des variables, ou identificateurs : @example @@ -460,18 +457,16 @@ mainGauche = @{ @} @end example @noindent -Souvenez-vous que vous pouvez désigner vos variables du -nom que vous voulez, à condition de respecter les caractères -autorisés. Ces limitations sont décrites dans -@ref{File structure}. +Souvenez-vous que vous pouvez donner aux variables le nom que vous +voulez, à condition de respecter les caractères autorisés. Ces +limitations sont décrites dans @ref{File structure}. -Quand on écrit, ou que l'on lit, une section @code{\score}, -mieux vaut y aller lentement et soigneusement. Commencez -par le niveau le plus large, puis travaillez sur chaque -niveau plus détaillé. Cela aide vraiment, à ce propos, -d'avoir une indentation stricte et propre : assurez-vous que -chaque élément d'un même niveau a le même décalage horizontal -dans votre éditeur de texte ! +Quand on écrit, ou que l'on lit, une section @code{\score}, mieux vaut +y aller lentement et soigneusement. Commencez par le niveau le plus +large, puis travaillez sur chaque niveau plus détaillé. À ce propos, +une indentation stricte et propre est vraiment d'une aide précieuse : +assurez-vous que chaque élément d'un même niveau a le même décalage +horizontal dans votre éditeur de texte ! @@ -510,7 +505,7 @@ On établira alors une partie séparée en constituant un nouveau fichier : @} @end example -À La ligne +À la ligne @example \include "musique-Cor.ly" @@ -532,9 +527,9 @@ est visible comme suit : @end lilypond Dans les pièces d'ensemble, il arrive souvent qu'une voix ne joue pas -pendant plusieurs mesures. Un silence spécial, appelé multi-mesures, +pendant plusieurs mesures. Un silence spécial, appelé silence multi-mesures, l'indique alors. On l'obtient par un @samp{R} majuscule, suivi d'une -durée : (@code{1}@tie{} est une pause, @code{2}@tie{} une demi-pause, +durée : @code{1}@tie{}pour une pause, @code{2}@tie{}pour une demi-pause, etc. Cette durée peut être multipliée pour établir de plus longs silences. Par exemple, le silence suivant dure 3@tie{}mesures à 2/4. @@ -543,16 +538,17 @@ R2*3 @end example Dans une partie séparée, les silences multi-mesures sont compressés. -Il faut pour cela définir comme vraie la propriété @code{skipBars} : +Il faut pour cela définir la propriété @code{skipBars} à @q{vrai} : @example \set Score.skipBars = ##t @end example @noindent -Cette commande définie comme vraie ("true", lettre "t") la propriété dans -le contexte @code{Score}. Si l'on ajoute dans la musique ci-dessus -le silence multi-mesures et cette option, on obtient le résultat suivant : +Cette commande donne la valeur @q{vrai} --- @q{true} en anglais, +@samp{#t} dans le langage Scheme --- à cette propriété dans le +contexte @code{Score}. Si l'on ajoute dans la musique ci-dessus le +silence multi-mesures et cette option, on obtient le résultat suivant : @lilypond[quote,ragged-right] \transpose f c' \relative c { @@ -565,7 +561,7 @@ le silence multi-mesures et cette option, on obtient le résultat suivant : Le conducteur rassemble toute la musique. Si l'on suppose que l'autre voix de notre duo se trouve dans le fichier @file{musique-Basson.ly} en -tant que variable @code{notesBasson}, on établira un conducteur avec : +tant que variable @code{notesBasson}, on établira un conducteur avec @example \include "musique-Basson.ly" @@ -594,8 +590,9 @@ ce qui équivaut à >> @end lilypond -Des informations plus détaillées sur la mise en place de conducteurs et -de parties séparées se trouvent dans le manuel : voir @ref{Orchestral music}. +Des informations plus détaillées sur la mise en place de conducteurs +et de parties séparées se trouvent dans le manuel : voir +@ref{Orchestral music}. -Les propriétés réglables (@q{properties}) sont abordées en détail dans +Les variables (@q{propriétés}) réglables sont abordées en détail dans @ref{Changing context properties on the fly}. diff --git a/Documentation/fr/user/running.itely b/Documentation/fr/user/running.itely index f996d6152c..6c314dc035 100644 --- a/Documentation/fr/user/running.itely +++ b/Documentation/fr/user/running.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Running LilyPond @chapter Running LilyPond @@ -58,3 +60,7 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/scheme-tutorial.itely b/Documentation/fr/user/scheme-tutorial.itely index 08b5616aa5..f12664457b 100644 --- a/Documentation/fr/user/scheme-tutorial.itely +++ b/Documentation/fr/user/scheme-tutorial.itely @@ -1,14 +1,20 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 64f0d86a7c0987b311bfdfdfeddfa063e1f2d6e7 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Scheme tutorial @appendix Scheme tutorial UNTRANSLATED NODE: IGNORE ME + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/spacing.itely b/Documentation/fr/user/spacing.itely index fa19990b91..dff7d2b11c 100644 --- a/Documentation/fr/user/spacing.itely +++ b/Documentation/fr/user/spacing.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: ac7d0e72b32b6a11470f598f2bee180b11402fe8 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Spacing issues @chapter Spacing issues @@ -15,12 +17,11 @@ UNTRANSLATED NODE: IGNORE ME @menu * Paper and pages:: * Music layout:: +* Displaying spacing:: +* Breaks:: * Vertical spacing:: * Horizontal spacing:: -* Breaks:: -* Displaying spacing:: -@end menu - +@end menu @node Paper and pages @section Paper and pages @@ -29,8 +30,7 @@ UNTRANSLATED NODE: IGNORE ME @menu * Paper size:: * Page formatting:: -@end menu - +@end menu @node Paper size @subsection Paper size @@ -47,11 +47,11 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME @menu -* Setting global staff size:: +* Setting the staff size:: * Score layout:: @end menu -@node Setting global staff size -@subsection Setting global staff size +@node Setting the staff size +@subsection Setting the staff size UNTRANSLATED NODE: IGNORE ME @@ -60,6 +60,54 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@node Displaying spacing +@section Displaying spacing + +UNTRANSLATED NODE: IGNORE ME + +@node Breaks +@section Breaks + +UNTRANSLATED NODE: IGNORE ME + +@menu +* Line breaking:: +* Page breaking:: +* Optimal page breaking:: +* Optimal page turning:: +* Explicit breaks:: +* Using an extra voice for breaks:: +@end menu +@node Line breaking +@subsection Line breaking + +UNTRANSLATED NODE: IGNORE ME + +@node Page breaking +@subsection Page breaking + +UNTRANSLATED NODE: IGNORE ME + +@node Optimal page breaking +@subsection Optimal page breaking + +UNTRANSLATED NODE: IGNORE ME + +@node Optimal page turning +@subsection Optimal page turning + +UNTRANSLATED NODE: IGNORE ME + +@node Explicit breaks +@subsection Explicit breaks + +UNTRANSLATED NODE: IGNORE ME + +@node Using an extra voice for breaks +@subsection Using an extra voice for breaks + +UNTRANSLATED NODE: IGNORE ME + @node Vertical spacing @section Vertical spacing @@ -67,28 +115,23 @@ UNTRANSLATED NODE: IGNORE ME @menu * Vertical spacing inside a system:: -* Vertical spacing of piano staves:: * Vertical spacing between systems:: -* Controlling spacing of individual systems:: +* Explicit staff and system positioning:: * Two-pass vertical spacing:: +* Vertical collision avoidance:: @end menu @node Vertical spacing inside a system @subsection Vertical spacing inside a system UNTRANSLATED NODE: IGNORE ME -@node Vertical spacing of piano staves -@subsection Vertical spacing of piano staves - -UNTRANSLATED NODE: IGNORE ME - @node Vertical spacing between systems @subsection Vertical spacing between systems UNTRANSLATED NODE: IGNORE ME -@node Controlling spacing of individual systems -@subsection Controlling spacing of individual systems +@node Explicit staff and system positioning +@subsection Explicit staff and system positioning UNTRANSLATED NODE: IGNORE ME @@ -97,6 +140,11 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME +@node Vertical collision avoidance +@subsection Vertical collision avoidance + +UNTRANSLATED NODE: IGNORE ME + @node Horizontal spacing @section Horizontal Spacing @@ -107,6 +155,7 @@ UNTRANSLATED NODE: IGNORE ME * New spacing area:: * Changing horizontal spacing:: * Line length:: +* Proportional notation:: @end menu @node Horizontal spacing overview @subsection Horizontal spacing overview @@ -128,39 +177,12 @@ UNTRANSLATED NODE: IGNORE ME UNTRANSLATED NODE: IGNORE ME -@node Breaks -@section Breaks - -UNTRANSLATED NODE: IGNORE ME - -@menu -* Line breaking:: -* Page breaking:: -* Optimal page breaking:: -* Optimal page turning:: -@end menu -@node Line breaking -@subsection Line breaking - -UNTRANSLATED NODE: IGNORE ME - -@node Page breaking -@subsection Page breaking - -UNTRANSLATED NODE: IGNORE ME - -@node Optimal page breaking -@subsection Optimal page breaking +@node Proportional notation +@subsection Proportional notation UNTRANSLATED NODE: IGNORE ME -@node Optimal page turning -@subsection Optimal page turning - -UNTRANSLATED NODE: IGNORE ME - -@node Displaying spacing -@section Displaying spacing - -UNTRANSLATED NODE: IGNORE ME +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/templates.itely b/Documentation/fr/user/templates.itely index d792e1f80c..6098dc84c3 100644 --- a/Documentation/fr/user/templates.itely +++ b/Documentation/fr/user/templates.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 0bf1e119501727ab8217767d8ce6c29dedf4fed1 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Templates @appendix Templates @@ -53,6 +55,7 @@ UNTRANSLATED NODE: IGNORE ME @appendixsubsec SATB vocal score @appendixsubsec SATB vocal score and automatic piano reduction +@appendixsubsec SATB with aligned contexts @node Ancient notation templates @appendixsec Ancient notation templates @@ -72,3 +75,7 @@ UNTRANSLATED NODE: IGNORE ME @appendixsubsec LaTeX @appendixsubsec Texinfo + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/tutorial.itely b/Documentation/fr/user/tutorial.itely index 7b9d9c443a..6141f365b8 100644 --- a/Documentation/fr/user/tutorial.itely +++ b/Documentation/fr/user/tutorial.itely @@ -1,7 +1,7 @@ -@c -*- coding: utf-8; mode: texinfo; -*- +@c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: a9d6b9a317e20cff479f9e0e54320dfae40bde31 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -143,10 +143,10 @@ Typeset File}. Le fichier PDF résultant sera alors affiché sur votre Notez que le premier démarrage peut prendre une minute ou deux, car toutes les polices système doivent être d'abord analysées. -À l'avenir, vous aurez certainement recours aux commandes @qq{ Nouveau -} ou @qq{ Ouvrir }. Vous devez enregistrer votre fichier avant de -lancer la création de la partition. Si une erreur advient pendant le -traitement, vous la trouverez dans la fenêtre @qq{ log }. +À l'avenir, vous aurez certainement recours aux commandes @qq{Nouveau} +ou @qq{Ouvrir}. Vous devez enregistrer votre fichier avant de lancer +la création de la partition. Si une erreur advient pendant le +traitement, vous la trouverez dans la fenêtre @qq{log}. @subsubheading Windows @@ -265,7 +265,7 @@ Le moyen le plus simple d'entrer des notes est d'utiliser le mode @code{\relative}. Avec ce mode, l'@rglos{interval} entre la note et celle qui la précède est supposé inférieur ou égal à une @rglos{fourth}. Commençons par entrer la partition la plus -élémentaire qui soit, une (@rglos{scale}). +élémentaire qui soit, une @rglos{scale}. @lilypond[quote,ragged-right,verbatim] \relative c' { @@ -275,11 +275,10 @@ celle qui la précède est supposé inférieur ou égal à une @end lilypond La note de départ est @rglos{middle C}. Chacune des notes qui suivent -est à moins d'une quarte de la note précédente -- en d'autres termes, -le premier @samp{c} est le Do dit "du milieu", entre la clé de Sol et -la clé de Fa, puis est suivi par le ré le plus proche, et ainsi de -suite. On peut bien sûr créer des mélodies d'intervalles plus étendus -: +est à moins d'une quarte de la note précédente --- en d'autres termes, +le premier @samp{c} est le do central, entre la clé de sol et +la clé de sa, puis est suivi par le ré le plus proche, et ainsi de +suite. On peut bien sûr créer des mélodies d'intervalles plus étendus : @lilypond[quote,ragged-right,verbatim] \relative c' { @@ -290,7 +289,7 @@ suite. On peut bien sûr créer des mélodies d'intervalles plus étendus @noindent Comme vous l'aurez remarqué, cet exemple ne commence plus sur le do du -milieu. La première note -- le @samp{d} -- est le ré qui en est le +milieu. La première note --- le @samp{d} --- est le ré qui en est le plus proche. Pour ajouter des intervalles supérieurs à une quarte, il suffit @@ -306,10 +305,10 @@ ajoutant respectivement une apostrophe @code{'} ou une virgule @end lilypond @noindent -Pour envoyer une note deux octaves (ou davantage !) plus haut ou plus -bas, il suffit de mettre plusieurs @code{''} ou plusieurs @code{,,} -- +Pour déplacer une note deux octaves (ou davantage !) plus haut ou plus +bas, il suffit de mettre plusieurs @code{''} ou plusieurs @code{,,} --- attention cependant à bien mettre deux apostrophes @code{''}, et non -deux guillemets @code{"}@tie{}! C'est de cette même manière que l'on +un guillemet @code{"}@tie{}! C'est de cette même manière que l'on peut modifier la valeur de départ de @code{\relative c'}. @@ -347,7 +346,7 @@ la valeur rythmique. @subheading Rests -On saisit un (@rglos{rest}) tout comme une note, mais avec le +On saisit un @rglos{rest} tout comme une note, mais avec le caractère @samp{r}. @lilypond[quote,ragged-right,verbatim] @@ -360,7 +359,7 @@ caractère @samp{r}. @subheading Time signature -Le @rglos{time signature}) peut être défini à l'aide de la commande +Le @rglos{time signature} peut être défini à l'aide de la commande @code{\time} : @lilypond[quote,ragged-right,verbatim] @@ -567,7 +566,7 @@ d'octaviation n'est ajoutée, il en conlcuera que chaque hauteur est située à une quarte au plus de la note précédente. Lilypond tient compte des intervalles induits par les noms des notes --- en d'autres termes,une quarte augmentée n'est @emph{pas} +--- en d'autres termes, une quarte augmentée n'est @emph{pas} équivalente à une quinte diminuée. Ainsi, si l'on part d'un Do, un Fa dièse sera placé au-dessus, tandis qu'un Sol bémol sera placé au-dessous. @@ -580,7 +579,7 @@ c2 ges @moreinfo @quotation @table @asis -@item Les Octaves Relatives +@item Les hauteurs de note relatives voir @ref{Relative octaves}. @item Les vérifications d'octaves voir @ref{Octave check}. @@ -594,20 +593,19 @@ voir @ref{Octave check}. @subheading Accidentals -Dans la notation par défaut,un dièse (@rglos{sharp}) s'obtient en -ajoutant @samp{is} au nom de la -note, et un bémol (@rglos{flat}) en ajoutant @samp{es}. Comme vous pouvez -vous y attendre, un double dièse ou double bémol est alors obtenu en -ajoutant @samp{isis} ou @samp{eses}@footnote{Cette syntaxe est dérivée -de la convention de dénomination des notes dans les langues nordiques -et germaniques, comme l'allemand ou le hollandais.}. +Dans la notation par défaut, un @rglos{sharp} s'obtient en ajoutant +@samp{is} au nom de la note, et un @rglos{flat} en ajoutant @samp{es}. +Comme vous pouvez vous y attendre, un double dièse ou double bémol est +alors obtenu en ajoutant @samp{isis} ou @samp{eses}@footnote{Cette +syntaxe est dérivée de la convention de dénomination des notes dans +les langues nordiques et germaniques, comme l'allemand ou le +hollandais.}. @c DIV specific Cependant, si vous utilisez la commande @samp{\include "italiano.ly"} -pour entrer -les noms de notes français au lieu des noms hollandais, il faudra -ajouter un @samp{d} pour un dièse, et un @samp{b} pour un bémol. Le -double dièse et le double bémol s'obtiennent en ajoutant +pour entrer les noms de notes français au lieu des noms hollandais, il +faudra ajouter un @samp{d} pour un dièse, et un @samp{b} pour un +bémol. Le double dièse et le double bémol s'obtiennent en ajoutant respectivement @samp{dd} et @samp{bb} @c END DIV @@ -636,25 +634,24 @@ a @subheading Warning: key signatures and pitches La combinaison de l'armure et des hauteurs de note --- y compris les -altérations --- permet à LilyPond de déterminer dans quel cas afficher les -altérations accidentelles. L'armure n'affecte que les altérations +altérations --- permet à LilyPond de déterminer dans quel cas afficher +les altérations accidentelles. L'armure n'affecte que les altérations @emph{imprimées}, et non les hauteurs réelles ! Cette fonctionnalité -est souvent source de -confusion pour les nouveaux utilisateurs, aussi expliquons-la en -détail. +est souvent source de confusion pour les nouveaux utilisateurs, aussi +expliquons-la en détail. LilyPond fait une nette distinction entre le contenu musical et la -mise en forme. L'altération d'une note -- bémol, bécarre ou dièse -- -fait partie de sa hauteur, et relève donc du contenu musical. La -présence ou non -d'une altération accidentelle -- un @emph{signe} bémol, bécarre ou -dièse -- devant la note correspondante est une question qui relève de la mise en -page. Mettre en page une partition se fait selon des règles ; les -altérations accidentelles seront donc automatiquement imprimées suivant -ces règles. Les hauteurs de note, en revanche, relèvent de ce que -vous voulez entendre ; et, dans la mesure où la musique que vous -entrez est censée être celle que vous voulez entendre, LilyPond (qui -n'est chargé que de la gravure) ne les choisira pas à votre place. +mise en forme. L'altération d'une note --- bémol, bécarre ou dièse +--- fait partie de sa hauteur, et relève donc du contenu musical. La +présence ou non d'une altération accidentelle --- un @emph{signe} +bémol, bécarre ou dièse --- devant la note correspondante est une +question qui relève de la mise en page. Mettre en page une partition +se fait selon des règles ; les altérations accidentelles seront donc +automatiquement imprimées suivant ces règles. Les hauteurs de note, +en revanche, relèvent de ce que vous voulez entendre ; et, dans la +mesure où la musique que vous entrez est censée être celle que vous +voulez entendre, LilyPond (qui n'est chargé que de la gravure) ne les +choisira pas à votre place. Dans cet exemple, @@ -743,7 +740,7 @@ a8(\( ais b c) cis2 b'2 a4 cis,\) @sp 1 @cindex slurs versus ties -@subheading Warnings: slurs vs. ties +@subheading Warnings: slurs vs. ties Une liaison d'articulation ou de phrasé ressemble à une liaison de tenue, mais n'a pas la même signification. Alors qu'une liaison de @@ -829,7 +826,7 @@ c2\< c2\ff\> c2 c2\! @moreinfo @quotation @table @asis -@item Ponctuations +@item Articulations voir @ref{Articulations}. @item Doigtés voir @ref{Fingering instructions}. @@ -970,8 +967,8 @@ musicale : { a4 g4 } @end lilypond -Placer une séquence d'expressions musicales -- des notes par exemple --- entre accolades signifie qu'elles doivent être jouées +Placer une séquence d'expressions musicales --- des notes par exemple +--- entre accolades signifie qu'elles doivent être jouées successivement, les unes après les autres. Le résultat est une expression, qui peut elle-même être regroupée séquentiellement avec d'autres expressions. Ici, l'expression de l'exemple précédent est @@ -1048,7 +1045,7 @@ longues et complexes. Par exemple, Ceci est une suite d'expressions, où chacune est contenue dans la suivante. Les expressions les plus simples sont les nombres, et de plus grandes expressions sont produites en combinant des expressions -avec des opérateurs -- comme @samp{+}, @samp{*} et @samp{/} -- et des +avec des opérateurs --- comme @samp{+}, @samp{*} et @samp{/} --- et des parenthèses. Tout comme les expressions mathématiques, les expressions musicales peuvent être imbriquées avec une profondeur arbitraire, ce qui est nécessaire pour de la musique complexe comme des partitions @@ -1081,7 +1078,7 @@ Ces éléments @code{Staff} sont ensuite combinés en parallèle avec La commande @code{\new} introduit un « contexte de notation ». Un contexte de notation est un environnement dans lequel les événements -musicaux -- comme les notes ou les commandes @code{\clef} -- sont +musicaux --- comme les notes ou les commandes @code{\clef} --- sont interprétés. Pour des pièces simples, ces contextes sont créés automatiquement. Pour des pièces plus complexes, il est préférable de spécifier explicitement les contextes. Cela assure que chaque @@ -1122,7 +1119,7 @@ modifié si nécessaire : voir pour cela @ref{Changing defaults}.}. @cindex cross staff voice, manual La musique pour piano s'écrit sur deux portées reliées par une accolade. Imprimer ce type de portée revient au même que dans -l'exemple de musique polyphonique de (@ref{Multiple staves}), mais +l'exemple de musique polyphonique de @ref{Multiple staves}, mais maintenant cette expression entière doit être interprétée dans un contexte @code{PianoStaff} : @@ -1215,7 +1212,7 @@ Voir @ref{Basic polyphony}. @cindex chords Des accords peuvent être produits en entourant les hauteurs de notes -par des angles gauche et droit -- @samp{<} et @samp{>} -- +par des angles gauche et droit --- @samp{<} et @samp{>} --- @lilypond[quote,fragment,verbatim,relative=2,fragment] r4 4 2 @@ -1238,7 +1235,7 @@ r4 8\>( 4 \!) @node Songs @section Songs -Cette section présente l'écriture vocale, et les partitions de variété. +Cette section présente l'écriture vocale et les partitions de variété. @menu * Printing lyrics:: @@ -1376,9 +1373,9 @@ forme se trouve à la section @ref{Chords}. @node Final touches @section Final touches -Voici l'ultime section de ce tutoriel, qui montre comment ajouter la -touche finale à des morceaux simples, et sert d'introduction pour le -reste du Manuel. +L'ultime section de ce tutoriel montre comment ajouter la touche +finale à des morceaux simples, et consititue une introduction au reste +du manuel. @menu * Version number:: @@ -1396,10 +1393,10 @@ reste du Manuel. @cindex versioning La déclaration @code{\version} stipule le numéro de la version de LilyPond pour laquelle le fichier a été écrit. Pour donner à un -fichier la version 2.10.0, ajoutez +fichier la version 2.11.20, ajoutez @example -\version "2.10.1" +\version "2.11.20" @end example @noindent @@ -1407,8 +1404,8 @@ tout en haut de votre fichier LilyPond. Cette annotation permet de faciliter les prochaines mises à jour de LilyPond. Les changements dans la syntaxe sont gérés avec un -programme spécial, @file{convert-ly} -- voir @ref{Updating files with -convert-ly} -- et il utilise @code{\version} pour déterminer les +programme spécial, @file{convert-ly} --- voir @ref{Updating files with +convert-ly} --- et il utilise @code{\version} pour déterminer les règles de conversion à appliquer au fichier. @@ -1422,7 +1419,7 @@ principales. Le bloc @code{\header} est habituellement placé en début de fichier. @example -\version "2.10.1" +\version "2.11.20" \header @{ title = "Symphonie" composer = "Moi" @@ -1502,7 +1499,7 @@ devient bien plus facile à lire : @end lilypond Si d'aventure vous faites une erreur d'octaviation, le mode -@code{\relative} la rendra frappante -- toutes les notes suivantes +@code{\relative} la rendra frappante --- toutes les notes suivantes seront placées à la mauvaise octave. En mode de hauteurs absolues, une erreur isolée ne serait pas aussi visible, et donc aussi facile à dénicher. @@ -1582,13 +1579,12 @@ différents endroits. L'exemple suivant utilise la variable ci-dessus @subsection After the tutorial Après avoir parcouru ce tutoriel, vous devriez vous essayer à écrire -un morceau ou deux. Commencez par copier l'un des modèles types -(@ref{Templates}) et ajoutez-y des notes. Si vous voulez employer une -notation que vous n'avez pas trouvé dans le tutoriel, consultez la -référence de notation, en commençant par la @ref{Basic notation}. Si -vous désirez écrire pour un ensemble instrumental non couvert par les -@ref{Example templates}, lisez la section @ref{Extending the -templates}. +un morceau ou deux. Commencez par copier l'un des @ref{Templates} +types et ajoutez-y des notes. Si vous voulez employer une notation +que vous n'avez pas trouvé dans le tutoriel, consultez la référence de +notation, en commençant par la @ref{Basic notation}. Si vous désirez +écrire pour un ensemble instrumental non couvert par les +@ref{Templates}, lisez la section @ref{Extending the templates}. Après avoir écrit quelques pièces courtes, lisez les chapitres 3 à 5 du manuel d'apprentissage. Rien ne s'oppose à ce que vous consultiez @@ -1617,6 +1613,6 @@ explicitement spécifié. Si vous ne vous y retrouvez toujours pas pour savoir quel code LilyPond produit précisément tel ou tel exemple, consultez la version -HTML de ce manuel (si ce n'est pas déjà le cas), et cliquez sur -l'image de la partition. La source exacte utilisée pour générer ce -manuel s'affichera alors. +HTML de ce manuel si ce n'est pas déjà le cas, et cliquez sur l'image +de la partition. La source exacte utilisée pour générer ce manuel +s'affichera alors. diff --git a/Documentation/fr/user/tweaks.itely b/Documentation/fr/user/tweaks.itely index 032f76c453..50c2086791 100644 --- a/Documentation/fr/user/tweaks.itely +++ b/Documentation/fr/user/tweaks.itely @@ -1,12 +1,14 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 64f0d86a7c0987b311bfdfdfeddfa063e1f2d6e7 + Translation of GIT committish: d56aa8181857c5feabf303ae88e716eba069f0a9 + When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @end ignore + @node Tweaking output @chapter Tweaking output @@ -55,3 +57,8 @@ UNTRANSLATED NODE: IGNORE ME @section Avoiding tweaks with slower processing UNTRANSLATED NODE: IGNORE ME + + +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. diff --git a/Documentation/fr/user/working.itely b/Documentation/fr/user/working.itely index 3ebba4e9b3..6864acb8e9 100644 --- a/Documentation/fr/user/working.itely +++ b/Documentation/fr/user/working.itely @@ -1,7 +1,7 @@ @c -*- coding: utf-8; mode: texinfo; documentlanguage: fr -*- @c This file is part of lilypond.tely @ignore - Translation of GIT committish: 0bf1e119501727ab8217767d8ce6c29dedf4fed1 + Translation of GIT committish: b40f25ec7472b855483b5eb9126747bfb9487fe1 When revising a translation, copy the HEAD committish of the version that you are working on. See TRANSLATION for details. @@ -70,7 +70,7 @@ en résoudre d'autres. @itemize @bullet @item @strong{Ajoutez le numéro de version dans chaque fichier}. Notez que chaque fichier modèle contient une ligne @code{\version -"2.10.10"}. Nous vous conseillons fortement d'inclure cette ligne, +"2.11.15"}. Nous vous conseillons fortement d'inclure cette ligne, même pour de petits fichiers. Par expérience, il est très difficile de se rappeler quelle version de LilyPond on utilisait quelques années auparavant. L'utilitaire @code{convert-ly} demande que vous @@ -92,7 +92,7 @@ le coup si l'on doît corriger vos fichiers. @item @strong{Ajoutez des commentaires}. Utilisez soit des numéros de mesure (assez souvent), soit des références au contenu -musical (@q{second thème des violons,} @q{quatrième variation,} etc.). +musical --- @qq{second thème des violons}, @qq{quatrième variation}, etc. Vous pouvez ne pas avoir besoin des commentaires lorsque vous écrivez une pièce pour la première fois, mais si vous souhaitez y revenir deux ou trois ans plus tard pour changer quelque chose, ou si vous donnez @@ -208,9 +208,9 @@ fragA = \relative c'' { a4 a8. b16 } fragB = \relative c'' { a8. gis16 ees4 } violin = \new Staff { \fragA \fragA \fragB \fragA } \score { - { - \violin - } + { + \violin + } } @end lilypond @@ -223,17 +223,17 @@ dolce = \markup{ \italic \bold dolce } padText = { \once \override TextScript #'padding = #5.0 } fthenp=_\markup{ \dynamic f \italic \small { 2nd } \hspace #0.1 \dynamic p } violin = \relative c'' { - \repeat volta 2 { - c4._\dolce b8 a8 g a b | - \padText - c4.^"hi there!" d8 e' f g d | - c,4.\fthenp b8 c4 c-. | - } + \repeat volta 2 { + c4._\dolce b8 a8 g a b | + \padText + c4.^"hi there!" d8 e' f g d | + c,4.\fthenp b8 c4 c-. | + } } \score { - { - \violin - } + { + \violin + } \layout{ragged-right=##t} } @end lilypond @@ -246,13 +246,13 @@ lire, et particulièrement la dernière ligne. @example violin = \relative c'' @{ - \repeat volta 2 @{ - c4._\markup@{ \italic \bold dolce @} b8 a8 g a b | - \once \override TextScript #'padding = #5.0 - c4.^"hi there!" d8 e' f g d | - c,4.\markup@{ \dynamic f \italic \small @{ 2nd @} - \hspace #0.1 \dynamic p @} b8 c4 c-. | - @} + \repeat volta 2 @{ + c4._\markup@{ \italic \bold dolce @} b8 a8 g a b | + \once \override TextScript #'padding = #5.0 + c4.^"hi there!" d8 e' f g d | + c,4.\markup@{ \dynamic f \italic \small @{ 2nd @} + \hspace #0.1 \dynamic p @} b8 c4 c-. | + @} @} @end example @@ -264,18 +264,17 @@ LilyPond gère également des substitutions non-statiques --- vous pouvez les voir comme des fonctions. @lilypond[quote,verbatim,ragged-right] -padText = #(define-music-function (parser location padding) (number?) - #{ - \once \override TextScript #'padding = #$padding - #}) + #{ + \once \override TextScript #'padding = #$padding + #}) \relative c''' { - c4^"piu mosso" b a b - \padText #1.8 - c4^"piu mosso" d e f - \padText #2.6 - c4^"piu mosso" fis a g + c4^"piu mosso" b a b + \padText #1.8 + c4^"piu mosso" d e f + \padText #2.6 + c4^"piu mosso" fis a g } @end lilypond @@ -303,19 +302,19 @@ les parties avec tous les @code{#()}. Celles-ci sont expliquées dans @lilypond[quote,verbatim,ragged-right] mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line(#:dynamic "mp" #:text #:italic "dolce" ))) + #:line(#:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup { \bold $markp } + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup { \bold $markp } #}) \relative c'' { - \tempo 4=50 - a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 - \tempoMark "Poco piu mosso" - cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 + \tempo 4=50 + a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 + \tempoMark "Poco piu mosso" + cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 } @end lilypond @@ -332,12 +331,12 @@ dans nos fichiers de musique, et je trouve personnellement tous ces @example %%% enregistrez ceci dans un fichier nommé "definitions.ly" mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line(#:dynamic "mp" #:text #:italic "dolce" ))) + #:line(#:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #@{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup @{ \bold $markp @} #@}) @end example @@ -351,30 +350,30 @@ sous @file{"musique.ly"}). \include "definitions.ly" \relative c'' @{ - \tempo 4=50 - a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 - \once \override Score.RehearsalMark #'padding = #2.0 - \tempoMark "Poco piu mosso" - cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 + \tempo 4=50 + a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 + \once \override Score.RehearsalMark #'padding = #2.0 + \tempoMark "Poco piu mosso" + cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 @} @end example @lilypond[quote,ragged-right] mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line(#:dynamic "mp" #:text #:italic "dolce" ))) + #:line(#:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup { \bold $markp } + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup { \bold $markp } #}) \relative c'' { - \tempo 4=50 - a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 - \once \override Score.RehearsalMark #'padding = #2.0 - \tempoMark "Poco piu mosso" - cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 + \tempo 4=50 + a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 + \once \override Score.RehearsalMark #'padding = #2.0 + \tempoMark "Poco piu mosso" + cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 } @end lilypond @@ -391,59 +390,59 @@ fichier @file{definitions.ly} par ceci : @example %%% definitions.ly mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line( #:dynamic "mp" #:text #:italic "dolce" ))) + #:line( #:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #@{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup @{ \bold $markp @} #@}) \layout@{ - \context @{ \Score - \override MetronomeMark #'extra-offset = #'(-9 . 0) - \override MetronomeMark #'padding = #'3 - @} - \context @{ \Staff - \override TimeSignature #'style = #'numbered - @} - \context @{ \Voice - \override Glissando #'thickness = #3 - \override Glissando #'gap = #0.1 - @} + \context @{ \Score + \override MetronomeMark #'extra-offset = #'(-9 . 0) + \override MetronomeMark #'padding = #'3 + @} + \context @{ \Staff + \override TimeSignature #'style = #'numbered + @} + \context @{ \Voice + \override Glissando #'thickness = #3 + \override Glissando #'gap = #0.1 + @} @} @end example @lilypond[quote,ragged-right] mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line( #:dynamic "mp" #:text #:italic "dolce" ))) + #:line( #:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup { \bold $markp } + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup { \bold $markp } #}) \layout{ - \context { \Score - \override MetronomeMark #'extra-offset = #'(-9 . 0) - \override MetronomeMark #'padding = #'3 - } - \context { \Staff - \override TimeSignature #'style = #'numbered - } - \context { \Voice - \override Glissando #'thickness = #3 - \override Glissando #'gap = #0.1 - } + \context { \Score + \override MetronomeMark #'extra-offset = #'(-9 . 0) + \override MetronomeMark #'padding = #'3 + } + \context { \Staff + \override TimeSignature #'style = #'numbered + } + \context { \Voice + \override Glissando #'thickness = #3 + \override Glissando #'gap = #0.1 + } } \relative c'' { - \tempo 4=50 - a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 - \once \override Score.RehearsalMark #'padding = #2.0 - \tempoMark "Poco piu mosso" - cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 + \tempo 4=50 + a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 + \once \override Score.RehearsalMark #'padding = #2.0 + \tempoMark "Poco piu mosso" + cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 } @end lilypond @@ -458,78 +457,78 @@ globale de police. @example %%% definitions.ly mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line( #:dynamic "mp" #:text #:italic "dolce" ))) + #:line( #:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #@{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup @{ \bold $markp @} + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup @{ \bold $markp @} #@}) #(set-global-staff-size 23) \layout@{ - \context @{ \Score - \override MetronomeMark #'extra-offset = #'(-9 . 0) - \override MetronomeMark #'padding = #'3 - @} - \context @{ \Staff - @} - \context @{ \Voice - \override Glissando #'thickness = #3 - \override Glissando #'gap = #0.1 - @} + \context @{ \Score + \override MetronomeMark #'extra-offset = #'(-9 . 0) + \override MetronomeMark #'padding = #'3 + @} + \context @{ \Staff + @} + \context @{ \Voice + \override Glissando #'thickness = #3 + \override Glissando #'gap = #0.1 + @} @} @end example @lilypond[quote,ragged-right] mpdolce = #(make-dynamic-script (markup #:hspace 1 #:translate (cons 5 0) - #:line( #:dynamic "mp" #:text #:italic "dolce" ))) + #:line( #:dynamic "mp" #:text #:italic "dolce" ))) tempoMark = #(define-music-function (parser location markp) (string?) #{ - \once \override Score . RehearsalMark #'self-alignment-X = #left - \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) - \mark \markup { \bold $markp } + \once \override Score . RehearsalMark #'self-alignment-X = #left + \once \override Score . RehearsalMark #'extra-spacing-width = #'(+inf.0 . -inf.0) + \mark \markup { \bold $markp } #}) #(set-global-staff-size 23) \layout{ - \context { \Score - \override MetronomeMark #'extra-offset = #'(-9 . 0) - \override MetronomeMark #'padding = #'3 - } - \context { \Voice - \override Glissando #'thickness = #3 - \override Glissando #'gap = #0.1 - } + \context { \Score + \override MetronomeMark #'extra-offset = #'(-9 . 0) + \override MetronomeMark #'padding = #'3 + } + \context { \Voice + \override Glissando #'thickness = #3 + \override Glissando #'gap = #0.1 + } } \relative c'' { - \tempo 4=50 - a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 - \once \override Score.RehearsalMark #'padding = #2.0 - \tempoMark "Poco piu mosso" - cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 + \tempo 4=50 + a4.\mpdolce d8 cis4--\glissando a | b4 bes a2 + \once \override Score.RehearsalMark #'padding = #2.0 + \tempoMark "Poco piu mosso" + cis4.\< d8 e4 fis | g8(\! fis)-. e( d)-. cis2 } @end lilypond Il ne nous reste plus qu'à remplacer @code{\include "definitions.ly"} -par @code{\include "web-publish.ly"} dans notre fichier de musique. +par @code{\include "publication-web.ly"} dans notre fichier de musique. Il est possible, bien sûr, de rendre cela encore plus pratique. Nous pourrions créer un fichier @file{definitions.ly} qui ne contiendrait que les définitions de @code{mpdolce} et de @code{tempoMark}, un fichier @file{publication-web.ly} qui ne contiendrait que la section -@code{layout} décrite ci-dessus et un fichier @file{university.ly} qui +@code{layout} décrite ci-dessus et un fichier @file{universite.ly} qui ne contiendrait que les retouches pour produire le résultat que mon -professeur préfère. Le début du fichier @file{music.ly} ressemblerait +professeur préfère. Le début du fichier @file{musique.ly} ressemblerait alors à @example \include "definitions.ly" %%% Décommentez seulement une de ces deux lignes ! -\include "web-publish.ly" -%\include "university.ly" +\include "publication-web.ly" +%\include "universite.ly" @end example Cette approche peut être utile même si vous ne produisez qu'un seul @@ -539,7 +538,7 @@ musique par @code{\include "../global.ly"} qui contient : @example %%% global.ly -\version "2.9.13" +\version "2.11.15" #(ly:set-option 'point-and-click #f) \include "../init/init-defs.ly" \include "../init/init-mise-en-page.ly" @@ -600,12 +599,12 @@ Dans un cas extrême, vous pourriez en arriver à @example \score @{ - << - % \melodie - % \harmonie - % \basse - >> - \layout@{@} + << + % \melodie + % \harmonie + % \basse + >> + \layout@{@} @} @end example @@ -620,8 +619,8 @@ cas, placez en commentaire toute la partie de basse, mais laissez @example basse = \relative c' @{ %@{ - c4 c c c - d d d d + c4 c c c + d d d d %@} @} @end example diff --git a/Documentation/po/GNUmakefile b/Documentation/po/GNUmakefile index 925cb7e5a1..ef93f6aaba 100644 --- a/Documentation/po/GNUmakefile +++ b/Documentation/po/GNUmakefile @@ -6,6 +6,7 @@ include $(depth)/make/stepmake.make doc-localedir=$(outdir) DOMAIN=lilypond-doc +DOC_PO_SOURCES = add_html_footer.py langdefs.py messages: $(MO_FILES) for i in $(CATALOGS); do \ @@ -14,7 +15,9 @@ messages: $(MO_FILES) done po-update: - $(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -o doc.pot --gettext ../$(depth)/Documentation/user/lilypond.tely + $(PYTHON) $(buildscript-dir)/texi-langutils.py -d $(outdir) -o texi.pot --gettext ../$(depth)/Documentation/user/lilypond.tely + xgettext -cjn -L Python -o $(outdir)/buildscripts.pot $(foreach i, $(DOC_PO_SOURCES), $(buildscript-dir)/$(i) ) + msgcat -o $(outdir)/doc.pot $(outdir)/buildscripts.pot $(outdir)/texi.pot msgmerge -U lilypond-doc.pot $(outdir)/doc.pot for i in $(CATALOGS); do \ msgmerge -U $$i.po lilypond-doc.pot; \ diff --git a/Documentation/po/fr.po b/Documentation/po/fr.po index 6ac0581a1a..dc3916e0bf 100644 --- a/Documentation/po/fr.po +++ b/Documentation/po/fr.po @@ -4,13 +4,12 @@ # This file is distributed under the same license as the lilypond package. # # John Mandereau , 2006, 2007. -#. @chapter in ../../../Documentation/user/lilypond-book.itely msgid "" msgstr "" "Project-Id-Version: fr\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-22 20:59+0100\n" -"PO-Revision-Date: 2007-02-05 14:38+0100\n" +"POT-Creation-Date: 2007-02-24 10:14+0100\n" +"PO-Revision-Date: 2007-02-25 13:46+0100\n" "Last-Translator: John Mandereau \n" "Language-Team: Français \n" "MIME-Version: 1.0\n" @@ -18,6 +17,42 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.11.4\n" +#: ../../buildscripts/add_html_footer.py:36 +#, python-format +msgid "This page is for %(package_name)s-%(package_version)s (%(branch_str)s)." +msgstr "Cette page documente %(package_name)s-%(package_version)s (%(branch_str)s)." + +#: ../../buildscripts/add_html_footer.py:39 +#, python-format +msgid "Report errors to %(mail_address)s." +msgstr "Rapporter toute anomalie en français à lilypond-user-fr@gnu.org ou en anglais à %(mail_address)s" + +#: ../../buildscripts/add_html_footer.py:52 +#, python-format +msgid "Other languages: %s." +msgstr "Autres langues : %s." + +#: ../../buildscripts/add_html_footer.py:53 +#, python-format +msgid "About automatic language selection." +msgstr "À propos de la sélection automatique de la langue." + +#: ../../buildscripts/add_html_footer.py:236 +msgid "stable-branch" +msgstr "branche stable" + +#: ../../buildscripts/add_html_footer.py:238 +msgid "development-branch" +msgstr "branche de développement" + +#: ../../buildscripts/langdefs.py:34 +msgid "English" +msgstr "Anglais" + +#: ../../buildscripts/langdefs.py:35 +msgid "French" +msgstr "Français" + #. @node in ../../../Documentation/user/lilypond.tely msgid "Top" msgstr "Sommaire" @@ -54,7 +89,7 @@ msgstr "Commandes prédéfinies" #. @subsubheading in ../../../Documentation/user/macros.itexi msgid "Commonly tweaked properties" -msgstr "Propriétés couramment ajustées" +msgstr "Propriétés couramment modifiées" #. @node in ../../../Documentation/user/preface.itely #. @unnumbered in ../../../Documentation/user/preface.itely @@ -594,7 +629,6 @@ msgstr "Altérations microtonales" #. @node in ../../../Documentation/user/basic-notation.itely #. @subsection in ../../../Documentation/user/basic-notation.itely -#, fuzzy msgid "Note names in other languages" msgstr "Noms de note dans d'autres langues" @@ -631,7 +665,7 @@ msgstr "Durées" #. @node in ../../../Documentation/user/basic-notation.itely #. @subsection in ../../../Documentation/user/basic-notation.itely msgid "Augmentation dots" -msgstr "Points d'addition" +msgstr "Notes pointées" #. @node in ../../../Documentation/user/basic-notation.itely #. @subsection in ../../../Documentation/user/basic-notation.itely @@ -655,9 +689,8 @@ msgstr "Découpage automatique des notes" #. @node in ../../../Documentation/user/basic-notation.itely #. @section in ../../../Documentation/user/basic-notation.itely -#, fuzzy msgid "Polyphony" -msgstr "Polyphonie basique" +msgstr "Polyphonie" #. @node in ../../../Documentation/user/basic-notation.itely #. @subsection in ../../../Documentation/user/basic-notation.itely @@ -776,7 +809,6 @@ msgstr "Arpège" #. @node in ../../../Documentation/user/basic-notation.itely #. @subsection in ../../../Documentation/user/basic-notation.itely -#, fuzzy msgid "Falls and doits" msgstr "Chutes et sauts" @@ -883,7 +915,7 @@ msgstr "Musique vocale" #. @node in ../../../Documentation/user/instrument-notation.itely #. @subsection in ../../../Documentation/user/instrument-notation.itely msgid "Setting simple songs" -msgstr "Écrire des chansons simples¿" +msgstr "Écrire des chants simples" #. @node in ../../../Documentation/user/instrument-notation.itely #. @subsection in ../../../Documentation/user/instrument-notation.itely @@ -952,24 +984,23 @@ msgstr "Plus à propos des strophes" #. @subsubsection in ../../../Documentation/user/instrument-notation.itely msgid "Adding stanza numbers" -msgstr "" +msgstr "Numéroter les strophes" #. @subsubsection in ../../../Documentation/user/instrument-notation.itely msgid "Adding dynamics marks" -msgstr "" +msgstr "Ajouter des nuances" #. @subsubsection in ../../../Documentation/user/instrument-notation.itely -#, fuzzy msgid "Adding singer names" -msgstr "Ajout de titres" +msgstr "Ajouter le nom des chanteurs" #. @subsubsection in ../../../Documentation/user/instrument-notation.itely msgid "Printing stanzas at the end" -msgstr "" +msgstr "Paroles à la fin de la partition" #. @subsubsection in ../../../Documentation/user/instrument-notation.itely msgid "Printing stanzas at the end in multiple columns" -msgstr "" +msgstr "Paroles sur plusieurs colonnes à la fin de la partition" #. @node in ../../../Documentation/user/instrument-notation.itely #. @subsection in ../../../Documentation/user/instrument-notation.itely @@ -1104,7 +1135,7 @@ msgstr "Articulations anciennes" #. @node in ../../../Documentation/user/instrument-notation.itely #. @subsection in ../../../Documentation/user/instrument-notation.itely msgid "Custodes" -msgstr "" +msgstr "Guidons" #. @node in ../../../Documentation/user/instrument-notation.itely #. @subsection in ../../../Documentation/user/instrument-notation.itely @@ -1189,12 +1220,12 @@ msgstr "" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely msgid "Text markup" -msgstr "" +msgstr "Texte mis en forme" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely msgid "Nested scores" -msgstr "" +msgstr "Partitions emboîtées" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely @@ -1259,7 +1290,7 @@ msgstr "" #. @node in ../../../Documentation/user/advanced-notation.itely #. @section in ../../../Documentation/user/advanced-notation.itely msgid "Orchestral music" -msgstr "" +msgstr "Musique orchestrale" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely @@ -1269,7 +1300,7 @@ msgstr "" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely msgid "Hiding staves" -msgstr "" +msgstr "Cacher des portées" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely @@ -1299,7 +1330,7 @@ msgstr "" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely msgid "Time administration" -msgstr "" +msgstr "Gestion du temps" #. @node in ../../../Documentation/user/advanced-notation.itely #. @subsection in ../../../Documentation/user/advanced-notation.itely @@ -1394,12 +1425,12 @@ msgstr "" #. @node in ../../../Documentation/user/changing-defaults.itely #. @subsection in ../../../Documentation/user/changing-defaults.itely msgid "Automatic accidentals" -msgstr "" +msgstr "Altérations accidentelles automatiques" #. @node in ../../../Documentation/user/changing-defaults.itely #. @subsection in ../../../Documentation/user/changing-defaults.itely msgid "Setting automatic beam behavior" -msgstr "" +msgstr "Définir les règles de ligatures automatiques" #. @node in ../../../Documentation/user/changing-defaults.itely #. @section in ../../../Documentation/user/changing-defaults.itely @@ -1419,7 +1450,7 @@ msgstr "" #. @node in ../../../Documentation/user/changing-defaults.itely #. @subsection in ../../../Documentation/user/changing-defaults.itely msgid "Changing context properties on the fly" -msgstr "" +msgstr "Changer les propriétés de contexte à la volée" #. @node in ../../../Documentation/user/changing-defaults.itely #. @subsection in ../../../Documentation/user/changing-defaults.itely @@ -1494,17 +1525,17 @@ msgstr "Objets non musicaux" #. @node in ../../../Documentation/user/non-music.itely #. @section in ../../../Documentation/user/non-music.itely msgid "Input files" -msgstr "" +msgstr "Fichiers d'entrée" #. @node in ../../../Documentation/user/non-music.itely #. @subsection in ../../../Documentation/user/non-music.itely msgid "File structure (introduction)" -msgstr "" +msgstr "Introduction à la structure de fichier" #. @node in ../../../Documentation/user/non-music.itely #. @subsection in ../../../Documentation/user/non-music.itely msgid "File structure" -msgstr "" +msgstr "Structure de fichier" #. @node in ../../../Documentation/user/non-music.itely #. @subsection in ../../../Documentation/user/non-music.itely @@ -1539,7 +1570,7 @@ msgstr "" #. @node in ../../../Documentation/user/non-music.itely #. @subsection in ../../../Documentation/user/non-music.itely msgid "Creating titles" -msgstr "" +msgstr "Créer des titres" #. @node in ../../../Documentation/user/non-music.itely #. @subsection in ../../../Documentation/user/non-music.itely @@ -1574,7 +1605,7 @@ msgstr "" #. @node in ../../../Documentation/user/non-music.itely #. @section in ../../../Documentation/user/non-music.itely msgid "Skipping corrected music" -msgstr "" +msgstr "Ignorer des passages de la partition" #. @node in ../../../Documentation/user/spacing.itely #. @chapter in ../../../Documentation/user/spacing.itely @@ -1864,12 +1895,11 @@ msgstr "" #. @node in ../../../Documentation/user/running.itely msgid "Updating files with convert-ly" -msgstr "" +msgstr "Mettre à jour des fichiers avec convert-ly" #. @section in ../../../Documentation/user/running.itely -#, fuzzy -msgid "Updating with" -msgstr "Mettre à jour des anciens fichiers" +msgid "Updating with @command{convert-ly}" +msgstr "" #. @node in ../../../Documentation/user/running.itely #. @section in ../../../Documentation/user/running.itely @@ -1895,6 +1925,10 @@ msgstr "" msgid "LilyPond-book" msgstr "LilyPond-book" +#. @chapter in ../../../Documentation/user/lilypond-book.itely +msgid "@command{lilypond-book}: Integrating text and music" +msgstr "@command{lilypond-book} : associer de la musique et du texte" + #. @node in ../../../Documentation/user/lilypond-book.itely #. @section in ../../../Documentation/user/lilypond-book.itely msgid "An example of a musicological document" @@ -1905,9 +1939,8 @@ msgid "Integrating LaTeX and music" msgstr "" #. @section in ../../../Documentation/user/lilypond-book.itely -#, fuzzy -msgid "Integrating La" -msgstr "Gravure" +msgid "Integrating La@TeX{} and music" +msgstr "Intégrer de la musique dans @LaTeX{}" #. @node in ../../../Documentation/user/lilypond-book.itely #. @section in ../../../Documentation/user/lilypond-book.itely @@ -1950,8 +1983,7 @@ msgid "Invoking lilypond-book" msgstr "" #. @section in ../../../Documentation/user/lilypond-book.itely -#. @section in ../../../Documentation/user/converters.itely -msgid "Invoking" +msgid "Invoking @command{lilypond-book}" msgstr "" #. @node in ../../../Documentation/user/lilypond-book.itely @@ -1983,18 +2015,34 @@ msgstr "Convertir à partir d'autres formats" msgid "Invoking midi2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @command{midi2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking etf2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @command{etf2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking musicxml2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @code{musicxml2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking abc2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @code{abc2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely #. @section in ../../../Documentation/user/converters.itely msgid "Generating LilyPond files" @@ -2062,9 +2110,8 @@ msgstr "" #. @node in ../../../Documentation/user/templates.itely #. @appendix in ../../../Documentation/user/templates.itely -#, fuzzy msgid "Templates" -msgstr "Nolets" +msgstr "Modèles" #. @node in ../../../Documentation/user/templates.itely #. @appendixsec in ../../../Documentation/user/templates.itely @@ -2195,5 +2242,3 @@ msgstr "Annexe" msgid "Footnotes" msgstr "Notes de bas de page" -#~ msgid "@command{lilypond-book}: Integrating text and music" -#~ msgstr "@command{lilypond-book} : associer de la musique et du texte" diff --git a/Documentation/po/lilypond-doc.pot b/Documentation/po/lilypond-doc.pot index f750723636..52ce97037b 100644 --- a/Documentation/po/lilypond-doc.pot +++ b/Documentation/po/lilypond-doc.pot @@ -3,13 +3,12 @@ # This file is distributed under the same license as the lilypond package. # FIRST AUTHOR , YEAR. # -#. @chapter in ../../../Documentation/user/lilypond-book.itely #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-02-22 20:59+0100\n" +"POT-Creation-Date: 2007-02-24 10:14+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -17,6 +16,42 @@ msgstr "" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" +#: ../../buildscripts/add_html_footer.py:36 +#, python-format +msgid "This page is for %(package_name)s-%(package_version)s (%(branch_str)s)." +msgstr "" + +#: ../../buildscripts/add_html_footer.py:39 +#, python-format +msgid "Report errors to %(mail_address)s." +msgstr "" + +#: ../../buildscripts/add_html_footer.py:52 +#, python-format +msgid "Other languages: %s." +msgstr "" + +#: ../../buildscripts/add_html_footer.py:53 +#, python-format +msgid "About automatic language selection." +msgstr "" + +#: ../../buildscripts/add_html_footer.py:236 +msgid "stable-branch" +msgstr "" + +#: ../../buildscripts/add_html_footer.py:238 +msgid "development-branch" +msgstr "" + +#: ../../buildscripts/langdefs.py:34 +msgid "English" +msgstr "" + +#: ../../buildscripts/langdefs.py:35 +msgid "French" +msgstr "" + #. @node in ../../../Documentation/user/lilypond.tely msgid "Top" msgstr "" @@ -1862,7 +1897,7 @@ msgid "Updating files with convert-ly" msgstr "" #. @section in ../../../Documentation/user/running.itely -msgid "Updating with" +msgid "Updating with @command{convert-ly}" msgstr "" #. @node in ../../../Documentation/user/running.itely @@ -1889,6 +1924,10 @@ msgstr "" msgid "LilyPond-book" msgstr "" +#. @chapter in ../../../Documentation/user/lilypond-book.itely +msgid "@command{lilypond-book}: Integrating text and music" +msgstr "" + #. @node in ../../../Documentation/user/lilypond-book.itely #. @section in ../../../Documentation/user/lilypond-book.itely msgid "An example of a musicological document" @@ -1899,7 +1938,7 @@ msgid "Integrating LaTeX and music" msgstr "" #. @section in ../../../Documentation/user/lilypond-book.itely -msgid "Integrating La" +msgid "Integrating La@TeX{} and music" msgstr "" #. @node in ../../../Documentation/user/lilypond-book.itely @@ -1943,8 +1982,7 @@ msgid "Invoking lilypond-book" msgstr "" #. @section in ../../../Documentation/user/lilypond-book.itely -#. @section in ../../../Documentation/user/converters.itely -msgid "Invoking" +msgid "Invoking @command{lilypond-book}" msgstr "" #. @node in ../../../Documentation/user/lilypond-book.itely @@ -1976,18 +2014,34 @@ msgstr "" msgid "Invoking midi2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @command{midi2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking etf2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @command{etf2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking musicxml2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @code{musicxml2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely msgid "Invoking abc2ly" msgstr "" +#. @section in ../../../Documentation/user/converters.itely +msgid "Invoking @code{abc2ly}" +msgstr "" + #. @node in ../../../Documentation/user/converters.itely #. @section in ../../../Documentation/user/converters.itely msgid "Generating LilyPond files" diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index 51911fe741..a5b33e360d 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -519,7 +519,7 @@ effect. In addition, vertical placement is performed after creating the text markup object. If you wish to move an entire piece of markup, -you need to use the #'padding property or create an "anchor" point +you need to use the #'padding property or create an @q{anchor} point inside the markup (generally with @code{\hspace #0}). @lilypond[quote,verbatim,fragment,relative=1] diff --git a/Documentation/user/converters.itely b/Documentation/user/converters.itely index 35cf314b20..6178d9a52e 100644 --- a/Documentation/user/converters.itely +++ b/Documentation/user/converters.itely @@ -96,7 +96,7 @@ Show summary of usage. @item -k, --key=@var{acc}[:@var{minor}] Set default key. @math{@var{acc} > 0} sets number of sharps; @math{@var{acc} < 0} sets number of flats. A minor key is indicated by -":1". +@samp{:1}. @item -o, --output=@var{file} Write output to @var{file}. diff --git a/Documentation/user/lilypond-book.itely b/Documentation/user/lilypond-book.itely index 543a4cdd42..3beacf52db 100644 --- a/Documentation/user/lilypond-book.itely +++ b/Documentation/user/lilypond-book.itely @@ -342,8 +342,8 @@ is trivial. @end example If a greater number of systems is requested, a TeX conditional must be -used before the @code{\endinput}. In this example, replace "2" by -the numer of systems you want in the output, +used before the @code{\endinput}. In this example, replace @q{2} by +the number of systems you want in the output, @example \def\betweenLilyPondSystem#1@{ diff --git a/Documentation/user/non-music.itely b/Documentation/user/non-music.itely index 790ecaa928..cf6f1a007c 100644 --- a/Documentation/user/non-music.itely +++ b/Documentation/user/non-music.itely @@ -405,7 +405,7 @@ option when invoking @code{lilypond --include=DIR} which adds DIR to the search path. The @code{\include} statement can use full path information, but with the Unix -convention @code{"/"} rather than the DOS/Windows @code{"\"}. For example, +convention @samp{/} rather than the DOS/Windows @samp{\}. For example, if @file{stuff.ly} is located one directory higher than the current working directory, use diff --git a/Documentation/user/programming-interface.itely b/Documentation/user/programming-interface.itely index 431e029919..7b59a3e8c5 100644 --- a/Documentation/user/programming-interface.itely +++ b/Documentation/user/programming-interface.itely @@ -785,8 +785,8 @@ add the marcato to its elements list property. (set! place new-value) @end example -Here, what we want to set (the "place") is the "elements" property of -@code{result-event-chord} expression +Here, what we want to set (the @q{place}) is the @q{elements} property of +@code{result-event-chord} expression. @example (ly:music-property result-event-chord 'elements) diff --git a/Documentation/user/spacing.itely b/Documentation/user/spacing.itely index 4fe8a8f98e..fd65dfe0e6 100644 --- a/Documentation/user/spacing.itely +++ b/Documentation/user/spacing.itely @@ -1127,7 +1127,7 @@ stretched according to the data in the page layout file. @end enumerate The @code{ragged-bottom} property adds space between systems, while -the two-pass technique adds space between staffs inside a system. +the two-pass technique adds space between staves inside a system. To allow this behaviour, a @code{tweak-key} variable has to be set in each score @code{\layout} block, and the tweaks included in each score diff --git a/Documentation/user/templates.itely b/Documentation/user/templates.itely index bcdfadcd16..448c211c3f 100644 --- a/Documentation/user/templates.itely +++ b/Documentation/user/templates.itely @@ -297,7 +297,7 @@ text = \lyricmode { @appendixsubsec Piano centered dynamics Many piano scores have the dynamics centered between the two -staffs. This requires a bit of tweaking to implement, but +staves. This requires a bit of tweaking to implement, but since the template is right here, you don't have to do the tweaking yourself. diff --git a/Documentation/user/tutorial.itely b/Documentation/user/tutorial.itely index b9dbf6853b..e152f21a94 100644 --- a/Documentation/user/tutorial.itely +++ b/Documentation/user/tutorial.itely @@ -134,8 +134,8 @@ The resulting PDF file will be displayed on your screen. Be warned that the first time you ever run LilyPond, it will take a minute or two because all of the system fonts have to be analyzed first. -For future use of LilyPond, you should begin by selecting "New" -or "Open". You must save your file before typesetting it. If any errors +For future use of LilyPond, you should begin by selecting @q{New} +or "@q{Open}. You must save your file before typesetting it. If any errors occur in processing, please see the log window. @subsubheading Windows diff --git a/Documentation/user/tweaks.itely b/Documentation/user/tweaks.itely index 0d48a53ee7..6d24d3a422 100644 --- a/Documentation/user/tweaks.itely +++ b/Documentation/user/tweaks.itely @@ -356,7 +356,7 @@ to understand these files. @file{@var{installdir}/LilyPond.app/Contents/Resources/share/lilypond/current/}. To access this, either @code{cd} into this directory from the Terminal, or control-click on the LilyPond application and select -"Show Package Contents". +@q{Show Package Contents}. @item Windows: @file{@var{installdir}/LilyPond/usr/share/lilypond/current/} diff --git a/Documentation/user/working.itely b/Documentation/user/working.itely index 9a3809d5c0..076bb6de00 100644 --- a/Documentation/user/working.itely +++ b/Documentation/user/working.itely @@ -382,8 +382,8 @@ tempoMark = #(define-music-function (parser location markp) (string?) That looks better, but let's make a few changes. The glissando is hard to see, so let's make it thicker and closer to the noteheads. Let's put the metronome marking above the clef, instead of over the first -note. And finally, my composition professor hates "C" time signatures, -so we'd better make that "4/4" instead. +note. And finally, my composition professor hates @q{C} time signatures, +so we'd better make that @q{4/4} instead. Don't change @file{music.ly}, though. Replace our @file{definitions.ly} with this: @@ -448,7 +448,7 @@ tempoMark = #(define-music-function (parser location markp) (string?) @end lilypond That looks nicer! But now suppose that I want to publish this -piece. My composition professor doesn't like "C" time +piece. My composition professor doesn't like @q{C} time signatures, but I'm somewhat fond of them. Let's copy the current @file{definitions.ly} to @file{web-publish.ly} and modify that. Since this music is aimed at producing a pdf which diff --git a/THANKS b/THANKS index 1a3a48321b..27554dd5c2 100644 --- a/THANKS +++ b/THANKS @@ -49,6 +49,7 @@ Kazuhiro Suzuki Laura Conrad Luc Wehli Maarten Hijzelendoorn +Marc Lanoiselée Matthijs Frankeno Martijn Vromans Marnen Laibow-Koser diff --git a/buildscripts/add_html_footer.py b/buildscripts/add_html_footer.py index 3e35952c42..d70ddcee6e 100644 --- a/buildscripts/add_html_footer.py +++ b/buildscripts/add_html_footer.py @@ -25,40 +25,43 @@ non_copied_pages = ['Documentation/user/out-www/lilypond-big-page', 'Documentation/out-www/DEDICATION', 'Documentation/topdocs/out-www/AUTHORS'] +def _ (s): + return s + header = r""" """ -footer = r''' +footer = '''

-This page is for %(package_name)s-%(package_version)s (%(branch_str)s).
+%(footer_name_version)s +

-Report errors to %(mail_address)s.
+%(footer_report_errors)s

''' +footer_name_version = _ ('This page is for %(package_name)s-%(package_version)s (%(branch_str)s).') +footer_report_errors = _ ('Report errors to %(mail_address)s.') mail_address = 'http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs' header_tag = '' footer_tag = '' -def _ (s): - return s - -language_available = _ ("Other languages: %s.") % "%(language_menu)s" -browser_language = _ ("Using automatic language selection.") \ - % "/web/about/browser-language" +lang_available = _ ("Other languages: %s.") +browser_lang = _ ('About automatic language selection.') +browser_language_url = "/web/about/browser-language" -LANGUAGES_TEMPLATE = '''\ +LANGUAGES_TEMPLATE = '''

%(language_available)s
%(browser_language)s

-''' % vars () +''' html_re = re.compile ('(.*?)(?:[.]([^/.]*))?[.]html$') @@ -87,7 +90,7 @@ def add_header (s): s = re.sub ('(?i)', body, s) if re.search ('(?i)]*>', body + header, s, 1) - elif re.search ('(?i)', '' + header, s, 1) else: s = header + s @@ -114,6 +117,7 @@ def add_title (s): return s info_nav_bar = re.compile (r'
\s*

\s*(.+?)


\s*
', re.M | re.S) +info_footnote_hr = re.compile (r'
\s*()?\s*', re.M | re.I) def add_footer (s): """add footer @@ -121,7 +125,11 @@ def add_footer (s): also add navigation bar to bottom of Info HTML pages""" m = info_nav_bar.search (s) if m: - custom_footer = '

\n
\n

' + m.group (1) + '

\n' + footer + # avoid duplicate
in case there are footnotes at the end of the Info HTML page + if info_footnote_hr.search (s): + custom_footer = '
\n

' + m.group (1) + '

\n' + footer + else: + custom_footer = '

\n
\n

' + m.group (1) + '

\n' + footer else: custom_footer = footer if re.search ('(?i)
' and '' tags +def add_menu (page_flavors, prefix, available, target, translation): for k in page_flavors.keys(): - if re.search ('(?i)', languages + '', page_flavors[k], 1) - elif re.search ('(?i)', languages + '', page_flavors[k], 1) + language_menu = '' + languages = '' + if page_flavors[k][0] != '': + t = translation[page_flavors[k][0]] else: - page_flavors[k] += languages + t = _ + for lang in available: + lang_file = lang.file_name (os.path.basename (prefix), '.html') + if language_menu != '': + language_menu += ', ' + language_menu += '%s' % (lang_file, t (lang.name)) + if target == 'offline': + browser_language = '' + elif target == 'online': + browser_language = t (browser_lang) % browser_language_url + if language_menu: + language_available = t (lang_available) % language_menu + languages = LANGUAGES_TEMPLATE % vars () + # put language menu before '' and '' tags + if re.search ('(?i)', languages + '', page_flavors[k][1], 1) + elif re.search ('(?i)', languages + '', page_flavors[k][1], 1) + else: + page_flavors[k][1] += languages return page_flavors -def add_html_footer (package_name = '', +def add_html_footer (translation, + package_name = '', package_version = '', target = 'offline', name_filter = lambda s: s): """Add header, footer to a number of HTML files Arguments: + translation gettext translations dictionary, with language codes as keys package_name=NAME set package_name to NAME package_version=VERSION set package version to VERSION targets=offline|online set page processing depending on the target @@ -218,9 +235,9 @@ def add_html_footer (package_name = '', mail_address_url= 'mailto:' + mail_address versiontup = package_version.split ('.') - branch_str = 'stable-branch' + branch_str = _('stable-branch') if int ( versiontup[1]) % 2: - branch_str = 'development-branch' + branch_str = _('development-branch') for prefix, ext_list in pages_dict.items (): for lang_ext in ext_list: @@ -237,23 +254,27 @@ def add_html_footer (package_name = '', ### add footer if re.search (footer_tag, s) == None: s = add_footer (s) + available, missing = find_translations (prefix, lang_ext) page_flavors = process_links (s, prefix, lang_ext, file_name, missing, target) # Add menu after stripping: must not have autoselection for language menu. - page_flavors = add_menu (page_flavors, prefix, available) - # urg, this stuff is oudated and seems useless, let's disable it + page_flavors = add_menu (page_flavors, prefix, available, target, translation) + # urg, this stuff is outdated and seems useless, let's disable it #else: # for e in [l.webext for l in langdefs.LANGUAGES]: # if not e in pages_dict[prefix]: # page_flavors[langdefs.lang_file_name (prefix, e, '.html')] = s - - subst = globals () - subst.update (locals()) + subst = dict ([i for i in globals().items() if type (i[1]) is str]) + subst.update (dict ([i for i in locals().items() if type (i[1]) is str])) for k in page_flavors.keys(): - page_flavors[k] = page_flavors[k] % subst - + if page_flavors[k][0] in translation.keys(): + for name in subst.keys(): + subst[name] = translation[page_flavors[k][0]] (subst[name]) + subst['footer_name_version'] = subst['footer_name_version'] % subst + subst['footer_report_errors'] = subst['footer_report_errors'] % subst + page_flavors[k][1] = page_flavors[k][1] % subst out_f = open (name_filter (k), 'w') - out_f.write (page_flavors[k]) + out_f.write (page_flavors[k][1]) out_f.close() # if the page is translated, a .en.html symlink is necessary for content negotiation if target == 'online' and ext_list != ['']: diff --git a/buildscripts/langdefs.py b/buildscripts/langdefs.py index 993398e002..47f53c9b3c 100644 --- a/buildscripts/langdefs.py +++ b/buildscripts/langdefs.py @@ -4,6 +4,9 @@ Documentation i18n module """ +def _ (s): + return s + def lang_file_name (p, langext, ext): if langext != '': return p + '.' + langext + ext @@ -28,8 +31,8 @@ class LanguageDef: # here. For each 'Documentation/ab' directory containing docs # translated in 'ab', there should be an entry in LANGUAGES. -site = LanguageDef ('en', 'English', webext='') -fr = LanguageDef ('fr', 'French', double_punct_char_sep=' ') +site = LanguageDef ('en', _('English'), webext='') +fr = LanguageDef ('fr', _('French'), double_punct_char_sep=' ') #nl = LanguageDef ('nl', 'Nederlands') # Outdated or broken translations may be disabled @@ -41,7 +44,6 @@ LANGUAGES = (site, fr) if __name__ == '__main__': print ' '.join ([l.code for l in LANGUAGES if l.enabled and l.code != 'en']) else: - import gettext LANGDICT = {} for l in LANGUAGES: LANGDICT[l.code] = l diff --git a/buildscripts/texi-langutils.py b/buildscripts/texi-langutils.py index 9f914008f7..8fc24187de 100644 --- a/buildscripts/texi-langutils.py +++ b/buildscripts/texi-langutils.py @@ -7,9 +7,17 @@ import sys import re import getopt import os -import string -optlist, texi_files = getopt.getopt(sys.argv[1:],'no:d:b:i:',['skeleton', 'gettext']) +def read_pipe (command): + print command + pipe = os.popen (command) + output = pipe.read () + if pipe.close (): + print "pipe failed: %(command)s" % locals () + return output + + +optlist, texi_files = getopt.getopt(sys.argv[1:],'no:d:b:i:l:',['skeleton', 'gettext']) process_includes = not ('-n', '') in optlist # -n don't process @include's in texinfo files make_gettext = ('--gettext', '') in optlist # --gettext generate a node list from a Texinfo source @@ -17,7 +25,24 @@ make_skeleton = ('--skeleton', '') in optlist # --skeleton extract the node tr output_file = 'doc.pot' node_blurb = '' -intro_blurb = '' +doclang = '' +topfile = os.path.basename (texi_files[0]) +head_committish = read_pipe ('git-rev-parse HEAD') +intro_blurb = '''@c -*- coding: utf-8; mode: texinfo%(doclang)s -*- +@c This file is part of %(topfile)s +@ignore + Translation of GIT committish: %(head_committish)s + + When revising a translation, copy the HEAD committish of the + version that you are working on. See TRANSLATION for details. +@end ignore +''' + +end_blurb = """ +-- SKELETON FILE -- +When you actually translate this file, please remove these lines as +well as all `UNTRANSLATED NODE: IGNORE ME' lines. +""" for x in optlist: if x[0] == '-o': # -o NAME set PO output file name to NAME @@ -28,6 +53,12 @@ for x in optlist: node_blurb = x[1] elif x[0] == '-i': # -i BLURB set blurb written at beginning of each file to BLURB intro_blurb = x[1] + elif x[0] == '-l': # -l ISOLANG set documentlanguage to ISOLANG + doclang = '; documentlanguage: ' + x[1] + + +intro_blurb = intro_blurb % vars() + def process_texi (texifilename, i_blurb, n_blurb, write_skeleton, output_file=None): try: @@ -40,7 +71,7 @@ def process_texi (texifilename, i_blurb, n_blurb, write_skeleton, output_file=No g.write (i_blurb) tutu = re.findall (r"""^(\*) +([^: ]+)::[^ - ]*?$|^@(include|menu|end menu|node|(?:unnumbered|appendix)(?:(?:sub){0,2}sec)?|top|chapter|(?:sub){0,2}section|(?:major|chap|(?:sub){0,2})heading) *([^@ + ]*?$|^@(include|menu|end menu|node|(?:unnumbered|appendix)(?:(?:sub){0,2}sec)?|top|chapter|(?:sub){0,2}section|(?:major|chap|(?:sub){0,2})heading) *([^ ]*)[^ ]*?$|@(rglos){(.+?)}""", texifile, re.M) node_trigger = False @@ -58,12 +89,14 @@ def process_texi (texifilename, i_blurb, n_blurb, write_skeleton, output_file=No if output_file: output_file.write ('_("' + item[3].strip () + '") # @' + item[2] + \ ' in ' + texifilename + '\n') - node_trigger = True + if item[2] == 'node': + node_trigger = True elif item[2] == 'include': includes.append(item[3]) + g.write (end_blurb) g.close () elif output_file: - toto = re.findall (r"""^@(include|node|(?:unnumbered|appendix)(?:(?:sub){0,2}sec)?|top|chapter|(?:sub){0,2}section|(?:major|chap|(?:sub){0,2})heading) *([^@ + toto = re.findall (r"""^@(include|node|(?:unnumbered|appendix)(?:(?:sub){0,2}sec)?|top|chapter|(?:sub){0,2}section|(?:major|chap|(?:sub){0,2})heading) *([^ ]*)[^ ]*?$|@(rglos){(.+?)}""", texifile, re.M) for item in toto: diff --git a/buildscripts/texi-skeleton-update.py b/buildscripts/texi-skeleton-update.py new file mode 100644 index 0000000000..399b22effc --- /dev/null +++ b/buildscripts/texi-skeleton-update.py @@ -0,0 +1,25 @@ +#!@PYTHON@ +# texi-skeleton-update.py + +import sys +import glob +import os +import shutil + +sys.stderr.write ('texi-skeleton-update.py\n') + +orig_skeletons = set ([os.path.basename (f) for f in glob.glob (sys.argv[1] + '/*.itely')]) +new_skeletons = set ([os.path.basename (f) for f in glob.glob (sys.argv[2] + '/*.itely')]) + +for f in new_skeletons: + if f in orig_skeletons: + g = open (os.path.join (sys.argv[1], f), 'r').read () + if '-- SKELETON FILE --' in g: + sys.stderr.write ("Updating %s...\n" % f) + shutil.copy (os.path.join (sys.argv[2], f), sys.argv[1]) + else: + sys.stderr.write ("Copying new file %s...\n" % f) + shutil.copy (os.path.join (sys.argv[2], f), sys.argv[1]) + +for f in orig_skeletons.difference (new_skeletons): + sys.stderr.write ("Warning: outdated skeleton file %s\n" % f) diff --git a/buildscripts/www_post.py b/buildscripts/www_post.py index 09ae7b80fb..cc38c392be 100644 --- a/buildscripts/www_post.py +++ b/buildscripts/www_post.py @@ -9,6 +9,7 @@ import sys import os import re +import gettext package_name, package_version, buildscript_dir, outdir, targets = sys.argv[1:] targets = targets.split (' ') @@ -78,10 +79,21 @@ if 'online' in targets: f.write ('#.htaccess\nDirectoryIndex index\n') f.close () +# load gettext messages catalogs +translation = {} +localedir = os.path.join (buildscript_dir, '../Documentation/po', outdir) +for l in langdefs.LANGUAGES: + if l.enabled and l.code != 'en': + try: + translation[l.code] = gettext.translation('lilypond-doc', localedir, [l.code]).gettext + except: + translation[l.code] = lambda s: s + add_html_footer.build_pages_dict (html_files) for t in targets: sys.stderr.write ("Processing HTML pages for %s target...\n" % t) add_html_footer.add_html_footer ( + translation = translation, package_name = package_name, package_version = package_version, target = t, diff --git a/input/regression/cluster-single-note.ly b/input/regression/cluster-single-note.ly new file mode 100644 index 0000000000..5b66a79eed --- /dev/null +++ b/input/regression/cluster-single-note.ly @@ -0,0 +1,8 @@ +\header +{ + texidoc = "don't crash on single chord clusters." +} + + +\version "2.11.19" +\relative c' { \makeClusters } diff --git a/input/regression/spacing-multi-tuplet.ly b/input/regression/spacing-multi-tuplet.ly index c1af953235..fb2e46f397 100644 --- a/input/regression/spacing-multi-tuplet.ly +++ b/input/regression/spacing-multi-tuplet.ly @@ -1,12 +1,11 @@ -\version "2.10.0" \header{ +\version "2.10.0" + \header{ - texidoc = "Concurrent tuplets should be equidistant on all staffs. -Such equidistant spacing is it at odds with elegant engraver spacing; + texidoc = "Concurrent tuplets should be equidistant on all staves. +Such equidistant spacing is at odds with elegant engraver spacing; hence it must be switched on explicitly with the -@code{uniform-stretching} property of @code{SpacingSpanner}. -" - +@code{uniform-stretching} property of @code{SpacingSpanner}." } diff --git a/input/regression/system-separator.ly b/input/regression/system-separator.ly index 865ff4fc48..7667b23773 100644 --- a/input/regression/system-separator.ly +++ b/input/regression/system-separator.ly @@ -2,9 +2,9 @@ \header { - texidoc = "System separators maybe defined as markups in the -@code{systemSeparator} field of the paper block. They are centered -between the boundary staffs of each system. " + texidoc = "System separators may be defined as markups in the +@code{systemSeparator} field of the paper block. They are centered +between the boundary staves of each system." } diff --git a/input/test/staff-bracket.ly b/input/test/staff-bracket.ly index 52aa67496d..217f952530 100644 --- a/input/test/staff-bracket.ly +++ b/input/test/staff-bracket.ly @@ -1,12 +1,11 @@ \version "2.10.0" -\header{ texidoc="@cindex Nested Staff Groups -Staffs can be nested in various combinations. Here, @code{StaffGroup} +\header{ + texidoc="@cindex Nested Staff Groups +Staves can be nested in various combinations. Here, @code{StaffGroup} and @code{ChoirStaff} produce similar straight brackets, whereas -@code{GrandStaff} produces curly brackets. In @code{InnerStaffGroup} -and @code{InnerChoirStaff}, the brackets are shifted leftwards. - -" +@code{GrandStaff} produces curly brackets. In @code{InnerStaffGroup} +and @code{InnerChoirStaff}, the brackets are shifted leftwards." } \score { diff --git a/input/test/vertical-extent.ly b/input/test/vertical-extent.ly index 28839e5fce..b46f3ac123 100644 --- a/input/test/vertical-extent.ly +++ b/input/test/vertical-extent.ly @@ -1,7 +1,7 @@ \version "2.10.0" % TODO: huh? what's this file about? -gp -% This file shows that Staffs can get a very deep or high; there is a lot -% of room between the staffs. +% This file shows that Staff grobs can get very deep or high; there is a lot +% of room between the staves. \header { texidoc = " Vertical extents may increased by setting @code{\override VerticalAxisGroup #'minimum-Y-extent}, diff --git a/lily/cluster-engraver.cc b/lily/cluster-engraver.cc index e5ed481f6a..898846e2d8 100644 --- a/lily/cluster-engraver.cc +++ b/lily/cluster-engraver.cc @@ -55,7 +55,17 @@ Cluster_spanner_engraver::finalize () void Cluster_spanner_engraver::typeset_grobs () { - finished_spanner_ = 0; + if (finished_spanner_) + { + if (!finished_spanner_->get_bound (RIGHT)) + { + finished_spanner_->set_bound (RIGHT, + finished_spanner_->get_bound (LEFT)); + + } + + finished_spanner_ = 0; + } beacon_ = 0; } diff --git a/lily/staff-symbol.cc b/lily/staff-symbol.cc index d7102ac15b..a6ab40d909 100644 --- a/lily/staff-symbol.cc +++ b/lily/staff-symbol.cc @@ -29,7 +29,7 @@ Staff_symbol::print (SCM smob) Interval span_points (0, 0); /* - For raggedright without ragged staffs, simply set width to the linewidth. + For raggedright without ragged staves, simply set width to the linewidth. (ok -- lousy UI, since width is in staff spaces) diff --git a/lily/vertical-align-engraver.cc b/lily/vertical-align-engraver.cc index 64e7333f13..fe214ac48d 100644 --- a/lily/vertical-align-engraver.cc +++ b/lily/vertical-align-engraver.cc @@ -37,7 +37,7 @@ protected: ADD_ACKNOWLEDGER (Vertical_align_engraver, axis_group); ADD_TRANSLATOR (Vertical_align_engraver, - "Catch groups (staffs, lyrics lines, etc.) and stack " + "Catch groups (staves, lyrics lines, etc.) and stack " "them vertically.", /* create */ "VerticalAlignment", /* read */ diff --git a/lily/volta-engraver.cc b/lily/volta-engraver.cc index d7611535a7..e9f845503c 100644 --- a/lily/volta-engraver.cc +++ b/lily/volta-engraver.cc @@ -92,7 +92,7 @@ Volta_engraver::staff_eligible () volta engraver in score context or somesuch. */ if (!scm_is_pair (staffs)) { - programming_error ("volta engraver can't find staffs"); + programming_error ("volta engraver can't find staves"); return false; } else if (scm_car (scm_last_pair (staffs)) != staff_) diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly index a69c7ad16f..345e48755e 100644 --- a/ly/engraver-init.ly +++ b/ly/engraver-init.ly @@ -6,7 +6,7 @@ \accepts "Score" \defaultchild "Score" - \description "Hard coded entry point for LilyPond. Cannot be tuned." + \description "Hard coded entry point for LilyPond. Cannot be tuned." \grobdescriptions #all-grob-descriptions } @@ -166,10 +166,8 @@ contained staves are not connected vertically." \accepts "CueVoice" \defaultchild "Voice" - \description " - A context like @code{Staff} but for printing rhythms. Pitches are - ignored; the notes are printed on one line. -" + \description "A context like @code{Staff} but for printing rhythms. +Pitches are ignored; the notes are printed on one line." } @@ -177,13 +175,12 @@ contained staves are not connected vertically." \type "Engraver_group" \name "Voice" - \description " - Corresponds to a voice on a staff. This context handles the - conversion of dynamic signs, stems, beams, super- and subscripts, - slurs, ties, and rests. + \description "Corresponds to a voice on a staff. This context +handles the conversion of dynamic signs, stems, beams, super- and +subscripts, slurs, ties, and rests. - You have to instantiate this explicitly if you want to have - multiple voices on the same staff." +You have to instantiate this explicitly if you want to have +multiple voices on the same staff." localKeySignature = #'() \consists "Font_size_engraver" @@ -285,9 +282,9 @@ contained staves are not connected vertically." \name GrandStaff localKeySignature = #'() - \description " A group of staffs, with a brace on the left - side, grouping the staves together. The bar lines of the - contained staves are connected vertically. " + \description "A group of staves, with a brace on the left +side, grouping the staves together. The bar lines of the +contained staves are connected vertically." \consists "Span_bar_engraver" \consists "Span_arpeggio_engraver" @@ -303,9 +300,9 @@ contained staves are not connected vertically." \name "PianoStaff" \alias "GrandStaff" - \description - "Just like @code{GrandStaff} but with a forced distance between - the staves, so cross staff beaming and slurring can be used." + \description "Just like @code{GrandStaff} but with a forced +distance between the staves, so cross staff beaming and slurring +can be used." \override VerticalAxisGroup #'minimum-Y-extent = #'(-4 . 4) \consists "Instrument_name_engraver" @@ -340,12 +337,10 @@ contained staves are not connected vertically." \InnerStaffGroup \name StaffGroup - \description - - "Groups staffs while adding a bracket on the left side, grouping -the staves together. The bar lines of the contained staves are -connected vertically. StaffGroup only consists of a collection of -staffs, with a bracket in front and spanning bar lines. " + \description "Groups staves while adding a bracket on the left +side, grouping the staves together. The bar lines of the contained +staves are connected vertically. @code{StaffGroup} only consists of +a collection of staves, with a bracket in front and spanning bar lines." \accepts "InnerChoirStaff" \accepts "ChoirStaff" @@ -358,8 +353,8 @@ staffs, with a bracket in front and spanning bar lines. " \type "Engraver_group" \override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 2.0) - \description " Corresponds to a voice with lyrics. Handles the -printing of a single line of lyrics. " + \description "Corresponds to a voice with lyrics. Handles the +printing of a single line of lyrics." \name "Lyrics" instrumentName = #'() @@ -448,16 +443,15 @@ AncientRemoveEmptyStaffContext = \context { \name "Score" \description "This is the top level notation context. No - other context can contain a @code{Score} context. This context - handles the administration of time signatures. It also makes sure - that items such as clefs, time signatures, and key-signatures are - aligned across staves. - - You cannot explicitly instantiate a Score context (since it is - not contained in any other context). It is instantiated - automatically when an output definition (a @code{\score} or - @code{\layout} block) is processed." +other context can contain a @code{Score} context. This context +handles the administration of time signatures. It also makes sure +that items such as clefs, time signatures, and key-signatures are +aligned across staves. +You cannot explicitly instantiate a @code{Score} context (since it +is not contained in any other context). It is instantiated +automatically when an output definition (a @code{\score} or +@code{\layout} block) is processed." \consists "Paper_column_engraver" \consists "Vertically_spaced_contexts_engraver" @@ -656,7 +650,8 @@ AncientRemoveEmptyStaffContext = \context { \alias "Staff" \alias "Voice" \consists "Swallow_engraver" - \description "Silently discards all musical information given to this context. " + \description "Silently discards all musical information given to this +context." } \context { @@ -670,7 +665,7 @@ AncientRemoveEmptyStaffContext = \context { \remove "Fingering_engraver" \remove "New_fingering_engraver" - \description "Context for drawing notes in a Tab staff. " + \description "Context for drawing notes in a Tab staff." %% TabStaff increase the staff-space, which in turn %% increases beam thickness and spacing; beams are @@ -731,7 +726,9 @@ AncientRemoveEmptyStaffContext = \context { \Voice \name "VaticanaVoice" \alias "Voice" - \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana." + \description "Same as @code{Voice} context, except that it is +accommodated for typesetting Gregorian Chant in the notational style +of Editio Vaticana." \remove "Slur_engraver" \remove "Stem_engraver" @@ -770,7 +767,9 @@ AncientRemoveEmptyStaffContext = \context { \accepts "VaticanaVoice" \defaultchild "VaticanaVoice" - \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting Gregorian Chant in the notational style of Editio Vaticana." + \description "Same as @code{Staff} context, except that it is +accommodated for typesetting Gregorian Chant in the notational style +of Editio Vaticana." \remove "Time_signature_engraver" \consists "Custos_engraver" @@ -851,7 +850,8 @@ AncientRemoveEmptyStaffContext = \context { \Voice \name "MensuralVoice" \alias "Voice" - \description "Same as @code{Voice} context, except that it is accommodated for tyepsetting a piece in mensural style." + \description "Same as @code{Voice} context, except that it is +accommodated for typesetting a piece in mensural style." \remove "Slur_engraver" \remove "Ligature_bracket_engraver" @@ -871,7 +871,8 @@ AncientRemoveEmptyStaffContext = \context { \denies "Voice" \defaultchild "MensuralVoice" \accepts "MensuralVoice" - \description "Same as @code{Staff} context, except that it is accommodated for tyepsetting a piece in mensural style." + \description "Same as @code{Staff} context, except that it is +accommodated for typesetting a piece in mensural style." \consists "Custos_engraver" diff --git a/po/lilypond.pot b/po/lilypond.pot index 8caa983b72..9bd663a33e 100644 --- a/po/lilypond.pot +++ b/po/lilypond.pot @@ -1,19 +1,18 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. +# Translation of LilyPond. +# Copyright (C) 2007 Han-Wen Nienhuys, Jan Nieuwenhuizen +# This file is distributed under the same license as the lilypond package. # FIRST AUTHOR , YEAR. # -#, fuzzy msgid "" msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2006-12-24 10:40+0100\n" +"Project-Id-Version: lilypond 2.11.20\n" +"Report-Msgid-Bugs-To: http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs" +"POT-Creation-Date: 2007-02-25 22:11+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: convertrules.py:12 @@ -30,20 +29,20 @@ msgstr "" msgid "%s has been replaced by %s" msgstr "" -#: convertrules.py:2398 +#: convertrules.py:2399 msgid "LilyPond source must be UTF-8" msgstr "" -#: convertrules.py:2401 +#: convertrules.py:2402 msgid "Try the texstrings backend" msgstr "" -#: convertrules.py:2404 +#: convertrules.py:2405 #, python-format msgid "Do something like: %s" msgstr "" -#: convertrules.py:2407 +#: convertrules.py:2408 msgid "Or save as UTF-8 in your editor" msgstr "" @@ -77,395 +76,399 @@ msgstr "" msgid "Usage: %s" msgstr "" -#: abc2ly.py:1349 convert-ly.py:80 lilypond-book.py:125 midi2ly.py:869 +#: abc2ly.py:1342 convert-ly.py:71 lilypond-book.py:110 midi2ly.py:858 #, python-format msgid "%s [OPTION]... FILE" msgstr "" -#: abc2ly.py:1351 +#: abc2ly.py:1344 #, python-format msgid "" "abc2ly converts ABC music files (see\n" "%s) to LilyPond input." msgstr "" -#: abc2ly.py:1355 etf2ly.py:1200 midi2ly.py:885 +#: abc2ly.py:1348 etf2ly.py:1184 midi2ly.py:874 msgid "write output to FILE" msgstr "" -#: abc2ly.py:1357 +#: abc2ly.py:1350 msgid "be strict about succes" msgstr "" -#: abc2ly.py:1359 +#: abc2ly.py:1352 msgid "preserve ABC's notion of beams" msgstr "" -#: abc2ly.py:1361 convert-ly.py:112 etf2ly.py:1208 lilypond-book.py:168 -#: midi2ly.py:911 musicxml2ly.py:505 +#: abc2ly.py:1354 convert-ly.py:103 etf2ly.py:1192 lilypond-book.py:161 +#: midi2ly.py:900 musicxml2ly.py:506 msgid "Report bugs via" msgstr "" -#: convert-ly.py:41 +#: convert-ly.py:32 msgid "" "Update LilyPond input to newer version. By default, update from the\n" "version taken from the \\version command, to the current LilyPond version." msgstr "" -#: convert-ly.py:43 lilypond-book.py:73 +#: convert-ly.py:34 lilypond-book.py:59 msgid "Examples:" msgstr "" -#: convert-ly.py:56 lilypond-book.py:98 warn.cc:48 input.cc:90 +#: convert-ly.py:47 lilypond-book.py:83 warn.cc:48 input.cc:90 #, c-format, python-format msgid "warning: %s" msgstr "" -#: convert-ly.py:59 lilypond-book.py:101 warn.cc:54 input.cc:96 input.cc:104 +#: convert-ly.py:50 lilypond-book.py:86 warn.cc:54 input.cc:96 input.cc:104 #, c-format, python-format msgid "error: %s" msgstr "" -#: convert-ly.py:75 etf2ly.py:1190 lilypond-book.py:121 midi2ly.py:98 +#: convert-ly.py:66 etf2ly.py:1174 lilypond-book.py:106 midi2ly.py:87 msgid "Distributed under terms of the GNU General Public License." msgstr "" -#: convert-ly.py:76 etf2ly.py:1191 lilypond-book.py:122 midi2ly.py:99 +#: convert-ly.py:67 etf2ly.py:1175 lilypond-book.py:107 midi2ly.py:88 msgid "It comes with NO WARRANTY." msgstr "" -#: convert-ly.py:86 convert-ly.py:106 +#: convert-ly.py:77 convert-ly.py:97 msgid "VERSION" msgstr "" -#: convert-ly.py:88 +#: convert-ly.py:79 msgid "start from VERSION [default: \\version found in file]" msgstr "" -#: convert-ly.py:91 +#: convert-ly.py:82 msgid "edit in place" msgstr "" -#: convert-ly.py:94 +#: convert-ly.py:85 msgid "do not add \\version command if missing" msgstr "" -#: convert-ly.py:100 +#: convert-ly.py:91 msgid "show rules [default: --from=0, --to=@TOPLEVEL_VERSION@]" msgstr "" -#: convert-ly.py:105 +#: convert-ly.py:96 msgid "convert to VERSION [default: @TOPLEVEL_VERSION@]" msgstr "" -#: convert-ly.py:153 +#: convert-ly.py:144 msgid "Applying conversion: " msgstr "" -#: convert-ly.py:166 +#: convert-ly.py:157 msgid "Error while converting" msgstr "" -#: convert-ly.py:168 +#: convert-ly.py:159 msgid "Stopping at last succesful rule" msgstr "" -#: convert-ly.py:190 +#: convert-ly.py:181 #, python-format msgid "Processing `%s'... " msgstr "" -#: convert-ly.py:277 relocate.cc:360 source-file.cc:54 +#: convert-ly.py:268 relocate.cc:363 source-file.cc:54 #, c-format, python-format msgid "cannot open file: `%s'" msgstr "" -#: convert-ly.py:284 +#: convert-ly.py:275 #, python-format msgid "cannot determine version for `%s'. Skipping" msgstr "" -#: etf2ly.py:1196 +#: etf2ly.py:1180 #, python-format msgid "%s [OPTION]... ETF-FILE" msgstr "" -#: etf2ly.py:1198 +#: etf2ly.py:1182 msgid "" "Enigma Transport Format is a format used by Coda Music Technology's\n" "Finale product. etf2ly converts a subset of ETF to a ready-to-use LilyPond " "file." msgstr "" -#: etf2ly.py:1201 midi2ly.py:886 musicxml2ly.py:498 main.cc:172 main.cc:178 +#: etf2ly.py:1185 midi2ly.py:875 musicxml2ly.py:499 main.cc:154 main.cc:159 msgid "FILE" msgstr "" -#: etf2ly.py:1203 lilypond-book.py:165 midi2ly.py:899 main.cc:185 +#: etf2ly.py:1187 lilypond-book.py:158 midi2ly.py:888 main.cc:163 msgid "show warranty and copyright" msgstr "" -#: lilypond-book.py:71 +#: lilypond-book.py:57 msgid "" "Process LilyPond snippets in hybrid HTML, LaTeX, texinfo or DocBook document." msgstr "" -#: lilypond-book.py:78 +#: lilypond-book.py:64 msgid "BOOK" msgstr "" -#: lilypond-book.py:87 +#: lilypond-book.py:72 #, python-format msgid "Exiting (%d)..." msgstr "" -#: lilypond-book.py:119 +#: lilypond-book.py:104 #, python-format msgid "Copyright (c) %s by" msgstr "" -#: lilypond-book.py:129 +#: lilypond-book.py:114 msgid "FILTER" msgstr "" -#: lilypond-book.py:132 +#: lilypond-book.py:117 msgid "pipe snippets through FILTER [convert-ly -n -]" msgstr "" -#: lilypond-book.py:135 +#: lilypond-book.py:120 msgid "" "use output format FORMAT (texi [default], texi-html, latex, html, docbook)" msgstr "" -#: lilypond-book.py:138 +#: lilypond-book.py:123 msgid "add DIR to include path" msgstr "" -#: lilypond-book.py:139 lilypond-book.py:144 main.cc:171 +#: lilypond-book.py:124 lilypond-book.py:136 main.cc:153 msgid "DIR" msgstr "" -#: lilypond-book.py:143 +#: lilypond-book.py:129 +msgid "PAD" +msgstr "" + +#: lilypond-book.py:135 msgid "write output to DIR" msgstr "" -#: lilypond-book.py:147 +#: lilypond-book.py:140 msgid "COMMAND" msgstr "" -#: lilypond-book.py:148 +#: lilypond-book.py:141 msgid "process ly_files using COMMAND FILE..." msgstr "" -#: lilypond-book.py:154 +#: lilypond-book.py:147 msgid "Create PDF files for use with PDFTeX" msgstr "" -#: lilypond-book.py:157 +#: lilypond-book.py:150 msgid "" "extract all PostScript fonts into INPUT.psfonts for LaTeX\n" "must use this with dvips -h INPUT.psfonts" msgstr "" -#: lilypond-book.py:160 midi2ly.py:896 musicxml2ly.py:489 main.cc:184 +#: lilypond-book.py:153 midi2ly.py:885 musicxml2ly.py:490 main.cc:162 msgid "be verbose" msgstr "" -#: lilypond-book.py:773 +#: lilypond-book.py:768 #, python-format msgid "file not found: %s" msgstr "" -#: lilypond-book.py:1004 +#: lilypond-book.py:999 #, python-format msgid "deprecated ly-option used: %s=%s" msgstr "" -#: lilypond-book.py:1007 +#: lilypond-book.py:1002 #, python-format msgid "compatibility mode translation: %s=%s" msgstr "" -#: lilypond-book.py:1011 +#: lilypond-book.py:1006 #, python-format msgid "deprecated ly-option used: %s" msgstr "" -#: lilypond-book.py:1014 +#: lilypond-book.py:1009 #, python-format msgid "compatibility mode translation: %s" msgstr "" -#: lilypond-book.py:1033 +#: lilypond-book.py:1028 #, python-format msgid "ignoring unknown ly option: %s" msgstr "" -#: lilypond-book.py:1388 +#: lilypond-book.py:1382 #, python-format msgid "Opening filter `%s'" msgstr "" -#: lilypond-book.py:1405 +#: lilypond-book.py:1399 #, python-format msgid "`%s' failed (%d)" msgstr "" -#: lilypond-book.py:1406 +#: lilypond-book.py:1400 msgid "The error log is as follows:" msgstr "" -#: lilypond-book.py:1476 +#: lilypond-book.py:1472 msgid "cannot find \\begin{document} in LaTeX document" msgstr "" -#: lilypond-book.py:1586 +#: lilypond-book.py:1583 msgid "Writing snippets..." msgstr "" -#: lilypond-book.py:1591 +#: lilypond-book.py:1588 msgid "Processing..." msgstr "" -#: lilypond-book.py:1595 +#: lilypond-book.py:1592 msgid "All snippets are up to date..." msgstr "" -#: lilypond-book.py:1605 +#: lilypond-book.py:1602 #, python-format msgid "cannot determine format for: %s" msgstr "" -#: lilypond-book.py:1616 +#: lilypond-book.py:1613 #, python-format msgid "%s is up to date." msgstr "" -#: lilypond-book.py:1622 +#: lilypond-book.py:1619 #, python-format msgid "Writing `%s'..." msgstr "" -#: lilypond-book.py:1677 +#: lilypond-book.py:1674 msgid "Output would overwrite input file; use --output." msgstr "" -#: lilypond-book.py:1681 +#: lilypond-book.py:1678 #, python-format msgid "Reading %s..." msgstr "" -#: lilypond-book.py:1700 +#: lilypond-book.py:1697 msgid "Dissecting..." msgstr "" -#: lilypond-book.py:1716 +#: lilypond-book.py:1713 #, python-format msgid "Compiling %s..." msgstr "" -#: lilypond-book.py:1725 +#: lilypond-book.py:1722 #, python-format msgid "Processing include: %s" msgstr "" -#: lilypond-book.py:1739 +#: lilypond-book.py:1736 #, python-format msgid "Removing `%s'" msgstr "" -#: lilypond-book.py:1815 -#, python-format -msgid "Writing fonts to %s..." -msgstr "" - -#: lilypond-book.py:1830 +#: lilypond-book.py:1769 msgid "option --psfonts not used" msgstr "" -#: lilypond-book.py:1831 +#: lilypond-book.py:1770 msgid "processing with dvips will have no fonts" msgstr "" -#: lilypond-book.py:1834 +#: lilypond-book.py:1773 msgid "DVIPS usage:" msgstr "" -#: midi2ly.py:106 lily-library.scm:624 lily-library.scm:632 +#: lilypond-book.py:1829 +#, python-format +msgid "Writing fonts to %s..." +msgstr "" + +#: midi2ly.py:95 lily-library.scm:577 lily-library.scm:586 msgid "warning: " msgstr "" -#: midi2ly.py:109 midi2ly.py:924 +#: midi2ly.py:98 midi2ly.py:913 msgid "error: " msgstr "" -#: midi2ly.py:110 +#: midi2ly.py:99 msgid "Exiting ... " msgstr "" -#: midi2ly.py:857 +#: midi2ly.py:846 #, python-format msgid "%s output to `%s'..." msgstr "" -#: midi2ly.py:871 musicxml2ly.py:485 +#: midi2ly.py:860 musicxml2ly.py:486 #, python-format msgid "Convert %s to LilyPond input." msgstr "" -#: midi2ly.py:875 +#: midi2ly.py:864 msgid "print absolute pitches" msgstr "" -#: midi2ly.py:877 midi2ly.py:889 +#: midi2ly.py:866 midi2ly.py:878 msgid "DUR" msgstr "" -#: midi2ly.py:878 +#: midi2ly.py:867 msgid "quantise note durations on DUR" msgstr "" -#: midi2ly.py:881 +#: midi2ly.py:870 msgid "print explicit durations" msgstr "" -#: midi2ly.py:882 +#: midi2ly.py:871 msgid "set key: ALT=+sharps|-flats; MINOR=1" msgstr "" -#: midi2ly.py:883 +#: midi2ly.py:872 msgid "ALT[:MINOR]" msgstr "" -#: midi2ly.py:888 +#: midi2ly.py:877 msgid "quantise note starts on DUR" msgstr "" -#: midi2ly.py:891 +#: midi2ly.py:880 msgid "DUR*NUM/DEN" msgstr "" -#: midi2ly.py:894 +#: midi2ly.py:883 msgid "allow tuplet durations DUR*NUM/DEN" msgstr "" -#: midi2ly.py:902 +#: midi2ly.py:891 msgid "treat every text as a lyric" msgstr "" -#: midi2ly.py:905 +#: midi2ly.py:894 msgid "Examples" msgstr "" -#: midi2ly.py:925 +#: midi2ly.py:914 msgid "no files specified on command line." msgstr "" -#: musicxml2ly.py:473 +#: musicxml2ly.py:474 msgid "musicxml2ly FILE.xml" msgstr "" -#: musicxml2ly.py:476 +#: musicxml2ly.py:477 #, python-format msgid "" "This program is free software. It is covered by the GNU General Public\n" @@ -474,11 +477,11 @@ msgid "" "information." msgstr "" -#: musicxml2ly.py:495 +#: musicxml2ly.py:496 msgid "Use lxml.etree; uses less memory and cpu time." msgstr "" -#: musicxml2ly.py:503 +#: musicxml2ly.py:504 msgid "set output filename to FILE" msgstr "" @@ -502,7 +505,7 @@ msgstr "" msgid "invalid argument `%s' to option `%s'" msgstr "" -#: warn.cc:68 grob.cc:559 input.cc:82 +#: warn.cc:68 grob.cc:557 input.cc:82 #, c-format msgid "programming error: %s" msgstr "" @@ -511,37 +514,41 @@ msgstr "" msgid "continuing, cross fingers" msgstr "" -#: accidental-engraver.cc:240 +#: accidental-engraver.cc:247 #, c-format msgid "accidental typesetting list must begin with context-name: %s" msgstr "" -#: accidental-engraver.cc:268 +#: accidental-engraver.cc:274 #, c-format -msgid "ignoring unknown accidental: %s" +msgid "ignoring unknown accidental rule: %s" msgstr "" -#: accidental-engraver.cc:284 +#: accidental-engraver.cc:290 #, c-format msgid "pair or context-name expected for accidental rule, found %s" msgstr "" -#: accidental.cc:243 key-signature-interface.cc:133 +#: accidental.cc:160 #, c-format -msgid "accidental `%s' not found" +msgid "Could not find glyph-name for alteration %s" +msgstr "" + +#: accidental.cc:175 +msgid "natural alteration glyph not found" msgstr "" -#: align-interface.cc:222 +#: align-interface.cc:191 msgid "" "vertical alignment called before line-breaking.\n" "Only do cross-staff spanners with PianoStaff." msgstr "" -#: align-interface.cc:329 +#: align-interface.cc:324 msgid "tried to get a translation for something that is no child of mine" msgstr "" -#: all-font-metrics.cc:173 +#: all-font-metrics.cc:143 #, c-format msgid "cannot find font: `%s'" msgstr "" @@ -567,57 +574,52 @@ msgstr "" msgid "removing this vertical group" msgstr "" -#: axis-group-interface.cc:96 +#: axis-group-interface.cc:109 msgid "tried to calculate pure-height at a non-breakpoint" msgstr "" -#: axis-group-interface.cc:370 +#: axis-group-interface.cc:449 msgid "an outside-staff object should have a direction, defaulting to up" msgstr "" -#: axis-group-interface.cc:383 -#, c-format -msgid "outside-staff object %s has an empty extent" -msgstr "" - #: bar-check-iterator.cc:73 #, c-format msgid "barcheck failed at: %s" msgstr "" -#: beam-engraver.cc:128 +#: beam-engraver.cc:126 msgid "already have a beam" msgstr "" -#: beam-engraver.cc:196 +#: beam-engraver.cc:202 msgid "unterminated beam" msgstr "" -#: beam-engraver.cc:238 chord-tremolo-engraver.cc:134 +#: beam-engraver.cc:244 chord-tremolo-engraver.cc:138 msgid "stem must have Rhythmic structure" msgstr "" -#: beam-engraver.cc:246 +#: beam-engraver.cc:252 msgid "stem does not fit in beam" msgstr "" -#: beam-engraver.cc:247 +#: beam-engraver.cc:253 msgid "beam was started here" msgstr "" -#: beam-quanting.cc:307 +#: beam-quanting.cc:314 msgid "no feasible beam position" msgstr "" -#: beam.cc:144 +#: beam.cc:160 msgid "removing beam with no stems" msgstr "" -#: beam.cc:1007 +#: beam.cc:1035 msgid "no viable initial configuration found: may not find good beam slope" msgstr "" -#: break-alignment-interface.cc:208 +#: break-alignment-interface.cc:195 #, c-format msgid "No spacing entry from %s to `%s'" msgstr "" @@ -655,7 +657,7 @@ msgstr "" msgid "unterminated chord tremolo" msgstr "" -#: chord-tremolo-iterator.cc:33 +#: chord-tremolo-iterator.cc:35 #, c-format msgid "expect 2 elements for chord tremolo, found %d" msgstr "" @@ -680,7 +682,7 @@ msgid "Coherent_ligature_engraver: setting `spacing-increment=0.01': ptr=%ul" msgstr "" #. if we get to here, just put everything on one line -#: constrained-breaking.cc:176 constrained-breaking.cc:193 +#: constrained-breaking.cc:167 constrained-breaking.cc:184 msgid "cannot find line breaking that satisfies constraints" msgstr "" @@ -689,26 +691,26 @@ msgstr "" msgid "program has no such type: `%s'" msgstr "" -#: context-property.cc:76 +#: context-property.cc:30 msgid "need symbol arguments for \\override and \\revert" msgstr "" -#: context.cc:151 +#: context.cc:144 #, c-format msgid "cannot find or create new `%s'" msgstr "" -#: context.cc:213 +#: context.cc:206 #, c-format msgid "cannot find or create `%s' called `%s'" msgstr "" -#: context.cc:276 +#: context.cc:268 #, c-format msgid "Invalid CreateContext event: Cannot create %s context" msgstr "" -#: context.cc:388 +#: context.cc:380 #, c-format msgid "cannot find or create: `%s'" msgstr "" @@ -727,32 +729,32 @@ msgstr "" msgid "Unknown event class %s" msgstr "" -#: dots.cc:38 +#: dots.cc:37 #, c-format msgid "dot `%s' not found" msgstr "" -#: dynamic-engraver.cc:186 span-dynamic-performer.cc:87 +#: dynamic-engraver.cc:184 msgid "cannot find start of (de)crescendo" msgstr "" -#: dynamic-engraver.cc:195 +#: dynamic-engraver.cc:193 msgid "already have a decrescendo" msgstr "" -#: dynamic-engraver.cc:197 +#: dynamic-engraver.cc:195 msgid "already have a crescendo" msgstr "" -#: dynamic-engraver.cc:200 +#: dynamic-engraver.cc:198 msgid "cresc starts here" msgstr "" -#: dynamic-engraver.cc:323 +#: dynamic-engraver.cc:327 msgid "unterminated (de)crescendo" msgstr "" -#: extender-engraver.cc:131 extender-engraver.cc:140 +#: extender-engraver.cc:142 extender-engraver.cc:151 msgid "unterminated extender" msgstr "" @@ -775,27 +777,31 @@ msgstr "" msgid "adding font directory: %s" msgstr "" -#: general-scheme.cc:160 +#: general-scheme.cc:180 msgid "infinity or NaN encountered while converting Real number" msgstr "" -#: general-scheme.cc:161 +#: general-scheme.cc:181 msgid "setting to zero" msgstr "" -#: glissando-engraver.cc:92 +#: general-scheme.cc:399 output-ps.scm:61 +msgid "Found infinity or nan in output. Substituting 0.0" +msgstr "" + +#: glissando-engraver.cc:94 msgid "unterminated glissando" msgstr "" -#: global-context-scheme.cc:91 global-context-scheme.cc:107 +#: global-context-scheme.cc:87 global-context-scheme.cc:105 msgid "no music found in score" msgstr "" -#: global-context-scheme.cc:97 +#: global-context-scheme.cc:95 msgid "Interpreting music... " msgstr "" -#: global-context-scheme.cc:120 +#: global-context-scheme.cc:118 #, c-format msgid "elapsed time: %.2f seconds" msgstr "" @@ -830,14 +836,28 @@ msgstr "" msgid "Grob `%s' has no interface for property `%s'" msgstr "" -#: grob.cc:253 +#: grob-property.cc:34 +#, c-format +msgid "%d: %s" +msgstr "" + +#: grob-property.cc:164 +#, c-format +msgid "cyclic dependency: calculation-in-progress encountered for #'%s (%s)" +msgstr "" + +#: grob.cc:251 msgid "Infinity or NaN encountered" msgstr "" -#: hairpin.cc:183 +#: hairpin.cc:187 msgid "decrescendo too small" msgstr "" +#: hairpin.cc:188 +msgid "crescendo too small" +msgstr "" + #: horizontal-bracket-engraver.cc:59 msgid "do not have that many brackets" msgstr "" @@ -854,16 +874,12 @@ msgstr "" msgid "unterminated hyphen; removing" msgstr "" -#: includable-lexer.cc:53 -msgid "include files are not allowed in safe mode" -msgstr "" - -#: includable-lexer.cc:60 lily-guile.cc:90 lily-parser-scheme.cc:116 +#: includable-lexer.cc:53 lily-guile.cc:76 lily-parser-scheme.cc:117 #, c-format msgid "cannot find file: `%s'" msgstr "" -#: includable-lexer.cc:62 lily-parser-scheme.cc:107 +#: includable-lexer.cc:55 lily-parser-scheme.cc:108 #, c-format msgid "(search path: `%s')" msgstr "" @@ -872,6 +888,15 @@ msgstr "" msgid "position unknown" msgstr "" +#: key-signature-interface.cc:71 +#, c-format +msgid "No glyph found for alteration: %s" +msgstr "" + +#: key-signature-interface.cc:81 +msgid "alteration not found" +msgstr "" + #: ligature-engraver.cc:93 msgid "cannot find start of ligature" msgstr "" @@ -900,55 +925,59 @@ msgstr "" msgid "ligature was started here" msgstr "" -#: lily-guile.cc:92 +#: lily-guile.cc:78 #, c-format msgid "(load path: `%s')" msgstr "" -#: lily-guile.cc:518 +#: lily-guile.cc:438 #, c-format msgid "cannot find property type-check for `%s' (%s)." msgstr "" -#: lily-guile.cc:521 +#: lily-guile.cc:441 msgid "perhaps a typing error?" msgstr "" -#: lily-guile.cc:527 +#: lily-guile.cc:448 msgid "doing assignment anyway" msgstr "" -#: lily-guile.cc:539 +#: lily-guile.cc:460 #, c-format msgid "type check for `%s' failed; value `%s' must be of type `%s'" msgstr "" -#: lily-lexer.cc:254 +#: lily-lexer.cc:250 +msgid "include files are not allowed in safe mode" +msgstr "" + +#: lily-lexer.cc:269 #, c-format msgid "identifier name is a keyword: `%s'" msgstr "" -#: lily-lexer.cc:269 +#: lily-lexer.cc:284 #, c-format msgid "error at EOF: %s" msgstr "" -#: lily-parser-scheme.cc:29 +#: lily-parser-scheme.cc:30 #, c-format msgid "deprecated function called: %s" msgstr "" -#: lily-parser-scheme.cc:88 +#: lily-parser-scheme.cc:89 #, c-format msgid "Changing working directory to: `%s'" msgstr "" -#: lily-parser-scheme.cc:106 +#: lily-parser-scheme.cc:107 #, c-format msgid "cannot find init file: `%s'" msgstr "" -#: lily-parser-scheme.cc:125 +#: lily-parser-scheme.cc:126 #, c-format msgid "Processing `%s'" msgstr "" @@ -961,12 +990,16 @@ msgstr "" msgid "braces do not match" msgstr "" -#: lyric-combine-music-iterator.cc:291 +#: lyric-combine-music-iterator.cc:327 #, c-format msgid "cannot find Voice `%s'" msgstr "" -#: main.cc:116 +#: lyric-engraver.cc:158 +msgid "Lyric syllable does not have note. Use \\lyricsto or associatedVoice." +msgstr "" + +#: main.cc:100 #, c-format msgid "" "This program is free software. It is covered by the GNU General Public\n" @@ -975,7 +1008,7 @@ msgid "" "information.\n" msgstr "" -#: main.cc:122 +#: main.cc:106 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" @@ -992,123 +1025,99 @@ msgid "" "Boston, MA 02111-1307, USA.\n" msgstr "" -#: main.cc:153 -msgid "BACK" -msgstr "" - -#: main.cc:153 -msgid "" -"use backend BACK (eps, gnome, ps [default],\n" -"scm, svg, tex, texstr)" -msgstr "" - -#: main.cc:155 +#: main.cc:137 msgid "SYM[=VAL]" msgstr "" -#: main.cc:156 +#: main.cc:138 msgid "" -"set Scheme option SYM to VAL (default: #t)\n" +"set Scheme option SYM to VAL (default: #t).\n" "Use -dhelp for help." msgstr "" -#: main.cc:159 +#: main.cc:141 msgid "EXPR" msgstr "" -#: main.cc:159 +#: main.cc:141 msgid "evaluate scheme code" msgstr "" #. Bug in option parser: --output =foe is taken as an abbreviation #. for --output-format. -#: main.cc:162 +#: main.cc:144 msgid "FORMATs" msgstr "" -#: main.cc:162 +#: main.cc:144 msgid "dump FORMAT,... Also as separate options:" msgstr "" -#: main.cc:163 +#: main.cc:145 msgid "generate DVI (tex backend only)" msgstr "" -#: main.cc:164 +#: main.cc:146 msgid "generate PDF (default)" msgstr "" -#: main.cc:165 +#: main.cc:147 msgid "generate PNG" msgstr "" -#: main.cc:166 +#: main.cc:148 msgid "generate PostScript" msgstr "" -#: main.cc:167 +#: main.cc:149 msgid "generate TeX (tex backend only)" msgstr "" -#: main.cc:168 +#: main.cc:150 msgid "show this help and exit" msgstr "" -#: main.cc:169 +#: main.cc:151 msgid "FIELD" msgstr "" -#: main.cc:169 +#: main.cc:151 msgid "" "dump header field FIELD to file\n" "named BASENAME.FIELD" msgstr "" -#: main.cc:171 +#: main.cc:153 msgid "add DIR to search path" msgstr "" -#: main.cc:172 +#: main.cc:154 msgid "use FILE as init file" msgstr "" -#: main.cc:174 -msgid "USER,GROUP,JAIL,DIR" +#: main.cc:156 +msgid "USER, GROUP, JAIL, DIR" msgstr "" -#: main.cc:174 +#: main.cc:156 msgid "" "chroot to JAIL, become USER:GROUP\n" "and cd into DIR" msgstr "" -#: main.cc:177 -msgid "do not generate printed output" -msgstr "" - -#: main.cc:178 +#: main.cc:159 msgid "write output to FILE (suffix will be added)" msgstr "" -#: main.cc:179 -msgid "generate a preview of the first system" -msgstr "" - -#: main.cc:180 +#: main.cc:160 msgid "relocate using directory of lilypond program" msgstr "" -#: main.cc:181 -msgid "" -"disallow unsafe Scheme and PostScript\n" -"operations" -msgstr "" - -#: main.cc:183 +#: main.cc:161 msgid "show version number and exit" msgstr "" -#: main.cc:224 +#: main.cc:203 #, c-format msgid "" "Copyright (c) %s by\n" @@ -1116,87 +1125,82 @@ msgid "" msgstr "" #. No version number or newline here. It confuses help2man. -#: main.cc:251 +#: main.cc:230 #, c-format msgid "Usage: %s [OPTION]... FILE..." msgstr "" -#: main.cc:253 +#: main.cc:232 #, c-format msgid "Typeset music and/or produce MIDI from FILE." msgstr "" -#: main.cc:255 +#: main.cc:234 #, c-format msgid "LilyPond produces beautiful music notation." msgstr "" -#: main.cc:257 +#: main.cc:236 #, c-format msgid "For more information, see %s" msgstr "" -#: main.cc:259 +#: main.cc:238 #, c-format msgid "Options:" msgstr "" -#: main.cc:263 +#: main.cc:242 #, c-format msgid "Report bugs via %s" msgstr "" -#: main.cc:309 +#: main.cc:288 #, c-format msgid "expected %d arguments with jail, found: %u" msgstr "" -#: main.cc:323 +#: main.cc:302 #, c-format msgid "no such user: %s" msgstr "" -#: main.cc:325 +#: main.cc:304 #, c-format msgid "cannot get user id from user name: %s: %s" msgstr "" -#: main.cc:340 +#: main.cc:319 #, c-format msgid "no such group: %s" msgstr "" -#: main.cc:342 +#: main.cc:321 #, c-format msgid "cannot get group id from group name: %s: %s" msgstr "" -#: main.cc:350 +#: main.cc:329 #, c-format msgid "cannot chroot to: %s: %s" msgstr "" -#: main.cc:357 +#: main.cc:336 #, c-format msgid "cannot change group id to: %d: %s" msgstr "" -#: main.cc:363 +#: main.cc:342 #, c-format msgid "cannot change user id to: %d: %s" msgstr "" -#: main.cc:369 +#: main.cc:348 #, c-format msgid "cannot change working directory to: %s: %s" msgstr "" -#: main.cc:415 -#, c-format -msgid "Evaluating %s" -msgstr "" - -#: main.cc:645 +#: main.cc:589 #, c-format msgid "exception caught: %s" msgstr "" @@ -1260,16 +1264,11 @@ msgstr "" msgid "Mensural_ligature: (join_right == 0)" msgstr "" -#: midi-item.cc:152 +#: midi-item.cc:81 #, c-format msgid "no such MIDI instrument: `%s'" msgstr "" -#: midi-item.cc:285 -#, c-format -msgid "experimental: temporarily fine tuning (of %d cents) a channel." -msgstr "" - #: midi-stream.cc:28 #, c-format msgid "cannot open for write: %s: %s" @@ -1284,12 +1283,12 @@ msgstr "" msgid "Sending non-event to context" msgstr "" -#: music.cc:141 +#: music.cc:140 #, c-format msgid "octave check failed; expected \"%s\", found: \"%s\"" msgstr "" -#: music.cc:207 +#: music.cc:203 #, c-format msgid "transposition by %s makes alteration larger than double" msgstr "" @@ -1306,7 +1305,7 @@ msgstr "" msgid "placing below" msgstr "" -#: note-collision.cc:457 +#: note-collision.cc:459 msgid "ignoring too many clashing note columns" msgstr "" @@ -1333,19 +1332,29 @@ msgstr "" msgid "cannot load font table: %s" msgstr "" -#: open-type-font.cc:98 +#: open-type-font.cc:42 #, c-format -msgid "unsupported font format: %s" +msgid "Free type error: %s" msgstr "" #: open-type-font.cc:100 #, c-format -msgid "unknown error: %d reading font file: %s" +msgid "unsupported font format: %s" msgstr "" -#: open-type-font.cc:173 open-type-font.cc:297 +#: open-type-font.cc:102 #, c-format -msgid "FT_Get_Glyph_Name() returned error: %u" +msgid "error reading font file %s: %s" +msgstr "" + +#: open-type-font.cc:177 +#, c-format +msgid "FT_Get_Glyph_Name () Freetype error: %s" +msgstr "" + +#: open-type-font.cc:302 pango-font.cc:167 +#, c-format +msgid "FT_Get_Glyph_Name () error: %s" msgstr "" #: page-turn-page-breaking.cc:205 @@ -1359,27 +1368,33 @@ msgstr "" msgid "Calculating page and line breaks (%d possible page breaks)..." msgstr "" -#: page-turn-page-breaking.cc:236 paper-score.cc:154 +#: page-turn-page-breaking.cc:236 paper-score.cc:146 msgid "Drawing systems..." msgstr "" -#: pango-font.cc:181 +#: pango-font.cc:184 #, c-format msgid "" "Glyph has no name, but font supports glyph naming.\n" "Skipping glyph U+%0X, file %s" msgstr "" -#: pango-font.cc:224 +#: pango-font.cc:229 #, c-format msgid "no PostScript font name for font `%s'" msgstr "" -#: pango-font.cc:272 +#: pango-font.cc:277 msgid "FreeType face has no PostScript font name" msgstr "" -#: paper-outputter-scheme.cc:33 +#: paper-column-engraver.cc:199 +msgid "" +"forced break was overridden by some other event, should you be using bar " +"checks?" +msgstr "" + +#: paper-outputter-scheme.cc:30 #, c-format msgid "Layout output to `%s'..." msgstr "" @@ -1397,7 +1412,7 @@ msgstr "" msgid "Preprocessing graphical objects..." msgstr "" -#: parse-scm.cc:83 +#: parse-scm.cc:87 msgid "GUILE signaled an error for the expression beginning here" msgstr "" @@ -1405,19 +1420,19 @@ msgstr "" msgid "unterminated percent repeat" msgstr "" -#: performance.cc:45 +#: performance.cc:43 msgid "Track..." msgstr "" -#: performance.cc:74 +#: performance.cc:72 msgid "MIDI channel wrapped around" msgstr "" -#: performance.cc:75 +#: performance.cc:73 msgid "remapping modulo 16" msgstr "" -#: performance.cc:103 +#: performance.cc:101 #, c-format msgid "MIDI output to `%s'..." msgstr "" @@ -1442,7 +1457,7 @@ msgstr "" msgid "cannot find start of piano pedal bracket: `%s'" msgstr "" -#: program-option.cc:205 +#: program-option-scheme.cc:201 #, c-format msgid "no such internal option: %s" msgstr "" @@ -1461,67 +1476,76 @@ msgstr "" msgid "Setting %s to %s" msgstr "" -#: relocate.cc:59 +#: relocate.cc:64 #, c-format msgid "no such file: %s for %s" msgstr "" -#: relocate.cc:69 relocate.cc:87 +#: relocate.cc:74 relocate.cc:92 #, c-format msgid "no such directory: %s for %s" msgstr "" -#: relocate.cc:79 +#: relocate.cc:84 #, c-format msgid "%s=%s (prepend)\n" msgstr "" -#: relocate.cc:99 +#: relocate.cc:114 +#, c-format +msgid "not relocating, no %s/ or current/ found under %s" +msgstr "" + +#: relocate.cc:125 #, c-format -msgid "Relocation: compile prefix=%s, new prefix=%s" +msgid "Relocation: compile datadir=%s, new datadir=%s" msgstr "" -#: relocate.cc:129 +#: relocate.cc:138 #, c-format msgid "Relocation: framework_prefix=%s" msgstr "" -#: relocate.cc:169 +#: relocate.cc:179 #, c-format msgid "Relocation: is absolute: argv0=%s" msgstr "" -#: relocate.cc:176 +#: relocate.cc:186 #, c-format msgid "Relocation: from cwd: argv0=%s" msgstr "" -#: relocate.cc:185 +#: relocate.cc:195 #, c-format msgid "" "Relocation: from PATH=%s\n" "argv0=%s" msgstr "" -#: relocate.cc:354 +#: relocate.cc:229 +msgid "LILYPONDPREFIX is obsolete, use LILYPOND_DATADIR" +msgstr "" + +#: relocate.cc:357 #, c-format msgid "Relocation file: %s" msgstr "" -#: relocate.cc:390 +#: relocate.cc:393 #, c-format msgid "Unknown relocation command %s" msgstr "" -#: rest-collision.cc:151 +#: rest-collision.cc:145 msgid "cannot resolve rest collision: rest direction not set" msgstr "" -#: rest-collision.cc:165 rest-collision.cc:210 +#: rest-collision.cc:159 rest-collision.cc:204 msgid "too many colliding rests" msgstr "" -#: rest.cc:144 +#: rest.cc:132 #, c-format msgid "rest `%s' not found" msgstr "" @@ -1544,15 +1568,15 @@ msgstr "" msgid "Aborting" msgstr "" -#: score.cc:225 +#: score.cc:167 msgid "already have music in score" msgstr "" -#: score.cc:226 +#: score.cc:168 msgid "this is the previous music" msgstr "" -#: score.cc:231 +#: score.cc:173 msgid "errors found, ignoring music expression" msgstr "" @@ -1565,29 +1589,34 @@ msgstr "" msgid "scheme encoding: " msgstr "" -#: simple-spacer.cc:375 -#, c-format -msgid "No spring between column %d and next one" -msgstr "" - -#: slur-engraver.cc:83 tuplet-engraver.cc:75 +#: slur-engraver.cc:82 #, c-format msgid "direction of %s invalid: %d" msgstr "" -#: slur-engraver.cc:157 +#: slur-engraver.cc:151 msgid "unterminated slur" msgstr "" -#: slur-engraver.cc:166 +#: slur-engraver.cc:163 msgid "cannot end slur" msgstr "" +#: slur.cc:355 +#, c-format +msgid "Ignoring grob for slur: %s. avoid-slur not set?" +msgstr "" + #: source-file.cc:74 #, c-format msgid "expected to read %d characters, got %d" msgstr "" +#: spaceable-grob.cc:117 +#, c-format +msgid "No spring between column %d and next one" +msgstr "" + #: staff-symbol-engraver.cc:62 msgid "staff-span event has no direction" msgstr "" @@ -1610,12 +1639,12 @@ msgstr "" msgid "weird stem size, check for narrow beams" msgstr "" -#: stem.cc:641 +#: stem.cc:652 #, c-format msgid "flag `%s' not found" msgstr "" -#: stem.cc:652 +#: stem.cc:663 #, c-format msgid "flag stroke `%s' not found" msgstr "" @@ -1625,24 +1654,24 @@ msgstr "" msgid "Element count %d." msgstr "" -#: system.cc:276 +#: system.cc:266 #, c-format msgid "Grob count %d" msgstr "" -#: text-spanner-engraver.cc:61 +#: text-spanner-engraver.cc:60 msgid "cannot find start of text spanner" msgstr "" -#: text-spanner-engraver.cc:73 +#: text-spanner-engraver.cc:72 msgid "already have a text spanner" msgstr "" -#: text-spanner-engraver.cc:133 +#: text-spanner-engraver.cc:118 msgid "unterminated text spanner" msgstr "" -#: tie-engraver.cc:264 +#: tie-engraver.cc:267 msgid "lonely tie" msgstr "" @@ -1668,29 +1697,38 @@ msgstr "" msgid "unknown translator: `%s'" msgstr "" -#: translator-group.cc:151 +#: translator-group-ctors.cc:29 +#, c-format +msgid "fatal error. Couldn't find type: %s" +msgstr "" + +#: translator-group.cc:146 #, c-format msgid "cannot find: `%s'" msgstr "" -#: translator.cc:332 +#: translator.cc:346 #, c-format msgid "Two simultaneous %s events, junking this one" msgstr "" -#: translator.cc:333 +#: translator.cc:347 #, c-format msgid "Previous %s event here" msgstr "" -#: trill-spanner-engraver.cc:68 +#: trill-spanner-engraver.cc:67 msgid "cannot find start of trill spanner" msgstr "" -#: trill-spanner-engraver.cc:80 +#: trill-spanner-engraver.cc:79 msgid "already have a trill spanner" msgstr "" +#: tuplet-engraver.cc:96 +msgid "No tuplet to end" +msgstr "" + #: vaticana-ligature-engraver.cc:388 #, c-format msgid "" @@ -1716,56 +1754,56 @@ msgid "Vaticana_ligature: zero join (delta_pitch == 0)" msgstr "" #. fixme: be more verbose. -#: volta-engraver.cc:144 +#: volta-engraver.cc:143 msgid "cannot end volta spanner" msgstr "" -#: volta-engraver.cc:154 +#: volta-engraver.cc:153 msgid "already have a volta spanner, ending that one prematurely" msgstr "" -#: volta-engraver.cc:158 +#: volta-engraver.cc:157 msgid "also already have an ended spanner" msgstr "" -#: volta-engraver.cc:159 +#: volta-engraver.cc:158 msgid "giving up" msgstr "" -#: parser.yy:702 +#: parser.yy:704 msgid "\\paper cannot be used in \\score, use \\layout instead" msgstr "" -#: parser.yy:726 +#: parser.yy:728 msgid "need \\paper for paper block" msgstr "" -#: parser.yy:1172 +#: parser.yy:1187 msgid "Grob name should be alphanumeric" msgstr "" -#: parser.yy:1475 +#: parser.yy:1485 msgid "second argument must be pitch list" msgstr "" -#: parser.yy:1502 parser.yy:1507 parser.yy:1972 +#: parser.yy:1512 parser.yy:1517 parser.yy:1982 msgid "have to be in Lyric mode for lyrics" msgstr "" -#: parser.yy:1604 +#: parser.yy:1614 msgid "expecting string as script definition" msgstr "" -#: parser.yy:1759 parser.yy:1809 +#: parser.yy:1769 parser.yy:1819 #, c-format msgid "not a duration: %d" msgstr "" -#: parser.yy:1926 +#: parser.yy:1936 msgid "have to be in Note mode for notes" msgstr "" -#: parser.yy:1987 +#: parser.yy:1997 msgid "have to be in Chord mode for chords" msgstr "" @@ -1820,31 +1858,31 @@ msgstr "" msgid "Brace found at end of markup. Did you forget a space?" msgstr "" -#: lexer.ll:659 +#: lexer.ll:663 #, c-format msgid "invalid character: `%c'" msgstr "" -#: lexer.ll:774 lexer.ll:775 +#: lexer.ll:778 #, c-format msgid "unknown escaped string: `\\%s'" msgstr "" -#: lexer.ll:880 lexer.ll:881 +#: lexer.ll:884 #, c-format msgid "file too old: %s (oldest supported: %s)" msgstr "" -#: lexer.ll:881 lexer.ll:882 +#: lexer.ll:885 msgid "consider updating the input with the convert-ly script" msgstr "" -#: lexer.ll:887 lexer.ll:888 +#: lexer.ll:891 #, c-format msgid "program too old: %s (file requires: %s)" msgstr "" -#: backend-library.scm:19 lily.scm:599 ps-to-png.scm:82 +#: backend-library.scm:19 lily.scm:752 ps-to-png.scm:58 #, scheme-format msgid "Invoking `~a'..." msgstr "" @@ -1864,7 +1902,7 @@ msgstr "" msgid "Converting to ~a..." msgstr "" -#: backend-library.scm:145 +#: backend-library.scm:146 #, scheme-format msgid "Writing header field `~a' to `~a'..." msgstr "" @@ -1886,31 +1924,31 @@ msgstr "" msgid "translator listens to nonexisting event class ~A" msgstr "" -#: define-markup-commands.scm:255 +#: define-markup-commands.scm:273 msgid "no systems found in \\score markup, does it have a \\layout block?" msgstr "" -#: define-markup-commands.scm:1297 +#: define-markup-commands.scm:1315 #, scheme-format msgid "not a valid duration string: ~a" msgstr "" -#: define-music-types.scm:751 +#: define-music-types.scm:743 #, scheme-format msgid "symbol expected: ~S" msgstr "" -#: define-music-types.scm:754 +#: define-music-types.scm:746 #, scheme-format msgid "cannot find music object: ~S" msgstr "" -#: define-music-types.scm:774 +#: define-music-types.scm:766 #, scheme-format msgid "unknown repeat type `~S'" msgstr "" -#: define-music-types.scm:775 +#: define-music-types.scm:767 msgid "See music-types.scm for supported repeats" msgstr "" @@ -1944,50 +1982,56 @@ msgstr "" msgid "cannot find description for property ~S (~S)" msgstr "" -#: framework-eps.scm:91 framework-eps.scm:92 +#: framework-eps.scm:89 #, scheme-format msgid "Writing ~a..." msgstr "" -#: framework-ps.scm:279 +#: framework-ps.scm:281 #, scheme-format msgid "cannot embed ~S=~S" msgstr "" -#: framework-ps.scm:332 +#: framework-ps.scm:334 #, scheme-format msgid "cannot extract file matching ~a from ~a" msgstr "" -#: framework-ps.scm:349 +#: framework-ps.scm:351 #, scheme-format msgid "do not know how to embed ~S=~S" msgstr "" -#: framework-ps.scm:380 +#: framework-ps.scm:382 #, scheme-format msgid "do not know how to embed font ~s ~s ~s" msgstr "" -#: framework-ps.scm:729 +#: framework-ps.scm:731 #, scheme-format msgid "cannot convert to ~S" msgstr "" -#: framework-ps.scm:748 framework-ps.scm:751 +#: framework-ps.scm:750 framework-ps.scm:753 #, scheme-format msgid "cannot generate ~S using the postscript back-end" msgstr "" -#: framework-ps.scm:758 +#: framework-ps.scm:760 msgid "" "\n" -"The PostScript backend does not support the 'classic'\n" -"framework. Use the EPS backend instead,\n" +"The PostScript backend does not support the system-by-system \n" +"output. For that, use the EPS backend instead,\n" "\n" " lilypond -b eps \n" "\n" -"or remove the lilypond-book specific settings from the input.\n" +"If have cut & pasted a lilypond fragment from a webpage, be sure\n" +"to only remove anything before\n" +"\n" +" %% ****************************************************************\n" +" %% Start cut-&-pastable-section\n" +" %% ****************************************************************\n" +"\n" msgstr "" #: framework-tex.scm:360 @@ -2005,40 +2049,56 @@ msgstr "" msgid "Error in beam quanting. Expected ~S 0, found ~S." msgstr "" -#: layout-page-layout.scm:357 +#: layout-page-layout.scm:115 +msgid "Can't fit systems on page -- ignoring between-system-padding" +msgstr "" + +#: layout-page-layout.scm:449 msgid "Calculating page breaks..." msgstr "" -#: lily-library.scm:593 +#: lily-library.scm:545 #, scheme-format msgid "unknown unit: ~S" msgstr "" -#: lily-library.scm:626 +#: lily-library.scm:579 #, scheme-format msgid "no \\version statement found, please add~afor future compatibility" msgstr "" -#: lily-library.scm:633 +#: lily-library.scm:587 msgid "old relative compatibility not used" msgstr "" -#: lily.scm:144 +#: lily.scm:172 #, scheme-format msgid "cannot find: ~A" msgstr "" -#: lily.scm:209 +#: lily.scm:237 #, scheme-format msgid "wrong type for argument ~a. Expecting ~a, found ~s" msgstr "" -#: lily.scm:525 lily.scm:589 +#: lily.scm:618 +#, scheme-format +msgid "job ~a terminated with signal: ~a" +msgstr "" + +#: lily.scm:621 +#, scheme-format +msgid "" +"logfile ~a (exit ~a):\n" +"~a" +msgstr "" + +#: lily.scm:648 lily.scm:742 #, scheme-format msgid "failed files: ~S" msgstr "" -#: lily.scm:579 +#: lily.scm:732 #, scheme-format msgid "Redirecting output to ~a..." msgstr "" @@ -2047,52 +2107,52 @@ msgstr "" msgid "Music head function must return Music object" msgstr "" -#: ly-syntax-constructors.scm:136 +#: ly-syntax-constructors.scm:139 #, scheme-format msgid "Invalid property operation ~a" msgstr "" -#: markup.scm:123 +#: markup.scm:94 #, scheme-format msgid "Wrong number of arguments. Expect: ~A, found ~A: ~S" msgstr "" -#: markup.scm:129 +#: markup.scm:100 #, scheme-format msgid "Invalid argument in position ~A. Expect: ~A, found: ~S." msgstr "" -#: music-functions.scm:213 +#: music-functions.scm:228 msgid "More alternatives than repeats. Junking excess alternatives" msgstr "" -#: music-functions.scm:232 +#: music-functions.scm:250 #, scheme-format msgid "expecting 2 elements for chord tremolo, found ~a" msgstr "" -#: music-functions.scm:538 +#: music-functions.scm:573 #, scheme-format msgid "music expected: ~S" msgstr "" #. FIXME: uncomprehensable message -#: music-functions.scm:589 +#: music-functions.scm:623 #, scheme-format msgid "Bar check failed. Expect to be at ~a, instead at ~a" msgstr "" -#: music-functions.scm:748 +#: music-functions.scm:773 #, scheme-format msgid "cannot find quoted music: `~S'" msgstr "" -#: music-functions.scm:942 +#: music-functions.scm:970 #, scheme-format msgid "unknown accidental style: ~S" msgstr "" -#: output-ps.scm:315 +#: output-ps.scm:276 msgid "utf-8-string encountered in PS backend" msgstr "" @@ -2106,46 +2166,47 @@ msgstr "" msgid "cannot decypher Pango description: ~a" msgstr "" -#: output-tex.scm:98 +#: output-tex.scm:97 #, scheme-format msgid "cannot find ~a in ~a" msgstr "" -#: paper.scm:69 -msgid "Not in toplevel scope" +#: paper.scm:84 +msgid "set-global-staff-size: not in toplevel scope" msgstr "" -#: paper.scm:117 +#: paper.scm:132 #, scheme-format msgid "This is not a \\layout {} object, ~S" msgstr "" -#: paper.scm:129 +#: paper.scm:144 #, scheme-format msgid "Unknown papersize: ~a" msgstr "" #. TODO: should raise (generic) exception with throw, and catch #. that in parse-scm.cc -#: paper.scm:144 +#: paper.scm:159 msgid "Must use #(set-paper-size .. ) within \\paper { ... }" msgstr "" -#: parser-clef.scm:126 +#: parser-clef.scm:127 #, scheme-format msgid "unknown clef type `~a'" msgstr "" -#: parser-clef.scm:127 -msgid "see scm/clef.scm for supported clefs" +#: parser-clef.scm:128 +#, scheme-format +msgid "supported clefs: ~a" msgstr "" -#: ps-to-png.scm:88 +#: ps-to-png.scm:64 #, scheme-format msgid "~a exited with status: ~S" msgstr "" -#: to-xml.scm:190 +#: to-xml.scm:180 #, scheme-format msgid "assertion failed: ~S" msgstr "" diff --git a/scm/define-grob-properties.scm b/scm/define-grob-properties.scm index 4c8cc6ef40..7434de317f 100644 --- a/scm/define-grob-properties.scm +++ b/scm/define-grob-properties.scm @@ -22,416 +22,522 @@ (apply define-grob-property x)) `( - (X-offset ,number? "The horizontal amount that this object is moved relative to its X-parent") + (X-extent ,number-pair? "Hard coded extent in X@tie{}direction.") + (X-offset ,number? "The horizontal amount that this object is +moved relative to its X-parent.") + (Y-extent ,number-pair? "See @code{X-extent}.") (Y-offset ,number? "The vertical amount that this object is moved -relative to its Y-parent") - (alteration ,number? "alteration numbers for accidental") - (after-line-breaking ,boolean? "Dummy property, used to trigger callback for after-line-breaking") - (alteration-alist ,list? "List of @code{(@var{pitch} -. @var{accidental})} pairs for key signature.") - (add-stem-support ,boolean? "If set, the Stem object is included in this script's support") +relative to its Y-parent.") + + (add-stem-support ,boolean? "If set, the @code{Stem} object is +included in this script's support.") + (after-line-breaking ,boolean? "Dummy property, used to trigger +callback for @code{after-line-breaking}.") (align-dir ,ly:dir? "Which side to align? @code{-1}: left side, @code{0}: around center of width, @code{1}: right side.") - (allow-loose-spacing ,boolean? "If set, column can be detached from main spacing.") - (arpeggio-direction ,ly:dir? "If set, put an -arrow on the arpeggio squiggly line.") + (allow-loose-spacing ,boolean? "If set, column can be detached +from main spacing.") + (alteration ,number? "Alteration numbers for accidental.") + (alteration-alist ,list? "List of @code{(@var{pitch} +. @var{accidental})} pairs for key signature.") + (arpeggio-direction ,ly:dir? "If set, put an arrow on the +arpeggio squiggly line.") (arrow-length ,number? "Arrow length.") (arrow-width ,number? "Arrow width.") - (auto-knee-gap ,ly:dimension? "If a gap is found between note heads -where a horizontal beam fits that is larger than this number, make a kneed beam.") - (average-spacing-wishes ,boolean? "If set, the spacing wishes are averaged over staves.") + (auto-knee-gap ,ly:dimension? "If a gap is found between note +heads where a horizontal beam fits that is larger than this number, +make a kneed beam.") + (average-spacing-wishes ,boolean? "If set, the spacing wishes +are averaged over staves.") (avoid-note-head ,boolean? "If set, the stem of a chord does not -pass through all note heads, but starts at the last note head. ") - (axes ,list? "list of axis numbers. -In the case of alignment grobs, this should contain only one number.") - (bar-size ,ly:dimension? "size of a bar line.") - (barre-type ,symbol? "Type of barre indication used in a fret diagram. -Choices include @code{curved} and @code{straight}.") - (base-shortest-duration ,ly:moment? - "Spacing is based on the shortest notes in a piece. Normally, pieces are spaced as if notes at least as short as this are present.") +pass through all note heads, but starts at the last note head.") + (avoid-slur ,symbol? "Method of handling slur collisions. +Choices are @code{around}, @code{inside}, @code{outside}. If unset, +scripts and slurs ignore each other. @code{around} only moves the +script if there is a collision; @code{outside} always moves the +script.") + (axes ,list? "List of axis numbers. In the case of alignment +grobs, this should contain only one number.") + + (bar-size ,ly:dimension? "The size of a bar line.") + (barre-type ,symbol? "Type of barre indication used in a fret +diagram. Choices include @code{curved} and @code{straight}.") + (base-shortest-duration ,ly:moment? "Spacing is based on the +shortest notes in a piece. Normally, pieces are spaced as if notes +at least as short as this are present.") (baseline-skip ,ly:dimension? "Distance between base lines of - multiple lines of text.") - (beam-thickness ,ly:dimension? "thickness, measured in staff-space.") - (beam-width ,ly:dimension? "width of the tremolo sign.") +multiple lines of text.") + (beam-thickness ,ly:dimension? "Beam thickness, measured in +@code{staff-space} units.") + (beam-width ,ly:dimension? "Width of the tremolo sign.") (beamed-stem-shorten ,list? "How much to shorten beamed stems, -when their direction is forced. It is a list, since the value is different -depending on the number flags/beams.") - (beaming ,pair? - "Pair of number lists. Each number list specifies which -beams to make. 0 is the central beam, 1 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.") - (before-line-breaking ,boolean? "Dummy property, used to trigger a callback function.") - (between-cols ,pair? "Where to attach a loose column to") - (bound-padding ,number? "The amount of padding to insert around spanner bounds.") - (bound-details ,list? "alist of properties for determining attachments of spanners to edges.") +when their direction is forced. It is a list, since the value is +different depending on the number of flags and beams.") + (beaming ,pair? "Pair of number lists. Each number list +specifies which beams to make. @code{0}@tie{}is the central beam, +@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.") + (before-line-breaking ,boolean? "Dummy property, used to trigger +a callback function.") + (between-cols ,pair? "Where to attach a loose column to.") + (bound-padding ,number? "The amount of padding to insert around +spanner bounds.") + (bound-details ,list? "An alist of properties for determining +attachments of spanners to edges.") (bracket-flare ,number-pair? "A pair of numbers specifying how -much edges of brackets should slant outward. Value 0.0 means straight -edges") - (breakable ,boolean? "Allow breaks here.") +much edges of brackets should slant outward. Value @code{0.0} means +straight edges.") + (bracket-visibility ,boolean-or-symbol? "This controls the +visibility of the tuplet bracket. Setting it to false prevents +printing of the bracket. Setting the property to @code{if-no-beam} +makes it print only if there is no beam associated with this tuplet +bracket.") (break-align-symbol ,symbol? "This key is used for aligning and spacing breakable items.") - (break-align-orders ,vector? " Defines the order in which -prefatory matter (clefs, key signatures) appears. The format is a -vector of length 3, where each element is one order for end-of-line, -middle of line, and start-of-line respectively. An order is a list of -symbols. + (break-align-orders ,vector? "Defines the order in which +prefatory matter (clefs, key signatures) appears. The format is a +vector of length@tie{}3, where each element is one order for +end-of-line, middle of line, and start-of-line, respectively. An +order is a list of symbols. For example, clefs are put after key signatures by setting @example - \\override Score.BreakAlignment #'break-align-orders = #(make-vector 3 - '(span-bar - breathing-sign - staff-bar - key - clef - time-signature)) +\\override Score.BreakAlignment #'break-align-orders = + #(make-vector 3 '(span-bar + breathing-sign + staff-bar + key + clef + time-signature)) @end example") (break-overshoot ,number-pair? "How much does a broken spanner stick out of its bounds?") - (bracket-visibility ,boolean-or-symbol? "This controls the -visibility of the tuplet bracket. Setting it to false will prevent -printing of the bracket. Setting the property to @code{'if-no-beam} -will make it print only if there is no beam associated with this -tuplet bracket.") - (break-visibility ,vector? "A vector of 3 booleans, #(end-of-line unbroken begin-of-line). -#t means visible, #f means killed.") + (break-visibility ,vector? "A vector of 3@tie{}booleans, +@code{#(@var{end-of-line} @var{unbroken} @var{begin-of-line})}. +@code{#t} means visible, @code{#f} means killed.") + (breakable ,boolean? "Allow breaks here.") + (c0-position ,integer? "An integer indicating the position of -middle C.") - (concaveness ,number? "A beam is concave when its inner stems are -closer to the beam than the two outside stems. This number is a -measure of the closeness of the inner stems. It is used for damping -the slope of the beam.") - (collapse-height ,ly:dimension? "Minimum height of system start delimiter. If equal or smaller, the bracket is removed.") +middle@tie{}C.") + (clip-edges ,boolean? "Allow outward pointing beamlets at the +edges of beams?") + (collapse-height ,ly:dimension? "Minimum height of system start +delimiter. If equal or smaller, the bracket is removed.") (color ,color? "The color of this grob.") - (control-points ,list? "List of offsets (number-pairs) that form -control points for the tie/slur/bracket shape. For beziers, this -should list the control points of a 3rd order bezier curve." ) - (connect-to-neighbor ,pair? "Pair of booleans, indicating whether this -grob looks as a continued break.") - (damping ,number? "Amount of beam slope damping. ") - (dash-period ,number? "the length of one dash + white space. If -negative, no line is drawn at all.") + (common-shortest-duration ,ly:moment? "The most common shortest +note length. This is used in spacing. Enlarging this sets the score +tighter.") + (concaveness ,number? "A beam is concave if its inner stems are +closer to the beam than the two outside stems. This number is a +measure of the closeness of the inner stems. It is used for damping +the slope of the beam.") + (connect-to-neighbor ,pair? "Pair of booleans, indicating whether +this grob looks as a continued break.") + (control-points ,list? "List of offsets (number pairs) that form +control points for the tie, slur, or bracket shape. For B@'eziers, +this should list the control points of a third-order B@'ezier curve.") + + (damping ,number? "Amount of beam slope damping.") (dash-fraction ,number? "Size of the dashes, relative to -dash-period. Should be between 0.0 (no line) and 1.0 (continuous -line).") - (default-direction ,ly:dir? "Direction determined by note head positions.") - (digit-names ,vector "Names for string finger digits. ") - (direction ,ly:dir? "If side-position is 1 (#X), then this property determines if the object is placed #LEFT, #CENTER or #RIGHT with respect to the other object. Otherwise, it determines if the object is placed #UP #CENTER or #DOWN. Numerical values may also be used. #UP=1, #DOWN=-1, #LEFT=-1, #RIGHT=1, CENTER=0 but also other numerical values are permitted.") +@code{dash-period}. Should be between @code{0.0} (no line) and +@code{1.0} (continuous line).") + (dash-period ,number? "The length of one dash together with +whitespace. If negative, no line is drawn at all.") + (default-direction ,ly:dir? "Direction determined by note head +positions.") + (digit-names ,vector "Names for string finger digits.") + (direction ,ly:dir? "If @code{side-axis} is @code{1} (or +@code{#X}), then this property determines whether the object is placed +@code{#LEFT}, @code{#CENTER} or @code{#RIGHT} with respect to the +other object. Otherwise, it determines whether the object is placed +@code{#UP}, @code{#CENTER} or #DOWN. Numerical values may also be +used: @code{#UP}=@code{1}, @code{#DOWN}=@code{-1}, +@code{#LEFT}=@code{-1}, @code{#RIGHT}=@code{1}, @code{CENTER}=@code{0} +but also other numerical values are permitted.") (dot-color ,symbol? "Color of dots. Options include @code{black} and @code{white}.") - (dot-radius ,number? "Radius of dots.") (dot-count ,integer? "The number of dots.") - (duration-log ,integer? "The 2-log of the note head duration, i.e. 0=whole note, 1 = half note, etc.") - (edge-height ,pair? "A pair of number specifying the heights of -the vertical edges '(@var{left-height} . @var{right-height}).") + (dot-radius ,number? "Radius of dots.") + (duration-log ,integer? "The 2-log of the note head duration, +i.e. @code{0} = whole note, @code{1} = half note, etc.") + + (eccentricity ,number? "How asymmetrical to make a slur. +Positive means move the center to the right.") + (edge-height ,pair? "A pair of numbers specifying the heights of +the vertical edges: @code{(@var{left-height} . @var{right-height})}.") (edge-text ,pair? "A pair specifying the texts to be set at the -edges '(@var{left-text} . @var{right-text}).") - (eccentricity ,number? "How asymmetrical to make a slur. Positive means move the center to the right.") - (expand-limit ,integer? "maximum number of measures expanded in church rests.") +edges: @code{(@var{left-text} . @var{right-text})}.") + (expand-limit ,integer? "Maximum number of measures expanded in +church rests.") + (extra-X-extent ,number-pair? "A grob is enlarged in +X@tie{}dimension by this much.") + (extra-Y-extent ,number-pair? "See @code{extra-X-extent}.") ;; remove me? (extra-dy ,number? "Slope glissandi this much extra.") - (extra-X-extent ,number-pair? "A grob is enlarged in X dimension -by this much.") - (extra-Y-extent ,number-pair? "See @code{extra-X-extent}.") - (extra-spacing-width ,number-pair? "In the horizontal spacing problem, we pad each item by this amount (by adding the car on the left side of the item and adding the cdr on the right side of the item). In order to make a grob take up no horizontal space at all, set this to (+inf.0 . -inf.0)") - (X-extent ,number-pair? "Hard coded extent in X direction. ") - (Y-extent ,number-pair? "See @code{X-extent}.") - (extra-offset ,number-pair? "A pair representing an offset. This + (extra-offset ,number-pair? "A pair representing an offset. This offset is added just before outputting the symbol, so the typesetting engine is completely oblivious to it.") - (finger-code ,symbol? "Code for the type of fingering indication in a -fret diagram. Options include @code{none}, @code{in-dot}, and @code{below-string}.") + (extra-spacing-width ,number-pair? "In the horizontal spacing +problem, we pad each item by this amount (by adding the @q{car} on the +left side of the item and adding the @q{cdr} on the right side of the +item). In order to make a grob take up no horizontal space at all, +set this to @code{(+inf.0 . -inf.0)}.") + + (finger-code ,symbol? "Code for the type of fingering indication +in a fret diagram. Options include @code{none}, @code{in-dot}, and +@code{below-string}.") (flag-count ,number? "The number of tremolo beams.") - (flag-style ,symbol? - "a string determining what style of flag-glyph is -typeset on a Stem. Valid options include @code{()} and -@code{mensural}. Additionally, @code{\"no-flag\"} switches off the + (flag-style ,symbol? "A string determining what style of flag +glyph is typeset on a @code{Stem}. Valid options include @code{()} +and @code{mensural}. Additionally, @code{no-flag} switches off the flag.") - (font-family ,symbol? "The font family is the broadest category for selecting text fonts. Options include: @code{sans}, @code{roman} ") (font-encoding ,symbol? "The font encoding is the broadest -category for selecting a font. Options include: @code{fetaMusic}, -@code{fetaNumber}, @code{TeX-text}, @code{TeX-math}, @code{fetaBraces}, -@code{fetaDynamic}") - (font-name ,string? "Specifies a file name (without extension) of -the font to load. This setting override selection using +category for selecting a font. Options include: @code{fetaMusic}, +@code{fetaNumber}, @code{TeX-text}, @code{TeX-math}, +@code{fetaBraces}, @code{fetaDynamic}.") + (font-family ,symbol? "The font family is the broadest category +for selecting text fonts. Options include: @code{sans}, +@code{roman}.") + (font-name ,string? "Specifies a file name (without extension) +of the font to load. This setting overrides selection using @code{font-family}, @code{font-series} and @code{font-shape}.") - (font-size ,number? "The font size, compared the `normal' -size. 0 is style-sheet's normal size, -1 is smaller, +1 is bigger. -Each step of 1 is approximately 12% larger, 6 steps are exactly a -factor 2 larger. Fractional values are allowed.") - (font-series ,symbol? "Select the series of a font. Choices + (font-series ,symbol? "Select the series of a font. Choices include @code{medium}, @code{bold}, @code{bold-narrow}, etc.") - (font-shape ,symbol? "Select the shape of a font. Choices include @code{upright}, -@code{italic}, @code{caps}.") - (forced ,boolean? "manually forced accidental") + (font-shape ,symbol? "Select the shape of a font. Choices +include @code{upright}, @code{italic}, @code{caps}.") + (font-size ,number? "The font size, compared to the @q{normal} +size. @code{0}@tie{}is style-sheet's normal size, @code{-1} is +smaller, @code{+1} is bigger. Each step of@tie{}1 is approximately +12% larger, 6@tie{}steps are exactly a factor@tie{}2 larger. +Fractional values are allowed.") (force-hshift ,number? "This specifies a manual shift for notes -in collisions. The unit is the note head width of the first voice +in collisions. The unit is the note head width of the first voice note. This is used by @internalsref{note-collision-interface}.") + (forced ,boolean? "Manually forced accidental.") (fraction ,number-pair? "Numerator and denominator of a time signature object.") (french-beaming ,boolean? "Use French beaming style for this -stem. The stem will stop at the innermost beams.") +stem. The stem stops at the innermost beams.") (fret-count ,integer? "The number of frets in a fret diagram.") ;; ugh: double, change. (full-size-change ,boolean? "Don't make a change clef smaller.") - (non-default ,boolean? "Set for manually specified clefs.") - (glyph ,string? "a string determining what (style) of glyph is -typeset. Valid choices depend on the function that is reading this -property.") + (gap ,ly:dimension? "Size of a gap in a variable symbol.") (gap-count ,integer? "Number of gapped beams for tremolo.") - (glyph-name-alist ,list? "Alist of key-string pairs.") + (glyph ,string? "A string determining what @q{style} of glyph is +typeset. Valid choices depend on the function that is reading this +property.") + (glyph-name-alist ,list? "An alist of key-string pairs.") (grow-direction ,ly:dir? "Crescendo or decrescendo?") - (hair-thickness ,number? "Thickness of the thin line in a bar line.") - (head-direction ,ly:dir? "Are the note heads left or right in a semitie?") - (height ,ly:dimension? "Height of an object in staff-space.") - (height-limit ,ly:dimension? "Maximum slur height: the longer the + + (hair-thickness ,number? "Thickness of the thin line in a bar +line.") + (head-direction ,ly:dir? "Are the note heads left or right in a +semitie?") + (height ,ly:dimension? "Height of an object in +@code{staff-space} units.") + (height-limit ,ly:dimension? "Maximum slur height: The longer the slur, the closer it is to this height.") (horizontal-shift ,integer? "An integer that identifies ranking -of note-column for horizontal shifting. This is used by +of @code{NoteColumn}s for horizontal shifting. This is used by @internalsref{note-collision-interface}.") - (avoid-slur ,symbol? "Method of handling slur collisions. -Choices are @code{around}, @code{inside}, @code{outside}. If unset, script -and slur ignore each other. @code{around} will only move the script if -there is a collision; @code{outside} will always move the script.") - (ignore-collision ,boolean? "If set, don't do note collision resolution on this NoteColumn.") - (infinite-spacing-height ,boolean? "If true, then for the purposes of -horizontal spacing, treat this item as though it were infinitely tall. That -is, no object from another column will be allowed to stick above or below this item.") - (inspect-quants ,number-pair? "If debugging is set, -set beam/slur quant to this position, and print the respective scores.") - (inspect-index ,integer? "If debugging is set, -set beam/slur configuration to this index, and print the respective scores.") + (horizontal-skylines ,ly:skyline-pair? "Two skylines, one to the +left and one to the right of this grob.") + + (ignore-collision ,boolean? "If set, don't do note collision +resolution on this @code{NoteColumn}.") (implicit ,boolean? "Is this an implicit bass figure?") - (keep-fixed-while-stretching ,boolean? "A grob with this property set to true will be fixed relative to the staff above it when systems are stretched.") + (infinite-spacing-height ,boolean? "If true, then for the +purposes of horizontal spacing, treat this item as though it were +infinitely tall. That is, no object from another column is allowed to +stick above or below this item.") + (inspect-index ,integer? "If debugging is set, set beam and slur +configuration to this index, and print the respective scores.") + (inspect-quants ,number-pair? "If debugging is set, +set beam and slur quants to this position, and print the respective +scores.") + + (keep-fixed-while-stretching ,boolean? "A grob with this property +set to true is fixed relative to the staff above it when systems are +stretched.") (keep-inside-line ,boolean? "If set, this column cannot have things sticking into the margin.") - (kern ,ly:dimension? "Amount of extra white space to add. For -bar line, this is the amount of space after a thick line.") + (kern ,ly:dimension? "Amount of extra white space to add. For +bar lines, this is the amount of space after a thick line.") (knee ,boolean? "Is this beam kneed?") (knee-spacing-correction ,number? "Factor for the optical -correction amount for kneed beams. Set between 0 for no correction and -1 for full correction.") - (label-dir ,ly:dir? "Side to which label is attached. @code{-1} for left, @code{1} for right.") - (layer ,number? "The output layer [0..2]: layers define the order -of printing objects. Objects in lower layers are overprinted by -objects in higher layers.") - (ledger-line-thickness ,number-pair? - "The thickness of ledger lines: it is the -sum of 2 numbers. The first is the factor for line thickness, and the -second for staff space. Both contributions are added.") - (left-bound-info ,list? "alist of properties for determining attachments of spanners to edges.") +correction amount for kneed beams. Set between @code{0} for no +correction and @code{1} for full correction.") + + (label-dir ,ly:dir? "Side to which a label is attached. +@code{-1} for left, @code{1}@tie{}for right.") + (layer ,number? "The output layer (a value between 0 and@tie{}2: +Layers define the order of printing objects. Objects in lower layers +are overprinted by objects in higher layers.") + (ledger-line-thickness ,number-pair? "The thickness of ledger +lines. It is the sum of 2@tie{}numbers: The first is the factor for +line thickness, and the second for staff space. Both contributions +are added.") + (left-bound-info ,list? "An alist of properties for determining +attachments of spanners to edges.") (left-padding ,ly:dimension? "The amount of space that is put -left to an object (eg. a group of accidentals).") +left to an object (e.g., a group of accidentals).") (length ,ly:dimension? "User override for the stem length of unbeamed stems.") - (length-fraction ,number? "Multiplier for lengths. Used for + (length-fraction ,number? "Multiplier for lengths. Used for determining ledger lines and stem lengths.") - (line-break-system-details ,list? - "Alist of properties to use when this -column is the start of a system.") + (line-break-penalty ,number? "Penalty for a line break at this +column. This affects the choices of the line breaker; it avoids a +line break at a column with a positive penalty and prefer a line break +at a column with a negative penalty.") + (line-break-permission ,symbol? "Instructs the line breaker on +whether to put a line break at this column. Can be @code{force} or +@code{allow}.") + (line-break-system-details ,list? "An alist of properties to use +if this column is the start of a system.") (line-count ,integer? "The number of staff lines.") (line-positions ,list? "Vertical positions of staff lines.") - (line-thickness ,number? "The thickness of the tie/slur contour.") - (long-text ,markup? "Text markup. See @usermanref{Text markup}.") + (line-thickness ,number? "The thickness of the tie or slur +contour.") + (long-text ,markup? "Text markup. See @usermanref{Text +markup}.") + (max-beam-connect ,integer? "Maximum number of beams to connect -to beams from this stem. Further beams are typeset as beamlets.") - (max-stretch ,number? "The maximum amount that this vertical-axis-group -can be vertically stretched (for example, in order to better fill a page).") - (measure-length ,ly:moment? "Length of a -measure. Used in some spacing situations.") +to beams from this stem. Further beams are typeset as beamlets.") + (max-stretch ,number? "The maximum amount that this +@code{VerticalAxisGroup} can be vertically stretched (for example, in +order to better fill a page).") (measure-count ,integer? "The number of measures for a -multimeasure rest.") - (merge-differently-headed ,boolean? "Merge -note heads in collisions, even if they have different note heads. The -smaller of the two heads will be rendered invisible. This used -polyphonic guitar notation. The value of this setting is used by -@internalsref{note-collision-interface} . -merge-differently-headed only applies to opposing stem dirs -(ie. Voice 1 & 2).") +multi-measure rest.") + (measure-length ,ly:moment? "Length of a measure. Used in some +spacing situations.") (merge-differently-dotted ,boolean? "Merge note heads in -collisions, even if they have a different number of dots. This normal -notation for some types of polyphonic music. -merge-differently-dotted only applies to opposing stem dirs -(ie. Voice 1 & 2).") - (minimum-length-fraction ,number? "Minimum length of ledger line as fraction of note head size.") +collisions, even if they have a different number of dots. This is +normal notation for some types of polyphonic music. + +@code{merge-differently-dotted} only applies to opposing stem +directions (i.e. voice 1 &@tie{}2).") + (merge-differently-headed ,boolean? "Merge note heads in +collisions, even if they have different note heads. The +smaller of the two heads is rendered invisible. This is used in +polyphonic guitar notation. The value of this setting is used by +@internalsref{note-collision-interface}. + +@code{merge-differently-headed} only applies to opposing stem +directions (i.e. voice 1 &@tie{}2).") + (minimum-X-extent ,number-pair? "Minimum size of an object in +X@tie{}dimension, measured in @code{staff-space} units.") + (minimum-Y-extent ,number-pair? "See @code{minimum-X-extent}.") (minimum-distance ,ly:dimension? "Minimum distance between rest and notes or beam.") - (minimum-X-extent ,number-pair? "Minimum size of an object in X -dimension, measured in staff space.") - (minimum-Y-extent ,number-pair? "See @code{minimum-X-extent}.") (minimum-length ,ly:dimension? "Try to make a spanner at least -this long. This requires an appropriate callback for the -@code{springs-and-rods} property. If added to a Tie, this sets the -minimum distance between noteheads.") +this long, normally in the horizontal direction. This requires an +appropriate callback for the @code{springs-and-rods} property. If +added to a @code{Tie}, this sets the minimum distance between +noteheads.") + (minimum-length-fraction ,number? "Minimum length of ledger line +as fraction of note head size.") (minimum-space ,ly:dimension? "Minimum distance that the victim should move (after padding).") + (neutral-direction ,ly:dir? "Which direction to take in the center of the staff.") (neutral-position ,number? "Position (in half staff spaces) where to flip the direction of custos stem.") - (next ,ly:grob? "Object that is next relation (eg. the lyric syllable following an extender.") - (note-names ,vector? "Vector of strings containing names for -easy-notation note heads.") - (no-ledgers ,boolean? "If set, don't draw ledger lines on this object.") + (next ,ly:grob? "Object that is next relation (e.g., the lyric +syllable following an extender.") + (no-ledgers ,boolean? "If set, don't draw ledger lines on this +object.") (no-stem-extend ,boolean? "If set, notes with ledger lines do not get stems extending to the middle staff line.") - (non-musical ,boolean? "True if the grob belongs in a NonMusicalPaperColumn.") + (non-default ,boolean? "Set for manually specified clefs.") + (non-musical ,boolean? "True if the grob belongs to a +@code{NonMusicalPaperColumn}.") + (note-names ,vector? "Vector of strings containing names for +easy-notation note heads.") (number-type ,symbol? "Type of numbers to use in label. Choices include @code{roman-lower}, @code{roman-upper}, and @code{arabic}.") - (outside-staff-horizontal-padding ,number? "By default, an outside-staff-object can be -placed so that is it very close to another grob horizontally. If this property is set, -the outside-staff-object will be raised so that it is not so close to its neighbour.") - (outside-staff-padding ,number? "The padding to place between this grob and the staff when -spacing according to outside-staff-priority.") - (outside-staff-priority ,number? "When set, the grob will be positioned outside the staff -in such a way as to avoid all collisions. In case of a potential collision, the grob with -the smaller outside-staff-priority will be closer to the staff.") + + (outside-staff-horizontal-padding ,number? "By default, an +outside-staff-object can be placed so that is it very close to another +grob horizontally. If this property is set, the outside-staff-object +is raised so that it is not so close to its neighbour.") + (outside-staff-padding ,number? "The padding to place between +this grob and the staff when spacing according to +@code{outside-staff-priority}.") + (outside-staff-priority ,number? "If set, the grob is positioned +outside the staff in such a way as to avoid all collisions. +In case of a potential collision, the grob with the smaller +@code{outside-staff-priority} is closer to the staff.") + (packed-spacing ,boolean? "If set, the notes are spaced as tightly as possible.") (padding ,ly:dimension? "Add this much extra space between objects that are next to each other.") - (page-break-permission ,symbol? "Instructs the page breaker on whether to -put a page break at this column. Can be 'force, or 'allow.") - (page-turn-permission ,symbol? "Instructs the page breaker on whether to -put a page turn at this column. Can be 'force, or 'allow.") - (line-break-permission ,symbol? "Instructs the line breaker on whether to -put a line break at this column. Can be 'force, or 'allow.") - (page-break-penalty ,number? "Penalty for page break at -this column. This affects the choices of the page breaker; it will avoid a page -break at a column with a positive penalty and prefer a page break at a column -with a negative penalty.") - (page-turn-penalty ,number? "Penalty for a page turn at this column. -This affects the choices of the page breaker; it will avoid a page -turn at a column with a positive penalty and prefer a page turn at a column -with a negative penalty.") + (page-break-penalty ,number? "Penalty for page break at this +column. This affects the choices of the page breaker; it avoids a +page break at a column with a positive penalty and prefer a page break +at a column with a negative penalty.") + (page-break-permission ,symbol? "Instructs the page breaker on +whether to put a page break at this column. Can be @code{force} or +@code{allow}.") + (page-turn-penalty ,number? "Penalty for a page turn at this +column. This affects the choices of the page breaker; it avoids a +page turn at a column with a positive penalty and prefer a page turn +at a column with a negative penalty.") + (page-turn-permission ,symbol? "Instructs the page breaker on +whether to put a page turn at this column. Can be @code{force} or +@code{allow}.") (parenthesized ,boolean? "Parenthesize this grob.") - (line-break-penalty ,number? "Penalty for a line break at this column. -This affects the choices of the line breaker; it will avoid a line -break at a column with a positive penalty and prefer a line break at a column -with a negative penalty.") - (positions ,pair? - "Pair of staff coordinates @code{(@var{left} -. @var{right})}, where both @var{left} and @var{right} are in the -staff-space unit of the current staff.") - (ratio ,number? "Parameter for slur shape. The higher this number, the -quicker the slur attains it @code{height-limit}.") + (positions ,pair? "Pair of staff coordinates @code{(@var{left} +. @var{right})}, where both @var{left} and @var{right} are in +@code{staff-space} units of the current staff.") + + (ratio ,number? "Parameter for slur shape. The higher this +number, the quicker the slur attains its @code{height-limit}.") (remove-empty ,boolean? "If set, remove group if it contains no -@code{interesting-items}") - (remove-first ,boolean? "Remove the first staff of a orchestral score?") - (restore-first ,boolean? "Print a natural before the accidental.") - (rhythmic-location ,rhythmic-location? "Where (bar number, measure position) in the score.") - (right-bound-info ,list? "alist of properties for determining attachments of spanners to edges.") - (right-padding ,ly:dimension? "Space to insert on the right side of an object (eg. between note and its accidentals.)") - (rotation ,list? "Number of degrees to rotate this object, and what point -to rotate around. #'(45 0 0) means rotate 45 degrees around the center of this object.") +interesting items.") + (remove-first ,boolean? "Remove the first staff of a orchestral +score?") + (restore-first ,boolean? "Print a natural before the +accidental.") + (rhythmic-location ,rhythmic-location? "Where (bar number, +measure position) in the score.") + (right-bound-info ,list? "An alist of properties for determining +attachments of spanners to edges.") + (right-padding ,ly:dimension? "Space to insert on the right side +of an object (e.g., between note and its accidentals).") + (rotation ,list? "Number of degrees to rotate this object, and +what point to rotate around. For example, @code{#'(45 0 0)} rotates +by 45 degrees around the center of this object.") + (same-direction-correction ,number? "Optical correction amount -for stems that are placed in tight configurations. This amount is used -for stems with the same direction to compensate for note-head to stem distance.") +for stems that are placed in tight configurations. This amount is +used for stems with the same direction to compensate for note-head to +stem distance.") (script-priority ,number? "A sorting key that determines in what order a script is within a stack of scripts.") (self-alignment-X ,number? "Specify alignment of an object. The -value -1 means left aligned, 0 centered, and 1 right-aligned in X -direction. Values in between may also be specified.") - (self-alignment-Y ,number? "like @code{self-alignment-X} but for -Y axis.") +value @code{-1} means left aligned, @code{0}@tie{}centered, and +@code{1}@tie{}right-aligned in X@tie{}direction. Values in-between +may also be specified.") + (self-alignment-Y ,number? "Like @code{self-alignment-X} but for +the Y@tie{}axis.") (shorten-pair ,number-pair? "The lengths to shorten a -text-spanner on both sides, for example a pedal bracket. Positive values -shorten the text-spanner, while negative values lengthen it.") - (clip-edges ,boolean? "Allow outward pointing beamlets at the edges of beams?") - (common-shortest-duration ,ly:moment? - "The most common shortest note length. -This is used in spacing. Enlarging this will set the score tighter.") +text-spanner on both sides, for example a pedal bracket. Positive +values shorten the text-spanner, while negative values lengthen it.") (shortest-duration-space ,ly:dimension? "Start with this much -space for the shortest duration. This is expressed in -@code{spacing-increment} as unit. See also +space for the shortest duration. This is expressed in +@code{spacing-increment} as unit. See also @internalsref{spacing-spanner-interface}.") - (shortest-playing-duration ,ly:moment? "The duration of the shortest playing here.") - (shortest-starter-duration ,ly:moment? "The duration of the shortest -note that starts here.") - (side-relative-direction ,ly:dir? - "Multiply direction of + (shortest-playing-duration ,ly:moment? "The duration of the +shortest playing here.") + (shortest-starter-duration ,ly:moment? "The duration of the +shortest note that starts here.") + (side-axis ,number? "If the value is @code{#X} (or +equivalently@tie{}@code{1}), the object is placed horizontally next +to the other object. If the value is @code{#Y} or@tie{}@code{0}, it +is placed vertically.") + (side-relative-direction ,ly:dir? "Multiply direction of @code{direction-source} with this to get the direction of this object.") - (side-axis ,number? "If the value is #X (or equivalently 1), the object is placed horizontally next to the other object. If the value is #Y or 0, it is placed vertically.") (size ,number? "Size of object, relative to standard size.") - (vertical-skylines ,ly:skyline-pair? "Two skylines, one above and one below this grob.") - (horizontal-skylines ,ly:skyline-pair? "Two skylines, one to the left and one to the right of this grob.") (slope ,number? "The slope of this object.") (slur-padding ,number? "Extra distance between slur and script.") (space-alist ,list? "A table that specifies distances between -prefatory items, like clef and time-signature. The format is an alist +prefatory items, like clef and time-signature. The format is an alist of spacing tuples: @code{(@var{break-align-symbol} @var{type} . @var{distance})}, where @var{type} can be the symbols @code{minimum-space} or @code{extra-space}.") (spacing-increment ,number? "Add this much space for a doubled -duration. Typically, the width of a note head. See also +duration. Typically, the width of a note head. See also @internalsref{spacing-spanner-interface}.") - (springs-and-rods ,boolean? "Dummy variable for triggering spacing routines.") + (springs-and-rods ,boolean? "Dummy variable for triggering +spacing routines.") (stacking-dir ,ly:dir? "Stack objects in which direction?") - (staff-padding ,ly:dimension? - "Maintain this much space between reference points -and the staff. Its effect is to align objects of differing -sizes (like the dynamic @b{p} and @b{f}) on their baselines.") + (staff-padding ,ly:dimension? "Maintain this much space between +reference points and the staff. Its effect is to align objects of +differing sizes (like the dynamic @b{p} and @b{f}) on their +baselines.") (staff-position ,number? "Vertical position, measured in half staff spaces, counted from the middle line.") (staff-space ,ly:dimension? "Amount of space between staff lines, -expressed in global staff-space.") - (stemlet-length ,number? "How long should a stem over a rest be?") - (stem-attachment ,number-pair? "A (@var{x} . @var{y}) pair where the stem attaches to the notehead.") - (stem-end-position ,number? "Where does the stem end (the end is opposite to the support-head.") +expressed in global @code{staff-space}.") + (stem-attachment ,number-pair? "A @code{(@var{x} . @var{y})} pair +where the stem attaches to the notehead.") + (stem-end-position ,number? "Where does the stem end (the end is +opposite to the support-head)?") ;;[TODO: doco] (stem-spacing-correction ,number? "Optical correction amount for -stems that are placed in tight configurations. For opposite +stems that are placed in tight configurations. For opposite directions, this amount is the correction for two normal sized stems that overlap completely.") + (stemlet-length ,number? "How long should a stem over a rest +be?") (stencil ,ly:stencil? "The symbol to print.") - (stencils ,list? "Multiple stencils, used as intermediate value.") + (stencils ,list? "Multiple stencils, used as intermediate +value.") + (strict-grace-spacing ,boolean? "If set, grace notes +are not spaced separately, but put before musical columns.") (strict-note-spacing ,boolean? "If set, unbroken columns with non-musical material (clefs, barlines, etc.) are not spaced separately, but put before musical columns.") - (strict-grace-spacing ,boolean? "If set, grace notes -are not spaced separately, but put before musical columns.") - (string-count ,integer? "The number of strings in a fret diagram.") - (string-fret-finger-combinations ,list? "List consisting of (string-number fret-number finger-number) entries.") - (stroke-style ,string? "set to \"grace\" to turn stroke through flag on.") + (string-count ,integer? "The number of strings in a fret +diagram.") + (string-fret-finger-combinations ,list? "List consisting of +@code{(@var{string-number} @var{fret-number} @var{finger-number})} +entries.") + (stroke-style ,string? "Set to @code{\"grace\"} to turn stroke +through flag on.") (style ,symbol? "This setting determines in what style a grob is -typeset. Valid choices depend on the @code{stencil} callback reading +typeset. Valid choices depend on the @code{stencil} callback reading this property.") + (text ,markup? "Text markup. See @usermanref{Text markup}.") ;;FIXME -- Should both be the same? (text-direction ,ly:dir? "This controls the ordering of the -words. The default RIGHT is for roman text. Arabic or hebrew should -use LEFT.") +words. The default @code{RIGHT} is for roman text. Arabic or Hebrew +should use @code{LEFT}.") (thick-thickness ,number? "Bar line thickness, measured in @code{line-thickness}.") (thickness ,number? "Line thickness, generally measured in @code{line-thickness}.") (thin-kern ,number? "The space after a hair-line in a bar line.") - (threshold ,number-pair? "(@var{min} . @var{max}), where + (threshold ,number-pair? "@code{(@var{min} . @var{max})}, where @var{min} and @var{max} are dimensions in staff space.") - (tie-configuration ,list? "List of (@var{position} . @var{dir}) -pairs, indicating the desired tie configuration where @var{position} is -the offset from the center of the -staff in staff space and @var{dir} indicates the direction of the tie -(1=>up, -1=>down, 0=>center). A non-pair entry in the list will cause -the corresponding tie to be formatted automatically.") + (tie-configuration ,list? "List of @code{(@var{position} . +@var{dir})} pairs, indicating the desired tie configuration, where +@var{position} is the offset from the center of the staff in staff +space and @var{dir} indicates the direction of the tie +(@code{1}=>up, @code{-1}=>down, @code{0}=>center). A non-pair entry +in the list causes the corresponding tie to be formatted +automatically.") (transparent ,boolean? "This makes the grob invisible.") - (uniform-stretching ,boolean? "If set, items stretch proportional -to their durations. This looks better in complex polyphonic patterns") - (used ,boolean? "If set, this spacing column is kept in the spacing problem") + + (uniform-stretching ,boolean? "If set, items stretch +proportionally to their durations. This looks better in complex +polyphonic patterns.") + (used ,boolean? "If set, this spacing column is kept in the +spacing problem") + + (vertical-skylines ,ly:skyline-pair? "Two skylines, one above and +one below this grob.") + (when ,ly:moment? "Global time step associated with this column happen?") - (word-space ,ly:dimension? "space to insert between words in texts.") - (width ,ly:dimension? "The width of a grob measured in staff space.") + (width ,ly:dimension? "The width of a grob measured in staff +space.") + (word-space ,ly:dimension? "Space to insert between words in +texts.") + (zigzag-length ,ly:dimension? "The length of the lines of a -zigzag, relative to @code{zigzag-width}. A value of 1 gives 60-degree -zigzags.") - (zigzag-width ,ly:dimension? "The width of one -zigzag-squiggle. This number will be adjusted slightly so that the -glissando line can be constructed from a whole number of squiggles.") +zigzag, relative to @code{zigzag-width}. A value of@tie{}@code{1} +gives 60-degree zigzags.") + (zigzag-width ,ly:dimension? "The width of one zigzag squiggle. +This number is adjusted slightly so that the glissando line can +be constructed from a whole number of squiggles.") ))) @@ -452,11 +558,10 @@ glissando line can be constructed from a whole number of squiggles.") (apply define-internal-grob-property x)) `( - ;;;;;;;;;;;;;;;; ;; grobs & grob arrays. (alphabetical) - (Y-common ,ly:grob? "See X-common") (X-common ,ly:grob? "Common refpoint for axis group.") + (Y-common ,ly:grob? "See @code{X-common}.") (cached-pure-extents ,vector? "Used by a VerticalAxisGroup to cache the Y-extents of different column ranges.") (axis-group-parent-X ,ly:grob? "Containing X axis group") (axis-group-parent-Y ,ly:grob? "Containing Y axis group") @@ -576,7 +681,7 @@ acts as an index for looking up a Stencil object.") (shorten ,ly:dimension? "The amount of space that a stem. Internally used to distribute beam shortening over stems. ") (skyline-distance ,number? "The distance between this staff and the next one, as determined by a skyline algorithm.") - (skyline-horizontal-padding ,number? "For determining the vertical distance between 2 staves, it is possible to have a configuration which would result in a tight interleaving of grobs from the top staff and the bottom staff. The larger this parameter is, the farther apart the staves will be placed in such a configuration.") + (skyline-horizontal-padding ,number? "For determining the vertical distance between 2 staves, it is possible to have a configuration which would result in a tight interleaving of grobs from the top staff and the bottom staff. The larger this parameter is, the farther apart the staves are placed in such a configuration.") (use-breve-rest ,boolean? "Use breve rests for measures longer than a whole rest.") diff --git a/scm/define-music-types.scm b/scm/define-music-types.scm index c421eefdf5..03ac6f83e3 100644 --- a/scm/define-music-types.scm +++ b/scm/define-music-types.scm @@ -126,7 +126,7 @@ Syntax: )) (ContextChange . ( - (description . "Change staffs in Piano staff. + (description . "Change staves in Piano staff. Syntax @code{\\translator Staff = @var{new-id}}.") (iterator-ctor . , ly:change-iterator::constructor) @@ -564,7 +564,7 @@ For example, transposed music.") (SkipMusic . ( (description . "Filler that takes up duration, does not print anything, and also -does not create staffs or voices implicitly. +does not create staves or voices implicitly. diff --git a/scm/documentation-generate.scm b/scm/documentation-generate.scm index b44fc12e0e..9c9e7acf03 100644 --- a/scm/documentation-generate.scm +++ b/scm/documentation-generate.scm @@ -64,68 +64,77 @@ @c NOTE: This is documentation-generate.scm, not macros.itexi + @ifhtml +@c ***** HTML ***** + @macro usermanref{NAME} @ref{\\NAME\\,,,lilypond} @cindex \\NAME\\ @end macro -@end ifhtml -@ifinfo -@macro usermanref{NAME} -@inforef{\\NAME\\,,,lilypond} +@macro glossaryref{NAME} +@ref{\\NAME\\,,,music-glossary} @cindex \\NAME\\ @end macro -@end ifinfo -@iftex -@macro usermanref{NAME} -@ref{\\NAME\\}@c +@macro inputfileref{DIR,NAME} +@uref{source/\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c @end macro -@end iftex -@ifhtml -@macro glossaryref{NAME} -@ref{\\NAME\\,,,music-glossary} -@cindex \\NAME\\ +@macro q{TEXT} +@html +‘\\TEXT\\’ +@end html @end macro @end ifhtml + @ifinfo +@c ***** info ***** + +@macro usermanref{NAME} +@inforef{\\NAME\\,,,lilypond} +@cindex \\NAME\\ +@end macro + @macro glossaryref{NAME} @inforef{\\NAME\\,,lilypond/music-glossary} @cindex \\NAME\\ @end macro -@end ifinfo - -@macro internalsref{NAME} -@ref{\\NAME\\} +@macro inputfileref{DIR,NAME} +@file{\\DIR\\/\\NAME\\} @end macro -@ifhtml - -@macro inputfileref{DIR,NAME} -@uref{source/\\DIR\\/out-www/collated-files.html#\\NAME\\,@file{\\DIR\\/\\NAME\\}}@c +@macro q{TEXT} +`\\TEXT\\' @end macro +@end ifinfo -@end ifhtml -@ifinfo +@iftex +@c ***** TeX ***** -@macro inputfileref{DIR,NAME} -@file{\\DIR\\/\\NAME\\} +@macro usermanref{NAME} +@ref{\\NAME\\}@c @end macro -@end ifinfo - -@iftex @macro inputfileref{DIR,NAME}@c @file{\\DIR\\/\\NAME\\}@c @end macro + +@macro q{TEXT} +`\\TEXT\\' +@end macro @end iftex +@macro internalsref{NAME} +@ref{\\NAME\\} +@end macro + + @ignore @omftitle LilyPond internals @omfcreator Han-Wen Nienhuys and Jan Nieuwenhuizen