lsp-language-id-not-lowercase
LSP language IDs should be lowercase
Warning
Rule Details
This rule checks the values in the extensionToLanguage mapping of each LSP server entry in lsp.json and warns when a language ID contains uppercase characters. The LSP specification convention is to use lowercase language IDs (e.g., typescript not TypeScript). Using inconsistent casing can cause mismatches between editor expectations and server behavior.
Incorrect
Language IDs with uppercase characters
json
{
"my-server": {
"command": "/usr/bin/my-server",
"extensionToLanguage": {
".ts": "TypeScript",
".py": "Python"
}
}
}Correct
Lowercase language IDs
json
{
"my-server": {
"command": "/usr/bin/my-server",
"extensionToLanguage": {
".ts": "typescript",
".py": "python"
}
}
}How To Fix
Convert all language ID values to lowercase. For example, change "TypeScript" to "typescript" and "Python" to "python".
Options
This rule does not have any configuration options.
Related Rules
Resources
Version
Available since: v0.2.0