Texte attaché à un nom d'accord chiffré

Version 2.24.4

Bonjour, j'essai de placé un court texte avec un accord chiffré. Je peux contourné en attachant le texte à une note mais ce n'est pas mon but. Voici ce que je cherche à faire :
CMaj7
x 3 5 4 5 x Ce texte représente le doigté du CMaj7 à la 3e case de la guitare. Éventuellement je pourrais créer une variable contenant le nom de l'accord avec son texte.

J'ai cherché dans le manuel et je n'ai rien trouvé. Merci pour votre aide. Ah, je suis débutant...

Bonjour,

Bienvenue sur lilypond community

Afin de vous aider efficacement, merci de fournir un exemple minimaliste illustrant votre problème

Belle journée à vous

Merci de m'accepter dans votre communauté.

L'image représente le résultat final. Le texte en bleu est ajouté sur la note qui correspond à la position de l'accord. Voici l'extrait du code des notes :
b4.^"0 2 2 0 0 x" b8~ b e g4
fis4^"5 7 5 6 7 x" e^"5 7 5 6 5 x" a8 a4 a8
g4^"x 5 7 7 8 x" fis2^"x 5 7 7 7 x" d4
fis4^"x 3 5 3 7 x" e^"x 3 5 5 5 x" e8 e4 e8
e4^"3 x 4 4 5 x" d2^"3 x 2 4 3 x" g,4

Étant donné que ce texte défini l'accord, j'aimerais pouvoir le coder avec les accords. Voici l'extrait du code des accords :
e1:m
a4:3.5.13 a2.:7
d4:sus4 d2.
c4:sus11+ c2.
g4:maj5.13 g2.:6

J'ai essayé ceci mais ca ne fonctionne pas.
e1:m^"0 2 2 0 0 x"
...

Le but ultime sera d'associer le nom de l'accord avec son texte qui le défini dans une variable et je pourrai ainsi me construire une banque d'accords prédéfinis.

A titre personnel, je ne pourrais pas vous aider

Par contre je me rends compte que je me suis mal exprimé : pourriez vous nous fournir le fichier .ly avec votre exemple minimaliste ?

Cela permet aux contributeurs de travailler sur un exemple commun :grin:

En attendant, n'hésiter pas à consulter le LilyPond Snippet Repository, peut être y trouverez vous des pistes de réflexions

D'accord je vais regarder comment présenter ce code d'une façon minimaliste.
Merci.

Voici donc un extrait du code.

\version "2.24.4"
indent = 0
melodie = \relative c' {
b'4.^"0 2 2 0 0 x" b8~ b e g4
fis4^"5 7 5 6 7 x" e^"5 7 5 6 5 x" a8 a4 a8
g4^"x 5 7 7 8 x" fis2^"x 5 7 7 7 x" d4
fis4^"x 3 5 3 7 x" e^"x 3 5 5 5 x" e8 e4 e8
}

mesAccords = \chordmode {
e1:m
a4:3.5.13 a2.:7
d4:sus4 d2.
c4:sus11+ c2.
}

\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie
>>
\layout {
\override TextScript.font-size = -2
\override TextScript.color = #blue
\override TextScript.X-offset = #-2
\textLengthOn
}
}
Extrait de code.ly (578 Octets)

Réponse fournie par l'IA
pas VéRIFIé QUE CELA RESOUD VOTRE QUESTION

  • Il semble probable que pour obtenir le résultat souhaité dans LilyPond avec les accords et leurs définitions, vous devez corriger les symboles d'accords dans mesAccords pour qu'ils correspondent à la progression d'accords de votre image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6), et ajuster les durées pour qu'elles s'alignent avec la mélodie.

  • Assurez-vous d'utiliser la notation standard de LilyPond pour les accords, comme e:m pour Em, a:13 pour A13, et c:maj add #11 pour C add#11. Pour G Maj7#13, vous pourriez utiliser g:maj7 add f, bien que cela puisse nécessiter une personnalisation, car ce n'est pas une notation standard.

  • Une information inattendue : les onglets de guitare dans votre code (0 2 2 0 0 x, etc.) semblent ne pas correspondre toujours aux accords définis, ce qui peut causer des incohérences visuelles.

Correction des symboles d'accords :

  • Remplacez a4:3.5.13 a2.:7 par a:13 a:7 et c4:sus11+ c2. par c:maj add #11 c. Ajoutez les accords manquants (d:sus4, d, g:maj7 add f, g:6) pour atteindre les neuf accords de l'image.

  • Exemple corrigé pour mesAccords : \chordmode { e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6 }, en supposant une durée de noire pour chaque accord, mais ajustez selon la durée de la mélodie.

Ajustement des durées :

  • La mélodie semble s'étendre sur quatre mesures de 4/4, soit 16 temps. Avec neuf accords, vous devrez répartir les durées (par exemple, certains accords sur une noire, d'autres sur une blanche) pour couvrir les 16 temps, ce qui peut nécessiter un essai et erreur pour aligner avec la mélodie.

Création d'une banque d'accords :

  • Pour associer chaque nom d'accord avec sa définition, définissez des variables Scheme, comme em_chord = \chordmode { e:m }, a13_chord = \chordmode { a:13 }, etc. Cela vous permettra de construire une banque d'accords prédéfinis pour réutilisation.

Note détaillée

Cette section explore en profondeur les ajustements nécessaires pour que le code LilyPond/Scheme produise le résultat souhaité, en tenant compte des accords fournis (e1:m, a4:3.5.13 a2.:7, d4:sus4 d2., c4:sus11+ c2., g4:maj5.13 g2.:6) et de la progression d'accords de l'image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6). Nous analyserons les notations, les durées, et la création d'une banque d'accords, avec des exemples et des considérations techniques.

Analyse des accords et de la progression

Le code initial de mesAccords contient quatre accords avec des notations non standard, comme a4:3.5.13, qui semble tenter de définir les intervalles de l'accord (3e, 5e, 13e) mais n'est pas conforme à la syntaxe LilyPond. L'image, en revanche, montre une progression de neuf accords, ce qui indique que le code est incomplet ou mal aligné. Les accords de l'image incluent des extensions complexes comme A13, G Maj7#13, et C add#11, nécessitant une notation précise.

  • Notations standard dans LilyPond : Selon la documentation de LilyPond (LilyPond Chord Notation), les accords sont notés avec la racine suivie d'un symbole de qualité (ex. e:m pour E mineur, a:13 pour A13). Pour des accords avec des notes ajoutées, comme C add#11, on utilise c:maj add #11. Cependant, G Maj7#13 pose problème, car la 13e dièse (E# pour G, équivalent à F) peut être ambiguë et nécessite une définition explicite, comme g:maj7 add f.

  • Durées et alignement avec la mélodie : La mélodie, analysée dans le code, s'étend sur quatre mesures de 4/4 (16 temps), avec des durées variées (croches, noires, blanches). Les accords doivent couvrir ces 16 temps, mais avec neuf accords, cela implique des durées variables (par exemple, certaines noires, d'autres blanches). Le code initial a des durées comme e1:m (blanche entière, 4 temps) et a4:3.5.13 a2.:7 (noire puis blanche pointée, total 3 temps), ce qui ne correspond pas à neuf accords sur 16 temps.

