On Thu, 20 Dec 2018 at 13:10, Urs Liska <[email protected]> wrote:

>
>
> Am 20. Dezember 2018 13:02:22 MEZ schrieb David Kastrup <[email protected]>:
> >Gianmaria Lari <[email protected]> writes:
> >
> >> %alternate version
> >> \version "2.19.82"
> >> nextcount =
> >>   #(let  ((counter 0))
> >>      (lambda ()
> >>        (set! counter (1+ counter))
> >>        (number->string counter)))
> >>
> >> \markup #(nextcount)
> >> \markup #(nextcount)
> >>
> >>
> >> I would like to know if it is possible to write it using
> >> define-scheme-function. This is what I tried that does not compile.
> >>
> >> \version "2.19.82"
> >> nextcount =
> >>   #(define-scheme-function () ()
> >>      (let  ((counter 0))
> >>      (lambda ()
> >>        (set! counter (1+ counter))
> >>        (number->string counter)
> >>        )
> >>      ))
> >>
> >> \mark \nextcount
> >> \mark \nextcount
> >
> >Uh, there is a difference between \markup and \mark .  Once you fixed
> >that, your counter will be reset to 0 for each invocation of the
> >function.  You need
> >
> >nextcount =
> >  #(let ((counter 0))
> >     (define-scheme-function ...
> >
> >instead.
>
> And it must be
>
>   (set! counter (+ 1 counter))
>
> (first the procedure "+", then the arguments)
>

I think 1+ is correct. David use it :)) (I hope I don't remember bad)

g.
_______________________________________________
lilypond-user mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to