code-languages 1.40.9 → 1.41.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/README.md +82 -39
  2. package/dist/{api-Cvg4BdaR.d.cts → api-BmiYNzCU.d.cts} +38 -7
  3. package/dist/{api-BlQoDQtF.d.ts → api-DfrvOkQ-.d.ts} +38 -7
  4. package/dist/api.cjs +1883 -1215
  5. package/dist/api.d.cts +3 -3
  6. package/dist/api.d.ts +3 -3
  7. package/dist/api.js +1883 -1215
  8. package/dist/detect-slugs.cjs +147 -40
  9. package/dist/detect-slugs.d.cts +2 -1
  10. package/dist/detect-slugs.d.ts +2 -1
  11. package/dist/detect-slugs.js +147 -41
  12. package/dist/detect.cjs +667 -72
  13. package/dist/detect.d.cts +14 -2
  14. package/dist/detect.d.ts +14 -2
  15. package/dist/detect.js +666 -73
  16. package/dist/i18n.d.cts +1 -1
  17. package/dist/i18n.d.ts +1 -1
  18. package/dist/index.cjs +1998 -1247
  19. package/dist/index.d.cts +29 -13277
  20. package/dist/index.d.ts +29 -13277
  21. package/dist/index.js +1959 -1210
  22. package/dist/languages/actionscript.cjs +1 -0
  23. package/dist/languages/actionscript.d.cts +1 -0
  24. package/dist/languages/actionscript.d.ts +1 -0
  25. package/dist/languages/actionscript.js +1 -0
  26. package/dist/languages/algol.cjs +1 -0
  27. package/dist/languages/algol.d.cts +1 -0
  28. package/dist/languages/algol.d.ts +1 -0
  29. package/dist/languages/algol.js +1 -0
  30. package/dist/languages/ante.cjs +1 -0
  31. package/dist/languages/ante.d.cts +1 -0
  32. package/dist/languages/ante.d.ts +1 -0
  33. package/dist/languages/ante.js +1 -0
  34. package/dist/languages/assembly.cjs +1 -0
  35. package/dist/languages/assembly.d.cts +1 -0
  36. package/dist/languages/assembly.d.ts +1 -0
  37. package/dist/languages/assembly.js +1 -0
  38. package/dist/languages/astro.cjs +1 -1
  39. package/dist/languages/astro.js +1 -1
  40. package/dist/languages/austral.cjs +2 -1
  41. package/dist/languages/austral.d.cts +1 -0
  42. package/dist/languages/austral.d.ts +1 -0
  43. package/dist/languages/austral.js +2 -1
  44. package/dist/languages/awk.cjs +1 -1
  45. package/dist/languages/awk.js +1 -1
  46. package/dist/languages/bcpl.cjs +1 -0
  47. package/dist/languages/bcpl.d.cts +1 -0
  48. package/dist/languages/bcpl.d.ts +1 -0
  49. package/dist/languages/bcpl.js +1 -0
  50. package/dist/languages/bibtex.cjs +1 -1
  51. package/dist/languages/bibtex.js +1 -1
  52. package/dist/languages/bicep.cjs +1 -1
  53. package/dist/languages/bicep.js +1 -1
  54. package/dist/languages/bosque.cjs +1 -0
  55. package/dist/languages/bosque.d.cts +1 -0
  56. package/dist/languages/bosque.d.ts +1 -0
  57. package/dist/languages/bosque.js +1 -0
  58. package/dist/languages/carbon.cjs +1 -0
  59. package/dist/languages/carbon.d.cts +1 -0
  60. package/dist/languages/carbon.d.ts +1 -0
  61. package/dist/languages/carbon.js +1 -0
  62. package/dist/languages/cmake.cjs +1 -1
  63. package/dist/languages/cmake.js +1 -1
  64. package/dist/languages/coq.cjs +1 -0
  65. package/dist/languages/coq.d.cts +1 -0
  66. package/dist/languages/coq.d.ts +1 -0
  67. package/dist/languages/coq.js +1 -0
  68. package/dist/languages/cpp.cjs +1 -0
  69. package/dist/languages/cpp.d.cts +1 -0
  70. package/dist/languages/cpp.d.ts +1 -0
  71. package/dist/languages/cpp.js +1 -0
  72. package/dist/languages/csharp.cjs +1 -0
  73. package/dist/languages/csharp.d.cts +1 -0
  74. package/dist/languages/csharp.d.ts +1 -0
  75. package/dist/languages/csharp.js +1 -0
  76. package/dist/languages/dax.cjs +1 -1
  77. package/dist/languages/dax.js +1 -1
  78. package/dist/languages/dockerfile.cjs +1 -0
  79. package/dist/languages/dockerfile.d.cts +1 -0
  80. package/dist/languages/dockerfile.d.ts +1 -0
  81. package/dist/languages/dockerfile.js +1 -0
  82. package/dist/languages/emacs-lisp.cjs +54 -0
  83. package/dist/languages/emacs-lisp.d.cts +51 -0
  84. package/dist/languages/emacs-lisp.d.ts +51 -0
  85. package/dist/languages/emacs-lisp.js +52 -0
  86. package/dist/languages/fe.cjs +1 -0
  87. package/dist/languages/fe.d.cts +1 -0
  88. package/dist/languages/fe.d.ts +1 -0
  89. package/dist/languages/fe.js +1 -0
  90. package/dist/languages/fsharp.cjs +1 -0
  91. package/dist/languages/fsharp.d.cts +1 -0
  92. package/dist/languages/fsharp.d.ts +1 -0
  93. package/dist/languages/fsharp.js +1 -0
  94. package/dist/languages/gcode.cjs +1 -1
  95. package/dist/languages/gcode.js +1 -1
  96. package/dist/languages/gettext.cjs +1 -1
  97. package/dist/languages/gettext.js +1 -1
  98. package/dist/languages/go.cjs +1 -0
  99. package/dist/languages/go.d.cts +1 -0
  100. package/dist/languages/go.d.ts +1 -0
  101. package/dist/languages/go.js +1 -0
  102. package/dist/languages/io.cjs +1 -1
  103. package/dist/languages/io.js +1 -1
  104. package/dist/languages/javascript.cjs +1 -0
  105. package/dist/languages/javascript.d.cts +1 -0
  106. package/dist/languages/javascript.d.ts +1 -0
  107. package/dist/languages/javascript.js +1 -0
  108. package/dist/languages/jcl.cjs +52 -0
  109. package/dist/languages/jcl.d.cts +49 -0
  110. package/dist/languages/jcl.d.ts +49 -0
  111. package/dist/languages/jcl.js +50 -0
  112. package/dist/languages/jq.cjs +52 -0
  113. package/dist/languages/jq.d.cts +49 -0
  114. package/dist/languages/jq.d.ts +49 -0
  115. package/dist/languages/jq.js +50 -0
  116. package/dist/languages/kotlin.cjs +1 -0
  117. package/dist/languages/kotlin.d.cts +1 -0
  118. package/dist/languages/kotlin.d.ts +1 -0
  119. package/dist/languages/kotlin.js +1 -0
  120. package/dist/languages/lex.cjs +53 -0
  121. package/dist/languages/lex.d.cts +50 -0
  122. package/dist/languages/lex.d.ts +50 -0
  123. package/dist/languages/lex.js +51 -0
  124. package/dist/languages/linkerscript.cjs +1 -1
  125. package/dist/languages/linkerscript.js +1 -1
  126. package/dist/languages/liquid.cjs +1 -1
  127. package/dist/languages/liquid.js +1 -1
  128. package/dist/languages/lobster.cjs +1 -1
  129. package/dist/languages/lobster.js +1 -1
  130. package/dist/languages/luau.cjs +1 -1
  131. package/dist/languages/luau.js +1 -1
  132. package/dist/languages/markdown.cjs +1 -0
  133. package/dist/languages/markdown.d.cts +1 -0
  134. package/dist/languages/markdown.d.ts +1 -0
  135. package/dist/languages/markdown.js +1 -0
  136. package/dist/languages/meson.cjs +1 -1
  137. package/dist/languages/meson.js +1 -1
  138. package/dist/languages/objective-c.cjs +1 -0
  139. package/dist/languages/objective-c.d.cts +1 -0
  140. package/dist/languages/objective-c.d.ts +1 -0
  141. package/dist/languages/objective-c.js +1 -0
  142. package/dist/languages/pl-i.cjs +1 -1
  143. package/dist/languages/pl-i.js +1 -1
  144. package/dist/languages/postscript.cjs +1 -1
  145. package/dist/languages/postscript.js +1 -1
  146. package/dist/languages/powerquery.cjs +1 -1
  147. package/dist/languages/powerquery.js +1 -1
  148. package/dist/languages/powershell.cjs +1 -0
  149. package/dist/languages/powershell.d.cts +1 -0
  150. package/dist/languages/powershell.d.ts +1 -0
  151. package/dist/languages/powershell.js +1 -0
  152. package/dist/languages/properties.cjs +53 -0
  153. package/dist/languages/properties.d.cts +50 -0
  154. package/dist/languages/properties.d.ts +50 -0
  155. package/dist/languages/properties.js +51 -0
  156. package/dist/languages/protobuf.cjs +1 -0
  157. package/dist/languages/protobuf.d.cts +1 -0
  158. package/dist/languages/protobuf.d.ts +1 -0
  159. package/dist/languages/protobuf.js +1 -0
  160. package/dist/languages/python.cjs +1 -0
  161. package/dist/languages/python.d.cts +1 -0
  162. package/dist/languages/python.d.ts +1 -0
  163. package/dist/languages/python.js +1 -0
  164. package/dist/languages/raku.cjs +1 -0
  165. package/dist/languages/raku.d.cts +1 -0
  166. package/dist/languages/raku.d.ts +1 -0
  167. package/dist/languages/raku.js +1 -0
  168. package/dist/languages/restructuredtext.cjs +1 -0
  169. package/dist/languages/restructuredtext.d.cts +1 -0
  170. package/dist/languages/restructuredtext.d.ts +1 -0
  171. package/dist/languages/restructuredtext.js +1 -0
  172. package/dist/languages/rexx.cjs +52 -0
  173. package/dist/languages/rexx.d.cts +49 -0
  174. package/dist/languages/rexx.d.ts +49 -0
  175. package/dist/languages/rexx.js +50 -0
  176. package/dist/languages/ruby.cjs +1 -0
  177. package/dist/languages/ruby.d.cts +1 -0
  178. package/dist/languages/ruby.d.ts +1 -0
  179. package/dist/languages/ruby.js +1 -0
  180. package/dist/languages/rust.cjs +1 -1
  181. package/dist/languages/rust.js +1 -1
  182. package/dist/languages/simula.cjs +1 -0
  183. package/dist/languages/simula.d.cts +1 -0
  184. package/dist/languages/simula.d.ts +1 -0
  185. package/dist/languages/simula.js +1 -0
  186. package/dist/languages/snobol.cjs +1 -0
  187. package/dist/languages/snobol.d.cts +1 -0
  188. package/dist/languages/snobol.d.ts +1 -0
  189. package/dist/languages/snobol.js +1 -0
  190. package/dist/languages/solidity.cjs +1 -1
  191. package/dist/languages/solidity.js +1 -1
  192. package/dist/languages/spark.cjs +1 -1
  193. package/dist/languages/spark.js +1 -1
  194. package/dist/languages/spss.cjs +1 -1
  195. package/dist/languages/spss.js +1 -1
  196. package/dist/languages/squirrel.cjs +1 -1
  197. package/dist/languages/squirrel.js +1 -1
  198. package/dist/languages/tex.cjs +1 -0
  199. package/dist/languages/tex.d.cts +1 -0
  200. package/dist/languages/tex.d.ts +1 -0
  201. package/dist/languages/tex.js +1 -0
  202. package/dist/languages/typescript.cjs +2 -1
  203. package/dist/languages/typescript.d.cts +1 -0
  204. package/dist/languages/typescript.d.ts +1 -0
  205. package/dist/languages/typescript.js +2 -1
  206. package/dist/languages/vale.cjs +2 -1
  207. package/dist/languages/vale.d.cts +1 -0
  208. package/dist/languages/vale.d.ts +1 -0
  209. package/dist/languages/vale.js +2 -1
  210. package/dist/languages/vba.cjs +1 -1
  211. package/dist/languages/vba.js +1 -1
  212. package/dist/languages/vbscript.cjs +53 -0
  213. package/dist/languages/vbscript.d.cts +50 -0
  214. package/dist/languages/vbscript.d.ts +50 -0
  215. package/dist/languages/vbscript.js +51 -0
  216. package/dist/languages/verse.cjs +1 -1
  217. package/dist/languages/verse.js +1 -1
  218. package/dist/languages/vimscript.cjs +54 -0
  219. package/dist/languages/vimscript.d.cts +51 -0
  220. package/dist/languages/vimscript.d.ts +51 -0
  221. package/dist/languages/vimscript.js +52 -0
  222. package/dist/languages/visual-basic.cjs +1 -0
  223. package/dist/languages/visual-basic.d.cts +1 -0
  224. package/dist/languages/visual-basic.d.ts +1 -0
  225. package/dist/languages/visual-basic.js +1 -0
  226. package/dist/languages/webassembly.cjs +1 -0
  227. package/dist/languages/webassembly.d.cts +1 -0
  228. package/dist/languages/webassembly.d.ts +1 -0
  229. package/dist/languages/webassembly.js +1 -0
  230. package/dist/languages/yacc.cjs +55 -0
  231. package/dist/languages/yacc.d.cts +50 -0
  232. package/dist/languages/yacc.d.ts +50 -0
  233. package/dist/languages/yacc.js +53 -0
  234. package/dist/{registry-p4uQJ2gP.d.cts → registry-XRfwD571.d.cts} +80 -53
  235. package/dist/{registry-p4uQJ2gP.d.ts → registry-XRfwD571.d.ts} +80 -53
  236. package/dist/shebang-B1dhpwsv.d.ts +15 -0
  237. package/dist/shebang-BL2ZFHQP.d.cts +15 -0
  238. package/dist/{types-B0_wjl_Q.d.cts → types-DkAECzIe.d.cts} +14 -1
  239. package/dist/{types-B0_wjl_Q.d.ts → types-DkAECzIe.d.ts} +14 -1
  240. package/package.json +56 -10
