From 606126f9710956cdc6cd48ab55eef7028d7651c3 Mon Sep 17 00:00:00 2001 From: gpercival Date: Fri, 15 Jul 2005 21:27:49 +0000 Subject: [PATCH] Backported stuff. --- ChangeLog | 4 + Documentation/user/advanced-notation.itely | 150 +++++++++++++-------- Documentation/user/changing-defaults.itely | 7 +- Documentation/user/converters.itely | 4 +- Documentation/user/examples.itely | 4 +- Documentation/user/global.itely | 19 ++- Documentation/user/lilypond-book.itely | 1 + Documentation/user/tutorial.itely | 4 +- 8 files changed, 121 insertions(+), 72 deletions(-) diff --git a/ChangeLog b/ChangeLog index 68f66c68e4..d438835b6d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2005-07-15 Graham Percuval + + * Documentation/user/ : backported stuff. + 2005-07-11 Han-Wen Nienhuys * Documentation/user/tutorial.itely (Running LilyPond for the diff --git a/Documentation/user/advanced-notation.itely b/Documentation/user/advanced-notation.itely index 76d6314f24..21774cba71 100644 --- a/Documentation/user/advanced-notation.itely +++ b/Documentation/user/advanced-notation.itely @@ -2243,40 +2243,104 @@ problematic notes. In normal time signatures, automatic beams can start on any note but can only end in a few positions within the measure: beams can end on a beat, or at durations specified by the properties in -@code{autoBeamSettings}. The defaults for @code{autoBeamSettings} -are defined in @file{scm/@/auto@/-beam@/.scm}. +@code{autoBeamSettings}. The properties in @code{autoBeamSettings} +consist of a list of rules for where beams can begin and end. The +default @code{autoBeamSettings} rules are defined in +@file{scm/@/auto@/-beam@/.scm}. -The value of @code{autoBeamSettings} is changed with three functions, +In order to add a rule to the list, use @example -#(override-auto-beam-setting - '(@var{be} @var{p} @var{q} @var{n} @var{m}) @var{a} @var{b} - [@var{context}]) -#(score-override-auto-beam-setting - '(@var{be} @var{p} @var{q} @var{n} @var{m}) @var{a} @var{b}) -#(revert-auto-beam-setting '(@var{be} @var{p} @var{q} @var{n} @var{m}) - [@var{context}]) +#(override-auto-beam-setting '(be p q n m) a b [context]) @end example -Here, @var{be} is the symbol @code{begin} or @code{end}, and -@var{context} is an optional context (default: @code{'Voice}). It -determines whether the rule applies to begin or end-points. The -quantity @var{p}/@var{q} refers to the length of the beamed notes (and -`@code{* *}' designates notes of any length), @var{n}/@var{M} refers -to a time signature (wildcards `@code{* *}' may be entered to -designate all time signatures), @var{a}/@var{b} is a duration. By -default, this command changes settings for the current voice. It is -also possible to adjust settings at higher contexts, by adding a -@var{context} argument. @code{score-override-auto-beam-setting} is -equal to @code{override-auto-beam-setting} with the argument -@var{context} set to @code{'Score}. - -For example, if automatic beams should end on the first quarter note, use -the following + +@itemize @bullet + +@item @code{be} is either "begin" or "end". + +@item @code{b/q} is the duration of the note for which you want +to add a rule. A beam is considered to have the duration of its +shortest note. Set @code{p} and @code{q} to @code{'*'} to +have this apply to any beam. + +@item @code{n/m} is the position in the time signature to which +this rule should apply. Set @code{n} and @code{m} to @code{'*'} +to have this apply in any time signature. + +@item @code{a/b} is the position in the bar at which the beam should end. + +@item @code{context} is optional, and it specifies the context at which +the change should be made. The default is @code{'Voice}. +@code{#(score-override-auto-beam-setting '(A B C D) E F)} is equivalent to +@code{#(override-auto-beam-setting '(A B C D) E F 'Score)}. + +@end itemize + +For example, if automatic beams should always end on the first quarter +node, use + @example -#(override-auto-beam-setting '(end * * * *) 1 4 'Staff) +#(override-auto-beam-setting '(end * * * *) 1 4) +@end example + +You can force the beam settings to only take effect on beams whose shortest +note is a certain duration + +@lilypond[quote,fragment,raggedright,verbatim,relative=2] +\time 2/4 +#(override-auto-beam-setting '(end 1 16 * *) 1 16) +a16 a a a a a a a | +a32 a a a a16 a a a a a | +#(override-auto-beam-setting '(end 1 32 * *) 1 16) +a32 a a a a16 a a a a a | +@end lilypond + +You can force the beam settings to only take effect in certain time +signatures + +@lilypond[quote,fragment,raggedright,verbatim,relative=2] +\time 5/8 +#(override-auto-beam-setting '(end * * 5 8) 2 8) +c8 c d d d +\time 4/4 +e8 e f f e e d d +\time 5/8 +c8 c d d d +@end lilypond + +You can also remove a previously set beam-ending rule by using + +@example +#(revert-auto-beam-setting '(be p q n m) a b [context]) @end example -Since the duration of a quarter note is 1/4 of a whole note, it is -entered as @code{(ly:make-moment 1 4)}. +@noindent +be, p, q, n, m, a, b and context are the same as above. Note that the +default rules are specified in @file{scm/@/auto@/-beam@/.scm}, +so you can revert rules that you did not explicitly create. + +@lilypond[quote,fragment,raggedright,verbatim,relative=2] +\time 4/4 +a16 a a a a a a a a a a a a a a a +#(revert-auto-beam-setting '(end 1 16 4 4) 1 4) +a16 a a a a a a a a a a a a a a a +@end lilypond + +The rule in a revert-auto-beam-setting statement must exactly match the +original rule. That is, no wildcard expansion is taken into account. + +@lilypond[quote,fragment,raggedright,verbatim,relative=2] +\time 1/4 +#(override-auto-beam-setting '(end 1 16 1 4) 1 8) +a16 a a a +#(revert-auto-beam-setting '(end 1 16 * *) 1 8) % this won't revert it! +a a a a +#(revert-auto-beam-setting '(end 1 16 1 4) 1 8) % this will +a a a a +@end lilypond + + + +@c TODO: old material -- not covered by above stuff, I think. If automatic beams should end on every quarter in 5/4 time, specify all endings @example @@ -2298,40 +2362,14 @@ In 4/4 time signature, this means that automatic beams could end only on 3/8 and on the fourth beat of the measure (after 3/4, that is 2 times 3/8, has passed within the measure). -Rules can also be restricted to specific time signatures. A rule that -should only be applied in @var{N}/@var{M} time signature is formed by -replacing the second asterisks by @var{N} and @var{M}. For example, a -rule for 6/8 time exclusively looks like -@example -#(override-auto-beam-setting '(begin * * 6 8) @dots{}) -@end example - -If a rule should be to applied only to certain types of beams, use the -first pair of asterisks. Beams are classified according to the -shortest note they contain. For a beam ending rule that only applies -to beams with 32nd notes (and no shorter notes), use @code{(end 1 32 * -*)}. - -For example, - -@lilypond[quote,raggedright,relative=2,fragment,verbatim] -\time 5/8 -#(override-auto-beam-setting '(end * * 5 8) 2 8) -c8 c d d d -\time 4/4 -e8 e f f e e d d -\time 5/8 -c8 c d d d -@end lilypond - @cindex automatic beam generation @cindex autobeam @cindex @code{autoBeaming} @cindex lyrics If beams are used to indicate melismata in songs, then automatic -beaming should be switched off. This is done by setting -@code{autoBeaming} to @code{#f}. +beaming should be switched off with @code{\autoBeamOff}. + @refcommands diff --git a/Documentation/user/changing-defaults.itely b/Documentation/user/changing-defaults.itely index 491f74b226..58ae5e1833 100644 --- a/Documentation/user/changing-defaults.itely +++ b/Documentation/user/changing-defaults.itely @@ -1065,15 +1065,14 @@ tuned. @cindex interface, layout @cindex layout interface +@cindex grob The HTML page that we found in the previous section, describes the layout object called @internalsref{Fingering}. Such an object is a symbol within the score. It has properties that store numbers (like thicknesses and directions), but also pointers to related objects. A -layout object is also called @emph{grob}, -@cindex grob -which is short for Graphical Object. - +layout object is also called a @emph{Grob}, which is short for Graphical +Object. For more details about Grobs, see @internalsref{grob-interface}. The page for @code{Fingering} lists the definitions for the @code{Fingering} object. For example, the page says diff --git a/Documentation/user/converters.itely b/Documentation/user/converters.itely index f2e852e0c6..5de5b53399 100644 --- a/Documentation/user/converters.itely +++ b/Documentation/user/converters.itely @@ -264,10 +264,10 @@ These tools include @uref{http://@/www@/.nongnu@/.org/@/xml2ly/, xml2ly}, which imports @uref{http://@/www@/.musicxml@/.com/xml@/.html,MusicXML} @item -@uref{http://@/rnvs@/.informatik@/.tu@/-chemnitz@/.de/@/~jan/@/noteedit/@/noteedit@/.html,NoteEdit} +@uref{http://@/noteedit@/.berlios@/.de,NoteEdit} which imports @uref{http://@/www@/.musicxml@/.com/xml@/.html,MusicXML} @item -@uref{http://@/www@/.all@/-day@/-breakfast@/.com/@/rosegarden/,Rosegarden}, +@uref{http://@/www@/.rosegardenmusic@/.com,Rosegarden}, which imports MIDI @end itemize diff --git a/Documentation/user/examples.itely b/Documentation/user/examples.itely index f941f6efae..df4ed86b4e 100644 --- a/Documentation/user/examples.itely +++ b/Documentation/user/examples.itely @@ -1273,19 +1273,19 @@ violin concerto as TchaikovskyPI, whereas perhaps you wish to print } \score { + { c'4 } \header { piece = "piece1" opus = "opus1" } - { c'4 } } \score { + { c'4 } \header { piece = "piece2" opus = "opus2" } - { c'4 } } @end lilypond diff --git a/Documentation/user/global.itely b/Documentation/user/global.itely index eb3d9cbe8d..807f205cca 100644 --- a/Documentation/user/global.itely +++ b/Documentation/user/global.itely @@ -464,7 +464,7 @@ considered to have systems, so setting @code{betweensystemspace} will be much more useful than changing @code{minimumVerticalExtent}. @example -\layout @{ +\paper @{ betweensystemspace = 10\mm @} @end example @@ -867,14 +867,23 @@ Name of the opus, flush-right below the composer. Name of the arranger, flush-right below the opus. @item instrument -Name of the instrument, centered below the arranger. +Name of the instrument, centered below the arranger. Also +centered at the top of pages (other than the first page). @item piece Name of the piece, flush-left below the instrument. @cindex page breaks, forcing @item breakbefore - This forces the title to start on a new page (set to ##t or ##f). +This forces the title to start on a new page (set to ##t or ##f). + +@item copyright +Copyright notice, centered at the bottom of the first page. To +insert the copyright symbol, see @ref{Text encoding}. + +@item tagline +Centered at the bottom of the last page. + @end table Here is a demonstration of the fields available. Note that you @@ -903,21 +912,21 @@ may use any @ref{Text markup} commands in the header. } \score { + { c'1 } \header { piece = "piece1" opus = "opus1" } - { c'1 } } \markup { and now... } \score { + { c'1 } \header { piece = "piece2" opus = "opus2" } - { c'1 } } } @end lilypond diff --git a/Documentation/user/lilypond-book.itely b/Documentation/user/lilypond-book.itely index 133db578cb..dc63a7236e 100644 --- a/Documentation/user/lilypond-book.itely +++ b/Documentation/user/lilypond-book.itely @@ -62,6 +62,7 @@ text, so we will not comment on it further. @quotation @verbatim \documentclass[a4paper]{article} +\usepackage{graphics} \begin{document} Documents for @command{lilypond-book} may freely mix music and text. diff --git a/Documentation/user/tutorial.itely b/Documentation/user/tutorial.itely index e1b419da66..f5f30ec593 100644 --- a/Documentation/user/tutorial.itely +++ b/Documentation/user/tutorial.itely @@ -264,9 +264,7 @@ Parsing... Interpreting music... [1] Preprocessing graphical objects... Calculating line breaks... [2] -Layout output to `test.tex'... -Converting to `test.dvi'... -Converting to `test.ps'... +Layout output to `test.ps'... Converting to `test.pdf'... @end example -- 2.39.5