2015-02-21 20:55 GMT+01:00 Jim Long <lilyp...@umpquanet.com>: > I'd like to take just a slight tangent on the recent thread about > increasing system-system-spacing. I often have scores that show > up with uneven spacing. A tiny example is attached. > > First, is it syntactically correct? > > And second, how can I get the system spacing more even? > > The example intentionally doesn't alter system-system spacing > anywhere. Instead, it just uses ragged-last-bottom = ##f. I > would like the spacing to be equally distributed. There are 8 > gaps between the 9 systems, but the system-system gaps are > unequal in size. > > How can I get the systems to be equally spaced? > > Thanks! > > Jim
Hi, instead of trying to explain things, I paste your code with several comments below. In general, LilyPonds spacing-engine is a fabulous one, though, and that's a big "though", it's very hard to understand (and to remember) how it works and how to get the disered results. Speaking only for me, I have to _study_ (not a quick glance as mostly, like "how was that spelled?") the relevant parts of the NR _every_ time I manipulate spacing-settings. But 'annotate-spacing' is your friend! \version "2.18.0" \paper { ragged-last-bottom = ##t %% 'annotate-spacing' is your friend %annotate-spacing = ##t } \paper { %% settings for page-layout %% the default (taken from paper-defaults-init.ly) %system-system-spacing = % #'((basic-distance . 12) % (minimum-distance . 8) % (padding . 1) % (stretchability . 60)) } melody = \new Staff %% 'melody' is the lowest context, therefore %% \override VerticalAxisGroup.staff-staff-spacing %% has no effect %% use 'system-system-spacing' in \paper as shown above %% see: \with { %% a not valid setting for score-spacing: \override VerticalAxisGroup.staff-staff-spacing = #'( (basic-distance . 100) (minimum-distance . 100) (padding . 100) ) } \repeat unfold 9 { \repeat unfold 4 { g4 g'' g'' g'' } \break } harmonies = \new ChordNames \with { %% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! %% from NR: %% "Setting staff-affinity to #f causes a non-staff line to be treated %% as a staff." %% Now 'ChordNames' are recognized by the spacing-engine and equal %% spacing should result, meaning the space between the upper Staff %% for melody and the ChordNames are always the same (not the space %% between two melody-Staffs, though.) %% More, 'VerticalAxisGroup.staff-staff-spacing' will work now, as a valid %% setting for score-spacing %% !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! \override VerticalAxisGroup.staff-affinity = ##f %% default is @code{DOWN} \override VerticalAxisGroup.staff-staff-spacing = #'( (basic-distance . 0.5) (minimum-distance . 0.5) (padding . 1) (stretchability . 0) ) } \chordmode { \repeat unfold 9 { c2 a2:m | f2 g2 | s4 c s a:m | f2 g2 } } rhythms = \new RhythmicStaff \with { \override StaffSymbol.line-count = #0 \override StaffSymbol.staff-space = #(magstep -3) \omit BarLine \omit TimeSignature \override NoteHead.style = #'slash %% a valid setting for score-layout: \override VerticalAxisGroup.staff-staff-spacing = #'( (basic-distance . 1) (minimum-distance . 1) (padding . 1) ) fontSize = #-2 } { % 36 bars \stemDown s1*8 s1 s1 | r4 b r b | b r b r s1*4 s1 s1 | r4 b r b | b r b r s1*8 s1 s1 | r4 b r b | b r b r s1 s1 | r4 b r b | b r b r } % rhythms \score { << \harmonies \rhythms \melody >> \layout { \context { \RhythmicStaff \RemoveEmptyStaves } } } HTH, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user