Robert Hickman <robehick...@gmail.com> writes:

> Thanks, I have a vague familiarity with lisps, but have never used scheme.
>
> I'm not certain how to visually parse a statment like \Staff \omit
> TimeSignature. It kind of looks like \Staff is a function taking two
> arguments, where \omit is either a constant or a function that returns
> a constant, and TimeSignature is some kind of constant. But it could
> also be that TimeSigniture is being passed to \omit, which returns to
> \staff. It's difficult to read because it doesn't parenthesise like
> typical programming languages.

That's not Lisp/Scheme syntax but LilyPond syntax.  There is a manual
for it.  Several, in fact.

\context {
  \Staff
  \omit TimeSignature
}

is a context definition that starts by copying the existing "Staff"
context definition and adds an omission of the stencil for the
TimeSignature grob (graphical object) to it, then takes this as a new
context definition.  Since this copies the original "\name Staff"
definition of the origin Staff definition, it overrides the existing
Staff definition.  If you specified a different name, it would instead
create a new context definition under the given name.

I am not enthused with that syntax either.

-- 
David Kastrup

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to