\layout { \context { \Staff \override VerticalAxisGroup #'minimum-Y-extent = #'(-1. . 2) } \context { \Lyrics \override VerticalAxisGroup #'minimum-Y-extent = #'(-1.0 . 0.7) } } sMusic = \relative c'' { \repeat unfold 3 { c c c c | \break } } aMusic = \relative c' { % smallest spacing, nothing between staves c c c c | % Using DynamicLineSpanner works, but does not move the dynamics inside the staff: c \once \override DynamicText #'X-offset = #-3 \once \override DynamicLineSpanner #'Y-offset = #4 c\f c c | % Using extra-offset moves the dynamics inside the staff, but the layouting % is done before, so the staves are spaced far too much and there is no way % to get them closer together...: c \once \override DynamicText #'X-offset = #-3 \once \override DynamicLineSpanner #'Y-offset = #4 \once \override DynamicText #'extra-offset = #'(0 . -2) c\f c c | } sLyrics = \lyricmode { a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f g h i j k l m n o p q r s t u v w x y z } aLyrics = \lyricmode { a b c d e f g h i j k l m n o p q r s t u v w x y z a b c d e f g h i j k l m n o p q r s t u v w x y z } \score { \context ChoirStaff << \context Staff=Sopran << \new Voice=SV { \dynamicUp \sMusic} >> \new Lyrics=sL \lyricsto SV \sLyrics \context Staff=Alt << \new Voice=AV { \dynamicUp \aMusic} >> \new Lyrics=aL \lyricsto AV \aLyrics >> }