]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/notation/keyboards.itely
Issue 3951: Fix broken LSR links in docs.
[lilypond.git] / Documentation / notation / keyboards.itely
index c93abe76b0b7a2141b2478537090f4d31ae03d00..4ee9cee885fa999787bc848381a0dfd62dfc8657 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.13.36"
+@c \version "2.17.6"
 
 @node Keyboard and other multi-staff instruments
 @section Keyboard and other multi-staff instruments
@@ -110,9 +110,9 @@ as shown in @rlearning{Other uses for tweaks}.
 @end itemize
 
 @c @snippets
-@c @lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+@c @lilypondfile[verbatim,quote,texidoc,doctitle]
 @c {forcing-visibility-of-systems-with-multi-bar-rests-when-using-\RemoveEmptyStaffContext.ly}
-@c http://lsr.dsi.unimi.it/LSR/Item?u=1&id=312
+@c http://lsr.di.unimi.it/LSR/Item?u=1&id=312
 
 @seealso
 Learning Manual:
@@ -137,6 +137,7 @@ Internals Reference:
 Snippets:
 @rlsr{Keyboards}.
 
+
 @node Changing staff manually
 @unnumberedsubsubsec Changing staff manually
 
@@ -195,6 +196,42 @@ center of the staff that is closest to the beam.  For a simple
 example of beam tweaking, see @rlearning{Fixing overlapping
 notation}.
 
+@cindex cross-staff collisions
+@cindex collisions, cross-staff voices
+
+Overlapping notation can result when voices cross staves:
+
+@lilypond[verbatim,quote]
+\new PianoStaff <<
+  \new Staff = "up" {
+    \voiceOne
+    % Make space for fingering in the cross-staff voice
+    \once\override DynamicLineSpanner.staff-padding = #4
+    e''2\p\< d''\>
+    c''1\!
+  }
+  \new Staff = "down" <<
+    {
+      \clef bass
+      s4. e,8\rest g,2\rest
+      c1
+    } \\ {
+      c8\( g c'
+      \change Staff = "up"
+      e' g' b'-3 a' g'\)
+      f'1
+    }
+  >>
+>>
+@end lilypond
+
+The stem and slur overlap the intervening line of dynamics
+because automatic collision resolution is suspended for beams, slurs
+and other spanners that connect notes on different staves,
+as well as for stems and articulations if their placement is
+affected by a cross-staff spanner.
+The resulting collisions must be resolved manually, where necessary,
+using the methods in @rlearning{Fixing overlapping notation}.
 
 @seealso
 Learning Manual:
@@ -212,6 +249,10 @@ Internals Reference:
 @rinternals{Beam},
 @rinternals{ContextChange}.
 
+@knownissues
+Beam collision avoidance does not work for automatic beams that end
+right before a change in staff.  In this case use manual beams.
+
 
 @node Changing staff automatically
 @unnumberedsubsubsec Changing staff automatically
@@ -287,7 +328,6 @@ key signature in the lower staff:
 >>
 @end lilypond
 
-
 @seealso
 Notation Reference:
 @ref{Changing staff manually}.
@@ -300,7 +340,6 @@ Internals Reference:
 
 
 @knownissues
-
 @cindex chords, splitting across staves with \autochange
 
 The staff switches may not end up in optimal places.  For high
@@ -309,6 +348,7 @@ quality output, staff switches should be specified manually.
 Chords will not be split across the staves; they will be assigned to a
 staff based on the first note named in the chord construct.
 
+
 @node Staff-change lines
 @unnumberedsubsubsec Staff-change lines
 
@@ -354,7 +394,6 @@ notes can be printed automatically:
 @code{\hideStaffSwitch}.
 @endpredefined
 
-
 @seealso
 Snippets:
 @rlsr{Keyboards}.
@@ -378,46 +417,26 @@ Internals Reference:
 @cindex cross staff chords
 
 @funindex Stem
-@funindex cross-staff
-@funindex length
-@funindex flag-style
+@funindex \crossStaff
+@funindex \autoBeamOff
+@funindex Span_stem_engraver
 
-Chords that cross staves may be produced:
+Chords that cross staves may be produced using the
+@code{Span_stem_engraver}. Care must be taken to ensure that
+automatic beams do not beam the notes on one staff when it’s not
+required on the other.
 
-@lilypond[verbatim,quote]
-\new PianoStaff <<
-  \new Staff {
-    \relative c' {
-      f8 e4 d8 d f e4
-    }
-  }
-  \new Staff {
-    \relative c' {
-      << {
-        \clef bass
-        % stems may overlap the other staff
-        \override Stem #'cross-staff = ##t
-        % extend the stems to reach the other staff
-        \override Stem #'length = #12
-        % do not print extra flags
-        \override Stem #'flag-style = #'no-flag
-        % prevent beaming as needed
-        a8 g4 f8 f bes\noBeam g4
-      }
-      \\
-      {
-        f,2 bes4 c
-      } >>
-    }
-  }
->>
-@end lilypond
+@lilypondfile[verbatim,quote]
+{cross-staff-stems.ly}
+
+For the time being, this engraver can not be specified by its name in
+double quotes, but rather prefixing its name with a hash symbol
+@code{#}, due to the way it is implemented.
 
 @snippets
-@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+@lilypondfile[verbatim,quote,texidoc,doctitle]
 {indicating-cross-staff-chords-with-arpeggio-bracket.ly}
 
-
 @seealso
 Snippets:
 @rlsr{Keyboards}.
@@ -560,9 +579,8 @@ come into use to simplify the performance instructions.
 
 @snippets
 
-@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-{accordion-discant-symbols.ly}
-
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{accordion-registers.ly}
 
 @seealso
 Snippets:
@@ -607,6 +625,7 @@ Notation Reference:
 @ref{Arpeggio},
 @ref{Harmonics}.
 
+
 @node Harp pedals
 @unnumberedsubsubsec Harp pedals