lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Some drum notation questions


From: Thomas Morley
Subject: Re: Some drum notation questions
Date: Thu, 5 Jan 2012 01:47:14 +0100

Hi,

2012/1/4 Carl Sorensen <address@hidden>:
> On 1/4/12 11:32 AM, "Vaylor Trucks" <address@hidden> wrote:
>
>>
>>First, for hi-hat, the notation for open and closed are correct, but for
>>the
>>half-open he would like to appear exactly like the open hi-hat notation,
>>except
>>the "o" above the stem of the note needs to have a single slash through
>>it.
>>
>>Also, the note head for a China cymbal he notes by having a standard
>>cross note
>>head, but with a box around it.
>>
>>Can anyone point me in the right direction for making these changes?
>>
>>Thanks,
>>Vaylor Trucks
>
> The half-open hihat you describe is shown in the Notation Reference,
> section 2.5.1
> under the heading "Custom Percussion Staves".
>
> As far as I know, there is currently no notehead that is a cross with a
> box around it.  This would require you to define a custom notehead, which
> can be done by writing your own stencil procedure to replace
> ly:note-head::print.
>
> I'd be willing to create a glyph for the China cymbal note if you can give
> me a scan of a well-designed China cymbal note-head.
>
> HTH,
>
> Carl

it would be nice to use a glyph with a box around a cross.

This might be a hackish work-around:

\version "2.14.2"

#(define glyph-types '("0laThin"
               "1laThin"
               "2laThin"))
        
customChineseCymbalNoteHead = \override NoteHead #'stencil =
#(lambda (grob)
 (let* ((gl (ly:grob-property grob 'glyph-name))
        (dur (ly:grob-property grob 'duration-log)))
 (if (member gl glyph-types)
    (ly:stencil-add
      (grob-interpret-markup grob (markup #:fontsize 1.65
                          #:musicglyph "noteheads.s1laFunk"))
      (if (or (= dur 1) (= dur 0))
         (grob-interpret-markup grob (markup #:fontsize -2.25
                                     #:musicglyph "noteheads.s1cross"))
         (grob-interpret-markup grob (markup #:fontsize -1.25
                                     #:musicglyph "noteheads.s2cross"))))
    (ly:note-head::print grob))))

#(define my-drums '((halfopenhihat cross "halfopen" 3)
            (chinesecymbal laThin #f 5)))
        
%----- test

\new DrumStaff
<<
  \set DrumStaff.drumStyleTable = #(alist->hash-table my-drums)
  \customChineseCymbalNoteHead

  \drummode {
    \textLengthOn
     hhho1^"halfopenhihat  "
     hhho2
     hhho4
     hhho8
     hhho16
     hhho32
     hhho
     cymch1^"chinesecymbal"
     cymch2
     cymch4
     cymch8
     cymch16
     cymch32
     cymch
  }
>>

HTH,
  Harm



reply via email to

[Prev in Thread] Current Thread [Next in Thread]