[icon]

GNU LilyPond

-- --

What is LilyPond
Home
Examples
Templates
Download
GNU/Linux binaries
Windows binaries
Source code
Documentation
Tutorial
Manual
Glossary
Index

Support
Mailing lists
Search
WikiWiki

External sites
lilypond.org/stable
lilypond.org/development
savannah.gnu.org
ftp.lilypond.org
Mutopia
Other music online

Node:RhythmicStaff, Next:, Previous:PianoStaff, Up:Contexts



RhythmicStaff

A context like Staff but for printing rhythms. Pitches are ignored; the notes are printed on one line. It can contain Voice contexts.

This context creates the following grobs: BarLine, DotColumn, InstrumentName, SeparatingGroupSpanner, SeparationItem, 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 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)
If Instrument_name_engraver is added to the Staff translator, then the instrument property is used to label the first line of the staff and the instr property is used to label subsequent lines. If the midiInstrument property is not set, then instrument is used to determine the instrument for MIDI output.
This engraver creates the following grobs: InstrumentName.
Staff_symbol_engraver
create the constellation of five (default) staff lines.

This engraver creates the following grobs: StaffSymbol.

Time_signature_engraver
Create a TimeSignature whenever timeSignatureFraction changes

This engraver creates the following grobs: 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 barline to create.

Example:

               \property Staff.whichBar = "|:"
               

This will create a start-repeat bar in this staff only.

If not set explicitly (by property or bar), this is set according to values of defaultBarType, barAlways, barNonAuto and measurePosition.

Valid values are described in (lilypond-internals)bar-line-interface.

.

This engraver creates the following grobs: BarLine.
Volta_engraver
Make volta brackets

Properties (read)


stavesFound (list)
list of all staff-symbols found.
voltaSpannerDuration (moment)
maximum duration of the volta bracket.

Set to a duration to control the size of the brackets printed by \alternative. It specifies the number of whole notes duration to use for the brackets. This can be used to shrink the length of brackets in the situation where one alternative is very large. It may have odd effects if the specified duration is longer than the music given in an \alternative. .

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 grobs: 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 grobs: DotColumn.

Separating_line_group_engraver
Generates objects for computing spacing parameters.

This engraver creates the following grobs: SeparatingGroupSpanner and SeparationItem.

Pitch_squash_engraver
Treat all pitches as middle C. Note that the notes move, but the locations of accidentals stay the same. Set the position field of all note heads to zero. This useful for making a single line staff that demonstrates 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.
               property Staff.verticalExtent = #(-5.0 . 5.0)
               

VerticalExtent, MinimumVerticalExtent and ExtraVerticalExtent are predefined in all relevant contexts to #f, so they will not inherit values.

Note that these VerticalExtents can only operate on vertical groups, and therefore only work in contexts which contain an Axis_group_engraver.

This engraver creates the following grobs: VerticalAxisGroup.

Go back to index of LilyPond.

Please send GNU LilyPond questions and comments to lilypond-user@gnu.org.

Please send comments on these web pages to (address unknown)

Copyright (c) 1997--2002 Han-Wen Nienhuys and Jan Nieuwenhuizen.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.


This page was built from LilyPond-1.7.14 (development-branch) by

Buchan Milne <(address unknown)>, Thu Mar 6 21:11:35 2003 CET.