github-linguist 9.0.0 → 9.1.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 (77) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/liquid.injection.json +1 -1
  3. data/grammars/source.abap.json +1 -1
  4. data/grammars/source.abl.json +1 -1
  5. data/grammars/source.answersetprogramming.json +1 -0
  6. data/grammars/source.apacheconf.json +1 -0
  7. data/grammars/source.assembly.json +1 -1
  8. data/grammars/source.ats.json +1 -1
  9. data/grammars/source.brs.json +1 -1
  10. data/grammars/source.bst.json +1 -0
  11. data/grammars/source.c.linker.json +1 -0
  12. data/grammars/source.cairo0.json +1 -1
  13. data/grammars/source.cobol.json +1 -1
  14. data/grammars/source.cs.json +1 -1
  15. data/grammars/source.curry.json +1 -1
  16. data/grammars/source.dds.dspf.json +1 -1
  17. data/grammars/source.erlang.json +1 -1
  18. data/grammars/source.gdscript.json +1 -1
  19. data/grammars/source.git-revlist.json +1 -1
  20. data/grammars/source.gleam.json +1 -1
  21. data/grammars/source.hack.json +1 -1
  22. data/grammars/source.hcl.json +1 -1
  23. data/grammars/source.ice.json +1 -1
  24. data/grammars/source.ispc.json +1 -0
  25. data/grammars/source.jai.json +1 -0
  26. data/grammars/source.json.comments.json +1 -0
  27. data/grammars/source.just.json +1 -1
  28. data/grammars/source.kdl.json +1 -0
  29. data/grammars/source.lean.markdown.json +1 -1
  30. data/grammars/source.lean4.markdown.json +1 -1
  31. data/grammars/source.matlab.json +1 -1
  32. data/grammars/source.mo.json +1 -1
  33. data/grammars/source.moonbit.json +1 -1
  34. data/grammars/source.mzn.json +1 -0
  35. data/grammars/source.nr.json +1 -1
  36. data/grammars/source.openesql.json +1 -1
  37. data/grammars/source.overpassql.json +1 -0
  38. data/grammars/source.polar.json +1 -1
  39. data/grammars/source.prisma.json +1 -1
  40. data/grammars/source.purescript.json +1 -1
  41. data/grammars/source.ql.json +1 -1
  42. data/grammars/source.qsharp.json +1 -1
  43. data/grammars/source.rascal.json +1 -1
  44. data/grammars/source.rpgle.json +1 -1
  45. data/grammars/source.scala.json +1 -1
  46. data/grammars/source.scm.json +1 -0
  47. data/grammars/source.slang.json +1 -0
  48. data/grammars/source.slice.json +1 -1
  49. data/grammars/source.sourcepawn.json +1 -1
  50. data/grammars/source.stan.json +1 -1
  51. data/grammars/source.swift.json +1 -1
  52. data/grammars/source.tact.json +1 -1
  53. data/grammars/source.talon.json +1 -1
  54. data/grammars/source.templ.json +1 -1
  55. data/grammars/source.textgrid.json +1 -1
  56. data/grammars/source.toc.json +1 -1
  57. data/grammars/source.ts.prismaClientRawSQL.json +1 -1
  58. data/grammars/source.tsp.json +1 -1
  59. data/grammars/source.typst.json +1 -1
  60. data/grammars/source.vue.json +1 -1
  61. data/grammars/source.wdl.json +1 -1
  62. data/grammars/source.xmake.json +1 -0
  63. data/grammars/text.html.liquid.json +1 -1
  64. data/grammars/text.html.markdown.d2.json +1 -1
  65. data/grammars/text.rtf.json +1 -1
  66. data/grammars/version +1 -1
  67. data/lib/linguist/VERSION +1 -1
  68. data/lib/linguist/generated.rb +1 -1
  69. data/lib/linguist/heuristics.yml +57 -17
  70. data/lib/linguist/languages.json +1 -1
  71. data/lib/linguist/languages.yml +155 -23
  72. data/lib/linguist/samples.json +1 -1
  73. data/lib/linguist/shebang.rb +1 -1
  74. metadata +16 -6
  75. data/grammars/source.apache-config.json +0 -1
  76. data/grammars/source.apache-config.mod_perl.json +0 -1
  77. data/grammars/text.html.erlang.yaws.json +0 -1
