lilypond-devel
[Top][All Lists]
Advanced

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

Re: ragged-last-bottom only affects last score in book


From: Nicolas Sceaux
Subject: Re: ragged-last-bottom only affects last score in book
Date: Mon, 03 Jul 2006 22:11:50 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (darwin)

[switch to lily-devel]
Graham Percival <address@hidden> writes:

> Nicolas Sceaux wrote:
>> Paul Scott <address@hidden> writes:
>> 
>>> Nicolas Sceaux wrote:
>>>> Graham Percival <address@hidden> writes:
>>>>   
>>>>> Could ragged-last-bottom be changed to affect all scores in a book?
>>>>> Currently it only applies to the last one.  (even better: could this
>>>>> be alterable in separate scores?)
>>>>>     
>> Still, it does not make sense to say that ragged-last-bottom should
>> apply to the last page of a score, for this page could also be the first
>> page on another score. What you and Graham seem to be requesting is a
>> way to split a book into several sections, with a page break between
>> sections, and the last page of a section with ragged-last-bottom.
>
> Ok... if introducing sections is the easiest way to solve this.
>
> The only place in the source code that ragged-last-bottom appears is
> in scm/layout-page-layout.scm
>
> I guess this problem boils down to
>       'is-last last?
> returning the final page of the book (as a boolean), rather than the
> final page of the current score.
>
> Hmm, that still wouldn't let me alter the vertical spacing for the
> last page of different scores.  I guess we'd need to make
> ragged-last-bottom a layout variable for that... maybe "book sections"
> is a better way to go after all.

scm/layout-page-layyout.scm is indeed where the page breaking function
is defined.

This page breaking function takes a list a paper systems, and return a
list a pages containing these systems. One solution to your problem
would be to create a wrapper to that function, that would split the
paper system list into several lists and call the actual page breaking
on each chunk of paper systems. However, as you noted, there has to be a
way to differenciate the last page of a section (that would be
ragged-bottomized if the according property is set) and the last page of
a book, otherwise you would have the end footer on each section last
page.

Also, the prerequisite is a way to create some kind of special paper
system that acts as a section marker. (there could also be something
like that for page breaks by the way, page breaks without ragged-bottom
before, that would be a replacement for the breakbefore header
property).

I could try doing something like that, if Han-Wen or Jan think this is
not useless.




reply via email to

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