]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/notation/keyboards.itely
Doc-es: update Notation/Keyboards.
[lilypond.git] / Documentation / notation / keyboards.itely
index 77c8e9b98fed97a0057a502a7b4d2814f0963b6f..3d2919edc7391fe85ffc49991ba85c6d4ae1dca6 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.14.0"
+@c \version "2.19.25"
 
 @node Keyboard and other multi-staff instruments
 @section Keyboard and other multi-staff instruments
 
 @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
 @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 {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:
 
 @seealso
 Learning Manual:
@@ -137,6 +137,7 @@ Internals Reference:
 Snippets:
 @rlsr{Keyboards}.
 
 Snippets:
 @rlsr{Keyboards}.
 
+
 @node Changing staff manually
 @unnumberedsubsubsec Changing staff manually
 
 @node Changing staff manually
 @unnumberedsubsubsec Changing staff manually
 
@@ -205,17 +206,20 @@ Overlapping notation can result when voices cross staves:
   \new Staff = "up" {
     \voiceOne
     % Make space for fingering in the cross-staff voice
   \new Staff = "up" {
     \voiceOne
     % Make space for fingering in the cross-staff voice
-    \once\override DynamicLineSpanner #'staff-padding = #3.4
-    e''2\p\< d''\> s1*0\!
+    \once\override DynamicLineSpanner.staff-padding = #4
+    e''2\p\< d''\>
+    c''1\!
   }
   \new Staff = "down" <<
     {
       \clef bass
       s4. e,8\rest g,2\rest
   }
   \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'\)
     } \\ {
       c8\( g c'
       \change Staff = "up"
       e' g' b'-3 a' g'\)
+      f'1
     }
   >>
 >>
     }
   >>
 >>
@@ -229,11 +233,6 @@ affected by a cross-staff spanner.
 The resulting collisions must be resolved manually, where necessary,
 using the methods in @rlearning{Fixing overlapping notation}.
 
 The resulting collisions must be resolved manually, where necessary,
 using the methods in @rlearning{Fixing overlapping notation}.
 
-@knownissues
-Beam collision avoidance does not work for automatic beams that end
-right before a change in staff. To make the latter work, use manual
-beaming.
-
 @seealso
 Learning Manual:
 @rlearning{Fixing overlapping notation}.
 @seealso
 Learning Manual:
 @rlearning{Fixing overlapping notation}.
@@ -250,6 +249,10 @@ Internals Reference:
 @rinternals{Beam},
 @rinternals{ContextChange}.
 
 @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
 
 @node Changing staff automatically
 @unnumberedsubsubsec Changing staff automatically
@@ -286,6 +289,21 @@ in advance.
 }
 @end lilypond
 
 }
 @end lilypond
 
+@noindent
+It is possible to specify other pitches for the turning point.
+If the staves are not instantiated explicitly, other clefs may be used.
+
+@lilypond[quote,verbatim]
+music = {
+  g8 b a c' b8 d' c'8 e'
+  d'8 r f' g' a'2
+}
+
+\autochange d' \music
+\autochange b \with { \clef soprano } \music
+\autochange d' \with { \clef alto } \with { \clef tenor } \music
+@end lilypond
+
 @cindex relative music and autochange
 @cindex autochange and relative music
 
 @cindex relative music and autochange
 @cindex autochange and relative music
 
