github-linguist 7.5.1 → 7.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/annotation.liquidhaskell.haskell.json +122 -24
  3. data/grammars/etc.json +7 -0
  4. data/grammars/hint.haskell.json +122 -24
  5. data/grammars/hint.message.haskell.json +122 -24
  6. data/grammars/hint.type.haskell.json +122 -24
  7. data/grammars/injections.etc.json +48 -10
  8. data/grammars/source.abnf.json +180 -353
  9. data/grammars/source.ballerina.json +205 -50
  10. data/grammars/source.bnf.json +191 -0
  11. data/grammars/source.cabal.json +1 -1
  12. data/grammars/source.ditroff.desc.json +1 -1
  13. data/grammars/source.ebnf.json +157 -147
  14. data/grammars/source.editorconfig.json +30 -5
  15. data/grammars/source.emacs.lisp.json +4 -4
  16. data/grammars/source.gremlin.json +200 -0
  17. data/grammars/source.haproxy-config.json +65 -13
  18. data/grammars/source.haskell.json +122 -24
  19. data/grammars/source.hql.json +1 -1
  20. data/grammars/source.hsig.json +122 -24
  21. data/grammars/source.hx.json +5 -5
  22. data/grammars/source.hxml.json +4 -4
  23. data/grammars/source.ideal.json +4 -4
  24. data/grammars/source.igor.json +325 -0
  25. data/grammars/source.jlex.json +322 -0
  26. data/grammars/source.julia.json +132 -1
  27. data/grammars/source.lean.json +103 -54
  28. data/grammars/source.lex.json +232 -0
  29. data/grammars/source.lex.regexp.json +269 -0
  30. data/grammars/source.logos.json +1 -1
  31. data/grammars/source.meson.json +1 -1
  32. data/grammars/source.mlir.json +389 -0
  33. data/grammars/source.nanorc.json +3 -0
  34. data/grammars/source.pic.json +19 -19
  35. data/grammars/source.plist.json +336 -0
  36. data/grammars/source.powershell.json +2 -2
  37. data/grammars/source.purescript.json +2 -2
  38. data/grammars/source.rascal.json +1 -0
  39. data/grammars/source.regexp.extended.json +544 -6
  40. data/grammars/source.regexp.json +408 -31
  41. data/grammars/source.renpy.json +3 -1
  42. data/grammars/source.scala.json +199 -97
  43. data/grammars/source.smpl.json +314 -0
  44. data/grammars/source.solidity.json +1 -1
  45. data/grammars/source.sourcepawn.json +654 -0
  46. data/grammars/source.sqf.json +5 -1
  47. data/grammars/source.swift.json +56 -11
  48. data/grammars/source.sy.json +800 -0
  49. data/grammars/source.ts.json +64 -47
  50. data/grammars/source.tsx.json +65 -48
  51. data/grammars/source.v.json +1184 -0
  52. data/grammars/source.viml.json +31 -31
  53. data/grammars/source.wollok.json +1 -1
  54. data/grammars/source.xojo.json +2 -2
  55. data/grammars/source.yacc.json +626 -0
  56. data/grammars/source.yara.json +1 -1
  57. data/grammars/source.yasnippet.json +15 -25
  58. data/grammars/source.zeek.json +4 -4
  59. data/grammars/source.zig.json +594 -195
  60. data/grammars/text.eml.basic.json +19 -6
  61. data/grammars/text.html.php.blade.json +3 -3
  62. data/grammars/text.plain.json +18 -0
  63. data/grammars/text.roff.json +926 -437
  64. data/grammars/text.runoff.json +3 -3
  65. data/grammars/text.tex.latex.haskell.json +122 -24
  66. data/grammars/text.texinfo.json +1525 -0
  67. data/grammars/text.xml.plist.json +664 -0
  68. data/grammars/text.xml.svg.json +556 -0
  69. data/grammars/version +1 -1
  70. data/lib/linguist.rb +3 -1
  71. data/lib/linguist/VERSION +1 -1
  72. data/lib/linguist/generated.rb +62 -17
  73. data/lib/linguist/heuristics.yml +13 -0
  74. data/lib/linguist/language.rb +1 -11
  75. data/lib/linguist/languages.json +1 -1
  76. data/lib/linguist/languages.yml +179 -19
  77. data/lib/linguist/samples.json +2778 -732
  78. data/lib/linguist/strategy/manpage.rb +42 -0
  79. metadata +22 -5
  80. data/grammars/source.bison.json +0 -55
  81. data/grammars/source.sp.json +0 -113
@@ -7,7 +7,7 @@
7
7
  },
8
8
  {
9
9
  "name": "meta.create.hql",
10
- "match": "(?i:^\\s*(create(?:\\s+or\\s+replace)?)\\s+(aggregate|intersect|IF\\sNOT\\sEXISTS|except|USE|conversion|database|domain|function|group|partition|cluster|(unique\\s+)?index|language|operator\\s+class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)",
10
+ "match": "(?i:^\\s*(create(?:\\s+or\\s+replace)?(?:\\s+external)?)\\s+(aggregate|intersect|IF\\sNOT\\sEXISTS|except|USE|conversion|database|domain|function|group|partition|cluster|(unique\\s+)?index|language|operator\\s+class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\s+)",
11
11
  "captures": {
12
12
  "1": {
13
13
  "name": "keyword.other.create.hql"
@@ -7,6 +7,14 @@
7
7
  }
8
8
  ],
9
9
  "repository": {
10
+ "arrow": {
11
+ "patterns": [
12
+ {
13
+ "name": "keyword.other.arrow.haskell.hsig",
14
+ "match": "(?:(?\u003c!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"'])))(?:-\u003e|→)(?!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"']))))"
15
+ }
16
+ ]
17
+ },
10
18
  "assignment_op": {
11
19
  "patterns": [
12
20
  {
@@ -27,6 +35,14 @@
27
35
  }
28
36
  ]
29
37
  },
38
+ "big_arrow": {
39
+ "patterns": [
40
+ {
41
+ "name": "keyword.other.big-arrow.haskell.hsig",
42
+ "match": "(?:(?\u003c!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"'])))(?:=\u003e|⇒)(?!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"']))))"
43
+ }
44
+ ]
45
+ },
30
46
  "block_comment": {
31
47
  "patterns": [
32
48
  {
@@ -263,24 +279,10 @@
263
279
  "include": "#assignment_op"
264
280
  },
265
281
  {
266
- "match": "(?:(?:(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*)(?:((?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|-\u003e|=\u003e)+\\s*)+))(?:(?:\\s+)(?:(?!deriving)(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*|(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\p{Ll}_][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*|(?:(?!deriving)(?:[\\w()'→⇒\\[\\],]|-\u003e|=\u003e)+\\s*)+)))*)?))",
267
- "captures": {
268
- "1": {
269
- "patterns": [
270
- {
271
- "include": "#type_ctor"
272
- }
273
- ]
274
- },
275
- "2": {
276
- "name": "meta.type-signature.haskell.hsig",
277
- "patterns": [
278
- {
279
- "include": "#type_signature"
280
- }
281
- ]
282
- }
283
- }
282
+ "include": "#type_ctor_forall"
283
+ },
284
+ {
285
+ "include": "#type_ctor_alt"
284
286
  },
285
287
  {
286
288
  "match": "\\|",
@@ -1409,6 +1411,97 @@
1409
1411
  }
1410
1412
  ]
1411
1413
  },
