lilypond-user
[Top][All Lists]
Advanced

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

"Unbound variable" error in Scheme code after switch to 2.17


From: Robert Schmaus
Subject: "Unbound variable" error in Scheme code after switch to 2.17
Date: Thu, 29 Aug 2013 23:07:13 +0200
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:17.0) Gecko/20130801 Thunderbird/17.0.8

Hi Ponderers,

I'm usually working with the LilyJazz macros, provided by Thorsten Hämmerle. Up till now, I've used them with Lilypond v2.16 and no problems at all.

Recently, I wanted to try it in connection with Lilypond v2.17 (latest build, 25ish). I updated the ly file containing the music as well as the LilyJAZZ.ily file. Compiling now gives me the following error:

Parsing...
Interpreting music...[8][16]
Preprocessing graphical objects ... LilyJAZZ.ily:184:16:
In expression (key-signature-interface::alteration-position (car alt) (cdr alt) ...): LilyJAZZ.ily:184:16: Unbound variable: key-signature-interface::alteration-position

This refers the following code, more precisely, the 4th last line of that macro. Unfortunately, I don't speak Scheme - can anyone tell me how to fix this?

Thanks!
Robert


#(define (jazz-keysig grob)
  "stencil: jazz key signature (including cancellation)"
  (let* ((altlist (ly:grob-property grob 'alteration-alist))
    (c0pos (ly:grob-property grob 'c0-position))
    (keysig-stencil '()))
    (for-each (lambda (alt)
(let* ((alteration (if (grob::has-interface grob 'key-cancellation-interface) 0 (cdr alt))) (glyphname (assoc-get alteration jazz-alteration-glyph-name-alist ""))
         (padding (cond
           ((< alteration 0) 0.25)  ; any kind of flat
           ((= alteration 0) 0.05)    ;  natural
           ((< alteration 1) 0.1)    ; sharp (less than double sharp)
           (else -0.4)))                ; double sharp

(ypos (key-signature-interface::alteration-position (car alt) (cdr alt) c0pos))

(acc-stencil (grob-interpret-markup grob (markup #:raise (/ ypos 2) #:jazzglyph glyphname)))) (set! keysig-stencil (ly:stencil-combine-at-edge acc-stencil X RIGHT keysig-stencil padding)))) altlist)
    keysig-stencil))





reply via email to

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