lilypond-user
[Top][All Lists]
Advanced

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

Re: automatic setting of `currentBarNumber'


From: Han-Wen Nienhuys
Subject: Re: automatic setting of `currentBarNumber'
Date: Fri, 23 Jan 2009 12:47:53 -0200

On Tue, Jan 20, 2009 at 6:03 PM, Werner LEMBERG <address@hidden> wrote:
>
> The following problem:
>
>  \score {
>    \relative {
>      c1 | c1 | c1 | c1 |        % Bars 1-4
>  }
>
>  \score {
>    \relative {
>      c1 | c1 | c1 | c1 |        % Bars 5-8
>  }
>
> I know how to manually set `currentBarNumber' in the second \score
> block:
>
>  \set Score.currentBarNumber = #5
>
> However, I want to have this set automatically; for example, if I
> later decide to insert two bars into the first \score block, the
> starting bar number for the second \score block should be updated
> accordingly.
>
> It's rather straightforward to store the value of `currentBarNumber'
> in a Scheme variable (the number `10' is just a dummy value):
>
>  #(define lastBarNumber 10)
>
>  \score {
>    \relative {
>      c1 | d1 | e1 | f1 |
>    \applyContext
>      #(lambda (x)
>        (set! lastBarNumber (ly:context-property x 'currentBarNumber)))
>  }
>
> However, I wasn't able to make lilypond use the computed value.  I
> tried both `\set' and `\applyContext' (using
> `ly:context-set-property!') without success.

What happens if you use \applyContext for the 2nd value too?


-- 
Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen




reply via email to

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