lilypond-user
[Top][All Lists]
Advanced

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

Re: Multiple place number skip ranges


From: Andrew Bernard
Subject: Re: Multiple place number skip ranges
Date: Fri, 06 May 2016 01:30:07 +1000
User-agent: Microsoft-MacOutlook/f.15.1.160411

Hi Harm,

On 5/05/2016, 11:53 PM, "Thomas Morley" <address@hidden> wrote:

>Right now I don't remember such code. Just to refresh my memory,
>please provide a link.

I don’t have the link but these are the code fragments I collected.

By the way, the subject line for this topic was meant to read ‘multiple page 
number skip ranges’ - but I suppose it’s clear what I meant by now.

Andrew

— snip

% procedures for altering page numbering.


% author: David Nalesnik 2013

#(define-markup-command (skip-page-number-range layout props arg) (number-list?)
   (let ((page-number (chain-assoc-get 'page:page-number props -1)))
     (interpret-markup layout props
       (if (>= page-number (car arg))
           (number->string (+ page-number (1+ (- (cadr arg) (car arg)))))
           (chain-assoc-get 'page:page-number-string props -1)))))


% author: Curt McDowell 2013

% define a list of page numbers to skip
% #(define page-number-skip-list '(3 4 7 14))

#(define (pages-less skip-list page offset)
   (if (null? skip-list) offset
       (pages-less (cdr skip-list) page
         (+ offset (if (<= (car skip-list) (+ page offset)) 1 0)))))

#(define-markup-command (page-number-compute layout props) ()
   (let ((page-number (chain-assoc-get 'page:page-number props 0)))
     (interpret-markup layout props
       (format "~a"
         (+ page-number (pages-less page-number-skip-list page-number 0))))))



— snip






reply via email to

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