Eguile report templates -- another hurdle
Derek Atkins
warlord at MIT.EDU
Sun Feb 1 11:17:07 EST 2009
Hi,
Quoting Chris Dennis <cgdennis at btinternet.com>:
> Chris Dennis wrote:
>> Hello folks
>>
>> My project bring HTML templates to GnuCash reports is making good progress.
>>
>> But I've stumbled on another problem which requires expert knowledge of
>> GnuCash and/org Swig and/or Guile.
>>
>> My evaluated report code can access some Gnucash procedures such as
>> gnc:make-html-text, but others such as gncInvoiceGetBook remain 'unbound'.
>
> In fact the error message refers to 'gncinvoicegetbook' as being
> unbound, i.e. with the name in lower case. Is that relevant? Guile is
> supposed to be case-sensitive unless you tell it not to be.
Yes, that's DEFINITELY relevant. There is no symbol "gncinvoicegetbook"
so something is lower-casing the code.
> I can reproduce the problem with this bit of code:
>
> 8<--------------
> ;#!/usr/bin/guile
> (define s1 "(abcDEF \"23\")")
> (define (abcDEF x)
> (display (string-append "This is abcDEF called with " x "\n")))
> (with-input-from-string s1 (lambda () (local-eval (read)
> (the-environment))))
> (read-enable 'case-insensitive)
> (with-input-from-string s1 (lambda () (local-eval (read)
> (the-environment))))
> 8<--------------
>
> After setting read to be case insensitive, local-eval tries to call
> (abcdef) and can't find it.
>
> I can't find anywhere in the GnuCash code that turns on case-insensitivity.
>
> Does anyone have any idea why this would happen?
I do not offhand.. But you could always try:
(read-enable 'case-sensitive)
to force it...
-derek
--
Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory
Member, MIT Student Information Processing Board (SIPB)
URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH
warlord at MIT.EDU PGP key available
More information about the gnucash-devel
mailing list