Implement all LSP workspace file operations #261
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This generalizes the current
lsp_helpers.lua
file to support all of the workspace file operations in the LSP spec. This could supercede #260 (since it also closes #259) or it could be merged afterwards.Let me know what you think of this implementation and if you have any ideas/improvements! I focused mainly on decreasing duplicate code while implementing all of these very similar operations while maintaining "type safety" with lua language server.
I also noticed that you have opened a PR to add this sort of functionality directly into Neovim (neovim/neovim#26516) which is amazing! This could still be useful if we want to use that API when it comes out but support backwards compatibility for some amount of time.