github-linguist 7.9.0 → 7.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. checksums.yaml +4 -4
  2. data/grammars/etc.json +260 -1
  3. data/grammars/hidden.manref.json +1 -1
  4. data/grammars/hidden.regexp.injection-shell.json +28 -0
  5. data/grammars/source.4dm.json +57 -1
  6. data/grammars/source.abap.json +1 -1
  7. data/grammars/source.abl.json +685 -83
  8. data/grammars/source.agda.json +7 -7
  9. data/grammars/source.ballerina.json +1 -1
  10. data/grammars/source.c++.json +4 -4
  11. data/grammars/source.c.platform.json +584 -33
  12. data/grammars/source.chapel.json +5 -2
  13. data/grammars/source.css.json +1 -1
  14. data/grammars/source.curlrc.json +4 -4
  15. data/grammars/source.d.json +2 -2
  16. data/grammars/source.futhark.json +146 -0
  17. data/grammars/source.gcode.json +2 -2
  18. data/grammars/source.gedcom.json +196 -0
  19. data/grammars/source.generic-db.json +41 -0
  20. data/grammars/source.gfm.blade.json +15 -0
  21. data/grammars/source.gfm.json +1697 -1439
  22. data/grammars/source.httpspec.json +1 -1
  23. data/grammars/source.hx.json +5 -5
  24. data/grammars/source.hxml.json +2 -2
  25. data/grammars/source.idris.json +1 -1
  26. data/grammars/source.inputrc.json +1 -1
  27. data/grammars/source.isabelle.root.json +1 -1
  28. data/grammars/source.jison.json +3 -0
  29. data/grammars/source.jisonlex.json +3 -0
  30. data/grammars/source.julia.json +1 -1
  31. data/grammars/source.kotlin.json +17 -51
  32. data/grammars/source.lcov.json +398 -0
  33. data/grammars/source.lean.json +1 -1
  34. data/grammars/source.m2.json +125 -0
  35. data/grammars/source.man-conf.json +2 -2
  36. data/grammars/source.modula-3.json +10 -0
  37. data/grammars/{source.mrc.json → source.msl.json} +114 -99
  38. data/grammars/source.neon.json +381 -0
  39. data/grammars/source.objc.platform.json +493 -35
  40. data/grammars/source.openbsd-pkg.contents.json +128 -0
  41. data/grammars/source.p4.json +5 -21
  42. data/grammars/source.perl6fe.json +1 -1
  43. data/grammars/source.postscript.json +358 -103
  44. data/grammars/source.prisma.json +1 -1
  45. data/grammars/source.purescript.json +29 -2
  46. data/grammars/source.python.json +50 -0
  47. data/grammars/source.q.json +150 -63
  48. data/grammars/source.r.json +4 -4
  49. data/grammars/source.sieve.json +383 -0
  50. data/grammars/source.solidity.json +1 -1
  51. data/grammars/source.tags.json +266 -0
  52. data/grammars/source.ts.json +104 -36
  53. data/grammars/source.tsx.json +104 -36
  54. data/grammars/source.v.json +55 -24
  55. data/grammars/source.viml.json +3 -3
  56. data/grammars/source.webidl.json +8 -0
  57. data/grammars/source.wsd.json +25 -19
  58. data/grammars/source.x86.json +7 -3
  59. data/grammars/source.zig.json +84 -78
  60. data/grammars/text.dfy.dafny.json +188 -0
  61. data/grammars/text.html.php.blade.json +535 -528
  62. data/grammars/text.openbsd-pkg.desc.json +78 -0
  63. data/grammars/text.roff.json +49 -1
  64. data/grammars/text.sfd.json +21 -0
  65. data/grammars/text.xml.svg.json +8 -2
  66. data/grammars/version +1 -1
  67. data/lib/linguist/VERSION +1 -1
  68. data/lib/linguist/generated.rb +23 -6
  69. data/lib/linguist/languages.json +1 -1
  70. data/lib/linguist/languages.yml +74 -6
  71. data/lib/linguist/samples.json +4614 -150
  72. data/lib/linguist/vendor.yml +64 -62
  73. metadata +22 -10
  74. data/grammars/text.html.abl.json +0 -70
