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

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

[Résolu ?] [Scheme] Voix séparées ou ensemble - suite


From: Olivier Miakinen
Subject: [Résolu ?] [Scheme] Voix séparées ou ensemble - suite
Date: Wed, 15 Nov 2017 01:15:48 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

Le 14/11/2017 22:53, j'écrivais :
>>
>> [...] je me demande s'il n'y a pas moyen en Scheme de lui passer une
>> expression musicale et qu'il remplace cette expression en une série
>> de \skip de durée équivalente.
>> 
>> Par exemple, en lui passant { c''8 r f' r f'' r g' r }, il pourrait
>> retourner { s1 } ou (ce qui revient au même) { s8 s s s s s s s }.
> 
> En cherchant dans le répertoire scm, je crois que j'ai trouvé ce dont
> j'ai besoin dans le fichier music-functions.scm :
> 
> [...]
> 
> Mais c'est une fonction définie par define-public et non par
> define-music-function. Est-ce que je peux l'appeler directement
> depuis lilypond, ou bien est-ce que je dois l'enrober d'une
> manière ou d'une autre ?

Je pense que j'ai résolu mon petit problème, en tout cas ceci semble
fonctionner :

=====================================================================
\version "2.18.2"

silence = #(define-music-function
            (parser location musique) (ly:music?)
            (skip-of-length musique))

notes = { a'4 b'8. c''16 d''2 }

<<
  { \notes | \notes | \silence \notes | }
  \\
  { \notes | \silence \notes | \notes | }
>>
=====================================================================

De même qu'avec ça :

=====================================================================
silence = #(define-music-function
            (parser location musique) (ly:music?)
            #{
              #(skip-of-length musique)
            #})
=====================================================================





reply via email to

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