lilypond-user
[Top][All Lists]
Advanced

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

Reciting tones


From: R. Padraic Springuel
Subject: Reciting tones
Date: Sun, 22 Mar 2020 16:00:38 -0400

While typesetting chant, I have a pair of functions for dealing with recitation 
notes: one applies to the notes, the other to the lyrics (see MWE below).  This 
works, but I’m wondering if there isn’t a way to combine the two functions into 
one that has a few extra features:

1) The function automatically detects whether it’s in a musical or lyrics 
context and applies the appropriate settings/overrides which are exclusive to 
that context.
2) The function looks to make sure that it’s always in parallels with itself 
(that is, when the function is applied in the notes, there should be a 
corresponding application of the function in the lyrics at the same musical 
moment), raising an error when it’s not (or at least a warning like a bar 
check).
3) Line breaks are allowed between the words encapsulated in the function in 
the lyrics, in which case the reciting tone note will be repeated at the 
beginning of the new line.

Are any of these things possible?  Priority wise, I’d say that #3 is the most 
important for me (as it would allow me to use the same source on different 
sized paper and/or with different sized staves), while the others are more 
“nice-to-have” things that would help my workflow without being critical.  On 
the other hand, I naively expect #1 to be easy to implement, perhaps by looking 
at the associatedVoice property (which would be set for a lyrics context, but 
presumably not for a music one). 

%%%%% MWE

\version "2.19.84"

% apply to lyrics in chant which should all appear below a single note
recite-words = { \once \override LyricText.self-alignment-X = #LEFT }

% a note in chant which is sustained for multiple words
% argument for ly:make-duration is 1 for half notes, 0 for whole, -1 for breve
% also has second optional argument for number of dots
recite-note = #(define-music-function (note) (ly:music?)
            (withMusicProperty 'duration (ly:make-duration 1) note))

% remove stems and auto bar lines
chant = { 
    \set Score.timing = ##f
    \omit Stem
} 


music = {\chant \recite-note c' d' e' f' }

words = \lyricmode{ \recite-words "A phrase all sung on one note" mov -- ing 
words. }

\new Staff <<
    \new Voice = "mel" { \music \music }
    \new Lyrics \lyricsto "mel" { \words \words }
>>

✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝✝
Fr. Samuel, OSB
(R. Padraic Springuel)
St. Anselm’s Abbey
4501 South Dakota Ave, NE
Washington, DC, 20017
202-269-2300
(c) 202-853-7036

PAX ☧ ΧΡΙΣΤΟΣ




reply via email to

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