LogseqLSP: A Language Server Provider for Logseq

Hey folks! I’m an avid logseq user but also spend most of my day in the terminal! Once I started using the more advanced features of Logseq I was quickly aware that things like embeds and queries were hard to grok in the terminal env. Around this time I was made aware of the Logseq plugin rest api which is great since it allows nearly full control over the graph from an outside application! I’ve started working on an LSP for logseq that provides enhancements to editors that implement a Language Server Client!

Currently its verrrrry rough, but it supports go to definition, hover queries/embeds/links, and select references. More features are planned as I get time but in the mean time any requests/ideas/testers are welcome. I’m currently only testing with helix since its pretty easy to add an LSP to it but its usage is pretty limited so if anyone gets it setup with (n)vim or another editor I’d love to document the process in the readme!

Feel free to contribute ideas/features :smiley:

Thank you very much, can you please provide an example JSON config file? I don’t understand how I am supposed to edit the TOML and if I try to convert it as it is to JSON it gives me error. I need a JSON for my editor.

Nevermid, I figured it out, but it doesn’t work, the console gives just this error:

jsonrpc2 handler: notification "textDocument/didOpen" handling error: jsonrpc2: code -32601 message: method not supported: textDocument/didOpen

Is this something you want reported on GitHub?

Yeah GitHub would be good. What client are you using? Currently the lsp does not implement all features but I can prioritize others if some editors require more of the spec implimented

Awesome, thank u for writing this! The GUI app is quite slow and I want to try neovim to edit the graph. Are you planning to support reference footnotes in the future?

Hi there, Lifes kind of taken over for a bit but I’m hoping to get back to this project soon! Do you have any pictures or docs describingn reference footnotes?