]> git.donarmstrong.com Git - lilypond.git/blobdiff - Documentation/notation/percussion.itely
Doc: NR section 3.5.x MIDI file creation tidy up
[lilypond.git] / Documentation / notation / percussion.itely
index cc4dd03a2c335bfff16d20a54dd5c591042be23d..be6bc04c35662e688bdd0afbdc95e337fa274d1e 100644 (file)
@@ -7,7 +7,7 @@
     Guide, node Updating translation committishes..
 @end ignore
 
     Guide, node Updating translation committishes..
 @end ignore
 
-@c \version "2.15.10"
+@c \version "2.17.30"
 
 @node Percussion
 @section Percussion
 
 @node Percussion
 @section Percussion
@@ -44,16 +44,15 @@ discussed in @ref{Showing melody rhythms}, and
 @ref{Instantiating new staves}.
 
 @item MIDI output is discussed in a separate section; please see
 @ref{Instantiating new staves}.
 
 @item MIDI output is discussed in a separate section; please see
-@ref{Percussion in MIDI}.
+@ref{MIDI instruments}.
 
 @end itemize
 
 
 @end itemize
 
-
 @seealso
 Notation Reference:
 @ref{Showing melody rhythms},
 @ref{Instantiating new staves}.
 @seealso
 Notation Reference:
 @ref{Showing melody rhythms},
 @ref{Instantiating new staves}.
-@ref{Percussion in MIDI}.
+@ref{MIDI instruments}.
 
 Snippets:
 @rlsr{Percussion}.
 
 Snippets:
 @rlsr{Percussion}.
@@ -101,24 +100,23 @@ be set explicitly.  Other clefs may be used as well.
 @lilypond[quote,ragged-right,verbatim]
 \drums {
   \clef percussion
 @lilypond[quote,ragged-right,verbatim]
 \drums {
   \clef percussion
-  bd4 bd bd bd
+  bd4 4 4 4
   \clef treble
   \clef treble
-  hh4 hh hh hh
+  hh4 4 4 4
 }
 @end lilypond
 
 
 There are a few issues concerning MIDI support for percussion
 }
 @end lilypond
 
 
 There are a few issues concerning MIDI support for percussion
-instruments; for details please see @ref{Percussion in MIDI}.
-
+instruments; for details please see @ref{MIDI instruments}.
 
 @seealso
 Notation Reference:
 
 @seealso
 Notation Reference:
-@ref{Percussion in MIDI},
+@ref{MIDI instruments},
 @ref{Percussion notes}.
 
 @ref{Percussion notes}.
 
-File:
-@file{ly/drumpitch-init.ly}
+Installed Files:
+@file{ly/drumpitch-init.ly}.
 
 Snippets:
 @rlsr{Percussion}.
 
 Snippets:
 @rlsr{Percussion}.
@@ -137,10 +135,10 @@ as described in @ref{Tremolo repeats}.
 @lilypond[quote,verbatim]
 \drums {
   \time 2/4
 @lilypond[quote,verbatim]
 \drums {
   \time 2/4
-  sn16 sn8 sn16 sn8 sn8:32 ~
-  sn8 sn8 sn4:32 ~
-  sn4 sn8 sn16 sn16
-  sn4 r4
+  sn16 8 16 8 8:32 ~
+  8 8 4:32 ~
+  4 8 16 16
+  4 r4
 }
 @end lilypond
 
 }
 @end lilypond
 
@@ -152,16 +150,14 @@ may be overridden to achieve a pleasing baseline.
 @lilypond[quote,verbatim]
 \drums {
   \repeat unfold 2 {
 @lilypond[quote,verbatim]
 \drums {
   \repeat unfold 2 {
-    sn16^"L" sn^"R" sn^"L" sn^"L" sn^"R" sn^"L" sn^"R" sn^"R"
+    sn16^"L" 16^"R" 16^"L" 16^"L" 16^"R" 16^"L" 16^"R" 16^"R"
     \stemUp
     \stemUp
-    sn16_"L" sn_"R" sn_"L" sn_"L" sn_"R" sn_"L" sn_"R" sn_"R"
+    sn16_"L" 16_"R" 16_"L" 16_"L" 16_"R" 16_"L" 16_"R" 16_"R"
   }
 }
 @end lilypond
 
   }
 }
 @end lilypond
 
-
 @seealso
 @seealso
-
 Notation Reference:
 @ref{Tremolo repeats}.
 
 Notation Reference:
 @ref{Tremolo repeats}.
 
@@ -176,13 +172,9 @@ Certain pitched percussion instruments (e.g. xylophone,
 vibraphone, and timpani) are written using normal staves.
 This is covered in other sections of the manual.
 
 vibraphone, and timpani) are written using normal staves.
 This is covered in other sections of the manual.
 
