La nuit portant conseil, mes pinceaux se sont déliés, et j'ai trouvé de
quoi ajuster au coup par coup la hauteur d'un chiffrage. J'expliqe la
démarche, parce que je suis parti du manuel des références internes, en
partant de 0 donc...
En fouillant dans le contexte FiguredBass,
j'ai creusé l'objet Bassfigure
(c'est celui que je veux bouger), qui supporte plusieurs interfaces
(font-size par exemple, donc pourquoi pas extra-offset O:-) ) dont grob-interface
qui propose plusieurs User settable properties, dont
-
extra-offset (pair of numbers)
-
A pair representing an offset. This
offset is added just before outputting the symbol, so the typesetting
engine is completely oblivious to it. The values are measured in
staff-space units of the staff’s StaffSymbol .
:-D
Il suffit donc de créer up = \once \override BassFigure #'extra-offset
= #'(0 . 0.2) (pour mon cas)
et le tour est joué.
Petite remarque : le 0.2 compense tout juste le -0.2 inscrit dans
translation-functions.scm (mon grand copain), qui impose aux
altérations de descendre de 0.2 notamment pour assurer un minimum
d'espace sous les chiffres pour <n _+> et l'alignement horizontal
pour <n+>)
Il faudrait que j'écrive mes mémoires sur le sujet... A la recherche de
la basse continue...
A bientôt !
Editions IN NOMINE a écrit :
Oullà,
je commence à avoir les pinceaux qui se croisent sérieusement, entre
les propriétés de la FiguredBass et celles des staffs autour, il se
passe des choses défiant tout entendement (enfin, le mien surtout ! :-[
).
Il reste toutefois une constante, quels que soient les réglages : les
chiffrages sous forme d'altération pure (ie non accompagnée d'un
chiffre) sont toujours légèrement décalées vers le bas par rapport à la
ligne générale, ce que je trouve très laid, perso...
J'ai essayé de rmettre les mains dans le cambouis du
translation-functions.scm, en faisant varier les paramètres et en
inventant des fonctions, mais rien ne se passe (ce qui en soit est déjà
une victoire : j'écris des fonctions qui ne plantent pas =-O ).
Oh, j'ai bien trouvé une solution, mais franchement lourde et pas
élégante : céer un chiffrage à chiffres (\chiffres) et un chiffrage à
altérations (\alterations) que je superpose dans un staffGroup avec la
basse. Alors, vous allez rire, mais quand je superpose avec \chiffres
puis \alteration (puis \basse), j'ai mon décalage, mais quand je
superpose \alterations puis \chiffres (puis basse), ya plus ! Je ne
vous montre pas le code tellement c'est lourd, mais vous imaginez.
L'idée géniale serait de pouvoir faire de la ségrégation entre les
chiffrages chiffres et les chiffrages alétrations (comme dans
translation-functions.scm, d'ailleurs) et de pouvoir appliquer un
\override adapté.
Petit supplément : lorsque l'on superpose ainsi deux basses chiffrées
sur une même portée, seul le #'inter-staff-spacing #'padding = #Y du
second s'applique, écrasant probablement le précédent.
Si quelqu'un(e) a une illumination ce soir, je lui propose d'en
éclairer l'humble petit bout de code suivant, et de le (ou la) bénir
jusqu'à la génération qu'il (elle) souhaite !
chiffres = \figuremode {<2>4 <_+> <5> <_->
<_+> <_+> <_+> <5> <_+> <5>
<5>}
basse = \relative c {\clef bass c4 c c g c2 g c4 f g g, c1}
\score {
<<
\new FiguredBass \with {\override BassFigure #'font-size = # -1
\override VerticalAxisGroup
#'staff-affinity = #DOWN
\override VerticalAxisGroup
#'inter-staff-spacing #'padding = #2}{ \chiffres }
\new Staff { \basse }
>>
}
Grand merci d'avance !
JMarc
|