First Class Support for editors other than emacs #782
Labels
No labels
UX
active development
backlog
blocker
bootstrap
bounty
bug
dependencies
discussion
documentation
duplicate
enhancement
flaky test
help wanted
invalid
javascript
question
release
tendentious
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
mighty-gerbils/gerbil#782
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Not everyone is a grey bird; we want to support modern editors:
There may be funding available for this project.
Prerequisite: #781.
I am looking into writing some documentation for setting up an environment in Neovim. I've managed to get everything from evaluating code inside the editor and Parinfer to "rainbow parentheses” highlighting up and running. It has been a solid experience for me.
I'm particularly interested in this as well. My current setup is Conjure, rainbow-delimiters, vim-sexp, and the treesitter plugin for Scheme. How did you get Parinfer working?
Right now I've been using https://github.com/eraserhd/parinfer-rust which requires a Rust installation to compile the plugin - it might not be the best "default" choice to recommend people.
This is a "backend" for several editors including Neovim and Emacs. A little note from the page:
Even though I think the overlap of
people who might be interested in "systems language Scheme" using Neovimandpeople who have Rust installedis basically 99/100.There is https://github.com/gpanders/nvim-parinfer which is implemented in pure Lua and hence would require no dependencies. This would probably be safer to recommend to people even though I have not used it.
I found both implementations of parinfer to mangle my Gerbil code by default (I'm not sure if this is something that could be addressed with config), so I dropped them in favor of vim-sexp's simpler parenthesis matching. Parinfer really doesn't like
#;,using, and probably anything else that uses non-vanilla-ey Lisp syntax.That might just be me not having enough experience with the language and Lisps overall. Does anyone have a code example where it get mangled I could try out?
Otherwise I'll have to checkout something like vim-sexp or perhaps https://github.com/julienvincent/nvim-paredit. Still new to this S-expression thing. :)
Try using
#;on any form like so:#;(displayln "hello"). This example will probably also get mangled.Okay, so yes, I've noticed that this example breaks using
#;Back to the drawing board I guess.
Like I mentioned in chat channel, I'll be on the VSCode topic as soon as the
lsppackage gets fully stubbed out from current LSP specs, which I kinda see as my first Gerbil code exercise and contribution. Haven't started yet but aiming to, asaP.VSCode update: for now minimal / prototypal version that talks to #781 at https://github.com/metaleap/vscode-gerbil-scheme, we'll probably move it to
mighty-gerbilseventually way down the line, I reckon.Most dev effort is now being spent on LSP serving side, since the VSC ext uses MS' existing LSP-clienting lib: so as the LSP server grows its feature set, the VSC ext picks them up client-side automatically.