[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Tournez la page SVP
From: |
Gilles THIBAULT |
Subject: |
Re: Tournez la page SVP |
Date: |
Sun, 26 Aug 2007 01:10:18 +0200 |
Bon, je suis arrivé au resultat, mais effectivement ce n'est pas très
élégant.
Je me suis inspiré (très fortement ...) du fichier titling-init.ly (dans
usr\share\lilypond\current\ly) et j'ai défini une fonction qui vérifie que
le numero de page courant ne soit pas la dernière page du score
J'avais essayé d'utiliser
chain-assoc-get 'page:last?
mais ça ne récupérait que la dernière page du \book et non du \score.
Dans cette solution donc, il faut noter la dernière page de chaque score, et
répéter autant de fois que necessaire,
les lignes suivantes :
(= (chain-assoc-get 'page:page-number props -1) 3) % page 3
(= (chain-assoc-get 'page:page-number props -1) 6) % page 6
(= (chain-assoc-get 'page:page-number props -1) x) ... % page x.
J'ai pas mieux mieux pour l'instant.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\version "2.10.25"
#(define (is-last-page layout props arg)
(if (not(or (= (chain-assoc-get 'page:page-number props -1) 3)
(= (chain-assoc-get 'page:page-number props -1) 6)
))
(interpret-markup layout props arg)
empty-stencil))
\paper{
printallheaders = ##t
oddFooterMarkup = \markup {\fill-line {"" \on-the-fly #is-last-page
"Tournez la page SVP"}}
}
\score % score 1
{
\new Staff
{
c'1 \pageBreak % page 1
c'1 \pageBreak % page 2
c'1 % page 3
}
\header {
title = "SCORE I"
}
}
\score % score 2
{
\new Staff
{
d'1 \pageBreak % page 4
d'1 \pageBreak % page 5
d'1 % page 6
}
\header
{
breakbefore = ##t
title = "SCORE II"
}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%