[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: voice-warning
From: |
Erik Sandberg |
Subject: |
Re: voice-warning |
Date: |
Mon, 7 Jun 2004 00:35:40 +0200 |
User-agent: |
KMail/1.6.2 |
On Sunday 06 June 2004 23.58, Han-Wen Nienhuys wrote:
> address@hidden writes:
> > Throwing warnings can (and should?) be seen as a sign that you have done
> > something "the wrong way", i.e. that you are recommended to do it some
> > other way. But I think I've done my music the way that should be
> > recommended.. at least I have found no good alternatives. So in that
> > case, there should IMHO be no warning.
>
> I think that the potential for misspelling the context name in
> \lyricsto is a much larger risk, and it is unacceptable that in such a
> case lyrics disappear into the void without warning. If you have a
> practical solution how to handle this better, let me know.
Yes, I have an alternative solution:
The risk is minimal, that you would misspell the context name to a voice name
that already exists somewhere. So I would say that if you have written
\lyricsto foo blah
then you should get a warning if there is no note in the current context(?)
which belongs to a voice called foo.
So this would give a warning
<<
\context Voice=foo { c c c c }
\lyricsto Foo blah
>>
but this wouldn't:
<<
\context Voice=foo { c c \context Voice=bar c c }
\lyricsto bar blah
>>
In the second example, there _are_ notes to couple "blah" with, so there was
most likely no misspelling.
I suppose that you could generalise the rule to the following: A warning
should be issued once for each lyricsto, if lilypond fails to couple each
syllable to a note. (this would also cover the quite common problem where an
error makes you end up having more syllables than notes)
Does this sound sensible?
Erik
ps. A secondary question is this: How should lilypond interpret the following
code? Should 'blah' be coupled with the c:s or the d:s, or both?
<<
\new Staff \context Voice=foo { c c c c }
\new Staff \context Voice=foo { d d d d }
\lyricsto foo blah
>>