This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2023-01-15
Channels
- # babashka (13)
- # beginners (37)
- # calva (19)
- # cider (15)
- # clj-kondo (2)
- # clojure (152)
- # clojure-norway (1)
- # clojure-sweden (10)
- # clr (5)
- # emacs (19)
- # honeysql (1)
- # introduce-yourself (19)
- # joyride (1)
- # lsp (4)
- # malli (5)
- # membrane (6)
- # off-topic (11)
- # pathom (18)
- # polylith (13)
- # practicalli (3)
- # releases (4)
- # shadow-cljs (38)
Dear Calva friends: https://github.com/BetterThanTomorrow/calva/releases/tag/v2.0.324
• Fix: https://github.com/BetterThanTomorrow/calva/issues/2012
• Fix (formatter): https://github.com/BetterThanTomorrow/calva/issues/1957
• Fix: https://github.com/BetterThanTomorrow/calva/issues/1978
Again thanks to @m401 and @ahtunget for helping with Calva quality! ❤️ 🙏
Dear Calva devs, thank you so much for “replace with pretty printed form”!

Hey all, Is it possible to send multiple lines to REPL in VSCode? I have below code:
(def knight-awake? false)
(def archer-awake? true)
(def prisoner-awake? false)
If I select all three lines and press [Opt + Enter] it only sends the line on which my cursor is on.Hi! The command for this is Calva: Evaluate Current Form (or selection, if any), default bound to ctrl+enter
.
I tried that, it still doesn’t work for me 😞 may be some plugin I have is interrupting it.
I have sometimes had mixed results from behavior of Evaluate Current Form
. Not having spent any mental energy on the problem as of yet, I subconsciously hypothesized it is similar to the annoyance with Evaluate Current File
(approximate name of command from memory) that any exception thrown seems to cause the entire eval to be discarded. Does that sound like a reasonable guess?
Actually I don’t get any error. I tried both (command palette and keyboard shortcut) and it only evaluates last line.
It evaluates all code selected. It then only returns the result of the last expression. That's how Clojure works.
Evaluate the archer-awake?
symbol (place your cursor in it and hit ctrl+enter
), and you should see that that definition was evaluated.
It really behaves as if you are evaluating the top level form. It should behave as in this video:
Evaluating top level form finds the top level form from the cursor (the last form, if the selection ends there) and evaluates that. Evaluate current form or selection, evaluates the selection if there is any, otherwise finds the current form and evaluates that. If this doesn't happen for you we have a bug. But not immediately reproducible by me at least.
Ohhh it worked 🙂 super weird, I think it works with ctrl+enter
and I tried opt + enter
. Thanks a lot for your help 👍
> It then only returns the result of the last expression.
>
Printing intermediate results from each evaluated form (without needing to step the cursor through each) seems like a useful behavior. Something like Evaluate selected forms in sequence
which would run Evaluate top level form
individually for each form.
I suspect this would make a fairly trivial Joyride script, but maybe worth considering for Calva?