lilypond-user
[Top][All Lists]
Advanced

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

Re: Displaying the first bar number


From: stk
Subject: Re: Displaying the first bar number
Date: Sat, 1 Oct 2005 03:54:51 -0400 (EDT)

> in scm/output-lib.scm we see this:
>    (define-public (default-bar-number-visibility barnum) (> barnum 1))
>
> . . . . . I also tried this:
>    #(define-public (default-bar-number-visibility barnum) (#t))
> but, as expected, it didn't work either.

Being lazy, I would have tried

  #(define-public (default-bar-number-visibility barnum) (>= barnum 1))

with the  >  replaced by  >=

I didn't try that out, as I'm sitting at a non-Lily machine at the moment.
But that would solve your specific problem *only* if barnum is some kind
of internal *absolute* bar number counter (independent of
currentBarNumber, which can be set to anything).

Out of sheer paranoia, I would also try

  #(define-public (default-bar-number-visibility barnum) (>= barnum 0))

since C programmers are notorious for just using zero as the starting
value of any counter.

As a side remark, your attempt

>    #(define-public (default-bar-number-visibility barnum) (#t))

failed because, just as (>= barnum 1) means apply the function  >=
to the arguments  barnum  and  1, the definition  (#t)  would mean
apply the function #t to no arguments; but #t is not a function.

I know Lisp 1.5 syntax, but I'm still shaky on Scheme; however,
the definition

   #(define-public (default-bar-number-visibility barnum) #t)

with the bare #t looks to me like it would make sense, so it might be
worth a try if the lazy approach suggested above offends your sense of
elegance.

-- Tom





reply via email to

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