lilypond-user
[Top][All Lists]
Advanced

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

Re: temporarily disable Dot_column_engraver?


From: Mike Solomon
Subject: Re: temporarily disable Dot_column_engraver?
Date: Mon, 23 Jun 2014 09:48:03 +0300

On Jun 23, 2014, at 4:25 AM, Mark Polesky <address@hidden> wrote:

> Normally, the dots on dotted notes in different voices
> should be aligned (hence the Dot_column_engraver), but when
> one of the voices is engraved in a smaller notation size,
> the standard practice seems to be to discard the usual
> alignment, so that the dot on the smaller note is not so far
> from its note head.
> 
> The attached scans demonstrate this; they are taken from:
> 
>   Franz Liszt: Chasse-neige (measure 4)
>     no.12 from Etudes d’Exécution Transcendante
>       Breitkopf & Härtel, 1910-11
>       Peters, 1913-1917
> 
> To achieve this in LilyPond, at first I thought to just move
> the Dot_column_engraver out of the Staff context and into
> the Voice contexts.  That worked perfectly, except that if I
> need subsequent dots to be aligned, they won't be.  Is there
> some override to tell LilyPond: In this voice, stop using
> the staff's Dot_column_engraver, and start using the Voice's
> *own* Dot_column_engraver, which I could then revert when
> I'm done with the small notes?  If not, is there some way to
> implement this (without manual tweaks, of course)?
> 
> Thanks!
> - Mark
> 
> \version "2.19.9"


There may be a way to temporarily silence engravers now in LilyPond (I’m not 
sure), but if that hasn’t been implemented yet, here is how I got around a 
similar problem in the past.

If you’re OK rolling a custom engraver and reading a bit of C++, the Dot_column 
engraver is very short (one of the shortest) and can be reimplemented in Scheme.
At that point, you can include two separate dot column engravers - one for 
voice and one for staff.  You can control which one is activated based by 
screening based on the function ly:context-current-moment.
scheme-engraver.ly in the regression tests gives info on how to make a custom 
engraver.

Cheers.
MS


reply via email to

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