Subject: [LilyPond] [Général] Alignement des chiffres en basse chiffrée

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Sat, 13 Apr 2024 19:27:18 +0000

Bonsoir à toute la communauté!
Je suis à nouveau confronté à un problème de basse chiffrée, plus précisément l'alignement des chiffres. Lors d'un changement de version (je ne me souviens plus lequel) est apparu le contexte FiguredBass et qui a la mauvaise (ce n'est que mon avis…) habitude d'aligner les chiffres à partir de celui du haut: <6 4> et <5>, le 6 et le 5 auront la même ligne de base. Cela va bien lorsqu'on met les chiffres sous la portée; mais lorsqu'on respecte la règle et qu'on les met au dessus, cela crée de grands espaces entre la portée des notes et le chiffre seul (dans mon exemple le 5) qui va même se coller à la portée du dessus. Je n'ai pas trouvé comment désactiver cette propriété…
Je joins un exemple avec, dans le "Score" deux possibilités: la première est la plus récente, donc avec le FiguredBass, qui aligne tous les chiffres. La seconde, qu'il faut décommenter (et mettre du coup le % devant la première) est l'ancienne; dans ce dernier cas, tous les chiffres solitaires (les 6 et le 3) descendent se coller au plus près de la note, et c'est précisément ce que je recherche.

```
\version "2.24.2"

global = {
  \key c \major
  \time 4/4
}

bcMusic = \relative c {
  \global
  e16( g) c8-! r e, d16( c') b8 r d, c16( b') c8 r e, f,16( e') f8 r fis
}

bcFigures = \figuremode {
  \global
  <6>2 <6>8 <6 5> s <6> <5 4> <3> s <6 5-> s4. <6>8
}

\score {
  << \new FiguredBass \bcFigures \new Staff { \clef bass \bcMusic } >>
  
  % \new Staff { \clef bass << \bcMusic \bcFigures >> }
}
```
Cordialement.
Bernard

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/1).

Pour créer un nouveau sujet, écrivez à [[email-masked]](mailto:[email-masked]) ou visitez la [page d'accueil de lilypond.community](https://lilypond.community).

---

From: Jean Abou Samra via LilyPond <[email-masked]>
Date: Sat, 13 Apr 2024 20:41:04 +0000

Bon, j'ai trouvé une solution un peu bricolée...

```
\version "2.24.2"

\layout {
  \override FiguredBass.BassFigureAlignment.stacking-dir = #UP
}

fixFigureOrder =
#(define-music-function (music) (ly:music?)
   (for-each (lambda (c) (set! (ly:music-property c 'elements)
                               (reverse! (ly:music-property c 'elements))))
             (extract-typed-music music 'event-chord))
   music)

global = {
  \key c \major
  \time 4/4
}

bcMusic = \relative c {
  \global

bcFigures = \fixFigureOrder \figuremode {
  \global
  <6>2 <6>8 <6 5> s <6> <5 4> <3> s <6 5-> s4. <6>8
}

\score {

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/2).

---

From: Jean Bréfort via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 02:54:38 +0000

Et pourquoi pas simplement :

```
\version "2.24.2"

global = {
  \key c \major
  \time 4/4
}

bcMusic = \relative c {
  \global

\score {
  \new Staff { <<\bcFigures \clef bass \bcMusic>> }

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/3).

---

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 11:11:43 +0000

Merci pour cette solution, elle arrange bien des choses. Si j'ai bien compris ton bricolage, tu as inversé le sens d'apparition des chiffres dans la commande \override FiguredBass.BassFigureAlignment.stacking-dir = #UP et fait exactement l'inverse avec le fixFigureOrder… le monde agricole aurait dit: on marche sur la tête…
Mais est-il techniquement possible, au sein de FiguredBass, de désactiver cet alignement au cordeau sur le premier chiffre, qui n'existait pas auparavant? Parce que je le trouve particulièrement moche, et tellement mal adapté. (aïe… non… pas taper…)

Cordialement.

Bernard

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/4).

---

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 11:22:53 +0000

Et pour illustrer mon propos, je vous propose une première illustration, celle obtenue sans correction et avec l'aide de Jean Abou:

![orig|679x205](upload://tOeY5TQMfpUdG2FCFRf7rY0MqJg.jpeg)

et ce que j'aimerais obtenir

![corr|679x205](upload://32GEVUOZYUzHAThtAnDy5sllUR4.jpeg)

Bernard

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/5).

---

From: xavier via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 11:26:45 +0000

Ben dans ce cas mettre directement la basse chiffrée dans le contexte `Staff`, comme ton 2e exemple (et suggéré par Jean Bréfort), non ?

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/6).

---

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 11:56:19 +0000

Arf… j'aurais dû être plus précis… Je cherche à utiliser le FiguredBass et pas à revenir à l'ancienne syntaxe, parce que dans mes délires de graveur, je change la fonte des chiffres qui s'affichent normalement pour une fonte Garamond; j'ai besoin aussi du «6\ \» qui ne s'affiche pas (bizarrement le «5\ \» ou le «4\ \», eux, si… allez comprendre…). Jean Abou m'a gratifié d'un bout de code  qui permet le «slashage» du «6» mais uniquement si j'utilise le FiguredBass. Si j'utilise l'ancienne syntaxe (il me semble qu'elle date de la version 2.22) impossible de rendre ce «6\ \» même avec la solution à Jean.

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/7).

---

From: xavier via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 12:05:54 +0000

Je n'ai pas le souvenir que l'utilisation de basse chiffrée dans le contexte `Staff` soit significativement plus ancienne que le contexte `FiguredBass`. Dans tous les cas les 2 utilisations sont encore et toujours supportées. Enfin je pense que tous les ajustements effectués pour `FiguredBass.BassFigure` devraient pouvoir se faire également via `Staff.BassFigure`.

```
\set Staff.figuredBassPlusStrokedAlist = #'()
\override Staff.BassFigure.font-name = "Garamond"
% etc.
```

Cordialement,
Xavier

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/8).

---

From: Bernard Meylan via LilyPond <[email-masked]>
Date: Sun, 14 Apr 2024 16:57:27 +0000

Bon alors je suis parvenu à mes fins, avec la syntaxe indiquée par Xavier et Jean Bréfort… après avoir tout disséqué depuis le début, et m'apercevoir que j'avais oublié le «Staff» dans la formule \override Staff.BassFigure.font-name…

Un grand merci pour vos aides.

Bernard

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/9).

---

From: Jean Abou Samra via LilyPond <[email-masked]>
Date: Wed, 17 Apr 2024 08:31:31 +0000

Je suis d'accord avec Xavier et Jean B. Je pensais que vous teniez pour une raison ou pour une autre à l'alignement qu'apporte le contexte `FiguredBass` (par exemple, s'il y a une note très haute, ça va rehausser tous les chiffres, plutôt que juste celui qui se rattache à cette note), mais si ce n'est pas non plus voulu, alors autant tout mettre dans `Staff`, ça a toujours été pris en charge (d'aussi loin que je me souvienne) et ça ne pose aucun problème.

---
Pour poster dans ce sujet, visitez la [page du sujet](https://lilypond.community/t/alignement-des-chiffres-en-basse-chiffree/5687/10).