#### RhythmicStaff

A context like `Staff` but for printing rhythms. Pitches are ignored; the notes are printed on one line.

This context is also known as:

Staff

This context creates the following layout objects:

BarLine, DotColumn, InstrumentName, SeparatingGroupSpanner, SeparationItem, StaffSpacing, StaffSymbol, TimeSignature, VerticalAxisGroup and VoltaBracket.

This context sets the following properties:

- Set grob-property `neutral-direction` in Beam to `1`
- Set grob-property `neutral-direction` in Stem to `1`
- Set grob-property `line-count` in StaffSymbol to `1`
- Set grob-property `padding` in VoltaBracket to `5`
- Set grob-property `minimum-space` in VoltaBracket to `15`
- Set grob-property `bar-size` in BarLine to `4`
- Set translator property `squashedPosition` to `0`
- Set translator property `localKeySignature` to `'()`
- Set translator property `verticalExtent` to `#f`
- Set translator property `extraVerticalExtent` to `#f`
- Set translator property `minimumVerticalExtent` to `#f`

Context RhythmicStaff can contain Voice

This context is built from the following engravers:

`Engraver_group_engraver`
  A group of engravers taken together
`Instrument_name_engraver`
  Prints the name of the instrument (specified by `Staff.instrument` and `Staff.instr`) at the left of the staff.

  Properties (read)

  `instr` (markup)
    See `instrument`
  `instrument` (markup)
    The name to print left of a staff. The `instrument` property labels the staff in the first system, and the `instr` property labels following lines.
  This engraver creates the following layout objects: InstrumentName.
`Staff_symbol_engraver`
  Create the constellation of five (default) staff lines.

  This engraver creates the following layout objects: StaffSymbol.

`Time_signature_engraver`
  Create a TimeSignature whenever `timeSignatureFraction` changes

  This engraver creates the following layout objects: TimeSignature.

`Bar_engraver`
  Create barlines. This engraver is controlled through the `whichBar` property. If it has no bar line to create, it will forbid a linebreak at this point

  Properties (read)

  `whichBar` (string)
    This property is read to determine what type of bar line to create.

    Example:

                       \set Staff.whichBar = "|:"

    This will create a start-repeat bar in this staff only. Valid values are described in bar-line-interface.

  This engraver creates the following layout objects: BarLine.
`Volta_engraver`
  Make volta brackets

  Properties (read)

  `stavesFound` (list of grobs)
    list of all staff-symbols found.
  `voltaSpannerDuration` (moment)
    This specifies the maximum duration to use for the brackets printed for `\alternative`. This can be used to shrink the length of brackets in the situation where one alternative is very large.
  `repeatCommands` (list)
    This property is read to find any command of the form `(volta .` x`)`, where x is a string or `#f`
  This engraver creates the following layout objects: VoltaBracket.
`Dot_column_engraver`
  Engraves dots on dotted notes shifted to the right of the note. If omitted, then dots appear on top of the notes.

  This engraver creates the following layout objects: DotColumn.

`Separating_line_group_engraver`
  Generates objects for computing spacing parameters.

  Properties (read)

  `createSpacing` (boolean)
    Create StaffSpacing objects? Should be set for staves.
  Properties (write)
  `breakableSeparationItem` (layout object)
    The breakable items in this time step, for this staff.
  This engraver creates the following layout objects: SeparatingGroupSpanner, SeparationItem and StaffSpacing.
`Pitch_squash_engraver`
  Set the vertical position of noteheads to `squashedPosition`, if that property is set. This can be used to make a single line staff demonstrating the rhythm of a melody.

  Properties (read)

  `squashedPosition` (integer)
    Vertical position of squashing for Pitch_squash_engraver.
`Output_property_engraver`
  Interpret Music of Output_property type, and apply a function to any Graphic objects that satisfies the predicate.

  Music types accepted:

  layout-instruction

`Axis_group_engraver`
  Group all objects created in this context in a VerticalAxisGroup spanner.

  Properties (read)

  `extraVerticalExtent` (pair of numbers)
    extra vertical extent, same format as minimumVerticalExtent
  `minimumVerticalExtent` (pair of numbers)
    minimum vertical extent, same format as verticalExtent
  `verticalExtent` (pair of numbers)
    Hard coded vertical extent. The format is a pair of dimensions, for example, this sets the sizes of a staff to 10 (5+5) staffspaces high.

                       \set Staff.verticalExtent = #'(-5.0 . 5.0)

    This does not work for Voice or any other context that doesn't form a vertical group.

  This engraver creates the following layout objects: VerticalAxisGroup.

Read comments on this page, or add one. This page is for LilyPond-2.2.2 (stable-branch).