Hi Kieren,
thank you for this hint. I embedded it in my little test-file and will
use it :-) . Its a cleaner and nicer solution than the phrasing-slur hack!
But my tagged-Voice-solution still has the opportunity to place the
'(n)' somewhere without a note above it. The scores I am working on need
this. One might ask, if it would be easier to read, if there would be a
tied note above the '(n)'-ending, but I try to typeset as close as
possible to the original handwritten scores.
Regards,
Jan-Peter.
Kieren MacMillan wrote:
Hi Jan-Peter:
I am typesetting a few choral pieces (using the stable version 2.12.2 Ubuntu repo), where there is often a sign, that singers should close from vowel to 'N'.
This is written: a - - - men ____ (n) ____
The choir should do this in designated times/positions, so it should be written in the score.
I think perhaps it's easier than you think:
lyrL = { \once \override LyricText #'self-alignment-X = #LEFT }
noten = \relative c'' {
\set melismaBusyProperties = #'() d1 |
c1 ~ |
c1
\bar "|."
}
text = \lyricmode {
a -- \lyrL \markup \line { men \draw-line #'(4 . 0) } "(n)"
}
\score {
\new ChoirStaff <<
\new Staff \new Voice = "melodieA" \noten
\new Lyrics \lyricsto "melodieA" \text
>>
}
No need for all those extra Voices, DevNull contexts, etc.
Hope this helps!
Kieren.
\version "2.12.2"
noten = \relative c'' {
\dynamicUp
d1\p\>
\tag #'print { c1 ~ c1 }
\tag #'lyrics { c2 ~ c8 c4. ~ c1 }
s1*0\! \bar "|."
}
notend = \relative c'' {
\dynamicUp
d1\p\>
\once \override Staff.PhrasingSlur #'height-limit = #1
c1\( c1\)\!
\bar "|."
}
lyrL = { \once \override LyricText #'self-alignment-X = #LEFT }
notene = \relative c'' {
\dynamicUp
\set melismaBusyProperties = #'() d1\p\> |
c1 ~ |
c1\!
\bar "|."
}
text = \lyricmode {
a -- men __ "(n)" __
}
textb = \lyricmode {
a -- \markup { men \translate #'( 10 . 0 ) "(n)" } __
}
texte = \lyricmode {
a -- \lyrL \markup \line { men \draw-line #'(20 . 0) } "(n)"
}
\score {
<<
% the lyrics rhythm
\new Staff <<
\new Voice="melodieA" { R1^"lyric rhythm" \keepWithTag #'lyrics \noten }
>>
\new Lyrics \lyricsto "melodieA" { \text }
\new ChoirStaff
<<
% using a devnull context to align '(n)'
% melismas and ties are not supported, so no extenders are drawn
% the '(n)' is displayed to early
\new Staff <<
\new Devnull="melodie" { s1 \keepWithTag #'lyrics \noten }
\new Voice { R1^"example A (devnull)" \keepWithTag #'print \noten }
>>
\new Lyrics \lyricsto "melodie" { \text }
% using markup translate to move the '(n)'
% trial and error to move to the right position and no extender between 'men' and '(n)'
\new Staff <<
\new Voice="melodieB" { R1^"example B (markup translate)" \keepWithTag #'print \noten }
>>
\new Lyrics \lyricsto "melodieB" { \textb }
% using a voice with notes, slurs, ties and phrasingslurs hidden.
% if there are other objects in the voice, like text (e.g. c^schneller ), it has to be 'tagged out'.
% Otherwise those objects appear twice
\new Staff <<
\new Voice="melodieC" \with {
\override Slur #'stencil = ##f
\override Tie #'stencil = ##f
\override PhrasingSlur #'stencil = ##f
\override DynamicText #'stencil = ##f
\override Hairpin #'stencil = ##f
% what else should be hidden?
} { \hideNotes { s1 \keepWithTag #'lyrics \noten } }
\new Voice { R1^"example C (hidden notes)" \keepWithTag #'print \noten }
>>
\new Lyrics \lyricsto "melodieC" { \text }
% using phrasing slurs if the position is next measure
% this only works, if the position of the '(n)' is on a tied note
% the extender is not extended very far to the '(n)'
% a phrasing slur is *not* a tie and looks different!
\new Staff <<
\new Voice="melodieD" { R1^"example D (phrasing slurs)" \notend }
>>
\new Lyrics \lyricsto "melodieD" { \text }
% using 'melismaBusyProperties' and drawline
% a good alternative to the phrasing slur hack
\new Staff \new Voice = "melodieE" { R1^"example E (drawline)" \notene }
\new Lyrics \lyricsto "melodieE" \texte
>>
%some random notes
\new Staff { \relative c'' { g8^"some random notes" a bes c b bes b16 c d b \repeat unfold 2 { g8 a bes c b bes b16 c d b } | c1 } }
>>
}
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user