Bernard <[email protected]> writes: > On 03-04-16 17:57, Paul Morris wrote: >>> On Apr 3, 2016, at 11:53 AM, Paul Morris <[email protected]> wrote: >>> >>> This should help: >>> http://lilypond.org/doc/v2.18/Documentation/notation/changing-context-default-settings#index-_005cwith-3 >> See also: >> http://lilypond.org/doc/v2.18/Documentation/notation/modifying-context-plug_002dins#index-_005cwith >> >> -Paul > Hi Paul, > > That does help. I found out \with is a very special statement.
Not really. \with can be part of other constructs, just like "else" can be part of other constructs in many programming languages (including Scheme). It is not a "statement" at all. > It influence what happens before the statement, it must be executed > just after \new . That is the reason why my examples 4 and 5 did not > work. > And it influence what happens after the statement. If within the Staff > not a additional Staff property can be set. > > No wonder it confuses me. \with introduces "context modifications". They are basic expressions in that they can be stored in variables and passed to functions, but to take effect, they need to be applied to an actually created context, and there are various syntactic constructs for doing that. They "influence what happens after the statement" like any modification to anything. Their influence is restricted to contexts they are applied to (possibly via layout or context definitions or wrapped into other context modifications). -- David Kastrup _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
