X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fuser%2Fpercussion.itely;h=f182b78a9ac80c0f0ee332199fe05bd8e16dda39;hb=1423508c355989fa26a8cfe5985b0d6e1ab0a538;hp=717e924df397bcccadb5861fa5d3038f5e321127;hpb=222b0bff12be16c385df77f4cfa89101aafeece7;p=lilypond.git diff --git a/Documentation/user/percussion.itely b/Documentation/user/percussion.itely index 717e924df3..f182b78a9a 100644 --- a/Documentation/user/percussion.itely +++ b/Documentation/user/percussion.itely @@ -6,13 +6,13 @@ version that you are working on. See TRANSLATION for details. @end ignore -@c \version "2.11.51" +@c \version "2.12.0" @node Percussion @section Percussion @menu -* Common notation for percussion:: +* Common notation for percussion:: @end menu @node Common notation for percussion @@ -22,17 +22,17 @@ Rhythmic music is primarily used for percussion and drum notation, but it can also be used to show the rhythms of melodies. @menu -* References for percussion:: -* Basic percussion notation:: -* Drum rolls:: -* Pitched percussion:: -* Percussion staves:: -* Custom percussion staves:: -* Ghost notes:: +* References for percussion:: +* Basic percussion notation:: +* Drum rolls:: +* Pitched percussion:: +* Percussion staves:: +* Custom percussion staves:: +* Ghost notes:: @end menu @node References for percussion -@subsubsection References for percussion +@unnumberedsubsubsec References for percussion TODO add more. @@ -47,8 +47,8 @@ discussed in @ref{Showing melody rhythms}, and @end itemize -@seealso +@seealso Notation Reference: @ref{Showing melody rhythms}, @ref{Instantiating new staves}. @@ -58,7 +58,7 @@ Snippets: @rlsr{Percussion}. @node Basic percussion notation -@subsubsection Basic percussion notation +@unnumberedsubsubsec Basic percussion notation @cindex percussion @cindex drums @@ -96,8 +96,8 @@ contex, but other clefs may also be used. There are a few issues concerning MIDI support for percussion instruments; for details please see @ref{Percussion in MIDI}. -@seealso +@seealso Notation Reference: @ref{Percussion in MIDI}, @ref{Percussion notes}. File: @file{ly/@/drumpitch@/-init@/.ly} @@ -106,7 +106,7 @@ Snippets: @rlsr{Percussion}. @node Drum rolls -@subsubsection Drum rolls +@unnumberedsubsubsec Drum rolls Drum rolls are indicated with three slashes across the stem. For quarter notes or longer the three slashes are shown explicitly, @@ -138,20 +138,20 @@ overridden to achieve a pleasing baseline. } @end lilypond -@seealso +@seealso Snippets: @rlsr{Percussion}. @node Pitched percussion -@subsubsection Pitched percussion +@unnumberedsubsubsec Pitched percussion Certain pitched percussion instruments (e.g. xylophone, -vibraphone, and timpani) are written using with normal staffs. +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 @@ -161,7 +161,7 @@ Snippets: @rlsr{Percussion}. @node Percussion staves -@subsubsection Percussion staves +@unnumberedsubsubsec Percussion staves @cindex percussion @cindex drums @@ -227,7 +227,7 @@ mus = \drummode { \remove Bar_engraver \remove Time_signature_engraver \override Stem #'transparent = ##t - \override Stem #'Y-extent-callback = ##f + \override Stem #'Y-extent = ##f \override VerticalAxisGroup #'minimum-Y-extent = #'(-4.0 . 5.0) } \mus \new Lyrics \nam @@ -259,7 +259,7 @@ mus = \drummode { timh ssh timl ssl cb s16 } \remove Bar_engraver \remove Time_signature_engraver \override Stem #'transparent = ##t - \override Stem #'Y-extent-callback = ##f + \override Stem #'Y-extent = ##f \override StaffSymbol #'line-count = #2 \override StaffSymbol #'staff-space = #2 \override VerticalAxisGroup #'minimum-Y-extent = #'(-3.0 . 4.0) @@ -289,7 +289,7 @@ mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 } %% this sucks; it will lengthen stems. \override StaffSymbol #'staff-space = #2 \override Stem #'transparent = ##t - \override Stem #'Y-extent-callback = ##f + \override Stem #'Y-extent = ##f } \mus \new Lyrics { \override LyricText #'font-family = #'typewriter @@ -315,7 +315,7 @@ mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 } %% this sucks; it will lengthen stems. \override StaffSymbol #'staff-space = #2 \override Stem #'transparent = ##t - \override Stem #'Y-extent-callback = ##f + \override Stem #'Y-extent = ##f } \mus \new Lyrics { \override LyricText #'font-family = #'typewriter @@ -338,7 +338,7 @@ mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 } \override StaffSymbol #'line-count = #1 \remove Time_signature_engraver \override Stem #'transparent = ##t - \override Stem #'Y-extent-callback = ##f + \override Stem #'Y-extent = ##f } \mus \new Lyrics { \override LyricText #'font-family = #'typewriter @@ -350,7 +350,7 @@ mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 } @node Custom percussion staves -@subsubsection Custom percussion staves +@unnumberedsubsubsec Custom percussion staves If you do not like any of the predefined lists you can define your own list at the top of your file. @@ -382,145 +382,182 @@ Here are some examples: Two Woodblocks, entered with wbh (high woodblock) and wbl (low woodblock) @lilypond[quote,verbatim] -#(define mydrums '( - (hiwoodblock default #t 3) - (lowoodblock default #t -2))) - %% These lines define the position of the woodblocks in the stave, if You like, You can change it - % or You can use special note heads for the woodblocks. - woodstaff = { \override Staff.StaffSymbol #'line-positions = #'(-2 3) -% this defines a staff with only two lines. It also defines the positions of the two lines - \override Staff.BarLine #'bar-size = #3 } - %% this is neccessary. If not entered, the barline wuld be too short! - - \new DrumStaff { - \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) - %% with this You load Your new drum style table - \woodstaff - \drummode { - \time 2/4 - wbl8 wbl16 wbl wbh 8 -> wbl | - wbl 8 wbl16 wbh ~ -> wbh wbl 16 r8 | - } +% These lines define the position of the woodblocks in the stave; +% if you like, you can change it or you can use special note heads +% for the woodblocks. +#(define mydrums '((hiwoodblock default #t 3) + (lowoodblock default #t -2))) + +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) + + % This is neccessary; if not entered, the barline would be too short! + \override Staff.BarLine #'bar-size = #3 } -@end lilypond -@seealso +\new DrumStaff { + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + + % with this you load your new drum style table + \woodstaff + + \drummode { + \time 2/4 + wbl8 wbl16 wbl wbh8-> wbl | + wbl8 wbl16 wbh-> ~ wbh wbl16 r8 | + } +} +@end lilypond Note that in this special case the length of the barline must altered with @code{\override Staff.BarLine #'bar-size #number}. -Otherwise it would be too short. And You have also to define the -positions of the to stafflines. For more information about these +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}. - -A tambourine, entered with "tamb": +A tambourine, entered with @q{tamb}: @lilypond[quote,verbatim] - % tambourine-music is entered with "tamb" - tambustaff = { \override Staff.StaffSymbol #'line-positions = #'( 0 ) - \override Staff.BarLine #'bar-size = #3 - \set DrumStaff.instrumentName="Tambourine"} - \new DrumStaff { - \tambustaff -% broken -% \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) - \drummode { \time 6/8 - \repeat "unfold" 2 { tamb8. tamb16 tamb8 tamb tamb tamb | } - tamb4. tamb8 tamb tamb | 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! - } - } - -@end lilypond -Music for Tam-Tam (entered with "tt"): +#(define mydrums '((tambourine default #t 0))) + +tambustaff = { + \override Staff.StaffSymbol #'line-positions = #'( 0 ) + \override Staff.BarLine #'bar-size = #3 + \set DrumStaff.instrumentName = #"Tambourine" +} + +\new DrumStaff { + \tambustaff + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + + \drummode { + \time 6/8 + tamb8. tamb16 tamb8 tamb tamb tamb | + tamb4. tamb8 tamb tamb | + % 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 | + } +} +@end lilypond + +Music for Tam-Tam (entered with @q{tt}): @lilypond[quote,verbatim] - #(define mydrums '( - (tamtam default #t 0) ) ) - tamtamstaff = { \override Staff.StaffSymbol #'line-positions = #'( 0 ) - \override Staff.BarLine #'bar-size = #3 - \set DrumStaff.instrumentName="Tamtam"} - \new DrumStaff { - \tamtamstaff - \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) - \drummode { tt 1 \pp \laissezVibrer - } - } +#(define mydrums '((tamtam default #t 0))) + +tamtamstaff = { + \override Staff.StaffSymbol #'line-positions = #'( 0 ) + \override Staff.BarLine #'bar-size = #3 + \set DrumStaff.instrumentName = #"Tamtam" +} + +\new DrumStaff { + \tamtamstaff + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + + \drummode { + tt 1 \pp \laissezVibrer + } +} @end lilypond -Two different bells, entered with "cb" (cowbell) and "rb" (ridebell)" +Two different bells, entered with @q{cb} (cowbell) and @q{rb} (ridebell) @lilypond[quote,verbatim] -%% bells are enterd with: -% "cb" (cowbell) and "rb" (ridebell)" - #(define mydrums '( - (ridebell default #t 3 ) - (cowbell default #t -2))) - - bellstaff = { \override DrumStaff.StaffSymbol #'line-positions = #'(-2 3) - \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) - \override Staff.BarLine #'bar-size = #3 - \set DrumStaff.instrumentName="Different Bells"} - - \new DrumStaff { - \bellstaff - \drummode { - \time 2/4 - \repeat "unfold" 2 { rb 8 rb cb cb16 rb ~ -> | rb16 rb 8 rb 16 cb 8 cb | } - } +#(define mydrums '((ridebell default #t 3) + (cowbell default #t -2))) + +bellstaff = { + \override DrumStaff.StaffSymbol #'line-positions = #'(-2 3) + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + \override Staff.BarLine #'bar-size = #3 + \set DrumStaff.instrumentName = #"Different Bells" +} + +\new DrumStaff { + \bellstaff + \drummode { + \time 2/4 + rb8 rb cb cb16 rb-> ~ | + rb16 rb8 rb16 cb8 cb | + } } @end lilypond -Here an short example by maestro Stravinsky (from "L'hostire du Soldat") +Here an short example by maestro Stravinsky (from @q{L'histoire du Soldat}) @lilypond[quote,verbatim] - #(define mydrums '( - (bassdrum default #t 4 ) - (snare default #t -4 ) - (tambourine default #t 0) ) ) - - global = { \time 3/8 s 4. \time 2/4 s 2 *2 \time 3/8 s 4. \time 2/4 s 2 } - -drumsA = { \context DrumVoice << { \global } - {\drummode { - \autoBeamOff -\stemDown sn 8 \stemUp tamb s8 | - sn4 \stemDown sn4 | -\stemUp tamb 8 \stemDown sn8 \stemUp sn16 \stemDown sn \stemUp sn8 | -\stemDown sn 8 \stemUp tamb s8 | -\stemUp sn4 s8 \stemUp tamb | - } } >> } -drumsB = { \drummode { s 4 bd 8 s 2*2 s 4 bd8 s 4 bd8 s 8 } } - +#(define mydrums '((bassdrum default #t 4) + (snare default #t -4) + (tambourine default #t 0))) + +global = { + \time 3/8 s4. + \time 2/4 s2*2 + \time 3/8 s4. + \time 2/4 s2 +} + +drumsA = { + \context DrumVoice << + { \global } + { \drummode { + \autoBeamOff + \stemDown sn8 \stemUp tamb s8 | + sn4 \stemDown sn4 | + \stemUp tamb8 \stemDown sn8 \stemUp sn16 \stemDown sn \stemUp sn8 | + \stemDown sn8 \stemUp tamb s8 | + \stemUp sn4 s8 \stemUp tamb + } + } + >> +} + +drumsB = { + \drummode { + s4 bd8 s2*2 s4 bd8 s4 bd8 s8 + } +} + \layout { - indent = #40 -} - - \score { - \new StaffGroup - << - \new DrumStaff - { \set DrumStaff.instrumentName= \markup { \column { "Tambourine" "et" "caisse claire s. timbre" } } - \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drumsA } - \new DrumStaff - { \set DrumStaff.instrumentName= "Grosse Caisse" - \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) \drumsB } - >> - - } + indent = #40 +} + +\score { + \new StaffGroup << + \new DrumStaff { + \set DrumStaff.instrumentName = \markup { + \column { + "Tambourine" + "et" + "caisse claire s. timbre" + } + } + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + \drumsA + } + + \new DrumStaff { + \set DrumStaff.instrumentName = #"Grosse Caisse" + \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums) + \drumsB } + >> +} @end lilypond -@seealso +@seealso Snippets: @rlsr{Percussion}. Internals Reference: @rinternals{DrumStaff}, @rinternals{DrumVoice}. - @c TODO: check name -gp @node Ghost notes -@subsubsection Ghost notes +@unnumberedsubsubsec Ghost notes Ghost notes for drums and percussion may be created using the @code{\parenthesize} command detailed in @ref{Parentheses}. @@ -530,16 +567,18 @@ However, the default @code{\drummode} does not include the @lilypond[quote,ragged-right,verbatim,fragment] \new DrumStaff \with { \consists "Parenthesis_engraver" -} << - \context DrumVoice = "1" { s1 *2 } - \context DrumVoice = "2" { s1 *2 } +} +<< + \context DrumVoice = "1" { s1 } + \context DrumVoice = "2" { s1 } \drummode { << { hh8[ hh] hh16 < \parenthesize sn > hh < \parenthesize sn > hh8 hh - } \\ { + } \\ + { bd4 r4 bd8 bd r8 bd } >> @@ -551,8 +590,6 @@ However, the default @code{\drummode} does not include the Also note that you must add chords (@code{< >} brackets) around each @code{\parenthesize} statement. -@seealso +@seealso Snippets: @rlsr{Percussion}. - -