Subject: Re: Grille harmonique 100% Lilypond

From: Jean Abou Samra <[email-masked]>
Date: Fri, 1 Apr 2022 22:59:08 +0200

Bonjour tout le monde,

Quelques questions sur ce système de notation pour peaufiner mon truc :

- Que se passe-t-il en cas de silences invisibles (s) ? Dans le Baudoin 
[*], je vois un grand tiret dans la case, est-ce standard ? Est-ce qu'il 
arrive que le contour de la case soit complètement supprimé ? Et si une 
demi-mesure contient un silence ? Quid, d'ailleurs, des silences pas 
invisibles (r), la même chose que s j'imagine ?

- En privé, Gilles Saucet m'a demandé s'il était possible de faire 
fonctionner ce code avec des mesures à 3 temps, en donnant l'exemple en 
pièce jointe. Est-ce que c'est une division standard de la case ?

- Dans le Baudoin (page 31 sqq), il y a des indications sur la notation 
des basses. C'est important ? Standard ? Même question pour les autres 
choses sur cette page : breaks, trémolos, descente par demi-tons 
(sachant que je ne compte pas faire quelque chose d'archi-complet dans 
un premier temps, juste correct, quitte à ajouter des fonctionnalités 
plus tard),

- Serait-il approprié que le contexte ChordGrid active systématiquement 
la notation proportionnelle pour toute la partition ? A priori, la 
taille des cases devrait être régulière tant qu'elles sont isolées (dès 
que j'aurais réglé deux-trois soucis dans le code sur ce point), mais 
pas si elles se trouvent au-desssus d'une portée normale, qui apportera 
ses demandes d'espacement à elle.

Merci,
Jean

[*] Je l'ai trouvé en ligne ici :
http://jazzpotes2.free.fr/methodes/Baudoin-Jazz%20mode%20d%27emploi%20Vol%201.pdf

---

From: Vincent Gay <[email-masked]>
Date: Sun, 3 Apr 2022 19:45:47 +0200

Hello Jean,

désolé de te répondre aussi tard, pleins de petits ennuis pas très 
graves mais qui font que je n'ai pas trop la tête à Lilypond.

En préambule je commencerai par rappeler qu'au départ la grille 
harmonique est surtout un truc griffonné sur un coin de nappe entre 
musiciens qui connaissent la musique dans tous les sens du terme :) Cela 
n'a donc pas besoin d'être très précis. (IMHO c'est sans doute à cause 
de ce coté griffonné que les cases sont divisées en diagonales, plus 
faciles à distinguer des cotés ordinaires)

> fonctionner ce code avec des mesures à 3 temps, en donnant l'exemple 
> en pièce jointe. Est-ce que c'est une division standard de la case ?

Il est assez rare de trouver des morceaux en 3/4 avec plus d'un accord 
par mesure. Si je devais faire quelque chose (griffonné) cela 
ressemblerait à ceci :

Mais l'exemple que tu donne fait assez bien l'affaire.

> - Que se passe-t-il en cas de silences invisibles (s) ? Dans le 
> Baudoin [*], je vois un grand tiret dans la case, est-ce standard ? 
> Est-ce qu'il arrive que le contour de la case soit complètement 
> supprimé ? Et si une demi-mesure contient un silence ? Quid, 
> d'ailleurs, des silences pas invisibles (r), la même chose que s 
> j'imagine ?

  les silences visibles se traduisent par des N.C., tout comme dans un 
chordChanges ordinaire. Pour ma part j'utilise les silences invisibles 
d'une mesure complète, combinés avec des \stopStaff, \startStaff et \bar 
"" pour mes reprises avec alternatives.

voici un exemple :

|\version "2.22.2" |||\include "jazzchords.ily" % Si vous utilisez Lilyjazz| |\include 
"lilyjazz.ily"      % Si vous utilisez Lilyjazz |\include 
"chord-grid-JAS.ly" % la fonction codée par Jean #(set-global-staff-size 
18) grille = \chordmode { \bar "[|:" \repeat percent 2 { c1:7+ } \set 
Score.repeatCommands = #'((volta "1.") ) d:m7 g:7 \set 
Score.repeatCommands = #'((volta #f) end-repeat) \break \stopStaff s1 
\bar "" s \startStaff \set Score.repeatCommands = #'((volta "2.") ) 
d2:m7 g:7 c:m7 f:7 \bar "||" \set Score.repeatCommands = #'((volta #f)) 
} \score { \gridLayout \new ChordGrid \grille } |||
||

-- 
Vincent Gay
Envoyé depuis mon saxo-phone :)
https://myrealbook.vintherine.org/  -http://photos.vintherine.org/

---

