@alexclear has joined the channel
I’m having trouble with @defthing[#:id ...]. When my id-expr does not produce a syntax object, I get this: datum->syntax: contract violation
expected: (or/c syntax? #f) But when I try a syntax object instead, it has no visible effect. I found no clear examples in the docs or racket source. Help?
Maybe I’m solving the wrong problem. I want to deftogether a few defthings that share a ~"variable"~ var name prefix: name-thing1 and name-thing2
@dedbox that might be a bug in scribble — that @defthing[#:id #'A B ....] will use A internally but render B
The docs seem to suggest A and B should be the other way around.
other way around?
I don’t understand
>If #:id id-expr is supplied, then the result of id-expr is used in place of id.
I understand that to mean, if A is supplied, then A is used in place of B.
Where I guess “is used” refers to “appears in the output”
okay, we basically agree (I looked at the implementation of defthing, and it uses the id in 2 places — but yeah if #:id is there, it sounds like it should be used in both those places)
Somehow, it’s being ignored for me. I’ll work out a minimal example.
wait 1 sec
and the #:id identifier doesn’t render, but that identifier seems to be getting used for links because when I run scribble --html foo.scrbl for the sample program, I get this warning: WARNING: no declared exporting libraries for definition
in: foo
Cool, thanks! I see the same output here.