package/README.md CHANGED
@@ -83,8 +83,12 @@ export interface LanguageContent {
83
83
  longDescription: string;
84
84
  }
85
85
 
86
+ export type LanguageStatus = "active" | "experimental" | "legacy" | "historical";
87
+
86
88
  export interface Language {
87
89
  slug: string;
90
+ aliases?: string[]; // lookup aliases, e.g. ["golang"] for go
91
+ status?: LanguageStatus; // absent means "active"
88
92
  publishedDate: string;
89
93
  extensions: string[];
90
94
  author: string;
@@ -128,7 +132,10 @@ console.log(ambiguous.map((language) => language.slug)); // ["c", "cpp"]
128
132
 
129
133
  `api.language(...)` normalizes lookup values to the package slug format, so inputs
130
134
  such as `"Visual Basic"` and `"Jupyter Notebook!"` resolve to `visual-basic` and
131
- `jupyter-notebook`.
135
+ `jupyter-notebook`. Language aliases are resolved before normalization, so `"golang"`,
136
+ `"C#"`, `"F#"`, `"C++"`, `"wasm"`, or `"elisp"` find `go`, `csharp`, `fsharp`, `cpp`,
137
+ `webassembly`, and `emacs-lisp`. When the slug is a known literal, `get()` and `load()`
138
+ are typed as always returning a language — no `undefined` check needed.
132
139
 
133
140
  `get()` reads from the bundled in-memory catalog. `load()` uses explicit dynamic
134
141
  imports so bundlers can lazy-load individual language modules when the consumer
@@ -360,9 +367,36 @@ console.log(detectProjectLanguages(files));
360
367
  // ]
361
368
  ```
362
369
 
370
+ Use `api.extension(value)` to list every language that registers an extension or exact filename:
371
+
372
+ ```ts
373
+ import { api } from "code-languages/api";
374
+
375
+ api.extension(".h").langs().get().map((language) => language.slug); // ["c", "cpp"]
376
+ api.extension("ts").langs().locale("es").get(); // leading dot optional
377
+ api.extension("Dockerfile").langs().get(); // exact filename entries work too
378
+ await api.extension(".vue").langs().load();
379
+ ```
380
+
381
+ Use `detectLanguageByShebang` or `detectLanguageSlugByShebang` to detect extensionless
382
+ scripts from their first line:
383
+
384
+ ```ts
385
+ import { detectLanguageByShebang } from "code-languages/detect";
386
+ import { detectLanguageSlugByShebang } from "code-languages/detect-slugs";
387
+
388
+ detectLanguageSlugByShebang("#!/bin/bash\necho hi"); // "bash"
389
+ detectLanguageSlugByShebang("#!/usr/bin/env python3\nprint(1)"); // "python"
390
+ detectLanguageSlugByShebang("#!/usr/bin/env -S deno run --allow-net"); // "typescript"
391
+ detectLanguageByShebang("#!/usr/bin/env node\nconsole.log(1)")?.slug; // "javascript"
392
+ ```
393
+
394
+ Shebang detection handles direct interpreter paths, `env` indirection with flags, and
395
+ versioned interpreters such as `python3.12` or `perl5.36`.
396
+
363
397
  ## Supported Languages
364
398
 
365
- The catalog currently includes 286 language entries. Each row can be imported directly
399
+ The catalog currently includes 295 language entries. Each row can be imported directly
366
400
  from its package subpath.
367
401
 
368
402
  | Logo | Language | Slug | Extensions | Version | Import |
@@ -373,30 +407,31 @@ from its package subpath.
373
407
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_agda.svg" alt="Agda logo" width="24" height="24"> | Agda | `agda` | `.agda`, `.lagda`, `.lagda.md`, `.lagda.rst`, `.lagda.tex` | `2.8.0` | `code-languages/agda` |
374
408
  | <img src="https://dummyimage.com/32x32/6B7280/ffffff.png&text=ALG" alt="ALGOL logo" width="24" height="24"> | ALGOL | `algol` | `.alg`, `.algol` | `ALGOL 68` | `code-languages/algol` |
375
409
  | <img src="https://ampl.com/wp-content/uploads/AMPL-favicon-36x29-1.svg" alt="AMPL logo" width="24" height="24"> | AMPL | `ampl` | `.mod`, `.dat`, `.run` | `stable` | `code-languages/ampl` |
410
+ | <img src="https://dummyimage.com/32x32/2D5FA0/ffffff.png&text=AS" alt="AngelScript logo" width="24" height="24"> | AngelScript | `angelscript` | `.as`, `.angelscript` | `2.36.1` | `code-languages/angelscript` |
376
411
  | <img src="https://antelang.org/img/apple-touch-icon.png" alt="Ante logo" width="24" height="24"> | Ante | `ante` | `.ante` | `experimental` | `code-languages/ante` |
377
412
  | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_antlr.svg" alt="ANTLR Grammar logo" width="24" height="24"> | ANTLR Grammar | `antlr` | `.g4` | `4.13.2` | `code-languages/antlr` |
378
413
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Salesforce.com_logo.svg" alt="Apex logo" width="24" height="24"> | Apex | `apex` | `.cls`, `.trigger` | `API 66.0` | `code-languages/apex` |
379
414
  | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_apl.svg" alt="APL logo" width="24" height="24"> | APL | `apl` | `.apl`, `.dyalog` | `ISO/IEC 13751:2001` | `code-languages/apl` |
380
415
  | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_applescript.svg" alt="AppleScript logo" width="24" height="24"> | AppleScript | `applescript` | `.applescript`, `.scpt`, `.scptd` | `2.8` | `code-languages/applescript` |
381
- | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_arduino.svg" alt="Arduino Sketch logo" width="24" height="24"> | Arduino Sketch | `arduino` | `.ino`, `.pde` | `Arduino API 1.0` | `code-languages/arduino` |
382
416
  | <img src="https://cdn.simpleicons.org/arangodb/DDE072" alt="AQL logo" width="24" height="24"> | AQL | `aql` | `.aql` | `ArangoDB AQL` | `code-languages/aql` |
417
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_arduino.svg" alt="Arduino Sketch logo" width="24" height="24"> | Arduino Sketch | `arduino` | `.ino`, `.pde` | `Arduino API 1.0` | `code-languages/arduino` |
383
418
  | <img src="https://cdn.simpleicons.org/asciidoctor/E40046" alt="AsciiDoc logo" width="24" height="24"> | AsciiDoc | `asciidoc` | `.adoc`, `.asciidoc`, `.asc` | `pre-spec` | `code-languages/asciidoc` |
384
419
  | <img src="https://cdn.simpleicons.org/dotnet/512BD4" alt="ASP/ASPX logo" width="24" height="24"> | ASP/ASPX | `asp` | `.asp`, `.aspx`, `.ascx`, `.ashx`, `.asmx`, `.master` | `4.8.1` | `code-languages/asp` |
385
420
  | <img src="https://cdn.simpleicons.org/assemblyscript/007AAC" alt="Assembly logo" width="24" height="24"> | Assembly | `assembly` | `.asm`, `.s`, `.S`, `.inc` | `Architecture-specific` | `code-languages/assembly` |
386
421
  | <img src="https://avatars.githubusercontent.com/u/28916798?v=4" alt="AssemblyScript logo" width="24" height="24"> | AssemblyScript | `assemblyscript` | `.as` | `0.28.19` | `code-languages/assemblyscript` |
387
- | <img src="https://astro.build/assets/press/astro-icon-light.svg" alt="Astro logo" width="24" height="24"> | Astro | `astro` | `.astro` | `7.0.6` | `code-languages/astro` |
388
- | <img src="https://dummyimage.com/32x32/0F766E/ffffff.png&text=Au" alt="Austral logo" width="24" height="24"> | Austral | `austral` | `.aum`, `.aui` | `0.1.0` | `code-languages/austral` |
422
+ | <img src="https://astro.build/assets/press/astro-icon-light.svg" alt="Astro logo" width="24" height="24"> | Astro | `astro` | `.astro` | `7.0.7` | `code-languages/astro` |
423
+ | <img src="https://avatars.githubusercontent.com/u/17337956?v=4" alt="Austral logo" width="24" height="24"> | Austral | `austral` | `.aum`, `.aui` | `0.1.0` | `code-languages/austral` |
389
424
  | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_autohotkey.svg" alt="AutoHotkey logo" width="24" height="24"> | AutoHotkey | `autohotkey` | `.ahk`, `.ah2` | `2.0` | `code-languages/autohotkey` |
390
425
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Apache_Avro_Logo.svg" alt="Avro IDL logo" width="24" height="24"> | Avro IDL | `avro-idl` | `.avdl` | `1.12.1` | `code-languages/avro-idl` |
391
- | <img src="https://cdn.simpleicons.org/gnu/A42E2B" alt="awk logo" width="24" height="24"> | awk | `awk` | `.awk` | `GNU Awk 5.4.0` | `code-languages/awk` |
426
+ | <img src="https://cdn.simpleicons.org/gnu/A42E2B" alt="awk logo" width="24" height="24"> | awk | `awk` | `.awk` | `GNU Awk 5.4.1` | `code-languages/awk` |
392
427
  | <img src="https://ballerina.io/images/ballerina-logo.svg" alt="Ballerina logo" width="24" height="24"> | Ballerina | `ballerina` | `.bal` | `2201.12.0` | `code-languages/ballerina` |
393
428
  | <img src="https://bashlogo.com/img/symbol/svg/full_colored_dark.svg" alt="Bash logo" width="24" height="24"> | Bash | `bash` | `.sh`, `.bash`, `.bashrc`, `.bash_profile`, `.bash_login`, `.profile` | `5.3` | `code-languages/bash` |
394
429
  | <img src="https://avatars.githubusercontent.com/u/5598624?v=4" alt="BASIC logo" width="24" height="24"> | BASIC | `basic` | `.bas`, `.bi`, `.bb` | `FreeBASIC 1.10.1` | `code-languages/basic` |
395
430
  | <img src="https://icons.iconarchive.com/icons/simpleicons-team/simple/128/windowsterminal-icon.png" alt="Batch logo" width="24" height="24"> | Batch | `batch` | `.bat`, `.cmd` | `Windows Command Processor` | `code-languages/batch` |
396
431
  | <img src="https://cdn.simpleicons.org/bazel/43A047" alt="Bazel logo" width="24" height="24"> | Bazel | `bazel` | `BUILD.bazel`, `WORKSPACE`, `WORKSPACE.bazel`, `MODULE.bazel` | `9.1.1` | `code-languages/bazel` |
397
432
  | <img src="https://dummyimage.com/32x32/374151/ffffff.png&text=BC" alt="BCPL logo" width="24" height="24"> | BCPL | `bcpl` | `.bcpl` | `Cintsys BCPL` | `code-languages/bcpl` |
398
- | <img src="https://dummyimage.com/32x32/2563EB/ffffff.png&text=Bi" alt="BibTeX logo" width="24" height="24"> | BibTeX | `bibtex` | `.bib`, `.bibtex` | `stable` | `code-languages/bibtex` |
399
- | <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/azure-bicep.svg" alt="Bicep logo" width="24" height="24"> | Bicep | `bicep` | `.bicep`, `.bicepparam` | `0.44.1` | `code-languages/bicep` |
433
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/9/92/LaTeX_logo.svg" alt="BibTeX logo" width="24" height="24"> | BibTeX | `bibtex` | `.bib`, `.bibtex` | `stable` | `code-languages/bibtex` |
434
+ | <img src="https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/azure-bicep.svg" alt="Bicep logo" width="24" height="24"> | Bicep | `bicep` | `.bicep`, `.bicepparam` | `0.45.6` | `code-languages/bicep` |
400
435
  | <img src="https://cdn.simpleicons.org/laravel/FF2D20" alt="Blade logo" width="24" height="24"> | Blade | `blade` | `.blade.php` | `Laravel 12.x` | `code-languages/blade` |
401
436
  | <img src="https://dummyimage.com/32x32/0078D4/ffffff.png&text=B" alt="Bosque logo" width="24" height="24"> | Bosque | `bosque` | `.bsq` | `experimental` | `code-languages/bosque` |
402
437
  | <img src="https://mlochbaum.github.io/BQN/favicon.ico" alt="BQN logo" width="24" height="24"> | BQN | `bqn` | `.bqn` | `BQN specification` | `code-languages/bqn` |
@@ -409,14 +444,14 @@ from its package subpath.
409
444
  | <img src="https://chapel-lang.org/images/chapel-logo.png" alt="Chapel logo" width="24" height="24"> | Chapel | `chapel` | `.chpl` | `2.9.0` | `code-languages/chapel` |
410
445
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_circom.svg" alt="Circom logo" width="24" height="24"> | Circom | `circom` | `.circom` | `2.2.3` | `code-languages/circom` |
411
446
  | <img src="https://cdn.simpleicons.org/clojure/5881D8" alt="Clojure logo" width="24" height="24"> | Clojure | `clojure` | `.clj`, `.cljs`, `.cljc`, `.edn`, `.bb` | `1.12.5` | `code-languages/clojure` |
412
- | <img src="https://cmake.org/wp-content/uploads/2023/08/CMake-Logo.svg" alt="CMake logo" width="24" height="24"> | CMake | `cmake` | `CMakeLists.txt`, `.cmake` | `4.3.4` | `code-languages/cmake` |
447
+ | <img src="https://cmake.org/wp-content/uploads/2023/08/CMake-Logo.svg" alt="CMake logo" width="24" height="24"> | CMake | `cmake` | `CMakeLists.txt`, `.cmake` | `4.4.0` | `code-languages/cmake` |
413
448
  | <img src="https://logo.svgcdn.com/devicon/cobol-original.png" alt="COBOL logo" width="24" height="24"> | COBOL | `cobol` | `.cob`, `.cbl`, `.cobol`, `.cpy` | `ISO/IEC 1989:2023` | `code-languages/cobol` |
414
449
  | <img src="https://cdn.simpleicons.org/coffeescript/2F2625" alt="CoffeeScript logo" width="24" height="24"> | CoffeeScript | `coffeescript` | `.coffee`, `.litcoffee`, `.cson` | `2.7.0` | `code-languages/coffeescript` |
415
450
  | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_cf.svg" alt="ColdFusion logo" width="24" height="24"> | ColdFusion | `coldfusion` | `.cfm`, `.cfml`, `.cfc` | `ColdFusion 2025` | `code-languages/coldfusion` |
416
451
  | <img src="https://avatars.githubusercontent.com/u/621198?v=4" alt="Coq / Rocq logo" width="24" height="24"> | Coq / Rocq | `coq` | `.v` | `9.2.0` | `code-languages/coq` |
417
452
  | <img src="https://upload.wikimedia.org/wikipedia/commons/1/18/ISO_C%2B%2B_Logo.svg" alt="C++ logo" width="24" height="24"> | C++ | `cpp` | `.cpp`, `.cc`, `.cxx`, `.h`, `.hpp`, `.hh`, `.hxx` | `C++23` | `code-languages/cpp` |
418
- | <img src="https://cdn.simpleicons.org/crystal/000000" alt="Crystal logo" width="24" height="24"> | Crystal | `crystal` | `.cr` | `1.20.3` | `code-languages/crystal` |
419
453
  | <img src="https://cdn.simpleicons.org/apachecassandra/1287B1" alt="CQL logo" width="24" height="24"> | CQL | `cql` | `.cql` | `CQL 3` | `code-languages/cql` |
454
+ | <img src="https://cdn.simpleicons.org/crystal/000000" alt="Crystal logo" width="24" height="24"> | Crystal | `crystal` | `.cr` | `1.20.3` | `code-languages/crystal` |
420
455
  | <img src="https://upload.wikimedia.org/wikipedia/commons/b/bd/Logo_C_sharp.svg" alt="C# logo" width="24" height="24"> | C# | `csharp` | `.cs`, `.csx` | `14` | `code-languages/csharp` |
421
456
  | <img src="https://upload.wikimedia.org/wikipedia/commons/a/ab/Official_CSS_Logo.svg" alt="CSS logo" width="24" height="24"> | CSS | `css` | `.css` | `Living Standard` | `code-languages/css` |
422
457
  | <img src="https://cdn.simpleicons.org/nvidia/76B900" alt="CUDA logo" width="24" height="24"> | CUDA | `cuda` | `.cu`, `.cuh` | `13.3.1` | `code-languages/cuda` |
@@ -427,7 +462,7 @@ from its package subpath.
427
462
  | <img src="https://cdn.simpleicons.org/d/BA595E" alt="D logo" width="24" height="24"> | D | `d` | `.d`, `.di` | `2.112.0` | `code-languages/d` |
428
463
  | <img src="https://dafny.org/images/dafny-favicon.svg" alt="Dafny logo" width="24" height="24"> | Dafny | `dafny` | `.dfy` | `4.11.0` | `code-languages/dafny` |
429
464
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Dart_programming_language_logo.svg" alt="Dart logo" width="24" height="24"> | Dart | `dart` | `.dart` | `3.12.2` | `code-languages/dart` |
430
- | <img src="https://dummyimage.com/32x32/F2C811/000000.png&text=DAX" alt="DAX logo" width="24" height="24"> | DAX | `dax` | `.dax` | `DAX 2025` | `code-languages/dax` |
465
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/c/cf/New_Power_BI_Logo.svg" alt="DAX logo" width="24" height="24"> | DAX | `dax` | `.dax` | `DAX 2025` | `code-languages/dax` |
431
466
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_dhall.svg" alt="Dhall logo" width="24" height="24"> | Dhall | `dhall` | `.dhall` | `23.1.0` | `code-languages/dhall` |
432
467
  | <img src="https://avatars.githubusercontent.com/u/20116735?v=4" alt="DITA logo" width="24" height="24"> | DITA | `dita` | `.dita`, `.ditamap`, `.ditaval` | `1.3` | `code-languages/dita` |
433
468
  | <img src="https://www.docker.com/wp-content/uploads/2022/03/Moby-logo.png" alt="Dockerfile logo" width="24" height="24"> | Dockerfile | `dockerfile` | `Dockerfile`, `.dockerfile` | `1.10` | `code-languages/dockerfile` |
@@ -438,6 +473,7 @@ from its package subpath.
438
473
  | <img src="https://cdn.simpleicons.org/ejs/B4CA65" alt="EJS logo" width="24" height="24"> | EJS | `ejs` | `.ejs` | `3.1.10` | `code-languages/ejs` |
439
474
  | <img src="https://cdn.simpleicons.org/elixir/4B275F" alt="Elixir logo" width="24" height="24"> | Elixir | `elixir` | `.ex`, `.exs`, `.eex`, `.leex`, `.heex` | `1.20.2` | `code-languages/elixir` |
440
475
  | <img src="https://upload.wikimedia.org/wikipedia/commons/f/f3/Elm_logo.svg" alt="Elm logo" width="24" height="24"> | Elm | `elm` | `.elm` | `0.19.2` | `code-languages/elm` |
476
+ | <img src="https://cdn.simpleicons.org/gnuemacs/7F5AB6" alt="Emacs Lisp logo" width="24" height="24"> | Emacs Lisp | `emacs-lisp` | `.el` | `Emacs 30.1` | `code-languages/emacs-lisp` |
441
477
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Ruby_logo.svg" alt="ERB logo" width="24" height="24"> | ERB | `erb` | `.erb`, `.rhtml`, `.html.erb` | `Ruby stdlib` | `code-languages/erb` |
442
478
  | <img src="https://cdn.simpleicons.org/erlang/A90533" alt="Erlang logo" width="24" height="24"> | Erlang | `erlang` | `.erl`, `.hrl`, `.app.src`, `.escript`, `.xrl`, `.yrl`, `rebar.config` | `OTP 29.0.3` | `code-languages/erlang` |
443
479
  | <img src="https://factorcode.org/favicon-96x96.png" alt="Factor logo" width="24" height="24"> | Factor | `factor` | `.factor` | `0.101` | `code-languages/factor` |
@@ -448,18 +484,17 @@ from its package subpath.
448
484
  | <img src="https://avatars.githubusercontent.com/u/5713248?v=4" alt="Flux logo" width="24" height="24"> | Flux | `flux` | `.flux` | `0.200.0` | `code-languages/flux` |
449
485
  | <img src="https://upload.wikimedia.org/wikipedia/commons/a/a5/Gforth_Logo.png" alt="Forth logo" width="24" height="24"> | Forth | `forth` | `.fs`, `.fth`, `.forth`, `.4th` | `Forth 2012` | `code-languages/forth` |
450
486
  | <img src="https://upload.wikimedia.org/wikipedia/commons/b/b8/Fortran_logo.svg" alt="Fortran logo" width="24" height="24"> | Fortran | `fortran` | `.f`, `.for`, `.ftn`, `.f90`, `.f95`, `.f03`, `.f08`, `.f18`, `.f23` | `Fortran 2023` | `code-languages/fortran` |
451
- | <img src="https://freemarker.apache.org/favicon.png" alt="FreeMarker logo" width="24" height="24"> | FreeMarker | `freemarker` | `.ftl`, `.ftlh`, `.ftlx` | `2.3.34` | `code-languages/freemarker` |
452
487
  | <img src="https://cdn.simpleicons.org/facebook/1877F2" alt="FQL logo" width="24" height="24"> | FQL | `fql` | `.fql` | `legacy` | `code-languages/fql` |
488
+ | <img src="https://freemarker.apache.org/favicon.png" alt="FreeMarker logo" width="24" height="24"> | FreeMarker | `freemarker` | `.ftl`, `.ftlh`, `.ftlx` | `2.3.34` | `code-languages/freemarker` |
453
489
  | <img src="https://cdn.simpleicons.org/fsharp/378BBA" alt="F# logo" width="24" height="24"> | F# | `fsharp` | `.fs`, `.fsi`, `.fsx`, `.fsscript` | `10` | `code-languages/fsharp` |
454
490
  | <img src="https://fstar-lang.org/favicon.ico" alt="F* logo" width="24" height="24"> | F* | `fstar` | `.fst`, `.fsti` | `2026.04.17` | `code-languages/fstar` |
455
- | <img src="https://dummyimage.com/32x32/DC2626/ffffff.png&text=G" alt="G-code logo" width="24" height="24"> | G-code | `gcode` | `.gcode`, `.gco`, `.nc`, `.cnc`, `.tap` | `RS-274` | `code-languages/gcode` |
491
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_gcode.svg" alt="G-code logo" width="24" height="24"> | G-code | `gcode` | `.gcode`, `.gco`, `.nc`, `.cnc`, `.tap` | `RS-274` | `code-languages/gcode` |
456
492
  | <img src="https://cdn.simpleicons.org/godotengine/478CBF" alt="GDScript logo" width="24" height="24"> | GDScript | `gdscript` | `.gd` | `4.7` | `code-languages/gdscript` |
457
- | <img src="https://dummyimage.com/32x32/7C3AED/ffffff.png&text=PO" alt="Gettext logo" width="24" height="24"> | Gettext | `gettext` | `.po`, `.pot` | `stable` | `code-languages/gettext` |
493
+ | <img src="https://cdn.simpleicons.org/gnu/A42E2B" alt="Gettext logo" width="24" height="24"> | Gettext | `gettext` | `.po`, `.pot` | `stable` | `code-languages/gettext` |
458
494
  | <img src="https://cdn.simpleicons.org/git/F05032" alt="Git logo" width="24" height="24"> | Git | `git` | `.git`, `.gitignore`, `.gitattributes`, `.gitmodules`, `.gitkeep` | `2.55.0` | `code-languages/git` |
459
- | <img src="https://dummyimage.com/32x32/2D5FA0/ffffff.png&text=AS" alt="AngelScript logo" width="24" height="24"> | AngelScript | `angelscript` | `.as`, `.angelscript` | `2.36.1` | `code-languages/angelscript` |
460
495
  | <img src="https://cdn.simpleicons.org/gleam/FFAFF3" alt="Gleam logo" width="24" height="24"> | Gleam | `gleam` | `.gleam` | `1.17.0` | `code-languages/gleam` |
461
- | <img src="https://cdn.simpleicons.org/gamemaker/000000" alt="GML logo" width="24" height="24"> | GML | `gml` | `.gml` | `2024.13.0` | `code-languages/gml` |
462
496
  | <img src="https://cdn.simpleicons.org/opengl/5586A4" alt="GLSL logo" width="24" height="24"> | GLSL | `glsl` | `.glsl`, `.vert`, `.frag`, `.geom`, `.tesc`, `.tese`, `.comp`, `.vs`, `.fs` | `4.60` | `code-languages/glsl` |
497
+ | <img src="https://cdn.simpleicons.org/gamemaker/000000" alt="GML logo" width="24" height="24"> | GML | `gml` | `.gml` | `2024.13.0` | `code-languages/gml` |
463
498
  | <img src="https://go.dev/blog/go-brand/Go-Logo/SVG/Go-Logo_Blue.svg" alt="Go logo" width="24" height="24"> | Go | `go` | `.go` | `1.26.5` | `code-languages/go` |
464
499
  | <img src="https://cdn.simpleicons.org/gradle/02303A" alt="Gradle logo" width="24" height="24"> | Gradle | `gradle` | `.gradle`, `.gradle.kts` | `9.6.1` | `code-languages/gradle` |
465
500
  | <img src="https://avatars.githubusercontent.com/u/54953488?v=4" alt="Grain logo" width="24" height="24"> | Grain | `grain` | `.gr` | `grain-v0.7.2` | `code-languages/grain` |
@@ -481,13 +516,15 @@ from its package subpath.
481
516
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Configure.svg" alt="INI logo" width="24" height="24"> | INI | `ini` | `.ini` | `Informal format` | `code-languages/ini` |
482
517
  | <img src="https://use.ink/img/favicon.png" alt="Ink! logo" width="24" height="24"> | Ink! | `ink` | `.ink` | `Ink! 6` | `code-languages/ink` |
483
518
  | <img src="https://avatars.githubusercontent.com/u/1987090?v=4" alt="Ink logo" width="24" height="24"> | Ink | `ink-narrative` | `.ink` | `1.2.0` | `code-languages/ink-narrative` |
484
- | <img src="https://dummyimage.com/32x32/2563EB/ffffff.png&text=Io" alt="Io logo" width="24" height="24"> | Io | `io` | `.io` | `2017.09.06` | `code-languages/io` |
519
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_io.svg" alt="Io logo" width="24" height="24"> | Io | `io` | `.io` | `2017.09.06` | `code-languages/io` |
485
520
  | <img src="https://isabelle.in.tum.de/img/favicon.ico" alt="Isabelle logo" width="24" height="24"> | Isabelle | `isabelle` | `.thy` | `Isabelle2025-2` | `code-languages/isabelle` |
486
521
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_janet.svg" alt="Janet logo" width="24" height="24"> | Janet | `janet` | `.janet`, `.jdn` | `1.41.2` | `code-languages/janet` |
487
522
  | <img src="https://www.vectorlogo.zone/logos/java/java-icon.svg" alt="Java logo" width="24" height="24"> | Java | `java` | `.java` | `26` | `code-languages/java` |
488
523
  | <img src="https://upload.wikimedia.org/wikipedia/commons/6/6a/JavaScript-logo.png" alt="JavaScript logo" width="24" height="24"> | JavaScript | `javascript` | `.js`, `.mjs`, `.cjs`, `.jsx` | `ECMAScript 2025` | `code-languages/javascript` |
524
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/5/51/IBM_logo.svg" alt="JCL logo" width="24" height="24"> | JCL | `jcl` | `.jcl` | `z/OS 3.1` | `code-languages/jcl` |
489
525
  | <img src="https://cdn.simpleicons.org/jinja/B41717" alt="Jinja logo" width="24" height="24"> | Jinja | `jinja` | `.jinja`, `.jinja2`, `.j2` | `3.1.6` | `code-languages/jinja` |
490
526
  | <img src="https://jmespath.org/_static/img/logo.png" alt="JMESPath logo" width="24" height="24"> | JMESPath | `jmespath` | `.jmespath`, `.jp` | `stable` | `code-languages/jmespath` |
527
+ | <img src="https://avatars.githubusercontent.com/u/125535133?v=4" alt="jq logo" width="24" height="24"> | jq | `jq` | `.jq` | `1.8.1` | `code-languages/jq` |
491
528
  | <img src="https://www.json.org/img/json160.gif" alt="JSON logo" width="24" height="24"> | JSON | `json` | `.json` | `RFC 8259` | `code-languages/json` |
492
529
  | <img src="https://json5.dev/favicon.svg" alt="JSON5 logo" width="24" height="24"> | JSON5 | `json5` | `.json5` | `2.2.3` | `code-languages/json5` |
493
530
  | <img src="https://jsonata.org/images/jsonata-button.png" alt="JSONata logo" width="24" height="24"> | JSONata | `jsonata` | `.jsonata` | `stable` | `code-languages/jsonata` |
@@ -503,15 +540,16 @@ from its package subpath.
503
540
  | <img src="https://learn.microsoft.com/favicon.ico" alt="KQL logo" width="24" height="24"> | KQL | `kql` | `.kql` | `stable` | `code-languages/kql` |
504
541
  | <img src="https://cdn.simpleicons.org/leanpub/262425" alt="Lean logo" width="24" height="24"> | Lean | `lean` | `.lean` | `4.31.0` | `code-languages/lean` |
505
542
  | <img src="https://upload.wikimedia.org/wikipedia/commons/8/81/LESS_Logo.svg" alt="Less logo" width="24" height="24"> | Less | `less` | `.less` | `4.6.7` | `code-languages/less` |
543
+ | <img src="https://dummyimage.com/32x32/DBCA00/000000.png&text=Lex" alt="Lex logo" width="24" height="24"> | Lex | `lex` | `.l`, `.lex` | `POSIX lex / flex 2.6.4` | `code-languages/lex` |
506
544
  | <img src="https://ligolang.org/img/logo/logo.png" alt="Ligo logo" width="24" height="24"> | Ligo | `ligo` | `.ligo`, `.mligo`, `.religo`, `.jsligo` | `1.x` | `code-languages/ligo` |
507
- | <img src="https://dummyimage.com/32x32/475569/ffffff.png&text=LD" alt="Linker Script logo" width="24" height="24"> | Linker Script | `linkerscript` | `.ld`, `.lds`, `.x` | `stable` | `code-languages/linkerscript` |
508
- | <img src="https://cdn.simpleicons.org/shopify/7AB55C" alt="Liquid logo" width="24" height="24"> | Liquid | `liquid` | `.liquid` | `10.27.1` | `code-languages/liquid` |
545
+ | <img src="https://cdn.simpleicons.org/gnu/A42E2B" alt="Linker Script logo" width="24" height="24"> | Linker Script | `linkerscript` | `.ld`, `.lds`, `.x` | `stable` | `code-languages/linkerscript` |
546
+ | <img src="https://cdn.simpleicons.org/shopify/7AB55C" alt="Liquid logo" width="24" height="24"> | Liquid | `liquid` | `.liquid` | `10.27.2` | `code-languages/liquid` |
509
547
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Lisp_logo.svg" alt="Lisp logo" width="24" height="24"> | Lisp | `lisp` | `.lisp`, `.lsp`, `.cl`, `.asd` | `ANSI INCITS 226-1994` | `code-languages/lisp` |
510
548
  | <img src="https://cdn.simpleicons.org/llvm/262D3A" alt="LLVM IR logo" width="24" height="24"> | LLVM IR | `llvm-ir` | `.ll`, `.bc` | `22.1.8` | `code-languages/llvm-ir` |
511
- | <img src="https://dummyimage.com/32x32/DC2626/ffffff.png&text=Lo" alt="Lobster logo" width="24" height="24"> | Lobster | `lobster` | `.lobster` | `development snapshot` | `code-languages/lobster` |
549
+ | <img src="https://raw.githubusercontent.com/aardappel/lobster/master/docs/lobster.png" alt="Lobster logo" width="24" height="24"> | Lobster | `lobster` | `.lobster` | `development snapshot` | `code-languages/lobster` |
512
550
  | <img src="https://people.eecs.berkeley.edu/~bh/ucblogo.png" alt="Logo logo" width="24" height="24"> | Logo | `logo` | `.logo`, `.lgo` | `UCBLogo 6.2` | `code-languages/logo` |
513
551
  | <img src="https://www.lua.org/images/lua-logo.gif" alt="Lua logo" width="24" height="24"> | Lua | `lua` | `.lua`, `.rockspec` | `5.5.0` | `code-languages/lua` |
514
- | <img src="https://cdn.simpleicons.org/roblox/000000" alt="Luau logo" width="24" height="24"> | Luau | `luau` | `.luau` | `0.728` | `code-languages/luau` |
552
+ | <img src="https://cdn.simpleicons.org/roblox/000000" alt="Luau logo" width="24" height="24"> | Luau | `luau` | `.luau` | `0.729` | `code-languages/luau` |
515
553
  | <img src="https://upload.wikimedia.org/wikipedia/commons/7/71/Heckert_gnu.small.png" alt="Makefile logo" width="24" height="24"> | Makefile | `makefile` | `Makefile`, `makefile`, `GNUmakefile`, `.mk`, `.mak` | `4.4.1` | `code-languages/makefile` |
516
554
  | <img src="https://cdn.simpleicons.org/python/3776AB" alt="Mako logo" width="24" height="24"> | Mako | `mako` | `.mako`, `.mao` | `1.3.10` | `code-languages/mako` |
517
555
  | <img src="https://upload.wikimedia.org/wikipedia/commons/4/48/Markdown-mark.svg" alt="Markdown logo" width="24" height="24"> | Markdown | `markdown` | `.md`, `.markdown`, `.mdown`, `.mkd` | `CommonMark 4.0` | `code-languages/markdown` |
@@ -520,13 +558,13 @@ from its package subpath.
520
558
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Matlab_Logo.png" alt="MATLAB logo" width="24" height="24"> | MATLAB | `matlab` | `.m`, `.mlx` | `R2026a` | `code-languages/matlab` |
521
559
  | <img src="https://maxima.sourceforge.io/img/maxima.svg" alt="Maxima logo" width="24" height="24"> | Maxima | `maxima` | `.mac`, `.wxm` | `5.49.0` | `code-languages/maxima` |
522
560
  | <img src="https://cdn.simpleicons.org/mdx/1B1F24" alt="MDX logo" width="24" height="24"> | MDX | `mdx` | `.mdx` | `3.1.1` | `code-languages/mdx` |
523
- | <img src="https://cdn.simpleicons.org/mermaid/FF3670" alt="Mermaid logo" width="24" height="24"> | Mermaid | `mermaid` | `.mmd`, `.mermaid` | `11.16.0` | `code-languages/mermaid` |
524
- | <img src="https://raw.githubusercontent.com/mesonbuild/meson/master/graphics/meson_logo.svg" alt="Meson logo" width="24" height="24"> | Meson | `meson` | `meson.build`, `meson_options.txt`, `meson.options`, `.wrap` | `1.11.1` | `code-languages/meson` |
525
561
  | <img src="https://www.mercurylang.org/favicon.ico" alt="Mercury logo" width="24" height="24"> | Mercury | `mercury` | `.m` | `22.01.8` | `code-languages/mercury` |
562
+ | <img src="https://cdn.simpleicons.org/mermaid/FF3670" alt="Mermaid logo" width="24" height="24"> | Mermaid | `mermaid` | `.mmd`, `.mermaid` | `11.16.0` | `code-languages/mermaid` |
563
+ | <img src="https://raw.githubusercontent.com/mesonbuild/meson/master/graphics/meson_logo.svg" alt="Meson logo" width="24" height="24"> | Meson | `meson` | `meson.build`, `meson_options.txt`, `meson.options`, `.wrap` | `1.11.2` | `code-languages/meson` |
526
564
  | <img src="https://developer.apple.com/assets/elements/icons/metal/metal-256x256_2x.png" alt="Metal logo" width="24" height="24"> | Metal | `metal` | `.metal` | `Metal 4` | `code-languages/metal` |
527
565
  | <img src="https://avatars.githubusercontent.com/u/3727943?v=4" alt="Modelica logo" width="24" height="24"> | Modelica | `modelica` | `.mo` | `3.6.1` | `code-languages/modelica` |
528
- | <img src="https://avatars.githubusercontent.com/u/107116314?v=4" alt="Mojo logo" width="24" height="24"> | Mojo | `mojo` | `.mojo` | `0.26.1` | `code-languages/mojo` |
529
566
  | <img src="https://dummyimage.com/32x32/2563EB/ffffff.png&text=M2" alt="Modula-2 logo" width="24" height="24"> | Modula-2 | `modula-2` | `.mod`, `.def` | `ISO/IEC 10514-1:1996` | `code-languages/modula-2` |
567
+ | <img src="https://avatars.githubusercontent.com/u/107116314?v=4" alt="Mojo logo" width="24" height="24"> | Mojo | `mojo` | `.mojo` | `0.26.1` | `code-languages/mojo` |
530
568
  | <img src="https://avatars.githubusercontent.com/u/124476259?v=4" alt="MoonBit logo" width="24" height="24"> | MoonBit | `moonbit` | `.mbt` | `0.9.2` | `code-languages/moonbit` |
531
569
  | <img src="https://avatars.githubusercontent.com/u/108696678?v=4" alt="Move logo" width="24" height="24"> | Move | `move` | `.move` | `2.0.0` | `code-languages/move` |
532
570
  | <img src="https://avatars.githubusercontent.com/u/1506671?v=4" alt="MUMPS logo" width="24" height="24"> | MUMPS | `mumps` | `.mac`, `.int`, `.ro`, `.mro` | `InterSystems IRIS 2025.1` | `code-languages/mumps` |
@@ -539,10 +577,10 @@ from its package subpath.
539
577
  | <img src="https://cdn.simpleicons.org/nixos/5277C3" alt="Nix logo" width="24" height="24"> | Nix | `nix` | `.nix` | `2.34.8` | `code-languages/nix` |
540
578
  | <img src="https://cdn.simpleicons.org/nunjucks/1C4A1C" alt="Nunjucks logo" width="24" height="24"> | Nunjucks | `nunjucks` | `.njk`, `.nunjucks` | `3.2.4` | `code-languages/nunjucks` |
541
579
  | <img src="https://cdn.simpleicons.org/nushell/3AA675" alt="Nushell logo" width="24" height="24"> | Nushell | `nushell` | `.nu` | `0.114.0` | `code-languages/nushell` |
580
+ | <img src="https://dummyimage.com/32x32/0F766E/ffffff.png&text=Ob" alt="Oberon logo" width="24" height="24"> | Oberon | `oberon` | `.ob`, `.mod` | `Oberon-2` | `code-languages/oberon` |
542
581
  | <img src="https://upload.wikimedia.org/wikipedia/commons/1/1b/Apple_logo_grey.svg" alt="Objective-C logo" width="24" height="24"> | Objective-C | `objective-c` | `.m`, `.mm` | `2.0` | `code-languages/objective-c` |
543
582
  | <img src="https://cdn.simpleicons.org/ocaml/EC6813" alt="OCaml logo" width="24" height="24"> | OCaml | `ocaml` | `.ml`, `.mli`, `.mll`, `.mly`, `.mlt`, `.eliom`, `.eliomi` | `5.6.0` | `code-languages/ocaml` |
544
583
  | <img src="https://upload.wikimedia.org/wikipedia/commons/6/6a/Gnu-octave-logo.svg" alt="Octave logo" width="24" height="24"> | Octave | `octave` | `.m`, `.octave` | `9.3.0` | `code-languages/octave` |
545
- | <img src="https://dummyimage.com/32x32/0F766E/ffffff.png&text=Ob" alt="Oberon logo" width="24" height="24"> | Oberon | `oberon` | `.ob`, `.mod` | `Oberon-2` | `code-languages/oberon` |
546
584
  | <img src="https://avatars.githubusercontent.com/u/12533910?v=4" alt="Odin logo" width="24" height="24"> | Odin | `odin` | `.odin` | `dev-2026-02` | `code-languages/odin` |
547
585
  | <img src="https://cdn.simpleicons.org/openapiinitiative/6BA539" alt="OpenAPI logo" width="24" height="24"> | OpenAPI | `openapi` | `.openapi.json`, `.openapi.yaml`, `.openapi.yml` | `3.2.0` | `code-languages/openapi` |
548
586
  | <img src="https://cdn.simpleicons.org/khronosgroup/CC3333" alt="OpenCL C logo" width="24" height="24"> | OpenCL C | `opencl` | `.cl`, `.clh` | `OpenCL C 3.0` | `code-languages/opencl` |
@@ -552,19 +590,20 @@ from its package subpath.
552
590
  | <img src="https://cdn.simpleicons.org/perl/39457E" alt="Perl logo" width="24" height="24"> | Perl | `perl` | `.pl`, `.pm`, `.pod`, `.t`, `.psgi` | `5.42.2` | `code-languages/perl` |
553
591
  | <img src="https://www.php.net/images/logos/new-php-logo.svg" alt="PHP logo" width="24" height="24"> | PHP | `php` | `.php`, `.phtml`, `.php3`, `.php4`, `.php5`, `.phps` | `8.5.8` | `code-languages/php` |
554
592
  | <img src="https://cdn.simpleicons.org/tradingview/131722" alt="Pine Script logo" width="24" height="24"> | Pine Script | `pine-script` | `.pine` | `v6` | `code-languages/pine-script` |
555
- | <img src="https://dummyimage.com/32x32/1F2937/ffffff.png&text=PL1" alt="PL/I logo" width="24" height="24"> | PL/I | `pl-i` | `.pli`, `.pl1` | `Enterprise PL/I 6.2` | `code-languages/pl-i` |
556
593
  | <img src="https://avatars.githubusercontent.com/u/10639145?v=4" alt="Pkl logo" width="24" height="24"> | Pkl | `pkl` | `.pkl` | `0.31.1` | `code-languages/pkl` |
594
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/5/51/IBM_logo.svg" alt="PL/I logo" width="24" height="24"> | PL/I | `pl-i` | `.pli`, `.pl1` | `Enterprise PL/I 6.2` | `code-languages/pl-i` |
557
595
  | <img src="https://plantuml.com/logo3.png" alt="PlantUML logo" width="24" height="24"> | PlantUML | `plantuml` | `.puml`, `.plantuml`, `.iuml` | `1.2026.6` | `code-languages/plantuml` |
558
596
  | <img src="https://cdn.simpleicons.org/postgresql/4169E1" alt="PL/pgSQL logo" width="24" height="24"> | PL/pgSQL | `plpgsql` | `.pgsql`, `.plpgsql` | `stable` | `code-languages/plpgsql` |
559
597
  | <img src="https://github.com/oracle.png" alt="Oracle PL/SQL logo" width="24" height="24"> | Oracle PL/SQL | `plsql` | `.pls`, `.pks`, `.pkb`, `.plsql` | `Oracle Database 26ai` | `code-languages/plsql` |
560
598
  | <img src="https://cdn.simpleicons.org/perl/39457E" alt="Plain Old Documentation logo" width="24" height="24"> | Plain Old Documentation | `pod` | `.pod` | `Perl 5.42.2` | `code-languages/pod` |
561
599
  | <img src="https://avatars.githubusercontent.com/u/14593805?v=4" alt="Pony logo" width="24" height="24"> | Pony | `pony` | `.pony` | `0.61.1` | `code-languages/pony` |
562
- | <img src="https://dummyimage.com/32x32/EC1C24/ffffff.png&text=PS" alt="PostScript logo" width="24" height="24"> | PostScript | `postscript` | `.ps`, `.eps` | `PostScript 3` | `code-languages/postscript` |
563
- | <img src="https://dummyimage.com/32x32/F2C811/000000.png&text=PQ" alt="Power Query M logo" width="24" height="24"> | Power Query M | `powerquery` | `.pq`, `.pqm` | `Power Query M 2025` | `code-languages/powerquery` |
600
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_postscript.svg" alt="PostScript logo" width="24" height="24"> | PostScript | `postscript` | `.ps`, `.eps` | `PostScript 3` | `code-languages/postscript` |
601
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/c/cf/New_Power_BI_Logo.svg" alt="Power Query M logo" width="24" height="24"> | Power Query M | `powerquery` | `.pq`, `.pqm` | `Power Query M 2025` | `code-languages/powerquery` |
564
602
  | <img src="https://upload.wikimedia.org/wikipedia/commons/2/2f/PowerShell_5.0_icon.png" alt="PowerShell logo" width="24" height="24"> | PowerShell | `powershell` | `.ps1`, `.psm1`, `.psd1`, `.ps1xml` | `7.6.3` | `code-languages/powershell` |
565
603
  | <img src="https://cdn.simpleicons.org/processingfoundation/006699" alt="Processing logo" width="24" height="24"> | Processing | `processing` | `.pde` | `4.4.5` | `code-languages/processing` |
566
604
  | <img src="https://www.swi-prolog.org/icons/swipl.png" alt="Prolog logo" width="24" height="24"> | Prolog | `prolog` | `.pl`, `.pro`, `.prolog`, `.P` | `SWI-Prolog 10.0` | `code-languages/prolog` |
567
605
  | <img src="https://cdn.simpleicons.org/prometheus/E6522C" alt="PromQL logo" width="24" height="24"> | PromQL | `promql` | `.promql` | `Prometheus 3.x` | `code-languages/promql` |
606
+ | <img src="https://cdn.simpleicons.org/openjdk/437291" alt="Java Properties logo" width="24" height="24"> | Java Properties | `properties` | `.properties` | `stable` | `code-languages/properties` |
568
607
  | <img src="https://cdn.simpleicons.org/google/4285F4" alt="Protocol Buffers logo" width="24" height="24"> | Protocol Buffers | `protobuf` | `.proto` | `35.1` | `code-languages/protobuf` |
569
608
  | <img src="https://cdn.simpleicons.org/pug/A86454" alt="Pug logo" width="24" height="24"> | Pug | `pug` | `.pug`, `.jade` | `3.0.4` | `code-languages/pug` |
570
609
  | <img src="https://cdn.simpleicons.org/puppet/FFAE1A" alt="Puppet logo" width="24" height="24"> | Puppet | `puppet` | `.pp`, `.epp` | `Puppet 8` | `code-languages/puppet` |
@@ -577,16 +616,17 @@ from its package subpath.
577
616
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Racket-logo.svg" alt="Racket logo" width="24" height="24"> | Racket | `racket` | `.rkt`, `.rktd`, `.rktl`, `.scrbl` | `9.2` | `code-languages/racket` |
578
617
  | <img src="https://github.com/Raku.png" alt="Raku logo" width="24" height="24"> | Raku | `raku` | `.raku`, `.rakumod`, `.rakudoc`, `.rakutest`, `.p6`, `.pm6` | `6.d` | `code-languages/raku` |
579
618
  | <img src="https://cdn.simpleicons.org/dotnet/512BD4" alt="Razor logo" width="24" height="24"> | Razor | `razor` | `.cshtml`, `.razor` | `10.0.9` | `code-languages/razor` |
619
+ | <img src="https://cdn.simpleicons.org/reason/DD4B39" alt="ReasonML logo" width="24" height="24"> | ReasonML | `reasonml` | `.re`, `.rei` | `3.13.0` | `code-languages/reasonml` |
580
620
  | <img src="https://www.rebol.com/graphics/reb-logo.gif" alt="Rebol logo" width="24" height="24"> | Rebol | `rebol` | `.r`, `.reb`, `.rebol` | `Rebol 3` | `code-languages/rebol` |
581
621
  | <img src="https://static.red-lang.org/red-logo.svg" alt="Red logo" width="24" height="24"> | Red | `red` | `.red`, `.reds` | `0.6.6` | `code-languages/red` |
582
- | <img src="https://cdn.simpleicons.org/reason/DD4B39" alt="ReasonML logo" width="24" height="24"> | ReasonML | `reasonml` | `.re`, `.rei` | `3.13.0` | `code-languages/reasonml` |
583
622
  | <img src="https://raw.githubusercontent.com/open-policy-agent/opa/main/logo/logo.svg" alt="Rego logo" width="24" height="24"> | Rego | `rego` | `.rego` | `OPA 1.18.2` | `code-languages/rego` |
584
623
  | <img src="https://cdn.simpleicons.org/rescript/E6484A" alt="ReScript logo" width="24" height="24"> | ReScript | `rescript` | `.res`, `.resi` | `12.3.0` | `code-languages/rescript` |
585
624
  | <img src="https://cdn.simpleicons.org/readthedocs/8CA1AF" alt="reStructuredText logo" width="24" height="24"> | reStructuredText | `restructuredtext` | `.rst`, `.rest` | `Docutils 0.22.2` | `code-languages/restructuredtext` |
625
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_rexx.svg" alt="REXX logo" width="24" height="24"> | REXX | `rexx` | `.rexx`, `.rex` | `ANSI X3.274-1996` | `code-languages/rexx` |
586
626
  | <img src="https://avatars.githubusercontent.com/u/96867701?v=4" alt="Roc logo" width="24" height="24"> | Roc | `roc` | `.roc` | `development snapshot` | `code-languages/roc` |
587
627
  | <img src="https://avatars.githubusercontent.com/u/733939?v=4" alt="RPG logo" width="24" height="24"> | RPG | `rpg` | `.rpg`, `.rpgle`, `.sqlrpgle`, `.clle`, `.dspf` | `RPG IV Free-Form (IBM i 7.5)` | `code-languages/rpg` |
588
628
  | <img src="https://www.ruby-lang.org/images/header-ruby-logo.png" alt="Ruby logo" width="24" height="24"> | Ruby | `ruby` | `.rb`, `.rbw`, `.rake`, `.gemspec`, `Gemfile`, `Rakefile`, `config.ru` | `4.0.5` | `code-languages/ruby` |
589
- | <img src="https://www.rust-lang.org/logos/rust-logo-512x512.png" alt="Rust logo" width="24" height="24"> | Rust | `rust` | `.rs` | `1.96.1` | `code-languages/rust` |
629
+ | <img src="https://www.rust-lang.org/logos/rust-logo-512x512.png" alt="Rust logo" width="24" height="24"> | Rust | `rust` | `.rs` | `1.97.0` | `code-languages/rust` |
590
630
  | <img src="https://upload.wikimedia.org/wikipedia/commons/1/10/SAS_logo_horiz.svg" alt="SAS logo" width="24" height="24"> | SAS | `sas` | `.sas` | `SAS 9.4` | `code-languages/sas` |
591
631
  | <img src="https://cdn.simpleicons.org/scala/DC322F" alt="Scala logo" width="24" height="24"> | Scala | `scala` | `.scala`, `.sc` | `3.8.4` | `code-languages/scala` |
592
632
  | <img src="https://cdn.simpleicons.org/racket/9F1D20" alt="Scheme logo" width="24" height="24"> | Scheme | `scheme` | `.scm`, `.ss`, `.sld`, `.sls` | `R7RS small` | `code-languages/scheme` |
@@ -597,14 +637,14 @@ from its package subpath.
597
637
  | <img src="https://www.smarty.net/images/logo_print.gif" alt="Smarty logo" width="24" height="24"> | Smarty | `smarty` | `.tpl`, `.smarty` | `5.5.1` | `code-languages/smarty` |
598
638
  | <img src="https://avatars.githubusercontent.com/u/33450111?v=4" alt="Snakemake logo" width="24" height="24"> | Snakemake | `snakemake` | `.smk`, `Snakefile` | `9.23.1` | `code-languages/snakemake` |
599
639
  | <img src="https://dummyimage.com/32x32/7C2D12/ffffff.png&text=SN" alt="SNOBOL logo" width="24" height="24"> | SNOBOL | `snobol` | `.sno`, `.snobol` | `SNOBOL4` | `code-languages/snobol` |
600
- | <img src="https://cdn.simpleicons.org/solidity/363636" alt="Solidity logo" width="24" height="24"> | Solidity | `solidity` | `.sol` | `0.8.35` | `code-languages/solidity` |
640
+ | <img src="https://cdn.simpleicons.org/solidity/363636" alt="Solidity logo" width="24" height="24"> | Solidity | `solidity` | `.sol` | `0.8.36` | `code-languages/solidity` |
601
641
  | <img src="https://commons.wikimedia.org/wiki/Special:FilePath/Salesforce.com_logo.svg" alt="SOQL logo" width="24" height="24"> | SOQL | `soql` | `.soql` | `stable` | `code-languages/soql` |
642
+ | <img src="https://avatars.githubusercontent.com/u/7767877?v=4" alt="SPARK logo" width="24" height="24"> | SPARK | `spark` | `.spark`, `.adb`, `.ads` | `SPARK Community 2021` | `code-languages/spark` |
602
643
  | <img src="https://www.w3.org/RDF/icons/rdf_flyer.svg" alt="SPARQL logo" width="24" height="24"> | SPARQL | `sparql` | `.sparql`, `.rq` | `1.1` | `code-languages/sparql` |
603
- | <img src="https://dummyimage.com/32x32/DC2626/ffffff.png&text=SP" alt="SPARK logo" width="24" height="24"> | SPARK | `spark` | `.spark`, `.adb`, `.ads` | `SPARK Community 2021` | `code-languages/spark` |
604
644
  | <img src="https://cdn.simpleicons.org/splunk/000000" alt="SPL logo" width="24" height="24"> | SPL | `spl` | `.spl` | `stable` | `code-languages/spl` |
605
- | <img src="https://dummyimage.com/32x32/052FAD/ffffff.png&text=SPSS" alt="SPSS logo" width="24" height="24"> | SPSS | `spss` | `.sps`, `.spss` | `29.0` | `code-languages/spss` |
645
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/e/ea/SPSS_logo.svg" alt="SPSS logo" width="24" height="24"> | SPSS | `spss` | `.sps`, `.spss` | `29.0` | `code-languages/spss` |
606
646
  | <img src="https://upload.wikimedia.org/wikipedia/commons/8/87/Sql_data_base_with_logo.png" alt="SQL logo" width="24" height="24"> | SQL | `sql` | `.sql` | `SQL:2023` | `code-languages/sql` |
607
- | <img src="https://dummyimage.com/32x32/CC4A00/ffffff.png&text=SQ" alt="Squirrel logo" width="24" height="24"> | Squirrel | `squirrel` | `.nut` | `3.2` | `code-languages/squirrel` |
647
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_squirrel.svg" alt="Squirrel logo" width="24" height="24"> | Squirrel | `squirrel` | `.nut` | `3.2` | `code-languages/squirrel` |
608
648
  | <img src="https://avatars.githubusercontent.com/u/62883579?v=4" alt="Standard ML logo" width="24" height="24"> | Standard ML | `standard-ml` | `.sml`, `.sig`, `.fun` | `The Definition 1997` | `code-languages/standard-ml` |
609
649
  | <img src="https://cdn.simpleicons.org/bazel/43A047" alt="Starlark logo" width="24" height="24"> | Starlark | `starlark` | `.bzl`, `.star`, `.sky` | `Bazel Starlark` | `code-languages/starlark` |
610
650
  | <img src="https://www.stata.com/includes/images/stata-logo-blue.svg" alt="Stata logo" width="24" height="24"> | Stata | `stata` | `.do`, `.ado`, `.mata` | `19` | `code-languages/stata` |
@@ -624,22 +664,24 @@ from its package subpath.
624
664
  | <img src="https://icons.iconarchive.com/icons/simpleicons-team/simple/128/microsoft-sqlserver-icon.png" alt="T-SQL logo" width="24" height="24"> | T-SQL | `tsql` | `.sql`, `.tsql` | `SQL Server 2025 (17.x)` | `code-languages/tsql` |
625
665
  | <img src="https://avatars.githubusercontent.com/u/2966890?v=4" alt="Twee/Twine logo" width="24" height="24"> | Twee/Twine | `twee` | `.tw`, `.twee`, `.tw2` | `2.10.0` | `code-languages/twee` |
626
666
  | <img src="https://twig.symfony.com/images/logo.png" alt="Twig logo" width="24" height="24"> | Twig | `twig` | `.twig` | `3.28.0` | `code-languages/twig` |
627
- | <img src="https://www.typescriptlang.org/icons/icon-512x512.png" alt="TypeScript logo" width="24" height="24"> | TypeScript | `typescript` | `.ts`, `.tsx`, `.mts`, `.cts` | `6.0` | `code-languages/typescript` |
667
+ | <img src="https://www.typescriptlang.org/icons/icon-512x512.png" alt="TypeScript logo" width="24" height="24"> | TypeScript | `typescript` | `.ts`, `.tsx`, `.mts`, `.cts` | `7.0` | `code-languages/typescript` |
628
668
  | <img src="https://cdn.simpleicons.org/typst/239DAD" alt="Typst logo" width="24" height="24"> | Typst | `typst` | `.typ` | `0.15.0` | `code-languages/typst` |
629
669
  | <img src="https://avatars.githubusercontent.com/u/18563978?v=4" alt="Unison logo" width="24" height="24"> | Unison | `unison` | `.u`, `.uu` | `0.5.28` | `code-languages/unison` |
630
670
  | <img src="https://cdn.simpleicons.org/v/5D87BF" alt="V logo" width="24" height="24"> | V | `v` | `.v`, `.vsh` | `weekly.2025.49` | `code-languages/v` |
631
671
  | <img src="https://cdn.simpleicons.org/gnome/4A86CF" alt="Vala logo" width="24" height="24"> | Vala | `vala` | `.vala`, `.vapi` | `0.56.18` | `code-languages/vala` |
632
- | <img src="https://dummyimage.com/32x32/059669/ffffff.png&text=Va" alt="Vale logo" width="24" height="24"> | Vale | `vale` | `.vale` | `experimental` | `code-languages/vale` |
633
- | <img src="https://dummyimage.com/32x32/217346/ffffff.png&text=VBA" alt="VBA logo" width="24" height="24"> | VBA | `vba` | `.bas`, `.cls`, `.frm`, `.vba` | `VBA 7.1` | `code-languages/vba` |
672
+ | <img src="https://avatars.githubusercontent.com/u/67560249?v=4" alt="Vale logo" width="24" height="24"> | Vale | `vale` | `.vale` | `experimental` | `code-languages/vale` |
673
+ | <img src="https://raw.githubusercontent.com/vscode-icons/vscode-icons/master/icons/file_type_vba.svg" alt="VBA logo" width="24" height="24"> | VBA | `vba` | `.bas`, `.cls`, `.frm`, `.vba` | `VBA 7.1` | `code-languages/vba` |
674
+ | <img src="https://dummyimage.com/32x32/15DCDC/000000.png&text=VBS" alt="VBScript logo" width="24" height="24"> | VBScript | `vbscript` | `.vbs`, `.vbe` | `5.8` | `code-languages/vbscript` |
634
675
  | <img src="https://velocity.apache.org/engine/devel/images/velocity-logo.png" alt="Apache Velocity logo" width="24" height="24"> | Apache Velocity | `velocity` | `.vm`, `.vtl` | `2.4.1` | `code-languages/velocity` |
635
676
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_verilog.svg" alt="Verilog/SystemVerilog logo" width="24" height="24"> | Verilog/SystemVerilog | `verilog` | `.v`, `.vh`, `.sv`, `.svh` | `IEEE 1800-2023` | `code-languages/verilog` |
636
- | <img src="https://dummyimage.com/32x32/111827/ffffff.png&text=Ve" alt="Verse logo" width="24" height="24"> | Verse | `verse` | `.verse` | `UEFN Verse` | `code-languages/verse` |
677
+ | <img src="https://cdn.simpleicons.org/epicgames" alt="Verse logo" width="24" height="24"> | Verse | `verse` | `.verse` | `UEFN Verse` | `code-languages/verse` |
637
678
  | <img src="https://cdn.jsdelivr.net/gh/vscode-icons/vscode-icons@master/icons/file_type_vhdl.svg" alt="VHDL logo" width="24" height="24"> | VHDL | `vhdl` | `.vhd`, `.vhdl` | `IEEE 1076-2019` | `code-languages/vhdl` |
679
+ | <img src="https://cdn.simpleicons.org/vim/019733" alt="Vim script logo" width="24" height="24"> | Vim script | `vimscript` | `.vim`, `.vimrc`, `.gvimrc` | `Vim 9.1` | `code-languages/vimscript` |
638
680
  | <img src="https://upload.wikimedia.org/wikipedia/commons/4/40/VB.NET_Logo.svg" alt="Visual Basic logo" width="24" height="24"> | Visual Basic | `visual-basic` | `.vb` | `17.13` | `code-languages/visual-basic` |
639
681
  | <img src="https://upload.wikimedia.org/wikipedia/commons/9/95/Vue.js_Logo_2.svg" alt="Vue logo" width="24" height="24"> | Vue | `vue` | `.vue` | `3.5.39` | `code-languages/vue` |
640
682
  | <img src="https://avatars.githubusercontent.com/u/37288461?v=4" alt="Vyper logo" width="24" height="24"> | Vyper | `vyper` | `.vy` | `0.4.3` | `code-languages/vyper` |
641
- | <img src="https://upload.wikimedia.org/wikipedia/commons/1/1f/WebAssembly_Logo.svg" alt="WebAssembly logo" width="24" height="24"> | WebAssembly | `webassembly` | `.wasm`, `.wat` | `3.0` | `code-languages/webassembly` |
642
683
  | <img src="https://avatars.githubusercontent.com/u/23492081?v=4" alt="WDL logo" width="24" height="24"> | WDL | `wdl` | `.wdl` | `1.2.0` | `code-languages/wdl` |
684
+ | <img src="https://upload.wikimedia.org/wikipedia/commons/1/1f/WebAssembly_Logo.svg" alt="WebAssembly logo" width="24" height="24"> | WebAssembly | `webassembly` | `.wasm`, `.wat` | `3.0` | `code-languages/webassembly` |
643
685
  | <img src="https://cdn.simpleicons.org/webgpu/005A9C" alt="WGSL logo" width="24" height="24"> | WGSL | `wgsl` | `.wgsl` | `Candidate Recommendation Draft 2026-05-07` | `code-languages/wgsl` |
644
686
  | <img src="https://avatars.githubusercontent.com/u/8763410?v=4" alt="Wren logo" width="24" height="24"> | Wren | `wren` | `.wren` | `0.4.0` | `code-languages/wren` |
645
687
  | <img src="https://cdn.simpleicons.org/dotnet/512BD4" alt="XAML logo" width="24" height="24"> | XAML | `xaml` | `.xaml`, `.baml` | `Platform-specific` | `code-languages/xaml` |
@@ -647,6 +689,7 @@ from its package subpath.
647
689
  | <img src="https://upload.wikimedia.org/wikipedia/commons/6/68/XML.svg" alt="XPath logo" width="24" height="24"> | XPath | `xpath` | `.xpath`, `.xpth` | `XPath 3.1` | `code-languages/xpath` |
648
690
  | <img src="https://upload.wikimedia.org/wikipedia/commons/6/68/XML.svg" alt="XQuery logo" width="24" height="24"> | XQuery | `xquery` | `.xq`, `.xql`, `.xqm`, `.xquery`, `.xqy` | `XQuery 3.1` | `code-languages/xquery` |
649
691
  | <img src="https://upload.wikimedia.org/wikipedia/commons/6/68/XML.svg" alt="XSLT logo" width="24" height="24"> | XSLT | `xslt` | `.xsl`, `.xslt` | `XSLT 3.0` | `code-languages/xslt` |
692
+ | <img src="https://cdn.simpleicons.org/gnu/A42E2B" alt="Yacc logo" width="24" height="24"> | Yacc | `yacc` | `.y`, `.yacc` | `POSIX yacc / Bison 3.8.2` | `code-languages/yacc` |
650
693
  | <img src="https://upload.wikimedia.org/wikipedia/commons/5/5a/Official_YAML_Logo.svg" alt="YAML logo" width="24" height="24"> | YAML | `yaml` | `.yaml`, `.yml` | `1.2.2` | `code-languages/yaml` |
651
694
  | <img src="https://avatars.githubusercontent.com/u/6306898?v=4" alt="YARA logo" width="24" height="24"> | YARA | `yara` | `.yar`, `.yara` | `4.5.5` | `code-languages/yara` |
652
695
  | <img src="https://avatars.githubusercontent.com/u/10666805?v=4" alt="Zeek logo" width="24" height="24"> | Zeek | `zeek` | `.zeek`, `.bro` | `8.0.8` | `code-languages/zeek` |
@@ -1,5 +1,5 @@
1
- import { L as LanguageSlug } from './registry-p4uQJ2gP.cjs';
2
- import { d as Locale, e as LocalizedLanguage } from './types-B0_wjl_Q.cjs';
1
+ import { L as LanguageSlug } from './registry-XRfwD571.cjs';
2
+ import { e as Locale, f as LocalizedLanguage } from './types-DkAECzIe.cjs';
3
3
 
4
4
  type LanguageCategory = 'frontend' | 'backend' | 'fullstack' | 'systems' | 'data-science' | 'scripting' | 'other';
5
5
  declare function getCategories(): LanguageCategory[];
@@ -41,7 +41,6 @@ interface RuntimeInfo {
41
41
  }
42
42
  declare function getRuntimes(): RuntimeInfo[];
43
43
 
44
- type RuntimeLanguageSlug = LanguageSlug | (string & {});
45
44
  interface LanguageRequest {
46
45
  /**
47
46
  * Sets the requested locale for this language lookup.
@@ -62,6 +61,18 @@ interface LanguageRequest {
62
61
  */
63
62
  load(): Promise<LocalizedLanguage | undefined>;
64
63
  }
64
+ /**
65
+ * A `LanguageRequest` for a slug that is statically known to exist in the catalog,
66
+ * so `get()` and `load()` never return `undefined`.
67
+ */
68
+ interface ResolvedLanguageRequest {
69
+ /** Sets the requested locale for this language lookup. */
70
+ locale(locale: Locale): ResolvedLanguageRequest;
71
+ /** Reads the language from the in-memory catalog and localizes it. */
72
+ get(): LocalizedLanguage;
73
+ /** Dynamically imports the language module and localizes it. */
74
+ load(): Promise<LocalizedLanguage>;
75
+ }
65
76
  interface RuntimeRequest {
66
77
  /** Metadata about the matched runtime platform. Returns undefined for unknown values. */
67
78
  info(): RuntimeInfo | undefined;
@@ -92,6 +103,10 @@ interface EcosystemRequest {
92
103
  /** Languages that belong to this ecosystem. */
93
104
  langs(): LanguageCollectionRequest;
94
105
  }
106
+ interface ExtensionRequest {
107
+ /** Languages whose extensions include this extension or exact filename. */
108
+ langs(): LanguageCollectionRequest;
109
+ }
95
110
  interface LanguageCollectionRequest {
96
111
  /**
97
112
  * Sets the requested locale for every language returned by this collection lookup.
@@ -114,14 +129,18 @@ interface LanguageCollectionRequest {
114
129
  */
115
130
  declare const api: {
116
131
  /**
117
- * Selects a language by slug.
132
+ * Selects a language by slug or alias.
118
133
  *
119
- * Input is normalized to the package slug format before lookup.
134
+ * Input is normalized to the package slug format before lookup, and language
135
+ * aliases such as `golang`, `C#`, or `wasm` resolve to their catalog slug.
136
+ * When the slug is a known literal, `get()` and `load()` are typed as
137
+ * always returning a language.
120
138
  *
121
139
  * @example
122
140
  * api.language("astro").locale("es-PE").get();
141
+ * api.language("golang").get()?.slug; // "go"
123
142
  */
124
- language(slug: RuntimeLanguageSlug): LanguageRequest;
143
+ language<Slug extends string>(slug: Slug): Slug extends LanguageSlug ? ResolvedLanguageRequest : LanguageRequest;
125
144
  /**
126
145
  * Selects every language in the catalog.
127
146
  *
@@ -136,6 +155,18 @@ declare const api: {
136
155
  * api.detect("src/App.vue").locale("es").get();
137
156
  */
138
157
  detect(filename: string): LanguageRequest;
158
+ /**
159
+ * Selects every language that registers the given file extension or exact filename.
160
+ *
161
+ * Accepts values with or without the leading dot: `.ts`, `ts`, or `Dockerfile`.
162
+ * Unlike `detect`, this matches the extension entry exactly instead of ranking
163
+ * suffix matches, so `api.extension('.h')` returns both C and C++.
164
+ *
165
+ * @example
166
+ * api.extension('.h').langs().get().map((language) => language.slug); // ["c", "cpp"]
167
+ * api.extension('ts').langs().locale('es').get();
168
+ */
169
+ extension(value: string): ExtensionRequest;
139
170
  /**
140
171
  * Selects every language that runs on or targets the given platform or runtime.
141
172
  *
@@ -207,4 +238,4 @@ declare const api: {
207
238
  detectAll(filename: string): LanguageCollectionRequest;
208
239
  };
209
240
 
210
- export { type CategoryRequest as C, type EcosystemInfo as E, type LanguageCategory as L, type PackageManagerInfo as P, type RuntimeInfo as R, type EcosystemRequest as a, type ParadigmInfo as b, type ParadigmRequest as c, api as d, getEcosystems as e, getPackageManagers as f, getCategories as g, getParadigms as h, getRuntimes as i, type LanguageCollectionRequest as j, type LanguageRequest as k, type PackageManagerRequest as l, type RuntimeRequest as m };
241
+ export { type CategoryRequest as C, type EcosystemInfo as E, type LanguageCategory as L, type PackageManagerInfo as P, type ResolvedLanguageRequest as R, type EcosystemRequest as a, type ExtensionRequest as b, type ParadigmInfo as c, type ParadigmRequest as d, type RuntimeInfo as e, api as f, getCategories as g, getEcosystems as h, getPackageManagers as i, getParadigms as j, getRuntimes as k, type LanguageCollectionRequest as l, type LanguageRequest as m, type PackageManagerRequest as n, type RuntimeRequest as o };
@@ -1,5 +1,5 @@
1
- import { L as LanguageSlug } from './registry-p4uQJ2gP.js';
2
- import { d as Locale, e as LocalizedLanguage } from './types-B0_wjl_Q.js';
1
+ import { L as LanguageSlug } from './registry-XRfwD571.js';
2
+ import { e as Locale, f as LocalizedLanguage } from './types-DkAECzIe.js';
3
3
 
4
4
  type LanguageCategory = 'frontend' | 'backend' | 'fullstack' | 'systems' | 'data-science' | 'scripting' | 'other';
5
5
  declare function getCategories(): LanguageCategory[];
@@ -41,7 +41,6 @@ interface RuntimeInfo {
41
41
  }
42
42
  declare function getRuntimes(): RuntimeInfo[];
43
43
 
44
- type RuntimeLanguageSlug = LanguageSlug | (string & {});
45
44
  interface LanguageRequest {
46
45
  /**
47
46
  * Sets the requested locale for this language lookup.
@@ -62,6 +61,18 @@ interface LanguageRequest {
62
61
  */
63
62
  load(): Promise<LocalizedLanguage | undefined>;
64
63
  }
