Dan Eble <[email protected]> writes: > This currently compiles without warnings. > > ``` > \version "2.25.30" > \new Voice \with { > \propertySet Staff.instrumentName "Quack" > } { > \contextPropertyCheck Staff.instrumentName #'() > \contextPropertyCheck Voice.instrumentName "Quack" > R1 > } > ``` > > It seems wrong to set the property in Voice quietly when the user > wrote "Staff".
Why? If the user puts a setting that is normally Staff-wide (like \ottava #1) in a \with-block of a Voice, why would you assume that they don't know what they are doing? If they put \hide TimeSignature in the \with-block of a Staff context, would you want to warn about it because \hide TimeSignature is implemented as \override Bottom.TimeSignature.transparent = #t and Staff is no Bottom context? > What would be ideal? > > A. warn about it (and do whatever is easily maintained) > B. allow setting properties in enclosing contexts > C. ... I'd leave things as they are. -- David Kastrup
