This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
- # announcements (4)
- # architecture (1)
- # beginners (113)
- # boot (17)
- # calva (40)
- # cider (9)
- # clara (1)
- # cljs-dev (21)
- # cljsrn (21)
- # clojure (47)
- # clojure-dev (8)
- # clojure-europe (2)
- # clojure-italy (46)
- # clojure-nl (10)
- # clojure-spec (1)
- # clojure-turkiye (1)
- # clojure-uk (46)
- # clojurescript (102)
- # core-async (21)
- # cursive (35)
- # data-science (1)
- # datomic (7)
- # emacs (2)
- # graphql (1)
- # lumo (15)
- # nrepl (4)
- # nyc (1)
- # off-topic (5)
- # overtone (3)
- # pathom (10)
- # quil (6)
- # re-frame (30)
- # reagent (7)
- # reitit (33)
- # rewrite-clj (1)
- # shadow-cljs (37)
- # spacemacs (73)
- # test-check (3)
- # testing (2)
- # vim (59)
hi! i’m giving vscode and calva a spin, and i was wondering as a long time vim user, how to customize a few of the calva-paredit keyboard bindings to be similar to vim-sexp (https://github.com/guns/vim-sexp) / vim-sexp-mappings-for-regular-people (https://github.com/tpope/vim-sexp-mappings-for-regular-people)?
and also adjusted the calva setup based on reading this: https://github.com/BetterThanTomorrow/calva/wiki/Using-with-VIM-extension
@pez Just saw Atlassian's announcement of their new VS Code extension that brings JIRA and BitBucket directly into the editor and it made me think about trying VS Code and Calva again... I'm on Atom/Chlorine, which I use because it works with a bare Socket REPL and requires no dev dependencies (although it works better with Compliment added). Looks like Calva requires CIDER/nREPL as deps on the server side (for Clojure) since you're still relying on the user starting the REPL?
Do you think Calva would ever support bare Socket REPLs / prepl or is it always going to require CIDER/nREPL?
@seancorfield: there is no decision about not supporting bare Socket, rather a matter of bandwidth. But, yeah, there’s nothing planned either. However, we (well, right now it is just I who have the time) are working with making Calva inject the dependencies it needs (aka jack-in) so as long as you are not on self hosted ClojureScript I think you should be able to use Calva anyway. I posted a preview build of Calva 2, with jack-in, yesterday. Scroll up, if you like to try that. I included some info on the most ugly warts in the upload.
If you are using Figwheel Main, let me know and I can post a build which supports that better.
@idas: afaik, the key binding mechanism of vscodevim is pretty awesome so you should be able to do the remapping. No clue on how you do it though, but if you do it, please update that wiki page with your findings and any json stuff you produce. 😍
My workflow today is to start Cognitect's REBL with my project's dependencies and a JVM option to start a Socket REPL, then connect Atom/Chlorine to that. But I do also connect Atom/Chlorine to live, running processes via a Socket REPL too.
We do not have nREPL anywhere as a dependency. Chlorine uses unrepl to inject some code over the wire (to start the secondary "control" Socket REPL). I use Compliment only when I need it.
Calva can’t inject stuff into a running process yet, anyway, it can only start things with the dependencies it needs injected.
My ideal tooling wouldn't even inject the unrepl blob, to be honest. It would do everything via Socket REPL and prepl, with no additional dependencies required.
Anyways, I didn't really want to stir anything up -- I was mostly dropping by to see what plans, if any, Calva had for bare Socket REPL support.
I don't want an editor/tooling to inject things into live, running processes -- especially production processes.
No plans, unfortunately. But hopefully someone will show up with the time and passion for it. I’d love to be able to support self hosted cljs.
What would be the problem with “nrepl over bare socket” that is not there with “editor over bare socket”?
And would it then make the Socket REPL unusable or will it spawn a new Socket REPL to communicate with?
It will upgrade the connection. As far as I'm aware it should not introduce instability for other socket repls.
Is there a repo/branch I can take a look at to see exactly how that is going to work?
(I'm inherently very, very suspicious of nREPL and CIDER after past experiences)
I see an
injection branch in
nrepl's repo with commits by Christophe... I'll keep an eye on it...
I'll also continue to keep an eye on this channel via the mirror into Zulip so I can keep track of Calva's development. I recommend Calva to anyone I see talking about VS Code 🙂