@@ -68,7 +68,7 @@ disambiguations:
68
68
  - extensions: ['.as']
69
69
  rules:
70
70
  - language: ActionScript
71
- pattern: '^\s*(?:package(?:\s+[\w.]+)?\s+(?:\{|$)|import\s+[\w.*]+\s*;|(?=.*?(?:intrinsic|extends))(intrinsic\s+)?class\s+[\w<>.]+(?:\s+extends\s+[\w<>.]+)?|(?:(?:public|protected|private|static)\s+)*(?:(?:var|const|local)\s+\w+\s*:\s*[\w<>.]+(?:\s*=.*)?\s*;|function\s+\w+\s*\((?:\s*\w+\s*:\s*[\w<>.]+\s*(,\s*\w+\s*:\s*[\w<>.]+\s*)*)?\)))'
71
+ pattern: '^\s*(?:package(?:\s+[\w.]+)?\s+(?:\{|$)|import\s+[\w.*]+\s*;|(?:intrinsic\s+)class\s+[\w<>.]+|\s+class\s+extends\s+[\w<>.]+|(?:(?:public|protected|private|static)\s+)*(?:(?:var|const|local)\s+\w+\s*:\s*[\w<>.]+(?:\s*=.*)?\s*;|function\s+\w+\s*\((?:\s*\w+\s*:\s*[\w<>.]+\s*(,\s*\w+\s*:\s*[\w<>.]+\s*)*)?\)))'
72
72
  - extensions: ['.asc']
73
73
  rules:
74
74
  - language: Public Key
@@ -79,6 +79,8 @@ disambiguations:
79
79
  pattern: '^(\/\/.+|((import|export)\s+)?(function|int|float|char)\s+((room|repeatedly|on|game)_)?([A-Za-z]+[A-Za-z_0-9]+)\s*[;\(])'
80
80
  - extensions: ['.asm']
81
81
  rules:
82
+ - language: Assembly
83
+ pattern: '(?i)mov\s+[^\s]{2,},'
82
84
  - language: Motorola 68K Assembly
83
85
  named_pattern: m68k
84
86
  - extensions: ['.asy']
@@ -133,12 +135,12 @@ disambiguations:
133
135
  - extensions: ['.bs']
134
136
  rules:
135
137
  - language: Bikeshed
136
- pattern: '^(?i:<pre\s+class)\s*=\s*(''|\"|\b)metadata\b\1[^>\r\n]*>'
138
+ pattern: '^(?i:<pre\s+class)\s*=\s*(''|\"|\b)metadata\b(''|\"|\b)[^>\r\n]*>'
137
139
  - language: BrighterScript
138
140
  pattern:
139
- - (?i:^\s*(?=^sub\s)(?:sub\s*\w+\(.*?\))|(?::\s*sub\(.*?\))$)
141
+ - (?i:^\s*(?:sub\s*\w+\(.*?\))|(?::\s*sub\(.*?\))$)
140
142
  - (?i:^\s*(end\ssub)$)
141
- - (?i:^\s*(?=^function\s)(?:function\s*\w+\(.*?\)\s*as\s*\w*)|(?::\s*function\(.*?\)\s*as\s*\w*)$)
143
+ - (?i:^\s*(?:function\s*\w+\(.*?\)\s*as\s*\w*)|(?::\s*function\(.*?\)\s*as\s*\w*)$)
142
144
  - (?i:^\s*(end\sfunction)$)
143
145
  - language: Bluespec BH
144
146
  pattern: '^package\s+[A-Za-z_][A-Za-z0-9_'']*(?:\s*\(|\s+where)'
@@ -295,7 +297,7 @@ disambiguations:
295
297
  - extensions: ['.ftl']
296
298
  rules:
297
299
  - language: FreeMarker
