Fork me on GitHub
Cris B01:07:37

Just a note of thanks for your work on Calva, @pez & @brandon.ringe. I've already tried the two editor/IDEs I'm most familiar with (IntelliJ/cursive & emacs/CIDER), aiming to discover what suits me best for clojure/script - I like both for different reasons. I haven't used vs code much in the past, but I'm giving it a try for a while. So far so good - you've done a really nice job with Calva. Whichever editor I land on, I appreciate the ton of work it takes to do this stuff.

calva 5

Thanks for the kind words! Much appreciated.


Also thanks for the feedback you and others have provided


Wonderful. Feedback like this is what makes it fun putting in the work! Please consider writing a review on the marketplace.

Cris B08:07:31

I had barely noticed the marketplace (not really having been a vscode user to date). But of course those stars I see when browsing extensions in vscode had to come from somewhere ... done.

❤️ 1
💯 1
Maksim Glebov06:07:44

@pez, thank you for such a detailed response! I've got your point. Will try the workflow you suggested. @brandon.ringe, that sounds like a great idea! I'll be happy if it will be implemented. Congrats on the new release! You guys are awesome.

❤️ 2

I'm sorry, Windows-using Calva friends. I forgot to test this new release on Windows. Now it can't connect. I'm looking at it.


New Calva out, v2.0.110, fixing the Windows connection bug. (And the PR template checklist has been updated to remind about that some changes need to be tested on Windows as well.


Often it is a simple smoke test that is needed. But our current CI does not do this connection smoke test at all, and we are not running it on Windows anyway. So both those things should be fixed. If someone is good with CI testing and Windows such, please feel invited to file PRs about it!


But there is still conection problem with Linux. Calva version 2.0.110 Ctrl-Alt-C Alt-C / Clojure CLI says Hooking up nREPL sessions... Connected session: clj Failed connecting. nREPL Connection was closed The same time console is running nREPL server started on port 33915 on host - <nrepl://> But it works last week.


Oh, wow, @cb.lists! I just read your review on Calva. It is wonderful. Really good that you point out what you like about it and what it has going for it. ❤️


the new update chefs kiss so is there any reason to use the repl? is the idea that will get phased out in favor of the output repl file?

🚀 1

We hope to be able to remove the old REPL window pretty soon. But first we are curious about what people think about your question there: is there any reason to use the [old] repl [window]?

☝️ 1
Cris B22:07:58

Command history might be one. It's not something I use much, but if you were doing repetitive exploratory stuff in the REPL window, command history would be handy (I think I'm right in thinking this doesn't exist in the new output window?).


I think not, but I think we can implement fairly easily. I've found myself actually using alt+upArrow trying to re-insert a previous evaluation


and realizing/remembering the new output window doesn't do that (yet). I'm not sure of @pez’s thoughts on it, but probably fairly easy to do

Cris B22:07:22

Minor issue, but I'd be weary of treading on standard editor keyboard shortcuts. A distinctive aspect of the new window is that it's a regular editor - you might want to hold on to that editor-identity as much as possible, given users familiarity with it.

Cris B22:07:40

(actually 'wary', not 'weary' ;))


I agree with that


alt+up would not be a good shortcut in the new window, of course


Probably could come up with something that makes sense though, or even some kind of peek window of history you can easily pull up/browse.


Also, just as I mentioned saving the position/range of results in the output file for peeking from the editor, maybe we can save the positions of forms evaluated in the output file, so the history command just traverses the positions and pulls the text from there.


Of course if you clear the file, goodbye history. Maybe this is ok though

Cris B23:07:02

That peek window could be a nice feature. How much it's worth your time might depend on how much people use the REPL window directly. I get the impression most folk do much more inline evaluation in source files (certainly the case for me).


Yeah, I think it would help the inline folks more.


+1 on missing the alt+upArrow +1 on holding on to editor-identity as much as possible


my cheat that's been working for me today is using "go back/forward" shortcut (ctrl+-/ctrl+shft+-); found myself mostly reaching for alt+up to replay/modify the last statement it works mostly ok but a bit fudgey since vscode doesn't always register a new historical point on alt+enter eval but possibly could be injected through the extension? caveat: breaks down for larger jumps or after ctrl+tabbing back but I use the acejump extension to jump around (another benefit of outputwindow == editor)


I also have pressed alt+up a few times in this window. That prompt seems to bring expectations. I think it's ok to use that shortcut of we limit it to when the cursor is at the empty line, last in the file, or something like that.

👍 1

I have tried to figure out clever ways to implement the history, but it all quickly get rather complicated. We can always do it the same way as we do in the old REPL window, of course.

Maksim Glebov11:07:55

Actually we've already have some differences with a regular file. And I've found some bugs around them: - Form evaluation with alt+enter. It seems that it now works in the regular project files too, which was kind of unexpected for me. - Disabled backspace on an empty prompt. It does not work properly if I try to delete an expression in brackets. As @pez wrote in his post on ClojureVerse, the main challenge with the previous REPL window was to make it feel like a regular editor. It seems that a new challenge is to make it feel like a REPL. In that case I think it's ok to treat a prompt in a slightly special way (with alt+up, backspace disabled and so on). Another possible solution is to remove all the differences completely (e.g. use regular ctrl+alt+c space to evaluate forms and find another way to manage command history) and only append to the repl file. But maybe repl experience will suffer a bit.


I've added alt+enter and ctrl+enter to the editors on purpose. Kept the old shortcuts for now, but changed the docs to promote the new ones.


Can you share the failing expression?

Maksim Glebov13:07:47

Ahh, got it. Sorry for the false alarm :) Here it is. Was surprised that it actually worked on the first expression, but after trying to remove an empty brackets it started to fail every time.


Thanks. Please file it as an issue.