Tim McNamara wrote: > I think that this could simplify the syntax by creating a standard skeleton > for .ly files going from most global to most specific: > > \version information > > \paper information > > \form information (number of bars, repeat locations, bars-per-line, rehearsal > mark locations, number of staves, instruments/voices, \clef, \key, \time, > etc.) > > \music information (could be \notes (including percussion), \chordnames or > \lyrics)
As a programmer first and musician second, I have a deep appreciation ("awe" is more like it) for how LilyPond got to where it is. Computers deal with very strict rules. Humans, when writing out music, apply rules very loosely. We stretch things, we abbreviate, we shift things around for dubious reasons, we make up new symbols, we assign new meaning to old symbols, we apply titling rules that make sense to us at the time. And yet, everyone wants LilyPond to engrave exactly what they were writing out by hand. In virtually every case, LilyPond can do that, but that immense flexibility means complexity. If we were willing to have LilyPond become the music police, so that it engraved a specific, approved subset of the myriad rules that have been applied to engraving over time, it would certainly be possible to simplify the syntax considerably. Would that make users happy? I don't think it would. And so, you have to be able to support numbering every measure on top, numbering every measure below, numbering every 5th measure, numbering every 8th measure, numbering only at the start of each system, numbering every staff, numbering some staves, boxing the numbers, circling the numbers, italicizing the numbers, skipping the number when there is a rehearsal mark, or not, etc. Every individual will say "well, of course it needs to support X!", but everyone's X will be different. The same applies to layout. Each movement on a separate page? Multiple movements on a page? New movements indented, or not? Different titles on each movement? Different titles on each page? Suppress some titles on certain pages? One huge long system like a piano roll? Again, LilyPond can do ALL of that. It's not entirely clear you could retain that flexibility and still simplify the syntax significantly. That's the problem. Any new scheme must embrace what has already been done. That virtually guarantees there are going to be multiple ways to specify things. -- Tim Roberts, t...@probo.com Providenza & Boekelheide, Inc. _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user