Started in case I ever build a language server, thanks! The interface looks very understandable, and the debug server looks really nice.
Now that I think about it, it might be really cool to add LSP to my CLI framework[0] (I already have tab completion for shells, why not make an editor plugin if it's this easy ..)
I wrote this for the infracost LSP so I could write multiple IDE extensions. Its not even really a language server, its just a neat way to parse the Terraform/Cloudformation and return diagnostics.
To give you some idea how versatile a language server is, I wrote one once to provide go-to-definition between two related blocks in a large proprietary YAML configuration file. If the definition was missing, it would also render the red squiggly line to indicate that something was misspelled.
Another time I used one to make the hosts in my SSH configuration file clickable to either open a terminal with a session or just to display cpu/memory statistics.
Lots of neat editor-independent interactions can be enabled using language servers.
I've been thinking about this comment for a few hours now! I love it! I like building VS Code extensions and realized quickly the benefit of writing the logic in an LSP but I would never have thought to do the SSH config thing you describe.
I've now started a Makefile lsp since you've inspired me to think about the painful scenarios that LSP can solve if I think a bit wider.
The godoc format enforces that the comment start with the name of the identifier and be a complete sentence(s) describing what that identifier does. Predates LLMs
Now that I think about it, it might be really cool to add LSP to my CLI framework[0] (I already have tab completion for shells, why not make an editor plugin if it's this easy ..)
0: https://github.com/bbkane/warg
Language servers are cool!
Another time I used one to make the hosts in my SSH configuration file clickable to either open a terminal with a session or just to display cpu/memory statistics.
Lots of neat editor-independent interactions can be enabled using language servers.
I've now started a Makefile lsp since you've inspired me to think about the painful scenarios that LSP can solve if I think a bit wider.
Cheers for that!!
Thankfully, I finally had a reason to build an LSP (infracost LSP), so it motivated this and I'm really pleased with it
In https://go.dev/doc/comment it seems to be a convention, but there are a couple of examples there where the don't follow it.
If you add one, at least make the effort to provide some useful information. For example which is more severe: higher or lower numbers.