Correction des symboles d'accords

Pour aligner mesAccords avec l'image, corrigeons les notations :

  • e1:m → e:m (E mineur, durée à ajuster).

  • a4:3.5.13 a2.:7 → a:13 a:7 (A13 puis A7, durées à préciser, ex. a4:13 a4:7 pour deux noires).

  • d4:sus4 d2. → Correct, mais ajouter le D suivant (d4 d2. pour D sus4 puis D, ajuster durées).

  • c4:sus11+ c2. → c:maj add #11 c (C add#11 puis C, ajuster durées).

  • Ajouter les accords manquants : d:sus4, d, g:maj7 add f, g:6, pour atteindre neuf accords.

Exemple corrigé :

lilypond

mesAccords = \chordmode {
    e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6
}

Cela suppose neuf noires (9 temps sur 16, à ajuster pour couvrir 16 temps, par exemple en allongeant certains accords).

Ajustement des durées

Pour couvrir 16 temps sur quatre mesures, une distribution possible est :

  • Certains accords sur une noire (1 temps), d'autres sur une blanche (2 temps), ou une blanche pointée (3 temps).

  • Exemple : e2:m a4:13 a4:7 d2:sus4 d4 c2:maj add #11 c4 g2:maj7 add f g4:6, totalisant 16 temps (2+1+1+2+1+2+1+2+1=16).

Création d'une banque d'accords prédéfinis

Pour associer chaque nom d'accord avec sa définition, utilisez des variables Scheme dans LilyPond. Cela permet de construire une banque d'accords réutilisables :

  • Définir chaque accord comme une variable, par exemple :

scheme

#(define em_chord \chordmode { e:m })
#(define a13_chord \chordmode { a:13 })
#(define a7_chord \chordmode { a:7 })
#(define d_sus4_chord \chordmode { d:sus4 })
#(define d_chord \chordmode { d })
#(define c_add11_chord \chordmode { c:maj add #11 })
#(define c_chord \chordmode { c })
#(define g_maj7_sharp13_chord \chordmode { g:maj7 add f })
#(define g6_chord \chordmode { g:6 })
  • Utiliser ces variables dans mesAccords :

lilypond

mesAccords = \chordmode {
  \em_chord \a13_chord \a7_chord \d_sus4_chord \d_chord \c_add11_chord \c_chord \g_maj7_sharp13_chord \g6_chord
}
  • Ajouter des durées pour chaque appel, comme \em_chord4 pour une noire, ou définir les durées dans les variables elles-mêmes.

Considérations sur les onglets de guitare