64
+ /**
65
+ * A `LanguageRequest` for a slug that is statically known to exist in the catalog,
66
+ * so `get()` and `load()` never return `undefined`.
67
+ */
68
+ interface ResolvedLanguageRequest {
69
+ /** Sets the requested locale for this language lookup. */
70
+ locale(locale: Locale): ResolvedLanguageRequest;
71
+ /** Reads the language from the in-memory catalog and localizes it. */
72
+ get(): LocalizedLanguage;
73
+ /** Dynamically imports the language module and localizes it. */
74
+ load(): Promise<LocalizedLanguage>;
75
+ }
65
76
  interface RuntimeRequest {
66
77
  /** Metadata about the matched runtime platform. Returns undefined for unknown values. */
67
78
  info(): RuntimeInfo | undefined;
@@ -92,6 +103,10 @@ interface EcosystemRequest {
92
103
  /** Languages that belong to this ecosystem. */
93
104
  langs(): LanguageCollectionRequest;
94
105
  }
106
+ interface ExtensionRequest {
107
+ /** Languages whose extensions include this extension or exact filename. */
108
+ langs(): LanguageCollectionRequest;
109
+ }
95
110
  interface LanguageCollectionRequest {
96
111
  /**
97
112
  * Sets the requested locale for every language returned by this collection lookup.
@@ -114,14 +129,18 @@ interface LanguageCollectionRequest {
114
129
  */
115
130
  declare const api: {
116
131
  /**
117
- * Selects a language by slug.
132
+ * Selects a language by slug or alias.
118
133
  *
119
- * Input is normalized to the package slug format before lookup.
134
+ * Input is normalized to the package slug format before lookup, and language
135
+ * aliases such as `golang`, `C#`, or `wasm` resolve to their catalog slug.
136
+ * When the slug is a known literal, `get()` and `load()` are typed as
137
+ * always returning a language.
120
138
  *
121
139
  * @example
122
140
  * api.language("astro").locale("es-PE").get();
141
+ * api.language("golang").get()?.slug; // "go"
123
142
  */
124
- language(slug: RuntimeLanguageSlug): LanguageRequest;
143
+ language<Slug extends string>(slug: Slug): Slug extends LanguageSlug ? ResolvedLanguageRequest : LanguageRequest;
125
144
  /**
126
145
  * Selects every language in the catalog.
127
146
  *
@@ -136,6 +155,18 @@ declare const api: {
136
155
  * api.detect("src/App.vue").locale("es").get();
137
156
  */
138
157
  detect(filename: string): LanguageRequest;
158
+ /**
159
+ * Selects every language that registers the given file extension or exact filename.
160
+ *
161
+ * Accepts values with or without the leading dot: `.ts`, `ts`, or `Dockerfile`.
162
+ * Unlike `detect`, this matches the extension entry exactly instead of ranking
163
+ * suffix matches, so `api.extension('.h')` returns both C and C++.
164
+ *
165
+ * @example
166
+ * api.extension('.h').langs().get().map((language) => language.slug); // ["c", "cpp"]
167
+ * api.extension('ts').langs().locale('es').get();
168
+ */
169
+ extension(value: string): ExtensionRequest;
139
170
  /**
140
171
  * Selects every language that runs on or targets the given platform or runtime.
141
172
  *
@@ -207,4 +238,4 @@ declare const api: {
207
238
  detectAll(filename: string): LanguageCollectionRequest;
208
239
  };
209
240
 
210
- export { type CategoryRequest as C, type EcosystemInfo as E, type LanguageCategory as L, type PackageManagerInfo as P, type RuntimeInfo as R, type EcosystemRequest as a, type ParadigmInfo as b, type ParadigmRequest as c, api as d, getEcosystems as e, getPackageManagers as f, getCategories as g, getParadigms as h, getRuntimes as i, type LanguageCollectionRequest as j, type LanguageRequest as k, type PackageManagerRequest as l, type RuntimeRequest as m };
241
+ export { type CategoryRequest as C, type EcosystemInfo as E, type LanguageCategory as L, type PackageManagerInfo as P, type ResolvedLanguageRequest as R, type EcosystemRequest as a, type ExtensionRequest as b, type ParadigmInfo as c, type ParadigmRequest as d, type RuntimeInfo as e, api as f, getCategories as g, getEcosystems as h, getPackageManagers as i, getParadigms as j, getRuntimes as k, type LanguageCollectionRequest as l, type LanguageRequest as m, type PackageManagerRequest as n, type RuntimeRequest as o };