}
<<
- \new Staff \with
- {
-% \remove "Bar_engraver"
- }
- {
+ \new Staff {
b1 \bar "|:" b1 \bar ":|"
}
\context Lyrics \with {
\consists "Bar_engraver"
\consists "Separating_line_group_engraver"
- \override BarLine #'bar-extent = #'(-2 . 2)
} \lyricmode {
looooooooooooooooooooooooooooooooooong1 syllable
}
\lyrics {
- no Bar_Engraver_Bar_Engraver_Bar_Engraver
+ no Bar_Engraver_Bar_Engraver_Bar_Engraver
+ }
+ \new Staff {
+ b1 b1
}
- \new Staff \with {
-% \remove "Bar_engraver"
- } { b1 b1 }
>>
-
+\layout {
+ \context {
+ \Lyrics
+ \override VerticalAxisGroup #'nonstaff-nonstaff-spacing #'minimum-distance = #4
+ \override LyricText #'Y-offset = #-0.7
+ \override BarLine #'bar-extent = #'(-2 . 2)
+ }
+}
--- /dev/null
+\version "2.13.50"
+
+\header {
+
+ texidoc = "Prefatory items maintain sufficient separation from
+ musical notation for readability, even in tight spacing.
+ The notes should remain generally on the correct side of the
+ time signature, key signature and barlines. A key change to
+ G major should be legible."
+
+}
+
+\new Staff <<
+ \relative c''' {
+ \key f \major
+ es4 c c c \bar "||" \noBreak
+ \key g \major
+ <gis cis,>4 r2. \bar "|."
+ } \\
+ \relative c' {
+ R1
+ r4 cis a a
+ }
+>>
+\layout {
+ line-width = 5\cm % impossibly narrow to induce tight spacing
+}
\paper {
#(set-paper-size "a6")
tagline = ##f
+ indent = #0
system-system-spacing = #'((padding . 1.2))
oddHeaderMarkup = \markup \on-the-fly #assert-single-page \null
}
ret->push_front (Building (-infinity_f, -infinity_f, -infinity_f, infinity_f));
}
+/*
+ Given Building 'b' with starting wall location 'start', extend each side
+ with a sloped roofline of width 'horizon_padding'; put the skyline in 'ret'
+*/
static void
single_skyline (Building b, Real start, Real horizon_padding, list<Building> *const ret)
{
{
list<Building> result;
single_skyline (Building (boxes->front (), horizon_padding, horizon_axis, sky),
- boxes->front ()[horizon_axis][LEFT], horizon_padding, &result);
+ boxes->front ()[horizon_axis][LEFT] - horizon_padding,
+ horizon_padding, &result);
return result;
}
{
sky_ = sky;
Building front (b, horizon_padding, horizon_axis, sky);
- single_skyline (front, b[horizon_axis][LEFT], horizon_padding, &buildings_);
+ single_skyline (front, b[horizon_axis][LEFT] - horizon_padding,
+ horizon_padding, &buildings_);
}
void
return;
my_bld.splice (my_bld.begin (), buildings_);
- single_skyline (Building (b, horizon_padding, a, sky_), b[a][LEFT], horizon_padding, &other_bld);
+ single_skyline (Building (b, horizon_padding, a, sky_), b[a][LEFT] - horizon_padding,
+ horizon_padding, &other_bld);
internal_merge_skyline (&other_bld, &my_bld, &buildings_);
}
(right-edge . (extra-space . 0.5))
(first-note . (fixed-space . 2.5))))
(stencil . ,ly:key-signature-interface::print)
+ (extra-spacing-width . (0.0 . 0.5))
(Y-offset . ,ly:staff-symbol-referencer::callback)
(meta . ((class . Item)
(interfaces . (break-aligned-interface
(right-edge . (extra-space . 0.5))
(first-note . (fixed-space . 2.5))))
(stencil . ,ly:key-signature-interface::print)
+ (extra-spacing-width . (0.0 . 0.5))
(Y-offset . ,ly:staff-symbol-referencer::callback)
(meta . ((class . Item)
(interfaces . (break-aligned-interface
(before-line-breaking . ,ly:paper-column::before-line-breaking)
(full-measure-extra-space . 1.0)
(horizontal-skylines . ,ly:separation-item::calc-skylines)
- (skyline-vertical-padding . 0.15)
+ ;; sufficient padding to prevent ledger lines from moving over/under
+ (skyline-vertical-padding . 0.6)
;; (stencil . ,ly:paper-column::print)
(line-break-permission . allow)