lilypond-user
[Top][All Lists]
Advanced

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

Proposed new available and recommended behavior of \relative


From: David Kastrup
Subject: Proposed new available and recommended behavior of \relative
Date: Thu, 07 Mar 2013 20:06:24 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux)

Please take a look at

Issue 3229: Patch: Make \relative { ... } interpret the first pitch as
an absolute one

<URL:http://code.google.com/p/lilypond/issues/detail?id=3229>

It's clear that this change will require quite a bit more work if it
gets accepted, and it is important that we get user feedback before
investing significant more work here.

The idea is that \relative { ... } (namely \relative used without an
explicit reference pitch) uses the first note inside as the reference
pitch.  That is, if the first note happens to be written as fis'' it
will sound as fis'' (absolute pitch).  Using \relative without a
reference pitch has previously been discouraged.  Its traditional
meaning is to have c' used as default reference pitch, leading to the
result

\relative { f' } -> f'
\relative { g' } -> g

which is not necessarily helpful.  One rationale is to stop the
"distribution" of the information for the first pitch to potentially
quite separate places, like being able to write

\new Staff \relative {
  \key aes \major
  <<  % Voice one
    { c''2 aes4. bes8 }
    ...

instead of the previous

\new Staff \relative c'' {
  \key aes \major
  <<  % Voice one
    { c2 aes4. bes8 }
    ...


Now the old behavior and recommended usage is _really_ old.  Few people
use \relative without a reference pitch nowadays, so the amount of code
in need of changing is rather small.  However, changing the
_recommended_ way of doing things requires a lot of changes in LilyPond
documentation (many of which can be done automatically as the current
patch shows, but of course quite a few also requiring more manual work),
and it will become visible quite thoroughly.

So the question is how LilyPond users feel about this, both seasoned
users as well as newer ones: would this change make learning LilyPond
easier?  Would it feel more convenient/logical in the long run?

The actual change in semantics are just a few lines in
ly/music-functions-init.ly.  But doing just that change alone would be
pointless if it's not enough of an improvement to actually change the
documentation extensively and recommend this use.

How do people feel about this?

-- 
David Kastrup




reply via email to

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