On Tue, Jan 20, 2009 at 6:03 PM, Werner LEMBERG <w...@gnu.org> 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 - han...@xs4all.nl - http://www.xs4all.nl/~hanwen


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to