lilypond-user-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Grille harmonique 100% Lilypond


From: Jean-Jacques Gerbaud
Subject: Re: Grille harmonique 100% Lilypond
Date: Sun, 8 May 2022 10:31:36 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.8.1

Le 08/05/2022 à 00:49, Jean Abou Samra a écrit :
> Le 07/05/2022 à 20:02, Vincent Gay a écrit :
>> Le 07/05/2022 à 18:01, Jean Abou Samra a écrit :
>>> Dans tes grilles, je vois le code
>>>
>>>   startRepeatBarType = #"[|:"
>>>   endRepeatBarType = #":|]"
>>>   doubleRepeatBarType = #":|][|:"
>>>
>>> Est-ce que c'est standard pour le jazz ? Cela aurait-il du sens
>>> d'en faire les valeurs par défaut dans le context ChordGrid ? 
>>
>> Oui, absolument (selon moi). Mais le mieux n'est-il pas de ce qui est 
>> en vigueur justement via les \layout ?
> 
> 
> 
> Tu veux dire la variable \gridLayout ? Je vois qu'elle est présente dans
> ton code, mais je n'ai pas sa définition exacte (pour info, le lien sur
> https://myrealbook.vintherine.org/grille-harmonique.html renvoie vers
> un fichier dont l'accès partagé est protégé par mot de passe). Après,
> je me doute bien que c'est le
> 
>        \layout {
>          indent = 0
>          \context {
>            \Score
>            \override SpacingSpanner.strict-note-spacing = ##t
>            proportionalNotationDuration = #(ly:make-moment 1/16)
>            \consists #Recurring_break_engraver
>            bars-per-line = 4
>          }
>          \context {
>            \ChordGrid
>            \override BarLine.bar-extent = #'(-5 . 5)
>            \consists "Bar_engraver"
>            \override StaffSymbol.line-positions = #'( -10 10 )
>            \consists "Percent_repeat_engraver"
>          }
>          \context { \Score markFormatter = #format-mark-box-alphabet }
>        }
> 
> 
> Or, j'ai pu éliminer la plupart des commandes dans ce \layout, en
> les mettant dans les valeurs par défaut du context ChordGrid (il
> reste possible de les changer bien sûr, avec \layout ou \with).
> Dans l'état actuel des choses, une grille s'écrit :
> 
> \paper {
>    indent = 0
>    system-system-spacing.padding = 2.5 % augmente un peu l'espacement 
> entre les lignes
> }
> 
> \new ChordGrid \chordmode {
>    ...
> }
> 
> Et c'est tout. Malheureusement, il y a encore du boulot pour régler les deux
> variables restantes de manière automatique, car elles ne sont pas liées à
> un contexte mais au \paper et ne peuvent donc pas être changées
> dans la définition de ChordGrid (du moins pas sans hack). J'espère trouver
> l'énergie de le faire un jour, cela ne doit pas être bien compliqué, et
> puis la possibilité de modifier le system-system-spacing au niveau \score
> et non \bookpart serait intéressante même sans grille d'accords.
> 
> Au fait, pour continuer à papoter : je risque à terme de devoir réintroduire
> le Recurring_break_engraver et la variable bars-per-line, mais pour
> des raisons techniques. (Pour ceux qui ne suivent pas : Vincent m'a
> déconseillé de rendre les \break automatiques, en disant qu'il fallait
> bien que la personne entre la chaise et le clavier serve à quelque chose :-)
> Pourquoi ? Supposons que l'utilisateur cherche à créer une grille avec
> 8 cases par ligne (oui je sais que tu ne le recommandes pas ; par contre
> je vois que le Baudoin le fait, j'imagine que c'est le cas pour certains).
> Il faut alors ajuster la hauteur des cases pour éviter qu'elles ne
> soient complètement distordues à cause de la largeur réduite. Pour
> l'instant, je laisse l'utilisateur le faire avec \magnifyStaff et
> \override GridChordName.font-size = ... Je ne détesterais pas que
> ce soit automatique. Or, l'information qui provient des \break est
> (en gros) déterminante au moment du calcul des sauts de ligne et
> après. Problème : la hauteur des cases doit être connue avant les
> sauts de ligne, car elle est nécessaire pour estimer combien de
> systèmes tiendront sur une page. Résultat, les sauts de ligne dépendent
> de la hauteur des cases et la hauteur des cases dépend des sauts
> de ligne. D'où l'idée d'une propriété qui puisse être lue avant
> les sauts de ligne.
> 
> Pour l'instant, je m'occupe d'un patch plus modeste qui ne fait pas
> cela. D'ailleurs, je n'exclus pas de rendre ce Recurring_break_engraver
> plus général pour lui donner le même genre de fonctionnalité que
> tous les snippets qui circulent sur les listes qui permettent de
> mettre des \break automatiques toutes les n mesures, ou bien d'écrire
> #'((4 5 4) (5 6 5)) pour avoir deux pages avec respectivement
> 3 systèmes de 4, 5 et 4 mesures et 3 systèmes de 5, 6, 5 mesures, ...
> 
> Bref : du boulot en perspective.

Bonjour à tous et surtout à Jean,

Ce que tu écris ci-dessus est (presque) du chinois pour moi. Pourtant je
suis avec attention et je me dis que tu as assimilé toutes ces commandes
comme si c'était de la roupie de sansonnet ! (oui, je sais, cette
expression est obsolète, comme moi !)

Néanmoins, je ne peux que te féliciter de toute l'aide que tu apportes à
toutes les demandes sans le moindre problème et en toute modestie.

Peut être nous rencontrerons nous à l'occasion du prochain café Lily (je
suis dans le sud de la Drôme. Je n'ai rien à dire mais beaucoup à
apprendre, donc, si ça se trouve, je ferai le déplacement au moins pour
écouter. Je prendrai un cahier pour prendre des notes ! :-)

Cordialement

-- 
JJG
Drôme provençale



reply via email to

[Prev in Thread] Current Thread [Next in Thread]