-
-
Notifications
You must be signed in to change notification settings - Fork 232
Description
At the Clojure Conj a few days ago, I mentioned I wished we had something like Calva for Fennel, and @PEZ replied that maybe we could just make Calva work for Fennel instead of rebuilding the wheel. Fennel is not a dialect of Clojure, but for the purposes of this work, I guess we can just pretend that it is and treat it like ClojureDart or Jank.
As I understand it, this would consist of several changes:
- detect
.fnland.fnlmfiles - switch the nrepl server command to a Fennel-compatible one
- switch the LSP server command to
fennel-ls - replace the list of keywords used for syntax highlighting
- maybe replace indentation rules (maybe we can skip this if formatting is delegated to LSP)
I have made some progress for the second point by updating my own nREPL server for Fennel, which now works respectably well: https://git.sr.ht/~technomancy/jeejah
However, when it comes to the changes needed in Calva itself, I am willing to give it a shot, but I think I would need some guidance for where to look. I have never before used Calva, VS Code, Typescript, ClojureScript, npm, or the official Clojure CLI, so I'm in quite a bit over my head.