lilypond-user
[Top][All Lists]
Advanced

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

Re: Proposed new available and recommended behavior of \relative


From: David Kastrup
Subject: Re: Proposed new available and recommended behavior of \relative
Date: Sat, 09 Mar 2013 10:47:14 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Keith OHara <address@hidden> writes:

>> Colin Hall <colinghall <at> gmail.com> writes:
>> 
>> > In my early days with Lilypond I learned this to my cost. I've
>> > never used \relative since then.
>
> I stopped using \relative about a year ago, because absolute note
> entry is vastly easier.

Well, then both your feedback, short of the effects you get from having
to read \relative passages by others, should not account much for
swinging the vote.

> I do, however, have in mind the range of the instrument, and can
> \transpose so that written c d e f g a b falls in the center of that
> range.  In borderline cases I prefer putting the home octave a bit
> higher, because , is one keystroke for me while ' requires two.
> Transposed absolute entry puts me in control.

Well there are octave checks.  We have style suggestions like "explicit
duration every bar, bar check every bar".  The kind of followup error in
relative note entry would warrant "octave check every bar".  Which kind
of defeats the purpose of relative note entry, namely not having to
think about absolute pitches more than necessary.

> When I did use \relative c' {} it was a burden to think ahead "the
> first note I want will probably be an f'', so the nearest C is c'' ".
> The new proposal for \relative {...} removes that burden.

Well, so would \relative f.  We have deprecated \relative as a shortcut
for \relative c' for quite long and as far as I can see, it has not been
described in user-level documentation short of the music function
documentation string itself which is present since version 2.15.13:

commit db3e78a1d3ac62dff61e80a3f0ccf60009f535ed
Author: David Kastrup <address@hidden>
Date:   Sat Sep 24 23:53:25 2011 +0200

    parser.yy et al: Make \relative a music function.

So it is not all that likely that there is a lot of active use.

Issue 3231 is intended to close that door completely whether or not
we'll open another door instead, and it is not likely that many fingers
will get caught in that closing door.  Legacy usage is caught.

The last time we had a discussion about \relative starting pitches, one
relevant argument I remember was that people did not know the meaning
absolute pitch for any notename but c and consequently were not even
able to guess what \relative a''' { a } would mean.  Well, of course,
they'd know it would be a''', but they would not know whether that was
sounding above or below c'''.

Now the reason we deprecated \relative { ... } was that it is better to
be explicit about the reference pitch rather than assuming a
comparatively arbitrary default.

The reason I want \relative { ... } to mean \relative f { ... } is that
a) the choice of f is not arbitrary
b) \relative f { ... } looks arbitrary.  And it will have people going
   through the motions of figuring out the starting pitch when they are
   actually already done.

So that's the next step: opening the door on \relative { } again, or
rather a different door with the same door handle.

Then there are two more questions:

a) should the LilyPond codebase walk through that door?
b) should convert-ly make user code walk through that door once?

> The combination  \transpose c c, { \transposition bes \clef bass c' d' }  
> means "Typed c' represents concert bes " in version 2.16.

It also means "if you use this music anywhere, all following music will
come under the influence of "\transposition bes," and yes, that comma
inside of the quotation marks is an octave mark.

> In version 2.18 it will mean "Printed c' represents concert bes " (the
> new way being more consistent with the case where there is no
> \transposition setting at all).

Plus "all following music will come under the influence of
"\transposition bes", the comma now being outside of the quote marks and
not an octave mark.

Which is not fabulous, but it does mean that if you are using \transpose
for easier entry, you don't need to remember to never call
\transposition inside.

> Both are details that I tend not to remember, so I take a guess and
> adjust once after I see if the cue notes come out right.

That makes it rather likely that you'll get hit by the \transposition
changes.  If your way for dealing with surprises was not moving the code
around until the surprise went away, but rather compensating for the
surprise, then now that the surprise is gone, you'll be left with the
compensation.

>   Transposed absolute note entry rocks.   Relative note entry sucks.

We are getting close to operating system war terrain now.

-- 
David Kastrup




reply via email to

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