Fork me on GitHub

hi @cfleming - I just wanted to check in re a thing I asked about here a couple months ago (but which now is lost to the slack infinity hole) - it related to the lein-v plugin which requires prep tasks to execute. with cursive, they don't appear to execute, so nothing (other than typing) works in cursive for this project. The config and the error message are included in separate snippets below


Hi @U06MD7077, sorry, I haven’t looked at this. Could you create an issue with that info, and that will hopefully stop it falling through the cracks?


Sure will do - thanks!


Is there a way to force Cursive to recognize a symbol as a macro? ... I'm using the Pedestal library, and calling the "defbefore" macro -- which is itself defined by a call to another macro. Cursive warns "defbefore cannot be resolved," but it does not show a lightbulb for the "customize macro resolution" intention.


@UKZHCSQ7M What does the definition of defbbefore look like? You said it was created using another macro?


I suspect it would work for cursive to treat it as a "def"-type macro (... although I'm new at this, so my intuition isn't great)


@UKZHCSQ7M Hmm, unfortunately no - if you resolve defsimpleinterceptordef as def it won’t work, because it doesn’t define a var called before, it creates one called defbefore.


defsimpleinterceptordef is actually getting called to define a macro called defbefore, and I think the resulting defbefore macro could be resolved as def


defbefore is what gets called from client code, so that's the one it would be nice for Cursive to handle better


... but defbefore isn't even defined until defsimpleinterceptordef gets called


I'm guessing stub generation would solve this, but Cursive only does that for specific namespaces


Right, so if you don’t care about actually using defsimpleinterceptordef, then you might be able to hack defbefore.


Ugh, actually, no - I don’t think that will work - you still need to have defbefore defined somewhere.


I’ll look at adding support for Pedestal, it should be pretty straightforward and it’s fairly widely used.

🎉 1