stem-interface - LilyPond program-reference
Description: LilyPond program-reference

Next: stem-tremolo-interface, Previous: stanza-number-interface, Up: Graphical Object Interfaces

#### stem-interface

The stem represent the graphical stem. In addition, it internally connects note heads, beams andtremolos. Rests and whole notes have invisible stems.

The following properties may be set in the details list.

`beamed-lengths`
  list of stem lengths given beam multiplicity.
`beamed-minimum-free-lengths`
  list of normal minimum free stem lengths (chord to beams) given beam multiplicity.
`beamed-extreme-minimum-free-lengths`
  list of extreme minimum free stem lengths (chord to beams) given beam multiplicity.
`lengths`
  Default stem lengths. The list gives a length for each flag-count.
`stem-shorten`
  How much a stem in a forced direction should be shortened. The list gives an amount depending on the number of flags/beams.

##### User settable properties:

`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.
`beaming` (pair)
  Pair of number lists. Each number list specifies which beams to make. 0 is the central beam, 1 is the next beam toward the note etc. This information is used to determine how to connect the beaming patterns from stem to stem inside a beam.
`default-direction` (direction)
  Direction determined by note head positions.
`direction` (direction)
  #UP or #DOWN, #LEFT or #RIGHT? (or a numerical value, #UP=1, #DOWN=-1, #LEFT=-1, #RIGHT=1, CENTER=0)
`duration-log` (integer)
  The 2-log of the note head duration, i.e. 0=whole note, 1 = half note, etc.
`flag-style` (symbol)
  a string determining what style of flag-glyph is typeset on a Stem. Valid options include `()` and `mensural`. Additionally, `"no-flag"` switches off the flag.
`french-beaming` (boolean)
  Use French beaming style for this stem. The stem will stop at the innermost beams.
`length` (dimension, in staff space)
  User override for the stem length of unbeamed stems.
`length-fraction` (number)
  Multiplier for lengths. Used for determining ledger lines and stem lengths.
`neutral-direction` (direction)
  Which direction to take in the center of the staff.
`no-stem-extend` (boolean)
  If set, notes with ledger lines do not get stems extending to the middle staff line.
`stem-end-position` (number)
  Where does the stem end (the end is opposite to the support-head.
`stemlet-length` (number)
  How long should a stem over a rest be?
`stroke-style` (string)
  set to "grace" to turn stroke through flag on.
`thickness` (number)
  Bar line thickness, measured in `line-thickness`.

##### Internal properties:

`beam` (layout object)
  pointer to the beam, if applicable.
`details` (list)
  alist of parameters for detailed grob behavior.

  more information on the allowed parameters can be found by inspecting lily/slur-scoring.cc, lily/beam-quanting.cc, and lily/tie-formatting-problem.cc. Setting `debug-tie-scoring`, `debug-beam-scoring` or `debug-slur-scoring` also provides useful clues.

`note-heads` (unknown)
  List of note head grobs
`positioning-done` (boolean)
  Used to signal that a positioning element did its job. This ensures that a positioning is only done once.
`rests` (unknown)
  A list of rest objects.
`stem-info` (pair)
  caching of stem parameters
`tremolo-flag` (layout object)
  The tremolo object on a stem.

This grob interface is used in the following graphical objects: Stem

This page is for LilyPond-2.8.8 (stable-branch).

Other languages: English.
Using automatic language selection.