@@ -7,7 +7,7 @@
7
7
  },
8
8
  {
9
9
  "name": "keyword.control.chapel",
10
- "match": "\\b(align|as|atomic|begin|borrowed|break|by|catch|class|cobegin|coforall|continue|delete|dmapped|do|else|enum|except|export|extern|for|forall|if|index|inline|in|inout|iter|label|lambda|let|lifetime|local|module|new|noinit|on|only|otherwise|out|override|owned|pragma|private|proc|prototype|public|record|reduce|require|return|scan|select|serial|shared|sync|then|throw|throws|try|union|unmanaged|use|when|where|while|with|yield|zip)\\b"
10
+ "match": "\\b(align|as|atomic|begin|borrowed|break|by|catch|class|cobegin|coforall|continue|delete|dmapped|do|else|enum|except|export|extern|for|forall|if|import|index|inline|in|inout|iter|label|lambda|let|lifetime|local|module|new|noinit|on|only|otherwise|out|override|owned|pragma|private|proc|prototype|public|record|reduce|require|return|scan|select|serial|shared|sync|then|throw|throws|try|union|unmanaged|use|when|where|while|with|yield|zip)\\b"
11
11
  },
12
12
  {
13
13
  "name": "storage.type.chapel",
@@ -59,6 +59,9 @@
59
59
  "patterns": [
60
60
  {
61
61
  "include": "#string_escaped_char"
62
+ },
63
+ {
64
+ "include": "#string_placeholder"
62
65
  }
63
66
  ],
64
67
  "beginCaptures": {
@@ -236,7 +239,7 @@
236
239
  },
237
240
  "illegal_names": {
238
241
  "name": "invalid.illegal.name.chapel",
239
- "match": "\\b(align|as|atomic|begin|borrowed|break|by|bytes|catch|class|cobegin|coforall|continue|delete|dmapped|do|else|enum|except|export|extern|for|forall|if|index|inline|in|inout|iter|label|lambda|let|lifetime|local|module|new|noinit|nothing|on|only|otherwise|out|override|owned|pragma|private|proc|public|record|reduce|ref|require|return|scan|select|serial|shared|single|sync|then|throw|throws|try|union|unmanaged|use|var|void|when|where|while|with|yield|zip)\\b"
242
+ "match": "\\b(align|as|atomic|begin|borrowed|break|by|bytes|catch|class|cobegin|coforall|continue|delete|dmapped|do|else|enum|except|export|extern|for|forall|if|import|index|inline|in|inout|iter|label|lambda|let|lifetime|local|module|new|noinit|nothing|on|only|otherwise|out|override|owned|pragma|private|proc|public|record|reduce|ref|require|return|scan|select|serial|shared|single|sync|then|throw|throws|try|union|unmanaged|use|var|void|when|where|while|with|yield|zip)\\b"
240
243
  },
241
244
  "string_escaped_char": {
242
245
  "patterns": [
@@ -1408,7 +1408,7 @@
1408
1408
  },
1409
1409
  {
1410
1410
  "name": "support.constant.font-name.css",
1411
- "match": "(?\u003c![\\w-])(?i:arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida|symbol|system|tahoma|times|trebuchet|utopia|verdana|webdings|sans-serif|serif|monospace)(?![\\w-])"
1411
+ "match": "(?\u003c![\\w-])(?i:arial|century|comic|courier|garamond|georgia|helvetica|impact|lucida|symbol|system-ui|system|tahoma|times|trebuchet|ui-monospace|ui-rounded|ui-sans-serif|ui-serif|utopia|verdana|webdings|sans-serif|serif|monospace)(?![\\w-])"
1412
1412
  }
1413
1413
  ]
1414
1414
  },
