lilypond-user
[Top][All Lists]
Advanced

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

Re: Suppress NoteNames output on ties ?


From: Michael Ellis
Subject: Re: Suppress NoteNames output on ties ?
Date: Sun, 20 Mar 2011 14:53:14 -0400

On Sun, Mar 20, 2011 at 9:42 AM, Gilles THIBAULT
<address@hidden> wrote:
> #(define-music-function (parser location music) (ly:music?)
> (let ((prev-was-tie? #f))
>  (define (tied-note->skip evt)
>    (let ((elt (ly:music-property evt 'element))
>          (elts (ly:music-property evt 'elements))
>          (name (ly:music-property evt 'name)))
>     (cond ((and prev-was-tie? (eq? name 'EventChord))
>               (set! prev-was-tie? #f)
>               (skip-of-length  evt))
>           ((eq? name 'TieEvent)
>               (set! prev-was-tie? #t)
>               #f) ;; all tie events will be deleted
>           (else
>               (if (ly:music? elt) (ly:music-set-property! evt 'element
>                                       (tied-note->skip elt)))
>               (if (pair? elts) (ly:music-set-property! evt 'elements
>                                       (filter-map tied-note->skip elts)))
>               evt))))
> (tied-note->skip music)))

Thank you, Gilles. This is very nice and works almost perfectly.  I've
found one case where it isn't yet quite right.

I was copying a part from Bernstein's Chichester Psalms.  In Movement
I,  there is a section in 7/4 with dashed bars in each measure after
beat 4.  To save typing, I had created a variable thus:

bdash = { \noBreak \bar "dashed" }

The \noBreak is necessary to prevent system breaks at the dashed bar.
I noticed that the function was not suppressing the NoteNames output
for notes tied across the dashed bar lines.  It appears that the
\noBreak is the culprit.

mymusic = {
    \time 7/4
    c'2 c'2 ~ \bar "dashed" c'2.^"ok"  |
    c'2 c'2 ~ { \noBreak \bar "dashed" } c'2.^"fail" |
    c'2 c'2 ~ \noBreak  c'2.^"fail" |
}

I will try to debug and fix it -- unless someone already knows the answer!

Cheers,
Mike

Attachment: notenamesnobreak.png
Description: PNG image


reply via email to

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