Joseph Wakeling wrote:
This setup is aimed allow for a full arrow quarter-tone notation with
arrows being preserved across all regular transpositions


Suppose we use arrow notation to represent some just-intonation scheme, in 
which the 'up-arrow' alterations are some odd fraction :
NATURAL       0
NATURAL-RAISE  2/9
SHARP-LOWER 1/2 - 2/9
SHARP-RAISE 1/2  + 2/9

Transpositions can general a very large number of net alterations.  We could 
adapt the \naturalizeMusic function from the manual into something that 
*rounds* the result to the nearest representable pitch (the function 
\enharmonicReduce in the attached file).
The extra bit of code for to the tuning scheme above is :
   (let ((o (ly:pitch-octave p))
         (a (ly:pitch-alteration p))
         (n (ly:pitch-notename p)))
   [... the usual conversions like cisis to d ...]
     ;;
     ;; for use with arrowed alteration glyphs, defined only for
     ;; values of a that are +/-1/2, or +/-1/2 +/- 2/9
     ;;
     (let ((semi (* (round (/ a 1/2)) 1/2)))
       (set! a (+ semi (* (round (/ (- a semi) 2/9)) 2/9))))
     (ly:make-pitch o n a)))

This rounding destroys information, so we apply it as the last operation before 
printing.
\score {{
    #(set-accidental-style 'dodecaphonic)
    \time 3/2
    \enharmonicReduce \transpose d beseh { \quartertonephrase }
}}

Attachment: arrow2.ly
Description: Binary data

<<attachment: arrow2.png>>

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

Reply via email to