bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Rehearsal Mark Bug (or could be called)


From: Mats Bengtsson
Subject: Re: Rehearsal Mark Bug (or could be called)
Date: Mon, 22 Oct 2007 09:20:55 +0200
User-agent: Thunderbird 2.0.0.5 (X11/20070716)

Definitely a bug! The program should never hang.

  /Mats

fedge wrote:
Hello,

I've had a hard time tracking this down, and have found a work-around --
which may be the correct way to deal with it, or it may be a bug --
depending on how you look at it.

code example (I was using 2.11.34, also seemed to happen with 2.11.23):

======

\relative {
  \mark \markup { A }
  c1 d e f \break

%  \override Score.Clef #'stencil = ##f
  \mark \markup { B }
  g a \mark \markup { C } b c
}

======

As is, every thing is fine.  There is an "A" at the start, a "B" at the
start of the second line and a "C" midway though the second line.

If the Score.Clef override is NOT commented out, Lilypond crashes (on my Mac
OS X, intel).  I now gather that this is because the default alignment for
rehearsal marks (at the beginning of new lines) must be on the Clef, and
since there is no Clef the program hangs (and uses all my CPU trying to get
out of it, and I have to force-quit the process).

But ... if I then remove the rehearsal mark from the beginning of the second
line, all is fine.  So Lilypond must know that there is no Clef mid-line and
defaults to the bar line.  I would think that the code should be able to
check before assuming that there is a Clef at the beginning of a line.

On the other hand, I realize that I'm "over-riding" one default which is
causing another default to fail.  But it seems there are more and more
people using Lilypond for jazz leadsheets, and jazz leadsheats typically
have no clefs after the first one on the first line, and have rehearsal
marks for section identification (example: A, B and C sections), and these
section markers are typically at the start of a staff.

Here is my (for what now seems obvious) work-around:

======

\relative {
  \mark \markup { A }
  c1 d e f \break

  \override Score.RehearsalMark #'break-align-symbols = #'(staff-bar)
  \override Score.Clef #'stencil = ##f
  \mark \markup { B }
  g a \mark \markup { C } b c
}

======

If I override the Score.RehearsalMark alignment to "staff-bar", everything
works again.

If Lilypond can figure out that it shouldn't align a rehearsal mark to a
Clef in mid-line, it should also figure this out at the beginning of a staff
-- I think :)

Thanks,
Jeff.


--
=============================================
        Mats Bengtsson
        Signal Processing
        Signals, Sensors and Systems
        Royal Institute of Technology
        SE-100 44  STOCKHOLM
        Sweden
        Phone: (+46) 8 790 8463                         
       Fax:   (+46) 8 790 7260
        Email: address@hidden
        WWW: http://www.s3.kth.se/~mabe
=============================================





reply via email to

[Prev in Thread] Current Thread [Next in Thread]