X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Documentation%2Fnotation%2Fchanging-defaults.itely;h=5ea8a2ebb5cef9e2f9ba9d559e61f75febdf58f1;hb=b3f0c2f6c352a850f03dc44a947776199eb3fa0b;hp=e8a5ad20f167e203831f85dff8abf56d48d82b50;hpb=3d8089a42af6304edb8dad56220e845c84832bb2;p=lilypond.git diff --git a/Documentation/notation/changing-defaults.itely b/Documentation/notation/changing-defaults.itely index e8a5ad20f1..5ea8a2ebb5 100644 --- a/Documentation/notation/changing-defaults.itely +++ b/Documentation/notation/changing-defaults.itely @@ -233,6 +233,12 @@ input entered in @code{\figuremode} mode. The voice context used within a @code{TabStaff} context. Usually left to be created implicitly. +@strong{@emph{CueVoice}} + +A voice context used to render notes of a reduced size, intended +primarily for adding cue notes to a staff, see @ref{Formatting +cue notes}. Usually left to be created implicitly. + @strong{@emph{ChordNames}} Typesets chord names. @@ -253,7 +259,6 @@ documented. * NoteNames - * CueVoice Not documented * Global Hard coded entry point for LilyPond. Cannot be tuned. * Devnull @@ -739,6 +744,22 @@ after calling @code{\RemoveEmptyStaffContext}, ie @node Defining new contexts @subsection Defining new contexts +@cindex contexts, defining new +@cindex engravers, including in contexts + +@funindex \alias +@funindex alias +@funindex \name +@funindex name +@funindex \type +@funindex type +@funindex \consists +@funindex consists +@funindex \accepts +@funindex accepts +@funindex \denies +@funindex denies + Specific contexts, like @code{Staff} and @code{Voice}, are made of simple building blocks. It is possible to create new types of contexts with different combinations of engraver plug-ins. @@ -1412,8 +1433,11 @@ such as @seealso -Internals: @rinternals{OverrideProperty}, @rinternals{RevertProperty}, -@rinternals{PropertySet}, @rinternals{Backend}, and +Internals: +@rinternals{OverrideProperty}, +@rinternals{RevertProperty}, +@rinternals{PropertySet}, +@rinternals{Backend}, @rinternals{All layout objects}. @@ -1790,6 +1814,7 @@ property (modified with @code{\set}) was created. @menu * Input modes:: * Direction and placement:: +* Context layout order:: * Distances and measurements:: * Staff symbol properties:: * Spanners:: @@ -1913,7 +1938,7 @@ left, right or center; etc. Most of these choices may be left to be determined automatically by LilyPond, but in some cases it may be desirable to force a particular direction or placement. -@strong{Default actions} +@strong{Articulation direction indicators} By default some directions are always up or always down (e.g. dynamics or fermata), while other things can alternate between @@ -1921,26 +1946,12 @@ up or down based on the stem direction (like slurs or accents). @c TODO Add table showing these -@strong{Context layout order} - -Contexts are normally positioned in a system from top to bottom -in the order in which they are encountered. Note, however, that -a context will be created implicitly if a command is encountered -when there is no suitable context available to contain it. When -contexts are nested, the outer context will exclude inner contexts -which are not included in its @qq{accepts} list; excluded contexts -will be repositioned below the outer context. - -The default order in which contexts are laid out and the -@qq{accepts} list can be changed, see @ref{Aligning contexts}. - -@strong{Articulation direction indicators} - -When adding articulations to notes the direction indicator, -@code{^} (meaning @qq{up}), @code{_} (meaning @qq{down}) or -@code{-} (meaning @qq{use default direction}), can usually be -omitted, in which case @code{-} is assumed. But a direction -indicator is @strong{always} required before +The default action may be overridden by prefixing the articulation +by a @emph{direction indicator}. Three direction indicators are +available: @code{^} (meaning @qq{up}), @code{_} (meaning @qq{down}) +and @code{-} (meaning @qq{use default direction}). The direction +indicator can usually be omitted, in which case @code{-} is assumed, +but a direction indicator is @strong{always} required before @itemize @item @code{\tweak} commands @@ -1951,7 +1962,7 @@ indicator is @strong{always} required before @item articulation shortcuts, e.g. @code{-.}, @code{->}, @code{--} @end itemize -These indications affect only the next note. +Direction indicators affect only the next note: @lilypond[verbatim,quote,relative=2] c2( c) @@ -2009,6 +2020,31 @@ c2( c) @end lilypond +@node Context layout order +@subsection Context layout order + +@cindex contexts, layout order + +Contexts are normally positioned in a system from top to bottom +in the order in which they are encountered in the input file. When +contexts are nested, the outer context will include inner nested +contexts as specified in the input file, provided the inner contexts +are included in the outer context's @qq{accepts} list. Nested +contexts which are not included in the outer context's @qq{accepts} +list will be repositioned below the outer context rather than nested +within it. + +Note that a context will be silently created implicitly if a command +is encountered when there is no suitable context available to +contain it. This can give rise to unexpected new staves or scores. + +The default order in which contexts are laid out and the +@qq{accepts} list can be changed, see @ref{Aligning contexts}. + +@seealso +Learning Manual: +@rprogram{An extra staff appears}. + @node Distances and measurements @subsection Distances and measurements @@ -2396,8 +2432,10 @@ hairpins with @code{\!}. @seealso -Internals Reference: @rinternals{TextSpanner}, -@rinternals{Glissando}, @rinternals{VoiceFollower}, +Internals Reference: +@rinternals{TextSpanner}, +@rinternals{Glissando}, +@rinternals{VoiceFollower}, @rinternals{TrillSpanner}, @rinternals{line-spanner-interface}. @@ -2545,7 +2583,7 @@ beginning of a line. Or to be more precise, before a line break, where there is no line break, or after a line break. Alternatively, these eight combinations may be specified -by pre-defined functions, defined in @file{scm/output-lib.scm}, +by pre-defined functions, defined in @file{scm/@/output@/-lib@/.scm}, where the last three columns indicate whether the layout objects will be visible in the positions shown at the head of the columns: