lilypond-devel
[Top][All Lists]
Advanced

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

Re: better error msg for ambiguous (de)crescendo?


From: Ian Hulin
Subject: Re: better error msg for ambiguous (de)crescendo?
Date: Thu, 28 May 2009 18:06:04 +0100
User-agent: Thunderbird 2.0.0.21 (X11/20090409)

Hi Werner,

Werner LEMBERG wrote:
warning: lilypond cannot interpret a (de)crescendo.
         MIDI output ignoring (de)crescendo starting at line <nnnn>.

This way the diagnostic states why Lily can't do what the user has
coded, what it's doing as a result, and the consequences of the
error condition detected.

This is not precise enough IMHO, since you won't get an error if you
don't produce MIDI output...

O.K. Werner, so what problems (from a user perspective) is this error condition causing the code? If we're giving a warning, this means we can carry on processing the code but what is produced is very probably not what the intends or expects. Does this mean the graphical output will have a hairpin stretching over umpteen bars if there is no midi output?

What makes the (de)crescendo as coded impossible or ambiguous? I agree, we need to be as precise as possible, but we need to also give the user as big a steer as we can towards sorting the problem.

If this condition is caught when interpreting a new \> or \< type lexeme, then presumably this is because there is an outstanding \< or \> already in effect which hasn't been terminated by a \! or specific dynamic marking (\f or \mp or \ppp or whatever).

SO how about signaling

warning: lilypond cannot interpret a (de)crescendo at line <nnnn>.
          An unterminated (de)crescendo is already in force
          add "\!" or specific dynamic mark.

and if midi is being produced, resignal
          MIDI output ignoring (de)crescendo starting at line <nnnn>.

Are there any other conditions which can generate this warning? If so we need a specific warning message for that condition.

Cheers,
Ian






reply via email to

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