Menu

#5387 LigatureBracket shouldn’t avoid invisible stems

Fixed
Enhancement
2018-07-25
2018-07-18
No

This becomes apparent when using \voiceTwo as opposed to simply overriding LigatureBracket.direction.

\version "2.19.82"
<<
  \new Staff {
    \override LigatureBracket.direction = #DOWN
    %\override Stem.direction = #DOWN
    \[ c'1 d' \]
  }
  \new Staff {
    \voiceTwo
    \[ c'1 d' \]
  }
>>
1 Attachments

Discussion

  • Malte Meyn

    Malte Meyn - 2018-07-19

    It’s the same for TupletBracket and for longer durations (breve, longa, maxima). I’ll have a look at ly:tuplet-bracket::calc-x-positions.

    According to Gould, a tuplet bracket should start at the left edge of the first and end at the right edge of the last note head; this would mean that aligning to stems, whether visible or not, is always wrong.

    Edit: Gould doesn’t say anything about ligature brackets.

     

    Last edit: Malte Meyn 2018-07-19
    • Malte Meyn

      Malte Meyn - 2018-07-19

      If we wanted to follow Gould here, IIUC this means we could just delete lines 69 to 73 from tuplet-bracket.cc.

      Edit: Gould’s example for testing and comparing.

      \relative {
        \omit Staff.Clef
        \time 12/8
        r2. \acciaccatura b'8 \tuplet 4/3 { fis4 a cis cis }
        \time 2/4
        \tuplet 3/2 4 { r8 f,! r <g, d' a' a'>4\arpeggio a'8 }
        \tuplet 3/2 { c4 c8 } \tuplet 3/2 { bes d16 } e8
        \tuplet 3/2 { <d e>4 b32[ <g a>16] }
      }
      
       

      Last edit: Malte Meyn 2018-07-19
  • Malte Meyn

    Malte Meyn - 2018-07-19
    • status: Accepted --> Started
    • assigned_to: Malte Meyn
     
  • Malte Meyn

    Malte Meyn - 2018-07-19

    Issue 5387: align brackets only to visible Stems

    TupletBrackets and LigatureBrackets now don’t take into account stems of
    rests, whole and longer notes and stems that are omitted.

    Contains regtests.

    http://codereview.appspot.com/346130043

     
  • Anonymous

    Anonymous - 2018-07-19
    • Needs: -->
    • Patch: new --> review
    • Type: --> Enhancement
     
  • Anonymous

    Anonymous - 2018-07-19

    Passes make, make check and a full make doc.

    Reg test diffs here

    https://cloud.indie.host/s/965JHw2QEDFLs5F ~ 300KB

     
    • Malte Meyn

      Malte Meyn - 2018-07-19

      I had a close look and can now say that all of these regressions are expected :)

       
  • Anonymous

    Anonymous - 2018-07-22
    • Patch: review --> countdown
     
  • Anonymous

    Anonymous - 2018-07-22

    Patch on countdown for July 25th.

     
  • Anonymous

    Anonymous - 2018-07-25
    • Patch: countdown --> push
     
  • Anonymous

    Anonymous - 2018-07-25

    Patch counted down - please push

     
  • Malte Meyn

    Malte Meyn - 2018-07-25
    • labels: --> Fixed_2_21_0
    • status: Started --> Fixed
    • Patch: push -->
     
  • Malte Meyn

    Malte Meyn - 2018-07-25

    commit 1cc61d1a0851d2f35d0579f4d05a3bffbddfa0c6
    Author: Malte Meyn lilypond@maltemeyn.de
    Date: Thu Jul 19 16:34:12 2018 +0200

    Issue 5387/2: add regtests
    

    commit a69a18ff931c7405e6473e9a564c11276f3c9f9b
    Author: Malte Meyn lilypond@maltemeyn.de
    Date: Thu Jul 19 15:31:47 2018 +0200

    Issue 5387/1: align brackets only to visible Stems
    
    TupletBrackets and LigatureBrackets now don’t take into account stems of
    rests, whole and longer notes, and omitted stems.
    

    (For the record: This doesn’t follow Gould but modifies
    LilyPond’s current behaviour: If there is a stem on the same side/direction,
    align to that. Else align to the rest/note head.)