lilypond-user
[Top][All Lists]
Advanced

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

Re: triple stop warnings


From: Neil Puttock
Subject: Re: triple stop warnings
Date: Fri, 11 Dec 2009 22:38:34 +0000

2009/12/11 Jay Anderson <address@hidden>:
> I've done triple-stops like this in the past:
> << c4 <g' e'>2.\fermata >>
>
> I'd prefer to do the triple-stop something more like this to avoid warnings:
> <\tweak #'duration-log #2 \tweak #'dot-count #0 c g' e'>2.\fermata |
>
> Unfortunately I can't make the dot disappear easily (the dot-count
> thing I was trying doesn't work). I could probably write a function to
> remove the dot for this case (which might not be a bad idea:
> \tripleStop <c g' e'>2.\fermata), but if there's a simple tweak to get
> rid of the dot I'd be interested to know.

Since \tweak only works with objects directly related to the music
input, setting 'dot-count doesn't work here.  You can however get at
the Dot grob via a NoteHead override (it has access to the grob-object
'dot):

stop =
#(define-music-function (parser location music) (ly:music?)
   (set! (ly:music-property music 'tweaks)
         (acons 'before-line-breaking
                (lambda (grob)
                  (let ((dots (ly:grob-object grob 'dot)))
                    (ly:grob-set-property! grob 'duration-log 2)
                    (and (ly:grob? dots)
                         (ly:grob-set-property! dots 'dot-count 0))))
                (ly:music-property music 'tweaks)))
   music)

\relative c' {
  <\stop c g' e'>2.\fermata
}

Regards,
Neil




reply via email to

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