Menu

#5602 Implement MeasureSpanner

Fixed
Enhancement
2019-11-28
2019-11-15
No

This patch creates a spanner whose ends are oriented to measure
boundaries, a frequent request from users. The ends of the
spanner may be aligned in various ways to prefatory material.
The spanner may hold text or markup in a centered gap.

The spanner is begun with the command '\startMeasureSpanner'
and ended with '\stopMeasureSpanner'.

Provide two regression tests.

https://codereview.appspot.com/571180043/

Discussion

  • Anonymous

    Anonymous - 2019-11-16

    Passes make. make check and a full make doc.

     
  • Anonymous

    Anonymous - 2019-11-18
    • Patch: review --> countdown
     
    • David Kastrup

      David Kastrup - 2019-11-18

      "pkx166h" lilypond-pkx@users.sourceforge.net writes:

      • Patch: review --> countdown
      • Comment:

      Patch on countdown for Nov 20th (there's a comment about nestability
      on Reitveld but I don't think this holds anything up).

      I think nestability is sort of a red herring. Much more important would
      be heeding spanner-id (in which case one can use this for implementing
      nestable spanners in specific cases).

      --
      David Kastrup

       
  • Anonymous

    Anonymous - 2019-11-18

    Patch on countdown for Nov 20th (there's a comment about nestability on Reitveld but I don't think this holds anything up). I'd think we'd probably want this in the doc somewhere (Changes and Notation right? that can be a new tracker issue I guess).

     
  • Anonymous

    Anonymous - 2019-11-20
    • Patch: countdown --> push
     
  • Anonymous

    Anonymous - 2019-11-20

    Patch counted down - please push.

     
  • David Nalesnik

    David Nalesnik - 2019-11-20

    Patch isn't ready for pushing, yet. I still need to create a patch addressing the concerns of the reviewers.

     

    Last edit: David Nalesnik 2019-11-20
  • David Nalesnik

    David Nalesnik - 2019-11-21
    • summary: Implement MeasureAttachedSpanner --> Implement MeasureSpanner
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -3,8 +3,8 @@
     spanner may be aligned in various ways to prefatory material.
     The spanner may hold text or markup in a centered gap.
    
    -The spanner is begun with the command '\startMeasureAttachedSpanner'
    -and ended with '\stopMeasureAttachedSpanner'.
    +The spanner is begun with the command '\startMeasureSpanner'
    +and ended with '\stopMeasureSpanner'.
    
     Provide two regression tests.
    
     
  • David Nalesnik

    David Nalesnik - 2019-11-21
    • Patch: push --> new
     
  • Anonymous

    Anonymous - 2019-11-21
    • Patch: new --> review
     
  • Anonymous

    Anonymous - 2019-11-21

    Passes make, make check and a full make doc.

    There are some 'cell' differences in the reg tests.

    See below

    2.689647    
    
    time    : 0
    cells   : 1037168
    
    time    :        0 (0.000)
    cells   :   747061 (0.163)
    
    input/regression/song-basic.profile
    ---
    
    2.678370    
    
    time    : 0
    cells   : 1045848
    
    time    :        0 (0.000)
    cells   :   753878 (0.162)
    
    input/regression/song-basic-nonenglish.profile
    --
    
    2.276242    
    
    time    : 0
    cells   : 882248
    
    time    :        0 (0.000)
    cells   :  1189608 (-0.148)
    
    input/regression/song-melisma.profile
    --
    
    2.041943    
    
    time    : 0
    cells   : 1172280
    
    time    :        0 (0.000)
    cells   :   885476 (0.139)
    
    input/regression/song-associated-voice.profile
    --
    
    1.820974    
    
    time    : 0
    cells   : 1326911
    
    time    :        0 (0.000)
    cells   :  1021190 (0.130)
    
    input/regression/song-reordering2.profile
    --
    
    1.564099    
    
    time    : 0
    cells   : 1096342
    
    time    :        0 (0.000)
    cells   :  1391108 (-0.119)
    
    input/regression/song-reordering.profile
    --
    
    0.416516    
    
    time    : 0
    cells   : 1260538
    
    time    :        0 (0.000)
    cells   :  1153678 (0.044)
    
    input/regression/spacing-knee-compressed.profile
    --
    
    0.322901    
    
    time    : 0
    cells   : 738368
    
    ime    :        0 (0.000)
    cells   :   792867 (-0.036)
    
    input/regression/instrument-name.profile
    
     
    • David Nalesnik

      David Nalesnik - 2019-11-22

      I can't imagine what relationship my patch would have with these files. Has there been recent work on musicxml? (The majority of the files listed create musicxml output.)

       
      • Anonymous

        Anonymous - 2019-11-23

        A quick look in git:
        http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=bdd9f912691797b954e9541b03f25dfccc1291a2

        I'll leave on review for now in case anyone else wants to chime in.

         

        Last edit: Anonymous 2019-11-23
        • Jonas Hahnfeld

          Jonas Hahnfeld - 2019-11-23

          James, you do a test-baseline just before applying each patch, right? In that case I don't see how a recent change might affect this, it must be the applied patch.

           
          • David Nalesnik

            David Nalesnik - 2019-11-23

            Perhaps it relates to test-baseline then. None of these regtests has anything to do with my patch. There was no report of cell differences with the initial patch. The changes I made for the revised patch were mostly cosmetic.

             
    • Jonas Hahnfeld

      Jonas Hahnfeld - 2019-11-23

      I can reproduce the cell differences on my machine - but only with the new regtests added. If I remove the new tests and just check the "old" tests, output-distance only shows the expected test-output-distance.ly test.

      So I guess this is yet another non-determinism when you add new tests and can be ignored in this case.

       
      • David Nalesnik

        David Nalesnik - 2019-11-23

        Thank you for checking this!

         
  • Anonymous

    Anonymous - 2019-11-25
    • Patch: review --> countdown
     
  • Anonymous

    Anonymous - 2019-11-25

    Patch on countdown for Nov 27th.

     
  • Anonymous

    Anonymous - 2019-11-28
    • Patch: countdown --> push
     
  • Anonymous

    Anonymous - 2019-11-28

    Patch counted down - please push.

     
  • David Nalesnik

    David Nalesnik - 2019-11-28

    Patch pushed as commit 0b63a1c5aa1340f08b529133a6fd0b11516ec910.

     
  • David Nalesnik

    David Nalesnik - 2019-11-28
    • status: Started --> Fixed
    • Patch: push -->
     
  • David Nalesnik

    David Nalesnik - 2019-11-28
    • labels: --> Fixed_2_21_0