From: Jacques Menu <[email-masked]>
Date: Sun, 3 Apr 2022 20:15:17 +0200

Salut Vincent,

Perso je préfère nettement une écriture proportionnelle, comme :

Qu’en penses-tu?

JM

> Le 3 avr. 2022 à 19:45, Vincent Gay <[email-masked]> a écrit :
> 
> Hello Jean,
> 
> désolé de te répondre aussi tard, pleins de petits ennuis pas très graves mais qui font que je n'ai pas trop la tête à Lilypond.
> 
> En préambule je commencerai par rappeler qu'au départ la grille harmonique est surtout un truc griffonné sur un coin de nappe entre musiciens qui connaissent la musique dans tous les sens du terme :) Cela n'a donc pas besoin d'être très précis. (IMHO c'est sans doute à cause de ce coté griffonné que les cases sont divisées en diagonales, plus faciles à distinguer des cotés ordinaires)
> 
>> - En privé, Gilles Saucet m'a demandé s'il était possible de faire fonctionner ce code avec des mesures à 3 temps, en donnant l'exemple en pièce jointe. Est-ce que c'est une division standard de la case ? 
> 
> Il est assez rare de trouver des morceaux en 3/4 avec plus d'un accord par mesure. Si je devais faire quelque chose (griffonné) cela ressemblerait à ceci :
> 
> 
>> - Que se passe-t-il en cas de silences invisibles (s) ? Dans le Baudoin [*], je vois un grand tiret dans la case, est-ce standard ? Est-ce qu'il arrive que le contour de la case soit complètement supprimé ? Et si une demi-mesure contient un silence ? Quid, d'ailleurs, des silences pas invisibles (r), la même chose que s j'imagine ? 
> 
>  les silences visibles se traduisent par des N.C., tout comme dans un chordChanges ordinaire. Pour ma part j'utilise les silences invisibles d'une mesure complète, combinés avec des \stopStaff, \startStaff et \bar "" pour mes reprises avec alternatives.
> 
> voici un exemple :
> \version "2.22.2"
> \include "jazzchords.ily"    % Si vous utilisez Lilyjazz
> \include "lilyjazz.ily"      % Si vous utilisez Lilyjazz
> \include "chord-grid-JAS.ly" % la fonction codée par Jean
> #(set-global-staff-size 18)
> 
> grille = \chordmode {
>   \bar "[|:" \repeat percent 2 { c1:7+ } 
>   \set Score.repeatCommands = #'((volta "1.") )
>   d:m7 g:7 \set Score.repeatCommands = #'((volta #f) end-repeat)
>   \break
>   \stopStaff s1 \bar "" s \startStaff 
>   \set Score.repeatCommands = #'((volta "2.") )
> }
> \score {
>   \gridLayout
>   \new ChordGrid \grille
> } 
> https://myrealbook.vintherine.org/ <https://myrealbook.vintherine.org/> - http://photos.vintherine.org/ <http://photos.vintherine.org/>

---

From: Vincent Gay <[email-masked]>
Date: Sun, 3 Apr 2022 18:49:42 +0000 (UTC)

> Perso je préfère nettement une écriture proportionnelle, comme :
Hello Jacques,

La présentation à la ireal pro est très facile à réaliser nativement avec Lilypond. Donc pas de soucis. Mais si tu parles de préférence je trouve que la grille telle que je la pratique (i.e. avec les divisions en diagonales) est beaucoup plus visuelle. Question de goût mais surtout d'habitudes.

Je ne l'ai pas évoqué dans mon message précédent car il n'y a rien de standard mais chacun a son petit truc pour améliorer la précision de la grille. Par exemple rajouter un symbole (< ou >) devant ou après un nom d'accord pour l'anticiper ou le retarder de la valeur d'une croche.

À l'adresse de Jean : autre chose que j'ai oublié, la possibilité de mettre les accords entre parenthèses, même en cas de division de la mesure.

Mais honnêtement les choses me vont très bien telles qu'elles sont aujourd'hui.

---

From: Jean Abou Samra <[email-masked]>
Date: Tue, 12 Apr 2022 22:02:55 +0200

Le 03/04/2022 à 19:45, Vincent Gay a écrit :
> musiciens qui connaissent la musique dans tous les sens du terme :) 
> Cela n'a donc pas besoin d'être très précis. (IMHO c'est sans doute à 
> cause de ce coté griffonné que les cases sont divisées en diagonales, 
> plus faciles à distinguer des cotés ordinaires)
>
> d'une mesure complète, combinés avec des \stopStaff, \startStaff et 
> \bar "" pour mes reprises avec alternatives.
>
> voici un exemple :
> "chord-grid-JAS.ly" % la fonction codée par Jean 
> #(set-global-staff-size 18) grille = \chordmode { \bar "[|:" \repeat 
> percent 2 { c1:7+ } \set Score.repeatCommands = #'((volta "1.") ) d:m7 
> g:7 \set Score.repeatCommands = #'((volta #f) end-repeat) \break 
> \stopStaff s1 \bar "" s \startStaff \set Score.repeatCommands = 
> #'((volta "2.") ) d2:m7 g:7 c:m7 f:7 \bar "||" \set 
> Score.repeatCommands = #'((volta #f)) } \score { \gridLayout \new 
> ChordGrid \grille }|||

