[Top][All Lists]

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

Re: Proposed Doc Changes in Polyphonic music

From: Graham Percival
Subject: Re: Proposed Doc Changes in Polyphonic music
Date: Sat, 03 Feb 2007 14:37:43 -0800
User-agent: Thunderbird (Macintosh/20061207)

Carl D. Sorensen wrote:
Here is a proposed doc addition to section 6.3.5 Collision Resolution

Thanks! This has finally been added. I had to change a few things; I've added a few comments that will make future doc updates faster:

\relative c' {
\override Staff.NoteCollision #'merge-differently-headed = ##t << {d=''2 g2 } \\ {\stemNeutral d=''8 c8 r4 e,8 c'8 r4 } \\ { \voiceFour e,,2 e'2} >> << {d=''2 \shiftOn g2 } \\ {\stemNeutral d=''8 c8 r4 e,8 c'8 r4 } \\ { \voiceFour e,,2 e'2} >>

Please eliminate any unnecessary warnings -- this example creates ok music, but only because of the =''. If you wrote d'=''2 in the second bar (for example), you could eliminate an unnecessary warning.

In addition, the docs would have been updated quicker if you had re-sent these doc updates after Mats' comment. I couldn't easily[1] figure out how to change your docs, so I left them until I had time to read them in detail, read Mats' comment in detail, and combine them. In the end I decided that the \shiftOn command was more useful than the \voiceThree command (for this doc example), but that \oneVoice was better than \stemNeutral.

[1] By "easily", I mean "by looking at it for a minute or two while distracted in a lecture".

In some instances of complex polyphonic music, you may need additional
voices to avoid collisions between notes.  Additional voices are added
by defining an identifier, as shown below

voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)

<< { \voiceOne g''4 ~ \stemDown g32[ f( es d c b a b64 )g] } \\ { \voiceThree b4} \\ { \voiceFive d,} \\ { \voiceTwo g,}\\>>

Please send complete, nicely formatted examples. This example seems to be missing a \relative, and the compact spacing makes it hard to read. The example is much easier to understand like this:

     voiceFive = #(context-spec-music (make-voice-props-set 4) 'Voice)

     \relative c''' <<
       { \voiceOne g4 ~  \stemDown g32[ f( es d c b a b64 )g] } \\
       { \voiceThree  b4} \\
       { \voiceFive d,} \\
       { \voiceTwo g,}

Graham, I've greatly admired your work on the docs.  Now I'm even more
impressed, given that you can work on the docs during momentary pauses
in FFT lectures!

Thanks! I must admit that I don't do all my doc (and bug) stuff during lectures -- I do what I can (ie routine copy-and-paste, compile file to check it, and then copy-and-paste into the bug tracker or the docs) during lectures; more complicated stuff has to wait until I have the time and energy to focus on it.

- Graham

reply via email to

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