Hello, all:
I'm a big fan of abstraction and object-oriented thought (regardless of whether it's computer-related) -- although I have, from time to time, been accused of "over-engineering", I invariably find that (observing the "point of diminishing marginal utility, of course!) the more flexibility you include up front, the better the overall experience will be.
For this reason, I have already begun dividing my lilypond "source code" into multiple files:
1. "music" file(s) -- this includes anything that is "content" (e.g., notes, dynamics, individual Voice markings, etc.) and not "presentation"
2. "style" file(s) -- this is my "house style" (tweaks, etc.), which is where I adjust the default settings in Lilypond to my personal preference
3. "layout" file(s) -- this is where I put presentation directives (e.g., page and score info, line breaks, titling, etc.)
It seems to have worked wonderfully so far (n.b., I'm VERY early on the Lily-Journey!)
However, as flexible as this may be, I can foresee running into problems:
a. Cue notes are "presentation" information, really (mostly!?), as they would exist in a part but not necessarily in a score -- how best to include them?
b. Certain tweaks might be dependent upon layout (e.g., line breaks might affect placement, voice combinations would affect articulation tweaks, etc.) -- how best to apply tweaks differentially?
c. etc.??
What are others' thoughts on the matter? How will/can lilypond (the application) be leveraged to allow for and take advantage of abstraction/OO?
Thanks, Kieren.
_______________________________________________ Lilypond-user mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/lilypond-user