code-languages 1.41.0 → 1.42.1

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 (260) hide show
  1. package/README.md +71 -17
  2. package/dist/{api-DfrvOkQ-.d.ts → api-D10hZgSz.d.cts} +44 -3
  3. package/dist/{api-BmiYNzCU.d.cts → api-DfKZeygA.d.ts} +44 -3
  4. package/dist/api.cjs +1358 -20
  5. package/dist/api.d.cts +3 -3
  6. package/dist/api.d.ts +3 -3
  7. package/dist/api.js +1358 -21
  8. package/dist/detect-slugs.cjs +18 -0
  9. package/dist/detect-slugs.d.cts +2 -2
  10. package/dist/detect-slugs.d.ts +2 -2
  11. package/dist/detect-slugs.js +18 -0
  12. package/dist/detect.cjs +1056 -20
  13. package/dist/detect.d.cts +3 -3
  14. package/dist/detect.d.ts +3 -3
  15. package/dist/detect.js +1056 -20
  16. package/dist/i18n.d.cts +1 -1
  17. package/dist/i18n.d.ts +1 -1
  18. package/dist/index.cjs +1380 -20
  19. package/dist/index.d.cts +23 -5
  20. package/dist/index.d.ts +23 -5
  21. package/dist/index.js +1379 -21
  22. package/dist/languages/actionscript.cjs +1 -1
  23. package/dist/languages/actionscript.js +1 -1
  24. package/dist/languages/algol.cjs +1 -1
  25. package/dist/languages/algol.js +1 -1
  26. package/dist/languages/alloy.cjs +52 -0
  27. package/dist/languages/alloy.d.cts +49 -0
  28. package/dist/languages/alloy.d.ts +49 -0
  29. package/dist/languages/alloy.js +50 -0
  30. package/dist/languages/angelscript.cjs +1 -1
  31. package/dist/languages/angelscript.js +1 -1
  32. package/dist/languages/assemblyscript.cjs +3 -0
  33. package/dist/languages/assemblyscript.d.cts +3 -0
  34. package/dist/languages/assemblyscript.d.ts +3 -0
  35. package/dist/languages/assemblyscript.js +3 -0
  36. package/dist/languages/bcpl.cjs +1 -1
  37. package/dist/languages/bcpl.js +1 -1
  38. package/dist/languages/bosque.cjs +1 -1
  39. package/dist/languages/bosque.js +1 -1
  40. package/dist/languages/brainfuck.cjs +1 -1
  41. package/dist/languages/brainfuck.js +1 -1
  42. package/dist/languages/c3.cjs +56 -0
  43. package/dist/languages/c3.d.cts +53 -0
  44. package/dist/languages/c3.d.ts +53 -0
  45. package/dist/languages/c3.js +54 -0
  46. package/dist/languages/clarity.cjs +56 -0
  47. package/dist/languages/clarity.d.cts +53 -0
  48. package/dist/languages/clarity.d.ts +53 -0
  49. package/dist/languages/clarity.js +54 -0
  50. package/dist/languages/cobol.cjs +1 -1
  51. package/dist/languages/cobol.js +1 -1
  52. package/dist/languages/coffeescript.cjs +3 -0
  53. package/dist/languages/coffeescript.d.cts +3 -0
  54. package/dist/languages/coffeescript.d.ts +3 -0
  55. package/dist/languages/coffeescript.js +3 -0
  56. package/dist/languages/cpp.cjs +3 -0
  57. package/dist/languages/cpp.d.cts +3 -0
  58. package/dist/languages/cpp.d.ts +3 -0
  59. package/dist/languages/cpp.js +3 -0
  60. package/dist/languages/cwl.cjs +52 -0
  61. package/dist/languages/cwl.d.cts +49 -0
  62. package/dist/languages/cwl.d.ts +49 -0
  63. package/dist/languages/cwl.js +50 -0
  64. package/dist/languages/cython.cjs +4 -0
  65. package/dist/languages/cython.d.cts +4 -0
  66. package/dist/languages/cython.d.ts +4 -0
  67. package/dist/languages/cython.js +4 -0
  68. package/dist/languages/dart.cjs +3 -0
  69. package/dist/languages/dart.d.cts +3 -0
  70. package/dist/languages/dart.d.ts +3 -0
  71. package/dist/languages/dart.js +3 -0
  72. package/dist/languages/edgeql.cjs +53 -0
  73. package/dist/languages/edgeql.d.cts +50 -0
  74. package/dist/languages/edgeql.d.ts +50 -0
  75. package/dist/languages/edgeql.js +51 -0
  76. package/dist/languages/elm.cjs +3 -0
  77. package/dist/languages/elm.d.cts +3 -0
  78. package/dist/languages/elm.d.ts +3 -0
  79. package/dist/languages/elm.js +3 -0
  80. package/dist/languages/emacs-lisp.cjs +3 -0
  81. package/dist/languages/emacs-lisp.d.cts +3 -0
  82. package/dist/languages/emacs-lisp.d.ts +3 -0
  83. package/dist/languages/emacs-lisp.js +3 -0
  84. package/dist/languages/erb.cjs +1 -1
  85. package/dist/languages/erb.js +1 -1
  86. package/dist/languages/faust.cjs +55 -0
  87. package/dist/languages/faust.d.cts +52 -0
  88. package/dist/languages/faust.d.ts +52 -0
  89. package/dist/languages/faust.js +53 -0
  90. package/dist/languages/fennel.cjs +3 -0
  91. package/dist/languages/fennel.d.cts +3 -0
  92. package/dist/languages/fennel.d.ts +3 -0
  93. package/dist/languages/fennel.js +3 -0
  94. package/dist/languages/flix.cjs +53 -0
  95. package/dist/languages/flix.d.cts +50 -0
  96. package/dist/languages/flix.d.ts +50 -0
  97. package/dist/languages/flix.js +51 -0
  98. package/dist/languages/fql.cjs +1 -1
  99. package/dist/languages/fql.js +1 -1
  100. package/dist/languages/futhark.cjs +56 -0
  101. package/dist/languages/futhark.d.cts +53 -0
  102. package/dist/languages/futhark.d.ts +53 -0
  103. package/dist/languages/futhark.js +54 -0
  104. package/dist/languages/gleam.cjs +3 -0
  105. package/dist/languages/gleam.d.cts +3 -0
  106. package/dist/languages/gleam.d.ts +3 -0
  107. package/dist/languages/gleam.js +3 -0
  108. package/dist/languages/hack.cjs +4 -1
  109. package/dist/languages/hack.d.cts +3 -0
  110. package/dist/languages/hack.d.ts +3 -0
  111. package/dist/languages/hack.js +4 -1
  112. package/dist/languages/haxe.cjs +3 -0
  113. package/dist/languages/haxe.d.cts +3 -0
  114. package/dist/languages/haxe.d.ts +3 -0
  115. package/dist/languages/haxe.js +3 -0
  116. package/dist/languages/hocon.cjs +1 -1
  117. package/dist/languages/hocon.js +1 -1
  118. package/dist/languages/j.cjs +52 -0
  119. package/dist/languages/j.d.cts +49 -0
  120. package/dist/languages/j.d.ts +49 -0
  121. package/dist/languages/j.js +50 -0
  122. package/dist/languages/json5.cjs +3 -0
  123. package/dist/languages/json5.d.cts +3 -0
  124. package/dist/languages/json5.d.ts +3 -0
  125. package/dist/languages/json5.js +3 -0
  126. package/dist/languages/jsonc.cjs +3 -0
  127. package/dist/languages/jsonc.d.cts +3 -0
  128. package/dist/languages/jsonc.d.ts +3 -0
  129. package/dist/languages/jsonc.js +3 -0
  130. package/dist/languages/less.cjs +4 -0
  131. package/dist/languages/less.d.cts +4 -0
  132. package/dist/languages/less.d.ts +4 -0
  133. package/dist/languages/less.js +4 -0
  134. package/dist/languages/lex.cjs +1 -1
  135. package/dist/languages/lex.js +1 -1
  136. package/dist/languages/luau.cjs +3 -0
  137. package/dist/languages/luau.d.cts +3 -0
  138. package/dist/languages/luau.d.ts +3 -0
  139. package/dist/languages/luau.js +3 -0
  140. package/dist/languages/mdx.cjs +3 -0
  141. package/dist/languages/mdx.d.cts +3 -0
  142. package/dist/languages/mdx.d.ts +3 -0
  143. package/dist/languages/mdx.js +3 -0
  144. package/dist/languages/modula-2.cjs +1 -1
  145. package/dist/languages/modula-2.js +1 -1
  146. package/dist/languages/nim.cjs +3 -0
  147. package/dist/languages/nim.d.cts +3 -0
  148. package/dist/languages/nim.d.ts +3 -0
  149. package/dist/languages/nim.js +3 -0
  150. package/dist/languages/noir.cjs +54 -0
  151. package/dist/languages/noir.d.cts +51 -0
  152. package/dist/languages/noir.d.ts +51 -0
  153. package/dist/languages/noir.js +52 -0
  154. package/dist/languages/nushell.cjs +1 -1
  155. package/dist/languages/nushell.js +1 -1
  156. package/dist/languages/oberon.cjs +1 -1
  157. package/dist/languages/oberon.js +1 -1
  158. package/dist/languages/objective-c.cjs +3 -0
  159. package/dist/languages/objective-c.d.cts +3 -0
  160. package/dist/languages/objective-c.d.ts +3 -0
  161. package/dist/languages/objective-c.js +3 -0
  162. package/dist/languages/plpgsql.cjs +3 -0
  163. package/dist/languages/plpgsql.d.cts +3 -0
  164. package/dist/languages/plpgsql.d.ts +3 -0
  165. package/dist/languages/plpgsql.js +3 -0
  166. package/dist/languages/plsql.cjs +3 -0
  167. package/dist/languages/plsql.d.cts +3 -0
  168. package/dist/languages/plsql.d.ts +3 -0
  169. package/dist/languages/plsql.js +3 -0
  170. package/dist/languages/prql.cjs +56 -0
  171. package/dist/languages/prql.d.cts +53 -0
  172. package/dist/languages/prql.d.ts +53 -0
  173. package/dist/languages/prql.js +54 -0
  174. package/dist/languages/purescript.cjs +3 -0
  175. package/dist/languages/purescript.d.cts +3 -0
  176. package/dist/languages/purescript.d.ts +3 -0
  177. package/dist/languages/purescript.js +3 -0
  178. package/dist/languages/q.cjs +53 -0
  179. package/dist/languages/q.d.cts +50 -0
  180. package/dist/languages/q.d.ts +50 -0
  181. package/dist/languages/q.js +51 -0
  182. package/dist/languages/reasonml.cjs +3 -0
  183. package/dist/languages/reasonml.d.cts +3 -0
  184. package/dist/languages/reasonml.d.ts +3 -0
  185. package/dist/languages/reasonml.js +3 -0
  186. package/dist/languages/renpy.cjs +53 -0
  187. package/dist/languages/renpy.d.cts +50 -0
  188. package/dist/languages/renpy.d.ts +50 -0
  189. package/dist/languages/renpy.js +51 -0
  190. package/dist/languages/rescript.cjs +3 -0
  191. package/dist/languages/rescript.d.cts +3 -0
  192. package/dist/languages/rescript.d.ts +3 -0
  193. package/dist/languages/rescript.js +3 -0
  194. package/dist/languages/scss.cjs +4 -0
  195. package/dist/languages/scss.d.cts +4 -0
  196. package/dist/languages/scss.d.ts +4 -0
  197. package/dist/languages/scss.js +4 -0
  198. package/dist/languages/simula.cjs +1 -1
  199. package/dist/languages/simula.js +1 -1
  200. package/dist/languages/slang.cjs +55 -0
  201. package/dist/languages/slang.d.cts +52 -0
  202. package/dist/languages/slang.d.ts +52 -0
  203. package/dist/languages/slang.js +53 -0
  204. package/dist/languages/smithy.cjs +53 -0
  205. package/dist/languages/smithy.d.cts +50 -0
  206. package/dist/languages/smithy.d.ts +50 -0
  207. package/dist/languages/smithy.js +51 -0
  208. package/dist/languages/snobol.cjs +1 -1
  209. package/dist/languages/snobol.js +1 -1
  210. package/dist/languages/stylus.cjs +4 -0
  211. package/dist/languages/stylus.d.cts +4 -0
  212. package/dist/languages/stylus.d.ts +4 -0
  213. package/dist/languages/stylus.js +4 -0
  214. package/dist/languages/supercollider.cjs +54 -0
  215. package/dist/languages/supercollider.d.cts +51 -0
  216. package/dist/languages/supercollider.d.ts +51 -0
  217. package/dist/languages/supercollider.js +52 -0
  218. package/dist/languages/svelte.cjs +3 -0
  219. package/dist/languages/svelte.d.cts +3 -0
  220. package/dist/languages/svelte.d.ts +3 -0
  221. package/dist/languages/svelte.js +3 -0
  222. package/dist/languages/sway.cjs +54 -0
  223. package/dist/languages/sway.d.cts +51 -0
  224. package/dist/languages/sway.d.ts +51 -0
  225. package/dist/languages/sway.js +52 -0
  226. package/dist/languages/tcsh.cjs +1 -1
  227. package/dist/languages/tcsh.js +1 -1
  228. package/dist/languages/tsql.cjs +3 -0
  229. package/dist/languages/tsql.d.cts +3 -0
  230. package/dist/languages/tsql.d.ts +3 -0
  231. package/dist/languages/tsql.js +3 -0
  232. package/dist/languages/typescript.cjs +4 -0
  233. package/dist/languages/typescript.d.cts +4 -0
  234. package/dist/languages/typescript.d.ts +4 -0
  235. package/dist/languages/typescript.js +4 -0
  236. package/dist/languages/typespec.cjs +57 -0
  237. package/dist/languages/typespec.d.cts +54 -0
  238. package/dist/languages/typespec.d.ts +54 -0
  239. package/dist/languages/typespec.js +55 -0
  240. package/dist/languages/v.cjs +3 -0
  241. package/dist/languages/v.d.cts +3 -0
  242. package/dist/languages/v.d.ts +3 -0
  243. package/dist/languages/v.js +3 -0
  244. package/dist/languages/vba.cjs +3 -0
  245. package/dist/languages/vba.d.cts +3 -0
  246. package/dist/languages/vba.d.ts +3 -0
  247. package/dist/languages/vba.js +3 -0
  248. package/dist/languages/vbscript.cjs +4 -1
  249. package/dist/languages/vbscript.d.cts +3 -0
  250. package/dist/languages/vbscript.d.ts +3 -0
  251. package/dist/languages/vbscript.js +4 -1
  252. package/dist/languages/zsh.cjs +1 -1
  253. package/dist/languages/zsh.js +1 -1
  254. package/dist/{registry-XRfwD571.d.cts → registry-DftZRMv6.d.cts} +54 -0
  255. package/dist/{registry-XRfwD571.d.ts → registry-DftZRMv6.d.ts} +54 -0
  256. package/dist/{shebang-BL2ZFHQP.d.cts → shebang-Be8JBsB_.d.cts} +4 -2
  257. package/dist/{shebang-B1dhpwsv.d.ts → shebang-wOz_EqIy.d.ts} +4 -2
  258. package/dist/{types-DkAECzIe.d.cts → types-BRDmsib7.d.cts} +12 -1
  259. package/dist/{types-DkAECzIe.d.ts → types-BRDmsib7.d.ts} +12 -1
  260. package/package.json +92 -1
