Menu

#3324 Avoid collision of voices

Verified
nobody
Documentation
2015-03-01
2013-04-17
Anonymous
No

Originally created by: *anonymous

Originally created by: ma...@gregoriana.sk
Originally owned by: tdanielsmusic

Notes from different (unspecified) voices shouldn't collide:

Case 1 - Cross staff voices:
\version "2.17.16"
\score {
<<
\new PianoStaff <<
\new Staff = "up" {
{
  f''8 e''8 e'' e''
} }
\new Staff = "down" {
{
  e'8 \change Staff = "up" g'8 g' g'
} }
>>
>>
}
The same music in one staff does not collide:
Case 2 - Same staff without collision

\version "2.17.16"
\score {
  \new Staff = "up" <<
    \new Voice {
      f''8 e''8 e'' e''
    }
    \new Voice {
      e'8 g'8 g' g'
    }
  >>
}

Case 3 - Collision in the same staff

\version "2.17.16"
\score {
  \new Staff = "up" <<
    \new Voice {
      f''8 e''8 e'' e''
    }
    \new Voice {
      e''8 g'8 g' g'
    }
  >>
}

Original report by Evan Laforge:
http://lists.gnu.org/archive/html/bug-lilypond/2013-04/msg00046.html

3 Attachments

Discussion

  • Google Importer

    Google Importer - 2013-04-17

    Originally posted by: k-ohara5...@oco.net

    We need to tell current LilyPond in which direction we want the voices to shift (up, down or to the side) with \voiceOne \voiceTwo etc. described in Learning Manual section 3.2.2.

     
  • Google Importer

    Google Importer - 2013-04-17

    Originally posted by: dak@gnu.org

    The visuals for case 2 are a valid representation of two-voice music, namely when the voices are inversed.  LilyPond assumes a voice order iff implicit voices are separated by \\ but otherwise relies on the user's specification of \voiceOne/\voiceTwo etc.  It is more or less an accident that case 2 happens to work without collision: like the other cases the user input does not reflect an intent of voiced stem directions.

    So LilyPond is working as expected, not trying to make sense of an input where the user is supposed to choose meaning.  Should LilyPond generally try to pick some voicing order as tie breaker?  That would be a feature request, but I am not really sympathetic to it.

    My vote is on "invalid issue".

     
  • Google Importer

    Google Importer - 2013-04-18

    Originally posted by: k-ohara5...@oco.net

    This is an enhancement request.  It would be valid if we consider it at least possible that we might make LilyPond automatically choose in which directions to have the voices avoid each other (automatically picking \voiceOne etc. without explicit instruction from the user).

    I don't think we /want/ to enhance LilyPond this way, because the previous attempts to make LilyPond do the right thing automatically (implicit creation of contexts, and the simple method using '\\') have caused users trouble.  I'm not sure if it is possible.

     
  • Google Importer

    Google Importer - 2013-04-18

    Originally posted by: tdanielsmusic

    I agree, trying to guess what the user wanted when there are
    clashing note columns would cause more trouble, assuming it is
    even possible.  Better to continue to give the warning about
    clashing note columns.  These warnings should prompt the user to
    look for the correct solution.

    Maybe we should help relatively new users by adding this
    warning and its solution to Usage 1.4 Common errors.  In
    which case this would become a Documentation issue.

    Trevor

     
  • Google Importer

    Google Importer - 2014-10-12

    Originally posted by: tdanielsmusic

    In the absence of any further discussion, it seems the only action resulting from this issue is to add the clashing note columns warning to Usage 1.4 Common errors.  This would also be a good place to explain precisely what it means following Keith's recent mod to suppress the warning if an actual collision does not occur.

    Changing to a doc issue.

    Trevor

    Labels: -Type-Enhancement Type-Documentation

     
  • Google Importer

    Google Importer - 2014-10-18

    Originally posted by: tdanielsmusic

    (No comment was entered for this change.)

    Owner: tdanielsmusic
    Status: Started

     
  • Google Importer

    Google Importer - 2014-10-21

    Originally posted by: tdanielsmusic

    Doc: Issue 3324: Add explanation of clashing note columns warning

    http://codereview.appspot.com/154640043

    Labels: Patch-new

     
  • Google Importer

    Google Importer - 2014-10-22

    Originally posted by: pkx1...@gmail.com

    Patchy the autobot says: passes tests.  Includes a full make doc

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2014-10-23

    Originally posted by: tdanielsmusic

    Remove mention of \stemsDown

    http://codereview.appspot.com/154640043

    Labels: -Patch-review Patch-new

     
  • Google Importer

    Google Importer - 2014-10-24

    Originally posted by: pkx1...@gmail.com

    Patchy the autobot says: passes tests.  includes a full make doc

    Labels: -Patch-new Patch-review

     
  • Google Importer

    Google Importer - 2014-10-27

    Originally posted by: pkx1...@gmail.com

    Patch on countdown for October 30th

    Labels: -Patch-review Patch-countdown

     
  • Google Importer

    Google Importer - 2014-10-30

    Originally posted by: pkx1...@gmail.com

    Patch counted down - please push

    Labels: -Patch-countdown Patch-push

     
  • Google Importer

    Google Importer - 2014-10-30

    Originally posted by: tdanielsmusic

    Pushed to staging as
    [r62b428826f37228ab4644dbaabac7935c17ecdcd]

    Author: Trevor Daniels <t.daniels@treda.co.uk>  2014-10-23 22:28:47
    Committer: Trevor Daniels <t.daniels@treda.co.uk>  2014-10-30 22:21:11

        Doc: Issue 3324: Add explanation of clashing note columns warning

    Labels: -Patch-push Fixed_2_19_16
    Status: Fixed

     
  • Google Importer

    Google Importer - 2015-01-17

    Originally posted by: k-ohara5...@oco.net

    The collisions in the example at the top of this issue will be resolved with the patch to issue 4255, but still giving a warning because LilyPond is merely guessing that the first voices in the <<>> are One and Two, while later voices in the same <<>> are the (usually temporary) Three or Four

     
  • Google Importer

    Google Importer - 2015-03-01

    Originally posted by: fedel...@gmail.com

    (No comment was entered for this change.)

    Status: Verified

     
MongoDB Logo MongoDB