microsoft / microsoft/language-server-protocol
languageId handling ambigious
@dbaeumer is already working on this.
Since Jun 25, 2026.
- Dominant language
- TypeScript
- Stars
- 13k
- Forks
- 1k
- Avg merge
- 6d 1h
- Merged PRs (30d)
- 10
Description
As I read it, languageId is a required field of TextDocumentItem. However, the wording seems to me to be ambiguous about what a client should send if a language can't be detected, or is not among the table entries. Also, what should a server do when given an unknown languageId?
I have tested two editors (Kate and Qt Creator) which send an empty string. Kate will send the server executable name by default, and can be configured to send an empty string instead. I also find one server which uses systemverilog and verilog, and treats unknown values as parsing errors.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.