Hey there, and thanks for your time!
First off, thank you for sharing this repository and work to open up access to the Swift LSP for more folks to use. It's a great effort, and I've been excited to try and use the tool for a while now.
Unfortunately, I'm hitting that oft-expected LSP wall of, "There are so many moving pieces I don't know which piece to learn first to start learning more." Between build caches, local process instances, and quite literally everything in between in the Swift build and runtime, I am finding myself continuously at a loss for how to set this thing up.
My request is for a baby's-first-LSP-call guide or tutorial on how to interact with this client, and how to use it to interact with the server at the other end. Some simple step-by-step guide that shows:
- Pulling down this library into a repo (easy peasy)
- Configuring environment / build to point to local SwiftLSP toolchain instance on a standard macOS install or Docker image (uh oh...)
- Initializing a LSP session akin to an editor opening one or more files (hrm..)
- Executing requests and handling sample responses, like jump-to-definition or completion (ok not so bad)
With that corpus of a tutorial, I feel a lot of the other pathways to the LSP are opened. Since setup is a huge portion of the work, and getting into a "working state" is most of the trouble, following those first few requests and gotchas gives a feel for the API surface, and how things are "meant to work".
In any and all ways I can, I offer support to help write this! If that means reading through some of your suggested tutorials or notes and compiling them into a working document, I'm for it. Or, if it means being on a video call and working through individual steps and documenting it, I'm for that too. I am immensely interested in learning this technology and having others be able to do the same, so take very little salt when I say I really want this to work, haha.
Thanks for reading the text wall, and again, thanks for the great library and history of development around SwiftLSP.