I just found intern. The problem was using make-symbol, which makes an
uninterned symbol.

I'll polish the patch a bit and get back, sorry for using the list as a
rubber duck...

Cheers,
/Torbjörn

Den sön 13 apr. 2025 20.00Tor-björn Claesson <tclaes...@gmail.com> skrev:

> Hi again!
>
> I have been making slow progress, but also run into problems with
> arbitrary argument lists for the menus - making the
> !citation and !prefix things customizable.
>
> There is clearly something about elisp evaluation that I don't understand.
> I have problems in two places:
>
> The first is in setting up the transient scope, where the code produced by
> my macro looks just like the code I have working on my research machine,
> but when activating the menu calls (transient-setup 'org-cite-basic-follow
> nil nil :scope (list :prefix prefix :citation-object citation-object)), it
> complains that Lisp error: (void-variable :prefix)
>
> If I copy-paste the line the macro expands into:
> :scope (list :prefix prefix :citation-object citation-object)
> and replaces the code used to generate it in the org-menu-define macro, it
> works, but now I have trouble in org-menu--wrap-specification, which gets
> stuck after choosing an action.
>
> From the backtrace:
>   (let ((!prefix (plist-get (transient-scope) :prefix))
>          (!citation-object (plist-get (transient-scope)
> :citation-object)))
>       (org-cite-basic-goto !citation-object !prefix))
> fails where (plist-get (transient-scope) :prefix) complains because
> :prefix is a void-variable.
>
> I feel the two problems point to some lack of understanding on my part,
> and I would be very grateful for some pointers on how to proceed. Why is
> the literal :prefix different from the :prefix I generate with make-symbol?
>
> Cheers,
> Tor-björn
>

Reply via email to