]> 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 d073804d2b7ec537e013bef59422e6134f99cc31..4ee9cee885fa999787bc848381a0dfd62dfc8657 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.12.0"
+@c \version "2.17.6"
 
 @node Keyboard and other multi-staff instruments
 @section Keyboard and other multi-staff instruments
@@ -51,6 +51,10 @@ keyboard instruments.
 @cindex staves, keyed instruments
 @cindex keyboard instrument staves
 @cindex keyed instrument staves
+@cindex keyboard music, centering dynamics
+@cindex dynamics, centered in keyboard music
+@cindex piano music, centering dynamics
+@cindex centered dynamics in piano music
 
 @funindex PianoStaff
 
@@ -76,6 +80,11 @@ number of voices may change regularly; this is described in
 @item Keyboard music can be written in parallel, as described in
 @ref{Writing music in parallel}.
 
+@item Dynamics may be placed in a @code{Dynamics} context,
+between the two @code{Staff} contexts
+to align the dynamic marks on a horizontal line
+centered between the staves; see @ref{Dynamics}.
+
 @item Fingerings are indicated with @ref{Fingering instructions}.
 
 @item Organ pedal indications are inserted as articulations, see
@@ -101,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:
@@ -129,20 +138,6 @@ Snippets:
 @rlsr{Keyboards}.
 
 
-@knownissues
-
-@cindex keyboard music, centering dynamics
-@cindex dynamics, centered in keyboard music
-@cindex piano music, centering dynamics
-@cindex centered dynamics in piano music
-@funindex staff-padding
-
-Dynamics are not automatically centered, but workarounds do exist.  One
-option is the @q{piano centered dynamics} template under
-@rlearning{Piano templates}; another option is to increase the
-@code{staff-padding} of dynamics as discussed in @rlearning{Moving
-objects}.
-
 @node Changing staff manually
 @unnumberedsubsubsec Changing staff manually
 
@@ -201,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:
@@ -218,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
@@ -293,7 +328,6 @@ key signature in the lower staff:
 >>
 @end lilypond
 
-
 @seealso
 Notation Reference:
 @ref{Changing staff manually}.
@@ -306,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
@@ -315,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
 
@@ -360,7 +394,6 @@ notes can be printed automatically:
 @code{\hideStaffSwitch}.
 @endpredefined
 
-
 @seealso
 Snippets:
 @rlsr{Keyboards}.
@@ -384,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}.
@@ -514,6 +527,8 @@ The placement of the pedal commands matches the physical movement of the
 sustain pedal during piano performance.  Pedalling to the final bar line
 is indicated by omitting the final pedal off command.
 
+Pedal indications may be placed in a @code{Dynamics} context,
+which aligns them on a horizontal line.
 
 @seealso
 Notation Reference:
@@ -564,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:
@@ -611,6 +625,7 @@ Notation Reference:
 @ref{Arpeggio},
 @ref{Harmonics}.
 
+
 @node Harp pedals
 @unnumberedsubsubsec Harp pedals