Subject: Re: Travaux sur LilyPond pendant les fêtes de fin d'année

From: "[email-masked]" <[email-masked]>
Date: Thu, 10 Jan 2013 07:01:02 +0100

On 21 déc. 2012, at 14:03, [email-masked] wrote:

>> De: [email-masked]
>> À: "[email-masked] fr" <[email-masked]>
>> Envoyé: Vendredi 21 Décembre 2012 09:11:21
>> Objet: Travaux sur LilyPond pendant les fêtes de fin d'année
>> 
>> Salut,
>> 
>> J'ai deux vols transatlantiques à effectuer pendant les vacances de Noël et je vais
>> les remplir avec les divertissements habituels ainsi que des travaux (gratos) sur
>> LilyPond. Veuillez donc me faire parvenir :
>> 
>> 1) De nouvelles fonctionnalités que vous auriez souhaité voir dans LilyPond.
>> 2) Des bugs que je peux réparer.
>> 3) Des choses à relire (changements au code C++, Scheme, .ly, etc.).
>> 
>> J'essaierai d'être aussi efficace que possible pendant les vols.
> 
> Salut Mike,
> 

Salut Nicolas,

Faute de batterie, je n'ai pas pu travailler sur LilyPond autant que j'aurais voulu pendant mes vols :-/
J'ai quand même pu avancer sur quelques questions, ne serait-ce que pour donner quelques pistes utiles.

> - c'est compliqué d'indiquer où on veut voir apparaître une marque (au-dessus ou
> au-dessous du système, aligné à gauche ou à droite, doit apparaître en début ou en
> fin de ligne, etc.)
> 

Dans l'interface que tu proposes, il me semble qu'au lieu de changer le parseur, il suffit de créer des raccourcis du style :

rmDown = \once \override Score . RehearsalMark #'direction = #DOWN
rmStaffDown = \once \override Staff . RehearsalMark #'direction = #DOWN

et ainsi de suite pour d'autres \override et pour des \tweak afin de gérer de multiples \mark en même temps.

> - on ne peut pas avoir deux marques au même endroit, alors qu'on peut avoir besoin
> par exemple d'un signe segno en haut et un autre en bas, ou bien d'écrire "fine"
> à la fin d'une ligne et [autre chose] au début de la suivante, etc.

Dans lily/mark-engraver.cc, il suffit de ne plus utiliser ASSIGN_EVENT_ONCE et de remplacer mark_ev_ par un vecteur d'événements (vector<Stream_event *> mark_evs_, par exemple) dont chacun est traité par le biais d'une boucle dans process_music avant que ne le vecteur ne soit vidé en stop_translation_timestep. Je ne peux pas pour l'instant anticiper quelles conséquences ça entraînerait dans une vraie partition de musique, mais j'imagine que tu en as assez pour faire des expériences. Dis-moi si tu veux que j'écrive un patch qui fait tout ça.

> va placer une indication "fin" en dessous du système puis une indication "1er couplet"
> en haut, et si un saut de ligne arrive à cet endroit, "fin" sera au bout de la première
> ligne, et "1er couplet" au début de la suivante.
> 

Si tu changes le graveur selon les consignes ci-dessus, écris des raccourcis pour des \tweak et mets le graveur dans le contexte Staff, tu auras quelque chose qui fonctionne plus ou moins selon tes souhaits.

J'imagine que tu n'as pas beaucoup de temps pour faire tout ça donc n'hésites pas à revenir vers moi pour partager le travail.

Cordialement,
~Mike

---

From: "[email-masked]" <[email-masked]>
Date: Thu, 10 Jan 2013 07:04:06 +0100

On 21 déc. 2012, at 18:13, Dominique Faure <[email-masked]> wrote:

> Bonjour,
> 
> 2012/12/21 [email-masked] <[email-masked]>:
>> Salut,
>> 
>> J'ai deux vols transatlantiques à effectuer pendant les vacances de Noël et je vais les remplir avec les divertissements habituels ainsi que des travaux (gratos) sur LilyPond. Veuillez donc me faire parvenir :
>> 
> Charmante proposition.
> En guise "d'amuse-gueule" (ça ne devrait pas occuper au delà des iles
> anglo-normandes), je proposerai une petite mise à jour des diagrammes
> de doigtés pour instruments à vent avec l'ajout des flûtes à bec
> baroques et renaissances.
> 

Salut Dominique,

C'est tout à fait possible mais je n'ai pas eu suffisamment de temps cette fois-ci. Je m'en occuperai pendant les vacances scolaires en février.

~Mike