lilypond-devel
[Top][All Lists]
Advanced

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

Re: [patch] first-clef property


From: Juergen Reuter
Subject: Re: [patch] first-clef property
Date: Sun, 3 Feb 2008 02:04:38 +0100 (CET)



On Sat, 2 Feb 2008, Nicolas Sceaux wrote:

...

I have worked today on a draft, simple incipit engraver, with clef,
key signature and time signature. Might someone comment on it? I have
no experience with that part of the code. If something can be made
more eleguant, please speak :-)


Thanks a lot!  To me, your code looks fine, except for the condition

+  if (clef_)
+    clef_ = key_signature_ = time_signature_ = 0;

which probably should be something like:

+  if (clef_ || key_signature_ || time_signature_)
+    clef_ = key_signature_ = time_signature_ = 0;

Or maybe completely remove the condition.

However, I see a very important feature missing in this approach:
An incipit should (at least in my view) be thought of as the beginning of a piece written in notation that comes close to the autograph or first publishing. That is, the incipit actually starts the music. Then, at some point (e.g. after the clef or after the first note of each voice or after the first few notes), the music is reset to its start, the notation switches to modern style, and printing starts again, this time from the very beginning to the very end.

In particular, as Laura points out, many people want to include one or more notes in the incipit. More generally, virtually any music expression could appear in an incipit -- it's just printed in an old-fashioned style or otherwise coming much closer to the original.

Thus, the ideal behavior of an incipt engraver would be to ordinary start printing the piece, using (for example) a mensural context and the info from IncipitClef, IncipitSignature, and IncipitTimeSignature. Then, when the InciptEngraver has done its work, the music should rewind back to the very beginning, and ordinary type setting should start.

A couple of weeks ago, I think I already posted the idea of having a scheme function, say "\makeIncipit { <music> }", that takes all of the music as argument and creates from it another music expression with the incipit. You could then say something like "\makeIncipt { <music> } <music>" to create the incipit, followed by the actual music. However note, that currently it is not possible to implement such a scheme function for several technical details, such as the system start delimiter that would also have to be placed *after* the incipit. Maybe with some more changes at your incipit engraver, this engraver can be used to actually implement the "\makeIncipit" scheme function. This is what I thought of when I used the word "challenging". ;-)

Greetings,
Juergen




reply via email to

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