[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Automatic octaves
From: |
David Kastrup |
Subject: |
Re: Automatic octaves |
Date: |
Fri, 10 Jan 2014 18:19:26 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.3.50 (gnu/linux) |
Daniel Rosen <address@hidden> writes:
>> -----Original Message-----
>> From: David Kastrup [mailto:address@hidden
>> Sent: Friday, January 10, 2014 11:31 AM
>> To: Daniel Rosen
>> Cc: Eluze; address@hidden
>> Subject: Re: Automatic octaves
>>
>> You could use dak's most elegant make-relative macro...
>>
>> myoctavate =
>> #(define-music-function (parser location music) (ly:music?)
>> (make-relative (music) music
>> #{ \context Bottom << $music \transpose c c' $music >> #}))
>>
>> \relative { \myoctavate { a b c d } e f g a }
>
> That gets me the attached output.
Sick. But you'll get something similar with
\relative { { << { a b c d } >> } e f g a }
The \context Bottom helps to avoid the effect in the macro itself but
does not manage to extent its effect beyond itself. I don't have
anything to offer that would work better, so you just have to use
explicit contexts, like
\relative \new Voice { \myoctavate { a b c d } e f g a }
--
David Kastrup
- RE: Automatic octaves, (continued)
- Re: Automatic octaves, David Kastrup, 2014/01/10
- RE: Automatic octaves, Daniel Rosen, 2014/01/10
- Re: Automatic octaves,
David Kastrup <=
- RE: Automatic octaves, Daniel Rosen, 2014/01/10
- Re: Automatic octaves, David Kastrup, 2014/01/11
- Re: Automatic octaves, Kieren MacMillan, 2014/01/11