Subject: Re: Transformer une note en scheme

From: Daniel Cartron <[email-masked]>
Date: Fri, 15 May 2015 15:47:32 +0200

Le jeudi 30 avril 2015, 14:43:53 Daniel Cartron a écrit :

Je me permet de faire remonter cette question, j'ai réussi à résoudre les 
autres questions du courrier initial, mais là je coince toujours...

> Comment peut-on ajouter une information de type (make-music 
> 'ContextSpeccedMusic à une note ? Je ne pense pas que ça fasse partie des 
> articulations, ce n'est pas que ce je lis avec displayMusic.
> 
> Donc voici un petit bout de code
> \relative c' {
>   \displayMusic {a1 \once \override TextScript #'extra-offset = #'(0 . 5)
>   c-\markup { "A" } d}
> } 
> 
> J'ai l'impression que le code suivant :
>           
>         (make-music
>           'ContextSpeccedMusic
>           'context-type
>           'Bottom
>           'element
>           (make-music
>             'OverrideProperty
>             'once
>             #t
>             'pop-first
>             #t
>             'grob-property-path
>             (list (quote extra-offset))
>             'grob-value
>             (cons 0 5)
>             'symbol
>             'TextScript))
> 
> est inséré avant la note et n'a rien à voir avec elle, est-ce exact ?
> 
> Donc comment puis-je ajouter ça dans
> 
>     (set! (ly:music-property mus-elt 'articulations)
>       (cons 
>         (make-music 'TextScriptEvent 
>           'direction mkp-dir
>           'text (markup (markup #:line (#:simple "A")))
>         )
>         (ly:music-property mus-elt 'articulations) 
>       )
>     )

-- 
Cordialement, Daniel Cartron
« Quand une idée est dans l'air, il faut se méfier. »
Alphonse Allais - À se tordre

---

From: Gilles <[email-masked]>
Date: Wed, 20 May 2015 21:25:52 +0200

>> articulations, ce n'est pas que ce je lis avec displayMusic.

A part transformer ta note en une séquence du genre
  { \override ...
    note
}
je vois pas.

Par exemple si tu as :
  { c d e }
et que tu veux un\override juste avant le ré, tu transforme le ré en
{ \override ...
    d
}

ce qui donnera :
  { c { \override ... d } e }

-- 
Gilles

---

From: Daniel Cartron <[email-masked]>
Date: Thu, 21 May 2015 10:48:47 +0200

> A part transformer ta note en une séquence du genre

Si toi tu ne vois pas je suis mal barré !...

On ne peut pas insérer (make-music .....) entre deux notes quand on traite une 
expression musicale ?

-- 
Cordialement, Daniel Cartron
« Les hommes sont toujours sincères. Ils changent de sincérité, voilà tout! »
Tristan Bernard

---

From: Gilles THIBAULT <[email-masked]>
Date: Fri, 22 May 2015 16:06:06 +0200

> On ne peut pas insérer (make-music .....) entre deux notes quand on traite
> une expression musicale ?
Si tu veux insérer des évenements à des endroits précis tu peux utiliser la 
fonction \insertMusic de "extractMusic.ly"
LSR : http://lsr.di.unimi.it/LSR/Item?id=542
doc pour \insertMusic ici :
   http://gillesth.free.fr/Lilypond/extractMusic/extractMusic-doc.pdf 

Autrement tu remplaces ta note (ou ton accord) par une séquence comprenant ce 
que tu veux insérer et la note.

-- 
Gilles

---

From: Daniel Cartron <[email-masked]>
Date: Sun, 24 May 2015 08:04:01 +0200

> fonction \insertMusic de "extractMusic.ly"

Ça ne me semble pas adapté ou plutôt complexe à utiliser dans mon code.

> Autrement tu remplaces ta note (ou ton accord) par une séquence comprenant
> ce  que tu veux insérer et la note.

Comme par exemple :
(ly:music-property note2 'articulations)))
(make-music 'SequentialMusic 'elements (list note note2))))

en fin de la page 
http://www.lilypond.org/doc/v2.18/Documentation/extending/doubling-a-note-with-slurs-_0028example_0029

en remplaçant note et note2 par ce que je veux. Enfin si j'ai bien compris. Je 
vais tester ça.

-- 
Cordialement, Daniel Cartron
« Il est dangereux d'être sincère, à moins d'être également stupide.  »
George Bernard Shaw - Bréviaire d'un révolutionnaires