Although I think Mudela is quite simple to use, I dislike certain
aspects of it. One is that it is so irregular, or context-dependent.

An example is in the following, where I want one staff for clarinet,
one for alto sax, and one for tenor sax.

  \notes
  ...
  \context Staff = kl <  ...  >
  \context Staff = as <  ...  >
  \context Staff = ts <  ...  >

LilyPond will fail to process the second line, because it is in note
mode, and as will parse as a note. The kl and ts will work OK.  If I
remove the \notes it parses OK, and if I add quotation marks around as
it also works.

  \notes
  \context Staff = kl <  ...  >
  \context Staff = "as" <  ...  >
  \context Staff = ts <  ...  >

I don't have any solution this, other than disallowing unquoted
strings...


Another thing that I don't understand att all is the context/translate
stuff.  It's pretty hard to realize what contexts LilyPond will
automatically insert in my score.  If I have a \context StaffGroup <
\context Void < ... > >, it will add a Staff etc. And somewhere it
seems to add an OrchestralScore or something also.

But back to Mudela. The strange part concerning Mudela in all this is
the \translate syntax.

The current syntax i something like.

\translate {
  \StaffContext
  \consists "Bar_engraver"
  \property ...
}

Wouldn't something along the lines of the following be more natural?
I see no point of adding a \FooContext for each context Foo, when the
string Foo is perfectly valid as a context identifier.  Or is there
something I don't see?

\modifycontext Staff {
  \add "Bar_engraver"
  \property ...
}

-- 
David Kågedal

Reply via email to