lilypond-devel
[Top][All Lists]
Advanced

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

Re: Behaviour of chord repetition in \relative mode


From: David Kastrup
Subject: Re: Behaviour of chord repetition in \relative mode
Date: Sat, 12 Dec 2009 14:01:52 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

Nicolas Sceaux <address@hidden> writes:

> I'm taking into account remarks from previous discussions regarding
> chord repetition.  In particular, I've get rid off the user-settable
> memorization function: only chords (with angle brackets) are memorized.
> This should be the more useful to users, and at the same time easy
> enough for LilyPond-aware editors to handle.
>
> what should be entered for the second upper "c"?
>
> Two options:
>
> %% The second upper "c" octave is computed from the first "c"
> %% i.e. the last explicite note.
> \relative c' {
>   <c e g>8 c' q c r4 q
> }
>
> %% The second upper "c" octave is computed from the previous
> %% repeated chord ("q")
> \relative c' {
>   <c e g>8 c' q c' r4 q
> }
>
> I'd favor the first option, that is always consider the last explicit
> note, rather than considering an implicit, repeated note.

Probably saner if we are thinking about what happens when an editor does
not understand q.

I am not all too happy about the "only chords" semantics and the syntax.
Here is one reason:

I am thinking of accordion notation again.  We have the situation there
(in German notation) that chords and bass notes are spelled out in
notes, as well as written the first time they occur in a pattern.  What
a pattern is, is more or less left to the taste of the engraver.  It
does not usually mean more than 3 chords or so.

So I'd think it would be nice to write something like

{ G4 g D // | //// // //// // | \time 3/4 G g / | D // / | ////// // / | }

(number of slashes corresponds with how far you have to look backwards,
in this case counting slash sequences new when they appear)
or without reslash memory (probably saner)

{ G4 g D // | /// // / // | \time 3/4 G g / | D // // | /// // // | }

(uppercase letters are single bass notes, lower case are chords).  The
idea was to be able to refer back more than one note, _and_ use the
existence of backreference as an additional indication that the printed
score does not need to spell out the chord/bass either.

I am actually using the equivalent of chordmode g1 for indicating
bass-only notes (the input syntax is something I need to implement,
anyway), so there is some likelihood this will get picked up by q in
spite of being a single note.

_If_ this sort of shortcut was supposed to be usable, then one would
also want to be able to specify different durations on repeats.

I am not sure that this will be ultimately the best way to go, and
things like /| in order to say "please repeat the chord pattern from the
last bar" and similarly //| would also be nice in that application.

I am not sure whether coupling repetition without explicit label to
notational repetition without explicit note names is the optimum, but it
feels like a reasonable way to express this.

-- 
David Kastrup





reply via email to

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