Next: Ghost notes, Previous: Percussion staves, Up: Common notation for percussion
If you do not like any of the predefined lists you can define your own list at the top of your file.
#(define mydrums '(
(bassdrum default #f -1)
(snare default #f 0)
(hihat cross #f 1)
(pedalhihat xcircle "stopped" 2)
(lowtom diamond #f 3)))
up = \drummode { hh8 hh hh hh hhp4 hhp }
down = \drummode { bd4 sn bd toml8 toml }
\new DrumStaff <<
\set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
\new DrumVoice { \voiceOne \up }
\new DrumVoice { \voiceTwo \down }
>>
FIXME: MOVE ALL THESE TO LSR! -gp
Here are some examples:
Two Woodblocks, entered with wbh (high woodblock) and wbl (low woodblock)
% 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
}
\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 |
}
}
Note that in this special case the length of the barline must
altered with \override Staff.BarLine #'bar-size #number.
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 Staff symbol.
A tambourine, entered with ‘tamb’:
#(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 |
}
}
Music for Tam-Tam (entered with ‘tt’):
#(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
}
}
Two different bells, entered 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
rb8 rb cb cb16 rb-> ~ |
rb16 rb8 rb16 cb8 cb |
}
}
Here an short example by maestro Stravinsky (from ‘L'histoire du Soldat’)
#(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 }
>>
}
Snippets: Percussion.