1 @c -*- coding: utf-8; mode: texinfo; -*-
3 Translation of GIT committish: FILL-IN-HEAD-COMMITTISH
5 When revising a translation, copy the HEAD committish of the
6 version that you are working on. For details, see the Contributors'
7 Guide, node Updating translation committishes..
16 * Common notation for percussion::
19 @node Common notation for percussion
20 @subsection Common notation for percussion
22 Rhythmic music is primarily used for percussion and drum notation, but it can
23 also be used to show the rhythms of melodies.
26 * References for percussion::
27 * Basic percussion notation::
29 * Pitched percussion::
31 * Custom percussion staves::
35 @node References for percussion
36 @unnumberedsubsubsec References for percussion
38 @c TODO add more references.
42 @item Some percussion may be notated on a rhythmic staff; this is
43 discussed in @ref{Showing melody rhythms}, and
44 @ref{Instantiating new staves}.
46 @item MIDI output is discussed in a separate section; please see
47 @ref{MIDI instruments}.
53 @ref{Showing melody rhythms},
54 @ref{Instantiating new staves}.
55 @ref{MIDI instruments}.
61 @node Basic percussion notation
62 @unnumberedsubsubsec Basic percussion notation
67 Percussion notes may be entered in @code{\drummode} mode, which is
68 similar to the standard mode for entering notes. The simplest way
69 to enter percussion notes is to use the @code{\drums} command,
70 which creates the correct context and entry mode for percussion:
72 @lilypond[quote,verbatim]
78 This is shorthand for:
80 @lilypond[quote,verbatim]
81 \new DrumStaff \drummode {
86 Each piece of percussion has a full name and an abbreviated name,
87 and both can be used in input files. The full list of percussion
88 note names may be found in @ref{Percussion notes}.
90 @cindex clef, percussion
91 @cindex percussion clef
93 Note that the normal notation of pitches (such as @code{cis4}) in a
94 @code{DrumStaff} context will cause an error message. Percussion clefs
95 are added automatically to a @code{DrumStaff} context but they can also
96 be set explicitly. Other clefs may be used as well.
98 @lilypond[quote,ragged-right,verbatim]
108 There are a few issues concerning MIDI support for percussion
109 instruments; for details please see @ref{MIDI instruments}.
113 @ref{MIDI instruments},
114 @ref{Percussion notes}.
117 @file{ly/drumpitch-init.ly}.
124 @unnumberedsubsubsec Drum rolls
126 Drum rolls are indicated with three slashes across the stem. For
127 quarter notes or longer the three slashes are shown explicitly,
128 eighth notes are shown with two slashes (the beam being the
129 third), and drum rolls shorter than eighths have one stem slash to
130 supplement the beams. This is achieved with the tremolo notation,
131 as described in @ref{Tremolo repeats}.
133 @lilypond[quote,verbatim]
143 Sticking can be indicated by placing a markup for @code{"R"}
144 or @code{"L"} above or below notes, as discussed in
145 @ref{Direction and placement}. The @code{staff-padding} property
146 may be overridden to achieve a pleasing baseline.
148 @lilypond[quote,verbatim]
151 sn16^"L" 16^"R" 16^"L" 16^"L" 16^"R" 16^"L" 16^"R" 16^"R"
153 sn16_"L" 16_"R" 16_"L" 16_"L" 16_"R" 16_"L" 16_"R" 16_"R"
160 @ref{Tremolo repeats}.
166 @node Pitched percussion
167 @unnumberedsubsubsec Pitched percussion
169 Certain pitched percussion instruments (e.g., xylophone,
170 vibraphone, and timpani) are written using normal staves.
171 This is covered in other sections of the manual.
175 @ref{MIDI instruments}.
181 @node Percussion staves
182 @unnumberedsubsubsec Percussion staves
187 A percussion part for more than one instrument typically uses a
188 multiline staff where each position in the staff refers to one
189 piece of percussion. To typeset the music, the notes must be
190 interpreted in @code{DrumStaff} and @code{DrumVoice} context.
192 @lilypond[quote,verbatim]
194 crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat
197 bassdrum4 snare8 bd r bd sn4
200 \new DrumVoice { \voiceOne \up }
201 \new DrumVoice { \voiceTwo \down }
205 The above example shows verbose polyphonic notation. The short
206 polyphonic notation, described in @rlearning{I'm hearing Voices},
210 @lilypond[quote,verbatim]
215 \repeat unfold 16 hh16
223 There are also other layout possibilities. To use these, set the
224 property @code{drumStyleTable} in context @code{DrumVoice}. The
225 following variables have been predefined:
227 @c TODO: decide what to do about this table. (ie verbatim or not)
231 This is the default. It typesets a typical drum kit on a
234 @lilypond[quote,line-width=10.0\cm]
236 cymc cyms cymr hh hhc hho hhho hhp
237 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
239 cymc cyms cymr hh hhc hho hhho hhp \break
240 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
242 << \new DrumStaff \with {
243 \remove "Bar_engraver"
244 \remove "Time_signature_engraver"
246 \override Stem.Y-extent = ##f
253 \override LyricText.font-family = #'typewriter
254 \override BarNumber.transparent =##T
260 The drum scheme supports six different toms. When there are fewer
261 toms, simply select the toms that produce the desired result. For
262 example, to get toms on the three middle lines you use
263 @code{tommh}, @code{tomml}, and @code{tomfh}.
265 @item agostini-drums-style
266 Invented by the French percussionist Dante Agostini in 1965, this notation is
267 commonly employed in France but also elsewhere.
269 @lilypond[quote,line-width=10.0\cm]
271 cymc cyms cymr hh hhc hho hhho hhp
272 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
274 cymc cyms cymr hh hhc hho hhho hhp \break
275 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
277 << \new DrumStaff \with {
278 \remove "Bar_engraver"
279 \remove "Time_signature_engraver"
281 \override Stem.Y-extent = ##f
282 drumStyleTable = #agostini-drums-style
289 \override LyricText.font-family = #'typewriter
290 \override BarNumber.transparent =##T
297 This typesets timbales on a two line staff:
299 @lilypond[quote,ragged-right]
300 nam = \lyricmode { timh ssh timl ssl cb }
301 mus = \drummode { timh ssh timl ssl cb s16 }
304 \new DrumStaff \with {
305 \remove "Bar_engraver"
306 \remove "Time_signature_engraver"
308 \override Stem.Y-extent = ##f
309 \override StaffSymbol.line-count = #2
310 \override StaffSymbol.staff-space = #2
311 \override VerticalAxisGroup.minimum-Y-extent = #'(-3.0 . 4.0)
312 drumStyleTable = #timbales-style
315 \override LyricText.font-family = #'typewriter
322 This typesets congas on a two line staff:
324 @lilypond[quote,ragged-right]
325 nam = \lyricmode { cgh cgho cghm ssh cgl cglo cglm ssl }
326 mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
329 \new DrumStaff \with {
330 \remove "Bar_engraver"
331 \remove "Time_signature_engraver"
332 drumStyleTable = #congas-style
333 \override StaffSymbol.line-count = #2
335 %% this sucks; it will lengthen stems.
336 \override StaffSymbol.staff-space = #2
338 \override Stem.Y-extent = ##f
341 \override LyricText.font-family = #'typewriter
348 This typesets bongos on a two line staff:
350 @lilypond[quote,ragged-right]
351 nam = \lyricmode { boh boho bohm ssh bol bolo bolm ssl }
352 mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
355 \new DrumStaff \with {
356 \remove "Bar_engraver"
357 \remove "Time_signature_engraver"
358 \override StaffSymbol.line-count = #2
359 drumStyleTable = #bongos-style
361 %% this sucks; it will lengthen stems.
362 \override StaffSymbol.staff-space = #2
364 \override Stem.Y-extent = ##f
367 \override LyricText.font-family = #'typewriter
373 @item percussion-style
374 To typeset all kinds of simple percussion on one line staves:
376 @lilypond[quote,ragged-right]
377 nam = \lyricmode { tri trio trim gui guis guil cb cl tamb cab mar hc }
378 mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
381 \new DrumStaff \with{
382 \remove "Bar_engraver"
383 drumStyleTable = #percussion-style
384 \override StaffSymbol.line-count = #1
385 \remove "Time_signature_engraver"
387 \override Stem.Y-extent = ##f
390 \override LyricText.font-family = #'typewriter
398 @node Custom percussion staves
399 @unnumberedsubsubsec Custom percussion staves
401 If you do not like any of the predefined lists you can define your
402 own list at the top of your file.
404 @lilypond[quote,verbatim]
406 (bassdrum default #f -1)
409 (halfopenhihat cross "halfopen" 1)
410 (pedalhihat xcircle "stopped" 2)
411 (lowtom diamond #f 3)))
412 up = \drummode { hh8 hh hhho hhho hhp4 hhp }
413 down = \drummode { bd4 sn bd toml8 toml }
416 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
417 \new DrumVoice { \voiceOne \up }
418 \new DrumVoice { \voiceTwo \down }
425 @c TODO: MOVE ALL THESE TO LSR! -gp
427 Here are some examples:
429 Two Woodblocks, entered with wbh (high woodblock) and wbl (low woodblock)
431 @lilypond[quote,verbatim]
432 % These lines define the position of the woodblocks in the stave;
433 % if you like, you can change it or you can use special note heads
434 % for the woodblocks.
435 #(define mydrums '((hiwoodblock default #t 3)
436 (lowoodblock default #t -2)))
439 % This defines a staff with only two lines.
440 % It also defines the positions of the two lines.
441 \override Staff.StaffSymbol.line-positions = #'(-2 3)
443 % This is necessary; if not entered, the barline would be too short!
444 \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
448 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
450 % with this you load your new drum style table
456 wbl8 16 16-> ~ 16 16 r8 |
461 Note that in this special case the length of the barline must
462 altered with @code{\override Staff.BarLine.bar-extent #'(from . to)}.
463 Otherwise it would be too short. And you have also to define the
464 positions of the two stafflines. For more information about these
465 delicate things have a look at @ref{Staff symbol}.
467 A tambourine, entered with @q{tamb}:
469 @lilypond[verbatim,quote]
470 #(define mydrums '((tambourine default #t 0)))
472 \new DrumStaff \with { instrumentName = #"Tambourine" }
475 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
476 \override Staff.StaffSymbol.line-positions = #'( 0 )
477 \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
482 % the trick with the scaled duration and the shorter rest
483 % is neccessary for the correct ending of the trill-span!
484 tamb2.*5/6 \startTrillSpan s8 \stopTrillSpan |
488 Music for Tam-Tam (entered with @q{tt}):
490 @lilypond[quote,verbatim]
491 #(define mydrums '((tamtam default #t 0)))
493 \new DrumStaff \with { instrumentName = #"Tamtam" }
496 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
497 \override Staff.StaffSymbol.line-positions = #'( 0 )
498 \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
500 tt 1 \pp \laissezVibrer
504 Two different bells, entered with @q{cb} (cowbell) and @q{rb} (ridebell)
506 @lilypond[quote,verbatim]
507 #(define mydrums '((ridebell default #t 3)
508 (cowbell default #t -2)))
510 \new DrumStaff \with { instrumentName = #"Different Bells" }
513 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
514 \override DrumStaff.StaffSymbol.line-positions = #'(-2 3)
515 \override Staff.BarLine.bar-extent = #'(-1.5 . 1.5)
518 rb8 8 cb8 16 rb16-> ~ |
523 Here a short example taken from Stravinsky's @q{L'histoire du Soldat}.
525 @lilypond[quote,verbatim]
526 #(define mydrums '((bassdrum default #t 4)
527 (snare default #t -4)
528 (tambourine default #t 0)))
538 \context DrumVoice <<
542 \stemDown sn8 \stemUp tamb s8 |
544 \stemUp tamb8 \stemDown sn8 \stemUp sn16 \stemDown sn \stemUp sn8 |
545 \stemDown sn8 \stemUp tamb s8 |
546 \stemUp sn4 s8 \stemUp tamb
554 s4 bd8 s2*2 s4 bd8 s4 bd8 s8
564 \new DrumStaff \with {
565 instrumentName = \markup {
569 "caisse claire s. timbre"
572 drumStyleTable = #(alist->hash-table mydrums)
575 \new DrumStaff \with {
576 instrumentName = #"Grosse Caisse"
577 drumStyleTable = #(alist->hash-table mydrums)
589 @rinternals{DrumStaff},
590 @rinternals{DrumVoice}.
593 @c TODO: check name -gp
595 @unnumberedsubsubsec Ghost notes
597 Ghost notes for drums and percussion may be created using the
598 @code{\parenthesize} command detailed in @ref{Parentheses}.
600 @lilypond[quote,ragged-right,verbatim]
603 \context DrumVoice = "1" { s1 }
604 \context DrumVoice = "2" { s1 }
610 \parenthesize sn hh8 <hh sn> hh