[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: bug arranger.ly et pitchedTrill
From: |
Gilles Thibault |
Subject: |
Re: bug arranger.ly et pitchedTrill |
Date: |
Thu, 13 May 2021 09:42:05 +0200 |
User-agent: |
Webmail Free/1.3.3 |
Le 2021-05-12 23:41, Jean Abou Samra a écrit :
Le 12/05/2021 à 23:18, Gilles Thibault a écrit :
Gilles, voudrais-tu proposer un patch ? Jette un œil à
http://lilypond.org/doc/v2.23/Documentation/contributor/working-with-source-code
pour savoir comment faire.
Hum, j'ai (péniblement) réussi à cloner le répertoire Lilypond.
Parfait.
Faut-il que je crée un "fork" maintenant ? Ils disent dans l'aide que
ce n'est pas utile ! Je ne risque pas de mettre le bazar ?
En effet, c'est comme cela qu'il faut procéder tant
que tu n'a pas le droit d'écriture sur le dépôt principal
(qui est accordé après certain nombre de contributions).
Un fork est justement une copie qui n'appartient qu'à toi,
donc tu ne risques pas de mettre le bazar dans quoi que
ce soit.
Rah, au moment où je commençais à comprendre git, je m'aperçois que
music-map a changé d'implémentation dans la 2.23.
C'est maintenant :
%%%%%%%%
(define-public (music-selective-map descend? function music)
"Apply @var{function} recursively to @var{music}, but refrain
from mapping subexpressions of music that does not satisfy
@var{descend?}."
(if (descend? music)
(let ((es (ly:music-property music 'elements))
(e (ly:music-property music 'element)))
(if (pair? es)
(set! (ly:music-property music 'elements)
(map (lambda (y)
(music-selective-map descend? function y))
es)))
(if (ly:music? e)
(set! (ly:music-property music 'element)
(music-selective-map descend? function e)))))
(recompute-music-length (function music)))
(define-public (music-map function music)
"Apply @var{function} to @var{music} and all of the music it contains.
First it recurses over the children, then the function is applied to
@var{music}."
(music-selective-map ly:music? function music))
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Il n'y est toujours pas question d'articulations donc la nouvelle
implémentation serait le code ci-dessous, mais je ne peux rien tester
(je ne souhaite pas passer à la 2.23). En particulier cette version a
très bien pu changé la structure des notes et des silences et mis par
exemple les articulations dans leur propriétés 'elements qui pour le
moment est vide '().
Dans 2.22
\displayMusic { c'2-> }
donne
(make-music
'SequentialMusic
'elements
(list (make-music
'NoteEvent
'articulations
(list (make-music
'ArticulationEvent
'midi-extra-velocity
20
'articulation-type
"accent"))
'duration
(ly:make-duration 1)
'pitch
(ly:make-pitch 0 0))))
C'est toujours le cas dans 2.23 ?
%% Proposition de patch %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
(define-public (music-selective-map descend? function music)
"Apply @var{function} recursively to @var{music}, but refrain
from mapping subexpressions of music that does not satisfy
@var{descend?}."
(if (descend? music)
(let ((es (ly:music-property music 'elements))
(as (ly:music-property music 'articulations))
(e (ly:music-property music 'element)))
(if (pair? es)
(set! (ly:music-property music 'elements)
(map (lambda (y)
(music-selective-map descend? function y))
es)))
(if (pair? as)
(set! (ly:music-property music 'elements)
(map (lambda (y)
(music-selective-map descend? function y))
as)))
(if (ly:music? e)
(set! (ly:music-property music 'element)
(music-selective-map descend? function e)))))
(recompute-music-length (function music)))
(define-public (music-map function music)
"Apply @var{function} to @var{music} and all of the music it contains.
First it recurses over the children, then the function is applied to
@var{music}."
(music-selective-map ly:music? function music))
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
--
Gilles
- bug arranger.ly et pitchedTrill, Clement Caillol, 2021/05/10
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/11
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/12
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/12
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/12
- Re: bug arranger.ly et pitchedTrill,
Gilles Thibault <=
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/13
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/13
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/15
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/15
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/15
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/15
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/19
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/23
- Re: bug arranger.ly et pitchedTrill, Jean Abou Samra, 2021/05/23
- Re: bug arranger.ly et pitchedTrill, Gilles Thibault, 2021/05/23