lilypond-devel
[Top][All Lists]
Advanced

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

RE: Style


From: Carl D. Sorensen
Subject: RE: Style
Date: Wed, 5 Apr 2006 17:57:37 -0600

I think there are two things that are getting mixed up in this
discussion. 

The first is the general layout of the music (fonts, size, etc.) that
can be taken care of by global tweaks, and included at the top of the
.ly file.  This capability is just fine.  And I don't think that this is
the issue David has raised.

The second issue is the fact that sometimes the engraving rules don't
work appropriately, i.e. there is a collision that is not detected, or a
horizontal or vertical spacing isn't correct.  At present, in lilypond
we apply a \once \override to make it happen only on one note.  But the
problem that David is identifying is that the failure in the engraving
rules may only happen in one of the three instances where I want to
reuse the same music.  So he'd like to be able to put an identifier in
the music, but not actually apply the tweak.  Then, in each instance
where the music is used, he could choose what tweaks to apply to which
identifier in the music.

I can see how this would facilitate the reuse of the music.  I could see
that it might even be able to be implemented, if a property were
established for an object called "external-identifier".  Then, there
could be a function called "apply-tweak-to-named-object" that would hunt
through a music expression, and any object with a given
external-identifier would have a tweak applied.  This might be able to
happen, given some of the delayed evaluation work that Erik(?) has been
working on.  But it's a fundamental change in the philosophy of
lilypond.

If this were an easy thing to do, I could see that it might be worth it.
If not, it seems to me that the development time would be better spent
on helping the engraving rules to avoid the collisions, e.g. through
implementation of skyline bounding boxes instead of just rectangles.

Another thought.  Is there a way, within the current syntax of lilypond,
do do the following?

1. Put the music in a .ly file, with tags or something else to indicate
music objects that might need tweaks later
2. Include the .ly file in another file, and indicate that tweaks are to
be applied to music objects that are tagged in a particular way
3. Include the .ly file in a third file, and apply tweaks to music
objects tagged in some other way.

If this could be done, any time the music was included in a score that
required tweaks, the following would be done.

1.  Edit the music file to tag the affected music object.
2.  Edit the score file to apply the tweak to the affected tag.

And if another score file used the music file, it would just ignore the
tag, so the tweaks would not be applied in any other scores.

Is this the kind of functionality you're after, David?  And is this
doable in lilypond?

Carl Sorensen




reply via email to

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