Thank you David,

I see you point. With \modalTranspose you can automatically change the notes that are within the range of the scale. But I change the notes based on visual inspection. In fact I colour all notes f and lower in red, so that it catch the eye immediately.

If I change a few successive notes I rather place no extra octave changing marks on the first pitch. ( the first f after \terts{ ) It is clear that the pitches after \terts{..} might need extra octave changing marks because they relate to the pith just before \terts{..} . So within \terts I want to know the absolute value of the g before \terts{...}

Tom

David Kastrup schreef op 13-12-2013 4:36:
David Kastrup <d...@gnu.org> writes:

Tom van der Hoeven <t...@vanderhoeven.biz> writes:

Suppose I have
music = \relative c'{c b a g     f e e f     g a b c}
my instrument is limited so it cannot play the pitch f end below
I have to raise  f e e f by a terts of an octave
Is there a function shift or can it be made such that

music = \relative c'{c b a g     \terts{f e e f}     g a b c}

is equivalent to

\relative c'{c b a g     a g g a     g a b c}

if you use :
terts =  #(define-music-function (parser location ploep) (ly:music?)
#{ \transpose c e \relative c' $ploep #})

the c' after \relative should actualy be the last-pitch (in the example g)
Help will be appreciated
The current development version has a new definition of makerelative
allowing for

terts =  #(define-music-function (parser location ploep) (ly:music?)
   (make-relative (ploep) ploep
     #{ \transpose c e $ploep #}))
Actually, looking at the pitches you ask for, you'll rather need
\modalTranspose here.



_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to