github-linguist 9.5.0 → 9.6.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 (90) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/etc.json +1 -1
  3. data/grammars/markdown.mojo.codeblock.json +1 -0
  4. data/grammars/markdown.move.codeblock.json +1 -1
  5. data/grammars/source.4dm.json +1 -1
  6. data/grammars/source.abl.json +1 -1
  7. data/grammars/source.apex.json +1 -1
  8. data/grammars/source.baml-jinja.json +1 -0
  9. data/grammars/source.baml.json +1 -0
  10. data/grammars/source.bb.json +1 -1
  11. data/grammars/source.brs.embedded.xml.json +1 -0
  12. data/grammars/source.bsl.json +1 -1
  13. data/grammars/source.c++.json +1 -1
  14. data/grammars/source.c.json +1 -1
  15. data/grammars/source.c3.json +1 -1
  16. data/grammars/source.cel.json +1 -0
  17. data/grammars/source.clarion.json +1 -1
  18. data/grammars/source.cmake.json +1 -1
  19. data/grammars/source.cs.json +1 -1
  20. data/grammars/source.csv.json +1 -1
  21. data/grammars/source.curlrc.json +1 -1
  22. data/grammars/source.daslang.json +1 -1
  23. data/grammars/source.data-weave.json +1 -1
  24. data/grammars/source.emacs.lisp.json +1 -1
  25. data/grammars/source.gdscript.json +1 -1
  26. data/grammars/source.gimprc.json +1 -0
  27. data/grammars/source.gimpres.json +1 -0
  28. data/grammars/source.graphql.json +1 -1
  29. data/grammars/source.gtkrc.json +1 -0
  30. data/grammars/source.hack.json +1 -1
  31. data/grammars/source.hosts.json +1 -1
  32. data/grammars/source.il.json +1 -0
  33. data/grammars/source.ink.json +1 -1
  34. data/grammars/source.interp.json +1 -0
  35. data/grammars/source.jac.json +1 -1
  36. data/grammars/source.jactoml.json +1 -0
  37. data/grammars/source.jai.json +1 -1
  38. data/grammars/source.just.json +1 -1
  39. data/grammars/source.lean4.markdown.json +1 -1
  40. data/grammars/source.luau.json +1 -1
  41. data/grammars/source.m2.json +1 -1
  42. data/grammars/source.m3u.json +1 -1
  43. data/grammars/source.matlab.json +1 -1
  44. data/grammars/source.mdx.astro.json +1 -1
  45. data/grammars/source.mo.json +1 -1
  46. data/grammars/source.mojo.json +1 -1
  47. data/grammars/source.moonbit.config.json +1 -0
  48. data/grammars/source.moonbit.json +1 -1
  49. data/grammars/source.move.json +1 -1
  50. data/grammars/source.opy.json +1 -0
  51. data/grammars/source.pic.json +1 -1
  52. data/grammars/source.pkgconf.json +1 -0
  53. data/grammars/source.powerquery.json +1 -0
  54. data/grammars/source.powershell.json +1 -1
  55. data/grammars/source.prisma.json +1 -1
  56. data/grammars/source.quint.json +1 -0
  57. data/grammars/source.rascal.json +1 -1
  58. data/grammars/source.rascript.json +1 -1
  59. data/grammars/source.record-jar.json +1 -1
  60. data/grammars/source.redscript.json +1 -0
  61. data/grammars/source.slang.json +1 -1
  62. data/grammars/source.slint.json +1 -1
  63. data/grammars/source.soql.json +1 -1
  64. data/grammars/source.spicedb-yaml.json +1 -0
  65. data/grammars/source.spicedb.json +1 -0
  66. data/grammars/source.stan.json +1 -1
  67. data/grammars/source.surrealql.json +1 -1
  68. data/grammars/source.swift.json +1 -1
  69. data/grammars/source.uri-list.json +1 -0
  70. data/grammars/source.v.json +1 -1
  71. data/grammars/source.wgsl.json +1 -1
  72. data/grammars/spicedb-yaml.injection.json +1 -0
  73. data/grammars/text.cachedir.json +1 -0
  74. data/grammars/text.cookie-jar.json +1 -0
  75. data/grammars/text.html.vue.json +1 -1
  76. data/grammars/text.mac-tts.json +1 -0
  77. data/grammars/text.roff.json +1 -1
  78. data/grammars/version +1 -1
  79. data/lib/linguist/VERSION +1 -1
  80. data/lib/linguist/classifier.rb +2 -1
  81. data/lib/linguist/generated.rb +16 -0
  82. data/lib/linguist/generic.yml +2 -0
  83. data/lib/linguist/heuristics.yml +17 -0
  84. data/lib/linguist/language.rb +8 -0
  85. data/lib/linguist/languages.json +1 -1
  86. data/lib/linguist/languages.yml +139 -12
  87. data/lib/linguist/lazy_blob.rb +19 -1
  88. data/lib/linguist/samples.json +1 -1
  89. data/lib/linguist/vendor.yml +3 -0
  90. metadata +25 -1
