]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/user/basic-notation.itely
Begin Trevor's spacing chapter rewrite.
[lilypond.git] / Documentation / user / basic-notation.itely
index da60b0e06cc876bc33edbfe50d74a0d53935c4be..06ac1b5580f52f2a41656638561204d54c74660c 100644 (file)
@@ -752,8 +752,6 @@ the next note
 Program reference: @internalsref{TupletBracket},
 @internalsref{TupletNumber}, and @internalsref{TimeScaledMusic}.
 
-Examples: @inputfileref{input/@/regression,tuplet@/-nest@/.ly}.
-
 
 
 @node Scaling durations
@@ -877,10 +875,6 @@ rests.
 
 @seealso
 
-Examples: @inputfileref{input/@/regression,completion@/-heads@/.ly}.
-
-@noindent
-
 Program reference: @internalsref{Completion_heads_engraver}.
 
 
@@ -1019,6 +1013,7 @@ to the note immediately preceding it.
 @code{noteD} is relative to @code{noteC}, not @code{noteB} or
 @code{noteA}.
 
+
 @node Explicitly instantiating voices
 @subsection Explicitly instantiating voices
 
@@ -1121,13 +1116,29 @@ the music.
 }
 @end lilypond
 
+In some instances of complex polyphonic music, you may need additional
+voices to avoid collisions between notes.  Additional voices are added
+by defining an identifier, as shown below:
+
+@lilypond[quote,verbatim,ragged-right,relative=2]
+voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)
+
+\relative c''' <<
+  { \voiceOne g4 ~  \stemDown g32[ f( es d c b a b64 )g] } \\
+  { \voiceThree  b4} \\
+  { \voiceFive d,} \\
+  { \voiceTwo g,}
+>>
+@end lilypond
+
 
 @node Collision Resolution
 @subsection Collision Resolution
 
 Normally, note heads with a different number of dots are not merged, but
 when the object property @code{merge-differently-dotted} is set in
-the @internalsref{NoteCollision} object, they are merged
+the @internalsref{NoteCollision} object, they are merged:
+
 @lilypond[quote,verbatim,fragment,ragged-right,relative=2]
 \new Voice << {
   g8 g8
@@ -1138,7 +1149,8 @@ the @internalsref{NoteCollision} object, they are merged
 @end lilypond
 
 Similarly, you can merge half note heads with eighth notes, by setting
-@code{merge-differently-headed}
+@code{merge-differently-headed}:
+
 @lilypond[quote,ragged-right,fragment,relative=2,verbatim]
 \new Voice << {
   c8 c4.
@@ -1158,6 +1170,30 @@ for example
 \new Voice << c''4 \\ r4 >>
 @end lilypond
 
+If three or more notes line up in the same column,
+@code{merge-differently-headed} cannot
+successfully complete the merge of the two notes that should be merged.
+To allow the merge to work properly, apply a @code{\shift} to the note that
+should not be merged.  In the first measure of following example,
+@code{merge-differently-headed} does not work (the half-note head is
+solid).  In the second measure, @code{\shiftOn} is applied to move the
+top @code{g} out of the column, and @code{merge-differently-headed}
+works properly.
+
+@lilypond[quote,ragged-right,fragment,verbatim,relative=2]
+\override Staff.NoteCollision #'merge-differently-headed = ##t
+<<
+  { d=''2 g2 } \\
+  { \oneVoice d=''8 c8 r4 e,8 c'8 r4 } \\
+  { \voiceFour e,,2 e'2}
+>>
+<<
+  { d'=''2 \shiftOn g2 } \\ 
+  { \oneVoice d=''8 c8 r4 e,8 c'8 r4 } \\
+  { \voiceFour e,,2 e'2}
+>>
+@end lilypond
+
 
 @refcommands
 
@@ -1179,8 +1215,9 @@ for example
 @funindex \shiftOnnn
 @code{\shiftOnnn},
 @funindex \shiftOff
-@code{\shiftOff}: these commands specify in what chords of the current
-voice should be shifted.  The outer voices (normally: voice one and
+@code{\shiftOff}: these commands specify the
+degree to which chords of the current voice should be shifted.
+The outer voices (normally: voice one and
 two) have @code{\shiftOff}, while the inner voices (three and four)
 have @code{\shiftOn}.  @code{\shiftOnn} and @code{\shiftOnnn} define
 further shift levels.
@@ -1207,13 +1244,6 @@ be used to override typesetting decisions.
 Program reference: the objects responsible for resolving collisions are
 @internalsref{NoteCollision} and @internalsref{RestCollision}.
 
-Examples:
-@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}, and
-@inputfileref{input/@/regression,collisions@/.ly}.
-
 
 @refbugs
 
@@ -1822,7 +1852,7 @@ Program reference: @internalsref{StaffSymbol}.
 Examples: @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
@@ -2014,12 +2044,6 @@ In this manual: @ref{Automatic note splitting}.
 
 Program reference: @internalsref{Tie}.
 
-Examples:
-@inputfileref{input/@/regression,tie-arpeggio.ly}
-@inputfileref{input/@/regression,tie-manual.ly}
-
-
-
 
 @refbugs
 
@@ -2148,7 +2172,7 @@ Program reference:
 @internalsref{LaissezVibrerTieColumn}
 
 Example files:
-@inputfileref{input/regression,laissez-vibrer-tie.ly}
+@lsr{connecting,laissez-vibrer-ties.ly}
 
 
 @node Automatic beams
@@ -2236,9 +2260,10 @@ For more information about @code{make-moment}, see
 @ref{Time administration}.
 
 Line breaks are normally forbidden when beams cross bar lines.  This
-behavior can be changed by setting @code{allowBeamBreak}.
+behavior can be changed by setting @code{breakable}.
+
+@funindex breakable
 
-@funindex allowBeamBreak
 @cindex beams and line breaks
 @cindex beams, kneed
 @cindex kneed beams
@@ -2636,7 +2661,7 @@ very close to note heads in monophonic music,
 
 Program reference: @internalsref{Fingering}.
 
-Examples: @inputfileref{input/@/regression,finger@/-chords@/.ly}.
+Examples: @lsr{expressive,fingering-chords.ly}
 
 
 @node Dynamics
@@ -2831,7 +2856,7 @@ d4
 
 Program reference: @internalsref{BreathingSign}.
 
-Examples: @inputfileref{input/@/regression,breathing@/-sign@/.ly}.
+Examples: @lsr{expressive,breathing-sign.ly}
 
 
 @node Trills
@@ -2897,7 +2922,9 @@ c2\glissando c,
 
 Program reference: @internalsref{Glissando}.
 
-Example files: @file{input/@/regression/@/glissando@/.ly}.
+Example files:
+@lsr{expressive,glissando.ly}, @lsr{expressive,line-styles.ly}
+
 
 
 @refbugs
@@ -3136,7 +3163,9 @@ Examples:
 
 Brackets for the repeat are normally only printed over the topmost
 staff.  This can be adjusted by setting the @code{voltaOnThisStaff}
-property; see @inputfileref{input/@/regression,volta@/-multi@/-staff@/.ly}.
+property; see
+
+@lsr{repeats,volta@/-multi@/-staff@/.ly}.
 
 
 @refbugs
@@ -3280,9 +3309,6 @@ In this manual: @ref{Tremolo subdivisions}, @ref{Repeats}.
 
 Program reference: @internalsref{Beam}, @internalsref{StemTremolo}.
 
-Example files: @inputfileref{input/@/regression,chord@/-tremolo@/.ly},
-@inputfileref{input/@/regression,stem@/-tremolo@/.ly}.
-
 
 @node Tremolo subdivisions
 @subsection Tremolo subdivisions