298
- pattern: '^(?:<|[a-zA-Z-][a-zA-Z0-9_-]+[ \t]+\w)|\$\{\w+[^\r\n]*?\}|^[ \t]*(?:<#--.*?-->|<#([a-z]+)(?=\s|>)[^>]*>.*?</#\1>|\[#--.*?--\]|\[#([a-z]+)(?=\s|\])[^\]]*\].*?\[#\2\])'
300
+ pattern: '^(?:<|[a-zA-Z-][a-zA-Z0-9_-]+[ \t]+\w)|\$\{\w+[^\r\n]*?\}|^[ \t]*(?:<#--.*?-->|<#(?:[a-z]+)\s[^>]*>.*?</#(?:[a-z]+)>|\[#--.*?--\]|\[#(?:[a-z]+)\s[^\]]*\].*?\[#(?:[a-z]+)\])'
299
301
  - language: Fluent
300
302
  pattern: '^-?[a-zA-Z][a-zA-Z0-9_-]* *=|\{\$-?[a-zA-Z][-\w]*(?:\.[a-zA-Z][-\w]*)?\}'
301
303
  - extensions: ['.g']
@@ -363,6 +365,10 @@ disambiguations:
363
365
  named_pattern: m68k
364
366
  - language: SWIG
365
367
  pattern: '^[ \t]*%[a-z_]+\b|^%[{}]$'
368
+ - language: Assembly
369
+ pattern:
370
+ - '(?i)mov\s+[^\s]+,'
371
+ - '^\s+(i?)db\s+[a-z\d]'
366
372
  - extensions: ['.ice']
367
373
  rules:
368
374
  - language: JSON
@@ -382,7 +388,7 @@ disambiguations:
382
388
  - language: NASL
383
389
  pattern:
384
390
  - '^\s*include\s*\(\s*(?:"|'')[\\/\w\-\.:\s]+\.(?:nasl|inc)\s*(?:"|'')\s*\)\s*;'
385
- - '^\s*(?:global|local)_var\s+(?:\w+(?:\s*=\s*[\w\-"'']+)?\s*)(?:,\s*\w+(?:\s*=\s*[\w\-"'']+)?\s*)*+\s*;'
391
+ - '^\s*(?:global|local)_var\s+(?:\w+(?:\s*=\s*[\w\-"'']+)?\s*)(?:,\s*\w+(?:\s*=\s*[\w\-"'']+)?\s*)*\s*;'
386
392
  - '^\s*namespace\s+\w+\s*\{'
387
393
  - '^\s*object\s+\w+\s*(?:extends\s+\w+(?:::\w+)?)?\s*\{'
388
394
  - '^\s*(?:public\s+|private\s+|\s*)function\s+\w+\s*\([\w\s,]*\)\s*\{'
@@ -394,6 +400,10 @@ disambiguations:
394
400
  - '^\s*end[.;]\s*$'
395
401
  - language: BitBake
396
402
  pattern: '^inherit(\s+[\w.-]+)+\s*$'
403
+ - language: Assembly
404
+ pattern:
405
+ - '^(?i)[^"m]*mov\s+[^\s]+,'
406
+ - '^\s+(?i)db\s+[a-z\d]'
397
407
  - extensions: ['.json']
398
408
  rules:
399
409
  - language: OASv2-json
@@ -417,6 +427,11 @@ disambiguations:
417
427
  pattern: '^import [a-z]'
418
428
  - language: Lean 4
419
429
  pattern: '^import [A-Z]'
430
+ - extensions: ['.lp']
431
+ rules:
432
+ - language: Linear Programming
433
+ pattern: '^(?i:minimize|minimum|min|maximize|maximum|max)(?i:\s+multi-objectives)?$'
434
+ - language: Answer Set Programming
420
435
  - extensions: ['.ls']
421
436
  rules:
422
437
  - language: LoomScript
@@ -460,7 +475,7 @@ disambiguations:
460
475
  - extensions: ['.mc']
461
476
  rules:
462
477
  - language: Win32 Message File
463
- pattern: '(?i)^[ \t]*(?>\/\*\s*)?MessageId=|^\.$'
478
+ pattern: '(?i)^[ \t]*(\/\*\s*)?MessageId=|^\.$'
464
479
  - language: M4
465
480
  pattern: '^dnl|^divert\((?:-?\d+)?\)|^\w+\(`[^\r\n]*?''[),]'
466
481
  - language: Monkey C
@@ -506,8 +521,8 @@ disambiguations:
506
521
  - language: MAXScript
507
522
  - extensions: ['.msg']
508
523
  rules:
