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. See TRANSLATION for details.
13 * Percussion sections::
16 @node Percussion sections
17 @subsection Percussion sections
19 Rhythmic music is primarily used for percussion and drum notation, but it can
20 also be used to show the rhythms of melodies.
23 * Showing melody rhythms::
24 * Entering percussion::
30 @node Showing melody rhythms
31 @subsubsection Showing melody rhythms
33 Sometimes you might want to show only the rhythm of a melody. This
34 can be done with the rhythmic staff. All pitches of notes on such a
35 staff are squashed, and the staff itself has a single line
37 @lilypond[quote,ragged-right,fragment,relative=1,verbatim]
40 c4 e8 f g2 | r4 g r2 | g1:32 | r1 |
46 Internals Reference: @internalsref{RhythmicStaff}.
49 @node Entering percussion
50 @subsubsection Entering percussion
56 Percussion notes may be entered in @code{\drummode} mode, which is
57 similar to the standard mode for entering notes. Each piece of
58 percussion has a full name and an abbreviated name, and both can be used
61 @lilypond[quote,ragged-right,verbatim]
67 The complete list of drum names is in the init file
68 @file{ly/@/drumpitch@/-init@/.ly}.
69 @c TODO: properly document this.
73 Internals Reference: @internalsref{note-event}.
75 @node Percussion staves
76 @subsubsection Percussion staves
80 A percussion part for more than one instrument typically uses a
81 multiline staff where each position in the staff refers to one piece
85 To typeset the music, the notes must be interpreted in a
86 @internalsref{DrumStaff} and @internalsref{DrumVoice} contexts
88 @lilypond[quote,ragged-right,verbatim]
89 up = \drummode { crashcymbal4 hihat8 halfopenhihat hh hh hh openhihat }
90 down = \drummode { bassdrum4 snare8 bd r bd sn4 }
92 \new DrumVoice { \voiceOne \up }
93 \new DrumVoice { \voiceTwo \down }
97 The above example shows verbose polyphonic notation. The short
98 polyphonic notation, described in @rlearning{I'm seeing Voices},
99 can also be used if the @internalsref{DrumVoice}s are instantiated
100 by hand first. For example,
102 @lilypond[quote,ragged-right,fragment,verbatim]
104 \new DrumVoice = "1" { s1 *2 }
105 \new DrumVoice = "2" { s1 *2 }
109 { \repeat unfold 16 hh16 }
118 There are also other layout possibilities. To use these, set the
119 property @code{drumStyleTable} in context @internalsref{DrumVoice}.
120 The following variables have been predefined
124 This is the default. It typesets a typical drum kit on a five-line staff
126 @lilypond[quote,line-width=10.0\cm]
128 cymc cyms cymr hh hhc hho hhho hhp
129 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl }
131 cymc cyms cymr hh hhc hho hhho hhp \break
132 cb hc bd sn ss tomh tommh tomml toml tomfh tomfl s16 }
134 << \new DrumStaff \with {
136 \remove Time_signature_engraver
137 \override Stem #'transparent = ##t
138 \override Stem #'Y-extent-callback = ##f
139 \override VerticalAxisGroup #'minimum-Y-extent = #'(-4.0 . 5.0)
146 \override LyricText #'font-family = #'typewriter
147 \override BarNumber #'transparent =##T
153 The drum scheme supports six different toms. When there are fewer toms,
154 simply select the toms that produce the desired result, i.e., to get toms
155 on the three middle lines you use @code{tommh}, @code{tomml}, and
159 This typesets timbales on a two line staff
161 @lilypond[quote,ragged-right]
162 nam = \lyricmode { timh ssh timl ssl cb }
163 mus = \drummode { timh ssh timl ssl cb s16 }
166 \new DrumStaff \with {
168 \remove Time_signature_engraver
169 \override Stem #'transparent = ##t
170 \override Stem #'Y-extent-callback = ##f
171 \override StaffSymbol #'line-count = #2
172 \override StaffSymbol #'staff-space = #2
173 \override VerticalAxisGroup #'minimum-Y-extent = #'(-3.0 . 4.0)
174 drumStyleTable = #timbales-style
177 \override LyricText #'font-family = #'typewriter
184 This typesets congas on a two line staff
186 @lilypond[quote,ragged-right]
187 nam = \lyricmode { cgh cgho cghm ssh cgl cglo cglm ssl }
188 mus = \drummode { cgh cgho cghm ssh cgl cglo cglm ssl s16 }
191 \new DrumStaff \with {
193 \remove Time_signature_engraver
194 drumStyleTable = #congas-style
195 \override StaffSymbol #'line-count = #2
197 %% this sucks; it will lengthen stems.
198 \override StaffSymbol #'staff-space = #2
199 \override Stem #'transparent = ##t
200 \override Stem #'Y-extent-callback = ##f
203 \override LyricText #'font-family = #'typewriter
210 This typesets bongos on a two line staff
212 @lilypond[quote,ragged-right]
213 nam = \lyricmode { boh boho bohm ssh bol bolo bolm ssl }
214 mus = \drummode { boh boho bohm ssh bol bolo bolm ssl s16 }
217 \new DrumStaff \with {
219 \remove Time_signature_engraver
220 \override StaffSymbol #'line-count = #2
221 drumStyleTable = #bongos-style
223 %% this sucks; it will lengthen stems.
224 \override StaffSymbol #'staff-space = #2
225 \override Stem #'transparent = ##t
226 \override Stem #'Y-extent-callback = ##f
229 \override LyricText #'font-family = #'typewriter
235 @item percussion-style
236 To typeset all kinds of simple percussion on one line staves.
238 @lilypond[quote,ragged-right]
239 nam = \lyricmode { tri trio trim gui guis guil cb cl tamb cab mar hc }
240 mus = \drummode { tri trio trim gui guis guil cb cl tamb cab mar hc s16 }
243 \new DrumStaff \with{
245 drumStyleTable = #percussion-style
246 \override StaffSymbol #'line-count = #1
247 \remove Time_signature_engraver
248 \override Stem #'transparent = ##t
249 \override Stem #'Y-extent-callback = ##f
252 \override LyricText #'font-family = #'typewriter
259 If you do not like any of the predefined lists you can define your own
260 list at the top of your file
262 @lilypond[quote,ragged-right,verbatim]
264 (bassdrum default #f -1)
267 (pedalhihat xcircle "stopped" 2)
268 (lowtom diamond #f 3)))
269 up = \drummode { hh8 hh hh hh hhp4 hhp }
270 down = \drummode { bd4 sn bd toml8 toml }
273 \set DrumStaff.drumStyleTable = #(alist->hash-table mydrums)
274 \new DrumVoice { \voiceOne \up }
275 \new DrumVoice { \voiceTwo \down }
282 Init files: @file{ly/@/drumpitch@/-init@/.ly}.
284 Internals Reference: @internalsref{DrumStaff}, @internalsref{DrumVoice}.
288 Because general MIDI does not contain rim shots, the sidestick is used
289 for this purpose instead.
292 @c TODO: check name -gp
294 @subsubsection Ghost notes
296 Ghost notes for drums and percussion may be created using the
297 @code{\parenthesize} command detailed in @ref{Parentheses}. However,
298 the default @code{\drummode} does
299 not include the @code{Parenthesis_engraver} plugin which allows
301 must add the plugin explicitly in the context definition as
302 detailed in @ref{Changing context properties on the fly}.
304 @lilypond[quote,ragged-right,verbatim,fragment]
305 \new DrumStaff \with {
306 \consists "Parenthesis_engraver"
308 \context DrumVoice = "1" { s1 *2 }
309 \context DrumVoice = "2" { s1 *2 }
313 hh8[ hh] <hh sn> hh16
314 < \parenthesize sn > hh < \parenthesize
325 Also note that you must add chords (@code{< >} brackets)
326 around each @code{\parenthesize} statement.