Fork me on GitHub

Dear Calva friends: I’m close to having regained enough confidence in myself and in the latest Parinfer build to release the experiment on the marketplace again. It would be super-extra-nice with your help testing it. • With Parinfer disabled it should behave similar to the currently released Calva, the main difference being: ◦ More eager auto-formatting (I think you will love this one) ◦ More relaxed CaveMan mode for Paredit (@lspector might appreciate 😄) • With Parinfer enabled you should enjoy something similar to SmartMode (@chrisoakman says it’s quite close) Since we have had issues with these builds on Windows, it would be super great if some Windows users tested this, of course. Here’s the latest VSIX:

❤️ 4

I’ll install it now and use it for work today! Is parinfer disabled by default?


Thanks! Yes, disabled by default. I think it will always be. I find it quite dangerous myself and must have it disabled for real work. But please try both. There is some quite hacky “bundling” of settings going on when you enable and disable Parinfer. Seems to work when I test it, but I would not be too surprised if it causes troubles for some situations.

👍 1

I've had too many problems in the past with Parinfer reformatting weirdly-indented code and creating illegal syntax so I'm not keen to experience it again. I used to like it, when I first started using it...


That makes you extra well suited as a tester Sean. 😃 I have tried to make this implementation aware of weirdly indented code. But I certainly share the worry with something magically editing the structure. It would be great if you tested the VSIX-es in non-Parinfer mode, though. Because the integration is pretty deep and it is hard to make sure other things keep working as they did.


OK, I'll give it a go, but it probably won't be until Monday at this point...

❤️ 2

Tried it and if I recall the previous behavior correctly CaveMan mode is indeed improved. If it supported reindentation for incomplete forms then this seems like it would be quite useable for cave people like me and my students 😬

❤️ 2

(I've just installed this vsix to test the default behavior with nothing experimental added -- it didn't seem to install cleanly: when I reloaded the window, all I got was a big black screen so I had to quit and restart VS Code but it reports the correct version from that vsix so I guess it's OK... I'll let you know if I run into any unusual behavior)


Appreciated! However, I’m running into quite a lot of issues with the latest builds. Not expecting this to stabilize quite yet.


So the only thing I've noticed, using this .vsix, is that there seems more of a tendency to "lose" closing parens from a line when auto-completing something.


i.e., given a line like:

foo (bar)]
and I get an auto-complete suggestion of bar-quux and accept that, I end up with
foo (bar-quux
and both parens disappear (and then most LSP functions stop working because the syntax is no long valid).


That auto-complete problem has always been there to some degree but in the past pressing shift-tab restored the missing parens -- and that no longer works so I either have to manually insert the parens or undo back to the auto-complete.


Note: if there is a space before the closing paren when I accept the auto-complete, things work:

foo (bar )]
with the cursor immediately after the r and before the space, accepting the auto-complete produces:
foo (bar-quux )]