Am 12.08.2017 um 20:56 schrieb Malte Meyn:
Am 12.08.2017 um 17:05 schrieb Hauke Rehr:
Still, the output doesn’t match at least /my/ expectations:
notes should either not be merged at all, or there should be
stacked accidentals indicating which one applies to which Voice.

How should this be a default behaviour? IMO none of those two options looks 
good and unambiguous. But here are three possible solutions to your problem (I 
like the third most):

We might decide that it is ok to provide an ambiguous engraving, but the 
engraving lilypond provides is clearly broken and should be fixed.

Knut



\version "2.19.65"
\pointAndClickOff

\markup { "Hauke - A "}
\markup { \italic "clearly broken"}
\new Voice \relative c'' {
  <<
    { \voiceOne c4 g4 g4 ais4 }
    \new Voice { \voiceTwo gis4 gis4 gis4 gis4 }
  >> \oneVoice
}



\markup { "Knut - A" }
\markup { \italic "forcing accidentals does work, but result is ambiguous"}
\relative {
  <<
    { c''4 g! g! ais } \\
    { gis4 gis! gis! gis }
  >>
}


\markup { "Knut - B" }
\markup { \italic "This is unambiguous"}
\relative {
  <<
    { c''4 \tweak NoteColumn.X-offset -3 g! \tweak NoteColumn.X-offset -3 g! ais } \\
    { gis4 \tweak Accidental.extra-offset #'(4 . 0) gis! \tweak Accidental.extra-offset #'(4 . 0) gis! gis }
  >>
}


\markup { "Malte - A" }
\markup { \italic "Unambiguous again, but I would force a " \musicglyph #"accidentals.sharp" " on beat 2"}
\relative {
  <<
    {
      c''4
      \tweak NoteColumn.X-offset 2.5
      \tweak Accidental.X-offset 1.6
      g
      \tweak NoteColumn.X-offset 1.5
      \tweak Accidental.extra-offset #'(1.65 . 0)
      g!
      ais
    } \\ {
      gis
      gis
      \tweak NoteHead.extra-offset #'(-1 . 0)
      \tweak Stem.extra-offset #'(-1 . 0)
      gis
      gis
    }
  >>
}

\markup { "Malte - B" }
\markup { \italic "Looks good. But have a look at the next example"}
\relative {
  <<
    {
      c''4
      \tweak Accidental.stencil #ly:text-interface::print
      \tweak Accidental.text
      \markup \fontsize #-5 \override #'(baseline-skip . 2) \vcenter \center-column {
        \musicglyph #"accidentals.natural"
        \musicglyph #"accidentals.sharp"
      }
      g
      g
      ais
    } \\ {
      gis
      gis
      \tweak Accidental.stencil #ly:text-interface::print
      \tweak Accidental.text
      \markup \fontsize #-5 \override #'(baseline-skip . 2) \vcenter \center-column {
        \musicglyph #"accidentals.natural"
        \musicglyph #"accidentals.sharp"
      }
      gis
      gis
    }
  >>
}


\markup { "Knut - C " }
\markup { \italic "This proves that stacking accidentals is not a reasonable solution"}
\relative {
  <<
    { c''4 <g! bes> <g! bes!> ais } \\
    { gis4 <gis! es> <gis! es!> gis }
  >>
}


\markup { "Malte - C" }
\markup { \italic "Ok, but nothing we should do automatically"}
\new StaffGroup \new Staff = "orig" \relative {
  <<
    {
      c''4 c c c
      \new Staff \with {
        alignAboveContext = "orig"
      } \relative {
        \omit Staff.TimeSignature
        \omit Staff.Clef
        c'' g! g a
      }
      c c c c
    } \\ {
      gis gis gis gis
      gis gis gis gis
      gis gis gis gis
    }
  >>
}

Attachment: issue.pdf
Description: Adobe PDF document

_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond

Reply via email to