Skip to content

Commit 6d9b414

Browse files
committed
Add all language identifiers listed in the LSP spec
1 parent 0097a84 commit 6d9b414

File tree

1 file changed

+58
-6
lines changed

1 file changed

+58
-6
lines changed

Sources/LanguageServerProtocol/SupportTypes/Language.swift

Lines changed: 58 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,6 @@
1414
public struct Language: RawRepresentable, Codable, Equatable, Hashable {
1515
public typealias LanguageId = String
1616

17-
public static let c: Language = Language(rawValue: "c")
18-
public static let cpp: Language = Language(rawValue: "cpp") // C++, not C preprocessor
19-
public static let objective_c: Language = Language(rawValue: "objective-c")
20-
public static let objective_cpp: Language = Language(rawValue: "objective-cpp")
21-
public static let swift: Language = Language(rawValue: "swift")
22-
2317
public let rawValue: LanguageId
2418
public init(rawValue: LanguageId) {
2519
self.rawValue = rawValue
@@ -48,3 +42,61 @@ extension Language: CustomStringConvertible {
4842
return rawValue
4943
}
5044
}
45+
46+
public extension Language {
47+
static let abap = Language(rawValue: "abap")
48+
static let bat = Language(rawValue: "bat") // Windows Bat
49+
static let bibtex = Language(rawValue: "bibtex")
50+
static let clojure = Language(rawValue: "clojure")
51+
static let coffeescript = Language(rawValue: "coffeescript")
52+
static let c = Language(rawValue: "c")
53+
static let cpp = Language(rawValue: "cpp") // C++, not C preprocessor
54+
static let csharp = Language(rawValue: "csharp")
55+
static let css = Language(rawValue: "css")
56+
static let diff = Language(rawValue: "diff")
57+
static let dart = Language(rawValue: "dart")
58+
static let dockerfile = Language(rawValue: "dockerfile")
59+
static let fsharp = Language(rawValue: "fsharp")
60+
static let git_commit = Language(rawValue: "git-commit")
61+
static let git_rebase = Language(rawValue: "git-rebase")
62+
static let go = Language(rawValue: "go")
63+
static let groovy = Language(rawValue: "groovy")
64+
static let handlebars = Language(rawValue: "handlebars")
65+
static let html = Language(rawValue: "html")
66+
static let ini = Language(rawValue: "ini")
67+
static let java = Language(rawValue: "java")
68+
static let javaScript = Language(rawValue: "javascript")
69+
static let javaSriptReact = Language(rawValue: "javascriptreact")
70+
static let json = Language(rawValue: "json")
71+
static let latex = Language(rawValue: "latex")
72+
static let less = Language(rawValue: "less")
73+
static let lua = Language(rawValue: "lua")
74+
static let makefile = Language(rawValue: "makefile")
75+
static let markdown = Language(rawValue: "markdown")
76+
static let objective_c = Language(rawValue: "objective-c")
77+
static let objective_cpp = Language(rawValue: "objective-cpp")
78+
static let perl = Language(rawValue: "perl")
79+
static let perl6 = Language(rawValue: "perl6")
80+
static let php = Language(rawValue: "php")
81+
static let powershell = Language(rawValue: "powershell")
82+
static let jade = Language(rawValue: "jade")
83+
static let python = Language(rawValue: "python")
84+
static let r = Language(rawValue: "r")
85+
static let razor = Language(rawValue: "razor") // Razor (cshtml)
86+
static let ruby = Language(rawValue: "ruby")
87+
static let rust = Language(rawValue: "rust")
88+
static let scss = Language(rawValue: "scss") // SCSS (syntax using curly brackets)
89+
static let sass = Language(rawValue: "sass") // SCSS (indented syntax)
90+
static let scala = Language(rawValue: "scala")
91+
static let shaderLab = Language(rawValue: "shaderlab")
92+
static let shellScript = Language(rawValue: "shellscript") // Shell Script (Bash)
93+
static let sql = Language(rawValue: "sql")
94+
static let swift = Language(rawValue: "swift")
95+
static let typeScript = Language(rawValue: "typescript")
96+
static let typeScriptReact = Language(rawValue: "typescriptreact") // TypeScript React
97+
static let tex = Language(rawValue: "tex")
98+
static let vb = Language(rawValue: "vb") // Visual Basic
99+
static let xml = Language(rawValue: "xml")
100+
static let xsl = Language(rawValue: "xsl")
101+
static let yaml = Language(rawValue: "yaml")
102+
}

0 commit comments

Comments
 (0)