lilypond-user
[Top][All Lists]
Advanced

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

Re: scheme function returning two scores


From: Gianmaria Lari
Subject: Re: scheme function returning two scores
Date: Sun, 25 Feb 2018 13:26:37 +0100

On 25 February 2018 at 13:15, David Kastrup <address@hidden> wrote:
Gianmaria Lari <address@hidden> writes:

> Because lilypond "doesn't expect" to return more than one score I tried to
> put the call to my function returning the score inside a \book. But this
> also does not work and I get this error:
>
> This is my code:
>
> \version "2.19.81"
> myScore = #(define-scheme-function (music) (ly:music?) #{
>     \score { $music \layout{} }
>     \score { \unfoldRepeats $music \midi{}}
>   }
> #})

Where is the book you are purporting to return?

First thing: I made another mistake in the code I copied. This is the code I wanted to send:

\version "2.19.81"

myScore = #(define-scheme-function (music) (ly:music?) #{
    \score { $music \layout{} }
    \score { \unfoldRepeats $music \midi{}}  
#} )

\book {
 \myScore {\repeat percent 2 {c' d' e' f'}} 
 \myScore {\repeat percent 2 {g c' c' c'}}
}

Second thing: No, I didn't return a book, I return scores inside a book. The reason is that I don't know how many call to myscore I will need so I thought that I have to put it "externally". I don't know if I'm clear.

BUT I also tried to do this:

\version "2.19.81"

myScore = #(define-scheme-function (music) (ly:music?) #{
  \book {
    \score { $music \layout{} }
    \score { \unfoldRepeats $music \midi{}}
  } #} )

\myScore {\repeat percent 2 {c' d' e' f'}}
\myScore {\repeat percent 2 {g c' c' c'}}

This would create multiple book inside a single file. It looked to me that it was not the way to go.



reply via email to

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