this new default value may be restored with the
@code{\unset fontSize} command.
-More information about changing context properties can be found in
-the Notation Reference -- see
-@ruser{Changing context default settings}.
+ @unnumberedsubsubsec Setting context properties with @code{\context}
+
+ The values of context properties may be set in @emph{all} contexts
+ of a particular type, such as all @code{Staff} contexts, with a single
+ command. The context type is identified by using its
+ type name, like @code{Staff}, prefixed by a back-slash: @code{\Staff}.
+ The statement which sets the property value is the same as that in a
+ @code{\with} block, introduced above. It is placed in a
+ @code{\context} block within a @code{\layout} block. Each
+ @code{\context} block will affect all contexts of the type specified
+ throughout the @code{\score} or @code{\book} block in which the
+ @code{\layout} block appears. Here is a example to show the format:
+
+ @lilypond[verbatim,quote]
+ \score {
+ \new Staff {
+ \relative c'' {
+ cis4 e d ces
+ }
+ }
+ \layout {
+ \context {
+ \Staff
+ extraNatural = ##t
+ }
+ }
+ }
+ @end lilypond
+
+ @noindent
+ Context properties set in this way may be overridden for particular
+ instances of contexts by statements in a @code{\with} block, and by
+ @code{\set} commands embedded in music statements.
+
+@seealso
+
+Notation Reference: @ruser{Changing context default settings},
+@ruser{The set command}.
+
+Internals Reference: @rinternals{Contexts},
+@rinternals{Tunable context properties}.
@node Adding and removing engravers
}
@end lilypond
- Notation Reference: @ruser{Modifying context plug-ins}.
+@noindent
+The values of context properties may also be set
+for all contexts of a particular type by including the
+@code{\set} command in a @code{\context} block in the
+same way.
+
+@seealso
+
++Notation Reference: @ruser{Modifying context plug-ins},
++@ruser{Changing context default settings}.
+
@node Extending the templates
@section Extending the templates