lilypond-user
[Top][All Lists]
Advanced

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

Re: Problem with blackpetrucci


From: Lukas-Fabian Moser
Subject: Re: Problem with blackpetrucci
Date: Wed, 4 Aug 2021 22:41:27 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0

Hi Kees,

Am 04.08.21 um 21:54 schrieb Kees van den Doel:
In black notation minim looks like modern 1/4 note and semiminim looks like modern 1/8 note.

It is not correct though, semiminim and shorter notes are one flag short, so Minim and Semiminim look identical. See example.

Unless I'm missing something this is a bug, is there a workaround?

This is documented in https://lilypond.org/doc/v2.22/Documentation/notation/typesetting-mensural-music.html#mensural-note-heads:

The blackpetrucci style produces note heads usable in black mensural notation or coloratio sections in white mensural notation. Because note head style does not influence flag count, in this style a semiminima should be notated as a8*2, not a4, otherwise it will look like a minima. The multiplier can be different if coloratio is used, e.g., to notate triplets.
One might write an engraver that automatically turns 4 into 8*2, 8 into 16*2 etc., see below. But there's also blackmensural.ly by Lukas Pietsch; it's quite old (and to be honest I don't know it at all and can't say how it deals with your problem), but maybe it's of use to you: http://www.lukas-pietsch.de/Music/

\version "2.20.0"

flag_change_engraver =
#(lambda (ctx)
   (make-engraver
    (listeners
     ((note-event engraver event)
      (let* ((dur (ly:event-property event 'duration))
             (dur-log (ly:duration-log dur))
             (dur-dots (ly:duration-dot-count dur))
             (dur-factor (ly:duration-scale dur)))
        (if (>= dur-log 2)
            (ly:event-set-property!
             event 'duration (ly:make-duration
                              (1+ dur-log)
                              dur-dots
                              (* dur-factor 2)))))))))


\layout {
  \context {
    \Voice
    \consists #flag_change_engraver
  }
}

\score {
  \new Voice {
    \autoBeamOff
    \override Flag.style = #'mensural
    a1 a2 a4 a8 a16 r
    \override NoteHead.style = #'blackpetrucci
    a1 a2 a4 a8 a16 r
    \override NoteHead.style = #'petrucci
    a1 a2 a4 a8 a16 r
  }
}

Lukas


reply via email to

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