lilypond-devel
[Top][All Lists]
Advanced

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

Re: \once causes segfault


From: Mats Bengtsson
Subject: Re: \once causes segfault
Date: Wed, 29 Sep 2004 13:08:11 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.2) Gecko/20040803

When you say \once, the setting basically only applies to the next note,
that's why I asked about what you really had in mind.

However, your example points to another strange bug/feature, namely
that when you set the properties subdivideBeams or beatLength,
the setting applies also to the beam of the last note before the
setting. Example:

\relative c' {\time 2/4
  \set subdivideBeams = ##t
  f16 e d c f e d c |
  % The setting affects also the first beam!!!
  f16 e d c  \set Score.beatLength = #(ly:make-moment 1 8)
    f^"setting before this tone" e d c
  c2 \set Score.beatLength = #(ly:make-moment 1 4)

  % Moving the setting 1-4 16th notes ahead gives
  f16 e d e f \set Score.beatLength = #(ly:make-moment 1 8)
    e^"setting before this tone" d c
  c2 \set Score.beatLength = #(ly:make-moment 1 4)
}


I think the following is an answer to your example:
\relative c' {\time 2/4
  \set subdivideBeams = ##t
  \set Score.beatLength = #(ly:make-moment 1 8)
  | f8 f f16( e) \times 2/3 { e16( d c) } |
  % ...
  f16 e d e  \set Score.beatLength = #(ly:make-moment 1 4) f16 e d c
}

   /Mats


Christoph Ludwig wrote:
On Wed, Sep 29, 2004 at 10:06:02AM +0200, Mats Bengtsson wrote:

I can confirm that the SIGSEGV remains in 2.3.19.

Just being curious, what did you expect the \once to
mean in this situation? Should it only apply to the first
16th note?


In the score I am transposing I have
  \time 2/4
  % ...
  | f8 f f16( e) \times 2/3 { e16( d c) } |
  % ...
  r8 f f16 e d c

The group with the triplet should be subdivided for better readability
but the group with the four 16th should not be subdivided.

I am not very familiar with the LilyPond concepts and terminology yet,
I am not a Scheme or Lisp programmer, and I don't completely
understand yet the difference between \override and \set as well as
the scope of these settings. Therefore, I am mostly relying on trial
and error...
I tried first to set Score.beatLength before the group with the
triplets and reset it to 1/4 in the following measure, but for some
reason it didn't work. Either all beam groups were subdivided or none.
I then decided to try it with \once because it resets the value after
a time step (or so say the docs). I am not sure about the definition of
"time step" - if it is actually related to beatLength then I can
understand that my attempt confuses lilypond. But I considered it
worth a try - and the result (a core dump) is certainly not what the
developers intended whence I reported it here.

Of course, I'd appreciate any hint how to subdivide a single beam
group only. (We can take it to lilypond-user, I am subscribed there,
too.)

Regards

Christoph


Christoph Ludwig wrote:

Hi,

the attached file causes lilypond to dump core:

address@hidden:~/lilypond/music/test> uname -r -m -o
2.4.21-243-default i686 GNU/Linux
address@hidden:~/lilypond/music/test> lilypond -v | head -n 1
GNU LilyPond 2.3.16
address@hidden:~/lilypond/music/test> lilypond beat-length.ly

Now processing `beat-length.ly'
Parsing...
Interpreting music... Segmentation fault

If I comment out the `\once' then everything works fine. However, then all
16th groups are subdivided every 8th but I want this only in the first
measure.
Is there a known workaround? Or is this already fixed in 2.3.19?

Thanks

Christoph



\version "2.3.16"

\score {
  \context Staff {
      \time 2/4
      \relative c'' {
          a8 a
          \set subdivideBeams = ##t
          \once
          \set Score.beatLength = #(ly:make-moment 1 8)
          a16 a a a
          a a a a a a a a
} }
}



_______________________________________________
lilypond-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/lilypond-devel



--
=============================================
        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]