-
 @seealso
 @seealso
-@c TODO: possibly link to an alternate section of NR 3.5, if
-@c "percussion in MIDI" gets a separate subsubsection for
-@c pitched percussion sounds.  -gp
 Notation Reference:
 Notation Reference:
-@ref{Percussion in MIDI}.
+@ref{MIDI instruments}.
 
 Snippets:
 @rlsr{Percussion}.
 
 Snippets:
 @rlsr{Percussion}.
@@ -250,19 +242,18 @@ mus = \drummode {
   cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
 \score {
   << \new DrumStaff \with {
   cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
 \score {
   << \new DrumStaff \with {
-       \remove Bar_engraver
-       \remove Time_signature_engraver
-       \override Stem #'transparent = ##t
-       \override Flag #'transparent = ##t
-       \override Stem #'Y-extent = ##f
+       \remove "Bar_engraver"
+       \remove "Time_signature_engraver"
+       \hide Stem
+       \override Stem.Y-extent = ##f
      } \mus
      \new Lyrics \nam
   >>
   \layout {
     \context {
       \Score
      } \mus
      \new Lyrics \nam
   >>
   \layout {
     \context {
       \Score
-      \override LyricText #'font-family = #'typewriter
-      \override BarNumber #'transparent =##T
+      \override LyricText.font-family = #'typewriter
+      \override BarNumber.transparent =##T
     }
   }
 }
     }
   }
 }
@@ -273,6 +264,37 @@ toms, simply select the toms that produce the desired result.  For
 example, to get toms on the three middle lines you use
 @code{tommh}, @code{tomml}, and @code{tomfh}.
 
 example, to get toms on the three middle lines you use
 @code{tommh}, @code{tomml}, and @code{tomfh}.
 
+@item agostini-drums-style
+Invented by the French percussionist Dante Agostini in 1965, this notation is
+commonly employed in France but also elsewhere.
+
+@lilypond[quote,line-width=10.0\cm]
+nam = \lyricmode {
+  cymc cyms cymr hh hhc hho hhho hhp
+  cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
+mus = \drummode {
+  cymc cyms cymr hh hhc hho hhho hhp \break
+  cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
+\score {
+  << \new DrumStaff \with {
+       \remove "Bar_engraver"
+       \remove "Time_signature_engraver"
+       \hide Stem
+       \override Stem.Y-extent = ##f
+       drumStyleTable = #agostini-drums-style
+     } \mus
+     \new Lyrics \nam
+  >>
+  \layout {
+    \context {
+      \Score
+      \override LyricText.font-family = #'typewriter
+      \override BarNumber.transparent =##T
+    }
+  }
+}
+@end lilypond
+
 @item timbales-style
 This typesets timbales on a two line staff:
 
 @item timbales-style
 This typesets timbales on a two line staff:
 
@@ -282,18 +304,17 @@ mus = \drummode { timh ssh timl ssl cb s16 }
 
 <<
   \new DrumStaff \with {
 
 <<
   \new DrumStaff \with {
-    \remove Bar_engraver
-    \remove Time_signature_engraver
-    \override Stem #'transparent = ##t
-    \override Flag #'transparent = ##t
-    \override Stem #'Y-extent = ##f
-    \override StaffSymbol #'line-count = #2
-    \override StaffSymbol #'staff-space = #2
-    \override VerticalAxisGroup #'minimum-Y-extent = #'(-3.0 . 4.0)
+    \remove "Bar_engraver"
+    \remove "Time_signature_engraver"
+    \hide Stem
+    \override Stem.Y-extent = ##f
+    \override StaffSymbol.line-count = #2
+    \override StaffSymbol.staff-space = #2
+    \override VerticalAxisGroup.minimum-Y-extent = #'(-3.0 . 4.0)
     drumStyleTable = #timbales-style
   } \mus
   \new Lyrics {
     drumStyleTable = #timbales-style
   } \mus
   \new Lyrics {
-    \override LyricText #'font-family = #'typewriter
+    \override LyricText.font-family = #'typewriter
     \nam
   }
 >>
     \nam
   }
 >>
@@ -308,19 +329,18 @@ mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
 
 <<
   \new DrumStaff \with {
 
 <<
   \new DrumStaff \with {
-    \remove Bar_engraver
-    \remove Time_signature_engraver
+    \remove "Bar_engraver"
+    \remove "Time_signature_engraver"
     drumStyleTable = #congas-style
     drumStyleTable = #congas-style
-    \override StaffSymbol #'line-count = #2
+    \override StaffSymbol.line-count = #2
 
     %% this sucks; it will lengthen stems.
 
     %% this sucks; it will lengthen stems.
-    \override StaffSymbol #'staff-space = #2
-    \override Stem #'transparent = ##t
-    \override Flag #'transparent = ##t
-    \override Stem #'Y-extent = ##f
+    \override StaffSymbol.staff-space = #2
+    \hide Stem
+    \override Stem.Y-extent = ##f
   } \mus
   \new Lyrics {
   } \mus
   \new Lyrics {
-    \override LyricText #'font-family = #'typewriter
+    \override LyricText.font-family = #'typewriter
     \nam
   }
 >>
     \nam
   }
 >>
@@ -335,19 +355,18 @@ mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
 
 <<
   \new DrumStaff \with {
 
 <<
   \new DrumStaff \with {
-    \remove Bar_engraver
-    \remove Time_signature_engraver
-    \override StaffSymbol #'line-count = #2
+    \remove "Bar_engraver"
+    \remove "Time_signature_engraver"
+    \override StaffSymbol.line-count = #2
     drumStyleTable = #bongos-style
 
     %% this sucks; it will lengthen stems.
     drumStyleTable = #bongos-style
 
     %% this sucks; it will lengthen stems.
-    \override StaffSymbol #'staff-space = #2
-    \override Stem #'transparent = ##t
-    \override Flag #'transparent = ##t
-    \override Stem #'Y-extent = ##f
+    \override StaffSymbol.staff-space = #2
+    \hide Stem
+    \override Stem.Y-extent = ##f
   } \mus
   \new Lyrics {
   } \mus
   \new Lyrics {
-    \override LyricText #'font-family = #'typewriter
+    \override LyricText.font-family = #'typewriter
     \nam
   }
 >>
     \nam
   }
 >>
@@ -362,16 +381,15 @@ mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
 
 <<
   \new DrumStaff \with{
 
 <<
   \new DrumStaff \with{
-    \remove Bar_engraver
+    \remove "Bar_engraver"
     drumStyleTable = #percussion-style
     drumStyleTable = #percussion-style
-    \override StaffSymbol #'line-count = #1
-    \remove Time_signature_engraver
-    \override Stem #'transparent = ##t
-    \override Flag #'transparent = ##t
-    \override Stem #'Y-extent = ##f
+    \override StaffSymbol.line-count = #1
+    \remove "Time_signature_engraver"
+    \hide Stem
+    \override Stem.Y-extent = ##f
   } \mus
   \new Lyrics {
   } \mus
   \new Lyrics {
-    \override LyricText #'font-family = #'typewriter
+    \override LyricText.font-family = #'typewriter
     \nam
   }
 >>
     \nam
   }
 >>
@@ -422,10 +440,10 @@ Two Woodblocks, entered with wbh (high woodblock) and wbl (low woodblock)
 woodstaff = {
   % This defines a staff with only two lines.
   % It also defines the positions of the two lines.
 woodstaff = {
   % This defines a staff with only two lines.
   % It also defines the positions of the two lines.
-  \override Staff.StaffSymbol #'line-positions = #'(-2 3)
+  \override Staff.StaffSymbol.line-positions = #'(-2 3)
 
   % This is necessary; if not entered, the barline would be too short!
 
   % This is necessary; if not entered, the barline would be too short!
-  \override Staff.BarLine #'bar-extent = #'(-1.5 . 1.5)
+  \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
 }
 
 \new DrumStaff {
 }
 
 \new DrumStaff {
@@ -436,14 +454,14 @@ woodstaff = {
 
   \drummode {
     \time 2/4
 
   \drummode {
     \time 2/4
-    wbl8 wbl16 wbl wbh8-> wbl |
-    wbl8 wbl16 wbh-> ~ wbh wbl16 r8 |
+    wbl8 16 16 8-> 8 |
+    wbl8 16 16-> ~ 16 16 r8 |
   }
 }
 @end lilypond
 
 Note that in this special case the length of the barline must
   }
 }
 @end lilypond
 
 Note that in this special case the length of the barline must
-altered with @code{\override Staff.BarLine #'bar-extent #'(from . to)}.
+altered with @code{\override Staff.BarLine.bar-extent #'(from . to)}.
 Otherwise it would be too short.  And you have also to define the
 positions of the two stafflines.  For more information about these
 delicate things have a look at @ref{Staff symbol}.
 Otherwise it would be too short.  And you have also to define the
 positions of the two stafflines.  For more information about these
 delicate things have a look at @ref{Staff symbol}.
@@ -454,8 +472,8 @@ A tambourine, entered with @q{tamb}:
 #(define mydrums '((tambourine default #t 0)))
 
 tambustaff = {
 #(define mydrums '((tambourine default #t 0)))
 
 tambustaff = {
-  \override Staff.StaffSymbol #'line-positions = #'( 0 )
-  \override Staff.BarLine #'bar-extent = #'(-1.5 . 1.5)
+  \override Staff.StaffSymbol.line-positions = #'( 0 )
+  \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
   \set DrumStaff.instrumentName = #"Tambourine"
 }
 
   \set DrumStaff.instrumentName = #"Tambourine"
 }
 
@@ -465,8 +483,8 @@ tambustaff = {
 
   \drummode {
     \time 6/8
 
   \drummode {
     \time 6/8
-    tamb8. tamb16 tamb8 tamb tamb tamb |
-    tamb4. tamb8 tamb tamb |
+    tamb8. 16 8 8 8 8 |
+    tamb4. 8 8 8 |
     % the trick with the scaled duration and the shorter rest
     % is neccessary for the correct ending of the trill-span!
     tamb2.*5/6 \startTrillSpan s8 \stopTrillSpan |
     % the trick with the scaled duration and the shorter rest
     % is neccessary for the correct ending of the trill-span!
     tamb2.*5/6 \startTrillSpan s8 \stopTrillSpan |
@@ -480,8 +498,8 @@ Music for Tam-Tam (entered with @q{tt}):
 #(define mydrums '((tamtam default #t 0)))
 
 tamtamstaff = {
 #(define mydrums '((tamtam default #t 0)))
 
 tamtamstaff = {
-  \override Staff.StaffSymbol #'line-positions = #'( 0 )
-  \override Staff.BarLine #'bar-extent = #'(-1.5 . 1.5)
+  \override Staff.StaffSymbol.line-positions = #'( 0 )
+  \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
   \set DrumStaff.instrumentName = #"Tamtam"
 }
 
   \set DrumStaff.instrumentName = #"Tamtam"
 }
 
@@ -502,9 +520,9 @@ Two different bells, entered with @q{cb} (cowbell) and @q{rb} (ridebell)
                    (cowbell  default #t -2)))
 
 bellstaff = {
                    (cowbell  default #t -2)))
 
 bellstaff = {
-  \override DrumStaff.StaffSymbol #'line-positions = #'(-2 3)
+  \override DrumStaff.StaffSymbol.line-positions = #'(-2 3)
   \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
   \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
-  \override Staff.BarLine #'bar-extent = #'(-1.5 . 1.5)
+  \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
   \set DrumStaff.instrumentName = #"Different Bells"
 }
 
   \set DrumStaff.instrumentName = #"Different Bells"
 }
 
@@ -512,8 +530,8 @@ bellstaff = {
   \bellstaff
   \drummode {
     \time 2/4
   \bellstaff
   \drummode {
     \time 2/4
-    rb8 rb cb cb16 rb-> ~ |
-    rb16 rb8 rb16 cb8 cb |
+    rb8 8 cb8 16 rb16-> ~ |
+    16 8 16 cb8 8 |
   }
 }
 @end lilypond
   }
 }
 @end lilypond
@@ -579,7 +597,6 @@ drumsB = {
 }
 @end lilypond
 
 }
 @end lilypond
 
-
 @seealso
 Snippets:
 @rlsr{Percussion}.
 @seealso
 Snippets:
 @rlsr{Percussion}.
@@ -595,36 +612,27 @@ Internals Reference:
 
 Ghost notes for drums and percussion may be created using the
 @code{\parenthesize} command detailed in @ref{Parentheses}.
 
 Ghost notes for drums and percussion may be created using the
 @code{\parenthesize} command detailed in @ref{Parentheses}.
-However, the default @code{\drummode} does not include the
-@code{Parenthesis_engraver} plugin which allows this.
 
 @lilypond[quote,ragged-right,verbatim]
 
 @lilypond[quote,ragged-right,verbatim]
-\new DrumStaff \with {
-  \consists "Parenthesis_engraver"
-}
+\new DrumStaff
 <<
   \context DrumVoice  = "1" { s1 }
   \context DrumVoice  = "2" { s1 }
   \drummode {
     <<
       {
 <<
   \context DrumVoice  = "1" { s1 }
   \context DrumVoice  = "2" { s1 }
   \drummode {
     <<
       {
-        hh8[ hh] <hh sn> hh16
-        < \parenthesize sn > hh
-        < \parenthesize sn > hh8 <hh sn> hh
+        hh8[ 8] <hh sn> hh16
+        \parenthesize sn  hh
+        \parenthesize sn  hh8 <hh sn> hh
       } \\
       {
       } \\
       {
-        bd4 r4 bd8 bd r8 bd
+        bd4 r4 bd8 8 r8 bd
       }
     >>
   }
 >>
 @end lilypond
 
       }
     >>
   }
 >>
 @end lilypond
 
-@noindent
-Also note that you must add chords (@code{< >} brackets)
-around each @code{\parenthesize} statement.
-
-
 @seealso
 Snippets:
 @rlsr{Percussion}.
 @seealso
 Snippets:
 @rlsr{Percussion}.