github-linguist 8.0.1 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/grammars/go.mod.json +1 -1
- data/grammars/liquid.injection.json +1 -1
- data/grammars/markdown.vue.codeblock.json +1 -0
- data/grammars/mdx.vue.codeblock.json +1 -0
- data/grammars/source.QB64.json +1 -0
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.angelscript.json +1 -1
- data/grammars/source.answersetprogramming.json +1 -0
- data/grammars/source.apacheconf.json +1 -0
- data/grammars/source.assembly.json +1 -1
- data/grammars/source.ats.json +1 -1
- data/grammars/source.basic.json +1 -1
- data/grammars/source.bb.json +1 -1
- data/grammars/source.brs.json +1 -1
- data/grammars/source.bsl.json +1 -1
- data/grammars/source.bst.json +1 -0
- data/grammars/source.c.linker.json +1 -0
- data/grammars/source.cairo0.json +1 -1
- data/grammars/source.cmake.json +1 -1
- data/grammars/source.cmakecache.json +1 -0
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.cs.json +1 -1
- data/grammars/source.curry.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.dds.dspf.json +1 -1
- data/grammars/source.erlang.json +1 -1
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.git-revlist.json +1 -1
- data/grammars/source.gleam.json +1 -1
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hcl.json +1 -1
- data/grammars/source.hcl.terraform.json +1 -1
- data/grammars/source.ice.json +1 -1
- data/grammars/source.ispc.json +1 -0
- data/grammars/source.jai.json +1 -0
- data/grammars/source.json.comments.json +1 -0
- data/grammars/source.julia.json +1 -1
- data/grammars/source.just.json +1 -1
- data/grammars/source.kdl.json +1 -0
- data/grammars/source.lean.markdown.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.luau.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mdx.astro.json +1 -0
- data/grammars/source.mdx.json +1 -1
- data/grammars/source.mo.json +1 -1
- data/grammars/source.moonbit.json +1 -0
- data/grammars/source.msg.json +1 -0
- data/grammars/source.mzn.json +1 -0
- data/grammars/source.ned.json +1 -0
- data/grammars/source.nr.json +1 -1
- data/grammars/source.nushell.json +1 -1
- data/grammars/source.odin.json +1 -1
- data/grammars/source.openesql.json +1 -0
- data/grammars/source.overpassql.json +1 -0
- data/grammars/source.p4.json +1 -1
- data/grammars/source.polar.json +1 -1
- data/grammars/source.powerbuilder.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.purescript.json +1 -1
- data/grammars/source.ql.json +1 -1
- data/grammars/source.qsharp.json +1 -1
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.scala.json +1 -1
- data/grammars/source.scm.json +1 -0
- data/grammars/source.sdbl.json +1 -1
- data/grammars/source.slang.json +1 -0
- data/grammars/source.slice.json +1 -1
- data/grammars/source.sourcepawn.json +1 -1
- data/grammars/source.stan.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tact.json +1 -0
- data/grammars/source.talon.json +1 -1
- data/grammars/source.templ.json +1 -1
- data/grammars/source.textgrid.json +1 -1
- data/grammars/source.toc.json +1 -1
- data/grammars/source.ts.json +1 -1
- data/grammars/source.ts.prismaClientRawSQL.json +1 -1
- data/grammars/source.tsp.json +1 -0
- data/grammars/source.tsx.json +1 -1
- data/grammars/source.typst.json +1 -1
- data/grammars/source.vba.json +1 -1
- data/grammars/source.vue.json +1 -0
- data/grammars/source.wdl.json +1 -1
- data/grammars/source.xmake.json +1 -0
- data/grammars/text.adblock.json +1 -1
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.markdown.d2.json +1 -1
- data/grammars/text.md.json +1 -1
- data/grammars/text.rtf.json +1 -1
- data/grammars/version +1 -1
- data/grammars/vue.directives.json +1 -0
- data/grammars/vue.interpolations.json +1 -0
- data/grammars/vue.sfc.style.variable.injection.json +1 -0
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +32 -1
- data/lib/linguist/generic.yml +1 -0
- data/lib/linguist/heuristics.yml +109 -25
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +232 -10
- data/lib/linguist/lazy_blob.rb +15 -7
- data/lib/linguist/repository.rb +18 -13
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/shebang.rb +1 -1
- data/lib/linguist/source/diff.rb +72 -0
- data/lib/linguist/source/repository.rb +64 -0
- data/lib/linguist/source/rugged.rb +95 -0
- metadata +34 -9
- data/grammars/source.apache-config.json +0 -1
- data/grammars/source.apache-config.mod_perl.json +0 -1
- data/grammars/source.cache.cmake.json +0 -1
- data/grammars/text.html.erlang.yaws.json +0 -1
- data/grammars/text.html.vue.json +0 -1
- data/grammars/text.mdx.astro.codeblock.json +0 -1
data/lib/linguist/shebang.rb
CHANGED
@@ -59,7 +59,7 @@ module Linguist
|
|
59
59
|
|
60
60
|
# Check for multiline shebang hacks that call `exec`
|
61
61
|
if script == 'sh' &&
|
62
|
-
data.lines.first(5).any? { |l| l.match(/exec (\w+)
|
62
|
+
data.lines.first(5).any? { |l| l.match(/exec (\w+)[\s"']+\$0[\s"']+\$@/) }
|
63
63
|
script = $1
|
64
64
|
end
|
65
65
|
|
@@ -0,0 +1,72 @@
|
|
1
|
+
require 'linguist/generated'
|
2
|
+
require 'cgi'
|
3
|
+
require 'charlock_holmes'
|
4
|
+
require 'mini_mime'
|
5
|
+
require 'yaml'
|
6
|
+
|
7
|
+
module Linguist
|
8
|
+
module Source
|
9
|
+
# Diff is an interface representing a diff between two trees. It is composed
|
10
|
+
# of a collection of iterable deltas between before/after states of files.
|
11
|
+
class Diff
|
12
|
+
# A Delta represents a single file's before/after state in a diff.
|
13
|
+
class Delta
|
14
|
+
# Public: get the status of the file's "after" state as compared to
|
15
|
+
# "before". Valid status values include:
|
16
|
+
#
|
17
|
+
# - :added
|
18
|
+
# - :deleted
|
19
|
+
# - :modified
|
20
|
+
# - :renamed
|
21
|
+
# - :copied
|
22
|
+
# - :ignored
|
23
|
+
# - :untracked
|
24
|
+
# - :typechange
|
25
|
+
#
|
26
|
+
# Returns the status.
|
27
|
+
def status
|
28
|
+
raise NotImplementedError
|
29
|
+
end
|
30
|
+
|
31
|
+
# Public: determine whether the file delta is binary.
|
32
|
+
#
|
33
|
+
# Returns true if the delta is binary, false otherwise.
|
34
|
+
def binary?
|
35
|
+
raise NotImplementedError
|
36
|
+
end
|
37
|
+
|
38
|
+
# Public: get the metadata of the "before" file in the delta. The
|
39
|
+
# metadata is represented as a Hash with the keys:
|
40
|
+
#
|
41
|
+
# - :path (string)
|
42
|
+
# - :oid (string)
|
43
|
+
# - :mode (integer)
|
44
|
+
#
|
45
|
+
# Returns the entry metadata hash.
|
46
|
+
def old_file
|
47
|
+
raise NotImplementedError
|
48
|
+
end
|
49
|
+
|
50
|
+
# Public: get the metadata of the "after" file in the delta. The
|
51
|
+
# metadata is represented as a Hash with the keys:
|
52
|
+
#
|
53
|
+
# - :path (string)
|
54
|
+
# - :oid (string)
|
55
|
+
# - :mode (integer)
|
56
|
+
#
|
57
|
+
# Returns the entry metadata hash.
|
58
|
+
def new_file
|
59
|
+
raise NotImplementedError
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
# Public: iterate through each delta of the given diff. Yields a single
|
64
|
+
# delta to the given block.
|
65
|
+
#
|
66
|
+
# Returns nothing.
|
67
|
+
def each_delta
|
68
|
+
raise NotImplementedError
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
@@ -0,0 +1,64 @@
|
|
1
|
+
module Linguist
|
2
|
+
module Source
|
3
|
+
# Repository is an interface for providing direct access to functionality in
|
4
|
+
# a repository of files whose contents can be scanned for language
|
5
|
+
# information.
|
6
|
+
class Repository
|
7
|
+
# Public: get the number of entries in the root tree of the given commit,
|
8
|
+
# with an optional maximum value.
|
9
|
+
#
|
10
|
+
# commit_id - the string unique identifier of the commit to analyze.
|
11
|
+
# limit - (Optional) the integer maximum number of tree entries to
|
12
|
+
# count.
|
13
|
+
#
|
14
|
+
# Returns the number of entries in the tree or 'limit', whichever is
|
15
|
+
# smaller.
|
16
|
+
def get_tree_size(commit_id, limit = nil)
|
17
|
+
raise NotImplementedError
|
18
|
+
end
|
19
|
+
|
20
|
+
# Public: set the commit whose .gitattributes file(s) should be used as
|
21
|
+
# the source of attribute information in 'load_attributes_for_path'.
|
22
|
+
#
|
23
|
+
# commit_id - the string unique identifier of the attribute source commit.
|
24
|
+
#
|
25
|
+
# Returns nothing.
|
26
|
+
def set_attribute_source(commit_id)
|
27
|
+
raise NotImplementedError
|
28
|
+
end
|
29
|
+
|
30
|
+
# Public: read the data and size information for the specified file blob.
|
31
|
+
#
|
32
|
+
# blob_id - the string unique identifier of the blob to read.
|
33
|
+
# max_size - the integer maximum size in bytes to read from the blob.
|
34
|
+
#
|
35
|
+
# Returns the (possibly truncated) byte string of blob content and
|
36
|
+
# the full, untruncated size of the blob.
|
37
|
+
def load_blob(blob_id, max_size)
|
38
|
+
raise NotImplementedError
|
39
|
+
end
|
40
|
+
|
41
|
+
# Public: look up the attribute values for a given path.
|
42
|
+
#
|
43
|
+
# path - the path for which we want attribute values.
|
44
|
+
# attr_names - the attributes to read for the given path.
|
45
|
+
#
|
46
|
+
# Returns a Hash mapping attribute names to their corresponding values.
|
47
|
+
def load_attributes_for_path(path, attr_names)
|
48
|
+
raise NotImplementedError
|
49
|
+
end
|
50
|
+
|
51
|
+
# Public: compute the diff between the given old and new commits.
|
52
|
+
#
|
53
|
+
# old_commit - the string unique identifier of the "before" state of the
|
54
|
+
# diff, or nil (representing an empty tree).
|
55
|
+
# new_commit - the string unique identifier of the "after" state of the
|
56
|
+
# diff, or nil (representing an empty tree).
|
57
|
+
#
|
58
|
+
# Returns a Source::Diff.
|
59
|
+
def diff(old_commit, new_commit)
|
60
|
+
raise NotImplementedError
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -0,0 +1,95 @@
|
|
1
|
+
require 'rugged'
|
2
|
+
require 'linguist/source/diff'
|
3
|
+
|
4
|
+
module Linguist
|
5
|
+
module Source
|
6
|
+
# RuggedRepository is an implementation of the Source::Repository abstract
|
7
|
+
# class. It represents a Git repository that is accessed using the libgit2
|
8
|
+
# wrapper Rugged.
|
9
|
+
class RuggedRepository < Linguist::Source::Repository
|
10
|
+
|
11
|
+
class Diff < Linguist::Source::Diff
|
12
|
+
class Delta < Linguist::Source::Diff::Delta
|
13
|
+
def initialize(rugged_delta)
|
14
|
+
@delta = rugged_delta
|
15
|
+
end
|
16
|
+
|
17
|
+
def status; @delta.status; end
|
18
|
+
|
19
|
+
def binary?; @delta.binary; end
|
20
|
+
|
21
|
+
def old_file; @delta.old_file; end
|
22
|
+
|
23
|
+
def new_file; @delta.new_file; end
|
24
|
+
end
|
25
|
+
|
26
|
+
def initialize(rugged_diff)
|
27
|
+
@diff = rugged_diff
|
28
|
+
end
|
29
|
+
|
30
|
+
def each_delta(&block)
|
31
|
+
@diff.each_delta.map do |delta|
|
32
|
+
Delta.new(delta)
|
33
|
+
end.each(&block)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
GIT_ATTR_OPTS = { :priority => [:index], :skip_system => true }
|
38
|
+
GIT_ATTR_FLAGS = Rugged::Repository::Attributes.parse_opts(GIT_ATTR_OPTS)
|
39
|
+
|
40
|
+
def initialize(rugged)
|
41
|
+
@rugged = rugged
|
42
|
+
@tree_map = {}
|
43
|
+
@attr_source = nil
|
44
|
+
end
|
45
|
+
|
46
|
+
def get_tree_size(commit_id, limit)
|
47
|
+
get_tree(commit_id).count_recursive(limit)
|
48
|
+
end
|
49
|
+
|
50
|
+
def set_attribute_source(commit_id)
|
51
|
+
tree = get_tree(commit_id)
|
52
|
+
return if @attr_source == tree
|
53
|
+
|
54
|
+
@attr_source = tree
|
55
|
+
attr_index = Rugged::Index.new
|
56
|
+
attr_index.read_tree(@attr_source)
|
57
|
+
@rugged.index = attr_index
|
58
|
+
end
|
59
|
+
|
60
|
+
def load_attributes_for_path(path, attr_names)
|
61
|
+
@rugged.fetch_attributes(path, attr_names, GIT_ATTR_FLAGS)
|
62
|
+
end
|
63
|
+
|
64
|
+
def load_blob(blob_id, max_size)
|
65
|
+
Rugged::Blob.to_buffer(@rugged, blob_id, max_size)
|
66
|
+
end
|
67
|
+
|
68
|
+
def diff(old_commit, new_commit)
|
69
|
+
old_tree = old_commit.nil? ? nil : get_tree(old_commit)
|
70
|
+
new_tree = new_commit.nil? ? nil : get_tree(new_commit)
|
71
|
+
|
72
|
+
Diff.new(Rugged::Tree.diff(@rugged, old_tree, new_tree))
|
73
|
+
end
|
74
|
+
|
75
|
+
# Internal: get the Rugged::Tree associated with a given commit ID. This
|
76
|
+
# method should not be used outside of Linguist itself and is subject to
|
77
|
+
# change or be removed.
|
78
|
+
#
|
79
|
+
# commit_id - the object ID of the commit whose tree instance we want.
|
80
|
+
#
|
81
|
+
# Returns the Rugged::Tree of the specified commit.
|
82
|
+
def get_tree(commit_id)
|
83
|
+
tree = @tree_map[commit_id]
|
84
|
+
return tree if tree
|
85
|
+
|
86
|
+
@tree_map[commit_id] = Rugged::Commit.lookup(@rugged, commit_id).tree
|
87
|
+
@tree_map[commit_id]
|
88
|
+
end
|
89
|
+
|
90
|
+
def method_missing(method_name, *args, &block)
|
91
|
+
@rugged.send(method_name, *args, &block)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
95
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: github-linguist
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 9.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- GitHub
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-03-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: cgi
|
@@ -272,13 +272,16 @@ files:
|
|
272
272
|
- grammars/markdown.rescript.codeblock.json
|
273
273
|
- grammars/markdown.talon.codeblock.json
|
274
274
|
- grammars/markdown.textproto.codeblock.json
|
275
|
+
- grammars/markdown.vue.codeblock.json
|
275
276
|
- grammars/mdx.move.codeblock.json
|
277
|
+
- grammars/mdx.vue.codeblock.json
|
276
278
|
- grammars/objdump.x86asm.json
|
277
279
|
- grammars/source.2da.json
|
278
280
|
- grammars/source.4dm.json
|
279
281
|
- grammars/source.8xp.json
|
280
282
|
- grammars/source.Caddyfile-test.json
|
281
283
|
- grammars/source.Caddyfile.json
|
284
|
+
- grammars/source.QB64.json
|
282
285
|
- grammars/source.abap.json
|
283
286
|
- grammars/source.abapcds.json
|
284
287
|
- grammars/source.abl.json
|
@@ -296,9 +299,9 @@ files:
|
|
296
299
|
- grammars/source.ampl.json
|
297
300
|
- grammars/source.amxxpawn.json
|
298
301
|
- grammars/source.angelscript.json
|
302
|
+
- grammars/source.answersetprogramming.json
|
299
303
|
- grammars/source.antlr.json
|
300
|
-
- grammars/source.
|
301
|
-
- grammars/source.apache-config.mod_perl.json
|
304
|
+
- grammars/source.apacheconf.json
|
302
305
|
- grammars/source.apex.json
|
303
306
|
- grammars/source.apl.json
|
304
307
|
- grammars/source.applescript.json
|
@@ -336,16 +339,17 @@ files:
|
|
336
339
|
- grammars/source.bqn.json
|
337
340
|
- grammars/source.brs.json
|
338
341
|
- grammars/source.bsl.json
|
342
|
+
- grammars/source.bst.json
|
339
343
|
- grammars/source.bsv.json
|
340
344
|
- grammars/source.c++.json
|
341
345
|
- grammars/source.c++.qt.json
|
342
346
|
- grammars/source.c.ec.json
|
343
347
|
- grammars/source.c.json
|
348
|
+
- grammars/source.c.linker.json
|
344
349
|
- grammars/source.c.nwscript.json
|
345
350
|
- grammars/source.c.platform.json
|
346
351
|
- grammars/source.c2hs.json
|
347
352
|
- grammars/source.cabal.json
|
348
|
-
- grammars/source.cache.cmake.json
|
349
353
|
- grammars/source.cadence.json
|
350
354
|
- grammars/source.cairo.json
|
351
355
|
- grammars/source.cairo0.json
|
@@ -369,6 +373,7 @@ files:
|
|
369
373
|
- grammars/source.clojure.json
|
370
374
|
- grammars/source.cm.json
|
371
375
|
- grammars/source.cmake.json
|
376
|
+
- grammars/source.cmakecache.json
|
372
377
|
- grammars/source.cmd.json
|
373
378
|
- grammars/source.cobol.json
|
374
379
|
- grammars/source.cobol_acu_listfile.json
|
@@ -551,7 +556,9 @@ files:
|
|
551
556
|
- grammars/source.ioke.json
|
552
557
|
- grammars/source.isabelle.root.json
|
553
558
|
- grammars/source.isabelle.theory.json
|
559
|
+
- grammars/source.ispc.json
|
554
560
|
- grammars/source.j.json
|
561
|
+
- grammars/source.jai.json
|
555
562
|
- grammars/source.janet.json
|
556
563
|
- grammars/source.jasmin.json
|
557
564
|
- grammars/source.java-properties.json
|
@@ -570,6 +577,7 @@ files:
|
|
570
577
|
- grammars/source.js.regexp.replacement.json
|
571
578
|
- grammars/source.jsdoc.json
|
572
579
|
- grammars/source.jsligo.json
|
580
|
+
- grammars/source.json.comments.json
|
573
581
|
- grammars/source.json.json
|
574
582
|
- grammars/source.jsoniq.json
|
575
583
|
- grammars/source.jsonnet.json
|
@@ -577,6 +585,7 @@ files:
|
|
577
585
|
- grammars/source.julia.json
|
578
586
|
- grammars/source.just.json
|
579
587
|
- grammars/source.kakscript.json
|
588
|
+
- grammars/source.kdl.json
|
580
589
|
- grammars/source.kerboscript.json
|
581
590
|
- grammars/source.keyvalues.json
|
582
591
|
- grammars/source.kickstart.json
|
@@ -623,6 +632,7 @@ files:
|
|
623
632
|
- grammars/source.maxscript.json
|
624
633
|
- grammars/source.mc.json
|
625
634
|
- grammars/source.mcfunction.json
|
635
|
+
- grammars/source.mdx.astro.json
|
626
636
|
- grammars/source.mdx.json
|
627
637
|
- grammars/source.mercury.json
|
628
638
|
- grammars/source.mermaid.c4c-diagram.json
|
@@ -654,16 +664,20 @@ files:
|
|
654
664
|
- grammars/source.modula2.json
|
655
665
|
- grammars/source.mojo.json
|
656
666
|
- grammars/source.monkey.json
|
667
|
+
- grammars/source.moonbit.json
|
657
668
|
- grammars/source.moonscript.json
|
658
669
|
- grammars/source.move.json
|
659
670
|
- grammars/source.mql5.json
|
671
|
+
- grammars/source.msg.json
|
660
672
|
- grammars/source.msl.json
|
661
673
|
- grammars/source.mupad.json
|
674
|
+
- grammars/source.mzn.json
|
662
675
|
- grammars/source.nanorc.json
|
663
676
|
- grammars/source.nasal.json
|
664
677
|
- grammars/source.nasl.json
|
665
678
|
- grammars/source.ncl.json
|
666
679
|
- grammars/source.ne.json
|
680
|
+
- grammars/source.ned.json
|
667
681
|
- grammars/source.nemerle.json
|
668
682
|
- grammars/source.neon.json
|
669
683
|
- grammars/source.nesc.json
|
@@ -699,8 +713,10 @@ files:
|
|
699
713
|
- grammars/source.opal.json
|
700
714
|
- grammars/source.opalsysdefs.json
|
701
715
|
- grammars/source.openbsd-pkg.contents.json
|
716
|
+
- grammars/source.openesql.json
|
702
717
|
- grammars/source.opentype.json
|
703
718
|
- grammars/source.opts.json
|
719
|
+
- grammars/source.overpassql.json
|
704
720
|
- grammars/source.ox.json
|
705
721
|
- grammars/source.oz.json
|
706
722
|
- grammars/source.p4.json
|
@@ -812,6 +828,7 @@ files:
|
|
812
828
|
- grammars/source.scenic.json
|
813
829
|
- grammars/source.scheme.json
|
814
830
|
- grammars/source.scilab.json
|
831
|
+
- grammars/source.scm.json
|
815
832
|
- grammars/source.sdbl.json
|
816
833
|
- grammars/source.sed.json
|
817
834
|
- grammars/source.sentinel.json
|
@@ -824,6 +841,7 @@ files:
|
|
824
841
|
- grammars/source.shen.json
|
825
842
|
- grammars/source.sieve.json
|
826
843
|
- grammars/source.singularity.json
|
844
|
+
- grammars/source.slang.json
|
827
845
|
- grammars/source.slice.json
|
828
846
|
- grammars/source.slint.json
|
829
847
|
- grammars/source.smali.json
|
@@ -854,6 +872,7 @@ files:
|
|
854
872
|
- grammars/source.swift.json
|
855
873
|
- grammars/source.sy.json
|
856
874
|
- grammars/source.systemverilog.json
|
875
|
+
- grammars/source.tact.json
|
857
876
|
- grammars/source.tags.json
|
858
877
|
- grammars/source.talon.json
|
859
878
|
- grammars/source.tcl.json
|
@@ -873,6 +892,7 @@ files:
|
|
873
892
|
- grammars/source.toml.json
|
874
893
|
- grammars/source.ts.json
|
875
894
|
- grammars/source.ts.prismaClientRawSQL.json
|
895
|
+
- grammars/source.tsp.json
|
876
896
|
- grammars/source.tsql.json
|
877
897
|
- grammars/source.tsx.json
|
878
898
|
- grammars/source.turing.json
|
@@ -896,6 +916,7 @@ files:
|
|
896
916
|
- grammars/source.vhdl.json
|
897
917
|
- grammars/source.vim-snippet.json
|
898
918
|
- grammars/source.viml.json
|
919
|
+
- grammars/source.vue.json
|
899
920
|
- grammars/source.vyper.json
|
900
921
|
- grammars/source.wavefront.mtl.json
|
901
922
|
- grammars/source.wavefront.obj.json
|
@@ -918,6 +939,7 @@ files:
|
|
918
939
|
- grammars/source.x86asm.json
|
919
940
|
- grammars/source.xc.json
|
920
941
|
- grammars/source.xlfd.json
|
942
|
+
- grammars/source.xmake.json
|
921
943
|
- grammars/source.xojo.json
|
922
944
|
- grammars/source.xq.json
|
923
945
|
- grammars/source.xtend.json
|
@@ -966,7 +988,6 @@ files:
|
|
966
988
|
- grammars/text.html.elixir.json
|
967
989
|
- grammars/text.html.ember-handlebars.json
|
968
990
|
- grammars/text.html.erb.json
|
969
|
-
- grammars/text.html.erlang.yaws.json
|
970
991
|
- grammars/text.html.factor.json
|
971
992
|
- grammars/text.html.ftl.json
|
972
993
|
- grammars/text.html.handlebars.json
|
@@ -994,7 +1015,6 @@ files:
|
|
994
1015
|
- grammars/text.html.statamic.json
|
995
1016
|
- grammars/text.html.tcl.json
|
996
1017
|
- grammars/text.html.twig.json
|
997
|
-
- grammars/text.html.vue.json
|
998
1018
|
- grammars/text.idl-idldoc.json
|
999
1019
|
- grammars/text.info.json
|
1000
1020
|
- grammars/text.jade.json
|
@@ -1003,7 +1023,6 @@ files:
|
|
1003
1023
|
- grammars/text.log.latex.json
|
1004
1024
|
- grammars/text.marko.json
|
1005
1025
|
- grammars/text.md.json
|
1006
|
-
- grammars/text.mdx.astro.codeblock.json
|
1007
1026
|
- grammars/text.muse.json
|
1008
1027
|
- grammars/text.openbsd-pkg.desc.json
|
1009
1028
|
- grammars/text.plain.json
|
@@ -1047,6 +1066,9 @@ files:
|
|
1047
1066
|
- grammars/text.zone_file.json
|
1048
1067
|
- grammars/textmate.format-string.json
|
1049
1068
|
- grammars/version
|
1069
|
+
- grammars/vue.directives.json
|
1070
|
+
- grammars/vue.interpolations.json
|
1071
|
+
- grammars/vue.sfc.style.variable.injection.json
|
1050
1072
|
- lib/linguist.rb
|
1051
1073
|
- lib/linguist/VERSION
|
1052
1074
|
- lib/linguist/blob.rb
|
@@ -1069,6 +1091,9 @@ files:
|
|
1069
1091
|
- lib/linguist/samples.rb
|
1070
1092
|
- lib/linguist/sha256.rb
|
1071
1093
|
- lib/linguist/shebang.rb
|
1094
|
+
- lib/linguist/source/diff.rb
|
1095
|
+
- lib/linguist/source/repository.rb
|
1096
|
+
- lib/linguist/source/rugged.rb
|
1072
1097
|
- lib/linguist/strategy/extension.rb
|
1073
1098
|
- lib/linguist/strategy/filename.rb
|
1074
1099
|
- lib/linguist/strategy/manpage.rb
|
@@ -1098,7 +1123,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1098
1123
|
- !ruby/object:Gem::Version
|
1099
1124
|
version: '0'
|
1100
1125
|
requirements: []
|
1101
|
-
rubygems_version: 3.5.
|
1126
|
+
rubygems_version: 3.5.22
|
1102
1127
|
signing_key:
|
1103
1128
|
specification_version: 4
|
1104
1129
|
summary: GitHub Language detection
|
@@ -1 +0,0 @@
|
|
1
|
-
{"name":"Apache","scopeName":"source.apache-config","patterns":[{"begin":"(^[ \\t]+)?(?=#)","end":"(?!\\G)","patterns":[{"name":"comment.line.number-sign.apache-config","begin":"#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.apache-config"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.apache-config"}}},{"name":"meta.tag.any.html","match":"^[ ]*(\u003c)([a-zA-Z0-9:]+)[^\u003e]*(\u003e(\u003c)/)(\\2)(\u003e)","captures":{"1":{"name":"punctuation.definition.tag.apache-config"},"2":{"name":"entity.name.tag.apache-config"},"3":{"name":"punctuation.definition.tag.apache-config"},"4":{"name":"meta.scope.between-tag-pair.apache-config"},"5":{"name":"entity.name.tag.apache-config"},"6":{"name":"punctuation.definition.tag.apache-config"}}},{"name":"meta.vhost.apache-config","begin":"^[ ]*((\u003c)(VirtualHost)(?:[ ]+([^\u003e]+))?(\u003e))","end":"^[ ]*((\u003c/)(VirtualHost)[^\u003e]*(\u003e))","patterns":[{"include":"$base"}],"beginCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"meta.toc-list.virtual-host.apache-config"},"5":{"name":"punctuation.definition.tag.apache-config"}},"endCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"punctuation.definition.tag.apache-config"}}},{"name":"meta.directory.apache-config","begin":"^[ ]*((\u003c)(Directory(?:Match)?)(?:[ ]+([^\u003e]+))?(\u003e))","end":"^[ ]*((\u003c/)(Directory(?:Match)?)[^\u003e]*(\u003e))","patterns":[{"include":"$base"}],"beginCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"meta.toc-list.directory.apache-config"},"5":{"name":"punctuation.definition.tag.apache-config"}},"endCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"punctuation.definition.tag.apache-config"}}},{"name":"meta.location.apache-config","begin":"^[ ]*((\u003c)(Location(?:Match)?)(?:[ ]+([^\u003e]+))?(\u003e))","end":"^[ ]*((\u003c/)(Location(?:Match)?)[^\u003e]*(\u003e))","patterns":[{"include":"$base"}],"beginCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"meta.toc-list.location.apache-config"},"5":{"name":"punctuation.definition.tag.apache-config"}},"endCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"punctuation.definition.tag.apache-config"}}},{"name":"source.include.apache-config","begin":"(^Include)","end":"(\\n)","patterns":[{"name":"text.include.apache-config","match":"(.*)"}],"beginCaptures":{"1":{"name":"support.constant.include.start.apache-config"}},"endCaptures":{"1":{"name":"support.constant.include.end.apache-config"}}},{"begin":"^[ ]*\\b(RewriteCond)\\b","end":"$","patterns":[{"begin":"[ ]+","end":"$","patterns":[{"include":"#vars"},{"name":"string.regexp.rewrite-test.apache-config","match":"[^ %\\n]+"},{"begin":"[ ]+","end":"$","patterns":[{"name":"string.other.rewrite-condition.apache-config","match":"[^ %\\n]+"},{"match":"[ ]+(\\[[^\\]]+\\])","captures":{"1":{"name":"string.regexp.rewrite-operator.apache-config"}}}]}]}],"captures":{"1":{"name":"support.constant.rewritecond.apache-config"}}},{"begin":"^[ ]*\\b(RewriteRule)\\b","end":"$","patterns":[{"begin":"[ ]+","end":"$","patterns":[{"include":"#vars"},{"name":"string.regexp.rewrite-pattern.apache-config","match":"[^ %]+"},{"begin":"[ ]+","end":"$","patterns":[{"include":"#vars"},{"name":"string.other.rewrite-substitution.apache-config","match":"[^ %\\n]+"},{"match":"[ ]+(\\[[^\\]]+\\])","captures":{"1":{"name":"string.regexp.rewrite-operator.apache-config"}}}]}]}],"captures":{"1":{"name":"support.constant.rewriterule.apache-config"}}},{"name":"support.constant.apache-config","match":"\\b(R(e(sourceConfig|direct(Match|Temp|Permanent)?|qu(ire|estHeader)|ferer(Ignore|Log)|write(Rule|Map|Base|Cond|Options|Engine|Lo(ck|g(Level)?))|admeName|move(Handler|Charset|Type|InputFilter|OutputFilter|Encoding|Language))|Limit(MEM|NPROC|CPU))|Group|XBitHack|M(MapFile|i(nSpare(Servers|Threads)|meMagicFile)|odMimeUsePathInfo|Cache(RemovalAlgorithm|M(inObjectSize|ax(StreamingBuffer|Object(Size|Count)))|Size)|ultiviewsMatch|eta(Suffix|Dir|Files)|ax(RequestsPer(Child|Thread)|MemFree|Spare(Servers|Threads)|Clients|Threads(PerChild)?|KeepAliveRequests))|B(indAddress|S2000Account|rowserMatch(NoCase)?)|S(hmemUIDisUser|c(oreBoardFile|ript(Sock|InterpreterSource|Log(Buffer|Length)?|Alias(Match)?)?)|tart(Servers|Threads)|S(I(StartTag|TimeFormat|UndefinedEcho|E(ndTag|rrorMsg))|L(R(equire(SSL)?|andomSeed)|Mutex|SessionCache(Timeout)?|C(ipherSuite|ertificate(ChainFile|KeyFile|File)|A(Revocation(Path|File)|Certificate(Path|File)))|Options|P(assPhraseDialog|ro(tocol|xy(MachineCertificate(Path|File)|C(ipherSuite|A(Revocation(Path|File)|Certificate(Path|File)))|Protocol|Engine|Verify(Depth)?)))|Engine|Verify(Client|Depth)))|uexecUserGroup|e(ndBufferSize|cureListen|t(Handler|InputFilter|OutputFilter|Env(If(NoCase)?)?)|rver(Root|Signature|Name|T(ype|okens)|Path|Limit|A(dmin|lias)))|atisfy)|H(ostnameLookups|eader(Name)?)|N(o(Cache|Proxy)|umServers|ameVirtualHost|WSSL(TrustedCerts|Upgradeable))|C(h(ildPerUserID|eckSpelling|arset(SourceEnc|Options|Default))|GI(MapExtension|CommandArgs)|o(ntentDigest|okie(Style|Name|Tracking|Domain|Prefix|Expires|Format|Log)|reDumpDirectory)|ustomLog|learModuleList|ache(Root|Gc(MemUsage|Clean|Interval|Daily|Unused)|M(inFileSize|ax(Expire|FileSize))|Size|NegotiatedDocs|TimeMargin|Ignore(NoLastMod|CacheControl)|D(i(sable|rLe(ngth|vels))|efaultExpire)|E(nable|xpiryCheck)|F(ile|orceCompletion)|LastModifiedFactor))|T(hread(sPerChild|StackSize|Limit)|ypesConfig|ime(out|Out)|ransferLog)|I(n(clude|dex(Ignore|O(ptions|rderDefault)))|SAPI(ReadAheadBuffer|CacheFile|FakeAsync|LogNotSupported|AppendLogTo(Errors|Query))|dentityCheck|f(Module|Define)|map(Menu|Base|Default))|O(ptions|rder)|D(irectory(Match|Slash|Index)?|ocumentRoot|e(ny|f(late(MemLevel|BufferSize|CompressionLevel|FilterNote|WindowSize)|ault(Type|Icon|Language)))|av(MinTimeout|DepthInfinity|LockDB)?)|U(se(CanonicalName|r(Dir)?)|nsetEnv)|P(idFile|ort|assEnv|ro(tocol(ReqCheck|Echo)|xy(Re(ceiveBufferSize|quests|mote(Match)?)|Ma(tch|xForwards)|B(lock|adHeader)|Timeout|IOBufferSize|Domain|P(ass(Reverse)?|reserveHost)|ErrorOverride|Via)?))|E(nable(MMAP|Sendfile|ExceptionHook)|BCDIC(Convert(ByType)?|Kludge)|rror(Header|Document|Log)|x(t(endedStatus|Filter(Options|Define))|pires(ByType|Default|Active)|ample))|Virtual(ScriptAlias(IP)?|Host|DocumentRoot(IP)?)|KeepAlive(Timeout)?|F(ile(s(Match)?|ETag)|or(ce(Type|LanguagePriority)|ensicLog)|ancyIndexing)|Win32DisableAcceptEx|L(i(sten(Back(log|Log))?|mit(Request(Body|Field(s(ize)?|Size)|Line)|XMLRequestBody|InternalRecursion|Except)?)|o(c(kFile|ation(Match)?)|ad(Module|File)|g(Format|Level))|DAP(SharedCache(Size|File)|Cache(TTL|Entries)|TrustedCA(Type)?|OpCache(TTL|Entries))|anguagePriority)|A(ssignUserID|nonymous(_(MustGiveEmail|NoUserID|VerifyEmail|LogEmail|Authoritative))?|c(ce(ss(Config|FileName)|pt(Mutex|PathInfo|Filter))|tion)|dd(Module(Info)?|Handler|Charset|Type|I(nputFilter|con(By(Type|Encoding))?)|OutputFilter(ByType)?|De(scription|faultCharset)|Encoding|Language|Alt(By(Type|Encoding))?)|uth(GroupFile|Name|Type|D(B(GroupFile|M(GroupFile|Type|UserFile|Authoritative)|UserFile|Authoritative)|igest(GroupFile|ShmemSize|N(cCheck|once(Format|Lifetime))|Domain|Qop|File|Algorithm))|UserFile|LDAP(RemoteUserIsDN|GroupAttribute(IsDN)?|Bind(DN|Password)|C(harsetConfig|ompareDNOnServer)|DereferenceAliases|Url|Enabled|FrontPageHack|Authoritative)|Authoritative)|l(ias(Match)?|low(CONNECT|Override|EncodedSlashes)?)|gentLog)|MIMEMagicFile|WSGI(.[^ ]+))\\b"},{"name":"support.class.apache-config","match":"\\b(access_module|actions_module|action_module|alias_module|anon_auth_module|asis_module|authn_alias_module|authn_anon_module|authn_dbd_module|authn_dbm_module|authn_default_module|authn_file_module|authnz_ldap_module|authz_dbm_module|authz_default_module|authz_groupfile_module|authz_host_module|authz_owner_module|authz_user_module|auth_basic_module|auth_digest_module|auth_module|autoindex_module|bonjour_module|cache_module|cern_meta_module|cgi_module|config_log_module|dav_fs_module|dav_module|dbd_module|dbm_auth_module|deflate_module|digest_module|dir_module|disk_cache_module|dumpio_module|env_module|expires_module|ext_filter_module|fastcgi_module|filter_module|foo_module|headers_module|hfs_apple_module|ident_module|imagemap_module|imap_module|includes_module|include_module|info_module|jk_module|ldap_module|logio_module|log_config_module|log_forensic_module|mem_cache_module|mime_magic_module|mime_module|negotiation_module|perl_module|php4_module|php5_module|proxy_ajp_module|proxy_balancer_module|proxy_connect_module|proxy_ftp_module|proxy_http_module|proxy_module|rendezvous_apple_module|rendezvous_module|rewrite_module|setenvif_module|speling_module|ssl_module|status_module|suexec_module|substitute_module|unique_id_module|userdir_module|usertrack_module|version_module|vhost_alias_module|wsgi_module)\\b"},{"name":"string.quoted.double.apache-config","begin":"\"","end":"\"(?!\")","patterns":[{"name":"constant.character.escape.apostrophe.apache","match":"\"\""}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.apache-config"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.apache-config"}}},{"name":"meta.tag.apache-config","begin":"(\u003c/?)([a-zA-Z]+)","end":"(/?\u003e)","captures":{"1":{"name":"punctuation.definition.tag.apache-config"},"2":{"name":"entity.name.tag.apache-config"}}}],"repository":{"vars":{"patterns":[{"name":"support.variable.apache-config","match":"(%\\{)(?:API_VERSION|AUTH_TYPE|CONN_REMOTE_ADDR|CONTEXT_(?:PREFIX|DOCUMENT_ROOT)|DOCUMENT_ROOT|HTTP(S|_(?:ACCEPT|COOKIE|FORWARDED|HOST|PROXY_CONNECTION|REFERER|USER_AGENT))|IPV6|IS_SUBREQ|REMOTE_(?:ADDR|HOST|IDENT|PORT|USER)|REQUEST_(?:FILENAME|METHOD|SCHEME|URI)|SCRIPT_(?:FILENAME|GROUP|USER)|PATH_INFO|QUERY_STRING|SERVER_(?:ADDR|ADMIN|NAME|PORT|PROTOCOL|SOFTWARE)|THE_REQUEST|TIME_(?:YEAR|MON|DAY|HOUR|MIN|SEC|WDAY)|TIME|(?:ENV|HTTP|LA-F|LA-U|SSL):[^\\}]+)(\\})","captures":{"1":{"name":"punctuation.definition.variable.apache-config"},"3":{"name":"punctuation.definition.variable.apache-config"}}},{"name":"invalid.illegal.bad-var.apache-config","match":"%\\{[^\\}]+\\}"}]}}}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"name":"mod_perl","scopeName":"source.apache-config.mod_perl","patterns":[{"name":"comment.block.documentation.apache-config.mod_perl","begin":"^=","end":"^=cut","captures":{"0":{"name":"punctuation.definition.comment.mod_perl"}}},{"name":"support.constant.apache-config.mod_perl","match":"\\b(PerlAddVar|PerlConfigRequire|PerlLoadModule|PerlModule|PerlOptions|PerlPassEnv|PerlPostConfigRequire|PerlRequire|PerlSetEnv|PerlSetVar|PerlSwitches|SetHandler|PerlOpenLogsHandler|PerlPostConfigHandler|PerlChildInitHandler|PerlChildExitHandler|PerlPreConnectionHandler|PerlProcessConnectionHandler|PerlInputFilterHandler|PerlOutputFilterHandler|PerlSetInputFilter|PerlSetOutputFilter|PerlPostReadRequestHandler|PerlTransHandler|PerlMapToStorageHandler|PerlInitHandler|PerlHeaderParserHandler|PerlAccessHandler|PerlAuthenHandler|PerlAuthzHandler|PerlTypeHandler|PerlFixupHandler|PerlResponseHandler|PerlLogHandler|PerlCleanupHandler|PerlInterpStart|PerlInterpMax|PerlInterpMinSpare|PerlInterpMaxSpare|PerlInterpMaxRequests|PerlInterpScope|PerlTrace)\\b"},{"name":"support.constant.apache-config.mod_perl_1.mod_perl","match":"\\b(PerlHandler|PerlScript|PerlSendHeader|PerlSetupEnv|PerlTaintCheck|PerlWarn|PerlFreshRestart)\\b"},{"name":"meta.perl-section.apache-config.mod_perl","begin":"^\\s*((\u003c)(Perl)(\u003e))","end":"^\\s*((\u003c/)(Perl)(\u003e))","patterns":[{"include":"source.perl"}],"beginCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"punctuation.definition.tag.apache-config"}},"endCaptures":{"1":{"name":"meta.tag.apache-config"},"2":{"name":"punctuation.definition.tag.apache-config"},"3":{"name":"entity.name.tag.apache-config"},"4":{"name":"punctuation.definition.tag.apache-config"}}},{"include":"source.apache-config"}]}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"name":"CMake Cache","scopeName":"source.cache.cmake","patterns":[{"include":"#comments"},{"include":"#assignation"}],"repository":{"assignation":{"name":"variable.other.cmake","match":"([a-zA-Z0-9_\\-\\d]+)(:)(STRING|FILE|FILEPATH|BOOL|INTERNAL|STATIC)(\\=)(.*)","captures":{"1":{"name":"variable.language.cache.cmake"},"2":{"name":"keyword.other.argument-separator.cmake"},"3":{"name":"constant.language.cache.cmake"},"4":{"name":"keyword.operator.cmake"},"5":{"name":"string.unquoted.cmake"}}},"comments":{"patterns":[{"begin":"(^[ \\t]+)?(?=//|\\#)","end":"(?!\\G)","patterns":[{"name":"comment.line.double-slash.cmake","begin":"//","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.cmake"}}},{"name":"comment.line.sign-line.cmake","begin":"\\#","end":"\\n","beginCaptures":{"0":{"name":"punctuation.definition.comment.cmake"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.cmake"}}}]}}}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"name":"HTML (Erlang)","scopeName":"text.html.erlang.yaws","patterns":[{"contentName":"meta.embedded.block.erlang","begin":"(^\\s*)?(?=\u003cerl\u003e)","end":"(?!\\G)(\\s*\\n)?","patterns":[{"contentName":"source.erlang","begin":"(\u003c)(erl)(\u003e)","end":"((\u003c/))(erl)(\u003e)","patterns":[{"include":"source.erlang"}],"beginCaptures":{"0":{"name":"meta.tag.template.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"},"3":{"name":"punctuation.definition.tag.end.html"}},"endCaptures":{"0":{"name":"meta.tag.template.html"},"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"source.erlang"},"3":{"name":"entity.name.tag.html"},"4":{"name":"punctuation.definition.tag.end.html"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.embedded.leading.html"}},"endCaptures":{"1":{"name":"punctuation.whitespace.embedded.trailing.html"}}},{"include":"text.html.basic"}]}
|
data/grammars/text.html.vue.json
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
{"name":"Vue Component","scopeName":"text.html.vue","patterns":[{"include":"#vue-interpolations"},{"name":"meta.tag.any.html","begin":"(\u003c)([a-zA-Z0-9:-]++)(?=[^\u003e]*\u003e\u003c/\\2\u003e)","end":"(\u003e)(\u003c)(/)(\\2)(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.html"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"},"2":{"name":"punctuation.definition.tag.begin.html meta.scope.between-tag-pair.html"},"3":{"name":"punctuation.definition.tag.begin.html"},"4":{"name":"entity.name.tag.html"},"5":{"name":"punctuation.definition.tag.end.html"}}},{"name":"meta.tag.preprocessor.xml.html","begin":"(\u003c\\?)(xml)","end":"(\\?\u003e)","patterns":[{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}],"captures":{"1":{"name":"punctuation.definition.tag.html"},"2":{"name":"entity.name.tag.xml.html"}}},{"name":"comment.block.html","begin":"\u003c!--","end":"--\\s*\u003e","patterns":[{"name":"invalid.illegal.bad-comments-or-CDATA.html","match":"--"}],"captures":{"0":{"name":"punctuation.definition.comment.html"}}},{"name":"meta.tag.sgml.html","begin":"\u003c!","end":"\u003e","patterns":[{"name":"meta.tag.sgml.doctype.html","begin":"(?i:DOCTYPE)","end":"(?=\u003e)","patterns":[{"name":"string.quoted.double.doctype.identifiers-and-DTDs.html","match":"\"[^\"\u003e]*\""}],"captures":{"1":{"name":"entity.name.tag.doctype.html"}}},{"name":"constant.other.inline-data.html","begin":"\\[CDATA\\[","end":"]](?=\u003e)"},{"name":"invalid.illegal.bad-comments-or-CDATA.html","match":"(\\s*)(?!--|\u003e)\\S(\\s*)"}],"captures":{"0":{"name":"punctuation.definition.tag.html"}}},{"name":"text.slm.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:template))\\b(?=[^\u003e]*lang=(['\"])slm\\1?)","end":"(\u003c/)((?i:template))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:template))","patterns":[{"include":"text.slim"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"text.jade.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:template))\\b(?=[^\u003e]*lang=(['\"])jade\\1?)","end":"(\u003c/)((?i:template))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:template))","patterns":[{"include":"text.jade"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"text.pug.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:template))\\b(?=[^\u003e]*lang=(['\"])pug\\1?)","end":"(\u003c/)((?i:template))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:template))","patterns":[{"include":"text.jade"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.stylus.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?=[^\u003e]*lang=(['\"])stylus\\1?)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.stylus"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.postcss.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?=[^\u003e]*lang=(['\"])postcss\\1?)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.postcss"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.sass.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?=[^\u003e]*lang=(['\"])sass\\1?)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.sass"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.scss.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?=[^\u003e]*lang=(['\"])scss\\1?)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.css.scss"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.less.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?=[^\u003e]*lang=(['\"])less\\1?)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.css.less"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.css.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:style))\\b(?![^\u003e]*/\u003e)","end":"(\u003c/)((?i:style))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(\u003e)","end":"(?=\u003c/(?i:style))","patterns":[{"include":"source.css"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.style.html"},"3":{"name":"punctuation.definition.tag.html"}}},{"name":"source.ts.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:script))\\b(?=[^\u003e]*lang=(['\"])ts\\1?)","end":"(?\u003c=\u003c/(script|SCRIPT))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(?\u003c!\u003c/(?:script|SCRIPT))(\u003e)","end":"(\u003c/)((?i:script))","patterns":[{"include":"source.ts"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}},"endCaptures":{"2":{"name":"punctuation.definition.tag.html"}}},{"name":"source.coffee.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:script))\\b(?=[^\u003e]*lang=(['\"])coffee\\1?)","end":"(?\u003c=\u003c/(script|SCRIPT))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(?\u003c!\u003c/(?:script|SCRIPT))(\u003e)","end":"(\u003c/)((?i:script))","patterns":[{"include":"source.coffee"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}},"endCaptures":{"2":{"name":"punctuation.definition.tag.html"}}},{"name":"source.livescript.embedded.html","begin":"(?:^\\s+)?(\u003c)((?i:script))\\b(?=[^\u003e]*lang=(['\"])livescript\\1?)","end":"(?\u003c=\u003c/(script|SCRIPT))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(?\u003c!\u003c/(?:script|SCRIPT))(\u003e)","end":"(\u003c/)((?i:script))","patterns":[{"include":"source.livescript"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}},"endCaptures":{"2":{"name":"punctuation.definition.tag.html"}}},{"name":"source.js.embedded.html","begin":"(\u003c)((?i:script))\\b(?![^\u003e]*/\u003e)(?![^\u003e]*(?i:type.?=.?text/((?!javascript|babel|ecmascript).*)))","end":"(?\u003c=\u003c/(script|SCRIPT))(\u003e)(?:\\s*\\n)?","patterns":[{"include":"#tag-stuff"},{"begin":"(?\u003c!\u003c/(?:script|SCRIPT))(\u003e)","end":"(\u003c/)((?i:script))","patterns":[{"name":"comment.line.double-slash.js","match":"(//).*?((?=\u003c/script)|$\\n?)","captures":{"1":{"name":"punctuation.definition.comment.js"}}},{"name":"comment.block.js","begin":"/\\*","end":"\\*/|(?=\u003c/script)","captures":{"0":{"name":"punctuation.definition.comment.js"}}},{"include":"source.js"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}}}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.script.html"}},"endCaptures":{"2":{"name":"punctuation.definition.tag.html"}}},{"name":"meta.tag.structure.any.html","begin":"(\u003c/?)((?i:body|head|html)\\b)","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"captures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.structure.any.html"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}},{"name":"meta.tag.block.any.html","begin":"(\u003c/?)((?i:address|blockquote|dd|div|dl|dt|fieldset|form|frame|frameset|h1|h2|h3|h4|h5|h6|iframe|noframes|object|ol|p|ul|applet|center|dir|hr|menu|pre)\\b)","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.block.any.html"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}},{"name":"meta.tag.inline.any.html","begin":"(\u003c/?)((?i:a|abbr|acronym|area|b|base|basefont|bdo|big|br|button|caption|cite|code|col|colgroup|del|dfn|em|font|head|html|i|img|input|ins|isindex|kbd|label|legend|li|link|map|meta|noscript|optgroup|option|param|q|s|samp|script|select|small|span|strike|strong|style|sub|sup|table|tbody|td|textarea|tfoot|th|thead|title|tr|tt|u|var)\\b)","end":"((?: ?/)?\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.inline.any.html"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}},{"name":"meta.tag.other.html","begin":"(\u003c/?)([a-zA-Z0-9:-]+)","end":"(\u003e)","patterns":[{"include":"#tag-stuff"}],"beginCaptures":{"1":{"name":"punctuation.definition.tag.begin.html"},"2":{"name":"entity.name.tag.other.html"}},"endCaptures":{"1":{"name":"punctuation.definition.tag.end.html"}}},{"include":"#entities"},{"name":"invalid.illegal.incomplete.html","match":"\u003c\u003e"},{"name":"invalid.illegal.bad-angle-bracket.html","match":"\u003c"}],"repository":{"entities":{"patterns":[{"name":"constant.character.entity.html","match":"(\u0026)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)","captures":{"1":{"name":"punctuation.definition.entity.html"},"3":{"name":"punctuation.definition.entity.html"}}},{"name":"invalid.illegal.bad-ampersand.html","match":"\u0026"}]},"string-double-quoted":{"name":"string.quoted.double.html","begin":"\"","end":"\"","patterns":[{"include":"#vue-interpolations"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}},"string-single-quoted":{"name":"string.quoted.single.html","begin":"'","end":"'","patterns":[{"include":"#vue-interpolations"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}},"tag-generic-attribute":{"name":"entity.other.attribute-name.html","match":"\\b([a-zA-Z\\-:]+)"},"tag-id-attribute":{"name":"meta.attribute-with-value.id.html","begin":"\\b(id)\\b\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"string.quoted.double.html","contentName":"meta.toc-list.id.html","begin":"\"","end":"\"","patterns":[{"include":"#vue-interpolations"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}},{"name":"string.quoted.single.html","contentName":"meta.toc-list.id.html","begin":"'","end":"'","patterns":[{"include":"#vue-interpolations"},{"include":"#entities"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}}],"captures":{"1":{"name":"entity.other.attribute-name.id.html"},"2":{"name":"punctuation.separator.key-value.html"}}},"tag-stuff":{"patterns":[{"include":"#vue-directives"},{"include":"#tag-id-attribute"},{"include":"#tag-generic-attribute"},{"include":"#string-double-quoted"},{"include":"#string-single-quoted"}]},"vue-directives":{"name":"meta.directive.vue","begin":"(?:\\b(v-)|(:|@))([a-zA-Z\\-]+)(?:\\:([a-zA-Z\\-]+))?(?:\\.([a-zA-Z\\-]+))*\\s*(=)","end":"(?\u003c='|\")","patterns":[{"name":"source.directive.vue","begin":"\"","end":"\"","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}},{"name":"source.directive.vue","begin":"'","end":"'","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.html"}}}],"captures":{"1":{"name":"entity.other.attribute-name.html"},"2":{"name":"punctuation.separator.key-value.html"},"3":{"name":"entity.other.attribute-name.html"},"4":{"name":"entity.other.attribute-name.html"},"5":{"name":"entity.other.attribute-name.html"},"6":{"name":"punctuation.separator.key-value.html"}}},"vue-interpolations":{"patterns":[{"name":"expression.embbeded.vue","begin":"\\{\\{\\{?","end":"\\}\\}\\}?","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"punctuation.definition.generic.begin.html"}},"endCaptures":{"0":{"name":"punctuation.definition.generic.end.html"}}}]}}}
|
@@ -1 +0,0 @@
|
|
1
|
-
{"scopeName":"text.mdx.astro.codeblock","patterns":[{"name":"markup.code.astro.mdx","contentName":"meta.embedded.astro","begin":"(?:^|\\G)[\\t ]*(`{3,})(?:[\\t ]*((?i:(?:.*\\.)?astro))(?:[\\t ]+((?:[^\\n\\r`])+))?)(?:[\\t ]*$)","end":"(\\1)(?:[\\t ]*$)","patterns":[{"include":"#astro-code-block"}],"beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx"}},"endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}}},{"name":"markup.code.astro.mdx","contentName":"meta.embedded.astro","begin":"(?:^|\\G)[\\t ]*(~{3,})(?:[\\t ]*((?i:(?:.*\\.)?astro))(?:[\\t ]+((?:[^\\n\\r])+))?)(?:[\\t ]*$)","end":"(\\1)(?:[\\t ]*$)","patterns":[{"include":"#astro-code-block"}],"beginCaptures":{"1":{"name":"string.other.begin.code.fenced.mdx"},"2":{"name":"entity.name.function.mdx"}},"endCaptures":{"1":{"name":"string.other.end.code.fenced.mdx"}}}],"repository":{"astro-code-block":{"patterns":[{"contentName":"meta.embedded.block.astro.frontmatter","begin":"^\\s*---\\s*$","end":"^\\s*---\\s*$","patterns":[{"include":"source.tsx"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.xi.begin.t"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.xi.end.t"}}},{"include":"source.astro"}]}}}
|