@@ -549,6 +549,16 @@ B4X:
549
549
  codemirror_mode: vb
550
550
  codemirror_mime_type: text/x-vb
551
551
  language_id: 96642275
552
+ BAML:
553
+ type: programming
554
+ color: "#a855f7"
555
+ extensions:
556
+ - ".baml"
557
+ tm_scope: source.baml
558
+ ace_mode: io
559
+ codemirror_mode: stylus
560
+ codemirror_mime_type: text/x-styl
561
+ language_id: 502521509
552
562
  BASIC:
553
563
  type: programming
554
564
  extensions:
@@ -2921,6 +2931,23 @@ Groovy Server Pages:
2921
2931
  codemirror_mode: htmlembedded
2922
2932
  codemirror_mime_type: application/x-jsp
2923
2933
  language_id: 143
2934
+ GtkRC:
2935
+ type: data
2936
+ color: "#7fe719"
2937
+ aliases:
2938
+ - gtk
2939
+ - gtk 1
2940
+ - gtk 2
2941
+ extensions:
2942
+ - ".gtkrc"
2943
+ filenames:
2944
+ - gtkrc
2945
+ - gtkrc-2.0
2946
+ tm_scope: source.gtkrc
2947
+ ace_mode: ruby
2948
+ codemirror_mode: ruby
2949
+ codemirror_mime_type: text/x-ruby
2950
+ language_id: 876401352
2924
2951
  HAProxy:
2925
2952
  type: data
2926
2953
  color: "#106da9"
@@ -3252,6 +3279,17 @@ IGOR Pro:
3252
3279
  tm_scope: source.igor
3253
3280
  ace_mode: text
3254
3281
  language_id: 162
3282
+ IL Assembly:
3283
+ type: programming
3284
+ color: "#512BD4"
3285
+ extensions:
3286
+ - ".il"
3287
+ tm_scope: source.il
3288
+ ace_mode: text
3289
+ aliases:
3290
+ - ilasm
3291
+ - msil
3292
+ language_id: 592065806
3255
3293
  INI:
3256
3294
  type: data
3257
3295
  color: "#d1dbe0"
@@ -3259,12 +3297,19 @@ INI:
3259
3297
  - ".ini"
3260
3298
  - ".cfg"
3261
3299
  - ".cnf"
3300
+ - ".container"
3262
3301
  - ".dof"
3263
3302
  - ".frm"
3264
3303
  - ".lektorproject"
3304
+ - ".mount"
3305
+ - ".network"
3265
3306
  - ".prefs"
3266
3307
  - ".pro"
3267
3308
  - ".properties"
3309
+ - ".service"
3310
+ - ".socket"
3311
+ - ".target"
3312
+ - ".timer"
3268
3313
  - ".url"
3269
3314
  filenames:
3270
3315
  - ".buckconfig"
@@ -3278,6 +3323,7 @@ INI:
3278
3323
  - vlcrc
3279
3324
  tm_scope: source.ini
3280
3325
  aliases:
3326
+ - conf
3281
3327
  - dosini
3282
3328
  ace_mode: ini
3283
3329
  codemirror_mode: properties
@@ -3333,6 +3379,7 @@ Ignore List:
3333
3379
  - ".dockerignore"
3334
3380
  - ".easignore"
3335
3381
  - ".eleventyignore"
3382
+ - ".eslint-ignore"
3336
3383
  - ".eslintignore"
3337
3384
  - ".gitignore"
3338
3385
  - ".ignore"
@@ -3496,6 +3543,7 @@ JSON:
3496
3543
  - ".jsonl"
3497
3544
  - ".mcmeta"
3498
3545
  - ".sarif"
3546
+ - ".slnlaunch"
3499
3547
  - ".tact"
3500
3548
  - ".tfstate"
3501
3549
  - ".tfstate.backup"
@@ -3721,8 +3769,10 @@ JavaScript:
3721
3769
  filenames:
3722
3770
  - Jakefile
3723
3771
  interpreters:
3772
+ - bun
3724
3773
  - chakra
