github-linguist 7.27.0 → 7.28.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ext/linguist/lex.linguist_yy.c +313 -294
- data/ext/linguist/lex.linguist_yy.h +5 -4
- data/ext/linguist/tokenizer.l +5 -2
- data/grammars/inline.edgeql.json +1 -0
- data/grammars/inline.hbs.json +1 -0
- data/grammars/inline.template.json +1 -0
- data/grammars/markdown.lean4.codeblock.json +1 -0
- data/grammars/markdown.move.codeblock.json +1 -0
- data/grammars/mdx.LANGUAGE.codeblock.json +1 -0
- data/grammars/source.al.json +1 -1
- data/grammars/source.bicep.json +1 -1
- data/grammars/source.cds.json +1 -1
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.cs.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.denizenscript.json +1 -1
- data/grammars/source.dm.json +1 -1
- data/grammars/source.earthfile.json +1 -1
- data/grammars/source.edgeql.json +1 -0
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.gdresource.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.genero-4gl.json +1 -0
- data/grammars/source.genero-per.json +1 -0
- data/grammars/source.gjs.json +1 -0
- data/grammars/source.gsc.json +1 -1
- data/grammars/source.gts.json +1 -0
- data/grammars/source.hcl.json +1 -0
- data/grammars/source.hcl.terraform.json +1 -0
- data/grammars/source.ice.json +1 -0
- data/grammars/source.julia.json +1 -1
- data/grammars/source.kotlin.json +1 -1
- data/grammars/source.lean4.json +1 -0
- data/grammars/source.lean4.markdown.json +1 -0
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mdx.json +1 -1
- data/grammars/source.meta-info.json +1 -1
- data/grammars/source.nasal.json +1 -1
- data/grammars/source.nim.json +1 -1
- data/grammars/source.nushell.json +1 -1
- data/grammars/source.odin.json +1 -1
- data/grammars/source.praat.json +1 -0
- data/grammars/source.ql.json +1 -1
- data/grammars/source.raku.json +1 -1
- data/grammars/source.rego.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.rust.json +1 -1
- data/grammars/source.sentinel.json +1 -0
- data/grammars/source.slice.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.textgrid.json +1 -0
- data/grammars/source.toit.json +1 -0
- data/grammars/source.vba.json +1 -1
- data/grammars/source.viml.json +1 -1
- data/grammars/text.adblock.json +1 -1
- data/grammars/text.html.ember-handlebars.json +1 -0
- data/grammars/text.html.statamic.json +1 -1
- data/grammars/text.md.json +1 -1
- data/grammars/text.tex.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +4 -4
- data/lib/linguist/heuristics.yml +6 -0
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +63 -9
- data/lib/linguist/samples.json +1 -1
- metadata +23 -6
- data/grammars/govulncheck.json +0 -1
- data/grammars/source.dmf.json +0 -1
- data/grammars/source.genero-forms.json +0 -1
- data/grammars/source.genero.json +0 -1
data/grammars/text.tex.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"TeX","scopeName":"text.tex","patterns":[{"name":"keyword.control.tex","match":"(\\\\)(backmatter|else|fi|frontmatter|
|
1
|
+
{"name":"TeX","scopeName":"text.tex","patterns":[{"name":"keyword.control.tex","match":"(\\\\)(backmatter|csname|else|endcsname|fi|frontmatter|mainmatter|unless|if(case|cat|csname|defined|dim|eof|false|fontchar|hbox|hmode|inner|mmode|num|odd|true|vbox|vmode|void|x)?)\\b","captures":{"1":{"name":"punctuation.definition.keyword.tex"}}},{"name":"meta.catcode.tex","match":"((\\\\)catcode)`(?:\\\\)?.(=)(\\d+)","captures":{"1":{"name":"keyword.control.catcode.tex"},"2":{"name":"punctuation.definition.keyword.tex"},"3":{"name":"punctuation.separator.key-value.tex"},"4":{"name":"constant.numeric.category.tex"}}},{"begin":"(^[ \\t]+)?(?=%)","end":"(?!\\G)","patterns":[{"name":"comment.line.percentage.semicolon.texshop.tex","begin":"%:","end":"$\\n?","beginCaptures":{"0":{"name":"punctuation.definition.comment.tex"}}},{"name":"comment.line.percentage.directive.texshop.tex","begin":"^(%!TEX) (\\S*) =","end":"$\\n?","beginCaptures":{"1":{"name":"punctuation.definition.comment.tex"}}},{"name":"comment.line.percentage.tex","begin":"%","end":"$\\n?","beginCaptures":{"0":{"name":"punctuation.definition.comment.tex"}}}],"beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.tex"}}},{"name":"meta.group.braces.tex","begin":"\\{","end":"\\}","patterns":[{"include":"$base"}],"beginCaptures":{"0":{"name":"punctuation.section.group.begin.tex"}},"endCaptures":{"0":{"name":"punctuation.section.group.end.tex"}}},{"name":"punctuation.definition.brackets.tex","match":"[\\[\\]]"},{"name":"string.other.math.block.tex","begin":"\\$\\$","end":"\\$\\$","patterns":[{"include":"#math"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tex"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.tex"}}},{"name":"constant.character.newline.tex","match":"\\\\\\\\"},{"name":"string.other.math.tex","begin":"\\$","end":"\\$","patterns":[{"name":"constant.character.escape.tex","match":"\\\\\\$"},{"include":"#math"},{"include":"$self"}],"beginCaptures":{"0":{"name":"punctuation.definition.string.begin.tex"}},"endCaptures":{"0":{"name":"punctuation.definition.string.end.tex"}}},{"name":"support.function.general.tex","match":"(\\\\)[A-Za-z@]+","captures":{"1":{"name":"punctuation.definition.function.tex"}}},{"name":"constant.character.escape.tex","match":"(\\\\)[^a-zA-Z@]","captures":{"1":{"name":"punctuation.definition.keyword.tex"}}},{"name":"meta.placeholder.greek.tex","match":"«press a-z and space for greek letter»[a-zA-Z]*"}],"repository":{"math":{"patterns":[{"name":"constant.character.math.tex","match":"(\\\\)(s(s(earrow|warrow|lash)|h(ort(downarrow|uparrow|parallel|leftarrow|rightarrow|mid)|arp)|tar|i(gma|m(eq)?)|u(cc(sim|n(sim|approx)|curlyeq|eq|approx)?|pset(neq(q)?|plus(eq)?|eq(q)?)?|rd|m|bset(neq(q)?|plus(eq)?|eq(q)?)?)|p(hericalangle|adesuit)|e(tminus|arrow)|q(su(pset(eq)?|bset(eq)?)|c(up|ap)|uare)|warrow|m(ile|all(s(etminus|mile)|frown)))|h(slash|ook(leftarrow|rightarrow)|eartsuit|bar)|R(sh|ightarrow|e|bag)|Gam(e|ma)|n(s(hort(parallel|mid)|im|u(cc(eq)?|pseteq(q)?|bseteq))|Rightarrow|n(earrow|warrow)|cong|triangle(left(eq(slant)?)?|right(eq(slant)?)?)|i(plus)?|u|p(lus|arallel|rec(eq)?)|e(q|arrow|g|xists)|v(dash|Dash)|warrow|le(ss|q(slant|q)?|ft(arrow|rightarrow))|a(tural|bla)|VDash|rightarrow|g(tr|eq(slant|q)?)|mid|Left(arrow|rightarrow))|c(hi|irc(eq|le(d(circ|S|dash|ast)|arrow(left|right)))?|o(ng|prod|lon|mplement)|dot(s|p)?|u(p|r(vearrow(left|right)|ly(eq(succ|prec)|vee(downarrow|uparrow)?|wedge(downarrow|uparrow)?)))|enterdot|lubsuit|ap)|Xi|Maps(to(char)?|from(char)?)|B(ox|umpeq|bbk)|t(h(ick(sim|approx)|e(ta|refore))|imes|op|wohead(leftarrow|rightarrow)|a(u|lloblong)|riangle(down|q|left(eq(slant)?)?|right(eq(slant)?)?)?)|i(n(t(er(cal|leave))?|plus|fty)?|ota|math)|S(igma|u(pset|bset))|zeta|o(slash|times|int|dot|plus|vee|wedge|lessthan|greaterthan|m(inus|ega)|b(slash|long|ar))|d(i(v(ideontimes)?|a(g(down|up)|mond(suit)?)|gamma)|o(t(plus|eq(dot)?)|ublebarwedge|wn(harpoon(left|right)|downarrows|arrow))|d(ots|agger)|elta|a(sh(v|leftarrow|rightarrow)|leth|gger))|Y(down|up|left|right)|C(up|ap)|u(n(lhd|rhd)|p(silon|harpoon(left|right)|downarrow|uparrows|lus|arrow)|lcorner|rcorner)|jmath|Theta|Im|p(si|hi|i(tchfork)?|erp|ar(tial|allel)|r(ime|o(d|pto)|ec(sim|n(sim|approx)|curlyeq|eq|approx)?)|m)|e(t(h|a)|psilon|q(slant(less|gtr)|circ|uiv)|ll|xists|mptyset)|Omega|D(iamond|ownarrow|elta)|v(d(ots|ash)|ee(bar)?|Dash|ar(s(igma|u(psetneq(q)?|bsetneq(q)?))|nothing|curly(vee|wedge)|t(heta|imes|riangle(left|right)?)|o(slash|circle|times|dot|plus|vee|wedge|lessthan|ast|greaterthan|minus|b(slash|ar))|p(hi|i|ropto)|epsilon|kappa|rho|bigcirc))|kappa|Up(silon|downarrow|arrow)|Join|f(orall|lat|a(t(s(emi|lash)|bslash)|llingdotseq)|rown)|P(si|hi|i)|w(p|edge|r)|l(hd|n(sim|eq(q)?|approx)|ceil|times|ightning|o(ng(left(arrow|rightarrow)|rightarrow|maps(to|from))|zenge|oparrow(left|right))|dot(s|p)|e(ss(sim|dot|eq(qgtr|gtr)|approx|gtr)|q(slant|q)?|ft(slice|harpoon(down|up)|threetimes|leftarrows|arrow(t(ail|riangle))?|right(squigarrow|harpoons|arrow(s|triangle|eq)?))|adsto)|vertneqq|floor|l(c(orner|eil)|floor|l|bracket)?|a(ngle|mbda)|rcorner|bag)|a(s(ymp|t)|ngle|pprox(eq)?|l(pha|eph)|rrownot|malg)|V(dash|vdash)|r(h(o|d)|ceil|times|i(singdotseq|ght(s(quigarrow|lice)|harpoon(down|up)|threetimes|left(harpoons|arrows)|arrow(t(ail|riangle))?|rightarrows))|floor|angle|r(ceil|parenthesis|floor|bracket)|bag)|g(n(sim|eq(q)?|approx)|tr(sim|dot|eq(qless|less)|less|approx)|imel|eq(slant|q)?|vertneqq|amma|g(g)?)|Finv|xi|m(ho|i(nuso|d)|o(o|dels)|u(ltimap)?|p|e(asuredangle|rge)|aps(to|from(char)?))|b(i(n(dnasrepma|ampersand)|g(s(tar|qc(up|ap))|nplus|c(irc|u(p|rly(vee|wedge))|ap)|triangle(down|up)|interleave|o(times|dot|plus)|uplus|parallel|vee|wedge|box))|o(t|wtie|x(slash|circle|times|dot|plus|empty|ast|minus|b(slash|ox|ar)))|u(llet|mpeq)|e(cause|t(h|ween|a))|lack(square|triangle(down|left|right)?|lozenge)|a(ck(s(im(eq)?|lash)|prime|epsilon)|r(o|wedge))|bslash)|L(sh|ong(left(arrow|rightarrow)|rightarrow|maps(to|from))|eft(arrow|rightarrow)|leftarrow|ambda|bag)|Arrownot)\\b","captures":{"1":{"name":"punctuation.definition.constant.math.tex"}}},{"name":"constant.character.math.tex","match":"(\\\\)(sum|prod|coprod|int|oint|bigcap|bigcup|bigsqcup|bigvee|bigwedge|bigodot|bigotimes|bogoplus|biguplus)\\b","captures":{"1":{"name":"punctuation.definition.constant.math.tex"}}},{"name":"constant.other.math.tex","match":"(\\\\)(arccos|arcsin|arctan|arg|cos|cosh|cot|coth|csc|deg|det|dim|exp|gcd|hom|inf|ker|lg|lim|liminf|limsup|ln|log|max|min|pr|sec|sin|sinh|sup|tan|tanh)\\b","captures":{"1":{"name":"punctuation.definition.constant.math.tex"}}},{"name":"meta.embedded.line.r","contentName":"support.function.sexpr.math.tex","begin":"((\\\\)Sexpr(\\{))","end":"(((\\})))","patterns":[{"name":"source.r","begin":"\\G(?!\\})","end":"(?=\\})","patterns":[{"include":"source.r"}]}],"beginCaptures":{"1":{"name":"support.function.sexpr.math.tex"},"2":{"name":"punctuation.definition.function.math.tex"},"3":{"name":"punctuation.section.embedded.begin.math.tex"}},"endCaptures":{"1":{"name":"support.function.sexpr.math.tex"},"2":{"name":"punctuation.section.embedded.end.math.tex"},"3":{"name":"source.r"}}},{"name":"constant.other.general.math.tex","match":"(\\\\)([^a-zA-Z]|[A-Za-z]+)(?=\\b|\\}|\\]|\\^|\\_)","captures":{"1":{"name":"punctuation.definition.constant.math.tex"}}},{"name":"constant.numeric.math.tex","match":"(([0-9]*[\\.][0-9]+)|[0-9]+)"},{"name":"meta.placeholder.greek.math.tex","match":"«press a-z and space for greek letter»[a-zA-Z]*"}]}}}
|
data/grammars/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
7.
|
1
|
+
7.28.0
|
data/lib/linguist/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
7.
|
1
|
+
7.28.0
|
data/lib/linguist/generated.rb
CHANGED
@@ -301,7 +301,7 @@ module Linguist
|
|
301
301
|
|
302
302
|
# Type 1 and Type 42 fonts converted to PostScript are stored as hex-encoded byte streams; these
|
303
303
|
# streams are always preceded the `eexec` operator (if Type 1), or the `/sfnts` key (if Type 42).
|
304
|
-
return true if data =~
|
304
|
+
return true if data =~ /^\s*(?:currentfile eexec\s+|\/sfnts\s+\[\s<)/
|
305
305
|
|
306
306
|
# We analyze the "%%Creator:" comment, which contains the author/generator
|
307
307
|
# of the file. If there is one, it should be in one of the first few lines.
|
@@ -693,8 +693,8 @@ module Linguist
|
|
693
693
|
def generated_gimp?
|
694
694
|
return false unless ['.c', '.h'].include? extname
|
695
695
|
return false unless lines.count > 0
|
696
|
-
return lines[0].match(
|
697
|
-
lines[0].match(
|
696
|
+
return lines[0].match(/^\/\* GIMP [a-zA-Z0-9\- ]+ C\-Source image dump \(.+?\.c\) \*\//) ||
|
697
|
+
lines[0].match(/^\/\* GIMP header image file format \([a-zA-Z0-9\- ]+\)\: .+?\.h \*\//)
|
698
698
|
end
|
699
699
|
|
700
700
|
# Internal: Is this a generated Microsoft Visual Studio 6.0 build file?
|
@@ -795,7 +795,7 @@ module Linguist
|
|
795
795
|
return false unless lines.count >= 5
|
796
796
|
lines[0].match?(/^# typed:/) &&
|
797
797
|
lines[2].include?("DO NOT EDIT MANUALLY") &&
|
798
|
-
lines[4].match?(/^# Please
|
798
|
+
lines[4].match?(/^# Please (run|instead update this file by running) `bin\/tapioca/)
|
799
799
|
end
|
800
800
|
|
801
801
|
# Internal: Is this an HTML coverage report?
|
data/lib/linguist/heuristics.yml
CHANGED
@@ -388,6 +388,12 @@ disambiguations:
|
|
388
388
|
pattern: '^\.[A-Za-z]{2}(\s|$)'
|
389
389
|
- language: PicoLisp
|
390
390
|
pattern: '^\((de|class|rel|code|data|must)\s'
|
391
|
+
- extensions: ['.lean']
|
392
|
+
rules:
|
393
|
+
- language: Lean
|
394
|
+
pattern: '^import [a-z]'
|
395
|
+
- language: Lean 4
|
396
|
+
pattern: '^import [A-Z]'
|
391
397
|
- extensions: ['.ls']
|
392
398
|
rules:
|
393
399
|
- language: LoomScript
|