@@ -14,6 +14,9 @@ declare const languageIndex: readonly [{
14
14
  }, {
15
15
  readonly slug: "algol";
16
16
  readonly extensions: readonly [".alg", ".algol"];
17
+ }, {
18
+ readonly slug: "alloy";
19
+ readonly extensions: readonly [".als"];
17
20
  }, {
18
21
  readonly slug: "ampl";
19
22
  readonly extensions: readonly [".mod", ".dat", ".run"];
@@ -107,6 +110,9 @@ declare const languageIndex: readonly [{
107
110
  }, {
108
111
  readonly slug: "c";
109
112
  readonly extensions: readonly [".c", ".h"];
113
+ }, {
114
+ readonly slug: "c3";
115
+ readonly extensions: readonly [".c3", ".c3i"];
110
116
  }, {
111
117
  readonly slug: "cairo";
112
118
  readonly extensions: readonly [".cairo"];
@@ -125,6 +131,9 @@ declare const languageIndex: readonly [{
125
131
  }, {
126
132
  readonly slug: "circom";
127
133
  readonly extensions: readonly [".circom"];
134
+ }, {
135
+ readonly slug: "clarity";
136
+ readonly extensions: readonly [".clar"];
128
137
  }, {
129
138
  readonly slug: "clojure";
130
139
  readonly extensions: readonly [".clj", ".cljs", ".cljc", ".edn", ".bb"];
@@ -167,6 +176,9 @@ declare const languageIndex: readonly [{
167
176
  }, {
168
177
  readonly slug: "curry";
169
178
  readonly extensions: readonly [".curry", ".lcurry"];
179
+ }, {
180
+ readonly slug: "cwl";
181
+ readonly extensions: readonly [".cwl"];
170
182
  }, {
171
183
  readonly slug: "cypher";
172
184
  readonly extensions: readonly [".cypher", ".cyp"];
@@ -200,6 +212,9 @@ declare const languageIndex: readonly [{
200
212
  }, {
201
213
  readonly slug: "earthly";
202
214
  readonly extensions: readonly ["Earthfile"];
215
+ }, {
216
+ readonly slug: "edgeql";
217
+ readonly extensions: readonly [".edgeql"];
203
218
  }, {
204
219
  readonly slug: "editorconfig";
205
220
  readonly extensions: readonly [".editorconfig"];
@@ -227,6 +242,9 @@ declare const languageIndex: readonly [{
227
242
  }, {
228
243
  readonly slug: "factor";
229
244
  readonly extensions: readonly [".factor"];
245
+ }, {
246
+ readonly slug: "faust";
247
+ readonly extensions: readonly [".dsp"];
230
248
  }, {
231
249
  readonly slug: "fe";
232
250
  readonly extensions: readonly [".fe"];
@@ -239,6 +257,9 @@ declare const languageIndex: readonly [{
239
257
  }, {
240
258
  readonly slug: "flatbuffers";
241
259
  readonly extensions: readonly [".fbs"];
260
+ }, {
261
+ readonly slug: "flix";
262
+ readonly extensions: readonly [".flix"];
242
263
  }, {
243
264
  readonly slug: "flux";
244
265
  readonly extensions: readonly [".flux"];
@@ -260,6 +281,9 @@ declare const languageIndex: readonly [{
260
281
  }, {
261
282
  readonly slug: "fstar";
262
283
  readonly extensions: readonly [".fst", ".fsti"];
284
+ }, {
285
+ readonly slug: "futhark";
286
+ readonly extensions: readonly [".fut"];
263
287
  }, {
264
288
  readonly slug: "gcode";
265
289
  readonly extensions: readonly [".gcode", ".gco", ".nc", ".cnc", ".tap"];
@@ -350,6 +374,9 @@ declare const languageIndex: readonly [{
350
374
  }, {
351
375
  readonly slug: "isabelle";
352
376
  readonly extensions: readonly [".thy"];
377
+ }, {
378
+ readonly slug: "j";
379
+ readonly extensions: readonly [".ijs"];
353
380
  }, {
354
381
  readonly slug: "janet";
355
382
  readonly extensions: readonly [".janet", ".jdn"];
@@ -521,6 +548,9 @@ declare const languageIndex: readonly [{
521
548
  }, {
522
549
  readonly slug: "nix";
523
550
  readonly extensions: readonly [".nix"];
551
+ }, {
552
+ readonly slug: "noir";
553
+ readonly extensions: readonly [".nr"];
524
554
  }, {
525
555
  readonly slug: "nunjucks";
526
556
  readonly extensions: readonly [".njk", ".nunjucks"];
@@ -611,6 +641,9 @@ declare const languageIndex: readonly [{
611
641
  }, {
612
642
  readonly slug: "protobuf";
613
643
  readonly extensions: readonly [".proto"];
644
+ }, {
645
+ readonly slug: "prql";
646
+ readonly extensions: readonly [".prql"];
614
647
  }, {
615
648
  readonly slug: "pug";
616
649
  readonly extensions: readonly [".pug", ".jade"];
@@ -623,6 +656,9 @@ declare const languageIndex: readonly [{
623
656
  }, {
624
657
  readonly slug: "python";
625
658
  readonly extensions: readonly [".py", ".pyw"];
659
+ }, {
660
+ readonly slug: "q";
661
+ readonly extensions: readonly [".q", ".k"];
626
662
  }, {
627
663
  readonly slug: "qmake";
628
664
  readonly extensions: readonly [".pri", ".prf"];
@@ -656,6 +692,9 @@ declare const languageIndex: readonly [{
656
692
  }, {
657
693
  readonly slug: "rego";
658
694
  readonly extensions: readonly [".rego"];
695
+ }, {
696
+ readonly slug: "renpy";
697
+ readonly extensions: readonly [".rpy", ".rpym"];
659
698
  }, {
660
699
  readonly slug: "rescript";
661
700
  readonly extensions: readonly [".res", ".resi"];
@@ -695,12 +734,18 @@ declare const languageIndex: readonly [{
695
734
  }, {
696
735
  readonly slug: "simula";
697
736
  readonly extensions: readonly [".sim", ".simula"];
737
+ }, {
738
+ readonly slug: "slang";
739
+ readonly extensions: readonly [".slang"];
698
740
  }, {
699
741
  readonly slug: "smalltalk";
700
742
  readonly extensions: readonly [".st"];
701
743
  }, {
702
744
  readonly slug: "smarty";
703
745
  readonly extensions: readonly [".tpl", ".smarty"];
746
+ }, {
747
+ readonly slug: "smithy";
748
+ readonly extensions: readonly [".smithy"];
704
749
  }, {
705
750
  readonly slug: "snakemake";
706
751
  readonly extensions: readonly [".smk", "Snakefile"];
@@ -743,6 +788,9 @@ declare const languageIndex: readonly [{
743
788
  }, {
744
789
  readonly slug: "stylus";
745
790
  readonly extensions: readonly [".styl"];
791
+ }, {
792
+ readonly slug: "supercollider";
793
+ readonly extensions: readonly [".scd", ".sc"];
746
794
  }, {
747
795
  readonly slug: "svelte";
748
796
  readonly extensions: readonly [".svelte"];
@@ -752,6 +800,9 @@ declare const languageIndex: readonly [{
752
800
  }, {
753
801
  readonly slug: "svn";
754
802
  readonly extensions: readonly [".svn", "svnserve.conf"];
803
+ }, {
804
+ readonly slug: "sway";
805
+ readonly extensions: readonly [".sw"];
755
806
  }, {
756
807
  readonly slug: "swift";
757
808
  readonly extensions: readonly [".swift"];
@@ -791,6 +842,9 @@ declare const languageIndex: readonly [{
791
842
  }, {
792
843
  readonly slug: "typescript";
793
844
  readonly extensions: readonly [".ts", ".tsx", ".mts", ".cts"];
845
+ }, {
846
+ readonly slug: "typespec";
847
+ readonly extensions: readonly [".tsp"];
794
848
  }, {
795
849
  readonly slug: "typst";
796
850
  readonly extensions: readonly [".typ"];
@@ -14,6 +14,9 @@ declare const languageIndex: readonly [{
14
14
  }, {
15
15
  readonly slug: "algol";
16
16
  readonly extensions: readonly [".alg", ".algol"];
17
+ }, {
18
+ readonly slug: "alloy";
19
+ readonly extensions: readonly [".als"];
17
20
  }, {
18
21
  readonly slug: "ampl";
19
22
  readonly extensions: readonly [".mod", ".dat", ".run"];
@@ -107,6 +110,9 @@ declare const languageIndex: readonly [{
107
110
  }, {
108
111
  readonly slug: "c";
109
112
  readonly extensions: readonly [".c", ".h"];
113
+ }, {
114
+ readonly slug: "c3";
115
+ readonly extensions: readonly [".c3", ".c3i"];
110
116
  }, {
111
117
  readonly slug: "cairo";
112
118
  readonly extensions: readonly [".cairo"];
@@ -125,6 +131,9 @@ declare const languageIndex: readonly [{
125
131
  }, {
126
132
  readonly slug: "circom";
127
133
  readonly extensions: readonly [".circom"];
134
+ }, {
135
+ readonly slug: "clarity";
136
+ readonly extensions: readonly [".clar"];
128
137
  }, {
129
138
  readonly slug: "clojure";
130
139
  readonly extensions: readonly [".clj", ".cljs", ".cljc", ".edn", ".bb"];
@@ -167,6 +176,9 @@ declare const languageIndex: readonly [{
167
176
  }, {
168
177
  readonly slug: "curry";
169
178
  readonly extensions: readonly [".curry", ".lcurry"];
179
+ }, {
180
+ readonly slug: "cwl";
181
+ readonly extensions: readonly [".cwl"];
170
182
  }, {
171
183
  readonly slug: "cypher";
172
184
  readonly extensions: readonly [".cypher", ".cyp"];
@@ -200,6 +212,9 @@ declare const languageIndex: readonly [{
200
212
  }, {
201
213
  readonly slug: "earthly";
202
214
  readonly extensions: readonly ["Earthfile"];
215
+ }, {
216
+ readonly slug: "edgeql";
217
+ readonly extensions: readonly [".edgeql"];
203
218
  }, {
204
219
  readonly slug: "editorconfig";
205
220
  readonly extensions: readonly [".editorconfig"];
@@ -227,6 +242,9 @@ declare const languageIndex: readonly [{
227
242
  }, {
228
243
  readonly slug: "factor";
229
244
  readonly extensions: readonly [".factor"];
245
+ }, {
246
+ readonly slug: "faust";
247
+ readonly extensions: readonly [".dsp"];
230
248
  }, {
231
249
  readonly slug: "fe";
232
250
  readonly extensions: readonly [".fe"];
@@ -239,6 +257,9 @@ declare const languageIndex: readonly [{
239
257
  }, {
240
258
  readonly slug: "flatbuffers";
241
259
  readonly extensions: readonly [".fbs"];
260
+ }, {
261
+ readonly slug: "flix";
262
+ readonly extensions: readonly [".flix"];
242
263
  }, {
243
264
  readonly slug: "flux";
244
265
  readonly extensions: readonly [".flux"];
@@ -260,6 +281,9 @@ declare const languageIndex: readonly [{
260
281
  }, {
261
282
  readonly slug: "fstar";
262
283
  readonly extensions: readonly [".fst", ".fsti"];
284
+ }, {
285
+ readonly slug: "futhark";
286
+ readonly extensions: readonly [".fut"];
263
287
  }, {
264
288
  readonly slug: "gcode";
265
289
  readonly extensions: readonly [".gcode", ".gco", ".nc", ".cnc", ".tap"];
@@ -350,6 +374,9 @@ declare const languageIndex: readonly [{
350
374
  }, {
351
375
  readonly slug: "isabelle";
352
376
  readonly extensions: readonly [".thy"];
377
+ }, {
378
+ readonly slug: "j";
379
+ readonly extensions: readonly [".ijs"];
353
380
  }, {
354
381
  readonly slug: "janet";
355
382
  readonly extensions: readonly [".janet", ".jdn"];
@@ -521,6 +548,9 @@ declare const languageIndex: readonly [{
521
548
  }, {
522
549
  readonly slug: "nix";
523
550
  readonly extensions: readonly [".nix"];
551
+ }, {
552
+ readonly slug: "noir";
553
+ readonly extensions: readonly [".nr"];
524
554
  }, {
525
555
  readonly slug: "nunjucks";
526
556
  readonly extensions: readonly [".njk", ".nunjucks"];
@@ -611,6 +641,9 @@ declare const languageIndex: readonly [{
611
641
  }, {
612
642
  readonly slug: "protobuf";
613
643
  readonly extensions: readonly [".proto"];
644
+ }, {
645
+ readonly slug: "prql";
646
+ readonly extensions: readonly [".prql"];
614
647
  }, {
615
648
  readonly slug: "pug";
616
649
  readonly extensions: readonly [".pug", ".jade"];
@@ -623,6 +656,9 @@ declare const languageIndex: readonly [{
623
656
  }, {
624
657
  readonly slug: "python";
625
658
  readonly extensions: readonly [".py", ".pyw"];
659
+ }, {
660
+ readonly slug: "q";
661
+ readonly extensions: readonly [".q", ".k"];
626
662
  }, {
627
663
  readonly slug: "qmake";
628
664
  readonly extensions: readonly [".pri", ".prf"];
@@ -656,6 +692,9 @@ declare const languageIndex: readonly [{
656
692
  }, {
657
693
  readonly slug: "rego";
658
694
  readonly extensions: readonly [".rego"];
695
+ }, {
696
+ readonly slug: "renpy";
697
+ readonly extensions: readonly [".rpy", ".rpym"];
659
698
  }, {
660
699
  readonly slug: "rescript";
661
700
  readonly extensions: readonly [".res", ".resi"];
@@ -695,12 +734,18 @@ declare const languageIndex: readonly [{
695
734
  }, {
696
735
  readonly slug: "simula";
697
736
  readonly extensions: readonly [".sim", ".simula"];
737
+ }, {
738
+ readonly slug: "slang";
739
+ readonly extensions: readonly [".slang"];
698
740
  }, {
699
741
  readonly slug: "smalltalk";
700
742
  readonly extensions: readonly [".st"];
701
743
  }, {
702
744
  readonly slug: "smarty";
703
745
  readonly extensions: readonly [".tpl", ".smarty"];
746
+ }, {
747
+ readonly slug: "smithy";
748
+ readonly extensions: readonly [".smithy"];
704
749
  }, {
705
750
  readonly slug: "snakemake";
706
751
  readonly extensions: readonly [".smk", "Snakefile"];
@@ -743,6 +788,9 @@ declare const languageIndex: readonly [{
743
788
  }, {
744
789
  readonly slug: "stylus";
745
790
  readonly extensions: readonly [".styl"];
791
+ }, {
792
+ readonly slug: "supercollider";
793
+ readonly extensions: readonly [".scd", ".sc"];
746
794
  }, {
747
795
  readonly slug: "svelte";
748
796
  readonly extensions: readonly [".svelte"];
@@ -752,6 +800,9 @@ declare const languageIndex: readonly [{
752
800
  }, {
753
801
  readonly slug: "svn";
754
802
  readonly extensions: readonly [".svn", "svnserve.conf"];
803
+ }, {
804
+ readonly slug: "sway";
805
+ readonly extensions: readonly [".sw"];
755
806
  }, {
756
807
  readonly slug: "swift";
757
808
  readonly extensions: readonly [".swift"];
@@ -791,6 +842,9 @@ declare const languageIndex: readonly [{
791
842
  }, {
792
843
  readonly slug: "typescript";
793
844
  readonly extensions: readonly [".ts", ".tsx", ".mts", ".cts"];
845
+ }, {
846
+ readonly slug: "typespec";
847
+ readonly extensions: readonly [".tsp"];
794
848
  }, {
795
849
  readonly slug: "typst";
796
850
  readonly extensions: readonly [".typ"];
@@ -1,5 +1,7 @@
1
- import { L as LanguageSlug } from './registry-XRfwD571.cjs';
1
+ import { L as LanguageSlug } from './registry-DftZRMv6.cjs';
2
2
 
3
+ /** Returns a copy of the interpreter-basename to language-slug map used by shebang detection. */
4
+ declare const getShebangInterpreters: () => Record<string, LanguageSlug>;
3
5
  /**
4
6
  * Detects a language slug from the shebang line of a file's content.
5
7
  *
@@ -12,4 +14,4 @@ import { L as LanguageSlug } from './registry-XRfwD571.cjs';
12
14
  */
13
15
  declare const detectLanguageSlugByShebang: (content: string) => LanguageSlug | undefined;
14
16
 
15
- export { detectLanguageSlugByShebang as d };
17
+ export { detectLanguageSlugByShebang as d, getShebangInterpreters as g };
@@ -1,5 +1,7 @@
1
- import { L as LanguageSlug } from './registry-XRfwD571.js';
1
+ import { L as LanguageSlug } from './registry-DftZRMv6.js';
2
2
 
3
+ /** Returns a copy of the interpreter-basename to language-slug map used by shebang detection. */
4
+ declare const getShebangInterpreters: () => Record<string, LanguageSlug>;
3
5
  /**
4
6
  * Detects a language slug from the shebang line of a file's content.
5
7
  *
@@ -12,4 +14,4 @@ import { L as LanguageSlug } from './registry-XRfwD571.js';
12
14
  */
13
15
  declare const detectLanguageSlugByShebang: (content: string) => LanguageSlug | undefined;
14
16
 
15
- export { detectLanguageSlugByShebang as d };
17
+ export { detectLanguageSlugByShebang as d, getShebangInterpreters as g };
@@ -20,6 +20,15 @@ type LanguageTranslations = {
20
20
  * - `historical`: of historical significance, no longer in practical use.
21
21
  */
22
22
  type LanguageStatus = 'active' | 'experimental' | 'legacy' | 'historical';
23
+ /** Relationships to other catalog languages. All values are catalog slugs. */
24
+ interface LanguageRelations {
25
+ /** Languages this language is a superset of. e.g. TypeScript → ["javascript"] */
26
+ supersetOf?: string[];
27
+ /** Languages this language is a dialect or variant of. e.g. T-SQL → ["sql"] */
28
+ dialectOf?: string[];
29
+ /** Languages this language compiles or transpiles to. e.g. Elm → ["javascript"] */
30
+ compilesTo?: string[];
31
+ }
23
32
  interface LanguageTooling {
24
33
  /** Execution environments, virtual machines, shells, or platforms. e.g. ["Node.js", "Browser"] */
25
34
  runtimes?: string[];
@@ -35,6 +44,8 @@ interface Language {
35
44
  aliases?: string[];
36
45
  /** Lifecycle status. Absent means `active`. */
37
46
  status?: LanguageStatus;
47
+ /** Relationships to other catalog languages, keyed by relation kind. */
48
+ relations?: LanguageRelations;
38
49
  /** ISO 8601 date of first public release. e.g. "2012-10-01" */
39
50
  publishedDate: string;
40
51
  /** All file extensions associated with the language. e.g. [".ts", ".tsx"] */
@@ -65,4 +76,4 @@ type LocalizedLanguage = Omit<Language, 'i18n'> & LanguageContent & {
65
76
  availableLocales: BaseLocale[];
66
77
  };
67
78
 
68
- export type { Language as L, LanguageContent as a, LanguageStatus as b, LanguageTooling as c, LanguageTranslations as d, Locale as e, LocalizedLanguage as f };
79
+ export type { Language as L, LanguageContent as a, LanguageRelations as b, LanguageStatus as c, LanguageTooling as d, LanguageTranslations as e, Locale as f, LocalizedLanguage as g };
@@ -20,6 +20,15 @@ type LanguageTranslations = {
20
20
  * - `historical`: of historical significance, no longer in practical use.
21
21
  */
22
22
  type LanguageStatus = 'active' | 'experimental' | 'legacy' | 'historical';
23
+ /** Relationships to other catalog languages. All values are catalog slugs. */
24
+ interface LanguageRelations {
25
+ /** Languages this language is a superset of. e.g. TypeScript → ["javascript"] */
26
+ supersetOf?: string[];
27
+ /** Languages this language is a dialect or variant of. e.g. T-SQL → ["sql"] */
28
+ dialectOf?: string[];
29
+ /** Languages this language compiles or transpiles to. e.g. Elm → ["javascript"] */
30
+ compilesTo?: string[];
31
+ }
23
32
  interface LanguageTooling {
24
33
  /** Execution environments, virtual machines, shells, or platforms. e.g. ["Node.js", "Browser"] */
25
34
  runtimes?: string[];
@@ -35,6 +44,8 @@ interface Language {
35
44
  aliases?: string[];
36
45
  /** Lifecycle status. Absent means `active`. */
37
46
  status?: LanguageStatus;
47
+ /** Relationships to other catalog languages, keyed by relation kind. */
48
+ relations?: LanguageRelations;
38
49
  /** ISO 8601 date of first public release. e.g. "2012-10-01" */
39
50
  publishedDate: string;
40
51
  /** All file extensions associated with the language. e.g. [".ts", ".tsx"] */
@@ -65,4 +76,4 @@ type LocalizedLanguage = Omit<Language, 'i18n'> & LanguageContent & {
65
76
  availableLocales: BaseLocale[];
66
77
  };
67
78
 
68
- export type { Language as L, LanguageContent as a, LanguageStatus as b, LanguageTooling as c, LanguageTranslations as d, Locale as e, LocalizedLanguage as f };
79
+ export type { Language as L, LanguageContent as a, LanguageRelations as b, LanguageStatus as c, LanguageTooling as d, LanguageTranslations as e, Locale as f, LocalizedLanguage as g };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "code-languages",
3
- "version": "1.41.0",
3
+ "version": "1.42.1",
4
4
  "description": "Structured metadata for programming languages.",
5
5
  "homepage": "https://github.com/ElJijuna/code-languages#readme",
6
6
  "bugs": {
@@ -81,6 +81,11 @@
81
81
  "import": "./dist/languages/algol.js",
82
82
  "require": "./dist/languages/algol.cjs"
83
83
  },
84
+ "./alloy": {
85
+ "types": "./dist/languages/alloy.d.ts",
86
+ "import": "./dist/languages/alloy.js",
87
+ "require": "./dist/languages/alloy.cjs"
88
+ },
84
89
  "./ampl": {
85
90
  "types": "./dist/languages/ampl.d.ts",
86
91
  "import": "./dist/languages/ampl.js",
@@ -236,6 +241,11 @@
236
241
  "import": "./dist/languages/c.js",
237
242
  "require": "./dist/languages/c.cjs"
238
243
  },
244
+ "./c3": {
245
+ "types": "./dist/languages/c3.d.ts",
246
+ "import": "./dist/languages/c3.js",
247
+ "require": "./dist/languages/c3.cjs"
248
+ },
239
249
  "./cairo": {
240
250
  "types": "./dist/languages/cairo.d.ts",
241
251
  "import": "./dist/languages/cairo.js",
@@ -266,6 +276,11 @@
266
276
  "import": "./dist/languages/circom.js",
267
277
  "require": "./dist/languages/circom.cjs"
268
278
  },
279
+ "./clarity": {
280
+ "types": "./dist/languages/clarity.d.ts",
281
+ "import": "./dist/languages/clarity.js",
282
+ "require": "./dist/languages/clarity.cjs"
283
+ },
269
284
  "./clojure": {
270
285
  "types": "./dist/languages/clojure.d.ts",
271
286
  "import": "./dist/languages/clojure.js",
@@ -336,6 +351,11 @@
336
351
  "import": "./dist/languages/curry.js",
337
352
  "require": "./dist/languages/curry.cjs"
338
353
  },
354
+ "./cwl": {
355
+ "types": "./dist/languages/cwl.d.ts",
356
+ "import": "./dist/languages/cwl.js",
357
+ "require": "./dist/languages/cwl.cjs"
358
+ },
339
359
  "./cypher": {
340
360
  "types": "./dist/languages/cypher.d.ts",
341
361
  "import": "./dist/languages/cypher.js",
@@ -391,6 +411,11 @@
391
411
  "import": "./dist/languages/earthly.js",
392
412
  "require": "./dist/languages/earthly.cjs"
393
413
  },
414
+ "./edgeql": {
415
+ "types": "./dist/languages/edgeql.d.ts",
416
+ "import": "./dist/languages/edgeql.js",
417
+ "require": "./dist/languages/edgeql.cjs"
418
+ },
394
419
  "./editorconfig": {
395
420
  "types": "./dist/languages/editorconfig.d.ts",
396
421
  "import": "./dist/languages/editorconfig.js",
@@ -436,6 +461,11 @@
436
461
  "import": "./dist/languages/factor.js",
437
462
  "require": "./dist/languages/factor.cjs"
438
463
  },
464
+ "./faust": {
465
+ "types": "./dist/languages/faust.d.ts",
466
+ "import": "./dist/languages/faust.js",
467
+ "require": "./dist/languages/faust.cjs"
468
+ },
439
469
  "./fe": {
440
470
  "types": "./dist/languages/fe.d.ts",
441
471
  "import": "./dist/languages/fe.js",
@@ -456,6 +486,11 @@
456
486
  "import": "./dist/languages/flatbuffers.js",
457
487
  "require": "./dist/languages/flatbuffers.cjs"
458
488
  },
489
+ "./flix": {
490
+ "types": "./dist/languages/flix.d.ts",
491
+ "import": "./dist/languages/flix.js",
492
+ "require": "./dist/languages/flix.cjs"
493
+ },
459
494
  "./flux": {
460
495
  "types": "./dist/languages/flux.d.ts",
461
496
  "import": "./dist/languages/flux.js",
@@ -491,6 +526,11 @@
491
526
  "import": "./dist/languages/fstar.js",
492
527
  "require": "./dist/languages/fstar.cjs"
493
528
  },
529
+ "./futhark": {
530
+ "types": "./dist/languages/futhark.d.ts",
531
+ "import": "./dist/languages/futhark.js",
532
+ "require": "./dist/languages/futhark.cjs"
533
+ },
494
534
  "./gcode": {
495
535
  "types": "./dist/languages/gcode.d.ts",
496
536
  "import": "./dist/languages/gcode.js",
@@ -641,6 +681,11 @@
641
681
  "import": "./dist/languages/isabelle.js",
642
682
  "require": "./dist/languages/isabelle.cjs"
643
683
  },
684
+ "./j": {
685
+ "types": "./dist/languages/j.d.ts",
686
+ "import": "./dist/languages/j.js",
687
+ "require": "./dist/languages/j.cjs"
688
+ },
644
689
  "./janet": {
645
690
  "types": "./dist/languages/janet.d.ts",
646
691
  "import": "./dist/languages/janet.js",
@@ -926,6 +971,11 @@
926
971
  "import": "./dist/languages/nix.js",
927
972
  "require": "./dist/languages/nix.cjs"
928
973
  },
974
+ "./noir": {
975
+ "types": "./dist/languages/noir.d.ts",
976
+ "import": "./dist/languages/noir.js",
977
+ "require": "./dist/languages/noir.cjs"
978
+ },
929
979
  "./nunjucks": {
930
980
  "types": "./dist/languages/nunjucks.d.ts",
931
981
  "import": "./dist/languages/nunjucks.js",
@@ -1076,6 +1126,11 @@
1076
1126
  "import": "./dist/languages/protobuf.js",
1077
1127
  "require": "./dist/languages/protobuf.cjs"
1078
1128
  },
1129
+ "./prql": {
1130
+ "types": "./dist/languages/prql.d.ts",
1131
+ "import": "./dist/languages/prql.js",
1132
+ "require": "./dist/languages/prql.cjs"
1133
+ },
1079
1134
  "./pug": {
1080
1135
  "types": "./dist/languages/pug.d.ts",
1081
1136
  "import": "./dist/languages/pug.js",
@@ -1096,6 +1151,11 @@
1096
1151
  "import": "./dist/languages/python.js",
1097
1152
  "require": "./dist/languages/python.cjs"
1098
1153
  },
1154
+ "./q": {
1155
+ "types": "./dist/languages/q.d.ts",
1156
+ "import": "./dist/languages/q.js",
1157
+ "require": "./dist/languages/q.cjs"
1158
+ },
1099
1159
  "./qmake": {
1100
1160
  "types": "./dist/languages/qmake.d.ts",
1101
1161
  "import": "./dist/languages/qmake.js",
@@ -1151,6 +1211,11 @@
1151
1211
  "import": "./dist/languages/rego.js",
1152
1212
  "require": "./dist/languages/rego.cjs"
1153
1213
  },
1214
+ "./renpy": {
1215
+ "types": "./dist/languages/renpy.d.ts",
1216
+ "import": "./dist/languages/renpy.js",
1217
+ "require": "./dist/languages/renpy.cjs"
1218
+ },
1154
1219
  "./rescript": {
1155
1220
  "types": "./dist/languages/rescript.d.ts",
1156
1221
  "import": "./dist/languages/rescript.js",
@@ -1216,6 +1281,11 @@
1216
1281
  "import": "./dist/languages/simula.js",
1217
1282
  "require": "./dist/languages/simula.cjs"
1218
1283
  },
1284
+ "./slang": {
1285
+ "types": "./dist/languages/slang.d.ts",
1286
+ "import": "./dist/languages/slang.js",
1287
+ "require": "./dist/languages/slang.cjs"
1288
+ },
1219
1289
  "./smalltalk": {
1220
1290
  "types": "./dist/languages/smalltalk.d.ts",
1221
1291
  "import": "./dist/languages/smalltalk.js",
@@ -1226,6 +1296,11 @@
1226
1296
  "import": "./dist/languages/smarty.js",
1227
1297
  "require": "./dist/languages/smarty.cjs"
1228
1298
  },
1299
+ "./smithy": {
1300
+ "types": "./dist/languages/smithy.d.ts",
1301
+ "import": "./dist/languages/smithy.js",
1302
+ "require": "./dist/languages/smithy.cjs"
1303
+ },
1229
1304
  "./snakemake": {
1230
1305
  "types": "./dist/languages/snakemake.d.ts",
1231
1306
  "import": "./dist/languages/snakemake.js",
@@ -1296,6 +1371,11 @@
1296
1371
  "import": "./dist/languages/stylus.js",
1297
1372
  "require": "./dist/languages/stylus.cjs"
1298
1373
  },
1374
+ "./supercollider": {
1375
+ "types": "./dist/languages/supercollider.d.ts",
1376
+ "import": "./dist/languages/supercollider.js",
1377
+ "require": "./dist/languages/supercollider.cjs"
1378
+ },
1299
1379
  "./svelte": {
1300
1380
  "types": "./dist/languages/svelte.d.ts",
1301
1381
  "import": "./dist/languages/svelte.js",
@@ -1311,6 +1391,11 @@
1311
1391
  "import": "./dist/languages/svn.js",
1312
1392
  "require": "./dist/languages/svn.cjs"
1313
1393
  },
1394
+ "./sway": {
1395
+ "types": "./dist/languages/sway.d.ts",
1396
+ "import": "./dist/languages/sway.js",
1397
+ "require": "./dist/languages/sway.cjs"
1398
+ },
1314
1399
  "./swift": {
1315
1400
  "types": "./dist/languages/swift.d.ts",
1316
1401
  "import": "./dist/languages/swift.js",
@@ -1376,6 +1461,11 @@
1376
1461
  "import": "./dist/languages/typescript.js",
1377
1462
  "require": "./dist/languages/typescript.cjs"
1378
1463
  },
1464
+ "./typespec": {
1465
+ "types": "./dist/languages/typespec.d.ts",
1466
+ "import": "./dist/languages/typespec.js",
1467
+ "require": "./dist/languages/typespec.cjs"
1468
+ },
1379
1469
  "./typst": {
1380
1470
  "types": "./dist/languages/typst.d.ts",
1381
1471
  "import": "./dist/languages/typst.js",
@@ -1541,6 +1631,7 @@
1541
1631
  "bench": "vitest bench --run",
1542
1632
  "build": "tsup",
1543
1633
  "check": "npm run format:check && npm run lint && tsc --noEmit && vitest run",
1634
+ "check:language-links": "node scripts/check-language-links.mjs",
1544
1635
  "check:language-versions": "node scripts/check-language-versions.mjs",
1545
1636
  "codegen": "node scripts/generate-language-artifacts.mjs && biome check --write src/index.ts src/domain/language/catalog.ts src/domain/language/registry.ts",
1546
1637
  "format": "biome check --write .",