> That's not Lisp/Scheme syntax but LilyPond syntax. There is a manual for it. > Several, in fact.
I'm aware. \context { \Staff \omit TimeSignature } If I'm understanding this correctly, this would be written something like the following in a typical OO syntax: x = Staff.clone(); x.omit(TimeSignature); On 17 April 2018 at 16:40, David Kastrup <d...@gnu.org> wrote: > 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