|
From: | Editions IN NOMINE |
Subject: | Re: En rouge et noir, à quand la trêve de douceur ? |
Date: | Fri, 6 May 2022 12:02:33 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.9.0 |
Mmmm, je creuse sans tout comprendre, et je tombe sur une bizarre
anomalie avec le snippet en pied de message. Vraiment désolé de
vous embêter encore avec ça...
Tout fonctionne comme voulu si \up est en \relative c', mais ça plante si c'est en \relative c, avec le message : Dessin des systèmes...<unnamed port>: In procedure scm-error in _expression_ (scm-error (quote misc-error) #f ...): <unnamed port>: no matching clause for ()
J'avoue humblement sécher au beau soleil de Bretagne... et fais appel, du fin fond des terres morbihannaises, aux cadors schemiesques !
PS : pour celles et ceux qui se diraient "Mais que diable nous
fait-il transpirer gras avec un exemple pareil, il a qu'à tout
mettre sur une seule voix !", petite explication. Il s'agit
d'écrire pour pédalier d'orgue, la tongue droite en rouge et
stemUp, la tongue gauche en noir et stemDown.
PS' : j'ai essayé de mettre tout sur la même voix en faisant
\stemUp et \stemDown, ça plante itou, mais peut-être avec un
message plus explicite. L'anomalie concerne la dernière noire de
la mesure 2. Ça sent le plantage de calcul en dessous d'une
certaine note dans le layout, non ? Lily ne parvient pas récupérer
expr (ly:stencil-expr original) ?
Dessin des systèmes...C:/(...)/test.ly:12:22: In procedure ly:stencil-expr in _expression_ (ly:stencil-expr original): C:(...)test.ly:12:22: Wrong type argument in position 1 (expecting Stencil): ()
JMarc
\version "2.22.2"
lay = \layout {
#(use-modules (ice-9 match))
\context {
\Staff
\override LedgerLineSpanner.stencil =
#(grob-transformer 'stencil
(lambda (grob original)
(match-let*
((expr (ly:stencil-expr original))
(X-ext (ly:stencil-extent original X))
(Y-ext (ly:stencil-extent original Y))
(('translate-stencil global-off ('combine-stencil .
ledgers)) expr)
(new-ledgers
(map
(lambda (ledger)
(match-let
((('translate-stencil (0.0 . ledger-Y-off)
ledger-expr) ledger))
(if (positive? ledger-Y-off)
`(color ,(css-color "red")
,ledger)
ledger)))
ledgers))
(new-expr
`(translate-stencil ,global-off (combine-stencil .
,new-ledgers))))
(ly:make-stencil new-expr X-ext Y-ext))))
}
}
up = \relative c'{\clef bass \voiceOne \time 3/4 \key e \minor
s4 fis4 g s2 b,4 s fis s s2 fis4
}
down = \relative c{ \voiceTwo
e4 s2 c2 s4 ais s a g2 s4
}
\score {
\new Staff <<
\new Voice{\up}
\new Voice{\down}
>>
\lay
}
Librairie les hirondelles 1 rue de Rennes 56660 St Jean Brévelay Tél : 02 97 54 53 86 / 06 48 96 29 19 Siret : 89353322400018 TVA : FR28893533224 RCS : Vannes B 893 533 224 APE : 4761Z
Gloire à Jean, on peut le dire !
Mille merci pour ce condenser de trucs que j'ai bien du mal à comprendre.
En guise de remerciements, je vais m'attacher à comprendre tout cela.
Encore merci !
JMarc
[Prev in Thread] | Current Thread | [Next in Thread] |