Subject: Double métrique C 3/1

From: Bernard Meylan <[email-masked]>
Date: Sun, 11 Dec 2022 18:40:56 +0100

Bonjour au groupe!

J'aimerais changer le style d'une métrique double C 3/1 en modifiant 
l'apparence du C.

J'utilise ce code pour ce faire:

#(define ((double-ts-doublechiffre glyph a b) grob)
    (grob-interpret-markup grob
                           (markup #:override '(baseline-skip . 1.7) 
#:number
                                   (#:line ((markup (#:fontsize 1
#:musicglyph glyph))
                                            (#:fontsize 1 #:column (a 
b)))))))

couplé à celui-ci:

doublechiffreCtroisun = {
   \once \override Score.TimeSignature #'font-name = #"CochinLTStd Bold"
   \once \override Score.TimeSignature #'font-size = #2
   \once \override Score.TimeSignature #'stencil = 
#(double-ts-doublechiffre  "timesig.mensural44" "3" "1")
}

Donc le C (avant le 3/1) répond au signe "timesig.mensural44" et c'est 
ce que je voudrais modifier.

Pour mes métriques en C (4/4) j'utilise ce code:

C = { \once \override Staff.TimeSignature #'stencil = 
#ly:text-interface::print
       \once \override Staff.TimeSignature #'text = \markup "C"
       \override Staff.TimeSignature #'font-name = #"CochinLTStd Bold"
       \override Staff.TimeSignature #'font-size = #2
       \once \override Staff.TimeSignature #'Y-offset = #-0.9 }

qui produit exactement le "C" dont j'aurais besoin pour la métrique C 
3/1. Je me suis suffisamment gratté le crâne pour comprendre qu'il 
faudrait modifier la ligne "#:musicglyph glyph)) " du premier code, 
puisque c'est celle-là qui appelle le glyphe "timesig.mensural44". Mais 
par quoi la remplacer pour qu'elle appelle le "C" en police CochinLTStd 
Bold?

Merci pour vos lumières.

Bernard

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 13 Dec 2022 21:22:21 +0100

Bonjour,

Pour commencer, je vous propose de réécrire ce code de façon équivalente 
avec
la syntaxe \markup, qui vous sera probablement plus familière :

\version "2.22.2"

doublechiffreCtroisun = {
   \once \override Score.TimeSignature.font-name = #"CochinLTStd Bold"
   \once \override Score.TimeSignature.font-size = #2
   \once \override Score.TimeSignature.stencil = #ly:text-interface::print
   \once \override Staff.TimeSignature.text =
     \markup
     \override #'(baseline-skip . 1.7)
     \number
     \line {
       \fontsize #1 \musicglyph "timesig.mensural44"
       \fontsize #1 \column { "3" "1" }
     }
}

{
   \doublechiffreCtroisun
   c'
}

À partir de là, il suffit de remplacer la ligne

   \fontsize #1 \musicglyph "timesig.mensural44"

par

   \general-align #Y #CENTER "C"

Cordialement,
Jean

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 13 Dec 2022 21:25:07 +0100

Le 13/12/2022 à 21:22, Jean Abou Samra a écrit :
> Bonjour,
>
> Pour commencer, je vous propose de réécrire ce code de façon 
> équivalente avec

Au fait : si vous modifiez le font-name, vous pouvez supprimer la ligne
ci-dessus, qui n'a pas d'effet. \number provoque normalement l'utilisation
d'une police musicale, mais vous la remplacez de toute façon par une
police textuelle (CochinLTStd Bold).

Cordialement,
Jean