lilypond-devel
[Top][All Lists]
Advanced

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

Re: Add on-page-greater-than, -less-than (on-the-fly) (issue 74540044)


From: paulwmorris
Subject: Re: Add on-page-greater-than, -less-than (on-the-fly) (issue 74540044)
Date: Sat, 10 Jun 2017 12:36:30 -0700

On 2017/06/09 13:36:53, dak wrote:
Ok, I've taken another look at something that should help with this
amount of
fine-grained definitions.

LGTM. Although I'm still new to understanding scheme macros, I
think I understand the gist of what's going on.

Do you think that the following macro markup-when
would be fine-grained enough to forego these kind of definition?

You mean so the user would use this markup-when macro to define their
own
'on-page-greater-than' and/or 'on-page-less-than' (like you've shown),
rather than
adding them to LilyPond?

If so, that seems fine to me.  They seem like fairly rare use cases.
Would
make a good snippet for the LSR or docs, so it can be found and used
when needed.

I demonstrate
it for implementing on-page-greater-than but of course one may use it
directly.

Directly like this I assume? (Which works.)

\paper {
  #(set-paper-size "a7landscape")
  oddFooterMarkup = \markup \on-the-fly
  #(markup-when ((page:page-number -1))
     (> page:page-number 3))
  "This is long!"
}

Its first argument is of the same style as the #:properties keyword
arg for
define-markup-command .

That's a nice consistency.  I tried it out and the following works too:

#(define (onpage proc nmbr)
  (markup-when ((page:page-number -1))
   (proc page:page-number nmbr)))

\paper {
  #(set-paper-size "a7landscape")
  oddFooterMarkup = \markup \on-the-fly #(onpage > 3) "This is
long!"
}

-Paul



https://codereview.appspot.com/74540044/



reply via email to

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