509
- - language: omnetpp-msg
510
- pattern: '^cplusplus \{\{|^namespace[\s]*([^.\s]*\.)*[^.\s]*;|^struct \{|^message [\S]* (extends)? [\S]*[\s]*\{|^packet \{|^class (extends) [\S]*[\s]*\{|^enum \{|^import ([^.\s]*\.)*[^.\s]*;'
524
+ - language: OMNeT++ MSG
525
+ pattern: '^cplusplus\(?[\S]*\)?[\s]*\{?\{?|^namespace[\s]+([^.\s]*\.)*[^.\s]*;|^struct[\s]+[\S]+|^message[\s]+[\S]+(extends )?[\S]*[\s]*|^packet[\s]+[\S]+|^class[\s]+[\S]+(extends )?[\S]*[\s]*|^enum[\s]+[\S]+|^import ([^.\s]*\.)*[^.\s]*;'
511
526
  - extensions: ['.n']
512
527
  rules:
513
528
  - language: Roff
@@ -676,7 +691,7 @@ disambiguations:
676
691
  - extensions: ['.rno']
677
692
  rules:
678
693
  - language: RUNOFF
679
- pattern: '(?i:^\.!|^\f|\f$|^\.end lit(?:eral)?\b|^\.[a-zA-Z].*?;\.[a-zA-Z](?:[; \t])|\^\*[^\s*][^*]*\\\*(?=$|\s)|^\.c;[ \t]*\w+)'
694
+ pattern: '(?i:^\.!|^\f|\f$|^\.end lit(?:eral)?\b|^\.[a-zA-Z].*?;\.[a-zA-Z](?:[; \t])|\^\*[^\s*][^*]*\\\*(?:$|\s)|^\.c;[ \t]*\w+)'
680
695
  - language: Roff
681
696
  pattern: '^\.\\" '
682
697
  - extensions: ['.rpy']
@@ -694,6 +709,10 @@ disambiguations:
694
709
  pattern: '^\s*<\?xml'
695
710
  - extensions: ['.s']
696
711
  rules:
712
+ - language: Unix Assembly
713
+ pattern: '(?i:mov[lq]?)\s+[%\$]'
714
+ - language: Assembly
715
+ pattern: '(?i:mov)\s+[^\s%]{2,},'
697
716
  - language: Motorola 68K Assembly
698
717
  named_pattern: m68k
699
718
  - extensions: ['.sc']
@@ -709,10 +728,27 @@ disambiguations:
709
728
  - language: Markdown
710
729
  # Markdown syntax for scdoc
711
730
  pattern: '^#+\s+(NAME|SYNOPSIS|DESCRIPTION)'
731
+ - extensions: ['.scm']
732
+ rules:
733
+ - language: Scheme
734
+ pattern:
735
+ - '(?:''[\(\*#]|\w->\w|\.\.\.[\s\)]|\([+\-:<>\/=~\)]|~>|[#`]\(|#:\w)'
736
+ - '^\s*\((?:define\*?|import|library|lambda)'
737
+ negative_pattern:
738
+ - '\(#[\w-]+[!\?]'
739
+ - '[\)\]"_]\s*(?:[\*\+\?]|@\w)'
740
+ - language: Tree-sitter Query
741
+ pattern:
742
+ - '\(#[\w-]+[!\?]'
743
+ - '[\)\]"_]\s*(?:[\*\+\?]|@\w)'
744
+ - '(?:^\s*\w+:\s*[\(\[\"])'
745
+ - '\(#(?:set!|(?:not-)?(?:any-of|match)\?)'
746
+ negative_pattern:
747
+ - '\([+\-:<>\/=~\)]'
712
748
  - extensions: ['.sol']
713
749
  rules:
714
750
  - language: Solidity
715
- pattern: '\bpragma\s+solidity\b|\b(?:abstract\s+)?contract\s+(?!\d)[a-zA-Z0-9$_]+(?:\s+is\s+(?:[a-zA-Z0-9$_][^\{]*?)?)?\s*\{'
751
+ pattern: '\bpragma\s+solidity\b|\b(?:abstract\s+)?contract\s+[a-zA-Z$_][a-zA-Z0-9$_]*(?:\s+is\s+(?:[a-zA-Z0-9$_][^\{]*?)?)?\s*\{'
716
752
  - language: Gerber Image