1414
+ "type_ctor_alt": {
1415
+ "patterns": [
1416
+ {
1417
+ "contentName": "meta.type-signature.hsig",
1418
+ "begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))([\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*)\\s*",
1419
+ "end": "^(?!^[ \\t]|[ \\t]*$)|(?=\\{|\\}|\\||(?:(?=[\\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}'])))",
1420
+ "patterns": [
1421
+ {
1422
+ "include": "#comments"
1423
+ },
1424
+ {
1425
+ "include": "#type_signature"
1426
+ }
1427
+ ],
1428
+ "beginCaptures": {
1429
+ "1": {
1430
+ "patterns": [
1431
+ {
1432
+ "include": "#type_ctor"
1433
+ }
1434
+ ]
1435
+ }
1436
+ }
1437
+ }
1438
+ ]
1439
+ },
1440
+ "type_ctor_forall": {
1441
+ "patterns": [
1442
+ {
1443
+ "contentName": "meta.type-signature.hsig",
1444
+ "begin": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))forall(?:(?\u003c=[\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}'])(?![\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']))",
1445
+ "end": "^(?!^[ \\t]|[ \\t]*$)|(?=\\{|\\}|\\||(?:(?=[\\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}'])))",
1446
+ "patterns": [
1447
+ {
1448
+ "include": "#comments"
1449
+ },
1450
+ {
1451
+ "match": "\\G.*?(?:(?\u003c!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"'])))(?:=\u003e|⇒)(?!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"']))))",
1452
+ "captures": {
1453
+ "0": {
1454
+ "patterns": [
1455
+ {
1456
+ "include": "#type_signature"
1457
+ }
1458
+ ]
1459
+ }
1460
+ }
1461
+ },
1462
+ {
1463
+ "match": "\\G.*?\\.",
1464
+ "captures": {
1465
+ "0": {
1466
+ "patterns": [
1467
+ {
1468
+ "include": "#type_signature"
1469
+ }
1470
+ ]
1471
+ }
1472
+ }
1473
+ },
1474
+ {
1475
+ "include": "#big_arrow"
1476
+ },
1477
+ {
1478
+ "include": "#type_variable"
1479
+ },
1480
+ {
1481
+ "begin": "\\(",
1482
+ "end": "\\)",
1483
+ "patterns": [
1484
+ {
1485
+ "include": "#type_signature"
1486
+ }
1487
+ ]
1488
+ },
1489
+ {
1490
+ "include": "#type_ctor_alt"
1491
+ }
1492
+ ],
1493
+ "beginCaptures": {
1494
+ "0": {
1495
+ "patterns": [
1496
+ {
1497
+ "include": "#type_signature"
1498
+ }
1499
+ ]
1500
+ }
1501
+ }
1502
+ }
1503
+ ]
1504
+ },
1412
1505
  "type_name": {
1413
1506
  "patterns": [
1414
1507
  {
@@ -1482,12 +1575,10 @@
1482
1575
  "include": "#string"
1483
1576
  },
1484
1577
  {
1485
- "name": "keyword.other.arrow.haskell.hsig",
1486
- "match": "(?:(?\u003c!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"'])))(?:-\u003e|→)(?!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"']))))"
1578
+ "include": "#arrow"
1487
1579
  },
1488
1580
  {
1489
- "name": "keyword.other.big-arrow.haskell.hsig",
1490
- "match": "(?:(?\u003c!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"'])))(?:=\u003e|⇒)(?!(?:[\\p{S}\\p{P}](?\u003c![(),;\\[\\]`{}_\"']))))"
1581
+ "include": "#big_arrow"
1491
1582
  },
1492
1583
  {
1493
1584
  "name": "keyword.operator.promoted.haskell.hsig",
@@ -1506,8 +1597,7 @@
1506
1597
  "include": "#operator"
1507
1598
  },
1508
1599
  {
1509
- "name": "variable.other.generic-type.haskell.hsig",
1510
- "match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\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}']))"
1600
+ "include": "#type_variable"
1511
1601
  },
1512
1602
  {
1513
1603
  "name": "entity.name.type.promoted.haskell.hsig",
@@ -1530,6 +1620,14 @@
1530
1620
  }
1531
1621
  ]
1532
1622
  },
