Fork me on GitHub

Just trying out the cursive socket repl and nrepl with arcadia and both appear to fail to connect?

Connecting to remote Socket REPL...
Could not connect to localhost:37220: Connection refused: connect
The funny thing is that the socket repl fails to connect (can connect via telnet on that same port) whereas the nrepl just hangs here:
Connecting to remote nREPL server...
Arcadia does ack a successful connection on it's side however...


Right now, for both of those REPL types Cursive assumes there’s a Clojure system at the other end. That’s not true for Arcadia, so all bets are pretty much off unfortunately. I’m going to add a pure streaming socket REPL, but it’s not there yet. In the meantime, you could try a clojure.main REPL in Cursive and then connect over


Oh ok, that's an option 😃...


@U0567Q30W This might be crazy, but is there someway that I can get cursive's resolution to work for arcadia? Other than writing a pass through layer of functions?


@U0JUM502E There’s an old comment on an issue about this - unfortunately nothing has changed in the meantime:


@U0567Q30W There might be some changes on that front based on Rider, but I can completely understand not wanting to go down that rabbithole =)...


Yes, supporting Rider would be basically a total rewrite of Cursive, since it works in a very different way to other IntelliJ plugins (more like a LSP).


My colleague sees nonbreaking spaces as NSBP in editor windows. I see them as a regular space. Does anyone know how I can get the same result as him?


Is that possibly the font he’s using?


Hmmmm maybe. I have a suspicion that it’s just because I’m not on the very tip OS/Intellij/Cursive-wise, and he is.


I’ll check the font thing though, thanks!


It wasn’t the font, it seems. Gotta try updating my OS/IntelliJ/Cursive next.


I tried turning on Editor -> General -> Appearance -> Show Whitespaces (and updating Intellij and Cursive), but still no result.


When running a local REPL 'Run Configuration' has an option 'Run with Deps' that accepts alias, alias,... Thus the REPL's classpath can be picked up from aliases in deps.edn. I'm now trying to use the remote REPL instead, which is connecting to an already existing Shadow-cljs nREPL. This might be a shadow-cljs question, and I've read the docs there but they haven't helped me. How should I specify aliases (and hence the classpath of the development server/REPL) now that the remote 'Run Configuration' doesn't have a text-box to write them in?


@cjmurphy you are connecting remotely. so the classpath of the process you are connected to applies, however that was started. you cannot adjust the classpath when connecting remotely.


The already running server is this: "shadow-cljs - nREPL server started on port 9000". How do you specify the classpath for it? That is what I was hoping to find in the shadow-cljs docs. Somewhere there has to be a list of deps aliases or paths that make up the classpath for what I simply see as 'the server'.


or just run via clj directly?


I don't really think that there is anything but I don't have a clue what would be happening here


I'm going to assume that the classpath is picked up from the aliases checked on 'Clojure Deps Projects', and has nothing to do with the Shadow nREPL server.

João Galrito15:09:48

when using Cursive, do I only get method name resolution if I import the corresponding classes?


No, you’ll get it sometimes even if the class is not imported, but Cursive will need to know what the type is. So: (-> (ArrayList.) (.iterator) (.next)) will give you completion on .next because Cursive knows the type is Iterator.

João Galrito14:09:27

ok, makes sense

João Galrito23:09:39

I think i did something and now Cursive is not auto aligning forms (if I move the first line of a form to the line below, the other lines don't move to the correct indentation)


That sounds like parinfer - have you disabled that, perhaps?

João Galrito14:09:54

no, I'm using parinfer


Can you share a screen capture of what you’re seeing?

João Galrito23:09:22

or maybe I dreamt it did that