;;;; This file is part of LilyPond, the GNU music typesetter.
;;;;
-;;;; Copyright (C) 1998--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
+;;;; Copyright (C) 1998--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
;;;;
;;;; LilyPond is free software: you can redistribute it and/or modify
averaged over staves.")
(avoid-note-head ,boolean? "If set, the stem of a chord does not
pass through all note heads, but starts at the last note head.")
+ (avoid-scripts ,boolean? "If set, a tuplet bracket avoids the
+scripts associated with the note heads it encompasses.")
(avoid-slur ,symbol? "Method of handling slur collisions.
Choices are @code{inside}, @code{outside}, @code{around}, and
@code{ignore}. @code{inside} adjusts the slur if needed to keep the
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
@code{#(@var{end-of-line} @var{unbroken} @var{begin-of-line})}.
@code{#t} means visible, @code{#f} means killed.")
(breakable ,boolean? "Allow breaks here.")
+ (broken-bound-padding ,number? "The amount of padding to insert
+when a spanner is broken at a line break.")
;;
;; c
edges of beams?")
(collapse-height ,ly:dimension? "Minimum height of system start
delimiter. If equal or smaller, the bracket/@/brace/@/line is removed.")
+ (collision-bias ,number? "Number determining how much to favor the
+left (negative) or right (positive). Larger absolute values in either
+direction will push a collision in this direction.")
(collision-interfaces ,list? "A list of interfaces for which
automatic beam-collision resolution is run.")
+ (collision-padding ,number? "Amount of padding to apply after
+a collision is detected via the self-alignment-interface.")
(collision-voice-only ,boolean? "Does automatic beam collsion apply
only to the voice in which the beam was created?")
(color ,color? "The color of this grob.")
the vertical edges: @code{(@var{left-height} . @var{right-height})}.")
(edge-text ,pair? "A pair specifying the texts to be set at the
edges: @code{(@var{left-text} . @var{right-text})}.")
- (elements-filtered ,boolean? "Callback to filter an element list.")
(round-up-exceptions ,list? "A list of pairs where car is the numerator
and cdr the denominator of a moment. Each pair in this list means that
the multi-measure rests of the corresponding length will be rounded up to
left side of the item and adding the @q{cdr} on the right side of the
item). In order to make a grob take up no horizontal space at all,
set this to @code{(+inf.0 . -inf.0)}.")
- (extra-X-extent ,number-pair? "A grob is enlarged in
-X@tie{}dimension by this much.")
- (extra-Y-extent ,number-pair? "A grob is enlarged in
-Y@tie{}dimension by this much.")
;;
;; f
;;
(flag-count ,number? "The number of tremolo beams.")
+ (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
+of the staff-position at which each clef places C:
+@code{(alto treble tenor soprano baritone mezzosoprano bass)}.
+If the list contains a single element it applies for all clefs.
+A single number in place of a pair sets accidentals within the octave
+ending at that staff-position.")
(font-encoding ,symbol? "The font encoding is the broadest
category for selecting a font. Currently, only lilypond's system
fonts (Emmentaler) are using this property. Available
approximately 12% larger; 6@tie{}steps are exactly a factor@tie{}2
larger. Fractional values are allowed.")
(footnote ,boolean? "Should this be a footnote or in-note?")
+ (footnote-music ,ly:music? "Music creating a footnote.")
(footnote-text ,markup? "A footnote for the grob.")
(force-hshift ,number? "This specifies a manual shift for notes
in collisions. The unit is the note head width of the first voice
by glissandi?")
(glyph ,string? "A string determining what @q{style} of glyph is
typeset. Valid choices depend on the function that is reading this
-property.")
- (glyph-name ,string? "The glyph name within the font.")
+property.
+
+In combination with (span) bar lines, it is a string resembling the
+bar line appearance in ASCII form.")
+ (glyph-name ,string? "The glyph name within the font.
+
+In the context of (span) bar lines, @var{glyph-name} represents
+a processed form of @code{glyph}, where decisions about line breaking
+etc. are already taken.")
(glyph-name-alist ,list? "An alist of key-string pairs.")
(graphical ,boolean? "Display in graphical (vs. text) form.")
(grow-direction ,ly:dir? "Crescendo or decrescendo?")
;;
;; 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,
+the string will be assigned to the @code{id} attribute of a group (<g>)
+that encloses the stencils that comprise the grob. In the Postscript
+backend, as there is no way to group items, the setting of the id property
+will have no effect.")
(ignore-collision ,boolean? "If set, don't do note collision
resolution on this @code{NoteColumn}.")
(implicit ,boolean? "Is this an implicit bass figure?")
(outside-staff-padding ,number? "The padding to place between
this grob and the staff when spacing according to
@code{outside-staff-priority}.")
+ (outside-staff-placement-directive ,symbol? "One of four directives
+telling how outside staff objects should be placed.
+@itemize @bullet
+@item
+@code{left-to-right-greedy} -- Place each successive grob from left to
+right.
+@item
+@code{left-to-right-polite} -- Place a grob from left to right only if
+it does not potentially overlap with another grob that has been placed
+on a pass through a grob array. If there is overlap, do another pass to
+determine placement.
+@item
+@code{right-to-left-greedy} -- Same as @code{left-to-right-greedy}, but
+from right to left.
+@item
+@code{right-to-left-polite} -- Same as @code{left-to-right-polite}, but
+from right to left.
+@end itemize")
(outside-staff-priority ,number? "If set, the grob is positioned
outside the staff in such a way as to avoid all collisions. In case
of a potential collision, the grob with the smaller
shift dotted up-note to the right, rather than shifting just the
dot.")
-
;;
;; r
;;
(rotation ,list? "Number of degrees to rotate this object, and
what point to rotate around. For example, @code{'(45 0 0)} rotates
by 45 degrees around the center of this object.")
+ (rounded ,boolean? "Decide whether lines should be drawn rounded or not.")
(round-up-to-longer-rest ,boolean? "Displays the longer multi-measure
rest when the length of a measure is between two values of
@code{usable-duration-logs}. For example, displays a breve instead of a whole
for stems that are placed in tight configurations. This amount is
used for stems with the same direction to compensate for note head to
stem distance.")
- (script-priority ,number? "A sorting key that determines in what
-order a script is within a stack of scripts.")
+ (script-priority ,number? "A key for determining the order of
+scripts in a stack, by being added to the position of the script in
+the user input, the sum being the overall priority. Smaller means
+closer to the head.")
(self-alignment-X ,number? "Specify alignment of an object. The
value @w{@code{-1}} means left aligned, @code{0}@tie{}centered, and
@code{1}@tie{}right-aligned in X@tie{}direction. Other numerical
values may also be specified.")
(self-alignment-Y ,number? "Like @code{self-alignment-X} but for
the Y@tie{}axis.")
+ (sharp-positions ,list? "Sharps 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
+of the staff-position at which each clef places C:
+@code{(alto treble tenor soprano baritone mezzosoprano bass)}.
+If the list contains a single element it applies for all clefs.
+A single number in place of a pair sets accidentals within the octave
+ending at that staff-position.")
(shorten-pair ,number-pair? "The lengths to shorten a
text-spanner on both sides, for example a pedal bracket. Positive
values shorten the text-spanner, while negative values lengthen it.")
(vertical-skylines ,ly:skyline-pair? "Two skylines, one above and
one below this grob.")
-
;;
;; w
;;
(columns ,ly:grob-array? "An array of grobs, typically containing
@code{PaperColumn} or @code{NoteColumn} objects.")
+ (concurrent-hairpins ,ly:grob-array? "All concurrent hairpins.")
(conditional-elements ,ly:grob-array? "Internal use only.")
(covered-grobs ,ly:grob-array? "Grobs that could potentially collide
with a beam.")
a whole system.")
(footnotes-after-line-breaking ,ly:grob-array? "Footnote grobs of
a broken system.")
- (full-score-pure-minimum-translations ,list? "A list of translations
-for a full score's worth of grobs.")
(glissando-index ,integer? "The index of a glissando in its note
column.")
(grace-spacing ,ly:grob? "A run of grace notes.")
+ (has-span-bar ,pair? "A pair of grobs containing the span bars to
+be drawn below and above the staff. If no span bar is in a position,
+the respective element is set to @code{#f}.")
(heads ,ly:grob-array? "An array of note heads.")
(items-worth-living ,ly:grob-array? "An array of interesting items. If
for this column.")
(melody-spanner ,ly:grob? "The @code{MelodyItem} object for a stem.")
+ (minimum-translations-alist ,list? "An list of translations for a given
+start and end point.")
+
+ (neighbors ,ly:grob-array? "The X-axis neighbors of a grob. Used by the
+pure-from-neighbor-interface to determine various grob heights.")
(normal-stems ,ly:grob-array? "An array of visible stems.")
(note-columns ,ly:grob-array? "An array of @code{NoteColumn} grobs.")
(note-heads ,ly:grob-array? "An array of note head grobs.")
(pedal-text ,ly:grob? "A pointer to the text of a mixed-style piano
pedal.")
+ (potential-X-colliding-grobs ,ly:grob-array? "Grobs that can potentially
+collide with a self-aligned grob on the X-axis.")
(pure-relevant-grobs ,ly:grob-array? "All the grobs (items and spanners)
that are relevant for finding the @code{pure-Y-extent}")
(pure-relevant-items ,ly:grob-array? "A subset of elements that are
(ties ,ly:grob-array? "A grob array of @code{Tie} objects.")
(tremolo-flag ,ly:grob? "The tremolo object on a stem.")
(tuplet-number ,ly:grob? "The number for a bracket.")
+ (tuplet-start ,boolean? "Is stem at the start of a tuplet?")
(tuplets ,ly:grob-array? "An array of smaller tuplet brackets.")
+
+ (vertical-alignment ,ly:grob? "The VerticalAlignment in a System.")
+ (vertical-skyline-elements ,ly:grob-array? "An array of grobs
+used to create vertical skylines.")
+
+ (X-colliding-grobs ,ly:grob-array? "Grobs that can collide
+with a self-aligned grob on the X-axis.")
+ (Y-colliding-grobs ,ly:grob-array? "Grobs that can collide
+with a self-aligned grob on the Y-axis.")
(X-common ,ly:grob? "Common reference point for axis group.")
(Y-common ,ly:grob? "See @code{X-common}.")
(note-collision ,ly:grob? "The @code{NoteCollision} object of a
dot column.")
+ (numbering-assertion-function ,scheme? "The function used to assert
+that footnotes are receiving correct automatic numbers.")
(positioning-done ,boolean? "Used to signal that a positioning element
did its job. This ensures that a positioning is only done once.")
(quantized-positions ,number-pair? "The beam positions after
quanting.")
+
(script-stencil ,pair? "A pair @code{(@var{type} . @var{arg})} which
acts as an index for looking up a @code{Stencil} object.")
(shorten ,ly:dimension? "The amount of space that a stem is shortened.