lilypond-user-fr
[Top][All Lists]
Advanced

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

Re: alignement opus et piece


From: Frère Raphaël
Subject: Re: alignement opus et piece
Date: Mon, 24 Sep 2012 12:54:28 +0200

Un grand merci à Eluze et Gilles pour leurs recherches qui avancent !
Comme le propose Eluze, j'aimerais pouvoir incorporer cette (ou une autre) fonction dans la définition du scoreTitleMarkup permettant d'utiliser ensemble opus =  et piece = .
Avec le but que l'opus soit toujours mis à l'extérieur de la page et que la piece soit placée à un endroit fixe, mais pas nécessairement au milieu, plutôt un peu sur la gauche. Est-ce qu'une variable ne peut pas être introduite dans la définition du scoreTitleMarkup ? Ceci est en vue de faciliter la mise en page d'un livret de petits chants.
Voici ci-dessous le résultat que j'aimerais mais il faudrait simplifier l'écriture (surtout la recherche de la valeur du \halign qui prend du temps pour chaque piece).
Raphaël
 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\version "2.16.00"
\paper {
scoreTitleMarkup = \markup { \column {
\on-the-fly #print-all-headers { \bookTitleMarkup \hspace #1 }
\fill-line {
\fromproperty #'header:opus
\tiny \fromproperty #'header:piece
}
}
}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
#(define-markup-command (consider-page-num layout props label arg)
  (symbol? markup?)
  (let* ((stencil (interpret-markup layout props arg))
 (x-ext (ly:stencil-extent stencil X))
 (y-ext (ly:stencil-extent stencil Y)))
    (ly:make-stencil
     `(delay-stencil-evaluation
       ,(delay (ly:stencil-expr
 (let* ((table (ly:output-def-lookup layout 'label-page-table))
        (page-number (if (list? table)
                         (assoc-get label table)
 #f)))
   (interpret-markup layout props
     (if (even? page-number)
 (markup arg)
 (markup #:fill-line ("" arg))))))))
     x-ext
     y-ext)))
     
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
     
\book {
  \score { 
    \new Staff { \label #'a \repeat unfold 100 c'1 }
    \header {
      opus = \markup { \consider-page-num #'a "hymn-1" }
      piece = \markup { \null \halign #27 "Te Deum" }
    }
  }
  \score {
    \new Staff { \label #'b \repeat unfold 100 c'1 }
    \header {
      opus = \markup { \consider-page-num #'b "hymn-2" }
      piece = \markup { \null \halign #57 "Aria" }
    }
  }
  
  \score {
    \new Staff { \label #'c \repeat unfold 100 c'1 }
    \header {
      opus = \markup { \consider-page-num #'c "hymn-3" }
      piece = \markup { \null \halign #38 "Messe" }
    }
  }
  
  \score {
    \new Staff { \label #'d c'1 }
    \header {
      opus = \markup { \consider-page-num #'d "hymn-4" }
      piece = \markup { \null \halign #55 "Solo" }
    }
  }
  
  \score {
    \new Staff { \label #'e \repeat unfold 100 c'1 }
    \header {
      opus = \markup { \consider-page-num #'e "hymn-5" }
      piece = \markup { \null \halign #21.5 "Magnificat" }
    }
  }
  
  \score {
    \new Staff { \label #'f c'1 }
    \header {
      opus = \markup { \consider-page-num #'f "hymn-6" }
      piece = \markup { \null \halign #38 "Agnus" }
    }
  }
}
 
 

De : Eluze
Date/heure : 24-09-2012  10:29:18
A : lilypond-user-fr
Cc :
Sujet : Re: alignement opus et piece
Gilles THIBAULT wrote
>> mais je préférerais une solution qui  prend compte des deux variables  
>> /opus/
>> et /piece/
>>
>> malheureusement je ne comprends pas assez scheme pour pouvoir adapter le
>> code de David (/consider-page-num/) - y a-t-il quelqu'un qui sait comment
>> faire?
> Pour ne justement pas toucher le code de David, j'ai laisser la fonction
> Ãªtre appeler par opus, mais
> je ne sais pas si c'est le résultat que tu souhaitais.
merci - je pense que c'est Ã  peu près ce que Raphaël cherche!
petit détail: les deux arguments ne sont pas exactement Ã  la même hauteur
(dû aux queues de lettres)
est-il possible de combiner arg1 et arg2 en même temps:
 (markup #:fill-line (arg1 arg2 "")) ;even
 (markup #:fill-line ("" arg2 arg1)) ;odd
(ou en dans la ligne arg1-stencil arg2-stencil)
pour une autre fois: pourrait-on incorporer cette fonctionnalité dans la
définition du scoreTitleMarkup permettant de réutiliser opus = et piece =?
Eluze
--
View this message in context: http://lilypond-french-users.1298960.n2.nabble.com/alignement-opus-et-piece-tp7578429p7578471.html
Sent from the LilyPond French Users mailing list archive at Nabble.com.
_______________________________________________
liste de diffusion lilypond-user-fr
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user-fr

reply via email to

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