* Minor formal improvements throughout the LSP spec
This mostly fixes some grammar, spelling, and punctuation issues
throughout version 3.18 of the LSP specification. Additionally,
some incorrect TypeScript syntax has been fixed.
Meta model files have not been changed.
* Fix EBNF grammar for snippets
To be precise, "fix" refers to the following changes in this commit:
* Incorrect grouping of alternatives has been remedied
* Ambiguities present in the grammar have been fixed,
the grammar should now be LL(1)-parseable.
* Grammar has been made consistent with the description above it.
Specifically, characters which have to be escaped per the textual
description now also need to be escaped per the grammar rules.
* A description for the ':+', ':?', and ':-' modifiers has been
added, as they seem to not be explained anywhere else in the spec.
* I have used the VSCode source code as a basis for these.
* The link has been updated to refer to the right EBNF specification,
as the grammar uses the XML variant rather than the one described
in the originally linked Wikipedia article.
* Address review comments by @dbaeumer
---------
Co-authored-by: Dirk Bäumer <dirkb@microsoft.com>
* Define separate tools protocol
Add note
Move the other bits
Define separate tools protocol
Rename to base protocol
Change version to 0.9
Use Base prefix and remove since annotations
Undo changes in LSP specs
Move all the lifecycle messages
Define separate tools protocol
* Move shared definitions
* Define regexes
* List reserved capabilities and improve examples
* Specs for work done progress
* Change enumeration example
* Make ClientCapabilities open
* Add InitializeResponse
* Remove text document stuff from registration messages
* Add motivation section
* Add experimental remark