github-linguist 7.1.3 → 7.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/grammars/annotation.liquidhaskell.haskell.json +119 -4
- data/grammars/etc.json +148 -0
- data/grammars/hint.haskell.json +119 -4
- data/grammars/hint.message.haskell.json +119 -4
- data/grammars/hint.type.haskell.json +119 -4
- data/grammars/injections.etc.json +21 -0
- data/grammars/source.abap.json +2 -2
- data/grammars/source.ats.json +87 -17
- data/grammars/source.ballerina.json +236 -313
- data/grammars/source.batchfile.json +1 -1
- data/grammars/source.bdf.json +14 -8
- data/grammars/source.changelogs.rpm-spec.json +3 -3
- data/grammars/source.chapel.json +1 -1
- data/grammars/source.coffee.json +98 -0
- data/grammars/source.csound-document.json +26 -124
- data/grammars/source.curlrc.json +180 -0
- data/grammars/source.dart.json +5 -2
- data/grammars/source.elixir.json +20 -25
- data/grammars/source.emacs.lisp.json +23 -1
- data/grammars/source.gdb.json +1 -1
- data/grammars/source.gitattributes.json +111 -0
- data/grammars/source.gitconfig.json +450 -0
- data/grammars/source.gitignore.json +140 -0
- data/grammars/source.graphql.json +18 -0
- data/grammars/source.haproxy-config.json +10 -10
- data/grammars/source.haskell.json +119 -4
- data/grammars/source.hgignore.json +34 -0
- data/grammars/source.hsig.json +119 -4
- data/grammars/source.hx.json +2 -2
- data/grammars/source.jison.json +1 -1
- data/grammars/source.ltspice.symbol.json +294 -0
- data/grammars/source.m4.json +187 -0
- data/grammars/source.man-conf.json +141 -0
- data/grammars/source.nanorc.json +330 -0
- data/grammars/source.nim.comment.json +82 -0
- data/grammars/source.nim.json +1 -57
- data/grammars/source.nix.json +2 -2
- data/grammars/source.opts.json +98 -0
- data/grammars/source.reason.json +13 -0
- data/grammars/source.rust.json +35 -0
- data/grammars/source.terraform.json +4 -1
- data/grammars/source.ts.json +307 -39
- data/grammars/source.tsx.json +290 -37
- data/grammars/source.zig.json +286 -0
- data/grammars/text.html.basic.json +1 -1
- data/grammars/text.marko.json +61 -9
- data/grammars/text.tex.latex.haskell.json +119 -4
- data/grammars/text.zone_file.json +2 -2
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +0 -8
- data/lib/linguist/heuristics.yml +30 -3
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +143 -3
- data/lib/linguist/samples.json +4494 -646
- data/lib/linguist/vendor.yml +1 -2
- metadata +31 -4
- data/grammars/source.solidity.json +0 -189
data/grammars/source.hsig.json
CHANGED
@@ -256,6 +256,9 @@
|
|
256
256
|
{
|
257
257
|
"include": "#deriving"
|
258
258
|
},
|
259
|
+
{
|
260
|
+
"include": "#via"
|
261
|
+
},
|
259
262
|
{
|
260
263
|
"include": "#assignment_op"
|
261
264
|
},
|
@@ -354,7 +357,7 @@
|
|
354
357
|
{
|
355
358
|
"name": "meta.declaration.instance.deriving.haskell.hsig",
|
356
359
|
"contentName": "meta.type-signature.haskell.hsig",
|
357
|
-
"begin": "^([ \\t]*)(deriving\\s+instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
360
|
+
"begin": "^([ \\t]*)(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s+(instance)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
358
361
|
"end": "^(?!\\1[ \\t]|[ \\t]*$)",
|
359
362
|
"patterns": [
|
360
363
|
{
|
@@ -362,11 +365,24 @@
|
|
362
365
|
},
|
363
366
|
{
|
364
367
|
"include": "#type_signature"
|
368
|
+
},
|
369
|
+
{
|
370
|
+
"include": "#deriving_via"
|
365
371
|
}
|
366
372
|
],
|
367
373
|
"beginCaptures": {
|
368
374
|
"2": {
|
369
375
|
"name": "keyword.other.haskell.hsig"
|
376
|
+
},
|
377
|
+
"3": {
|
378
|
+
"patterns": [
|
379
|
+
{
|
380
|
+
"include": "#deriving_strategies"
|
381
|
+
}
|
382
|
+
]
|
383
|
+
},
|
384
|
+
"4": {
|
385
|
+
"name": "keyword.other.haskell.hsig"
|
370
386
|
}
|
371
387
|
}
|
372
388
|
}
|
@@ -376,10 +392,17 @@
|
|
376
392
|
"patterns": [
|
377
393
|
{
|
378
394
|
"name": "meta.deriving.haskell.hsig",
|
379
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
395
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
380
396
|
"captures": {
|
381
397
|
"1": {
|
382
398
|
"name": "keyword.other.haskell.hsig"
|
399
|
+
},
|
400
|
+
"2": {
|
401
|
+
"patterns": [
|
402
|
+
{
|
403
|
+
"include": "#deriving_strategies"
|
404
|
+
}
|
405
|
+
]
|
383
406
|
}
|
384
407
|
}
|
385
408
|
}
|
@@ -389,7 +412,7 @@
|
|
389
412
|
"patterns": [
|
390
413
|
{
|
391
414
|
"name": "meta.deriving.haskell.hsig",
|
392
|
-
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*\\(",
|
415
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*\\(",
|
393
416
|
"end": "\\)",
|
394
417
|
"patterns": [
|
395
418
|
{
|
@@ -404,6 +427,13 @@
|
|
404
427
|
"beginCaptures": {
|
405
428
|
"1": {
|
406
429
|
"name": "keyword.other.haskell.hsig"
|
430
|
+
},
|
431
|
+
"2": {
|
432
|
+
"patterns": [
|
433
|
+
{
|
434
|
+
"include": "#deriving_strategies"
|
435
|
+
}
|
436
|
+
]
|
407
437
|
}
|
408
438
|
}
|
409
439
|
}
|
@@ -413,18 +443,38 @@
|
|
413
443
|
"patterns": [
|
414
444
|
{
|
415
445
|
"name": "meta.deriving.haskell.hsig",
|
416
|
-
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(deriving)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
446
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:(deriving)(?:\\s+([\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*))?)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
417
447
|
"captures": {
|
418
448
|
"1": {
|
419
449
|
"name": "keyword.other.haskell.hsig"
|
420
450
|
},
|
421
451
|
"2": {
|
452
|
+
"patterns": [
|
453
|
+
{
|
454
|
+
"include": "#deriving_strategies"
|
455
|
+
}
|
456
|
+
]
|
457
|
+
},
|
458
|
+
"3": {
|
422
459
|
"name": "entity.other.inherited-class.haskell.hsig"
|
423
460
|
}
|
424
461
|
}
|
425
462
|
}
|
426
463
|
]
|
427
464
|
},
|
465
|
+
"deriving_strategies": {
|
466
|
+
"patterns": [
|
467
|
+
{
|
468
|
+
"name": "meta.deriving.strategy.haskell.hsig",
|
469
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(stock|newtype|anyclass)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
470
|
+
"captures": {
|
471
|
+
"1": {
|
472
|
+
"name": "keyword.other.haskell.hsig"
|
473
|
+
}
|
474
|
+
}
|
475
|
+
}
|
476
|
+
]
|
477
|
+
},
|
428
478
|
"double_colon_operator": {
|
429
479
|
"patterns": [
|
430
480
|
{
|
@@ -1477,6 +1527,71 @@
|
|
1477
1527
|
}
|
1478
1528
|
]
|
1479
1529
|
},
|
1530
|
+
"via": {
|
1531
|
+
"patterns": [
|
1532
|
+
{
|
1533
|
+
"include": "#via_list"
|
1534
|
+
},
|
1535
|
+
{
|
1536
|
+
"include": "#via_simple"
|
1537
|
+
},
|
1538
|
+
{
|
1539
|
+
"include": "#via_keyword"
|
1540
|
+
}
|
1541
|
+
]
|
1542
|
+
},
|
1543
|
+
"via_keyword": {
|
1544
|
+
"patterns": [
|
1545
|
+
{
|
1546
|
+
"name": "meta.via.haskell.hsig",
|
1547
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1548
|
+
"captures": {
|
1549
|
+
"1": {
|
1550
|
+
"name": "keyword.other.haskell.hsig"
|
1551
|
+
}
|
1552
|
+
}
|
1553
|
+
}
|
1554
|
+
]
|
1555
|
+
},
|
1556
|
+
"via_list": {
|
1557
|
+
"patterns": [
|
1558
|
+
{
|
1559
|
+
"name": "meta.via.haskell.hsig",
|
1560
|
+
"begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*\\(",
|
1561
|
+
"end": "\\)",
|
1562
|
+
"patterns": [
|
1563
|
+
{
|
1564
|
+
"include": "#type_signature"
|
1565
|
+
}
|
1566
|
+
],
|
1567
|
+
"beginCaptures": {
|
1568
|
+
"1": {
|
1569
|
+
"name": "keyword.other.haskell.hsig"
|
1570
|
+
}
|
1571
|
+
}
|
1572
|
+
}
|
1573
|
+
]
|
1574
|
+
},
|
1575
|
+
"via_simple": {
|
1576
|
+
"patterns": [
|
1577
|
+
{
|
1578
|
+
"name": "meta.via.haskell.hsig",
|
1579
|
+
"match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(via)\\s*([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
|
1580
|
+
"captures": {
|
1581
|
+
"1": {
|
1582
|
+
"name": "keyword.other.haskell.hsig"
|
1583
|
+
},
|
1584
|
+
"2": {
|
1585
|
+
"patterns": [
|
1586
|
+
{
|
1587
|
+
"include": "#type_signature"
|
1588
|
+
}
|
1589
|
+
]
|
1590
|
+
}
|
1591
|
+
}
|
1592
|
+
}
|
1593
|
+
]
|
1594
|
+
},
|
1480
1595
|
"where": {
|
1481
1596
|
"patterns": [
|
1482
1597
|
{
|
data/grammars/source.hx.json
CHANGED
@@ -1162,7 +1162,7 @@
|
|
1162
1162
|
"metadata": {
|
1163
1163
|
"patterns": [
|
1164
1164
|
{
|
1165
|
-
"begin": "(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|fakeEnum|file|fileXml|final|fixed|font|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hxGen|ifFeature|include|internal|isVar|javaCanonical|jsRequire|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|mergeBlock|meta|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|ns|objc|objcProtocol|op|optional|overload|
|
1165
|
+
"begin": "(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|fakeEnum|file|fileXml|final|fixed|font|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inline|internal|isVar|javaCanonical|jsRequire|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|meta|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|ns|nullSafety|objc|objcProtocol|op|optional|overload|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtime|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|unifyMinDynamic|unreflective|unsafe|using|value|void|volatile)\\b)\\s*(\\()",
|
1166
1166
|
"end": "\\)",
|
1167
1167
|
"patterns": [
|
1168
1168
|
{
|
@@ -1187,7 +1187,7 @@
|
|
1187
1187
|
}
|
1188
1188
|
},
|
1189
1189
|
{
|
1190
|
-
"match": "((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|fakeEnum|file|fileXml|final|fixed|font|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hxGen|ifFeature|include|internal|isVar|javaCanonical|jsRequire|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|mergeBlock|meta|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|ns|objc|objcProtocol|op|optional|overload|
|
1190
|
+
"match": "((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|callable|classCode|commutative|compilerGenerated|const|coreApi|coreType|cppFileCode|cppInclude|cppNamespaceCode|dce|debug|decl|delegate|depend|deprecated|eager|enum|event|expose|extern|fakeEnum|file|fileXml|final|fixed|font|forward|forwardStatics|from|functionCode|functionTailCode|generic|genericBuild|getter|hack|headerClassCode|headerCode|headerInclude|headerNamespaceCode|hlNative|hxGen|ifFeature|include|inline|internal|isVar|javaCanonical|jsRequire|keep|keepInit|keepSub|luaDotMethod|luaRequire|macro|markup|mergeBlock|meta|multiReturn|multiType|native|nativeChildren|nativeGen|nativeProperty|nativeStaticExtension|noCompletion|noDebug|noDoc|noImportGlobal|noPrivateAccess|noStack|noUsing|nonVirtual|notNull|ns|nullSafety|objc|objcProtocol|op|optional|overload|phpClassConst|phpGlobal|phpMagic|phpNoConstructor|pos|private|privateAccess|property|protected|publicFields|pure|pythonImport|readOnly|remove|require|resolve|rtti|runtime|runtimeValue|scalar|selfCall|semantics|setter|sound|sourceFile|stackOnly|strict|struct|structAccess|structInit|suppressWarnings|templatedCall|throws|to|transient|unifyMinDynamic|unreflective|unsafe|using|value|void|volatile)\\b))",
|
1191
1191
|
"captures": {
|
1192
1192
|
"2": {
|
1193
1193
|
"name": "punctuation.metadata.hx"
|
data/grammars/source.jison.json
CHANGED
@@ -656,7 +656,7 @@
|
|
656
656
|
}
|
657
657
|
},
|
658
658
|
"injections": {
|
659
|
-
"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string)": {
|
659
|
+
"L:(meta.action.jison - (comment | string)), source.js.embedded.jison - (comment | string), source.js.embedded.source - (comment | string.quoted.double | string.quoted.single)": {
|
660
660
|
"patterns": [
|
661
661
|
{
|
662
662
|
"name": "variable.language.semantic-value.jison",
|
@@ -0,0 +1,294 @@
|
|
1
|
+
{
|
2
|
+
"name": "LTspice Symbol",
|
3
|
+
"scopeName": "source.ltspice.symbol",
|
4
|
+
"patterns": [
|
5
|
+
{
|
6
|
+
"include": "#main"
|
7
|
+
}
|
8
|
+
],
|
9
|
+
"repository": {
|
10
|
+
"attr": {
|
11
|
+
"name": "meta.attribute.ltspice.symbol",
|
12
|
+
"begin": "^\\s*(SYMATTR)(?=\\s|$)",
|
13
|
+
"end": "$",
|
14
|
+
"patterns": [
|
15
|
+
{
|
16
|
+
"match": "\\G\\s+(\\S+)",
|
17
|
+
"captures": {
|
18
|
+
"1": {
|
19
|
+
"name": "entity.attribute.name.ltspice.symbol"
|
20
|
+
}
|
21
|
+
}
|
22
|
+
},
|
23
|
+
{
|
24
|
+
"name": "string.unquoted.attribute.value.ltspice.symbol",
|
25
|
+
"match": ".+"
|
26
|
+
}
|
27
|
+
],
|
28
|
+
"beginCaptures": {
|
29
|
+
"1": {
|
30
|
+
"name": "storage.type.var.attribute.ltspice.symbol"
|
31
|
+
}
|
32
|
+
}
|
33
|
+
},
|
34
|
+
"main": {
|
35
|
+
"patterns": [
|
36
|
+
{
|
37
|
+
"include": "#version"
|
38
|
+
},
|
39
|
+
{
|
40
|
+
"include": "#symbolType"
|
41
|
+
},
|
42
|
+
{
|
43
|
+
"include": "#shapes"
|
44
|
+
},
|
45
|
+
{
|
46
|
+
"include": "#window"
|
47
|
+
},
|
48
|
+
{
|
49
|
+
"include": "#pinAttr"
|
50
|
+
},
|
51
|
+
{
|
52
|
+
"include": "#pin"
|
53
|
+
},
|
54
|
+
{
|
55
|
+
"include": "#attr"
|
56
|
+
},
|
57
|
+
{
|
58
|
+
"include": "#text"
|
59
|
+
}
|
60
|
+
]
|
61
|
+
},
|
62
|
+
"number": {
|
63
|
+
"patterns": [
|
64
|
+
{
|
65
|
+
"name": "constant.numeric.float.real.decimal.ltspice.symbol",
|
66
|
+
"match": "[-+]?[0-9]+\\.[0-9]+"
|
67
|
+
},
|
68
|
+
{
|
69
|
+
"name": "constant.numeric.integer.int.decimal.ltspice.symbol",
|
70
|
+
"match": "[-+]?[0-9]+"
|
71
|
+
}
|
72
|
+
]
|
73
|
+
},
|
74
|
+
"pin": {
|
75
|
+
"name": "meta.pin.ltspice.symbol",
|
76
|
+
"begin": "^\\s*(PIN)(?=\\s|$)",
|
77
|
+
"end": "$",
|
78
|
+
"patterns": [
|
79
|
+
{
|
80
|
+
"include": "#number"
|
81
|
+
},
|
82
|
+
{
|
83
|
+
"name": "constant.language.pin-alignment.ltspice.symbol",
|
84
|
+
"match": "\\w+"
|
85
|
+
}
|
86
|
+
],
|
87
|
+
"beginCaptures": {
|
88
|
+
"1": {
|
89
|
+
"name": "keyword.control.pin.ltspice.symbol"
|
90
|
+
}
|
91
|
+
}
|
92
|
+
},
|
93
|
+
"pinAttr": {
|
94
|
+
"name": "meta.pin.attribute.ltspice.symbol",
|
95
|
+
"begin": "^\\s*(PINATTR)(?=\\s|$)",
|
96
|
+
"end": "$",
|
97
|
+
"patterns": [
|
98
|
+
{
|
99
|
+
"match": "\\G\\s+(SpiceOrder)\\s+(\\d+)",
|
100
|
+
"patterns": [
|
101
|
+
{
|
102
|
+
"include": "#number"
|
103
|
+
}
|
104
|
+
],
|
105
|
+
"captures": {
|
106
|
+
"1": {
|
107
|
+
"name": "entity.pin.attribute.name.ltspice.symbol"
|
108
|
+
},
|
109
|
+
"2": {
|
110
|
+
"patterns": [
|
111
|
+
{
|
112
|
+
"include": "#number"
|
113
|
+
}
|
114
|
+
]
|
115
|
+
}
|
116
|
+
}
|
117
|
+
},
|
118
|
+
{
|
119
|
+
"match": "\\G\\s+(\\S+)",
|
120
|
+
"captures": {
|
121
|
+
"1": {
|
122
|
+
"name": "entity.attribute.name.ltspice.symbol"
|
123
|
+
}
|
124
|
+
}
|
125
|
+
},
|
126
|
+
{
|
127
|
+
"match": "(\\[)([^\\]]+)(\\])",
|
128
|
+
"captures": {
|
129
|
+
"1": {
|
130
|
+
"name": "punctuation.definition.brace.square.bracket.begin.ltspice.symbol"
|
131
|
+
},
|
132
|
+
"2": {
|
133
|
+
"patterns": [
|
134
|
+
{
|
135
|
+
"name": "punctuation.delimiter.separator.colon.key-value.ltspice.symbol",
|
136
|
+
"match": ":"
|
137
|
+
},
|
138
|
+
{
|
139
|
+
"include": "#number"
|
140
|
+
}
|
141
|
+
]
|
142
|
+
},
|
143
|
+
"3": {
|
144
|
+
"name": "punctuation.definition.brace.square.bracket.begin.ltspice.symbol"
|
145
|
+
}
|
146
|
+
}
|
147
|
+
},
|
148
|
+
{
|
149
|
+
"name": "string.unquoted.attribute.value.ltspice.symbol",
|
150
|
+
"match": "[^\\s\\[]+"
|
151
|
+
}
|
152
|
+
],
|
153
|
+
"beginCaptures": {
|
154
|
+
"1": {
|
155
|
+
"name": "storage.type.var.attribute.ltspice.symbol"
|
156
|
+
}
|
157
|
+
}
|
158
|
+
},
|
159
|
+
"shapes": {
|
160
|
+
"name": "meta.shape.${1:/downcase}.ltspice.symbol",
|
161
|
+
"begin": "^\\s*(ARC|LINE|CIRCLE|RECTANGLE)(?=\\s|$)",
|
162
|
+
"end": "$",
|
163
|
+
"patterns": [
|
164
|
+
{
|
165
|
+
"name": "variable.parameter.type.ltspice.symbol",
|
166
|
+
"match": "\\G\\s*(?!\\d)(\\w+)"
|
167
|
+
},
|
168
|
+
{
|
169
|
+
"include": "#number"
|
170
|
+
}
|
171
|
+
],
|
172
|
+
"beginCaptures": {
|
173
|
+
"1": {
|
174
|
+
"name": "storage.type.var.shape.ltspice.symbol"
|
175
|
+
}
|
176
|
+
}
|
177
|
+
},
|
178
|
+
"symbolType": {
|
179
|
+
"name": "meta.symbol-type.ltspice.symbol",
|
180
|
+
"begin": "^\\s*(SymbolType)(?=\\s|$)",
|
181
|
+
"end": "$",
|
182
|
+
"patterns": [
|
183
|
+
{
|
184
|
+
"name": "constant.language.symbol-type.ltspice.symbol",
|
185
|
+
"match": "[A-Za-z_$]+"
|
186
|
+
}
|
187
|
+
],
|
188
|
+
"beginCaptures": {
|
189
|
+
"1": {
|
190
|
+
"name": "keyword.control.symbol-type.ltspice.symbol"
|
191
|
+
}
|
192
|
+
}
|
193
|
+
},
|
194
|
+
"text": {
|
195
|
+
"name": "meta.text.ltspice.symbol",
|
196
|
+
"begin": "^\\s*(TEXT)(?=\\s|$)",
|
197
|
+
"end": "$",
|
198
|
+
"patterns": [
|
199
|
+
{
|
200
|
+
"name": "meta.function-call.arguments.ltspice.symbol",
|
201
|
+
"match": "(?x) \\G\n\\s+ ([-\\d.]+) # X\n\\s+ ([-\\d.]+) # Y\n\\s+ ([-\\w$]+) # Alignment\n\\s+ ([-\\d.]+) # Text-size",
|
202
|
+
"captures": {
|
203
|
+
"1": {
|
204
|
+
"name": "meta.vector.x-axis.ltspice.symbol",
|
205
|
+
"patterns": [
|
206
|
+
{
|
207
|
+
"include": "#number"
|
208
|
+
}
|
209
|
+
]
|
210
|
+
},
|
211
|
+
"2": {
|
212
|
+
"name": "meta.vector.y-axis.ltspice.symbol",
|
213
|
+
"patterns": [
|
214
|
+
{
|
215
|
+
"include": "#number"
|
216
|
+
}
|
217
|
+
]
|
218
|
+
},
|
219
|
+
"3": {
|
220
|
+
"name": "constant.language.text-alignment.ltspice.symbol"
|
221
|
+
},
|
222
|
+
"4": {
|
223
|
+
"name": "meta.text-size.ltspice.symbol",
|
224
|
+
"patterns": [
|
225
|
+
{
|
226
|
+
"include": "#number"
|
227
|
+
}
|
228
|
+
]
|
229
|
+
}
|
230
|
+
}
|
231
|
+
},
|
232
|
+
{
|
233
|
+
"name": "string.unquoted.text.ltspice.symbol",
|
234
|
+
"match": ".+"
|
235
|
+
}
|
236
|
+
],
|
237
|
+
"beginCaptures": {
|
238
|
+
"1": {
|
239
|
+
"name": "storage.type.var.text.ltspice.symbol"
|
240
|
+
}
|
241
|
+
}
|
242
|
+
},
|
243
|
+
"version": {
|
244
|
+
"name": "meta.version.ltspice.symbol",
|
245
|
+
"begin": "^\\s*(Version)(?=\\s|$)",
|
246
|
+
"end": "$",
|
247
|
+
"patterns": [
|
248
|
+
{
|
249
|
+
"include": "#number"
|
250
|
+
}
|
251
|
+
],
|
252
|
+
"beginCaptures": {
|
253
|
+
"1": {
|
254
|
+
"name": "keyword.control.file-version.ltspice.symbol"
|
255
|
+
}
|
256
|
+
}
|
257
|
+
},
|
258
|
+
"window": {
|
259
|
+
"name": "meta.window.ltspice.symbol",
|
260
|
+
"begin": "^\\s*(WINDOW)(?=\\s|$)",
|
261
|
+
"end": "$",
|
262
|
+
"patterns": [
|
263
|
+
{
|
264
|
+
"name": "meta.function-call.arguments.ltspice.symbol",
|
265
|
+
"match": "\\G((?:\\s+[-\\d.]+){3})\\s+(\\w+)\\s+([-\\d.]+)",
|
266
|
+
"captures": {
|
267
|
+
"1": {
|
268
|
+
"patterns": [
|
269
|
+
{
|
270
|
+
"include": "#number"
|
271
|
+
}
|
272
|
+
]
|
273
|
+
},
|
274
|
+
"2": {
|
275
|
+
"name": "constant.language.window-alignment.ltspice.symbol"
|
276
|
+
},
|
277
|
+
"3": {
|
278
|
+
"patterns": [
|
279
|
+
{
|
280
|
+
"include": "#number"
|
281
|
+
}
|
282
|
+
]
|
283
|
+
}
|
284
|
+
}
|
285
|
+
}
|
286
|
+
],
|
287
|
+
"beginCaptures": {
|
288
|
+
"1": {
|
289
|
+
"name": "keyword.control.window.ltspice.symbol"
|
290
|
+
}
|
291
|
+
}
|
292
|
+
}
|
293
|
+
}
|
294
|
+
}
|