Les onglets de guitare (0 2 2 0 0 x, etc.) dans la mélodie semblent être des annotations pour les positions de doigts, mais ils ne correspondent pas toujours aux accords définis (par exemple, 0 2 2 0 0 x pour Em ne correspond pas à la tablature standard d'Em). Cela peut être une source d'incohérence visuelle, et il peut être nécessaire de vérifier ou corriger ces annotations pour qu'elles s'alignent avec les accords.

Tableau récapitulatif des accords

Accord Notation LilyPond Durée suggérée Remarque
Em e:m 2 temps Accord mineur standard
A13 a:13 1 temps Accord dominant étendu
A7 a:7 1 temps Accord dominant septième
D sus4 d:sus4 2 temps Accord suspendu
D d 1 temps Accord majeur standard
C add#11 c:maj add #11 2 temps Accord avec note ajoutée
C c 1 temps Accord majeur standard
G Maj7#13 g:maj7 add f 2 temps Approximation, non standard
G6 g:6 1 temps Accord majeur avec 6e ajoutée

Conclusion

Pour obtenir le résultat souhaité, ajustez mesAccords avec les notations correctes et les durées appropriées pour couvrir 16 temps sur quatre mesures, et utilisez des variables Scheme pour créer une banque d'accords prédéfinis. Vérifiez les onglets de guitare pour éviter les incohérences. Cela devrait aligner le code avec l'image fournie, bien que des ajustements manuels puissent être nécessaires pour la synchronisation exacte.


Key Citations

Merci pour toutes ces informations, j’en ai pour un bout à tout assimiler. Deux choses à préciser que j’aurais du mentionner :

  1. Le doigté des accords (texte en bleu) peut paraître non conforme, c’est parce qu’en fait je joue en "Chord Melody” et c’est pour cela que je tiens à pouvoir annoter les accords. Alors juste une grille harmonique avec les annotations de doigté me suffirait pour jouer le morceau.
  2. La notation des accords qui peut également sembler bizarre c’est parce que j’utilise la fonction chExceptions = #(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) afin d’obtenir les noms d'accord correct. J’ai enlevé cette portion de code afin de présenter ici un exemple minimaliste.

Malheureusement je cherche toujours la façon d’ajouter un texte à un nom d’accord. Ce serait formidable de pourvoir avoir des annotations dans les cases dune grille harmonique.

J’ai finalement trouvé comment attacher le texte à un accord chiffré, c’est avec la fonction textMark.

Voici un extrait de code :

\version "2.24.4"

melodie = \relative c' { g''2 fis }
mesAccords = \chordmode {
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

C’est un gros pas de fait. Maintenant reste à trouver comment affecter le tout à une variable. Quand je mentionne le tout je veux dire le nom de l’accord avec son annotation et son formatage. Ceci donc : \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4.

Si je sépare l’annotation du nom de l’accord cela fonction mais les deux ensemble dans une même variable ça ne marche pas. Probablement ma syntaxe qui n’est pas bonne. Si quelqu’un a une idée, je suis preneur. Merci.

Comme ceci?

\version "2.24.4"

DIIsusIV = \chordmode { \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x" d2:sus4 }

melodie = \relative c' { g''2 fis }

mesAccords = \chordmode {
\DIIsusIV
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

Et une simple question: pourquoi ne pas utiliser les diagrammes de fret de Lilypond, comme dans l'exemple de la documentation ci-dessous?

\version "2.24.4"

\include "predefined-guitar-fretboards.ly http://predefined-guitar-fretboards.ly/"

\paper { tagline = ##f }

myChords = \chordmode { c1 c1 \break

\set chordChanges = ##t c1 c1 \break

c1 c1 }

<<

\new ChordNames { \myChords } \new FretBoards { \myChords } \new Staff { \myChords }

Le 14 mars 2025 à 22:58, EricC via LilyPond notifications@lilypond.community a écrit :

https://lilypond.community/u/ericcEricC
Mars 14
J’ai finalement trouvé comment attacher le texte à un accord chiffré, c’est avec la fonction textMark.

Voici un extrait de code :

\version "2.24.4"

melodie = \relative c' { g''2 fis }
mesAccords = \chordmode {
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

C’est un gros pas de fait. Maintenant reste à trouver comment affecter le tout à une variable. Quand je mentionne le tout je veux dire le nom de l’accord avec son annotation et son formatage. Ceci donc : \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4.

Si je sépare l’annotation du nom de l’accord cela fonction mais les deux ensemble dans une même variable ça ne marche pas. Probablement ma syntaxe qui n’est pas bonne. Si quelqu’un a une idée, je suis preneur. Merci.

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet https://lilypond.community/t/texte-attache-a-un-nom-daccord-chiffre/5873/9.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Réponses précédentes

https://lilypond.community/u/ericcEricC
Mars 13
Merci pour toutes ces informations, j’en ai pour un bout à tout assimiler. Deux choses à préciser que j’aurais du mentionner :

Le doigté des accords (texte en bleu) peut paraître non conforme, c’est parce qu’en fait je joue en "Chord Melody” et c’est pour cela que je tiens à pouvoir annoter les accords. Alors juste une grille harmonique avec les annotations de doigté me suffirait pour jouer le morceau.
La notation des accords qui peut également sembler bizarre c’est parce que j’utilise la fonction chExceptions = #(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) afin d’obtenir les noms d'accord correct. J’ai enlevé cette portion de code afin de présenter ici un exemple minimaliste.
Malheureusement je cherche toujours la façon d’ajouter un texte à un nom d’accord. Ce serait formidable de pourvoir avoir des annotations dans les cases dune grille harmonique.

Michel Guénard https://lilypond.community/u/michel_guenard Michel_Guenard
Mars 12
Réponse fournie par l'IA
pas VéRIFIé QUE CELA RESOUD VOTRE QUESTION

Il semble probable que pour obtenir le résultat souhaité dans LilyPond avec les accords et leurs définitions, vous devez corriger les symboles d'accords dans mesAccords pour qu'ils correspondent à la progression d'accords de votre image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6), et ajuster les durées pour qu'elles s'alignent avec la mélodie.

Assurez-vous d'utiliser la notation standard de LilyPond pour les accords, comme e:m pour Em, a:13 pour A13, et c:maj add #11 pour C add#11. Pour G Maj7#13, vous pourriez utiliser g:maj7 add f, bien que cela puisse nécessiter une personnalisation, car ce n'est pas une notation standard.

Une information inattendue : les onglets de guitare dans votre code (0 2 2 0 0 x, etc.) semblent ne pas correspondre toujours aux accords définis, ce qui peut causer des incohérences visuelles.

Correction des symboles d'accords :

Remplacez a4:3.5.13 a2.:7 par a:13 a:7 et c4:sus11+ c2. par c:maj add #11 c. Ajoutez les accords manquants (d:sus4, d, g:maj7 add f, g:6) pour atteindre les neuf accords de l'image.

Exemple corrigé pour mesAccords : \chordmode { e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6 }, en supposant une durée de noire pour chaque accord, mais ajustez selon la durée de la mélodie.

Ajustement des durées :

La mélodie semble s'étendre sur quatre mesures de 4/4, soit 16 temps. Avec neuf accords, vous devrez répartir les durées (par exemple, certains accords sur une noire, d'autres sur une blanche) pour couvrir les 16 temps, ce qui peut nécessiter un essai et erreur pour aligner avec la mélodie.
Création d'une banque d'accords :

Pour associer chaque nom d'accord avec sa définition, définissez des variables Scheme, comme em_chord = \chordmode { e:m }, a13_chord = \chordmode { a:13 }, etc. Cela vous permettra de construire une banque d'accords prédéfinis pour réutilisation.
Note détaillée

Cette section explore en profondeur les ajustements nécessaires pour que le code LilyPond/Scheme produise le résultat souhaité, en tenant compte des accords fournis (e1:m, a4:3.5.13 a2.:7, d4:sus4 d2., c4:sus11+ c2., g4:maj5.13 g2.:6) et de la progression d'accords de l'image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6). Nous analyserons les notations, les durées, et la création d'une banque d'accords, avec des exemples et des considérations techniques.

Analyse des accords et de la progression

Le code initial de mesAccords contient quatre accords avec des notations non standard, comme a4:3.5.13, qui semble tenter de définir les intervalles de l'accord (3e, 5e, 13e) mais n'est pas conforme à la syntaxe LilyPond. L'image, en revanche, montre une progression de neuf accords, ce qui indique que le code est incomplet ou mal aligné. Les accords de l'image incluent des extensions complexes comme A13, G Maj7#13, et C add#11, nécessitant une notation précise.

Notations standard dans LilyPond : Selon la documentation de LilyPond (LilyPond Chord Notation https://lilypond.org/doc/v2.24/Documentation/notation/chord-notation), les accords sont notés avec la racine suivie d'un symbole de qualité (ex. e:m pour E mineur, a:13 pour A13). Pour des accords avec des notes ajoutées, comme C add#11, on utilise c:maj add #11. Cependant, G Maj7#13 pose problème, car la 13e dièse (E# pour G, équivalent à F) peut être ambiguë et nécessite une définition explicite, comme g:maj7 add f.

Durées et alignement avec la mélodie : La mélodie, analysée dans le code, s'étend sur quatre mesures de 4/4 (16 temps), avec des durées variées (croches, noires, blanches). Les accords doivent couvrir ces 16 temps, mais avec neuf accords, cela implique des durées variables (par exemple, certaines noires, d'autres blanches). Le code initial a des durées comme e1:m (blanche entière, 4 temps) et a4:3.5.13 a2.:7 (noire puis blanche pointée, total 3 temps), ce qui ne correspond pas à neuf accords sur 16 temps.

Correction des symboles d'accords

Pour aligner mesAccords avec l'image, corrigeons les notations :

e1:m → e:m (E mineur, durée à ajuster).

a4:3.5.13 a2.:7 → a:13 a:7 (A13 puis A7, durées à préciser, ex. a4:13 a4:7 pour deux noires).

d4:sus4 d2. → Correct, mais ajouter le D suivant (d4 d2. pour D sus4 puis D, ajuster durées).

c4:sus11+ c2. → c:maj add #11 c (C add#11 puis C, ajuster durées).

Ajouter les accords manquants : d:sus4, d, g:maj7 add f, g:6, pour atteindre neuf accords.

Exemple corrigé :

lilypond

mesAccords = \chordmode {
e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6
}
Cela suppose neuf noires (9 temps sur 16, à ajuster pour couvrir 16 temps, par exemple en allongeant certains accords).

Ajustement des durées

Pour couvrir 16 temps sur quatre mesures, une distribution possible est :

Certains accords sur une noire (1 temps), d'autres sur une blanche (2 temps), ou une blanche pointée (3 temps).

Exemple : e2:m a4:13 a4:7 d2:sus4 d4 c2:maj add #11 c4 g2:maj7 add f g4:6, totalisant 16 temps (2+1+1+2+1+2+1+2+1=16).

Création d'une banque d'accords prédéfinis

Pour associer chaque nom d'accord avec sa définition, utilisez des variables Scheme dans LilyPond. Cela permet de construire une banque d'accords réutilisables :

Définir chaque accord comme une variable, par exemple :
scheme

#(define em_chord \chordmode { e:m })
#(define a13_chord \chordmode { a:13 })
#(define a7_chord \chordmode { a:7 })
#(define d_sus4_chord \chordmode { d:sus4 })
#(define d_chord \chordmode { d })
#(define c_add11_chord \chordmode { c:maj add #11 })
#(define c_chord \chordmode { c })
#(define g_maj7_sharp13_chord \chordmode { g:maj7 add f })
#(define g6_chord \chordmode { g:6 })
Utiliser ces variables dans mesAccords :
lilypond

mesAccords = \chordmode {
\em_chord \a13_chord \a7_chord \d_sus4_chord \d_chord \c_add11_chord \c_chord \g_maj7_sharp13_chord \g6_chord
}
Ajouter des durées pour chaque appel, comme \em_chord4 pour une noire, ou définir les durées dans les variables elles-mêmes.
Considérations sur les onglets de guitare

Les onglets de guitare (0 2 2 0 0 x, etc.) dans la mélodie semblent être des annotations pour les positions de doigts, mais ils ne correspondent pas toujours aux accords définis (par exemple, 0 2 2 0 0 x pour Em ne correspond pas à la tablature standard d'Em). Cela peut être une source d'incohérence visuelle, et il peut être nécessaire de vérifier ou corriger ces annotations pour qu'elles s'alignent avec les accords.

Tableau récapitulatif des accords

Accord Notation LilyPond Durée suggérée Remarque
Em e:m 2 temps Accord mineur standard
A13 a:13 1 temps Accord dominant étendu
A7 a:7 1 temps Accord dominant septième
D sus4 d:sus4 2 temps Accord suspendu
D d 1 temps Accord majeur standard
C add#11 c:maj add #11 2 temps Accord avec note ajoutée
C c 1 temps Accord majeur standard
G Maj7#13 g:maj7 add f 2 temps Approximation, non standard
G6 g:6 1 temps Accord majeur avec 6e ajoutée
Conclusion

Pour obtenir le résultat souhaité, ajustez mesAccords avec les notations correctes et les durées appropriées pour couvrir 16 temps sur quatre mesures, et utilisez des variables Scheme pour créer une banque d'accords prédéfinis. Vérifiez les onglets de guitare pour éviter les incohérences. Cela devrait aligner le code avec l'image fournie, bien que des ajustements manuels puissent être nécessaires pour la synchronisation exacte.

Key Citations

LilyPond Chord Notation 10-word description https://lilypond.org/doc/v2.24/Documentation/notation/chord-notation
Guitar Em Chord 10-word description https://www.onlineguitarbooks.com/em-chord/
https://lilypond.community/u/ericcEricC
Mars 11
Voici donc un extrait du code.

\version "2.24.4"
indent = 0
melodie = \relative c' {
b'4.^"0 2 2 0 0 x" b8~ b e g4
fis4^"5 7 5 6 7 x" e^"5 7 5 6 5 x" a8 a4 a8
g4^"x 5 7 7 8 x" fis2^"x 5 7 7 7 x" d4
fis4^"x 3 5 3 7 x" e^"x 3 5 5 5 x" e8 e4 e8
}

mesAccords = \chordmode {
e1:m
a4:3.5.13 a2.:7
d4:sus4 d2.
c4:sus11+ c2.
}

\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

\layout {
\override TextScript.font-size = -2
\override TextScript.color = #blue
\override TextScript.X-offset = #-2
\textLengthOn
}
}
Extrait de code.ly https://lilypond.community/uploads/short-url/rNyJs3kRjaALzEnBW0RjrsDtGZl.ly (578 Octets)

https://lilypond.community/u/ericcEricC
Mars 11
D'accord je vais regarder comment présenter ce code d'une façon minimaliste.
Merci.

Sébastien Richard https://lilypond.community/u/sebastien_richard Sebastien_Richard
Mars 11
A titre personnel, je ne pourrais pas vous aider

Par contre je me rends compte que je me suis mal exprimé : pourriez vous nous fournir le fichier .ly avec votre exemple minimaliste ?

Cela permet aux contributeurs de travailler sur un exemple commun

En attendant, n'hésiter pas à consulter le LilyPond Snippet Repository https://lsr.di.unimi.it/, peut être y trouverez vous des pistes de réflexions

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet https://lilypond.community/t/texte-attache-a-un-nom-daccord-chiffre/5873/9.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Vous recevez cet e-mail car vous avez activé la liste de diffusion.

Pour vous désabonner de ces e-mails, modifiez vos préférences https://lilypond.community/my/preferences/emails.

Merci beaucoup Ben ça fonctionne très bien.

Est-ce faisable de retirer l'argument de la chaine qui est attribuée à la variable ? J'essai ceci mais ça ne fonctionne pas.

...
DIIsusIV = \chordmode { \textMark \markup \italic \fontsize #-2 \with-color #blue }

mesAccordsC = \chordmode { \DIIsusIV "x 5 7 7 8 x" d2:sus4 }
...

La raison pour laquelle je n'utilise pas fretboard est que le but de tout ça est de pouvoir produire une grille harmonique avec les annotations.

Merci

Une solution serait de définir une nouvelle commande de markup:

Mais comment voulez-vous produire la grille?

Si c'est en recopiant à la main depuis le pdf, le fretboard contient toutes les informations et est plus facile à générer en lilypond.

Si c'est par script sur le fichier .ly, ne serait-ce pas plus simple de ne les mettre qu'en commentaire?

Le 15 mars 2025 à 19:25, EricC via LilyPond notifications@lilypond.community a écrit :

https://lilypond.community/u/ericcEricC
Mars 15
Merci beaucoup Ben ça fonctionne très bien.

Est-ce faisable de retirer l'argument de la chaine qui est attribuée à la variable ? J'essai ceci mais ça ne fonctionne pas.

...
DIIsusIV = \chordmode { \textMark \markup \italic \fontsize #-2 \with-color #blue }

mesAccordsC = \chordmode { \DIIsusIV "x 5 7 7 8 x" d2:sus4 }
...

La raison pour laquelle je n'utilise pas fretboard est que le but de tout ça est de pouvoir produire une grille harmonique avec les annotations.

Merci

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet https://lilypond.community/t/texte-attache-a-un-nom-daccord-chiffre/5873/11.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Réponses précédentes

Ben https://lilypond.community/u/ben Ben
Mars 14
Comme ceci?

\version "2.24.4"

DIIsusIV = \chordmode { \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x" d2:sus4 }

melodie = \relative c' { g''2 fis }

mesAccords = \chordmode {
\DIIsusIV
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

Et une simple question: pourquoi ne pas utiliser les diagrammes de fret de Lilypond, comme dans l'exemple de la documentation ci-dessous?

\version "2.24.4"

\include "predefined-guitar-fretboards.ly http://predefined-guitar-fretboards.ly/ http://predefined-guitar-fretboards.ly/"

\paper { tagline = ##f }

myChords = \chordmode { c1 c1 \break

\set chordChanges = ##t c1 c1 \break

c1 c1 }

<<

\new ChordNames { \myChords } \new FretBoards { \myChords } \new Staff { \myChords }

Le 14 mars 2025 à 22:58, EricC via LilyPond notifications@lilypond.community mailto:notifications@lilypond.community a écrit :

https://lilypond.community/u/ericcEricC
Mars 14
J’ai finalement trouvé comment attacher le texte à un accord chiffré, c’est avec la fonction textMark.

Voici un extrait de code :

\version "2.24.4"

melodie = \relative c' { g''2 fis }
mesAccords = \chordmode {
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

C’est un gros pas de fait. Maintenant reste à trouver comment affecter le tout à une variable. Quand je mentionne le tout je veux dire le nom de l’accord avec son annotation et son formatage. Ceci donc : \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4.

Si je sépare l’annotation du nom de l’accord cela fonction mais les deux ensemble dans une même variable ça ne marche pas. Probablement ma syntaxe qui n’est pas bonne. Si quelqu’un a une idée, je suis preneur. Merci.

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet Texte attaché à un nom d'accord chiffré - #9 par EricC.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Réponses précédentes

https://lilypond.community/u/ericcEricC
Mars 13
Merci pour toutes ces informations, j’en ai pour un bout à tout assimiler. Deux choses à préciser que j’aurais du mentionner :

Le doigté des accords (texte en bleu) peut paraître non conforme, c’est parce qu’en fait je joue en "Chord Melody” et c’est pour cela que je tiens à pouvoir annoter les accords. Alors juste une grille harmonique avec les annotations de doigté me suffirait pour jouer le morceau.
La notation des accords qui peut également sembler bizarre c’est parce que j’utilise la fonction chExceptions = #(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) afin d’obtenir les noms d'accord correct. J’ai enlevé cette portion de code afin de présenter ici un exemple minimaliste.
Malheureusement je cherche toujours la façon d’ajouter un texte à un nom d’accord. Ce serait formidable de pourvoir avoir des annotations dans les cases dune grille harmonique.

Michel Guénard Profil - Michel_Guenard - LilyPond Michel_Guenard
Mars 12
Réponse fournie par l'IA
pas VéRIFIé QUE CELA RESOUD VOTRE QUESTION

Il semble probable que pour obtenir le résultat souhaité dans LilyPond avec les accords et leurs définitions, vous devez corriger les symboles d'accords dans mesAccords pour qu'ils correspondent à la progression d'accords de votre image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6), et ajuster les durées pour qu'elles s'alignent avec la mélodie.

Assurez-vous d'utiliser la notation standard de LilyPond pour les accords, comme e:m pour Em, a:13 pour A13, et c:maj add #11 pour C add#11. Pour G Maj7#13, vous pourriez utiliser g:maj7 add f, bien que cela puisse nécessiter une personnalisation, car ce n'est pas une notation standard.

Une information inattendue : les onglets de guitare dans votre code (0 2 2 0 0 x, etc.) semblent ne pas correspondre toujours aux accords définis, ce qui peut causer des incohérences visuelles.

Correction des symboles d'accords :

Remplacez a4:3.5.13 a2.:7 par a:13 a:7 et c4:sus11+ c2. par c:maj add #11 c. Ajoutez les accords manquants (d:sus4, d, g:maj7 add f, g:6) pour atteindre les neuf accords de l'image.

Exemple corrigé pour mesAccords : \chordmode { e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6 }, en supposant une durée de noire pour chaque accord, mais ajustez selon la durée de la mélodie.

Ajustement des durées :

La mélodie semble s'étendre sur quatre mesures de 4/4, soit 16 temps. Avec neuf accords, vous devrez répartir les durées (par exemple, certains accords sur une noire, d'autres sur une blanche) pour couvrir les 16 temps, ce qui peut nécessiter un essai et erreur pour aligner avec la mélodie.
Création d'une banque d'accords :

Pour associer chaque nom d'accord avec sa définition, définissez des variables Scheme, comme em_chord = \chordmode { e:m }, a13_chord = \chordmode { a:13 }, etc. Cela vous permettra de construire une banque d'accords prédéfinis pour réutilisation.
Note détaillée

Cette section explore en profondeur les ajustements nécessaires pour que le code LilyPond/Scheme produise le résultat souhaité, en tenant compte des accords fournis (e1:m, a4:3.5.13 a2.:7, d4:sus4 d2., c4:sus11+ c2., g4:maj5.13 g2.:6) et de la progression d'accords de l'image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6). Nous analyserons les notations, les durées, et la création d'une banque d'accords, avec des exemples et des considérations techniques.

Analyse des accords et de la progression

Le code initial de mesAccords contient quatre accords avec des notations non standard, comme a4:3.5.13, qui semble tenter de définir les intervalles de l'accord (3e, 5e, 13e) mais n'est pas conforme à la syntaxe LilyPond. L'image, en revanche, montre une progression de neuf accords, ce qui indique que le code est incomplet ou mal aligné. Les accords de l'image incluent des extensions complexes comme A13, G Maj7#13, et C add#11, nécessitant une notation précise.

Notations standard dans LilyPond : Selon la documentation de LilyPond (LilyPond Chord Notation GNU LilyPond – Manuel de notation: 2.7 Notation des accords), les accords sont notés avec la racine suivie d'un symbole de qualité (ex. e:m pour E mineur, a:13 pour A13). Pour des accords avec des notes ajoutées, comme C add#11, on utilise c:maj add #11. Cependant, G Maj7#13 pose problème, car la 13e dièse (E# pour G, équivalent à F) peut être ambiguë et nécessite une définition explicite, comme g:maj7 add f.

Durées et alignement avec la mélodie : La mélodie, analysée dans le code, s'étend sur quatre mesures de 4/4 (16 temps), avec des durées variées (croches, noires, blanches). Les accords doivent couvrir ces 16 temps, mais avec neuf accords, cela implique des durées variables (par exemple, certaines noires, d'autres blanches). Le code initial a des durées comme e1:m (blanche entière, 4 temps) et a4:3.5.13 a2.:7 (noire puis blanche pointée, total 3 temps), ce qui ne correspond pas à neuf accords sur 16 temps.

Correction des symboles d'accords

Pour aligner mesAccords avec l'image, corrigeons les notations :

e1:m → e:m (E mineur, durée à ajuster).

a4:3.5.13 a2.:7 → a:13 a:7 (A13 puis A7, durées à préciser, ex. a4:13 a4:7 pour deux noires).

d4:sus4 d2. → Correct, mais ajouter le D suivant (d4 d2. pour D sus4 puis D, ajuster durées).

c4:sus11+ c2. → c:maj add #11 c (C add#11 puis C, ajuster durées).

Ajouter les accords manquants : d:sus4, d, g:maj7 add f, g:6, pour atteindre neuf accords.

Exemple corrigé :

lilypond

mesAccords = \chordmode {
e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6
}
Cela suppose neuf noires (9 temps sur 16, à ajuster pour couvrir 16 temps, par exemple en allongeant certains accords).

Ajustement des durées

Pour couvrir 16 temps sur quatre mesures, une distribution possible est :

Certains accords sur une noire (1 temps), d'autres sur une blanche (2 temps), ou une blanche pointée (3 temps).

Exemple : e2:m a4:13 a4:7 d2:sus4 d4 c2:maj add #11 c4 g2:maj7 add f g4:6, totalisant 16 temps (2+1+1+2+1+2+1+2+1=16).

Création d'une banque d'accords prédéfinis

Pour associer chaque nom d'accord avec sa définition, utilisez des variables Scheme dans LilyPond. Cela permet de construire une banque d'accords réutilisables :

Définir chaque accord comme une variable, par exemple :
scheme

#(define em_chord \chordmode { e:m })
#(define a13_chord \chordmode { a:13 })
#(define a7_chord \chordmode { a:7 })
#(define d_sus4_chord \chordmode { d:sus4 })
#(define d_chord \chordmode { d })
#(define c_add11_chord \chordmode { c:maj add #11 })
#(define c_chord \chordmode { c })
#(define g_maj7_sharp13_chord \chordmode { g:maj7 add f })
#(define g6_chord \chordmode { g:6 })
Utiliser ces variables dans mesAccords :
lilypond

mesAccords = \chordmode {
\em_chord \a13_chord \a7_chord \d_sus4_chord \d_chord \c_add11_chord \c_chord \g_maj7_sharp13_chord \g6_chord
}
Ajouter des durées pour chaque appel, comme \em_chord4 pour une noire, ou définir les durées dans les variables elles-mêmes.
Considérations sur les onglets de guitare

Les onglets de guitare (0 2 2 0 0 x, etc.) dans la mélodie semblent être des annotations pour les positions de doigts, mais ils ne correspondent pas toujours aux accords définis (par exemple, 0 2 2 0 0 x pour Em ne correspond pas à la tablature standard d'Em). Cela peut être une source d'incohérence visuelle, et il peut être nécessaire de vérifier ou corriger ces annotations pour qu'elles s'alignent avec les accords.

Tableau récapitulatif des accords

Accord Notation LilyPond Durée suggérée Remarque
Em e:m 2 temps Accord mineur standard
A13 a:13 1 temps Accord dominant étendu
A7 a:7 1 temps Accord dominant septième
D sus4 d:sus4 2 temps Accord suspendu
D d 1 temps Accord majeur standard
C add#11 c:maj add #11 2 temps Accord avec note ajoutée
C c 1 temps Accord majeur standard
G Maj7#13 g:maj7 add f 2 temps Approximation, non standard
G6 g:6 1 temps Accord majeur avec 6e ajoutée
Conclusion

Pour obtenir le résultat souhaité, ajustez mesAccords avec les notations correctes et les durées appropriées pour couvrir 16 temps sur quatre mesures, et utilisez des variables Scheme pour créer une banque d'accords prédéfinis. Vérifiez les onglets de guitare pour éviter les incohérences. Cela devrait aligner le code avec l'image fournie, bien que des ajustements manuels puissent être nécessaires pour la synchronisation exacte.

Key Citations

LilyPond Chord Notation 10-word description GNU LilyPond – Manuel de notation: 2.7 Notation des accords
Guitar Em Chord 10-word description Em Chord on the Guitar (E Minor) – 10 Ways to Play (and Some Tips/Theory)
https://lilypond.community/u/ericcEricC
Mars 11
Voici donc un extrait du code.

\version "2.24.4"
indent = 0
melodie = \relative c' {
b'4.^"0 2 2 0 0 x" b8~ b e g4
fis4^"5 7 5 6 7 x" e^"5 7 5 6 5 x" a8 a4 a8
g4^"x 5 7 7 8 x" fis2^"x 5 7 7 7 x" d4
fis4^"x 3 5 3 7 x" e^"x 3 5 5 5 x" e8 e4 e8
}

mesAccords = \chordmode {
e1:m
a4:3.5.13 a2.:7
d4:sus4 d2.
c4:sus11+ c2.
}

\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

\layout {
\override TextScript.font-size = -2
\override TextScript.color = #blue
\override TextScript.X-offset = #-2
\textLengthOn
}
}
Extrait de code.ly http://code.ly/ https://lilypond.community/uploads/short-url/rNyJs3kRjaALzEnBW0RjrsDtGZl.ly (578 Octets)

https://lilypond.community/u/ericcEricC
Mars 11
D'accord je vais regarder comment présenter ce code d'une façon minimaliste.
Merci.

Sébastien Richard Profil - Sebastien_Richard - LilyPond Sebastien_Richard
Mars 11
A titre personnel, je ne pourrais pas vous aider

Par contre je me rends compte que je me suis mal exprimé : pourriez vous nous fournir le fichier .ly avec votre exemple minimaliste ?

Cela permet aux contributeurs de travailler sur un exemple commun

En attendant, n'hésiter pas à consulter le LilyPond Snippet Repository https://lsr.di.unimi.it/, peut être y trouverez vous des pistes de réflexions

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet Texte attaché à un nom d'accord chiffré - #9 par EricC.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Vous recevez cet e-mail car vous avez activé la liste de diffusion.

Pour vous désabonner de ces e-mails, modifiez vos préférences LilyPond - Discussions sur LilyPond.
https://lilypond.community/u/ericcEricC
Mars 14
J’ai finalement trouvé comment attacher le texte à un accord chiffré, c’est avec la fonction textMark.

Voici un extrait de code :

\version "2.24.4"

melodie = \relative c' { g''2 fis }
mesAccords = \chordmode {
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4
\textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 7 x"d
}
\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

}

https://lilypond.community/uploads/default/original/2X/1/1a1e349e45db8cb90d54990ee6b4435abe9e3094.png

C’est un gros pas de fait. Maintenant reste à trouver comment affecter le tout à une variable. Quand je mentionne le tout je veux dire le nom de l’accord avec son annotation et son formatage. Ceci donc : \textMark \markup \italic \fontsize #-2 \with-color #blue "x 5 7 7 8 x"d2:sus4.

Si je sépare l’annotation du nom de l’accord cela fonction mais les deux ensemble dans une même variable ça ne marche pas. Probablement ma syntaxe qui n’est pas bonne. Si quelqu’un a une idée, je suis preneur. Merci.

https://lilypond.community/u/ericcEricC
Mars 13
Merci pour toutes ces informations, j’en ai pour un bout à tout assimiler. Deux choses à préciser que j’aurais du mentionner :

Le doigté des accords (texte en bleu) peut paraître non conforme, c’est parce qu’en fait je joue en "Chord Melody” et c’est pour cela que je tiens à pouvoir annoter les accords. Alors juste une grille harmonique avec les annotations de doigté me suffirait pour jouer le morceau.
La notation des accords qui peut également sembler bizarre c’est parce que j’utilise la fonction chExceptions = #(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions) afin d’obtenir les noms d'accord correct. J’ai enlevé cette portion de code afin de présenter ici un exemple minimaliste.
Malheureusement je cherche toujours la façon d’ajouter un texte à un nom d’accord. Ce serait formidable de pourvoir avoir des annotations dans les cases dune grille harmonique.

Michel Guénard https://lilypond.community/u/michel_guenard Michel_Guenard
Mars 12
Réponse fournie par l'IA
pas VéRIFIé QUE CELA RESOUD VOTRE QUESTION

Il semble probable que pour obtenir le résultat souhaité dans LilyPond avec les accords et leurs définitions, vous devez corriger les symboles d'accords dans mesAccords pour qu'ils correspondent à la progression d'accords de votre image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6), et ajuster les durées pour qu'elles s'alignent avec la mélodie.

Assurez-vous d'utiliser la notation standard de LilyPond pour les accords, comme e:m pour Em, a:13 pour A13, et c:maj add #11 pour C add#11. Pour G Maj7#13, vous pourriez utiliser g:maj7 add f, bien que cela puisse nécessiter une personnalisation, car ce n'est pas une notation standard.

Une information inattendue : les onglets de guitare dans votre code (0 2 2 0 0 x, etc.) semblent ne pas correspondre toujours aux accords définis, ce qui peut causer des incohérences visuelles.

Correction des symboles d'accords :

Remplacez a4:3.5.13 a2.:7 par a:13 a:7 et c4:sus11+ c2. par c:maj add #11 c. Ajoutez les accords manquants (d:sus4, d, g:maj7 add f, g:6) pour atteindre les neuf accords de l'image.

Exemple corrigé pour mesAccords : \chordmode { e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6 }, en supposant une durée de noire pour chaque accord, mais ajustez selon la durée de la mélodie.

Ajustement des durées :

La mélodie semble s'étendre sur quatre mesures de 4/4, soit 16 temps. Avec neuf accords, vous devrez répartir les durées (par exemple, certains accords sur une noire, d'autres sur une blanche) pour couvrir les 16 temps, ce qui peut nécessiter un essai et erreur pour aligner avec la mélodie.
Création d'une banque d'accords :

Pour associer chaque nom d'accord avec sa définition, définissez des variables Scheme, comme em_chord = \chordmode { e:m }, a13_chord = \chordmode { a:13 }, etc. Cela vous permettra de construire une banque d'accords prédéfinis pour réutilisation.
Note détaillée

Cette section explore en profondeur les ajustements nécessaires pour que le code LilyPond/Scheme produise le résultat souhaité, en tenant compte des accords fournis (e1:m, a4:3.5.13 a2.:7, d4:sus4 d2., c4:sus11+ c2., g4:maj5.13 g2.:6) et de la progression d'accords de l'image (Em, A13, A7, D sus4, D, C add#11, C, G Maj7#13, G6). Nous analyserons les notations, les durées, et la création d'une banque d'accords, avec des exemples et des considérations techniques.

Analyse des accords et de la progression

Le code initial de mesAccords contient quatre accords avec des notations non standard, comme a4:3.5.13, qui semble tenter de définir les intervalles de l'accord (3e, 5e, 13e) mais n'est pas conforme à la syntaxe LilyPond. L'image, en revanche, montre une progression de neuf accords, ce qui indique que le code est incomplet ou mal aligné. Les accords de l'image incluent des extensions complexes comme A13, G Maj7#13, et C add#11, nécessitant une notation précise.

Notations standard dans LilyPond : Selon la documentation de LilyPond (LilyPond Chord Notation https://lilypond.org/doc/v2.24/Documentation/notation/chord-notation), les accords sont notés avec la racine suivie d'un symbole de qualité (ex. e:m pour E mineur, a:13 pour A13). Pour des accords avec des notes ajoutées, comme C add#11, on utilise c:maj add #11. Cependant, G Maj7#13 pose problème, car la 13e dièse (E# pour G, équivalent à F) peut être ambiguë et nécessite une définition explicite, comme g:maj7 add f.

Durées et alignement avec la mélodie : La mélodie, analysée dans le code, s'étend sur quatre mesures de 4/4 (16 temps), avec des durées variées (croches, noires, blanches). Les accords doivent couvrir ces 16 temps, mais avec neuf accords, cela implique des durées variables (par exemple, certaines noires, d'autres blanches). Le code initial a des durées comme e1:m (blanche entière, 4 temps) et a4:3.5.13 a2.:7 (noire puis blanche pointée, total 3 temps), ce qui ne correspond pas à neuf accords sur 16 temps.

Correction des symboles d'accords

Pour aligner mesAccords avec l'image, corrigeons les notations :

e1:m → e:m (E mineur, durée à ajuster).

a4:3.5.13 a2.:7 → a:13 a:7 (A13 puis A7, durées à préciser, ex. a4:13 a4:7 pour deux noires).

d4:sus4 d2. → Correct, mais ajouter le D suivant (d4 d2. pour D sus4 puis D, ajuster durées).

c4:sus11+ c2. → c:maj add #11 c (C add#11 puis C, ajuster durées).

Ajouter les accords manquants : d:sus4, d, g:maj7 add f, g:6, pour atteindre neuf accords.

Exemple corrigé :

lilypond

mesAccords = \chordmode {
e4:m a4:13 a4:7 d4:sus4 d4 c4:maj add #11 c4 g4:maj7 add f g4:6
}
Cela suppose neuf noires (9 temps sur 16, à ajuster pour couvrir 16 temps, par exemple en allongeant certains accords).

Ajustement des durées

Pour couvrir 16 temps sur quatre mesures, une distribution possible est :

Certains accords sur une noire (1 temps), d'autres sur une blanche (2 temps), ou une blanche pointée (3 temps).

Exemple : e2:m a4:13 a4:7 d2:sus4 d4 c2:maj add #11 c4 g2:maj7 add f g4:6, totalisant 16 temps (2+1+1+2+1+2+1+2+1=16).

Création d'une banque d'accords prédéfinis

Pour associer chaque nom d'accord avec sa définition, utilisez des variables Scheme dans LilyPond. Cela permet de construire une banque d'accords réutilisables :

Définir chaque accord comme une variable, par exemple :
scheme

#(define em_chord \chordmode { e:m })
#(define a13_chord \chordmode { a:13 })
#(define a7_chord \chordmode { a:7 })
#(define d_sus4_chord \chordmode { d:sus4 })
#(define d_chord \chordmode { d })
#(define c_add11_chord \chordmode { c:maj add #11 })
#(define c_chord \chordmode { c })
#(define g_maj7_sharp13_chord \chordmode { g:maj7 add f })
#(define g6_chord \chordmode { g:6 })
Utiliser ces variables dans mesAccords :
lilypond

mesAccords = \chordmode {
\em_chord \a13_chord \a7_chord \d_sus4_chord \d_chord \c_add11_chord \c_chord \g_maj7_sharp13_chord \g6_chord
}
Ajouter des durées pour chaque appel, comme \em_chord4 pour une noire, ou définir les durées dans les variables elles-mêmes.
Considérations sur les onglets de guitare

Les onglets de guitare (0 2 2 0 0 x, etc.) dans la mélodie semblent être des annotations pour les positions de doigts, mais ils ne correspondent pas toujours aux accords définis (par exemple, 0 2 2 0 0 x pour Em ne correspond pas à la tablature standard d'Em). Cela peut être une source d'incohérence visuelle, et il peut être nécessaire de vérifier ou corriger ces annotations pour qu'elles s'alignent avec les accords.

Tableau récapitulatif des accords

Accord Notation LilyPond Durée suggérée Remarque
Em e:m 2 temps Accord mineur standard
A13 a:13 1 temps Accord dominant étendu
A7 a:7 1 temps Accord dominant septième
D sus4 d:sus4 2 temps Accord suspendu
D d 1 temps Accord majeur standard
C add#11 c:maj add #11 2 temps Accord avec note ajoutée
C c 1 temps Accord majeur standard
G Maj7#13 g:maj7 add f 2 temps Approximation, non standard
G6 g:6 1 temps Accord majeur avec 6e ajoutée
Conclusion

Pour obtenir le résultat souhaité, ajustez mesAccords avec les notations correctes et les durées appropriées pour couvrir 16 temps sur quatre mesures, et utilisez des variables Scheme pour créer une banque d'accords prédéfinis. Vérifiez les onglets de guitare pour éviter les incohérences. Cela devrait aligner le code avec l'image fournie, bien que des ajustements manuels puissent être nécessaires pour la synchronisation exacte.

Key Citations

LilyPond Chord Notation 10-word description https://lilypond.org/doc/v2.24/Documentation/notation/chord-notation
Guitar Em Chord 10-word description https://www.onlineguitarbooks.com/em-chord/
https://lilypond.community/u/ericcEricC
Mars 11
Voici donc un extrait du code.

\version "2.24.4"
indent = 0
melodie = \relative c' {
b'4.^"0 2 2 0 0 x" b8~ b e g4
fis4^"5 7 5 6 7 x" e^"5 7 5 6 5 x" a8 a4 a8
g4^"x 5 7 7 8 x" fis2^"x 5 7 7 7 x" d4
fis4^"x 3 5 3 7 x" e^"x 3 5 5 5 x" e8 e4 e8
}

mesAccords = \chordmode {
e1:m
a4:3.5.13 a2.:7
d4:sus4 d2.
c4:sus11+ c2.
}

\score {
<<
\new ChordNames \mesAccords
\new Staff \melodie

\layout {
\override TextScript.font-size = -2
\override TextScript.color = #blue
\override TextScript.X-offset = #-2
\textLengthOn
}
}
Extrait de code.ly https://lilypond.community/uploads/short-url/rNyJs3kRjaALzEnBW0RjrsDtGZl.ly (578 Octets)

Pour poster dans ce sujet, répondez à cet email ou visitez la page du sujet https://lilypond.community/t/texte-attache-a-un-nom-daccord-chiffre/5873/11.

Pour créer un nouveau sujet, écrivez à user-fr@lilypond.community mailto:user-fr@lilypond.community ou visitez la page d'accueil de lilypond.community https://lilypond.community/.

Vous recevez cet e-mail car vous avez activé la liste de diffusion.

Pour vous désabonner de ces e-mails, modifiez vos préférences https://lilypond.community/my/preferences/emails.

Très intéressant cette fonction de définir une nouvelle commande. On y voit toute la puissance de Lilypond.

Je produit la grille avec \new ChordGrid \mesAccords et textMark me permet d'annoter mes accords. Ça donne ceci :


J’aurais espéré que les annotations se placent dans les cases sous les noms d’accords et que Lily ajuste la largeur de la case en conséquence, surtout dans les cas de plusieurs accords dans une seule mesure, mais bon…ce sera pour plus tard.

Je débute avec Lilypond et la production de grille harmonique, que je ne connaissais pas, est une révélation pour moi. Auparavant je produisais un semblant de grille avec un tableur. Le résultat était quand même bien mais c’était du travail en double. Ça donnait ceci :

Les diagrammes de fret c’est bien mais ça encombre la partition et à moins de s’en tenir aux accords prédéfinis ça devient lourd à définir de nouveaux doigtés. Vu que je joue principalement en chord melody et que ma mémoire n’est pas très fiable, j’ai besoin de ces annotations de doigtés. En fait si vous jouez les accords avec les annotations de doigtés, vous jouez pratiquement la mélodie aussi. C’est plus facile pour moi de me souvenir des accords que la mélodie.

Vous dites "Si c'est par script sur le fichier .ly, ne serait-ce pas plus simple de ne les mettre qu'en commentaire?" Ce sont deux fonctions que je ne connais pas du tout.

Merci pour votre aide.

Oui, et les fonctions schemes permettent aussi une intégration encore plus poussée, mais en raison du manque de documentation, c'est assez difficile à manipuler.

Je n'avais pas compris que vous génériez la grille directement avec lilypond, d'où ma question sur script et commentaire.

Mais du coup, pourquoi pas une écriture de ce genre, et peut-être même qu'il existe des paramètres pour réduire la taille des fretboards:

\version "2.25.18"

Accords = \chordmode { c1 d1:m e1:7 f1:7+ }

\new ChordGrid
<<
\Accords
\new FretBoards \Accords

Effectivement que ça donne un beau rendu. Je pourrais même rassembler tous les diagramme dans le haut ou le bas de la partition. Mais j'en reviens au fait que c'est ardu de configurer des nouveaux diagrammes. Et comme plus de 50% des accords que j'utilise sont modifiés, ça va me prendre un temps fou.

Déjà que je trouve très bizarre la façon dont Lily rend les noms d'accords. Exemple : Lily considère <c e g d'> comme étant un C9 alors que ce n'est pas du tout le cas, c'est un Cadd9. Il faut faire une gymnastique afin d'obtenir le Cadd9. Autre exemple, prenons un C13b9. Lily s'entête à rendre C7b913. Encore une gymnastique afin d'obtenir Cb913. Et encore là, impossible de lui faire écrire C13b9. Tous ceci toutefois considérant mes connaissance limitée de Lily. Mais je ne trouve pas normal que l'on doive faire des gymnastiques afin d'obtenir des noms d'accords convenables.

Bonjour,

Je ne suis pas un spécialiste de la notation des accords, mais vous semblez ne pas utiliser le modèle de chiffrages d’accord de Klaus Ignatzek (par défaut dans LilyPond), mais un système de nommage inspiré par Harald Banter qu'on retrouve dans le morceau choisi « Noms d’accords alternatifs ».

Cordialement,
Xavier

Bonjour Xavier,

Voici ce que j'utilise. Je suis obligé de me construire une banque au fur et à mesure des besoins.

...

chExceptionMusic = {
<c e g b d'>1-\markup { \super "maj9" }
<c e g a d'>1-\markup { \super "6(add9)" }
-\markup { \super "(5-)" } % d:5-
-\markup { \super "dim7"}
-\markup { m\super "7 b5"}
%+++ 7 +++
-\markup { m\super "Maj7" } % d:m7+

%+++ 9 +++
<c e g d'>-\markup { \super "add9" } % c1:3.5.9
<c ees g d'>-\markup { m\super "add9" } % c:m3.5.9
<c f g d'>-\markup { \super "sus4(add9)" } % c:5.9sus4

%+++ 11 +++
<c ees g f'>-\markup { \super "add11"} % c:m3.5.11
<c f g fis'>-\markup { \super "add#11" } % c:sus11+
<c ees ges f'>-\markup { m\super "11(b5)" } %c:m3.5.11.5-

%+++ 13+++
<c e g d' aes' >-\markup { \super "add9(b13)" } % c:3.5.9.13-
}

% Convert music to list and prepend to existing exceptions.
chExceptions = #(append (sequential-music-to-chord-exceptions chExceptionMusic #t) ignatzekExceptions)

...