Amazing, thank you! чт, 2 апр. 2020 г. в 01:12, Aaron Hill <lilyp...@hillvisions.com>:
> On 2020-04-01 3:04 pm, Павел Буданов wrote: > > Hello, I'm newbie in scheme. I want to write simple function to > > octavize > > melody, but something doesn't works... > > > > > > \version "2.20.0" > > octavize = #(define-music-function > > (parser location music) (ly:music?) > > #{ << #music \transpose c c' #music >> #}) > > > > music = { c' d' e' f' } > > > > \markup "Need:" > > \new Voice { << \music \transpose c c' \music >> } > > \markup "Got:" > > \new Voice { \octavize \music } > > This is a case where the $ is needed over #. The \transpose ... #music > is changing the value which affects both usage of #music. Using $music > in place of either (or both) #music should fix the issue. > > Also, parser and location are no longer required to be specified as > arguments, so you can shorten up the function definition a bit. > > > -- Aaron Hill > >