Menu

#2071 Collision of LyricHyphen and barline

Accepted
nobody
None
Ugly
2016-09-27
2011-12-02
Anonymous
No

Originally created by: *anonymous

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

This is e.g. a problem for engraving a choral piece with barlines in mensural
style.

:::TeX
\new StaffGroup <<

       \new Staff { r1 r}
       %Collision of hyphen and barline
       \new Lyrics \lyricmode { hel1 -- lo1 }

       \new Staff { r1 r }
>>
1 Attachments

Discussion

  • Google Importer

    Google Importer - 2011-12-02

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

    I think this issue should be marked as Invalid.  There is no obvious workaround for it.  Like any other grob, LyricHyphen can be whited out if this intersection bothers the user.  Whiteout is already suggested as a workaround in similar unavoidable collisions (Tie vs TimeSignature, for example).

     
  • Google Importer

    Google Importer - 2011-12-11

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

    I'm going to mark this as Documentation (i.e. add a paragraph in the dox about whiting out crescendi and lyric hyphens that traverse span bars) unless anyone has objections to the contrary.

     
  • Google Importer

    Google Importer - 2013-08-20

    Originally posted by: PhilEHol...@googlemail.com

    FWIW, whiteout appears to have no effect, since the hyphen has no padding around it - therefore the whiteout exactly fits the outline of the hyphen (AFAICS) and so it does not help.  This remains a bug, IMO.

     
  • Google Importer

    Google Importer - 2013-08-20

    Originally posted by: tdanielsmusic

    As Phil says, whiteout doesn't help here, but changing the value
    of dash-period does.  For the example in the OP, setting
    \override LyricHyphen.dash-period = #2
    seems an acceptable work-around.  Other values may be required
    for other situations.

    The issue should be left open, as the output is not optimum.

    Trevor

     
  • Google Importer

    Google Importer - 2015-07-20

    Originally posted by: simon.al...@mail.de

    The stencil-whiteout-outline function (of issue 4418) now makes it possible to sensibly whiteout this.
    What about using whiteout on lyricHyphens by default?
    Another note: it was perfectly normal to use SpanBars for choir staff groups in the 19th century, and I find it beneficial to legibility (and aesthetics).

    Summary: Collision of LyricHyphen and barline

     

    Related

    Issues: #4418

  • Trevor Daniels

    Trevor Daniels - 2015-09-26
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -5,11 +5,14 @@
     This is e.g. a problem for engraving a choral piece with barlines in mensural
     style.
    
    -\new StaffGroup &lt;&lt;
    +~~~~
    +:::TeX
    +\new StaffGroup <<
    
    -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \new Staff \{ [r1] r\}
    -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; %Collision of hyphen and barline
    -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \new Lyrics \lyricmode \{ hel1 -- lo1 \}
    
    +       \new Staff { r1 r}
    +       %Collision of hyphen and barline
    +       \new Lyrics \lyricmode { hel1 -- lo1 }
    
    -&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \new Staff \{ [r1] r \}
    -&gt;&gt;
    
    +       \new Staff { r1 r }
    +>>
    +~~~~
    
    • Needs: -->
    • Patch: -->
     
  • Trevor Daniels

    Trevor Daniels - 2015-09-26
     
  • Simon Albrecht

    Simon Albrecht - 2016-09-27

    For the record, here’s a whiteout solution:

    :::TeX
    \version "2.19.32"
    % the following layer values need to _descend_ in this order
    lyric-text-layer = #-3
    lyric-aux-layer = #-4
    span-bar-layer = #-5
    
    \layout {
      \context {
        \Lyrics
        % match LyricExtender’s thickness to that of LyricHyphen
        \override LyricExtender.thickness = 1.3
        % LyricHyphen and LyricExtender below LyricText,
        % to prevent the whiteout from ‘biting’ the letters
        \override LyricHyphen.layer = \lyric-aux-layer
        \override LyricExtender.layer = \lyric-aux-layer
        \override LyricHyphen.whiteout-style = #'outline
        \override LyricHyphen.whiteout = 1.4
        \override LyricExtender.whiteout-style = #'outline
        \override LyricExtender.whiteout = 1.4
        \override LyricText.layer = \lyric-text-layer
        \override LyricText.whiteout = 0.2
      }
      \context {
        \Score
        \override SpanBar.layer = \span-bar-layer
      }
    } 
    
     
Monday.com Logo