The # switches from LilyPond to Scheme. This means that once you are in Scheme
you don't need it again.
#(colorNote #offset)
should read
#(colorNote offset)
HTH
Urs
Am 20. September 2016 19:12:26 MESZ, schrieb PMA <armst...@eskimo.com>:
>Hi Lilypond Gurus!
>
>I need help, when you can spare the time, to get an already-
>working Lilypond music function to call my just-added Scheme
>routine.
>
>This Scheme procedure works when called directly from Guile:
>entering "(colorNote -1)" get output "red".
>--------------------------------
>(define (colorNote n)
> (cond ((eq? (- n) 1) 'red )
> ((eq? (- n) 2) 'blue)))
>--------------------------------
>
>But in trying to evoke the procedure, the following Lilypond
>function hits two snags: it apparently doesn't see colorNote
>at all, and even if it did, it still would not convert the
>returned "red" to "#red". (I've omitted irrelevant lines.)
>----------------------------------------------------------------
>FS =
>#(define-music-function (parser location offset) (number?)
> #{
> \override NoteHead.font-size = #offset % This line works.
> %\override NoteHead.color = #red % This line worked.
> \override NoteHead.color = #(colorNote #offset) % *ERRORS*.
> #})
>----------------------------------------------------------------
>
>I suspect that a fix here is easy. But it's beyond my naive
>struggles. I'd appreciate any suggestions.
>
>Pete
>
>
>_______________________________________________
>lilypond-user mailing list
>lilypond-user@gnu.org
>https://lists.gnu.org/mailman/listinfo/lilypond-user
--
Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user