3725
3774
  - d8
3775
+ - deno
3726
3776
  - gjs
3727
3777
  - js
3728
3778
  - node
@@ -4551,6 +4601,7 @@ Makefile:
4551
4601
  - Makefile.frag
4552
4602
  - Makefile.in
4553
4603
  - Makefile.inc
4604
+ - Makefile.pc
4554
4605
  - Makefile.wat
4555
4606
  - makefile
4556
4607
  - makefile.sco
@@ -5512,6 +5563,19 @@ Org:
5512
5563
  tm_scope: none
5513
5564
  ace_mode: text
5514
5565
  language_id: 267
5566
+ OverPy:
5567
+ type: programming
5568
+ color: "#78b355"
5569
+ wrap: true
5570
+ extensions:
5571
+ - ".opy"
5572
+ tm_scope: source.opy
5573
+ aliases:
5574
+ - opy
5575
+ ace_mode: python
5576
+ codemirror_mode: python
5577
+ codemirror_mime_type: text/x-python
5578
+ language_id: 492781155
5515
5579
  OverpassQL:
5516
5580
  type: programming
5517
5581
  color: "#cce2aa"
@@ -5937,6 +6001,16 @@ PostScript:
5937
6001
  - postscr
5938
6002
  ace_mode: text
5939
6003
  language_id: 291
6004
+ Power Query:
6005
+ type: programming
6006
+ aliases:
6007
+ - powerquery
6008
+ extensions:
6009
+ - ".pq"
6010
+ tm_scope: source.powerquery
6011
+ ace_mode: text
6012
+ color: "#d38e0d"
6013
+ language_id: 37496382
5940
6014
  PowerBuilder:
5941
6015
  type: programming
5942
6016
  color: "#8f0f8d"
@@ -5981,6 +6055,17 @@ Prisma:
5981
6055
  tm_scope: source.prisma
5982
6056
  ace_mode: prisma
5983
6057
  language_id: 499933428
6058
+ Pro*C:
6059
+ fs_name: ProC
6060
+ color: "#bb8368"
6061
+ type: programming
6062
+ extensions:
6063
+ - ".pc"
6064
+ tm_scope: source.c
6065
+ ace_mode: c_cpp
6066
+ codemirror_mode: clike
6067
+ codemirror_mime_type: text/x-csrc
6068
+ language_id: 991047534
5984
6069
  Processing:
5985
6070
  type: programming
5986
6071
  color: "#0096D8"
@@ -6267,6 +6352,14 @@ QuickBASIC:
6267
6352
  codemirror_mode: vb
6268
6353
  codemirror_mime_type: text/x-vb
6269
6354
  language_id: 593107205
6355
+ Quint:
6356
+ type: programming
6357
+ color: "#9d6ce5"
6358
+ extensions:
6359
+ - ".qnt"
6360
+ tm_scope: source.quint
6361
+ ace_mode: text
6362
+ language_id: 562056483
6270
6363
  R:
6271
6364
  type: programming
6272
6365
  color: "#198CE7"
@@ -6594,6 +6687,14 @@ Redirect Rules:
6594
6687
  tm_scope: source.redirects
6595
6688
  ace_mode: text
6596
6689
  language_id: 1020148948
6690
+ Redscript:
6691
+ type: programming
6692
+ color: "#f44336"
6693
+ extensions:
6694
+ - ".reds"
6695
+ tm_scope: source.redscript
6696
+ ace_mode: text
6697
+ language_id: 686691365
6597
6698
  Regular Expression:
6598
6699
  type: data
6599
6700
  color: "#009a00"
@@ -6664,6 +6765,17 @@ RobotFramework:
6664
6765
  tm_scope: text.robot
6665
6766
  ace_mode: robot
6666
6767
  language_id: 324
6768
+ Robots Exclusion Rules:
6769
+ type: data
6770
+ aliases:
6771
+ - robots
6772
+ - robots txt
6773
+ - robotx.txt
6774
+ filenames:
6775
+ - robots.txt
6776
+ ace_mode: text
6777
+ tm_scope: text.robots-txt
6778
+ language_id: 674736065
6667
6779
  Roc:
6668
6780
  type: programming
6669
6781
  color: "#7c38f5"
@@ -7450,6 +7562,14 @@ SourcePawn:
7450
7562
  tm_scope: source.sourcepawn
7451
7563
  ace_mode: text
7452
7564
  language_id: 354