717
753
  pattern: '^[DGMT][0-9]{2}\*(?:\r?\n|\r)'
718
754
  - extensions: ['.sql']
@@ -737,7 +773,7 @@ disambiguations:
737
773
  - extensions: ['.st']
738
774
  rules:
739
775
  - language: StringTemplate
740
- pattern: '\$\w+[($]|(.)!\s*.+?\s*!\1|<!\s*.+?\s*!>|\[!\s*.+?\s*!\]|\{!\s*.+?\s*!\}'
776
+ pattern: '\$\w+[($]|.!\s*.+?\s*!.|<!\s*.+?\s*!>|\[!\s*.+?\s*!\]|\{!\s*.+?\s*!\}'
741
777
  - language: Smalltalk
742
778
  pattern: '\A\s*[\[{(^"''\w#]|[a-zA-Z_]\w*\s*:=\s*[a-zA-Z_]\w*|class\s*>>\s*[a-zA-Z_]\w*|^[a-zA-Z_]\w*\s+[a-zA-Z_]\w*:|^Class\s*\{|if(?:True|False):\s*\['
743
779
  - extensions: ['.star']
@@ -749,6 +785,11 @@ disambiguations:
749
785
  rules:
750
786
  - language: STL
751
787
  pattern: '\A\s*solid(?:$|\s)[\s\S]*^endsolid(?:$|\s)'
788
+ - extensions: ['.svx']
789
+ rules:
790
+ - language: Survex data
791
+ pattern: '\A(;|\*[^*]+$)'
792
+ - language: mdsvex
752
793
  - extensions: ['.sw']
753
794
  rules:
754
795
  - language: Sway
@@ -837,7 +878,7 @@ disambiguations:
837
878
  (?<!-)\b
838
879
  )*+
839
880
 
840
- (?=$|\s)
881
+ (?:$|\s)
841
882
  - language: Adblock Filter List
842
883
  pattern: |-
843
884
  (?x)\A
@@ -870,7 +911,7 @@ disambiguations:
870
911
  - extensions: ['.url']
871
912
  rules:
872
913
  - language: INI
873
- pattern: '^\[InternetShortcut\](?:\r?\n|\r)(?>[^\s\[][^\r\n]*(?:\r?\n|\r))*URL='
914
+ pattern: '^\[InternetShortcut\](?:\r?\n|\r)([^\s\[][^\r\n]*(?:\r?\n|\r)){0,20}URL='
874
915
  - extensions: ['.v']
875
916
  rules:
876
917
  - language: Coq
@@ -939,11 +980,10 @@ named_patterns:
939
980
  freebasic:
940
981
  - '(?i)^[ \t]*#(?:define|endif|endmacro|ifn?def|include|lang|macro|pragma)(?:$|\s)'
941
982
  - '(?i)^[ \t]*dim( shared)? [a-z_][a-z0-9_]* as [a-z_][a-z0-9_]* ptr'
942
- - '(?i)^[ \t]*dim( shared)? as [a-z_][a-z0-9_]* [a-z_][a-z0-9_]*'
943
983
  gsc:
944
984
  - '^\s*#\s*(?:using|insert|include|define|namespace)[ \t]+\w'
945
- - '^\s*(?>(?:autoexec|private)\s+){0,2}function\s+(?>(?:autoexec|private)\s+){0,2}\w+\s*\('
946
- - '\b(?:level|self)[ \t]+thread[ \t]+(?:\[\[[ \t]*(?>\w+\.)*\w+[ \t]*\]\]|\w+)[ \t]*\([^\r\n\)]*\)[ \t]*;'
985
+ - '^\s*((?:autoexec|private)\s+){0,2}function\s+((?:autoexec|private)\s+){0,2}\w+\s*\('
986
+ - '\b(?:level|self)[ \t]+thread[ \t]+(?:\[\[[ \t]*(\w+\.)+[ \t]*\]\]|\w+)[ \t]*\([^\r\n\)]*\)[ \t]*;'
947
987
  - '^[ \t]*#[ \t]*(?:precache|using_animtree)[ \t]*\('
948
988
  json: '\A\s*[{\[]'
949
989
  key_equals_value: '^[^#!;][^=]*='