(apply define-grob-property x))
`(
-;;
-;; a
-;;
+;;;
+;;; a
+;;;
(add-stem-support ,boolean? "If set, the @code{Stem} object is
included in this script's support.")
(after-line-breaking ,boolean? "Dummy property, used to trigger
grobs, this should contain only one number.")
-;;
-;; b
-;;
+;;;
+;;; b
+;;;
(bar-extent ,number-pair? "The Y-extent of the actual bar line.
This may differ from @code{Y-extent} because it does not include the
dots in a repeat bar line.")
beamlet is determined by taking either the default length or the
length specified by @code{beamlet-max-length-proportion}, whichever is
smaller.")
- (beam-gap ,number-pair? "Size of a gap in a @code{Beam}.")
(beamlet-max-length-proportion ,pair? "The maximum length of a
beamlet, as a proportion of the distance between two adjacent stems.")
(before-line-breaking ,boolean? "Dummy property, used to trigger
(broken-bound-padding ,number? "The amount of padding to insert
when a spanner is broken at a line break.")
-;;
-;; c
-;;
- (c0-position ,integer? "An integer indicating the position of
-middle@tie{}C.")
- (chord-dots ,boolean? "If set, remove dots which the
-@code{DotColumn} algorithm would vertically position too far away from
-note heads.")
+;;;
+;;; c
+;;;
(circled-tip ,boolean? "Put a circle at start/@/end of
hairpins (al/@/del niente).")
(clip-edges ,boolean? "Allow outward pointing beamlets at the
receives this number. The following measures are numbered in
increments from this initial value.")
-;;
-;; d
-;;
+;;;
+;;; d
+;;;
(damping ,number? "Amount of beam slope damping.")
(dash-definition ,pair? "List of @code{dash-elements} defining the
dash structure. Each @code{dash-element} has a starting t value,
i.e., @code{0} = whole note, @code{1} = half note, etc.")
-;;
-;; e
-;;
+;;;
+;;; e
+;;;
(eccentricity ,number? "How asymmetrical to make a slur.
Positive means move the center to the right.")
(edge-height ,pair? "A pair of numbers specifying the heights of
set this to @code{(+inf.0 . -inf.0)}.")
-;;
-;; f
-;;
+;;;
+;;; f
+;;;
(flag-count ,number? "The number of tremolo beams.")
+ (flag-style ,symbol? "The style of the flag to be used with
+@code{MetronomeMark}. Available are @code{'modern-straight-flag},
+@code{'old-straight-flag}, @code{flat-flag}, @code{mensural} and
+@code{'default}")
(flat-positions ,list? "Flats in key signatures are placed
within the specified ranges of staff-positions. The general form
is a list of pairs, with one pair for each type of clef, in order
(full-size-change ,boolean? "Don't make a change clef smaller.")
-;;
-;; g
-;;
+;;;
+;;; g
+;;;
(gap ,ly:dimension? "Size of a gap in a variable symbol.")
(gap-count ,integer? "Number of gapped beams for tremolo.")
(glissando-skip ,boolean? "Should this @code{NoteHead} be skipped
(grow-direction ,ly:dir? "Crescendo or decrescendo?")
-;;
-;; h
-;;
+;;;
+;;; h
+;;;
(hair-thickness ,number? "Thickness of the thin line in a bar
line.")
(harp-pedal-details ,list? "An alist of detailed grob properties
left and one to the right of this grob.")
-;;
-;; i
-;;
+;;;
+;;; i
+;;;
(id ,string? "An id string for the grob. Depending on the typestting
backend being used, this id will be assigned to a group containing all of
the stencils that comprise a given grob. For example, in the svg backend,
slur quants to this position, and print the respective scores.")
-;;
-;; k
-;;
+;;;
+;;; k
+;;;
(keep-inside-line ,boolean? "If set, this column cannot have
objects sticking into the margin.")
(kern ,ly:dimension? "Amount of extra white space to add. For
correction and @code{1} for full correction.")
-;;
-;; l
-;;
+;;;
+;;; l
+;;;
(labels ,list? "List of labels (symbols) placed on a column.")
(layer ,integer? "An integer which determines the order of printing
objects. Objects with the lowest value of layer are drawn first, then
(long-text ,markup? "Text markup. See @ruser{Formatting text}.")
-;;
-;; m
-;;
+;;;
+;;; m
+;;;
(max-beam-connect ,integer? "Maximum number of beams to connect
to beams from this stem. Further beams are typeset as beamlets.")
(max-stretch ,number? "The maximum amount that this
@code{VerticalAxisGroup} can be vertically stretched (for example, in
order to better fill a page).")
+ (maximum-gap ,number? "Maximum value allowed for @code{gap}
+property.")
(measure-count ,integer? "The number of measures for a
multi-measure rest.")
(measure-length ,ly:moment? "Length of a measure. Used in some
Y@tie{}dimension, measured in @code{staff-space} units.")
-;;
-;; n
-;;
+;;;
+;;; n
+;;;
(neutral-direction ,ly:dir? "Which direction to take in the
center of the staff.")
(neutral-position ,number? "Position (in half staff spaces) where
easy-notation note heads.")
-;;
-;; o
-;;
+;;;
+;;; o
+;;;
(outside-staff-horizontal-padding ,number? "By default, an
outside-staff-object can be placed so that is it very close to another
grob horizontally. If this property is set, the outside-staff-object
is raised so that it is not so close to its neighbor.")
(outside-staff-padding ,number? "The padding to place between
-this grob and the staff when spacing according to
-@code{outside-staff-priority}.")
+grobs when spacing according to @code{outside-staff-priority}.
+Two grobs with different @code{outside-staff-padding} values have
+the larger value of padding between them.")
(outside-staff-placement-directive ,symbol? "One of four directives
telling how outside staff objects should be placed.
@itemize @bullet
@code{outside-staff-priority} is closer to the staff.")
-;;
-;; p
-;;
+;;;
+;;; p
+;;;
(packed-spacing ,boolean? "If set, the notes are spaced as
tightly as possible.")
(padding ,ly:dimension? "Add this much extra space between
(prefer-dotted-right ,boolean? "For note collisions, prefer to
shift dotted up-note to the right, rather than shifting just the
dot.")
+ (protrusion ,number? "In an arpeggio bracket, the length of the
+horizontal edges.")
-;;
-;; r
-;;
+;;;
+;;; r
+;;;
(ratio ,number? "Parameter for slur shape. The higher this
number, the quicker the slur attains its @code{height-limit}.")
(remove-empty ,boolean? "If set, remove group if it contains no
in a 3/2 measure.")
-;;
-;; s
-;;
+;;;
+;;; s
+;;;
(same-direction-correction ,number? "Optical correction amount
for stems that are placed in tight configurations. This amount is
used for stems with the same direction to compensate for note head to
elements closer together.")
(slope ,number? "The slope of this object.")
(slur-padding ,number? "Extra distance between slur and script.")
+ (snap-radius ,number? "The maximum distance between two objects that
+will cause them to snap to alignment along an axis.")
(space-alist ,list? "A table that specifies distances between
prefatory items, like clef and time-signature. The format is an alist
of spacing tuples: @code{(@var{break-align-symbol} @var{type}
this property.")
-;;
-;; t
-;;
+;;;
+;;; t
+;;;
(text ,markup? "Text markup. See @ruser{Formatting text}.")
-;;FIXME -- Should both be the same?
+ ;;FIXME -- Should both be the same?
(text-direction ,ly:dir? "This controls the ordering of the
words. The default @code{RIGHT} is for roman text. Arabic or Hebrew
should use @code{LEFT}.")
(tie-configuration ,list? "List of @code{(@var{position} .
@var{dir})} pairs, indicating the desired tie configuration, where
@var{position} is the offset from the center of the staff in staff
-space and @var{dir} indicates the direction of the tie
-(@code{1}=>up, @w{@code{-1}}=>down, @code{0}=>center). A non-pair entry
+space and @var{dir} indicates the direction of the tie (@code{1}=>up,
+@w{@code{-1}}=>down, @code{0}=>center). A non-pair entry
in the list causes the corresponding tie to be formatted
automatically.")
(to-barline ,boolean? "If true, the spanner will stop at the bar
(transparent ,boolean? "This makes the grob invisible.")
-;;
-;; u
-;;
+;;;
+;;; u
+;;;
(uniform-stretching ,boolean? "If set, items stretch
proportionally to their durations. This looks better in complex
polyphonic patterns.")
(use-skylines ,boolean? "Should skylines be used for side
positioning?")
-;;
-;; v
-;;
+;;;
+;;; v
+;;;
(vertical-skylines ,ly:skyline-pair? "Two skylines, one above and
one below this grob.")
-;;
-;; w
-;;
+;;;
+;;; w
+;;;
(when ,ly:moment? "Global time step associated with this column
happen?")
(whiteout ,boolean? "If true, the grob is printed over a white
texts.")
-;;
-;; x
-;;
+;;;
+;;; x
+;;;
(X-extent ,number-pair? "Hard coded extent in X@tie{}direction.")
(X-offset ,number? "The horizontal amount that this object is
moved relative to its X-parent.")
@var{right} are in @code{staff-space} units of the current staff.")
-;;
-;; y
-;;
+;;;
+;;; y
+;;;
(Y-extent ,number-pair? "Hard coded extent in Y@tie{}direction.")
(Y-offset ,number? "The vertical amount that this object is moved
relative to its Y-parent.")
-;;
-;; z
-;;
+;;;
+;;; z
+;;;
(zigzag-length ,ly:dimension? "The length of the lines of a
zigzag, relative to @code{zigzag-width}. A value of@tie{}@code{1}
gives 60-degree zigzags.")
dynamic spanners.")
(all-elements ,ly:grob-array? "An array of all grobs in this line. Its
function is to protect objects from being garbage collected.")
- (arpeggio ,ly:grob? "A pointer to an @code{Arpeggio} object.")
(axis-group-parent-X ,ly:grob? "Containing X@tie{}axis group.")
(axis-group-parent-Y ,ly:grob? "Containing Y@tie{}axis group.")
bounds are spaced.")
(bracket ,ly:grob? "The bracket for a number.")
+ (c0-position ,integer? "An integer indicating the position of
+middle@tie{}C.")
(columns ,ly:grob-array? "An array of grobs, typically containing
@code{PaperColumn} or @code{NoteColumn} objects.")
(concurrent-hairpins ,ly:grob-array? "All concurrent hairpins.")
(cause ,scheme? "Any kind of causation objects (i.e., music, or perhaps
translator) that was the cause for this grob.")
- (cross-staff ,boolean? "For a beam or a stem, this is true if we
-depend on inter-staff spacing.")
+ (cross-staff ,boolean? "True for grobs whose @code{Y-extent} depends on
+inter-staff spacing. The extent is measured relative to the grobs's parent
+staff (more generally, its @code{VerticalAxisGroup}) so this boolean flags
+grobs that are not rigidly fixed to their parent staff.
+Beams that join notes from two staves are @code{cross-staff}.
+Grobs that are positioned around such beams are also @code{cross-staff}.
+Grobs that are grouping objects, however, like @code{VerticalAxisGroups}
+will not in general be marked @code{cross-staff} when some of the members
+of the group are @code{cross-staff}.")
(delta-position ,number? "The vertical position difference.")