This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-04-11
Channels
- # aws (6)
- # beginners (167)
- # cider (41)
- # cljs-dev (6)
- # cljsrn (3)
- # clojure (399)
- # clojure-dusseldorf (1)
- # clojure-nl (2)
- # clojure-spec (3)
- # clojure-uk (47)
- # clojurescript (16)
- # core-async (8)
- # cursive (56)
- # datomic (14)
- # devcards (1)
- # docs (2)
- # duct (2)
- # editors (3)
- # emacs (3)
- # fulcro (178)
- # graphql (10)
- # off-topic (107)
- # onyx (7)
- # pedestal (21)
- # planck (13)
- # re-frame (58)
- # reagent (76)
- # ring-swagger (3)
- # shadow-cljs (85)
- # slack-help (2)
- # sql (1)
- # tools-deps (11)
- # uncomplicate (5)
- # vim (24)
- # yada (4)
Hello, I just upgraded to cider 0.17.0 and noticed that the cider-cljs-lein-repl
variable is deprecated/obsolete now. I used this variable to start a custom ClojureScript REPL. It looks like I can't customize this anymore and the only options I have to start a ClojureScript REPL are the ones defined in cider-cljs-repl-types
. Could we restore the previous behaviour and add something like a "Custom" ClojureScript REPL type to cider-cljs-repl-types
and make this type of REPL configurable with a variable like cider-custom-cljs-init-form
again?
@r0man you can add your own commands by:
(add-to-list 'cider-cljs-repl-types '("Shadow CLJS" "(do (shadow.cljs.devtools.server/start!) (shadow.cljs.devtools.api/watch :app) (shadow.cljs.devtools.api/nrepl-select :app))" nil))
Which is actually pretty awesome you can create as many options as you like
@mitchelkuijpers yes I thought about this. But wasn't sure how to do this with .dir-locals.el
. I was using a .dir-locals.el
file checked into my project and I could just jack-in.
Yes that is exactly what I have hold on
((nil . ((projectile-project-type . lein-test)
(eval . (progn
(require 'cider)
(add-to-list 'cider-cljs-repl-types '("Shadow CLJS" "(do (shadow.cljs.devtools.server/start!) (shadow.cljs.devtools.api/watch :app) (shadow.cljs.devtools.api/nrepl-select :app))" nil))
(setq projectile-create-missing-test-files t))))))
No problem at all I got this from @bozhidar
looks like clojure-project-dir
got called more than 200 times in less than 40 keystrokes via cider--anchored-search-suppressed-forms
I'm quite interested in this, will I see it here https://github.com/clojure-emacs/cider/issues?q=is%3Aopen+is%3Aissue
But it seems that your hunch is correct and this has something to do with the font-locking of reader conditionals.
today I got to use cider
again after inf-clojure
land and woa, so many goodies 😄
Now that orchard
exists the only really big chunk of work is to sit down and write the low-level connection handling. After that’s done we’ll just add some connection-type dispatch for all commands and slowly start adding socket versions of the nREPL commands. At least this is how I’m envisioning the process.
It won’t happen overnight, but it’s not rocket science either - just a bit of boring extraction/abstraction cycles. 🙂
(I assume this is going to solve @bhauman’s problem as well, at least as a workaround)
Sounds like a good plan, actually probably less code then actually adding hooks and custom functions to my own inf-clojure.el conf file. The other interesting piece I have run against is how to detect that the socket repl (or any connection for that matter) has loaded/done the correct init stuff. In particular socket repls accept functions can do all sorts of stuff and I wonder if cider could generate them
Likely we’ll just add those to orchard
and inject it when starting a socket REPL. You’ll still need the supporting functionality anyways, so I don’t imagine how you can achieve anything more than basic evals without throwing in some tooling library in the mix.
like running lein and connecting with cider-connect?