@@ -18,7 +18,7 @@
18
18
  "2": {
19
19
  "patterns": [
20
20
  {
21
- "include": "etc#colon"
21
+ "include": "etc#kolon"
22
22
  }
23
23
  ]
24
24
  },
@@ -33,7 +33,7 @@
33
33
  "1": {
34
34
  "patterns": [
35
35
  {
36
- "include": "etc#colon"
36
+ "include": "etc#kolon"
37
37
  }
38
38
  ]
39
39
  },
@@ -85,7 +85,7 @@
85
85
  "2": {
86
86
  "patterns": [
87
87
  {
88
- "include": "etc#colon"
88
+ "include": "etc#kolon"
89
89
  }
90
90
  ]
91
91
  },
@@ -754,7 +754,7 @@
754
754
  "include": "etc#eql"
755
755
  },
756
756
  {
757
- "include": "etc#colon"
757
+ "include": "etc#kolon"
758
758
  }
759
759
  ]
760
760
  },
@@ -35,7 +35,7 @@
35
35
  },
36
36
  {
37
37
  "name": "meta.version.d",
38
- "match": "(?x)(?\u003c=^|\\}|:)\\s*\n\t\t\t\t\t(else\\s+)?(version)\\s*\n\t\t\t\t\t(?:\n \\(\\s*\n (?:\n (\n DigitalMars|\n GNU|\n LDC|\n SDC|\n Windows|\n Win32|\n Win64|\n linux|\n OSX|\n FreeBSD|\n OpenBSD|\n NetBSD|\n DragonFlyBSD|\n BSD|\n Solaris|\n Posix|\n AIX|\n Haiku|\n SkyOS|\n SysV3|\n SysV4|\n Hurd|\n Android|\n Emscripten|\n PlayStation|\n PlayStation4|\n Cygwin|\n MinGW|\n FreeStanding|\n CRuntime_Bionic|\n CRuntime_DigitalMars|\n CRuntime_Glibc|\n CRuntime_Microsoft|\n CRuntime_Musl|\n CRuntime_UClibc|\n X86|\n X86_64|\n ARM|\n ARM_Thumb|\n ARM_SoftFloat|\n ARM_SoftFP|\n ARM_HardFloat|\n AArch64|\n AsmJS|\n Epiphany|\n PPC|\n PPC_SoftFloat|\n PPC_HardFloat|\n PPC64|\n IA64|\n MIPS32|\n MIPS64|\n MIPS_O32|\n MIPS_N32|\n MIPS_O64|\n MIPS_N64|\n MIPS_EABI|\n MIPS_SoftFloat|\n MIPS_HardFloat|\n NVPTX|\n NVPTX64|\n RISCV32|\n RISCV64|\n SPARC|\n SPARC_V8Plus|\n SPARC_SoftFloat|\n SPARC_HardFloat|\n SPARC64|\n S390|\n SystemZ|\n HPPA|\n HPPA64|\n SH|\n WebAssembly|\n Alpha|\n Alpha_SoftFloat|\n Alpha_HardFloat|\n LittleEndian|\n BigEndian|\n ELFv1|\n ELFv2|\n D_BetterC|\n D_Coverage|\n D_Ddoc|\n D_InlineAsm_X86|\n D_InlineAsm_X86_64|\n D_LP64|\n D_X32|\n D_HardFloat|\n D_SoftFloat|\n D_PIC|\n D_SIMD|\n D_AVX|\n D_AVX2|\n D_Version2|\n D_NoBoundsChecks|\n D_ObjectiveC|\n unittest|\n assert|\n none|\n all\n )|\n (darwin|Thumb|S390X)|\n (?:[A-Za-z_][A-Za-z0-9_]*)\n )\n \\s*\\)\n )?",
38
+ "match": "(?x)(?\u003c=^|\\}|:)\\s*\n\t\t\t\t\t(else\\s+)?(version)\\s*\n\t\t\t\t\t(?:\n \\(\\s*\n (?:\n (\n DigitalMars|\n GNU|\n LDC|\n SDC|\n Windows|\n Win32|\n Win64|\n linux|\n OSX|\n FreeBSD|\n OpenBSD|\n NetBSD|\n DragonFlyBSD|\n BSD|\n Solaris|\n Posix|\n AIX|\n Haiku|\n SkyOS|\n SysV3|\n SysV4|\n Hurd|\n Android|\n Emscripten|\n PlayStation|\n PlayStation4|\n Cygwin|\n MinGW|\n FreeStanding|\n CppRuntime_Clang|\n CppRuntime_DigitalMars|\n CppRuntime_Gcc|\n CppRuntime_Microsoft|\n CppRuntime_Sun|\n CRuntime_Bionic|\n CRuntime_DigitalMars|\n CRuntime_Glibc|\n CRuntime_Microsoft|\n CRuntime_Musl|\n CRuntime_UClibc|\n X86|\n X86_64|\n ARM|\n ARM_Thumb|\n ARM_SoftFloat|\n ARM_SoftFP|\n ARM_HardFloat|\n AArch64|\n AsmJS|\n Epiphany|\n PPC|\n PPC_SoftFloat|\n PPC_HardFloat|\n PPC64|\n IA64|\n MIPS32|\n MIPS64|\n MIPS_O32|\n MIPS_N32|\n MIPS_O64|\n MIPS_N64|\n MIPS_EABI|\n MIPS_SoftFloat|\n MIPS_HardFloat|\n NVPTX|\n NVPTX64|\n RISCV32|\n RISCV64|\n SPARC|\n SPARC_V8Plus|\n SPARC_SoftFloat|\n SPARC_HardFloat|\n SPARC64|\n S390|\n SystemZ|\n HPPA|\n HPPA64|\n SH|\n WebAssembly|\n Alpha|\n Alpha_SoftFloat|\n Alpha_HardFloat|\n LittleEndian|\n BigEndian|\n ELFv1|\n ELFv2|\n D_BetterC|\n D_Coverage|\n D_Ddoc|\n D_InlineAsm_X86|\n D_InlineAsm_X86_64|\n D_LP64|\n D_X32|\n D_HardFloat|\n D_SoftFloat|\n D_PIC|\n D_SIMD|\n D_AVX|\n D_AVX2|\n D_Version2|\n D_NoBoundsChecks|\n D_ObjectiveC|\n unittest|\n assert|\n none|\n all\n )|\n (darwin|Thumb|S390X)|\n (?:[A-Za-z_][A-Za-z0-9_]*)\n )\n \\s*\\)\n )?",
39
39
  "captures": {
40
40
  "1": {
41
41
  "name": "keyword.control.version.d"
@@ -282,7 +282,7 @@
282
282
  },
283
283
  {
284
284
  "name": "storage.modifier.d",
285
- "match": "(?x)\n\t\t\t\t\\b(\n\t\t\t\t\tauto|\n\t\t\t\t\tstatic|\n\t\t\t\t\toverride|\n\t\t\t\t\tfinal|\n\t\t\t\t\tabstract|\n\t\t\t\t\tvolatile|\n\t\t\t\t\tsynchronized|\n\t\t\t\t\tlazy|\n\t\t\t\t\tnothrow|\n\t\t\t\t\timmutable|\n\t\t\t\t\tconst|\n\t\t\t\t\tinout|\n\t\t\t\t\tref|\n\t\t\t\t\tin|\n\t\t\t\t\tscope|\n\t\t\t\t\t__gshared|\n\t\t\t\t\tshared|\n\t\t\t\t\tpure\n\t\t\t\t)\n\t\t\t\t\\b|\n\t\t\t\t(@)(\n\t\t\t\t\tproperty|\n\t\t\t\t\tdisable|\n\t\t\t\t\tnogc|\n\t\t\t\t\tsafe|\n\t\t\t\t\ttrusted|\n\t\t\t\t\tsystem\n\t\t\t\t)\\b"
285
+ "match": "(?x)\n\t\t\t\t\\b(\n\t\t\t\t\tauto|\n\t\t\t\t\tstatic|\n\t\t\t\t\toverride|\n\t\t\t\t\tfinal|\n\t\t\t\t\tabstract|\n\t\t\t\t\tvolatile|\n\t\t\t\t\tsynchronized|\n\t\t\t\t\tlazy|\n\t\t\t\t\tnothrow|\n\t\t\t\t\timmutable|\n\t\t\t\t\tconst|\n\t\t\t\t\tinout|\n\t\t\t\t\tref|\n\t\t\t\t\tin|\n\t\t\t\t\tscope|\n\t\t\t\t\t__gshared|\n\t\t\t\t\tshared|\n\t\t\t\t\tpure\n\t\t\t\t)\n\t\t\t\t\\b|\n\t\t\t\t(@)(\n\t\t\t\t\tproperty|\n\t\t\t\t\tdisable|\n\t\t\t\t\tnogc|\n\t\t\t\t\tlive|\n\t\t\t\t\tsafe|\n\t\t\t\t\ttrusted|\n\t\t\t\t\tsystem\n\t\t\t\t)\\b"
286
286
  },
287
287
  {
288
288
  "name": "storage.type.structure.d",
@@ -0,0 +1,146 @@
1
+ {
2
+ "name": "Futhark",
3
+ "scopeName": "source.futhark",
4
+ "patterns": [
5
+ {
6
+ "include": "#main"
7
+ }
8
+ ],
9
+ "repository": {
10
+ "booleans": {
11
+ "name": "constant.language.boolean.$1.futhark",
12
+ "match": "(?\u003c![#'])(true|false)\\b(?![#'])"
13
+ },
14
+ "builtInTypes": {
15
+ "patterns": [
16
+ {
17
+ "name": "support.type.builtin.futhark",
18
+ "match": "(?\u003c![#'])(bool)\\b(?![#'])"
19
+ },
20
+ {
21
+ "include": "#numericTypes"
22
+ }
23
+ ]
24
+ },
25
+ "character": {
26
+ "name": "string.quoted.single.character.futhark",
27
+ "match": "(')[^']?(')",
28
+ "captures": {
29
+ "1": {
30
+ "name": "punctuation.definition.string.begin.futhark"
31
+ },
32
+ "2": {
33
+ "name": "punctuation.definition.string.end.futhark"
34
+ }
35
+ }
36
+ },
37
+ "comment": {
38
+ "name": "comment.line.double-dash.futhark",
39
+ "begin": "--",
40
+ "end": "$"
41
+ },
42
+ "constructor": {
43
+ "name": "entity.name.function.constructor.futhark",
44
+ "match": "(#)['\\w]+",
45
+ "captures": {
46
+ "1": {
47
+ "name": "punctuation.definition.constructor.number-sign.futhark"
48
+ }
49
+ }
50
+ },
51
+ "functionDefinition": {
52
+ "match": "(?\u003c![#'])\\b(let|entry|type)\\s+([_A-Za-z]['\\w]*)",
53
+ "captures": {
54
+ "1": {
55
+ "patterns": [
56
+ {
57
+ "include": "#keywords"
58
+ }
59
+ ]
60
+ },
61
+ "2": {
62
+ "name": "entity.name.function.futhark"
63
+ }
64
+ }
65
+ },
66
+ "keywords": {
67
+ "name": "keyword.control.$1.futhark",
68
+ "match": "(?\u003c![#'])\\b(assert|case|do|else|entry|for|if|import|include|in|let|local|loop|match|module|open|then|type|unsafe|val|while|with)\\b(?![#'])"
69
+ },
70
+ "main": {
71
+ "patterns": [
72
+ {
73
+ "include": "#functionDefinition"
74
+ },
75
+ {
76
+ "include": "#comment"
77
+ },
78
+ {
79
+ "include": "#keywords"
80
+ },
81
+ {
82
+ "include": "#numericTypes"
83
+ },
84
+ {
85
+ "include": "#builtInTypes"
86
+ },
87
+ {
88
+ "include": "#booleans"
89
+ },
90
+ {
91
+ "include": "#number"
92
+ },
93
+ {
94
+ "include": "#character"
95
+ },
96
+ {
97
+ "include": "#var"
98
+ },
99
+ {
100
+ "include": "#constructor"
101
+ },
102
+ {
103
+ "include": "#operator"
104
+ },
105
+ {
106
+ "include": "etc#bracket"
107
+ },
108
+ {
109
+ "include": "etc"
110
+ }
111
+ ]
112
+ },
113
+ "number": {
114
+ "name": "constant.numeric.futhark",
115
+ "match": "(?x) -?\n(?:\n\t(?:0[xX])\n\t[0-9a-fA-F]+\n\t(?: \\.[0-9a-fA-F]+)?\n\t(?: [Pp][+-]?[0-9]+)?\n\t\n\t|\n\t\n\t[0-9]+\n\t(?:\\.[0-9]+)?\n\t(?:[Ee][+-]?[0-9]+)?\n) (?:i8|i16|i32|i64|u8|u16|u32|u64|f32|f64)?"
116
+ },
117
+ "numericTypes": {
118
+ "name": "support.type.numeric.futhark",
119
+ "match": "(?\u003c![#'])\\b(f32|f64|i16|i32|i64|i8|u16|u32|u64|u8)\\b(?![#'])"
120
+ },
121
+ "operator": {
122
+ "patterns": [
123
+ {
124
+ "name": "keyword.operator.futhark",
125
+ "match": "[-+*/%!\u003c\u003e=\u0026|@]+"
126
+ },
127
+ {
128
+ "name": "string.interpolated.quoted.backticks.futhark",
129
+ "match": "(`)[^`]*(`)",
130
+ "captures": {
131
+ "1": {
132
+ "name": "punctuation.definition.string.begin.futhark"
133
+ },
134
+ "2": {
135
+ "name": "punctuation.definition.string.end.futhark"
136
+ }
137
+ }
138
+ }
139
+ ]
140
+ },
141
+ "var": {
142
+ "name": "variable.other.readwrite.futhark",
143
+ "match": "[_A-Za-z]['\\w]*"
144
+ }
145
+ }
146
+ }
@@ -116,7 +116,7 @@
116
116
  },
117
117
  {
118
118
  "name": "support.constant.math.gcode",
119
- "match": "(FIX)|(FUP)|(ROUND)|(ABS)"
119
+ "match": "(FIX)|(FUP)|(ROUND)|(ABS)|(MOD)"
120
120
  },
121
121
  {
122
122
  "name": "support.constant.math.gcode",
@@ -140,7 +140,7 @@
140
140
  },
141
141
  {
142
142
  "name": "string.regexp.gcode",
143
- "match": "[pP][0-9]{1,5}"
143
+ "match": "[pP][0-9]{0,5}"
144
144
  }
145
145
  ]
146
146
  },