|Bonjour,

Merci à tous pour ces précisions.|

Pour info, en m'y remettant un peu, j'ai eu besoin pour faire quelque
chose de plus propre (et pour régler certains problèmes d'espacement)
de toucher au code C++ de LilyPond. Donc, à ce stade, je ne travaille
plus sur un fichier .ily, mais sur un patch à ajouter à LilyPond.
Honnêtement, je n'ai aucune idée du temps qu'il me faudra pour le
terminer, mais c'est désormais l'idée. J'ai déjà soumis deux patchs
préliminaires, qui sont dans le processus de relecture.

Cordialement,
Jean

---

From: Jean Abou Samra <[email-masked]>
Date: Wed, 13 Apr 2022 23:09:33 +0200

(Re)Bonjour Vincent, et tutti,

Encore quelques questions :-)

1. C'est sans doute une question bête, mais… Se fait-il parfois d'avoir 
une portée normale et une grille d'accords superposées ? Se peut-il que 
le contexte ChordGrid ne soit pas seul mais en parallèle avec un autre 
contexte ?

Je rencontre des difficultés différentes dans les deux cas. S'il est 
toujours tout seul, je préfère en faire un contexte qui remplace 
complètement Score. En particulier, cela permettrait d'avoir facilement 
la notation proportionnelle. Il n'est pas possible à l'heure actuelle 
d'utiliser un contexte nommé autrement que Score pour le contexte le 
plus englobant, mais j'ai espoir de changer ça.

Dans le cas où il faut permettre la superposition, c'est la pagaille… 
Les objets de la portée normale imposent des contraintes d'espacement, 
ce n'est pas évident d'obtenir un résultat régulier. Par conséquent, 
j'espère (et crois bien) que la réponse est non, mais je pose la 
question à tout hasard.

2. À ton avis, vaudrait-il mieux choisir par défaut la division en 
diagonales ou en carrés pour les cases à quatre « compartiments » ? Et 
si je fais une commande pour sélectionner l'autre option, comment nommer 
cette commande ?

Ce sera tout pour ce soir.

Amicalement,
Jean

---

From: Vincent Gay <[email-masked]>
Date: Thu, 14 Apr 2022 10:40:38 +0200

Le 13/04/2022 à 23:09, Jean Abou Samra a écrit :
> 1. C'est sans doute une question bête, mais… Se fait-il parfois 
> d'avoir une portée normale et une grille d'accords superposées ? Se 
> peut-il que le contexte ChordGrid ne soit pas seul mais en parallèle 
> avec un autre contexte ? 
Hello Jean,

Selon mon usage non : Pour être précis elles peuvent être dans un même 
book ou bookpart mais la grille d'accords est toujours seule dans son 
score. Voici une organisation typ1que :

theNotes = \relative { } % la musique
theChords = \chordmode { } % les accords au dessus de la portée
theGrid = \chordmode { } %  les accords de la grille

\book {
     \bookpart {
         \score {
             <<
                 \new ChordNames \theChords
                 \new Staff \theNotes
             >>
     }
     } \bookpart { % facultatif, s'il y a suffisamment de place dans la 
page pour tout faire tenir cette ligne sera commentée
         \score {
           \gridLayout
           \new ChordGrid \theGrid
} } }

Dans ton courrier du 12/03 tu imaginais que l'on puisse utiliser une 
même variable chordmode que l'on pourrait utiliser aussi bien en 
ChordNames qu'en ChordGrid. Du fait de ma présentation des reprises 
(confère mon précédent message) ce n'est (quasiment) jamais le cas.

> diagonales ou en carrés pour les cases à quatre « compartiments » ?
Personnellement je préfère les diagonales : différenciation immédiate de 
la case (mesure) et de son contenu. Mais c'est une question de Style.

> Et si je fais une commande pour sélectionner l'autre option, comment 
> nommer cette commande ? 
En français on parle de médianes et de diagonales. En anglais median and 
diagonal lines. Donc pourquoi pas medStyle et diagStyle ?

-- 
Vincent Gay
Envoyé depuis mon saxo-phone :)
https://myrealbook.vintherine.org/ - http://photos.vintherine.org/