bug-lilypond
[Top][All Lists]
Advanced

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

Re: Wrong type argument


From: James
Subject: Re: Wrong type argument
Date: Wed, 03 Sep 2014 08:17:34 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.0

On 02/09/14 21:58, Thomas Morley wrote:
> 2014-09-02 12:44 GMT+02:00 MING TSANG <address@hidden>:
>> James & Phil:
>> I comment out line 421 which call solfege-engravers - both versions run ok.
>> Un-comment out line 421 - v2.19.12 run ok; but fails with v2.19.13.
>> I don't know scheme. I cannot not begin debug.
>> Appreciated if you can help.
>> Emmanuel,
>> Ming.
> 
> It's more an issue with NullVoice, than with the solfege-engraver.
> In NullVoice the following line returns an empty list:
>               (tonic-pitch (ly:context-property context 'tonic))
> Seems 'tonic is not "known" in NullVoice.
> 
> Can't help more, I didn't follow the discussion about NullVoice close
> enough and my computer is still broken, acting as a guest on another
> computer (until I've the money to buy a new one ...)
> 
> Nevertheless, here a boiled down code
> (The engraver will cause some terminal-output, all other functionality
> is commented)
> 
> 
> \version "2.19.13"    % work on v2.19.12 but failes with v2.19.13
> 
> #(define numR➀ '("➀" "➁" "➂" "➃" "➄" "➅" "➆"))
> 
> #(define (solfege-engraver lst dir)
>    (make-engraver
>      (acknowledgers
>       ((note-head-interface engraver grob source)
>        (let* (
>               (context (ly:translator-context engraver))
>               (tonic-pitch (ly:context-property context 'tonic))
> ;              (tonic-index (ly:pitch-notename tonic-pitch))
>               (event (ly:grob-property grob 'cause))
>               (event-copy (ly:event-deep-copy event))
>               (grob-pitch (ly:event-property event 'pitch))
>               (grob-index (ly:pitch-notename grob-pitch))
> ;              (delta (modulo (- grob-index tonic-index) 7))
> ;              (name (list-ref lst delta))
> ;              (newgrob (ly:engraver-make-grob engraver 'TextScript 
> event-copy))
>               )
> 
>               (newline)
>               (display tonic-pitch)
> 
>          ;; clear 'tweaks for newgrob
>        ;;  (ly:event-set-property! event-copy 'tweaks '())
> ;         (if (string= name "Hb")  (set! name "B"))
>          ;; Give newgrob 'outside-staff-priority depending on
>          ;; grob 'staff-position
> ;         (set! (ly:grob-property newgrob 'outside-staff-priority)
> ;               (+ (ly:grob-property newgrob 'outside-staff-priority)
> ;                  (* dir (ly:grob-property grob 'staff-position))))
> ;         (set! (ly:grob-property newgrob 'text) name)
> ;         (set! (ly:grob-property newgrob 'direction) dir)
>          )))))
> 
> 
> \layout {
>   \context {
>     \NullVoice
>     \consists #(solfege-engraver numR➀ UP)
>   }
> }
> 
> \new Staff
>   \new NullVoice
>   { d'4 }
> 
> 
> 
> Cheers,
>   Harm
> 


Is it because NullVoice is has now been moved in terms of its context
'position' (if that is the right word)?

http://git.savannah.gnu.org/gitweb/?p=lilypond.git;a=commit;h=fc8c2d680464130af497c386ed5f0033d3fd7470

(ccing - bug in case this is a bug or not).

James





reply via email to

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