Spacing
Spacing issues
Adjusting lyrics vertical spacing
This snippet shows how to bring the lyrics line closer to the staff.
% Default layout:
<<
\new Staff \new Voice = melody \relative c' {
c4 d e f
g4 f e d
c1
}
\new Lyrics \lyricsto melody { aa aa aa aa aa aa aa aa aa }
\new Staff {
\new Voice = melody \relative c' {
c4 d e f
g4 f e d
c1
}
}
% Reducing the minimum space below the staff and above the lyrics:
\new Lyrics \with {
\override VerticalAxisGroup.nonstaff-relatedstaff-spacing =
#'((basic-distance . 1))
}
\lyricsto melody { aa aa aa aa aa aa aa aa aa }
>>
Allowing fingerings to be printed inside the staff
By default, vertically oriented fingerings are positioned outside the
staff; that behavior, however, may be disabled. Attention needs to be
paid to situations where fingerings and stems are in the same
direction: by default, fingerings will avoid only beamed stems. That
setting can be changed to avoid no stems or all stems; the following
example demonstrates these two options, as well as how to go back to
the default behavior.
\relative c' {
<c-1 e-2 g-3 b-5>2
\override Fingering.staff-padding = #'()
<c-1 e-2 g-3 b-5>4 g'-0
a8[-1 b]-2 g-0 r
\override Fingering.add-stem-support = ##f
a[-1 b]-2 g-0 r
\override Fingering.add-stem-support = ##t
a[-1 b]-2 g-0 r
\override Fingering.add-stem-support = #only-if-beamed
a[-1 b]-2 g-0 r
}
Page label
Page labels may be placed inside music or at top-level, and referred to
in markups.
\label license
\markup "This snippet is available under the Creative Commons
Public Domain Dedication license."
{
\repeat volta 2 {
\label startRepeat
\repeat unfold 20 { c'2 2 }
\pageBreak
2 2
}
\textEndMark \markup {
\with-link #'startRepeat \line {
To page \page-ref #'startRepeat "0" "?"
}
}
}
\markup {
See page \page-ref #'license "0" "?" for
licensing information.
}
Proportional strict notespacing
If strict-note-spacing
is set spacing of notes is not influenced
by bars or clefs within a system. Rather, they are placed just before
the note that occurs at the same time. This may cause collisions.
\relative c'' <<
\override Score.SpacingSpanner.strict-note-spacing = ##t
\set Score.proportionalNotationDuration = #(ly:make-moment 1/16)
\new Staff {
c8[ c \clef alto c c \grace { d16 } c8 c] c4
c2 \grace { c16[ c16] } c2
}
\new Staff {
c2 \tuplet 3/2 { c8 \clef bass cis,, c } c4
c1
}
>>
Vertically aligned dynamics and textscripts
All DynamicLineSpanner
objects (hairpins and dynamic texts) are
placed with their reference line at least 'staff-padding
from
the staff, unless other notation forces them to be farther. Setting
'staff-padding
to a sufficiently large value aligns the
dynamics.
The same idea, together with \textLengthOn
, is used to align
the text scripts along their baseline.
music = \relative c' {
a'2\p b\f
e4\p f\f\> g, b\p
c2^\markup { \huge gorgeous } c^\markup { \huge fantastic }
}
{
\music
\break
\override DynamicLineSpanner.staff-padding = #3
\textLengthOn
\override TextScript.staff-padding = #1
\music
}
Vertically aligning ossias and lyrics
This snippet demonstrates the use of the context properties
alignBelowContext
and alignAboveContext
to control the
positioning of lyrics and ossias.
\paper {
ragged-right = ##t
}
\relative c' <<
\new Staff = "1" { c4 c s2 }
\new Staff = "2" { c4 c s2 }
\new Staff = "3" { c4 c s2 }
{ \skip 2
<<
\lyrics {
\set alignBelowContext = #"1"
lyrics4 below
}
\new Staff \with {
alignAboveContext = #"3"
fontSize = #-2
\override StaffSymbol.staff-space = #(magstep -2)
\remove "Time_signature_engraver"
} {
\tuplet 6/4 {
\override TextScript.padding = #3
c8[^"ossia above" d e d e f]
}
}
>>
}
>>