@@ -312,7 +330,7 @@ key signature in the lower staff:
   \new Staff = "up" {
     \new Voice = "melOne" {
       \key g \major
   \new Staff = "up" {
     \new Voice = "melOne" {
       \key g \major
-      \autochange \relative c' {
+      \autochange \relative {
         g8 b a c b d c e
         d8 r fis, g a2
       }
         g8 b a c b d c e
         d8 r fis, g a2
       }
@@ -325,7 +343,6 @@ key signature in the lower staff:
 >>
 @end lilypond
 
 >>
 @end lilypond
 
-
 @seealso
 Notation Reference:
 @ref{Changing staff manually}.
 @seealso
 Notation Reference:
 @ref{Changing staff manually}.
@@ -338,7 +355,6 @@ Internals Reference:
 
 
 @knownissues
 
 
 @knownissues
-
 @cindex chords, splitting across staves with \autochange
 
 The staff switches may not end up in optimal places.  For high
 @cindex chords, splitting across staves with \autochange
 
 The staff switches may not end up in optimal places.  For high
@@ -347,6 +363,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.
 
 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
 
 @node Staff-change lines
 @unnumberedsubsubsec Staff-change lines
 
@@ -371,11 +388,11 @@ staff based on the first note named in the chord construct.
 Whenever a voice switches to another staff, a line connecting the
 notes can be printed automatically:
 
 Whenever a voice switches to another staff, a line connecting the
 notes can be printed automatically:
 
-@lilypond[quote,verbatim,relative=1]
+@lilypond[quote,verbatim]
 \new PianoStaff <<
   \new Staff = "one" {
     \showStaffSwitch
 \new PianoStaff <<
   \new Staff = "one" {
     \showStaffSwitch
-    c1
+    c'1
     \change Staff = "two"
     b2 a
   }
     \change Staff = "two"
     b2 a
   }
@@ -392,7 +409,6 @@ notes can be printed automatically:
 @code{\hideStaffSwitch}.
 @endpredefined
 
 @code{\hideStaffSwitch}.
 @endpredefined
 
-
 @seealso
 Snippets:
 @rlsr{Keyboards}.
 @seealso
 Snippets:
 @rlsr{Keyboards}.
@@ -416,46 +432,26 @@ Internals Reference:
 @cindex cross staff chords
 
 @funindex Stem
 @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
 
 @snippets
-@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
+@lilypondfile[verbatim,quote,texidoc,doctitle]
 {indicating-cross-staff-chords-with-arpeggio-bracket.ly}
 
 {indicating-cross-staff-chords-with-arpeggio-bracket.ly}
 
-
 @seealso
 Snippets:
 @rlsr{Keyboards}.
 @seealso
 Snippets:
 @rlsr{Keyboards}.
@@ -506,13 +502,15 @@ produced: @notation{sustain}, @notation{sostenuto}
 (@notation{sos.}), and @notation{una corda} (@notation{U.C.}).
 Sustain pedals are also found on vibraphones and celestas.
 
 (@notation{sos.}), and @notation{una corda} (@notation{U.C.}).
 Sustain pedals are also found on vibraphones and celestas.
 
-@lilypond[quote,verbatim,relative=2]
-c4\sustainOn d e g
-<c, f a>1\sustainOff
-c4\sostenutoOn e g c,
-<bes d f>1\sostenutoOff
-c4\unaCorda d e g
-<d fis a>1\treCorde
+@lilypond[quote,verbatim]
+\relative {
+  c''4\sustainOn d e g
+  <c, f a>1\sustainOff
+  c4\sostenutoOn e g c,
+  <bes d f>1\sostenutoOff
+  c4\unaCorda d e g
+  <d fis a>1\treCorde
+}
 @end lilypond
 
 @cindex pedal indication styles
 @end lilypond
 
 @cindex pedal indication styles
@@ -531,15 +529,17 @@ There are three styles of pedal indications: text, bracket, and mixed.
 The sustain pedal and the una corda pedal use the text style by default
 while the sostenuto pedal uses mixed by default.
 
 The sustain pedal and the una corda pedal use the text style by default
 while the sostenuto pedal uses mixed by default.
 
-@lilypond[quote,verbatim,relative=2]
-c4\sustainOn g c2\sustainOff
-\set Staff.pedalSustainStyle = #'mixed
-c4\sustainOn g c d
-d\sustainOff\sustainOn g, c2\sustainOff
-\set Staff.pedalSustainStyle = #'bracket
-c4\sustainOn g c d
-d\sustainOff\sustainOn g, c2
-\bar "|."
+@lilypond[quote,verbatim]
+\relative {
+  c''4\sustainOn g c2\sustainOff
+  \set Staff.pedalSustainStyle = #'mixed
+  c4\sustainOn g c d
+  d\sustainOff\sustainOn g, c2\sustainOff
+  \set Staff.pedalSustainStyle = #'bracket
+  c4\sustainOn g c d
+  d\sustainOff\sustainOn g, c2
+  \bar "|."
+}
 @end lilypond
 
 The placement of the pedal commands matches the physical movement of the
 @end lilypond
 
 The placement of the pedal commands matches the physical movement of the
@@ -598,9 +598,8 @@ come into use to simplify the performance instructions.
 
 @snippets
 
 
 @snippets
 
-@lilypondfile[verbatim,lilyquote,texidoc,doctitle]
-{accordion-discant-symbols.ly}
-
+@lilypondfile[verbatim,quote,texidoc,doctitle]
+{accordion-register-symbols.ly}
 
 @seealso
 Snippets:
 
 @seealso
 Snippets:
@@ -645,6 +644,7 @@ Notation Reference:
 @ref{Arpeggio},
 @ref{Harmonics}.
 
 @ref{Arpeggio},
 @ref{Harmonics}.
 
+
 @node Harp pedals
 @unnumberedsubsubsec Harp pedals
 
 @node Harp pedals
 @unnumberedsubsubsec Harp pedals
 
@@ -660,20 +660,20 @@ is controlled by a single pedal.  From the player's left to right, the
 pedals are D, C, and B on the left and E, F, G, and A on the right.
 The position of the pedals may be indicated with text marks:
 
 pedals are D, C, and B on the left and E, F, G, and A on the right.
 The position of the pedals may be indicated with text marks:
 
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim,fragment]
 \textLengthOn
 \textLengthOn
-cis1_\markup \concat \vcenter {
+cis''1_\markup \concat \vcenter {
   [D \flat C \sharp B|E \sharp F \sharp G A \flat] }
   [D \flat C \sharp B|E \sharp F \sharp G A \flat] }
-c!1_\markup \concat \vcenter {
+c''!1_\markup \concat \vcenter {
   [ C \natural ] }
 @end lilypond
 
 or pedal diagrams:
 
   [ C \natural ] }
 @end lilypond
 
 or pedal diagrams:
 
-@lilypond[quote,verbatim,relative=2]
+@lilypond[quote,verbatim,fragment]
 \textLengthOn
 \textLengthOn
-cis1_\markup { \harp-pedal #"^v-|vv-^" }
-c!1_\markup { \harp-pedal #"^o--|vv-^" }
+cis''1_\markup { \harp-pedal #"^v-|vv-^" }
+c''!1_\markup { \harp-pedal #"^o--|vv-^" }
 @end lilypond
 
 The @code{\harp-pedal} command accepts a string of characters, where
 @end lilypond
 
 The @code{\harp-pedal} command accepts a string of characters, where