@@ -0,0 +1,196 @@
1
+ {
2
+ "name": "GEDCOM",
3
+ "scopeName": "source.gedcom",
4
+ "patterns": [
5
+ {
6
+ "include": "#line"
7
+ }
8
+ ],
9
+ "repository": {
10
+ "delim": {
11
+ "patterns": [
12
+ {
13
+ "name": "text.gedcom",
14
+ "match": "(\\s)"
15
+ }
16
+ ]
17
+ },
18
+ "level": {
19
+ "patterns": [
20
+ {
21
+ "name": "constant.numeric.gedcom",
22
+ "match": "(^\\d*)"
23
+ },
24
+ {
25
+ "include": "#delim"
26
+ }
27
+ ]
28
+ },
29
+ "line": {
30
+ "patterns": [
31
+ {
32
+ "include": "#level"
33
+ },
34
+ {
35
+ "include": "#xref"
36
+ },
37
+ {
38
+ "include": "#statement"
39
+ }
40
+ ]
41
+ },
42
+ "line_name": {
43
+ "patterns": [
44
+ {
45
+ "name": "text.gedcom",
46
+ "match": "([^/]*$)"
47
+ },
48
+ {
49
+ "include": "#line_name_composite"
50
+ }
51
+ ]
52
+ },
53
+ "line_name_composite": {
54
+ "patterns": [
55
+ {
56
+ "contentName": "string.regexp.gedcom",
57
+ "begin": "(/)",
58
+ "end": "(/)",
59
+ "beginCaptures": {
60
+ "1": {
61
+ "name": "string.regexp.gedcom"
62
+ }
63
+ },
64
+ "endCaptures": {
65
+ "1": {
66
+ "name": "string.regexp.gedcom"
67
+ }
68
+ }
69
+ },
70
+ {
71
+ "name": "string.unquoted.gedcom",
72
+ "match": "(.)"
73
+ }
74
+ ]
75
+ },
76
+ "noop": {
77
+ "patterns": [
78
+ {
79
+ "name": "text.gedcom",
80
+ "match": "(.)"
81
+ }
82
+ ]
83
+ },
84
+ "pointer": {
85
+ "patterns": [
86
+ {
87
+ "contentName": "storage.type.gedcom",
88
+ "begin": "(@)",
89
+ "end": "(@)",
90
+ "beginCaptures": {
91
+ "1": {
92
+ "name": "storage.type.gedcom"
93
+ }
94
+ },
95
+ "endCaptures": {
96
+ "1": {
97
+ "name": "storage.type.gedcom"
98
+ }
99
+ }
100
+ }
101
+ ]
102
+ },
103
+ "statement": {
104
+ "patterns": [
105
+ {
106
+ "include": "#tag_name"
107
+ },
108
+ {
109
+ "include": "#tag_pointers"
110
+ },
111
+ {
112
+ "include": "#tag_line"
113
+ },
114
+ {
115
+ "include": "#pointer"
116
+ }
117
+ ]
118
+ },
119
+ "tag_line": {
120
+ "patterns": [
121
+ {
122
+ "begin": "([A-Z]*)",
123
+ "end": "(^(?=.{0,1})(?:|))",
124
+ "patterns": [
125
+ {
126
+ "include": "#noop"
127
+ }
128
+ ],
129
+ "beginCaptures": {
130
+ "1": {
131
+ "name": "keyword.control.gedcom"
132
+ }
133
+ },
134
+ "endCaptures": {
135
+ "1": {
136
+ "name": "text.gedcom"
137
+ }
138
+ }
139
+ }
140
+ ]
141
+ },
142
+ "tag_name": {
143
+ "patterns": [
144
+ {
145
+ "begin": "(NAME)",
146
+ "end": "(^(?=.{0,1})(?:|))",
147
+ "patterns": [
148
+ {
149
+ "include": "#line_name"
150
+ }
151
+ ],
152
+ "beginCaptures": {
153
+ "1": {
154
+ "name": "keyword.control.gedcom"
155
+ }
156
+ },
157
+ "endCaptures": {
158
+ "1": {
159
+ "name": "text.gedcom"
160
+ }
161
+ }
162
+ }
163
+ ]
164
+ },
165
+ "tag_pointers": {
166
+ "patterns": [
167
+ {
168
+ "begin": "(FAMS|FAMC|HUSB|WIFE|CHIL|SUBM|SUMN|REPO|ALIA|ANCI|DESI|ASSO|OBJE|NOTE|SOUR)",
169
+ "end": "(^(?=.{0,1})(?:|))",
170
+ "patterns": [
171
+ {
172
+ "include": "#pointer"
173
+ }
174
+ ],
175
+ "beginCaptures": {
176
+ "1": {
177
+ "name": "keyword.control.gedcom"
178
+ }
179
+ },
180
+ "endCaptures": {
181
+ "1": {
182
+ "name": "text.gedcom"
183
+ }
184
+ }
185
+ }
186
+ ]
187
+ },
188
+ "xref": {
189
+ "patterns": [
190
+ {
191
+ "include": "#pointer"
192
+ }
193
+ ]
194
+ }
195
+ }
196
+ }