lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: adding extra spacing ABOVE a context


From: Kieren MacMillan
Subject: Re: adding extra spacing ABOVE a context
Date: Fri, 17 Jan 2014 09:38:21 -0500

Hi Alex,

> Could you give an example?

I don’t have time right now — under a serious “get it out the door” engraving 
crunch.

However, I’m running into the issue right now, and it’s killing my 
productivity. I’ve got the following structure for my score:

    <<
      \new TextLine << \FTE_FairyTaleEnding_global 
\FTE_FairyTaleEnding_script_short >>
      \new ScoreMarks \with { \consists #Measure_counter_engraver } 
\keepWithTag #'(marks-only)
          \FTE_FairyTaleEnding_global
      \new VocalGroup \with { \remove "System_start_delimiter_engraver" } <<
        \new VocalStaff << \FTE_FairyTaleEnding_global 
\FTE_FairyTaleEnding_Jill_notes >>
        \addlyrics \FTE_FairyTaleEnding_Jill_lyrics
        \new ChoirStaff <<
          \new LyricsAbove = "Lyrics_chorusD"
          \new ChoralStaff << \FTE_FairyTaleEnding_global 
\FTE_FairyTaleEnding_chorusCNotes >>
          \addlyrics \FTE_FairyTaleEnding_chorusCLyrics
          \new ChoralStaff << \FTE_FairyTaleEnding_global 
\FTE_FairyTaleEnding_chorusANotes >>
          \addlyrics \FTE_FairyTaleEnding_chorusALyrics
          \new LyricsAbove = "Lyrics_chorusE"
          \new ChoralStaff << \FTE_FairyTaleEnding_global 
\FTE_FairyTaleEnding_chorusBNotes >>
          \addlyrics \FTE_FairyTaleEnding_chorusBLyrics
          \context LyricsAbove = "Lyrics_chorusD" \lyricsto "Voice_chorusD" 
\FTE_FairyTaleEnding_chorusDLyrics
          \context LyricsAbove = "Lyrics_chorusE" \lyricsto "Voice_chorusE" 
\FTE_FairyTaleEnding_chorusELyrics
        >>
      >>
      \new PianoStaff <<
        \new PianoSingleStaffUpper = "Staff_piano_upper" << 
\FTE_FairyTaleEnding_global \FTE_FairyTaleEnding_piano_notes_upper >>
        \new PianoDynamics = "Dynamics_piano" 
\FTE_FairyTaleEnding_piano_dynamics
        \new PianoChords = "Chords_piano" \FTE_FairyTaleEnding_chords
        \new PianoSingleStaffLower = "Staff_piano_lower" << 
\FTE_FairyTaleEnding_global \FTE_FairyTaleEnding_piano_notes_lower >>
      >>
    >>

(Some of these are obviously custom contexts.)

I want to maintain a minimum amount of space between the VocalGroup (including 
any Lyrics contexts which are alive at the bottom) and the PianoStaff. However, 
staffgroup-staff-spacing behaves differently depending on whether there are 
lyrics below the last contained Staff (cf. 
<http://lilypond.org/doc/v2.17/Documentation/internals/staffgrouper>: "The 
spacing alist controlling the distance between the last staff of the current 
staff-group and the staff just below it in the same system, even if one or more 
non-staff lines exist between the two staves.”)

What I want is to set 
PianoStaff.VerticalAxisGroup.StaffGrouper.spacing-above.padding = #4 [or 
whatever], so that there is always at least a certain amount of space above the 
PianoStaff, regardless of whether the context above is a staff or a nonstaff. 
The same thing would apply to my TextLine (i.e., my original post/request): I 
want it to add EXTRA space/padding “above itself”, so that a system with a 
TextLine at the top is farther away from the system above it than a system 
without a TextLine would be.

Unfortunately [AFAIK], all of the spacing parameters modify the “below” space…
Even then, not all of them work intuitively — again, it would be far better 
[IMO] if the entire StaffGrouper (including all staff and non-staff lines) 
“counted” for spacing purposes.

Make sense?

Thanks,
Kieren.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]