lilypond-user
[Top][All Lists]
Advanced

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

Re: Sponsored feature request--cross-staff chords, ties


From: Vivian Barty-Taylor
Subject: Re: Sponsored feature request--cross-staff chords, ties
Date: Mon, 21 Aug 2006 06:06:21 +0000 (GMT)

I have in the past got Lilypond to do what you describe. The cross-staff chords are documented in the manual, although I agree the mechanism for achieving this is a bit clumsy (extending the stem from one of the chords.) I could imagine that to allow something like your example (<f c \change Staff = bass g d>) could be a bit of a programming nightmare since the notes of the chord would have to be split between two Staff contexts, whereas they are a lower level object than the staves. This might mean that Lilypond had to create two partially hidden chords, but don't quote me - I'm not a programmer. That could lead to unexpected effects (for example with padding) and (I feel) is moving away from the transparency of the Lilypond programming system.

Your other example (the one in the .gif file) is certainly possible, although it requires a bit of fiddling. My problem when I did it was that the tieWaitForNote property was only active on the Staff where the chord began. In order to get the notes on the second staff to be tied I had to create hidden, tied notes on the second staff. This was clumsy and produced a lot of error messages, but it did work. Maybe it would be possible to allow cross-staff ties in a situation like this, and then the current syntaax (I feel) would work. However, I'm not sure how simple that is - since ties are embedded two "levels" deeper, it would probably be even more of a nightmare than the first example.

I feel a bit limited since I don't know Scheme (yet!) but would it be possible to write a macro which simplified the user-interface of the current structures, while leaving the transparency of the program intact so that those who want to fiddle with it can do so?

Cheers,

Vivian.


----- Original Message ----
From: Steve D <address@hidden>
To: address@hidden
Sent: Sunday, 20 August, 2006 5:09:26 PM
Subject: Sponsored feature request--cross-staff chords, ties

I know that cross-staff beaming has been mentioned periodically on the
LilyPond lists.

It would be great, for the sake of piano and other polyphonic instrument
scores, for there to exist in LilyPond some mechanism that would allow
for chords to change staff, perhaps like single-note melodies already
can do (with \change Staff = staff-name), and which includes all of the
tie functionality.

For an example in piano music-- an arpeggiated chord played with both
hands across both staves, tied to a following chord that crosses the
staves. I recently wrote a piece in which there is a grace-note
descending arpeggio played with both hands (sequentially, first the
right then the left), that crosses from the treble to the bass staff,
and is tied to every note but the lowest note of the following chord
(see attached GIF graphic).

To do so required some "inventive" LilyPond code, hidden notes, etc.,
and in this case, the chord following the cross-staff grace-note
arpeggio was not itself a cross-staff chord. However, it would be great,
if it can be implemented, for the following to exist in LilyPond:

* chords that cross staves (perhaps like <f c \change Staff = bass g d>)

* cross-staff chords that can be tied to cross-staff chords (using
   automatic and manual tie formatting)

* cross-staff arpeggios that can be tied to cross-staff chords
   (with auto and manual tie formatting)

* grace-note arpeggios that can be tied to cross-staff chords
   (with auto and manual tie formatting)

I would be happy to sponsor such functionality.

Best wishes,

Steve

Stephen Doonan
Portales, New Mexico US
http://www.xscd.com/pub/
--
----------------------------------------------------------------
I do not feel obliged to believe that the same God who has
endowed us with sense, reason, and intellect has intended us to
forgo their use.  -Galileo Galilei (1564-1642)
----------------------------------------------------------------
_______________________________________________
lilypond-user mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-user



reply via email to

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