1623
+ "type_variable": {
1624
+ "patterns": [
1625
+ {
1626
+ "name": "variable.other.generic-type.haskell.hsig",
1627
+ "match": "(?:(?=[\\p{Ll}_\\p{Lu}\\p{Lt}])(?\u003c![\\p{Ll}_\\p{Lu}\\p{Lt}']))(?:[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*(?:\\.[\\p{Lu}\\p{Lt}][\\p{Ll}_\\p{Lu}\\p{Lt}\\p{Nd}']*)*\\.)?[\\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}']))"
1628
+ }
1629
+ ]
1630
+ },
1533
1631
  "unit": {
1534
1632
  "patterns": [
1535
1633
  {
@@ -465,7 +465,7 @@
465
465
  "conditional-compilation": {
466
466
  "patterns": [
467
467
  {
468
- "match": "((#(if|elseif))[\\s!]+([a-z_][a-zA-Z0-9_]*(\\.[a-z_][a-zA-Z0-9_]*)*)(?=\\s|/*|//))",
468
+ "match": "((#(if|elseif))[\\s!]+([a-zA-Z_][a-zA-Z0-9_]*(\\.[a-zA-Z_][a-zA-Z0-9_]*)*)(?=\\s|/\\*|//))",
469
469
  "captures": {
470
470
  "0": {
471
471
  "name": "punctuation.definition.tag"
@@ -1166,7 +1166,7 @@
1166
1166
  "metadata": {
1167
1167
  "patterns": [
1168
1168
  {
1169
- "begin": "(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|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|flash\\.property|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*(\\()",
1169
+ "begin": "(@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|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|flash\\.property|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|persistent|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*(\\()",
1170
1170
  "end": "\\)",
1171
1171
  "patterns": [
1172
1172
  {
@@ -1191,7 +1191,7 @@
1191
1191
  }
1192
1192
  },
1193
1193
  {
1194
- "match": "((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|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|flash\\.property|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))",
1194
+ "match": "((@)(:(abi|abstract|access|allow|analyzer|annotation|arrayAccess|astSource|autoBuild|bind|bitmap|bridgeProperties|build|buildXml|bypassAccessor|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|flash\\.property|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|persistent|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))",
1195
1195
  "captures": {
1196
1196
  "2": {
1197
1197
  "name": "punctuation.metadata.hx"
@@ -1999,7 +1999,7 @@
1999
1999
  "type-name": {
2000
2000
  "patterns": [
2001
2001
  {
2002
- "match": "\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|ValueType|Void|Xml|XmlType)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b",
2002
+ "match": "\\b(Any|Array|ArrayAccess|Bool|Class|Date|DateTools|Dynamic|Enum|EnumValue|EReg|Float|IMap|Int|IntIterator|Iterable|Iterator|KeyValueIterator|KeyValueIterable|Lambda|List|ListIterator|ListNode|Map|Math|Null|Reflect|Single|Std|String|StringBuf|StringTools|Sys|Type|UInt|UnicodeString|ValueType|Void|Xml|XmlType)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b",
2003
2003
  "captures": {
2004
2004
  "1": {
2005
2005
  "name": "support.class.builtin.hx"
@@ -2013,7 +2013,7 @@
2013
2013
  }
2014
2014
  },
2015
2015
  {
2016
- "match": "\\b(?\u003c!\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b",
2016
+ "match": "\\b(?\u003c![^.]\\.)((_*[a-z]\\w*\\.)*)(_*[A-Z]\\w*)(?:(\\.)(_*[A-Z]\\w*[a-z]\\w*))*\\b",
2017
2017
  "captures": {
2018
2018
  "1": {
2019
2019
  "name": "support.package.hx"
@@ -12,7 +12,7 @@
12
12
  }
13
13
  },
14
14
  {
15
- "begin": "\\s*(--macro)\\b",
15
+ "begin": "(?\u003c!\\w)(--macro)\\b",
16
16
  "end": "\\n",
17
17
  "patterns": [
18
18
  {
@@ -26,7 +26,7 @@
26
26
  }
27
27
  },
28
28
  {
29
- "match": "\\s*(-m|-main|--main)\\b\\s*\\b(?:(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*))?\\b",
29
+ "match": "(?\u003c!\\w)(-m|-main|--main)\\b\\s*\\b(?:(([a-z][a-zA-Z0-9]*\\.)*)(_*[A-Z]\\w*))?\\b",
30
30
  "captures": {
31
31
  "1": {
32
32
  "name": "keyword.other.hxml"
@@ -40,7 +40,7 @@
40
40
  }
41
41
  },
42
42
  {
43
- "match": "\\s*(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$",
43
+ "match": "(?\u003c!\\w)(-cppia|-cpp?|-js|-as3|-swf-(header|version|lib(-extern)?)|-swf9?|-neko|-python|-php|-cs|-java-lib|-java|-xml|-lua|-hl|-x|-lib|-D|-resource|-exclude|-version|-v|-debug|-prompt|-cmd|-dce\\s+(std|full|no)?|--flash-strict|--no-traces|--flash-use-stage|--neko-source|--gen-hx-classes|-net-lib|-net-std|-c-arg|--each|--next|--display|--no-output|--times|--no-inline|--no-opt|--php-front|--php-lib|--php-prefix|--remap|--help-defines|--help-metas|-help|--help|-java|-cs|--js-modern|--interp|--eval|--dce|--wait|--connect|--cwd|--run).*$",
44
44
  "captures": {
45
45
  "1": {
46
46
  "name": "keyword.other.hxml"
@@ -48,7 +48,7 @@
48
48
  }
49
49
  },
50
50
  {
51
- "match": "\\s*(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib|--java|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|-h|--main).*$",
51
+ "match": "(?\u003c!\\w)(--js(on)?|--lua|--swf-(header|version|lib(-extern)?)|--swf|--as3|--neko|--php|--cppia|--cpp|--cppia|--cs|--java-lib|--java|--python|--hl|-p|--class-path|-L|--library|--define|-r|--resource|--cmd|-C|--verbose|--debug|--prompt|--xml|--json|--net-lib|--net-std|--c-arg|--version|-h|--main).*$",
52
52
  "captures": {
53
53
  "1": {
54
54
  "name": "keyword.other.hxml"
@@ -10,7 +10,7 @@
10
10
  ],
11
11
  "repository": {
12
12
  "box": {
13
- "begin": "(\\w+)[ \t]*(\\{)",
13
+ "begin": "(\\w+)[ \\t]*(\\{)",
14
14
  "end": "\\}",
15
15
  "patterns": [
16
16
  {
@@ -45,7 +45,7 @@
45
45
  "include": "source.pic#tags"
46
46
  },
47
47
  {
48
- "begin": "^(?=[.'][ \t]*(?:\\w|\\\\))",
48
+ "begin": "^(?=[.'][ \\t]*(?:\\w|\\\\))",
49
49
  "end": "(?\u003c!\\\\)$|(\\\\\".*)$",
50
50
  "patterns": [
51
51
  {
@@ -301,8 +301,8 @@
301
301
  },
302
302
  "tags": {
303
303
  "contentName": "source.embedded.ideal",
304
- "begin": "^([.'])[ \t]*(IS)\\b\\s*(\\\\[\"#].*$)?",
305
- "end": "^([.'])[ \t]*(IE)\\b",
304
+ "begin": "^([.'])[ \\t]*(IS)\\b\\s*(\\\\[\"#].*$)?",
305
+ "end": "^([.'])[ \\t]*(IE)\\b",
306
306
  "patterns": [
307
307
  {
308
308
  "include": "$self"
@@ -0,0 +1,325 @@
1
+ {
2
+ "name": "Igor Pro",
3
+ "scopeName": "source.igor",
4
+ "patterns": [
5
+ {
6
+ "include": "#igor_comment"
7
+ },
8
+ {
9
+ "name": "meta.enum",
10
+ "begin": "(?i)^\\s*(?:(static)\\s+)?(Structure)\\b\\s*(\\w)",
11
+ "end": "(?i)^\\s*(EndStructure)\\b",
12
+ "patterns": [
13
+ {
14
+ "include": "#igor_variable"
15
+ }
16
+ ],
17
+ "beginCaptures": {
18
+ "1": {
19
+ "name": "constant.igor"
20
+ },
21
+ "2": {
22
+ "name": "constant.igor"
23
+ },
24
+ "3": {
25
+ "name": "source.igor"
26
+ }
27
+ },
28
+ "endCaptures": {
29
+ "1": {
30
+ "name": "constant.igor"
31
+ }
32
+ }
33
+ },
34
+ {
35
+ "name": "meta.function",
36
+ "begin": "(?i)^\\s*(?:(threadsafe)\\s+)?(?:(static)\\s+)?\\s*(Function)\\s*(\\/\\w+)?\\s+(\\w+)\\s*(\\()",
37
+ "end": "\\)",
38
+ "patterns": [
39
+ {
40
+ "include": "#igor_function_definition"
41
+ }
42
+ ],
43
+ "beginCaptures": {
44
+ "1": {
45
+ "name": "constant.igor"
46
+ },
47
+ "2": {
48
+ "name": "constant.igor"
49
+ },
50
+ "3": {
51
+ "name": "constant.igor"
52
+ },
53
+ "4": {
54
+ "name": "source.igor"
55
+ },
56
+ "5": {
57
+ "name": "entity.name.igor"
58
+ },
59
+ "6": {
60
+ "name": "brackethighlighter.round.igor"
61
+ }
62
+ },
63
+ "endCaptures": {
64
+ "0": {
65
+ "name": "brackethighlighter.round.igor"
66
+ }
67
+ }
68
+ },
69
+ {
70
+ "include": "#igor_variable"
71
+ },
72
+ {
73
+ "name": "constant.igor",
74
+ "match": "\\b(?i)(?:if|while|for|switch|strswitch|return|do|end|else|elseif|endif|endfor|endswitch|while|menu|submenu|endmenu|case|break|try|catch|endtry|default|continue|Multithread)\\b"
75
+ },
76
+ {
77
+ "name": "source.igor",
78
+ "match": "(?i)\\b(?:V|S)_[A-Z]+\\b"
79
+ },
80
+ {
81
+ "name": "entity.name.igor",
82
+ "begin": "^#include\\b",
83
+ "end": "$",
84
+ "patterns": [
85
+ {
86
+ "include": "#constant_string"
87
+ },
88
+ {
89
+ "name": "source.igor",
90
+ "begin": "\u003c",
91
+ "end": "\\\u003e"
92
+ },
93
+ {
94
+ "include": "#igor_comment"
95
+ }
96
+ ]
97
+ },
98
+ {
99
+ "name": "entity.name.igor",
100
+ "match": "^#\\w+"
101
+ },
102
+ {
103
+ "name": "meta.function-call.igor",
104
+ "begin": "(?i)(MatrixOP|ApMath)",
105
+ "end": "$",
106
+ "patterns": [
107
+ {
108
+ "include": "#igor_comment"
109
+ },
110
+ {
111
+ "include": "#igor_matrixop"
112
+ },
113
+ {
114
+ "include": "#igor_apmath"
115
+ },
116
+ {
117
+ "include": "#igor_common"
118
+ }
119
+ ],
120
+ "captures": {
121
+ "1": {
122
+ "name": "entity.name.tag.igor"
123
+ }
124
+ }
125
+ },
126
+ {
127
+ "include": "#igor_operations"
128
+ },
129
+ {
130
+ "name": "constant.igor",
131
+ "match": "(?i)\\/wave(?=\\=)"
132
+ },
133
+ {
134
+ "include": "#igor_functions"
135
+ },
136
+ {
137
+ "include": "#igor_common"
138
+ }
139
+ ],
140
+ "repository": {
141
+ "constant_numeric": {
142
+ "patterns": [
143
+ {
144
+ "name": "source.igor",
145
+ "match": "(0x[a-f0-9]+)"
146
+ },
147
+ {
148
+ "name": "source.igor",
149
+ "match": "([\\d]+)"
150
+ },
151
+ {
152
+ "name": "source.igor",
153
+ "match": "(\\d+\\.\\d+(e[\\+\\-]?\\d+)?)"
154
+ }
155
+ ]
156
+ },
157
+ "constant_punctuation": {
158
+ "patterns": [
159
+ {
160
+ "name": "source.igor",
161
+ "match": "([\\#$~!%^\u0026*+=\\|?:\u003c\u003e/-])"
162
+ },
163
+ {
164
+ "name": "source.igor",
165
+ "match": "([,.;])"
166
+ },
167
+ {
168
+ "name": "brackethighlighter.tag",
169
+ "match": "([{}()\\[\\]])"
170
+ }
171
+ ]
172
+ },
173
+ "constant_string": {
174
+ "name": "entity.name.tag.igor",
175
+ "begin": "\"",
176
+ "end": "\"",
177
+ "patterns": [
178
+ {
179
+ "name": "constant.character.escape.igor",
180
+ "match": "\\\\."
181
+ }
182
+ ]
183
+ },
184
+ "igor_apmath": {
185
+ "name": "constant.igor",
186
+ "match": "(?i)\\b(?:sqrt|cbrt|sin|cos|tan|asin|acos|atan|atan2|log|log10|exp|pow|sinh|cosh|tanh|asinh|acosh|atanh|factorial|pi|nan|sgn|floor|ceil|gcd|lcd|comp|sum|mean|variance|skew|kurtosis)\\b"
187
+ },
188
+ "igor_comment": {
189
+ "name": "keyword.igor",
190
+ "begin": "//",
191
+ "end": "$",
192
+ "patterns": [
193
+ {
194
+ "name": "comment.igor",
195
+ "match": "\\s\\@\\w+(?:\\[\\w+\\])?"
196
+ },
197
+ {
198
+ "begin": "\\`",
199
+ "end": "\\`",
200
+ "patterns": [
201
+ {
202
+ "include": "#igor_functions"
203
+ },
204
+ {
205
+ "include": "#igor_common"
206
+ }
207
+ ]
208
+ }
209
+ ]
210
+ },
211
+ "igor_common": {
212
+ "patterns": [
213
+ {
214
+ "include": "#constant_string"
215
+ },
216
+ {
217
+ "include": "#constant_punctuation"
218
+ },
219
+ {
220
+ "include": "#constant_numeric"
221
+ },
222
+ {
223
+ "include": "#user_functions"
224
+ }
225
+ ]
226
+ },
227
+ "igor_function_definition": {
228
+ "patterns": [
229
+ {
230
+ "include": "#igor_variable"
231
+ },
232
+ {
233
+ "name": "source.igor",
234
+ "begin": "(\\[)",
235
+ "end": "(\\])",
236
+ "patterns": [
237
+ {
238
+ "include": "#igor_variable"
239
+ }
240
+ ],
241
+ "captures": {
242
+ "1": {
243
+ "name": "brackethighlighter.square.igor"
244
+ }
245
+ }
246
+ }
247
+ ]
248
+ },
249
+ "igor_functions": {
250
+ "name": "variable.igor",
251
+ "match": "(?i)\\b(?:AddListItem|AiryA|AiryAD|AiryB|AiryBD|AnnotationInfo|AnnotationList|AxisInfo|AxisList|AxisValFromPixel|AxonTelegraphAGetDataNum|AxonTelegraphAGetDataString|AxonTelegraphAGetDataStruct|AxonTelegraphGetDataNum|AxonTelegraphGetDataString|AxonTelegraphGetDataStruct|AxonTelegraphGetTimeoutMs|AxonTelegraphSetTimeoutMs|Base64Decode|Base64Encode|Besseli|Besselj|Besselk|Bessely|BinarySearch|BinarySearchInterp|CTabList|CaptureHistory|CaptureHistoryStart|CheckName|ChildWindowList|CleanupName|ContourInfo|ContourNameList|ContourNameToWaveRef|ContourZ|ControlNameList|ConvertTextEncoding|CountObjects|CountObjectsDFR|CreationDate|CsrInfo|CsrWave|CsrWaveRef|CsrXWave|CsrXWaveRef|DataFolderDir|DataFolderExists|DataFolderRefStatus|DataFolderRefsEqual|DateToJulian|Dawson|DimDelta|DimOffset|DimSize|Faddeeva|FetchURL|FindDimLabel|FindListItem|FontList|FontSizeHeight|FontSizeStringWidth|FresnelCos|FresnelSin|FuncRefInfo|FunctionInfo|FunctionList|FunctionPath|GISGetAllFileFormats|GISSRefsAreEqual|Gauss|Gauss1D|Gauss2D|GetBrowserLine|GetBrowserSelection|GetDataFolder|GetDataFolderDFR|GetDefaultFont|GetDefaultFontSize|GetDefaultFontStyle|GetDimLabel|GetEnvironmentVariable|GetErrMessage|GetFormula|GetIndependentModuleName|GetIndexedObjName|GetIndexedObjNameDFR|GetKeyState|GetRTErrMessage|GetRTError|GetRTLocInfo|GetRTLocation|GetRTStackInfo|GetScrapText|GetUserData|GetWavesDataFolder|GetWavesDataFolderDFR|GizmoInfo|GizmoScale|GrepList|GrepString|GuideInfo|GuideNameList|HDF5AttributeInfo|HDF5DatasetInfo|HDF5LibraryInfo|HDF5TypeInfo|Hash|HyperG0F1|HyperG1F1|HyperG2F1|HyperGNoise|HyperGPFQ|IgorInfo|IgorVersion|ImageInfo|ImageNameList|ImageNameToWaveRef|IndependentModuleList|IndexToScale|IndexedDir|IndexedFile|Inf|Integrate1D|Interp2D|Interp3D|ItemsInList|JacobiCn|JacobiSn|JSON_CreateStructured|JSON_Kill|JSON_GetType|JSON_GetArraySize|JSON_GetMaxArraySize|JSON_Parse|JSON_Dump|JulianToDate|Laguerre|LaguerreA|LaguerreGauss|LambertW|LayoutInfo|LegendreA|ListMatch|ListToTextWave|ListToWaveRefWave|LowerStr|MCC_AutoBridgeBal|MCC_AutoFastComp|MCC_AutoPipetteOffset|MCC_AutoSlowComp|MCC_AutoWholeCellComp|MCC_GetBridgeBalEnable|MCC_GetBridgeBalResist|MCC_GetFastCompCap|MCC_GetFastCompTau|MCC_GetHolding|MCC_GetHoldingEnable|MCC_GetMode|MCC_GetNeutralizationCap|MCC_GetNeutralizationEnable|MCC_GetOscKillerEnable|MCC_GetPipetteOffset|MCC_GetPrimarySignalGain|MCC_GetPrimarySignalHPF|MCC_GetPrimarySignalLPF|MCC_GetRsCompBandwidth|MCC_GetRsCompCorrection|MCC_GetRsCompEnable|MCC_GetRsCompPrediction|MCC_GetSecondarySignalGain|MCC_GetSecondarySignalLPF|MCC_GetSlowCompCap|MCC_GetSlowCompTau|MCC_GetSlowCompTauX20Enable|MCC_GetSlowCurrentInjEnable|MCC_GetSlowCurrentInjLevel|MCC_GetSlowCurrentInjSetlTime|MCC_GetWholeCellCompCap|MCC_GetWholeCellCompEnable|MCC_GetWholeCellCompResist|MCC_SelectMultiClamp700B|MCC_SetBridgeBalEnable|MCC_SetBridgeBalResist|MCC_SetFastCompCap|MCC_SetFastCompTau|MCC_SetHolding|MCC_SetHoldingEnable|MCC_SetMode|MCC_SetNeutralizationCap|MCC_SetNeutralizationEnable|MCC_SetOscKillerEnable|MCC_SetPipetteOffset|MCC_SetPrimarySignalGain|MCC_SetPrimarySignalHPF|MCC_SetPrimarySignalLPF|MCC_SetRsCompBandwidth|MCC_SetRsCompCorrection|MCC_SetRsCompEnable|MCC_SetRsCompPrediction|MCC_SetSecondarySignalGain|MCC_SetSecondarySignalLPF|MCC_SetSlowCompCap|MCC_SetSlowCompTau|MCC_SetSlowCompTauX20Enable|MCC_SetSlowCurrentInjEnable|MCC_SetSlowCurrentInjLevel|MCC_SetSlowCurrentInjSetlTime|MCC_SetTimeoutMs|MCC_SetWholeCellCompCap|MCC_SetWholeCellCompEnable|MCC_SetWholeCellCompResist|MPFXEMGPeak|MPFXExpConvExpPeak|MPFXGaussPeak|MPFXLorenzianPeak|MPFXVoigtPeak|MacroList|MandelbrotPoint|MarcumQ|MatrixCondition|MatrixDet|MatrixDot|MatrixRank|MatrixTrace|ModDate|NVAR_Exists|NaN|NameOfWave|NewFreeDataFolder|NewFreeWave|NormalizeUnicode|NumVarOrDefault|NumberByKey|OperationList|PICTInfo|PICTList|PadString|PanelResolution|ParamIsDefault|ParseFilePath|PathList|Pi|PixelFromAxisVal|PolygonArea|PossiblyQuoteName|ProcedureText|RemoveByKey|RemoveEnding|RemoveFromList|RemoveListItem|ReplaceNumberByKey|ReplaceString|ReplaceStringByKey|SQL2DBinaryWaveToTextWave|SQLAllocHandle|SQLAllocStmt|SQLBinaryWavesToTextWave|SQLBindCol|SQLBindParameter|SQLBrowseConnect|SQLBulkOperations|SQLCancel|SQLCloseCursor|SQLColAttributeNum|SQLColAttributeStr|SQLColumnPrivileges|SQLColumns|SQLConnect|SQLDataSources|SQLDescribeCol|SQLDescribeParam|SQLDisconnect|SQLDriverConnect|SQLDrivers|SQLEndTran|SQLError|SQLExecDirect|SQLExecute|SQLFetch|SQLFetchScroll|SQLForeignKeys|SQLFreeConnect|SQLFreeEnv|SQLFreeHandle|SQLFreeStmt|SQLGetConnectAttrNum|SQLGetConnectAttrStr|SQLGetCursorName|SQLGetDataNum|SQLGetDataStr|SQLGetDescFieldNum|SQLGetDescFieldStr|SQLGetDescRec|SQLGetDiagFieldNum|SQLGetDiagFieldStr|SQLGetDiagRec|SQLGetEnvAttrNum|SQLGetEnvAttrStr|SQLGetFunctions|SQLGetInfoNum|SQLGetInfoStr|SQLGetStmtAttrNum|SQLGetStmtAttrStr|SQLGetTypeInfo|SQLMoreResults|SQLNativeSql|SQLNumParams|SQLNumResultCols|SQLNumResultRowsIfKnown|SQLNumRowsFetched|SQLParamData|SQLPrepare|SQLPrimaryKeys|SQLProcedureColumns|SQLProcedures|SQLPutData|SQLReinitialize|SQLRowCount|SQLSetConnectAttrNum|SQLSetConnectAttrStr|SQLSetCursorName|SQLSetDescFieldNum|SQLSetDescFieldStr|SQLSetDescRec|SQLSetEnvAttrNum|SQLSetEnvAttrStr|SQLSetPos|SQLSetStmtAttrNum|SQLSetStmtAttrStr|SQLSpecialColumns|SQLStatistics|SQLTablePrivileges|SQLTables|SQLTextWaveTo2DBinaryWave|SQLTextWaveToBinaryWaves|SQLUpdateBoundValues|SQLXOPCheckState|SVAR_Exists|ScreenResolution|Secs2Date|Secs2Time|SelectNumber|SelectString|SetEnvironmentVariable|SortList|SpecialCharacterInfo|SpecialCharacterList|SpecialDirPath|SphericalBessJ|SphericalBessJD|SphericalBessY|SphericalBessYD|SphericalHarmonics|StartMSTimer|StatsBetaCDF|StatsBetaPDF|StatsBinomialCDF|StatsBinomialPDF|StatsCMSSDCDF|StatsCauchyCDF|StatsCauchyPDF|StatsChiCDF|StatsChiPDF|StatsCorrelation|StatsDExpCDF|StatsDExpPDF|StatsEValueCDF|StatsEValuePDF|StatsErlangCDF|StatsErlangPDF|StatsErrorPDF|StatsExpCDF|StatsExpPDF|StatsFCDF|StatsFPDF|StatsFriedmanCDF|StatsGEVCDF|StatsGEVPDF|StatsGammaCDF|StatsGammaPDF|StatsGeometricCDF|StatsGeometricPDF|StatsHyperGCDF|StatsHyperGPDF|StatsInvBetaCDF|StatsInvBinomialCDF|StatsInvCMSSDCDF|StatsInvCauchyCDF|StatsInvChiCDF|StatsInvDExpCDF|StatsInvEValueCDF|StatsInvExpCDF|StatsInvFCDF|StatsInvFriedmanCDF|StatsInvGammaCDF|StatsInvGeometricCDF|StatsInvKuiperCDF|StatsInvLogNormalCDF|StatsInvLogisticCDF|StatsInvMaxwellCDF|StatsInvMooreCDF|StatsInvNBinomialCDF|StatsInvNCChiCDF|StatsInvNCFCDF|StatsInvNormalCDF|StatsInvParetoCDF|StatsInvPoissonCDF|StatsInvPowerCDF|StatsInvQCDF|StatsInvQpCDF|StatsInvRayleighCDF|StatsInvRectangularCDF|StatsInvSpearmanCDF|StatsInvStudentCDF|StatsInvTopDownCDF|StatsInvTriangularCDF|StatsInvUsquaredCDF|StatsInvVonMisesCDF|StatsInvWeibullCDF|StatsKuiperCDF|StatsLogNormalCDF|StatsLogNormalPDF|StatsLogisticCDF|StatsLogisticPDF|StatsMaxwellCDF|StatsMaxwellPDF|StatsMedian|StatsMooreCDF|StatsNBinomialCDF|StatsNBinomialPDF|StatsNCChiCDF|StatsNCChiPDF|StatsNCFCDF|StatsNCFPDF|StatsNCTCDF|StatsNCTPDF|StatsNormalCDF|StatsNormalPDF|StatsParetoCDF|StatsParetoPDF|StatsPermute|StatsPoissonCDF|StatsPoissonPDF|StatsPowerCDF|StatsPowerNoise|StatsPowerPDF|StatsQCDF|StatsQpCDF|StatsRayleighCDF|StatsRayleighPDF|StatsRectangularCDF|StatsRectangularPDF|StatsRunsCDF|StatsSpearmanRhoCDF|StatsStudentCDF|StatsStudentPDF|StatsTopDownCDF|StatsTriangularCDF|StatsTriangularPDF|StatsTrimmedMean|StatsUSquaredCDF|StatsVonMisesCDF|StatsVonMisesNoise|StatsVonMisesPDF|StatsWaldCDF|StatsWaldPDF|StatsWeibullCDF|StatsWeibullPDF|StopMSTimer|StrVarOrDefault|StringByKey|StringFromList|StringList|StudentA|StudentT|TDMAddChannel|TDMAddGroup|TDMAppendDataValues|TDMAppendDataValuesTime|TDMChannelPropertyExists|TDMCloseChannel|TDMCloseFile|TDMCloseGroup|TDMCreateChannelProperty|TDMCreateFile|TDMCreateFileProperty|TDMCreateGroupProperty|TDMFilePropertyExists|TDMGetChannelPropertyNames|TDMGetChannelPropertyNum|TDMGetChannelPropertyStr|TDMGetChannelPropertyTime|TDMGetChannelPropertyType|TDMGetChannelStringPropertyLen|TDMGetChannels|TDMGetDataType|TDMGetDataValues|TDMGetDataValuesTime|TDMGetFilePropertyNames|TDMGetFilePropertyNum|TDMGetFilePropertyStr|TDMGetFilePropertyTime|TDMGetFilePropertyType|TDMGetFileStringPropertyLen|TDMGetGroupPropertyNames|TDMGetGroupPropertyNum|TDMGetGroupPropertyStr|TDMGetGroupPropertyTime|TDMGetGroupPropertyType|TDMGetGroupStringPropertyLen|TDMGetGroups|TDMGetLibraryErrorDescription|TDMGetNumChannelProperties|TDMGetNumChannels|TDMGetNumDataValues|TDMGetNumFileProperties|TDMGetNumGroupProperties|TDMGetNumGroups|TDMGroupPropertyExists|TDMOpenFile|TDMOpenFileEx|TDMRemoveChannel|TDMRemoveGroup|TDMReplaceDataValues|TDMReplaceDataValuesTime|TDMSaveFile|TDMSetChannelPropertyNum|TDMSetChannelPropertyStr|TDMSetChannelPropertyTime|TDMSetDataValues|TDMSetDataValuesTime|TDMSetFilePropertyNum|TDMSetFilePropertyStr|TDMSetFilePropertyTime|TDMSetGroupPropertyNum|TDMSetGroupPropertyStr|TDMSetGroupPropertyTime|TableInfo|TagVal|TagWaveRef|TextEncodingCode|TextEncodingName|TextFile|ThreadGroupCreate|ThreadGroupGetDF|ThreadGroupGetDFR|ThreadGroupRelease|ThreadGroupWait|ThreadProcessorCount|ThreadReturnValue|TraceFromPixel|TraceInfo|TraceNameList|TraceNameToWaveRef|TrimString|URLDecode|URLEncode|UnPadString|UniqueName|UnsetEnvironmentVariable|UpperStr|VariableList|Variance|VoigtFunc|VoigtPeak|WaveCRC|WaveDims|WaveExists|WaveHash|WaveInfo|WaveList|WaveMax|WaveMin|WaveName|WaveRefIndexed|WaveRefIndexedDFR|WaveRefWaveToList|WaveRefsEqual|WaveTextEncoding|WaveType|WaveUnits|WhichListItem|WinList|WinName|WinRecreation|WinType|XWaveName|XWaveRefFromTrace|ZernikeR|abs|acos|acosh|alog|area|areaXY|asin|asinh|atan|atan2|atanh|beta|betai|binomial|binomialNoise|binomialln|cabs|ceil|cequal|char2num|chebyshev|chebyshevU|cmplx|cmpstr|conj|cos|cosIntegral|cosh|cot|coth|cpowi|csc|csch|date|date2secs|datetime|defined|deltax|digamma|dilogarithm|ei|enoise|equalWaves|erf|erfc|erfcw|exists|exp|expInt|expIntegralE1|expNoise|fDAQmx_AI_GetReader|fDAQmx_AO_UpdateOutputs|fDAQmx_CTR_Finished|fDAQmx_CTR_IsFinished|fDAQmx_CTR_IsPulseFinished|fDAQmx_CTR_ReadCounter|fDAQmx_CTR_ReadWithOptions|fDAQmx_CTR_SetPulseFrequency|fDAQmx_CTR_Start|fDAQmx_ConnectTerminals|fDAQmx_DIO_Finished|fDAQmx_DIO_PortWidth|fDAQmx_DIO_Read|fDAQmx_DIO_Write|fDAQmx_DeviceNames|fDAQmx_DisconnectTerminals|fDAQmx_ErrorString|fDAQmx_ExternalCalDate|fDAQmx_NumAnalogInputs|fDAQmx_NumAnalogOutputs|fDAQmx_NumCounters|fDAQmx_NumDIOPorts|fDAQmx_ReadChan|fDAQmx_ReadNamedChan|fDAQmx_ResetDevice|fDAQmx_ScanGetAvailable|fDAQmx_ScanGetNextIndex|fDAQmx_ScanStart|fDAQmx_ScanStop|fDAQmx_ScanWait|fDAQmx_ScanWaitWithTimeout|fDAQmx_SelfCalDate|fDAQmx_SelfCalibration|fDAQmx_WF_IsFinished|fDAQmx_WF_WaitUntilFinished|fDAQmx_WaveformStart|fDAQmx_WaveformStop|fDAQmx_WriteChan|factorial|fakedata|faverage|faverageXY|floor|gamma|gammaEuler|gammaInc|gammaNoise|gammln|gammp|gammq|gcd|gnoise|hcsr|hermite|hermiteGauss|imag|interp|inverseERF|inverseERFC|leftx|limit|ln|log|logNormalNoise|lorentzianNoise|magsqr|max|mean|median|min|mod|norm|note|num2char|num2istr|num2str|numpnts|numtype|p2rect|pcsr|pnt2x|poissonNoise|poly|poly2D|qcsr|r2polar|real|rightx|round|sawtooth|scaleToIndex|sec|sech|sign|sin|sinIntegral|sinc|sinh|sqrt|str2num|stringCRC|stringmatch|strlen|strsearch|sum|tan|tango_close_device|tango_command_inout|tango_compute_image_proj|tango_get_dev_attr_list|tango_get_dev_black_box|tango_get_dev_cmd_list|tango_get_dev_status|tango_get_dev_timeout|tango_get_error_stack|tango_open_device|tango_ping_device|tango_read_attribute|tango_read_attributes|tango_reload_dev_interface|tango_resume_attr_monitor|tango_set_attr_monitor_period|tango_set_dev_timeout|tango_start_attr_monitor|tango_stop_attr_monitor|tango_suspend_attr_monitor|tango_write_attribute|tango_write_attributes|tanh|ticks|time|trunc|vcsr|viAssertIntrSignal|viAssertTrigger|viAssertUtilSignal|viClear|viClose|viDisableEvent|viDiscardEvents|viEnableEvent|viFindNext|viFindRsrc|viGetAttribute|viGetAttributeString|viGpibCommand|viGpibControlATN|viGpibControlREN|viGpibPassControl|viGpibSendIFC|viIn16|viIn32|viIn8|viLock|viMapAddress|viMapTrigger|viMemAlloc|viMemFree|viMoveIn16|viMoveIn32|viMoveIn8|viMoveOut16|viMoveOut32|viMoveOut8|viOpen|viOpenDefaultRM|viOut16|viOut32|viOut8|viPeek16|viPeek32|viPeek8|viPoke16|viPoke32|viPoke8|viRead|viReadSTB|viSetAttribute|viSetAttributeString|viStatusDesc|viTerminate|viUnlock|viUnmapAddress|viUnmapTrigger|viUsbControlIn|viUsbControlOut|viVxiCommandQuery|viWaitOnEvent|viWrite|wnoise|x2pnt|xcsr|zcsr|zeromq_client_connect|zeromq_client_connect|zeromq_client_recv|zeromq_client_recv|zeromq_client_send|zeromq_client_send|zeromq_handler_start|zeromq_handler_start|zeromq_handler_stop|zeromq_handler_stop|zeromq_server_bind|zeromq_server_bind|zeromq_server_recv|zeromq_server_recv|zeromq_server_send|zeromq_server_send|zeromq_set|zeromq_set|zeromq_stop|zeromq_stop|zeromq_test_callfunction|zeromq_test_callfunction|zeromq_test_serializeWave|zeromq_test_serializeWave|zeta)\\b"
252
+ },
253
+ "igor_matrixop": {
254
+ "name": "constant.igor",
255
+ "match": "(?i)\\b(?:abs|acos|acosh|asin|asinh|asynccorrelation|atan|atan2|atanh|averageCols|axisToQuat|backwardSub|beam|bitAnd|bitNot|bitOr|bitShift|bitXor|catCols|catRows|cbrt|ceil|chirpz|chirpzf|chol|chunk|clip|cmplx|col|colRepeat|conj|Const|convolve|correlate|cos|cosh|covariance|crosscovar|Det|diagonal|diagrc|e|equal|erf|erfc|exp|fct|fft|floor|forwardSub|fp32|fp64|frobenius|fsct|fsct2|fsst|fsst2|fst|getDiag|greater|hypot|identity|ifft|imag|imageRestore|indexChunks|indexCols|indexLayers|indexRows|INF|insertMat|int16|int32|int8|Integrate|intMatrix|inv|InverseErf|InverseErfc|layer|limitProduct|ln|log|mag|magsqr|matrixToQuat|maxAB|maxCols|maxRows|maxVal|mean|MeanCols|minCols|minRows|minVal|mod|nan|normalize|normalizecols|normalizerows|numCols|numPoints|numRows|numType|outerProduct|p2rect|phase|pi|powc|powr|productCol|productCols|productDiagonal|productRow|productRows|quat|quatToAxis|quatToEuler|quatToMatrix|r2polar|real|rec|redimension|replace|replacenans|reverseCol|reverseCols|reverseRow|reverseRows|rotateChunks|rotateCols|rotateLayers|rotateRows|round|row|rowRepeat|scale|scaleCols|scaleRows|setCol|setNaNs|setOffDiag|setRow|sgn|shiftvector|sin|sinh|slerp|sqrt|subrange|subtractmean|subWaveC|subWaveR|sum|sumBeams|sumcols|sumRows|sumsqr|synccorrelation|tan|tanh|tensorProduct|Trace|transposeVol|tridiag|uint16|uint32|uint8|varcols|vwl|waveChunks|waveIndexSet|waveLayers|wavemap|wavemap2|wavePoints|within|ZeroMat)\\b"
256
+ },
257
+ "igor_operations": {
258
+ "begin": "(?i)\\b(Abort|AddFIFOData|AddFIFOVectData|AddMovieAudio|AddMovieFrame|AddWavesToBoxPlot|AddWavesToViolinPlot|AdoptFiles|Append|AppendBoxPlot|AppendImage|AppendLayoutObject|AppendMatrixContour|AppendText|AppendToGizmo|AppendToGraph|AppendToLayout|AppendToTable|AppendViolinPlot|AppendXYZContour|AutoPositionWindow|AxonTelegraphFindServers|BackgroundInfo|Beep|BoundingBall|BoxSmooth|BrowseURL|BuildMenu|Button|CWT|Chart|CheckBox|CheckDisplayed|ChooseColor|Close|CloseHelp|CloseMovie|CloseProc|ColorScale|ColorTab2Wave|Concatenate|ControlBar|ControlInfo|ControlUpdate|ConvertGlobalStringTextEncoding|ConvexHull|Convolve|CopyDimLabels|CopyFile|CopyFolder|CopyScales|Correlate|CreateAliasShortcut|CreateBrowser|Cross|CtrlBackground|CtrlFIFO|CtrlNamedBackground|Cursor|CurveFit|CustomControl|DAQmx_AI_SetupReader|DAQmx_AO_SetOutputs|DAQmx_CTR_CountEdges|DAQmx_CTR_OutputPulse|DAQmx_CTR_Period|DAQmx_CTR_PulseWidth|DAQmx_DIO_Config|DAQmx_DIO_WriteNewData|DAQmx_Scan|DAQmx_WaveformGen|DPSS|DSPDetrend|DSPPeriodogram|DWT|Debugger|DebuggerOptions|DefaultFont|DefaultGuiControls|DefaultGuiFont|DefaultTextEncoding|DefineGuide|DelayUpdate|DeleteAnnotations|DeleteFile|DeleteFolder|DeletePoints|Differentiate|Display|DisplayHelpTopic|DisplayProcedure|DoAlert|DoIgorMenu|DoUpdate|DoWindow|DoXOPIdle|DrawAction|DrawArc|DrawBezier|DrawLine|DrawOval|DrawPICT|DrawPoly|DrawRRect|DrawRect|DrawText|DrawUserShape|Duplicate|DuplicateDataFolder|EdgeStats|Edit|ErrorBars|EstimatePeakSizes|Execute|ExecuteScriptText|ExperimentInfo|ExperimentModified|ExportGizmo|Extract|FBinRead|FBinWrite|FFT|FGetPos|FIFO2Wave|FIFOStatus|FMaxFlat|FPClustering|FReadLine|FSetPos|FStatus|FTPCreateDirectory|FTPDelete|FTPDownload|FTPUpload|FastGaussTransform|FastOp|FilterFIR|FilterIIR|FindAPeak|FindContour|FindDuplicates|FindLevel|FindLevels|FindPeak|FindPointsInPoly|FindRoots|FindSequence|FindValue|FuncFit|FuncFitMD|GBLoadWave|GISCreateVectorLayer|GISGetRasterInfo|GISGetRegisteredFileInfo|GISGetVectorLayerInfo|GISLoadRasterData|GISLoadVectorData|GISRasterizeVectorData|GISRegisterFile|GISTransformCoords|GISUnRegisterFile|GISWriteFieldData|GISWriteGeometryData|GISWriteRaster|GPIB2|GPIBRead2|GPIBReadBinary2|GPIBReadBinaryWave2|GPIBReadWave2|GPIBWrite2|GPIBWriteBinary2|GPIBWriteBinaryWave2|GPIBWriteWave2|GetAxis|GetCamera|GetFileFolderInfo|GetGizmo|GetLastUserMenuInfo|GetMarquee|GetMouse|GetSelection|GetWindow|GraphNormal|GraphWaveDraw|GraphWaveEdit|Grep|GroupBox|HDF5CloseFile|HDF5CloseGroup|HDF5ConvertColors|HDF5CreateFile|HDF5CreateGroup|HDF5CreateLink|HDF5Dump|HDF5DumpErrors|HDF5DumpState|HDF5FlushFile|HDF5ListAttributes|HDF5ListGroup|HDF5LoadData|HDF5LoadGroup|HDF5LoadImage|HDF5OpenFile|HDF5OpenGroup|HDF5SaveData|HDF5SaveGroup|HDF5SaveImage|HDF5TestOperation|HDF5UnlinkObject|HDFInfo|HDFReadImage|HDFReadSDS|HDFReadVset|Hanning|HideIgorMenus|HideInfo|HideProcedures|HideTools|HilbertTransform|Histogram|ICA|IFFT|ITCCloseAll2|ITCCloseDevice2|ITCConfigAllChannels2|ITCConfigChannel2|ITCConfigChannelReset2|ITCConfigChannelUpload2|ITCFIFOAvailable2|ITCFIFOAvailableAll2|ITCGetAllChannelsConfig2|ITCGetChannelConfig2|ITCGetCurrentDevice2|ITCGetDeviceInfo2|ITCGetDevices2|ITCGetErrorString2|ITCGetSerialNumber2|ITCGetState2|ITCGetVersions2|ITCInitialize2|ITCOpenDevice2|ITCReadADC2|ITCReadDigital2|ITCReadTimer2|ITCSelectDevice2|ITCSetDAC2|ITCSetGlobals2|ITCSetModes2|ITCSetState2|ITCStartAcq2|ITCStopAcq2|ITCUpdateFIFOPosition2|ITCUpdateFIFOPositionAll2|ITCWriteDigital2|ImageAnalyzeParticles|ImageBlend|ImageBoundaryToMask|ImageComposite|ImageEdgeDetection|ImageFileInfo|ImageFilter|ImageFocus|ImageFromXYZ|ImageGLCM|ImageGenerateROIMask|ImageHistModification|ImageHistogram|ImageInterpolate|ImageLineProfile|ImageLoad|ImageMorphology|ImageRegistration|ImageRemoveBackground|ImageRestore|ImageRotate|ImageSave|ImageSeedFill|ImageSkeleton3d|ImageSnake|ImageStats|ImageThreshold|ImageTransform|ImageUnwrapPhase|ImageWindow|IndexSort|InsertPoints|Integrate|Integrate2D|IntegrateODE|Interp3DPath|Interpolate2|Interpolate3D|JCAMPLoadWave|JointHistogram|JSON_AddValue|JSON_Delete|JSON_GetValue|JSON_GetKeys|JSON_SetArrayElement|KMeans|KillBackground|KillControl|KillDataFolder|KillFIFO|KillFreeAxis|KillPICTs|KillPath|KillStrings|KillVariables|KillWaves|KillWindow|Label|Layout|LayoutPageAction|LayoutSlideShow|Legend|LinearFeedbackShiftRegister|ListBox|LoadData|LoadPICT|LoadPackagePreferences|LoadWave|Loess|LombPeriodogram|MCC_FindServers|MFR_CheckForNewBricklets|MFR_CloseResultFile|MFR_CreateOverviewTable|MFR_GetBrickletCount|MFR_GetBrickletData|MFR_GetBrickletDeployData|MFR_GetBrickletMetaData|MFR_GetBrickletRawData|MFR_GetReportTemplate|MFR_GetResultFileMetaData|MFR_GetResultFileName|MFR_GetVernissageVersion|MFR_GetVersion|MFR_GetXOPErrorMessage|MFR_OpenResultFile|MLLoadWave|Make|MakeIndex|MarkPerfTestTime|MatrixConvolve|MatrixCorr|MatrixEigenV|MatrixFilter|MatrixGLM|MatrixGaussJ|MatrixInverse|MatrixLLS|MatrixLUBkSub|MatrixLUD|MatrixLUDTD|MatrixLinearSolve|MatrixLinearSolveTD|MatrixMultiply|MatrixSVBkSub|MatrixSVD|MatrixSchur|MatrixSolve|MatrixTranspose|MeasureStyledText|Modify|ModifyBoxPlot|ModifyBrowser|ModifyCamera|ModifyContour|ModifyControl|ModifyControlList|ModifyFreeAxis|ModifyGizmo|ModifyGraph|ModifyImage|ModifyLayout|ModifyPanel|ModifyTable|ModifyViolinPlot|ModifyWaterfall|MoveDataFolder|MoveFile|MoveFolder|MoveString|MoveSubwindow|MoveVariable|MoveWave|MoveWindow|MultiTaperPSD|MultiThreadingControl|NC_CloseFile|NC_DumpErrors|NC_Inquire|NC_ListAttributes|NC_ListObjects|NC_LoadData|NC_OpenFile|NI4882|NILoadWave|NeuralNetworkRun|NeuralNetworkTrain|NewCamera|NewDataFolder|NewFIFO|NewFIFOChan|NewFreeAxis|NewGizmo|NewImage|NewLayout|NewMovie|NewNotebook|NewPanel|NewPath|NewWaterfall|Note|Notebook|NotebookAction|Open|OpenHelp|OpenNotebook|Optimize|PCA|ParseOperationTemplate|PathInfo|PauseForUser|PauseUpdate|PlayMovie|PlayMovieAction|PlaySound|PopupContextualMenu|PopupMenu|Preferences|PrimeFactors|Print|PrintGraphs|PrintLayout|PrintNotebook|PrintSettings|PrintTable|Project|PulseStats|PutScrapText|Quit|RatioFromNumber|Redimension|Remez|Remove|RemoveContour|RemoveFromGizmo|RemoveFromGraph|RemoveFromLayout|RemoveFromTable|RemoveImage|RemoveLayoutObjects|RemovePath|Rename|RenameDataFolder|RenamePICT|RenamePath|RenameWindow|ReorderImages|ReorderTraces|ReplaceText|ReplaceWave|Resample|ResumeUpdate|Reverse|Rotate|SQLHighLevelOp|STFT|Save|SaveData|SaveExperiment|SaveGizmoCopy|SaveGraphCopy|SaveNotebook|SavePICT|SavePackagePreferences|SaveTableCopy|SetActiveSubwindow|SetAxis|SetBackground|SetDashPattern|SetDataFolder|SetDimLabel|SetDrawEnv|SetDrawLayer|SetFileFolderInfo|SetFormula|SetIdlePeriod|SetIgorHook|SetIgorMenuMode|SetIgorOption|SetMarquee|SetProcessSleep|SetRandomSeed|SetScale|SetVariable|SetWaveLock|SetWaveTextEncoding|SetWindow|ShowIgorMenus|ShowInfo|ShowTools|Silent|Sleep|Slider|Smooth|SmoothCustom|Sort|SortColumns|SoundInRecord|SoundInSet|SoundInStartChart|SoundInStatus|SoundInStopChart|SoundLoadWave|SoundSaveWave|SphericalInterpolate|SphericalTriangulate|SplitString|SplitWave|Stack|StackWindows|StatsANOVA1Test|StatsANOVA2NRTest|StatsANOVA2RMTest|StatsANOVA2Test|StatsAngularDistanceTest|StatsChiTest|StatsCircularCorrelationTest|StatsCircularMeans|StatsCircularMoments|StatsCircularTwoSampleTest|StatsCochranTest|StatsContingencyTable|StatsDIPTest|StatsDunnettTest|StatsFTest|StatsFriedmanTest|StatsHodgesAjneTest|StatsJBTest|StatsKDE|StatsKSTest|StatsKWTest|StatsKendallTauTest|StatsLinearCorrelationTest|StatsLinearRegression|StatsMultiCorrelationTest|StatsNPMCTest|StatsNPNominalSRTest|StatsQuantiles|StatsRankCorrelationTest|StatsResample|StatsSRTest|StatsSample|StatsScheffeTest|StatsShapiroWilkTest|StatsSignTest|StatsTTest|StatsTukeyTest|StatsVariancesTest|StatsWRCorrelationTest|StatsWatsonUSquaredTest|StatsWatsonWilliamsTest|StatsWheelerWatsonTest|StatsWilcoxonRankTest|String|StructFill|StructGet|StructPut|SumDimension|SumSeries|TDMLoadData|TDMSaveData|TabControl|Tag|TextBox|ThreadGroupPutDF|ThreadStart|TickWavesFromAxis|Tile|TileWindows|TitleBox|ToCommandLine|ToolsGrid|Triangulate3d|URLRequest|Unwrap|VDT2|VDTClosePort2|VDTGetPortList2|VDTGetStatus2|VDTOpenPort2|VDTOperationsPort2|VDTRead2|VDTReadBinary2|VDTReadBinaryWave2|VDTReadHex2|VDTReadHexWave2|VDTReadWave2|VDTTerminalPort2|VDTWrite2|VDTWriteBinary2|VDTWriteBinaryWave2|VDTWriteHex2|VDTWriteHexWave2|VDTWriteWave2|VISAControl|VISARead|VISAReadBinary|VISAReadBinaryWave|VISAReadWave|VISAWrite|VISAWriteBinary|VISAWriteBinaryWave|VISAWriteWave|ValDisplay|Variable|WaveClear|WaveMeanStdv|WaveStats|WaveTransform|WignerTransform|WindowFunction|XLLoadWave|cd|dir|fprintf|printf|pwd|sprintf|sscanf|wfprintf)\\b",
259
+ "end": "\\s(?![\\/])|$",
260
+ "patterns": [
261
+ {
262
+ "name": "source.igor",
263
+ "begin": "\\/[A-Za-z]+",
264
+ "end": "(?=\\/|\\s|=|\\\")"
265
+ },
266
+ {
267
+ "include": "#igor_functions"
268
+ },
269
+ {
270
+ "include": "#igor_common"
271
+ }
272
+ ],
273
+ "captures": {
274
+ "1": {
275
+ "name": "entity.name.tag.igor"
276
+ }
277
+ }
278
+ },
279
+ "igor_variable": {
280
+ "patterns": [
281
+ {
282
+ "begin": "(?i)^\\s*(?:(static)\\s+)?\\b(variable|string|wave|strconstant|constant|nvar|svar|dfref|funcref|struct|char|uchar|int16|uint16|int32|uint32|int64|uint64|float|double)\\s*(\\/\\w+)?\\b",
283
+ "end": "(=)|$",
284
+ "patterns": [
285
+ {
286
+ "include": "#igor_comment"
287
+ },
288
+ {
289
+ "name": "source.igor",
290
+ "match": ","
291
+ },
292
+ {
293
+ "name": "source.igor",
294
+ "match": "\\w"
295
+ }
296
+ ],
297
+ "beginCaptures": {
298
+ "1": {
299
+ "name": "constant.igor"
300
+ },
301
+ "2": {
302
+ "name": "constant.igor"
303
+ },
304
+ "3": {
305
+ "name": "source.igor"
306
+ }
307
+ },
308
+ "endCaptures": {
309
+ "1": {
310
+ "name": "source.igor"
311
+ }
312
+ }
313
+ }
314
+ ]
315
+ },
316
+ "user_functions": {
317
+ "patterns": [
318
+ {
319
+ "name": "entity.name.igor",
320
+ "match": "([\\w\\#]+)(?=[\\(])"
321
+ }
322
+ ]
323
+ }
324
+ }
325
+ }