chlorine-clover

About Chlorine for Atom and Clover for VS Code: https://atom.io/packages/chlorine and https://marketplace.visualstudio.com/items?itemName=mauricioszabo.clover
seancorfield 2020-03-02T18:00:43.071500Z

@mauricio.szabo What state would you say https://marketplace.visualstudio.com/items?itemName=mauricioszabo.clover is in at the moment? And are you planning to continue work on it to get parity with Atom/Chlorine?

mauricio.szabo 2020-03-02T18:31:34.073100Z

I think I would classify it as "Beta, expect bugs to happen". I plan to continue working on it together with Atom/Chlorine, but Chlorine will be my first choice always (because I prefer to work with Atom) unless Atom becomes unmantained / too buggy

mauricio.szabo 2020-03-02T18:32:43.074400Z

I mostly update Clover when I change, add some feature, or fix some bug on REPL-Tooling. So I publish a new version of tooling, then update Chlorine and Clover 🙂

seancorfield 2020-03-02T18:33:50.075500Z

Nice. I asked because of a thread in #beginners where someone suggested Atom was dead/dying because it isn't being maintained actively, since Microsoft bought GitHub, and therefore VS Code was the de factor successor.

seancorfield 2020-03-02T18:34:19.076200Z

My response was that I'd only switch to VS Code if it had a Chlorine-like Clojure integration... which it does 🙂

mauricio.szabo 2020-03-02T18:36:02.078200Z

Well, I don't see Atom dying too soon, but I fear that it'll not get new, shiny features, or performance enhancements

mauricio.szabo 2020-03-02T18:36:51.079300Z

When I saw that it could be a possibility, I migrated most of the code on Chlorine to REPL-Tooling, so if Atom dies I could port most of the code because it was not editor-dependent 🙂

mauricio.szabo 2020-03-02T18:37:33.080200Z

The problem with Clover is that there's no good "Parinfer / Paredit" package for VSCode. The right indentation and paredit-like features are handled by Calva

seancorfield 2020-03-02T18:38:44.080900Z

So you'd essentially need Calva installed, just to get a reasonable editing experience, even if you then relied on Clover's evaluation machinery?

mauricio.szabo 2020-03-02T18:41:15.081900Z

Yes. I'm thinking about extracting the "editing part" of Calva, but then it'll be another project to maintain...

pez 2020-03-02T19:34:53.087400Z

Cava Paredit, Calva Format, and what is today Calva Highlight used to be separate extensions. I brought them in to the same extension because it was easier for me to maintain them that way, and there wasn't anyone else really needing them standalone. But they are still quite disentangled and should be possible to extract to separate extensions again. That would be one way to solve Clover's need. Another could be to see if we could give Calva an API that would disable the things Clover does not need.

1
seancorfield 2020-03-02T19:43:19.088300Z

@mauricio.szabo Is the eval API in Clover exposed like Chlorine does, so that I could write my REBL integration on top of it?

mauricio.szabo 2020-03-02T20:04:53.090600Z

@seancorfield not yet. On VSCode, you need to put on the package description all the commands that you expect to call. I'm trying to implement a code that will register commands like Custom Command 1, and so on, and then users can configure these commands on package settings

mauricio.szabo 2020-03-02T20:06:48.091Z

(Atom is incredibly more flexible than VSCode...)

pez 2020-03-02T20:15:29.091700Z

Atom is much more Emacsy in that sense.

seancorfield 2020-03-02T20:16:30.092200Z

Interesting. Maybe I won't expend any effort on VS Code yet then.

pez 2020-03-02T20:18:47.093300Z

Feel invited to get inspired by Calva's simple custom commands, @mauricio.szabo, they work quite well: https://calva.readthedocs.io/en/latest/custom-commands.html

mauricio.szabo 2020-03-02T20:48:47.094Z

Thanks, that's very useful! I'll look at the code to see how you did it 🙂

❤️ 1