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

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

Re: Répétition «octave en accord»


From: Gilles Thibault
Subject: Re: Répétition «octave en accord»
Date: Mon, 09 Jul 2018 23:09:28 +0200
User-agent: Webmail Free/1.3.3


%%
\version "2.19.65"
music = \relative { c'4-. d-. r g( f e f g) <e g c>1-> }
\new Voice << \music \transpose c c' \music >>
%%


Pour la fonction correspondante, ça donnerait (en reprenant le nom de la fonction du snippet http://lsr.di.unimi.it/LSR/Item?id=445) :

%%

music = \relative { c'4-. d-. r g( f e f g) <e g c>1-> }

makeOctaves = #(define-music-function (parser location arg mus) (integer? ly:music?)
  (let ((p1 (ly:make-pitch 0 0 0))
        (p2 (ly:make-pitch arg 0 0)))
    #{ << $mus \transpose $p1 $p2 $mus >> #}))

\new Voice \makeOctaves #1 \music
\new Voice \makeOctaves #-1 \music

%%

Si on préfère tout en scheme (légérement plus court ici)

%%

makeOctaves = #(define-music-function (parser location arg mus) (integer? ly:music?)
  (make-simultaneous-music (list
     mus
     (ly:music-transpose (ly:music-deep-copy mus)
                         (ly:make-pitch arg 0 0)))))


\new Voice \makeOctaves #1 \music
\new Voice \makeOctaves #-1 \music

%%

--
Gilles



reply via email to

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