This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-07-20
Channels
- # aleph (3)
- # beginners (14)
- # cider (70)
- # cljdoc (30)
- # cljs-dev (1)
- # cljsjs (6)
- # clojars (7)
- # clojure (88)
- # clojure-greece (1)
- # clojure-italy (3)
- # clojure-nl (17)
- # clojure-spec (1)
- # clojure-uk (54)
- # clojurescript (48)
- # code-reviews (2)
- # cursive (28)
- # datascript (3)
- # datomic (20)
- # docs (1)
- # emacs (16)
- # figwheel-main (17)
- # fulcro (13)
- # graphql (2)
- # hyperfiddle (2)
- # jobs (2)
- # nyc (1)
- # off-topic (39)
- # parinfer (1)
- # re-frame (37)
- # reagent (225)
- # remote-jobs (3)
- # ring (3)
- # ring-swagger (1)
- # shadow-cljs (110)
- # spacemacs (10)
- # spirituality-ethics (1)
- # test-check (3)
- # tools-deps (36)
- # uncomplicate (2)
- # vim (7)
@richiardiandrea It’s mentioned as a breaking change in the changelog, so I think we meant to do it. 😉
The idea was to put all the related ns keybindings under the same keymap, so people can find them easier. For a few releases we’ve been trying to reduce the epic amount of top-level keybindings and organize them better.
People will also notice that now all the commands to start CIDER are under C-c C-x
and after a few releases we’ll remove the legendary C-c M-j
and C-c M-c
.
Is there a variable to set for the custom cljs repl command in .dir-locals.el
?
@bozhidar You're removing C-c M-j
? 😧
but that code has changed quite a bit since i've last been in it and i didn't trace it very carefully
(defcustom cider-default-cljs-repl nil
"The default ClojureScript REPL to start.
This affects commands like `cider-jack-in-cljs'. Generally it's
intended to be set via .dir-locals.el for individual projects, as its
relatively unlikely you'd like to use the same type of REPL in each project
you're working on."
:type '(choice (const :tag "Nashorn" nashorn)
(const :tag "Figwheel" figwheel)
(const :tag "Node" node)
(const :tag "Weasel" weasel)
(const :tag "Boot" boot)
(const :tag "Shadow" shadow)
(const :tag "Custom" custom))
:group 'cider
:safe #'symbolp
:package-version '(cider . "0.17.0"))
I can set it to custom
, but I can't actually set the form that gets used. Unless I'm missing something?
Perhaps it can be more than just a symbol?
Ah, ok. Is there a good way to do that in .dir-locals.el
? (To append and not override)
with the key that you set as the cider-default-cljs-repl
above. I don't believe it has to be "Custom" it could be project name and then you make sure there's an init function in that list
you can eval things in dir-locals but i get a little lost in the syntax. alternatively you could just replace the entire list and not append it, just make it the sole list entry
Does this look right?
((nil . ((cider-default-cljs-repl . example)
(cider-cljs-repl-types . ((example "(start-example-cljs-repl)"))))))
I get confused by the ($a . $b)
and (($a $b))
syntax stuff.
it looks like it needs a function at the end that gets invoked to make sure everything is good to go. you can reuse one of the existing ones or just put a thunk that doesn't throw an error
here's mine but i think cider has drifted so this is out of date
((nil . ((cider-lein-global-options . "with-profile dev")
(cider-default-cljs-repl . figwheel))))
Hmm, it's prompting me for the ClojureScript REPL type now. 😕
The prompt lists all available types not just my custom added one which is weird, because if I inspect the cider-cljs-repl-types
var, it only has mine in it.
I guess it uses the global value instead of the buffer-local value.
try m-x hack-local-variables
i think i've seen times where it has been "slow" to see new dir locals and then starts working
Well, the dir local is working, because I see it when inspecting the variable; it just isn't set globally.
do people use flycheck + squiggly-clojure w/cider? just upgraded to cider 0.18-snapshot
and it breaks my setup due to this issue i believe https://github.com/clojure-emacs/squiggly-clojure/issues/54
I do use flycheck. I've moved back to cider 0.17 for now, though, because 0.18 is still snapshot & has been undergoing rapid change as bbatsov et al do a bunch of fixes & improvements.
cider-default-connection
became something else, I forget what though.
@eggsyntax how did you rollback? I assume you're not using package.el
?
Hmm, so I have cider-default-cljs-repl
set via .dir-locals.el
, and I can verify that it's set to what I'm expecting, but inside cider--update-cljs-type
, cider-default-cljs-repl
is nil
. Any ideas?
@mgrbyte I'm using spacemacs, I can give you the incantation for that if you are as well.
ah yeah, I used to have that, but found it got really annoying to ping-pong between updating my lein profiles when wanting to upgrade
@eggsyntax nah, it's cool. Using stock GNU emacs 26, have done the pinning thing before so I guess I'll just re-instate it for now
@eggsyntax thanks v. much btw :thumbsup:
@eggsyntax happen to know what version stanza I need for cider-nrepl
? I have currently have the following :repl
profile:
:repl {:dependencies
[[acyclic/squiggly-clojure "0.1.9-SNAPSHOT"
:exclusions [org.clojure/tools.reader]]
[compliment "0.3.5"]]
:plugins [[cider/cider-nrepl "0.17.0"]
[refactor-nrepl "2.3.1"
:exclusions [org.clojure/tools.nrepl]]]}
stanza
? I'm not familiar with that, I'm afraid.
Hmm, let me check what's in my .spacemacs for config.
Very early in my init (early enough that it runs before packages are loaded) I've got
(add-to-list 'configuration-layer-elpa-archives '("melpa-stable" . " "))
(add-to-list 'package-pinned-packages '(cider . "melpa-stable") t)
I'm not specifying a CIDER version since melpa-stable
will give me whatever the last non-snapshot is (currently 17)
I imagine you might need to delete your ~/.m2
repo, or at least the cider-nrepl
subdir.
> @bozhidar You’re removing C-c M-j
? 😧 (edited)
@ghopper Yes, but not soon. First we’ll remove all mentions of it from all the docs and we’ll remove it in a few releases. It’s going to be C-c C-x (C-)j
going forward and all the related commands are there.
I've already switched over to C-c C-x C-j C-[jJ]
🙂 I kinda like it.
Thanks; I think I've got my .dir-locals.el
setup properly now.
((nil . ((cider-clojure-cli-global-options . "-A:cljs:emacs")
(eval . (with-eval-after-load "cider"
(cider-register-cljs-repl-type
'example-repl "(start-example-repl)"
'cider-verify-piggieback-is-present))))))
There does seem to be some issue with cider-default-cljs-repl
not working as expected in there though, but I ended up not needing it, because I've got two different cljs repls, so being able to choose is good.@bozhidar cider-default-cljs-repl
is nil
inside of cider--update-cljs-type
when it's set via .dir-locals.el
, so I end up getting the select type popup.
Is there a way to rename the sesman sessions to override the example#2
names they're given by default?
trying to jack in to a shadow-cljs project and this is what occurs
error in process filter: lispy-cider-load-file: Symbol’s function definition is void: cider-map-repls
error in process filter: Symbol’s function definition is void: cider-map-repls
ah, I'm using evil-lispy
but yes 0.17
ah, will do that
Error (use-package): Failed to install evil-lispy: Package ‘evil-lispy-’ is unavailable
Error (use-package): Cannot load evil-lispy
after pinning, this happens when I try to install
there doesn't seem to be a stable one
for evil-lispy at least
ah, so I pinned lispy and it seemed to work
that or me removing evil-lispy and having it re-installed
ugh, melpa is a mess lol