7565
+ SpiceDB Schema:
7566
+ type: data
7567
+ color: "#a5318a"
7568
+ extensions:
7569
+ - ".zed"
7570
+ tm_scope: source.spicedb
7571
+ ace_mode: text
7572
+ language_id: 864005057
7453
7573
  Spline Font Database:
7454
7574
  type: data
7455
7575
  extensions:
@@ -7674,7 +7794,7 @@ TMDL:
7674
7794
  extensions:
7675
7795
  - ".tmdl"
7676
7796
  aliases:
7677
- - "Tabular Model Definition Language"
7797
+ - Tabular Model Definition Language
7678
7798
  tm_scope: source.tmdl
7679
7799
  ace_mode: text
7680
7800
  language_id: 769162295
@@ -7689,6 +7809,8 @@ TOML:
7689
7809
  - Cargo.toml.orig
7690
7810
  - Gopkg.lock
7691
7811
  - Pipfile
7812
+ - mise.local.lock
7813
+ - mise.lock
7692
7814
  - pdm.lock
7693
7815
  - poetry.lock
7694
7816
  - uv.lock
@@ -7908,6 +8030,7 @@ Text:
7908
8030
  - README.me
7909
8031
  - README.mysql
7910
8032
  - README.nss
8033
+ - README.pc
7911
8034
  - click.me
7912
8035
  - delete.me
7913
8036
  - keep.me
@@ -8224,6 +8347,7 @@ Valve Data Format:
8224
8347
  - vdf
8225
8348
  extensions:
8226
8349
  - ".vdf"
8350
+ - ".vmf"
8227
8351
  ace_mode: text
8228
8352
  tm_scope: source.keyvalues
8229
8353
  language_id: 544060961
@@ -9057,11 +9181,11 @@ crontab:
9057
9181
  ace_mode: tcl
9058
9182
  language_id: 705203557
9059
9183
  desktop:
9184
+ group: INI
9060
9185
  type: data
9061
9186
  extensions:
9062
9187
  - ".desktop"
9063
9188
  - ".desktop.in"
9064
- - ".service"
9065
9189
  tm_scope: source.desktop
9066
9190
  ace_mode: text
9067
9191
  language_id: 412
@@ -9215,6 +9339,19 @@ ooc:
9215
9339
  tm_scope: source.ooc
9216
9340
  ace_mode: text
9217
9341
  language_id: 418
9342
+ pkg-config:
9343
+ type: data
9344
+ color: "#2b5e82"
9345
+ aliases:
9346
+ - pkgconf
9347
+ extensions:
9348
+ - ".pc"
9349
+ - ".pc.in"
9350
+ tm_scope: source.pkgconf
9351
+ ace_mode: properties
9352
+ codemirror_mode: properties
9353
+ codemirror_mime_type: text/x-properties
9354
+ language_id: 925023573
9218
9355
  q:
9219
9356
  type: programming
9220
9357
  extensions:
@@ -9241,16 +9378,6 @@ reStructuredText:
9241
9378
  codemirror_mode: rst
9242
9379
  codemirror_mime_type: text/x-rst
9243
9380
  language_id: 419
9244
- robots.txt:
9245
- type: data
9246
- aliases:
9247
- - robots
9248
- - robots txt
9249
- filenames:
9250
- - robots.txt
9251
- ace_mode: text
9252
- tm_scope: text.robots-txt
9253
- language_id: 674736065
9254
9381
  sed:
9255
9382
  type: programming
9256
9383
  color: "#64b970"
@@ -73,7 +73,25 @@ module Linguist
73
73
  return @language if defined?(@language)
74
74
 
75
75
  @language = if lang = git_attributes['linguist-language']
76
- Language.find_by_alias(lang)
76
+ detected_language = Language.find_by_alias(lang)
77
+
78
+ # If strategies are being tracked, get the original strategy that would have been used
79
+ if detected_language && Linguist.instrumenter
80
+ # Get the original strategy by calling super (which calls Linguist.detect)
81
+ original_language = super
82
+ original_strategy_info = Linguist.instrumenter.detected_info[self.name]
83
+ original_strategy = original_strategy_info ? original_strategy_info[:strategy] : "Unknown"
84
+
85
+ if original_language == detected_language
86
+ strategy_name = "#{original_strategy} (confirmed by .gitattributes)"
87
+ else
88
+ strategy_name = "#{original_strategy} (overridden by .gitattributes)"
89
+ end
90
+
91
+ strategy = Struct.new(:name).new(strategy_name)
92
+ Linguist.instrument("linguist.detected", blob: self, strategy: strategy, language: detected_language)
93
+ end
94
+ detected_language
77
95
  else
78
96
  super
79
97
  end