[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Modifying single staves ] | [ Up : Modifying single staves ] | [ Ossia staves > ] |
Staff symbol
The \stopStaff
and \startStaff
commands can be used to
stop or (re)start the staff lines respectively, from being printed at
any point within a score.
\relative { \stopStaff f''4 d \startStaff g, e f'4 d \stopStaff g, e f'4 d \startStaff g, e }
Predefined commands
\startStaff
,
\stopStaff
.
The lines of a staff belong to the StaffSymbol
grob (including
ledger lines) and can be modified using StaffSymbol
properties, but
these modifications must be made before the staff is (re)started.
The number of staff lines can be altered:
\relative { f''4 d \stopStaff \override Staff.StaffSymbol.line-count = 2 \startStaff g, e | f'4 d \stopStaff \revert Staff.StaffSymbol.line-count \startStaff g, e | }
The position of each staff line can also be altered. A list of
numbers sets each line’s position. 0
corresponds to
the normal center line, and the normal line positions are
(-4 -2 0 2 4)
. A single staff line is
printed for every value entered so that the number of staff lines,
as well as their position, can be changed with a single override
(thus, the line-count
property is disregarded if
line-positions
is set).
\relative { f''4 d \stopStaff \override Staff.StaffSymbol.line-positions = #'(1 3 5 -1 -3) \startStaff g, e | f'4 d \stopStaff \override Staff.StaffSymbol.line-positions = #'(8 6.5 -6 -8 -0.5) \startStaff g, e | }
To preserve typical stem directions (in the bottom half of the staff stems point up, in the top half they point down), align the center line (or space) of the customized staff with the position of the normal center line (0). The clef position and the position of middle C may need to be adjusted accordingly to fit the new lines. See Clef.
Staff line thickness can be altered. Ledger lines and note stems, by default, are also affected.
\new Staff \with { \override StaffSymbol.thickness = 3 } \relative { f''4 d g, e }
It is also possible to set ledger line thickness independently of staff lines.
\new Staff \with { \override StaffSymbol.thickness = 2 \override StaffSymbol.ledger-line-thickness = #'(0.5 . 0.4) } \relative { f'''4 a, a,, f }
The first value is multiplied by the staff line thickness, the second by the staff space and then the two values are added together to give the new thickness of the ledger line.
The vertical positions of ledger lines can be altered,
\new Staff \with { \override StaffSymbol.ledger-positions = #'(-3 -2 -1 2 5 6) } \relative { f'''4 a, a,, f }
Additional ledger lines can be made to appear above or below note heads depending on the current position relative to other note heads that also have their own ledger lines.
\new Staff \with { \override StaffSymbol.ledger-extra = 4 } \relative { f'''4 a, d, f, }
Ledger lines can also be made to appear inside the staff where custom
staff lines are required. The example shows the default position of
ledger lines when the explicit ledger-position
is and is not set.
The \stopStaff
is needed in the example to revert the
\override
for the whole StaffSymbol
.
\relative d' { \override Staff.StaffSymbol.line-positions = #'(-8 0 2 4) d4 e f g \stopStaff \startStaff \override Staff.StaffSymbol.ledger-positions = #'(-8 -6 (-4 -2) 0) d4 e f g }
The distance between staff lines can be altered. This affects ledger line spacing as well.
\new Staff \with { \override StaffSymbol.staff-space = 1.5 } \relative { f'''4 d, g, e, }
The width of a staff can be modified. The units are staff spaces. The spacing of objects inside the staff is not affected by this setting.
\new Staff \with { \override StaffSymbol.width = 23 } \relative { a4 e' f b | d1 }
Selected Snippets
Making some staff lines thicker than the others
For educational purposes, a staff line can be thickened (e.g., the
middle line, or to emphasize the line of the G clef). This can be
achieved by adding extra lines very close to the line that should be
emphasized, using the line-positions
property of the
StaffSymbol
object.
{ \override Staff.StaffSymbol.line-positions = #'(-4 -2 -0.2 0 0.2 2 4) d'4 e' f' g' }
See also
Music Glossary: line, ledger line, staff.
Notation Reference: Clef.
Snippets: Staff notation.
Internals Reference: StaffSymbol, staff-symbol-interface.
[ << Musical notation ] | [Top][Contents][Index] | [ Specialist notation >> ] |
[ < Modifying single staves ] | [ Up : Modifying single staves ] | [ Ossia staves > ] |