Update textDocumentSync server capabilities #183
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.
The README states that "Diagnostics are only updated when files are
saved or opened/closed". However, I noticed that during my usage of
fortls with Neovim through the builtin LSP implementation, saving a file
did not cause the diagnostics to update.
After digging into Neovim's code I noticed that it never sent out any
textDocument/didSave
notifications to the client. Initially I thoughtthis was a bug on their end until I noticed that the reason why Neovim
didn't send those notifications was because the server (fortls) did not
provide the corresponding server capability. Instead, it only provided
an integer indicating the
textDocumentSyncKind
for thechange
notifications.
Looking into the specification of the LSP here 1 I noticed that the
server should/can actually provide a more detailed description of its
capabilities. This commit, does exactly that.
Notice the final structure of the
TextDocumentSyncOptions
at the endof the linked paragraph.