|
Attached an other way to create aligned incipits. HTH Rémy
|
\version "2.18.2"
incipit =
#(define-music-function (parser location incipit-music) (ly:music?)
#{
\once \override Staff . InstrumentName . self-alignment-X = #RIGHT
\once \override Staff . InstrumentName . self-alignment-Y = ##f
\once \override Staff . InstrumentName . padding = #0.5
\once \override Staff . InstrumentName . stencil =
#(lambda (grob)
(let* ((instrument-name (ly:grob-property grob 'long-text)))
(set! (ly:grob-property grob 'long-text)
#{ \markup {
\score
{
{ \context PetrucciStaff \with {
instrumentName = #instrument-name
\once \override Staff . KeySignature #'X-offset = #-1.2
} $incipit-music
}
\layout { $(ly:grob-layout grob)
line-width = \indent
indent =
% primitive-eval is probably easiest for
% escaping lexical closure and evaluating
% everything respective to (current-module).
#(primitive-eval
'(or (false-if-exception (- indent incipit-width))
(* 0.5 indent)))
ragged-right = ##f
ragged-last = ##f
system-count = #1 }
}
\hspace #0.5
}
#})
(system-start-text::print grob)))
#})
music_incipit = {
\override Staff . Accidental #'glyph-name-alist = #alteration-mensural-glyph-name-alist
\override Staff . KeySignature #'glyph-name-alist = #alteration-mensural-glyph-name-alist
\override Staff . TimeSignature #'glyph-name-alist = #alteration-mensural-glyph-name-alist
\override Staff . BassFigure #'glyph-name-alist = #alteration-mensural-glyph-name-alist
\override Staff . BarLine . transparent = ##t
\override Staff . Rest . style = #'mensural
\override Staff . TimeSignature #'stencil = #ly:text-interface::print
\override Staff . TimeSignature #'text = \markup \musicglyph #"timesig.mensural22"
\key f \major
s4
}
\score {
\keepWithTag #'Cond
\new GrandStaff
<<
\new PianoStaff
<<
\new Staff
<<
\incipit { \clef "petrucci-c1" \music_incipit a'4 c' s4}
\set Staff . instrumentName = \markup\center-column { "Viola" "Prima" }
\set Staff.shortInstrumentName = \markup { "Vn. I" }
\new Voice { \autoBeamOn \clef treble a'4 c' }
>>
\new Staff
<<
\incipit { \clef "petrucci-c1"\music_incipit c'4 a' s4 }
\set Staff . instrumentName = \markup\center-column { "Viola" "Secunda" }
\new Voice { \autoBeamOn \clef treble c'4 a' }
>>
>>
>>
\layout
{
indent = 4.5 \cm
short-indent = 0.5\cm
incipit-width = 1.6\cm
}
}
