linguist-js 2.5.2 → 2.5.3

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.
@@ -12,16 +12,25 @@ function pcre(regex) {
12
12
  replace(match, '');
13
13
  [...flags].forEach(flag => finalFlags.add(flag));
14
14
  }
15
- // Remove invalid syntax
15
+ // Remove PCRE-only syntax
16
16
  replace(/([*+]){2}/g, '$1');
17
17
  replace(/\(\?>/g, '(?:');
18
18
  // Remove start/end-of-file markers
19
19
  if (/\\[AZ]/.test(finalRegex)) {
20
- replace(/\\A/g, '^').replace(/\\Z/g, '$');
20
+ replace(/\\A/g, '^');
21
+ replace(/\\Z/g, '$');
21
22
  finalFlags.delete('m');
22
23
  }
23
- else
24
+ else {
24
25
  finalFlags.add('m');
26
+ }
27
+ // Reformat free-spacing mode
28
+ if (finalFlags.has('x')) {
29
+ finalFlags.delete('x');
30
+ replace(/#.+/g, '');
31
+ replace(/^\s+|\s+$|\n/gm, '');
32
+ replace(/\s+/g, ' ');
33
+ }
25
34
  // Return final regex
26
35
  return RegExp(finalRegex, [...finalFlags].join(''));
27
36
  }
package/ext/generated.rb CHANGED
@@ -146,7 +146,7 @@ module Linguist
146
146
  !!creator.include?("EAGLE") and lines[0..4].find {|line| line =~ /^%%Title: EAGLE Drawing /}
147
147
  end def generated_go?
148
148
  return false unless extname == '.go'
149
- return false unless lines.count > 1 return lines.first(40).any? { |l| l.include? "Code generated by" }
149
+ return false unless lines.count > 1 return lines.first(40).any? { |l| l =~ %r{^// Code generated .*} }
150
150
  end
151
151
  def generated_protocol_buffer_from_go?
152
152
  return false unless extname == '.proto'
@@ -67,6 +67,16 @@ disambiguations:
67
67
  pattern: '^\s*(# |include|require)\b'
68
68
  - language: Clojure
69
69
  pattern: '\((def|defn|defmacro|let)\s'
70
+ - extensions: ['.bf']
71
+ rules:
72
+ - language: Beef
73
+ pattern: '(?-m)^\s*using\s+(System|Beefy)(\.(.*))?;\s*$'
74
+ - language: HyPhy
75
+ pattern:
76
+ - '(?-m)^\s*#include\s+".*";\s*$'
77
+ - '\sfprintf\s*\('
78
+ - language: Brainfuck
79
+ pattern: '(>\+>|>\+<)'
70
80
  - extensions: ['.bi']
71
81
  rules:
72
82
  - language: FreeBasic
@@ -112,7 +122,7 @@ disambiguations:
112
122
  - language: Smalltalk
113
123
  pattern: '![\w\s]+methodsFor: '
114
124
  - language: 'C#'
115
- pattern: '^(\s*namespace\s*[\w\.]+\s*({|;)|\s*\/\/)'
125
+ pattern: '^\s*(using\s+[A-Z][\s\w.]+;|namespace\s*[\w\.]+\s*({|;)|\/\/)'
116
126
  - extensions: ['.csc']
117
127
  rules:
118
128
  - language: GSC
@@ -209,6 +219,12 @@ disambiguations:
209
219
  pattern: '^(?:<|[a-zA-Z-][a-zA-Z0-9_-]+[ \t]+\w)|\${\w+[^\n]*?}|^[ \t]*(?:<#--.*?-->|<#([a-z]+)(?=\s|>)[^>]*>.*?</#\1>|\[#--.*?--\]|\[#([a-z]+)(?=\s|\])[^\]]*\].*?\[#\2\])'
210
220
  - language: Fluent
211
221
  pattern: '^-?[a-zA-Z][a-zA-Z0-9_-]* *=|\{\$-?[a-zA-Z][-\w]*(?:\.[a-zA-Z][-\w]*)?\}'
222
+ - extensions: ['.g']
223
+ rules:
224
+ - language: GAP
225
+ pattern: '\s*(Declare|BindGlobal|KeyDependentOperation|Install(Method|GlobalFunction)|SetPackageInfo)'
226
+ - language: G-code
227
+ pattern: '^[MG][0-9]+\n'
212
228
  - extensions: ['.gd']
213
229
  rules:
214
230
  - language: GAP
@@ -458,7 +474,7 @@ disambiguations:
458
474
  - pattern: HEADERS
459
475
  - pattern: SOURCES
460
476
  - language: IDL
461
- pattern: '^\s*function[ \w,]+$'
477
+ pattern: '^\s*(?i:function|pro|compile_opt) \w[ \w,:]*$'
462
478
  - extensions: ['.properties']
463
479
  rules:
464
480
  - language: INI
@@ -537,6 +553,12 @@ disambiguations:
537
553
  pattern: '(?i:\^(this|super)\.|^\s*~\w+\s*=\.)'
538
554
  - language: Scala
539
555
  pattern: '(^\s*import (scala|java)\.|^\s*class\b)'
556
+ - extensions: ['.scd']
557
+ rules:
558
+ - language: SuperCollider
559
+ pattern: '(?i:\^(this|super)\.|^\s*(~\w+\s*=\.|SynthDef\b))'
560
+ - language: Markdown
561
+ pattern: '^#+\s+(NAME|SYNOPSIS|DESCRIPTION)'
540
562
  - extensions: ['.sol']
541
563
  rules:
542
564
  - language: Solidity
@@ -607,6 +629,27 @@ disambiguations:
607
629
  rules:
608
630
  - language: Vim Help File
609
631
  pattern: '(?:(?:^|[ \t])(?:vi|Vi(?=m))(?:m[<=>]?[0-9]+|m)?|[ \t]ex)(?=:(?=[ \t]*set?[ \t][^\r\n:]+:)|:(?![ \t]*set?[ \t]))(?:(?:[ \t]*:[ \t]*|[ \t])\w*(?:[ \t]*=(?:[^\\\s]|\\.)*)?)*[ \t:](?:filetype|ft|syntax)[ \t]*=(help)(?=$|\s|:)'
632
+ - language: Adblock Filter List
633
+ pattern: |-
634
+ (?x)\A
635
+ \[
636
+ (?<version>
637
+ (?:
638
+ [Aa]d[Bb]lock
639
+ (?:[ \t][Pp]lus)?
640
+ |
641
+ u[Bb]lock
642
+ (?:[ \t][Oo]rigin)?
643
+ |
644
+ [Aa]d[Gg]uard
645
+ )
646
+ (?:[ \t] \d+(?:\.\d+)*+)?
647
+ )
648
+ (?:
649
+ [ \t]?;[ \t]?
650
+ \g<version>
651
+ )*+
652
+ \]
610
653
  - language: Text
611
654
  - extensions: ['.url']
612
655
  rules:
package/ext/languages.yml CHANGED
@@ -192,6 +192,19 @@ Ada:
192
192
  tm_scope: source.ada
193
193
  ace_mode: ada
194
194
  language_id: 11
195
+ Adblock Filter List:
196
+ type: data
197
+ color: "#800000"
198
+ ace_mode: text
199
+ extensions:
200
+ - ".txt"
201
+ aliases:
202
+ - ad block filters
203
+ - ad block
204
+ - adb
205
+ - adblock
206
+ tm_scope: text.adblock
207
+ language_id: 884614762
195
208
  Adobe Font Metrics:
196
209
  type: data
197
210
  color: "#fa0f00"
@@ -366,6 +379,7 @@ Assembly:
366
379
  - ".a51"
367
380
  - ".i"
368
381
  - ".inc"
382
+ - ".nas"
369
383
  - ".nasm"
370
384
  tm_scope: source.assembly
371
385
  ace_mode: assembly_x86
@@ -492,6 +506,7 @@ Befunge:
492
506
  type: programming
493
507
  extensions:
494
508
  - ".befunge"
509
+ - ".bf"
495
510
  tm_scope: source.befunge
496
511
  ace_mode: text
497
512
  language_id: 30
@@ -1665,6 +1680,16 @@ Elm:
1665
1680
  codemirror_mode: elm
1666
1681
  codemirror_mime_type: text/x-elm
1667
1682
  language_id: 101
1683
+ Elvish:
1684
+ type: programming
1685
+ ace_mode: text
1686
+ extensions:
1687
+ - ".elv"
1688
+ interpreters:
1689
+ - elvish
1690
+ tm_scope: source.elvish
1691
+ color: "#55BB55"
1692
+ language_id: 570996448
1668
1693
  Emacs Lisp:
1669
1694
  type: programming
1670
1695
  tm_scope: source.emacs.lisp
@@ -2095,6 +2120,17 @@ Gemfile.lock:
2095
2120
  filenames:
2096
2121
  - Gemfile.lock
2097
2122
  language_id: 907065713
2123
+ Gemini:
2124
+ type: prose
2125
+ color: "#ff6900"
2126
+ ace_mode: text
2127
+ extensions:
2128
+ - ".gmi"
2129
+ aliases:
2130
+ - gemtext
2131
+ wrap: true
2132
+ tm_scope: source.gemini
2133
+ language_id: 310828396
2098
2134
  Genero:
2099
2135
  type: programming
2100
2136
  color: "#63408e"
@@ -2459,6 +2495,14 @@ HLSL:
2459
2495
  ace_mode: text
2460
2496
  tm_scope: source.hlsl
2461
2497
  language_id: 145
2498
+ HOCON:
2499
+ type: data
2500
+ color: "#9ff8ee"
2501
+ extensions:
2502
+ - ".hocon"
2503
+ tm_scope: source.hocon
2504
+ ace_mode: text
2505
+ language_id: 679725279
2462
2506
  HTML:
2463
2507
  type: markup
2464
2508
  tm_scope: text.html.basic
@@ -3302,6 +3346,7 @@ Kusto:
3302
3346
  type: data
3303
3347
  extensions:
3304
3348
  - ".csl"
3349
+ - ".kql"
3305
3350
  tm_scope: source.kusto
3306
3351
  ace_mode: text
3307
3352
  language_id: 225697190
@@ -4027,6 +4072,14 @@ Motorola 68K Assembly:
4027
4072
  tm_scope: source.m68k
4028
4073
  ace_mode: assembly_x86
4029
4074
  language_id: 477582706
4075
+ Move:
4076
+ type: programming
4077
+ color: "#4a137a"
4078
+ extensions:
4079
+ - ".move"
4080
+ tm_scope: source.move
4081
+ ace_mode: text
4082
+ language_id: 638334599
4030
4083
  Muse:
4031
4084
  type: prose
4032
4085
  extensions:
@@ -4119,6 +4172,14 @@ NWScript:
4119
4172
  codemirror_mode: clike
4120
4173
  codemirror_mime_type: text/x-csrc
4121
4174
  language_id: 731233819
4175
+ Nasal:
4176
+ type: programming
4177
+ color: "#1d2c4e"
4178
+ extensions:
4179
+ - ".nas"
4180
+ tm_scope: none
4181
+ ace_mode: text
4182
+ language_id: 178322513
4122
4183
  Nearley:
4123
4184
  type: programming
4124
4185
  ace_mode: text
@@ -5578,6 +5639,16 @@ Rouge:
5578
5639
  - ".rg"
5579
5640
  tm_scope: source.clojure
5580
5641
  language_id: 325
5642
+ RouterOS Script:
5643
+ type: programming
5644
+ ace_mode: text
5645
+ extensions:
5646
+ - ".rsc"
5647
+ interpreters:
5648
+ - RouterOS
5649
+ color: "#DE3941"
5650
+ tm_scope: none
5651
+ language_id: 592853203
5581
5652
  Ruby:
5582
5653
  type: programming
5583
5654
  tm_scope: source.ruby
@@ -6252,7 +6323,6 @@ SugarSS:
6252
6323
  type: markup
6253
6324
  color: "#2fcc9f"
6254
6325
  tm_scope: source.css.postcss.sugarss
6255
- group: CSS
6256
6326
  extensions:
6257
6327
  - ".sss"
6258
6328
  ace_mode: text
@@ -6751,6 +6821,19 @@ Valve Data Format:
6751
6821
  ace_mode: text
6752
6822
  tm_scope: source.keyvalues
6753
6823
  language_id: 544060961
6824
+ Velocity Template Language:
6825
+ type: markup
6826
+ color: "#507cff"
6827
+ aliases:
6828
+ - vtl
6829
+ - velocity
6830
+ extensions:
6831
+ - ".vtl"
6832
+ ace_mode: velocity
6833
+ tm_scope: source.velocity
6834
+ codemirror_mode: velocity
6835
+ codemirror_mime_type: text/velocity
6836
+ language_id: 292377326
6754
6837
  Verilog:
6755
6838
  type: programming
6756
6839
  color: "#b2b7f8"
@@ -6984,6 +7067,16 @@ World of Warcraft Addon Data:
6984
7067
  tm_scope: source.toc
6985
7068
  ace_mode: text
6986
7069
  language_id: 396
7070
+ Wren:
7071
+ type: programming
7072
+ color: "#383838"
7073
+ aliases:
7074
+ - wrenlang
7075
+ extensions:
7076
+ - ".wren"
7077
+ tm_scope: source.wren
7078
+ ace_mode: text
7079
+ language_id: 713580619
6987
7080
  X BitMap:
6988
7081
  type: data
6989
7082
  group: C
@@ -7116,6 +7209,7 @@ XML:
7116
7209
  - ".ps1xml"
7117
7210
  - ".psc1"
7118
7211
  - ".pt"
7212
+ - ".qhelp"
7119
7213
  - ".rdf"
7120
7214
  - ".res"
7121
7215
  - ".resx"
package/ext/vendor.yml CHANGED
@@ -29,7 +29,7 @@
29
29
  - (^|/)\.indent\.pro
30
30
  - (\.|-)min\.(js|css)$
31
31
  - ([^\s]*)import\.(css|less|scss|styl)$
32
- - (^|/)bootstrap([^/.]*)\.(js|css|less|scss|styl)$
32
+ - (^|/)bootstrap([^/.]*)(?=\.).*\.(js|css|less|scss|styl)$
33
33
  - (^|/)custom\.bootstrap([^\s]*)(js|css|less|scss|styl)$
34
34
  - (^|/)font-?awesome\.(css|less|scss|styl)$
35
35
  - (^|/)font-?awesome/.*\.(css|less|scss|styl)$
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "linguist-js",
3
- "version": "2.5.2",
3
+ "version": "2.5.3",
4
4
  "description": "Analyse languages used in a folder. Powered by GitHub Linguist, although it doesn't need to be installed.",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -40,7 +40,7 @@
40
40
  "homepage": "https://github.com/Nixinova/Linguist#readme",
41
41
  "dependencies": {
42
42
  "binary-extensions": "^2.2.0",
43
- "commander": "^9.3.0",
43
+ "commander": "^9.4.0",
44
44
  "common-path-prefix": "^3.0.0",
45
45
  "cross-fetch": "^3.1.5",
46
46
  "ignore": "^5.2.0",
@@ -50,8 +50,8 @@
50
50
  },
51
51
  "devDependencies": {
52
52
  "@types/js-yaml": "^4.0.5",
53
- "@types/node": "ts4.7",
53
+ "@types/node": "ts4.8",
54
54
  "deep-object-diff": "^1.1.7",
55
- "typescript": "~4.7.4"
55
+ "typescript": "~4.8.2"
56
56
  }
57
57
  }