github-linguist 7.21.0 → 7.23.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 +584 -498
- data/ext/linguist/lex.linguist_yy.h +2 -3
- data/ext/linguist/tokenizer.l +52 -15
- data/grammars/inline.graphql.json +1 -0
- data/grammars/inline.graphql.php.json +1 -0
- data/grammars/inline.graphql.python.json +1 -0
- data/grammars/inline.graphql.re.json +1 -0
- data/grammars/inline.graphql.res.json +1 -0
- data/grammars/inline.prisma.json +1 -1
- data/grammars/liquid.injection.json +1 -1
- data/grammars/markdown.graphql.codeblock.json +1 -0
- data/grammars/markdown.rescript.codeblock.json +1 -0
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abapcds.json +1 -1
- data/grammars/source.astro.json +1 -1
- data/grammars/source.ats.json +1 -1
- data/grammars/source.bicep.json +1 -1
- data/grammars/source.brs.json +1 -1
- data/grammars/source.cds.json +1 -1
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.context.json +1 -0
- data/grammars/source.cs.json +1 -1
- data/grammars/source.curry.json +1 -1
- data/grammars/source.dart.json +1 -1
- data/grammars/source.denizenscript.json +1 -1
- data/grammars/source.ditroff.json +1 -1
- data/grammars/source.elvish-transcript.json +1 -0
- data/grammars/source.elvish.in.markdown.json +1 -0
- data/grammars/source.elvish.json +1 -0
- data/grammars/source.fsharp.json +1 -1
- data/grammars/source.ftl.json +1 -1
- data/grammars/source.gcode.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.gdshader.json +1 -1
- data/grammars/source.gemini.json +1 -0
- data/grammars/source.graphql.json +1 -1
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hocon.json +1 -0
- data/grammars/source.json.json +1 -1
- data/grammars/source.jsonnet.json +1 -1
- data/grammars/source.kusto.json +1 -1
- data/grammars/source.livescript.json +1 -1
- data/grammars/source.mo.json +1 -1
- data/grammars/source.move.json +1 -0
- data/grammars/source.nix.json +1 -1
- data/grammars/source.pic.json +1 -1
- data/grammars/source.pony.json +1 -1
- data/grammars/source.postscript.json +1 -1
- data/grammars/source.ql.json +1 -1
- data/grammars/source.rego.json +1 -1
- data/grammars/source.rescript.json +1 -1
- data/grammars/source.rsc.json +1 -0
- data/grammars/source.scala.json +1 -1
- data/grammars/source.sexp.json +1 -0
- data/grammars/source.stan.json +1 -1
- data/grammars/source.svelte.json +1 -1
- data/grammars/source.ts.json +1 -1
- data/grammars/source.ts.prismaClientRawSQL.json +1 -0
- data/grammars/source.tsx.json +1 -1
- data/grammars/source.v.json +1 -1
- data/grammars/source.velocity.html.json +1 -0
- data/grammars/source.velocity.json +1 -0
- data/grammars/source.wren.json +1 -0
- data/grammars/source.wsd.json +1 -1
- data/grammars/source.xojo.json +1 -1
- data/grammars/text.adblock.json +1 -0
- data/grammars/text.checksums.json +1 -1
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.statamic.json +1 -1
- data/grammars/text.info.json +1 -1
- data/grammars/text.marko.json +1 -1
- data/grammars/text.restructuredtext.json +1 -1
- data/grammars/text.roff.json +1 -1
- data/grammars/text.texinfo.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/blob_helper.rb +2 -2
- data/lib/linguist/generated.rb +2 -2
- data/lib/linguist/generic.yml +1 -0
- data/lib/linguist/heuristics.yml +50 -2
- data/lib/linguist/language.rb +3 -4
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +96 -1
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/vendor.yml +1 -1
- metadata +32 -11
data/grammars/text.texinfo.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"Texinfo","scopeName":"text.texinfo","patterns":[{"match":"\\A\\s*((\\\\)input)\\s+([^@\\s\\x7F]+)","captures":{"1":{"name":"support.function.general.tex"},"2":{"name":"punctuation.definition.function.tex"},"3":{"name":"support.constant.language.other.tex"}}},{"include":"#main"}],"repository":{"alias":{"name":"meta.command.alias.texinfo","match":"((@)alias)\\s+([^=\\s]+)\\s*(=)\\s*([^=\\s]+)","captures":{"1":{"name":"keyword.operator.command.alias.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"entity.name.function.alias.texinfo"},"4":{"name":"punctuation.separator.separator.texinfo"},"5":{"name":"entity.name.function.source.texinfo"}}},"blockCommands":{"name":"meta.command.$3.block.texinfo","begin":"(?x) ((@)\n(cartouche|copying|direntry|display|documentdescription|enumerate\n|float|flushleft|flushright|format|ftable|group|itemize|multitable\n|raggedright|smalldisplay|smallformat|smallindentedblock|table\n|titlepage|vtable))\n(?=\\s|$)(.*)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"patterns":[{"include":"#param"},{"include":"#main"}]}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"boldText":{"patterns":[{"name":"meta.command.$3.braced.texinfo","contentName":"markup.bold.texinfo","begin":"((@)(b|strong))({)","end":"}","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},{"name":"meta.command.$3.line.texinfo","contentName":"markup.heading.string.unquoted.texinfo","begin":"(?x) ^ ((@)\n(appendixsection|appendixsec|appendixsubsec|appendixsubsubsec|appendix\n|chapheading|chapter|heading|majorheading|section|subheading|subsection\n|subsubheading|subsubsection|top|unnumberedsec|unnumberedsubsec\n|unnumberedsubsubsec|unnumbered))\n(?=\\s|$)","end":"$","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"markup.bold.texinfo"},"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"booleanCommands":{"patterns":[{"name":"meta.command.headings.texinfo","match":"((@)headings)\\s+(?:(on)|(off)|(single|double))\\b","captures":{"1":{"name":"keyword.operator.command.headings.texinfo"},"2":{"name":"punctuation.defining.function.texinfo"},"3":{"name":"constant.language.boolean.true.texinfo"},"4":{"name":"constant.language.boolean.false.texinfo"},"5":{"name":"constant.language.heading-type.$5.texinfo"}}},{"name":"meta.command.setchapternewpage.texinfo","match":"((@)setchapternewpage)\\s+(?:(on)|(off)|(odd))\\b","captures":{"1":{"name":"keyword.operator.command.headings.texinfo"},"2":{"name":"punctuation.defining.function.texinfo"},"3":{"name":"constant.language.boolean.true.texinfo"},"4":{"name":"constant.language.boolean.false.texinfo"},"5":{"name":"constant.language.odd.texinfo"}}},{"name":"meta.command.$3.texinfo","match":"((@)(allowcodebreaks))\\s+(true|false)(?=\\s|$)","captures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"constant.language.boolean.$4.texinfo"}}},{"name":"meta.command.$3.texinfo","match":"(?x) ((@)\n(codequotebacktick|codequoteundirected|deftypefnnewline\n|frenchspacing|validatemenus|xrefautomaticsectiontitle))\n\\s+ (?:(on)|(off)) \\b","captures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"constant.language.boolean.true.texinfo"},"5":{"name":"constant.language.boolean.false.texinfo"}}}]},"codeBlocks":{"patterns":[{"name":"meta.command.$3.block.texinfo","contentName":"source.embedded.emacs.lisp","begin":"((@)(lisp|smalllisp))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"source.emacs.lisp"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.block.texinfo","contentName":"markup.raw.texinfo","begin":"((@)(example|smallexample|verbatim))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"comma":{"name":"punctuation.separator.delimiter.comma.texinfo","match":","},"command":{"patterns":[{"name":"meta.command.braced.texinfo","begin":"((@)(\\w+))({)","end":"}","patterns":[{"include":"#param"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},{"name":"keyword.operator.command.$2.texinfo","match":"(@)(\\w+)","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}}]},"comments":{"patterns":[{"name":"comment.line.at-sign.texinfo","begin":"((@)c(?:omment)?)(?=$|[^-A-Za-z0-9])","end":"$","beginCaptures":{"1":{"name":"keyword.operator.command.start-comment.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"comment.line.tex-style.texinfo","begin":"\\x7F","end":"$","beginCaptures":{"0":{"name":"punctuation.whitespace.delete.texinfo"}}}]},"conditionals":{"patterns":[{"name":"meta.command.$3.conditional.block.texinfo","begin":"((@)(ifclear|ifcommanddefined|ifcommandnotdefined|ifset))\\s+(\\S+)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"variable.parameter.texinfo"}},"endCaptures":{"1":{"name":"keyword.control.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.conditional.block.texinfo","begin":"(?x) ((@)\n(ifdocbook|ifhtml|ifinfo|ifnotdocbook|ifnothtml|ifnotinfo|ifnotplaintext\n|ifnottex|ifnotxml|ifplaintext|iftex|ifxml))\n(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"variable.parameter.texinfo"}},"endCaptures":{"1":{"name":"keyword.control.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"dashes":{"patterns":[{"name":"constant.character.dash.em-dash.texinfo","match":"---"},{"name":"constant.character.dash.en-dash.texinfo","match":"--"}]},"definitions":{"patterns":[{"name":"meta.command.$3.line.texinfo","begin":"((@)(defcodeindex|defindex|defopt|defoptx|defvar|defvarx))(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.var.texinfo","match":"\\G\\s*(?:({)[^}]*(})|\\S+)","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defcvx|defcv|defopx|defop))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deffnx|deffn|deftpx|deftp|defvrx|defvr))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(definfoenclose))(?=\\s|$)","end":"$","patterns":[{"match":"\\G\\s*(({)[^}]*(})|[^\\s,]+)","captures":{"1":{"name":"entity.name.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"}}},{"name":"string.unquoted.texinfo","match":"[^\\s,@]+"},{"include":"#comma"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defivarx|defivar|defmethodx|defmethod))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"entity.other.inherited-class.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defmacx|defmac|defunx|defun|defspecx|defspec))(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.function.texinfo","match":"\\G\\s*(?:({)[^}]*(})|\\S+)","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypecvx|deftypecv|deftypevrx|deftypevr))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"10":{"name":"entity.name.var.texinfo"},"11":{"name":"punctuation.definition.begin.texinfo"},"12":{"name":"punctuation.definition.end.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"storage.type.var.data-type.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypefnx|deftypefn))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"storage.type.var.data-type.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypefunx|deftypefun))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.data-type.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypemethodx|deftypemethod|deftypeivarx|deftypeivar))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"entity.other.inherited-class.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"storage.type.var.data-type.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypeopx|deftypeop))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"10":{"name":"entity.name.var.texinfo"},"11":{"name":"punctuation.definition.begin.texinfo"},"12":{"name":"punctuation.definition.end.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"storage.type.var.data-type.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypevarx|deftypevar))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.data-type.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"ignored":{"patterns":[{"name":"meta.command.ignore.block.texinfo","contentName":"comment.block.ignored.texinfo","begin":"((@)ignore)(?=\\s|$)","end":"((@)end\\s+ignore)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.ignore.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-ignore.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.bye.block.texinfo","contentName":"comment.block.ignored.texinfo","begin":"^((@)bye)(?=\\s|$)","end":"(?=A)B","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.bye.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"italicText":{"name":"meta.command.$3.braced.texinfo","contentName":"markup.italic.texinfo","begin":"((@)(i|emph|sc|slanted))({)","end":"}","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},"lineCommands":{"name":"meta.command.$3.line.texinfo","contentName":"markup.raw.texinfo","begin":"(?x) ^ ((@)\n(author|centerchap|center|cindex|clear|defcodeindex|defcvx|defcv|deffnx\n|deffn|defindex|definfoenclose|defivarx|defivar|defmacx|defmac|defmethodx\n|defmethod|defoptx|defopt|defopx|defop|defspecx|defspec|deftpx|deftp\n|deftypecvx|deftypecv|deftypefnx|deftypefn|deftypefunx|deftypefun\n|deftypeivarx|deftypeivar|deftypemethodx|deftypemethod|deftypeopx\n|deftypeop|deftypevarx|deftypevar|deftypevrx|deftypevr|defunx|defun\n|defvarx|defvar|defvrx|defvr|dircategory|documentencoding|documentlanguage\n|enumerate|evenfooting|even|everyfooting|everyexampleindent|exdent|findex\n|firstparagraphindent|fonttextsize|footnotestyle|ftable|include|itemize\n|kbdinputstyle|kindex|macro|multitable|need|node|oddfooting|oddpagesizes\n|paragraphindent|part|pindex|printindex|setfilename|settitle|set\n|shorttitlepage|sortas|sp|strong|subtitle|sub|sup|syncodeindex|synindex\n|table|tindex|title|unmacro|urefbreakstyle|verbatiminclude|vindex|vskip|vtable))\n(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.function.macro.texinfo","match":"\\G(?\u003c=@macro)\\s*(\\S+)"},{"match":"\\G(?:\\s*[-+]?[0-9]+(?:\\.[0-9]+)?,?)+(?=\\s*$)","captures":{"0":{"patterns":[{"name":"constant.numeric.float.texinfo","match":"[-+]?\\d+(?:\\.\\d+)"},{"name":"constant.numeric.int.texinfo","match":"[-+]?\\d+"},{"include":"#comma"}]}}},{"name":"keyword.operator.command.separator.texinfo","match":"(@)\\|","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"include":"#param"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"main":{"patterns":[{"include":"#comments"},{"include":"#dashes"},{"include":"#texLine"},{"include":"#alias"},{"include":"#menu"},{"include":"#booleanCommands"},{"include":"#symbolCommands"},{"include":"#set"},{"include":"#definitions"},{"include":"#quotation"},{"include":"#boldText"},{"include":"#italicText"},{"include":"#verbatim"},{"include":"#codeBlocks"},{"include":"#conditionals"},{"include":"#blockCommands"},{"include":"#lineCommands"},{"include":"#ignored"},{"include":"#rawTex"},{"include":"#rawHTML"},{"include":"#rawXML"},{"include":"#command"}]},"menu":{"name":"meta.command.$3.block.texinfo","begin":"((@)(detailmenu|direntry|menu))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"name":"markup.list.texinfo","begin":"^\\*\\s","end":"^(?=\\S)","patterns":[{"contentName":"entity.name.tag.entry-name.texinfo","begin":"\\G","end":"::?|(?=\\s*$)","patterns":[{"include":"#main"}],"endCaptures":{"0":{"name":"punctuation.separator.key-value.menu.texinfo"}}},{"contentName":"entity.name.node-name.texinfo","begin":"(?\u003c=[^:]:)\\s*","end":"(\\.)|(?=\\s*$)","patterns":[{"include":"#main"}],"endCaptures":{"1":{"name":"punctuation.terminator.full-stop.period.texinfo"}}},{"name":"string.unquoted.description.texinfo","begin":"(?\u003c=::|\\.)","end":"^(?=\\S)","patterns":[{"include":"#main"}]}],"beginCaptures":{"0":{"name":"punctuation.definition.list.menu.texinfo"}}},{"name":"constant.other.menu-comment.texinfo","begin":"^(?=[^\\s*])(?!@end\\s)","end":"$|(?=\\s*@end\\s)","patterns":[{"include":"#main"}]},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"param":{"name":"variable.parameter.texinfo","match":"[^\\s{}@,]+|(?\u003c=\\s)({)[^\\s{}@,]+(})","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},"quotation":{"name":"meta.command.$3.block.texinfo","contentName":"markup.quote.texinfo","begin":"((@)(quotation|smallquotation))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawHTML":{"name":"meta.command.raw-html.block.texinfo","contentName":"source.embedded.html","begin":"((@)html)(?=\\s|$)","end":"((@)end\\s+html)\\b","patterns":[{"include":"#main"},{"include":"text.html.basic"}],"beginCaptures":{"1":{"name":"keyword.operator.command.html.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-html.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawTex":{"name":"meta.command.raw-tex.block.texinfo","contentName":"source.embedded.tex","begin":"((@)tex)(?=\\s|$)","end":"((@)end\\s+tex)\\b","patterns":[{"include":"#main"},{"include":"text.tex.latex"}],"beginCaptures":{"1":{"name":"keyword.operator.command.tex.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-tex.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawXML":{"name":"meta.command.raw-$3.block.texinfo","contentName":"source.embedded.xml","begin":"((@)(docbook|xml))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"},{"include":"text.xml"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"set":{"begin":"((@)set)(?=\\s|$)","end":"$","patterns":[{"match":"\\G\\s*(\\S+)","captures":{"1":{"name":"entity.name.var.texinfo","patterns":[{"include":"#main"}]}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.set.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"symbolCommands":{"patterns":[{"name":"keyword.operator.command.non-alphabetic.texinfo","match":"(@)[-!\"'\u0026*./:=?@\\\\^`{}~]","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"name":"keyword.operator.command.whitespace.texinfo","match":"(@)(?:( |\\t)|$)","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.braced.texinfo","begin":"((@),)({)","end":"}","patterns":[{"name":"constant.character.texinfo","match":"[^\\s{}@,]+"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.cedilla-accent.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}}]},"verbatim":{"name":"meta.command.braced.verb.texinfo","contentName":"string.quoted.other.verbatim.texinfo","begin":"((@)verb)({)([^}])","end":"(\\4)(})","beginCaptures":{"1":{"name":"keyword.operator.command.verb.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"punctuation.section.scope.begin.texinfo"},"4":{"name":"punctuation.arbitrary.delimiter.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"},"1":{"name":"punctuation.arbitrary.delimiter.end.texinfo"}}}}}
|
1
|
+
{"name":"Texinfo","scopeName":"text.texinfo","patterns":[{"match":"\\A\\s*((\\\\)input)\\s+([^@\\s\\x7F]+)","captures":{"1":{"name":"support.function.general.tex"},"2":{"name":"punctuation.definition.function.tex"},"3":{"name":"support.constant.language.other.tex"}}},{"include":"#main"}],"repository":{"alias":{"name":"meta.command.alias.texinfo","match":"((@)alias)\\s+([^=\\s]+)\\s*(=)\\s*([^=\\s]+)","captures":{"1":{"name":"keyword.operator.command.alias.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"entity.name.function.alias.texinfo"},"4":{"name":"punctuation.separator.separator.texinfo"},"5":{"name":"entity.name.function.source.texinfo"}}},"blockCommands":{"name":"meta.command.$3.block.texinfo","begin":"(?x) ((@)\n(cartouche|copying|direntry|display|documentdescription|enumerate\n|float|flushleft|flushright|format|ftable|group|itemize|multitable\n|raggedright|smalldisplay|smallformat|smallindentedblock|table\n|titlepage|vtable))\n(?=\\s|$)(.*)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"patterns":[{"include":"#param"},{"include":"#main"}]}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"boldText":{"patterns":[{"name":"meta.command.$3.braced.texinfo","contentName":"markup.bold.texinfo","begin":"((@)(b|strong))({)","end":"}","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},{"name":"meta.command.$3.line.texinfo","contentName":"markup.heading.string.unquoted.texinfo","begin":"(?x) ^ ((@)\n(appendixsection|appendixsec|appendixsubsec|appendixsubsubsec|appendix\n|chapheading|chapter|heading|majorheading|section|subheading|subsection\n|subsubheading|subsubsection|top|unnumberedsec|unnumberedsubsec\n|unnumberedsubsubsec|unnumbered))\n(?=\\s|$)","end":"$","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"markup.bold.texinfo"},"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"booleanCommands":{"patterns":[{"name":"meta.command.headings.texinfo","match":"((@)headings)\\s+(?:(on)|(off)|(single|double))\\b","captures":{"1":{"name":"keyword.operator.command.headings.texinfo"},"2":{"name":"punctuation.defining.function.texinfo"},"3":{"name":"constant.language.boolean.true.texinfo"},"4":{"name":"constant.language.boolean.false.texinfo"},"5":{"name":"constant.language.heading-type.$5.texinfo"}}},{"name":"meta.command.setchapternewpage.texinfo","match":"((@)setchapternewpage)\\s+(?:(on)|(off)|(odd))\\b","captures":{"1":{"name":"keyword.operator.command.headings.texinfo"},"2":{"name":"punctuation.defining.function.texinfo"},"3":{"name":"constant.language.boolean.true.texinfo"},"4":{"name":"constant.language.boolean.false.texinfo"},"5":{"name":"constant.language.odd.texinfo"}}},{"name":"meta.command.$3.texinfo","match":"((@)(allowcodebreaks))\\s+(true|false)(?=\\s|$)","captures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"constant.language.boolean.$4.texinfo"}}},{"name":"meta.command.$3.texinfo","match":"(?x) ((@)\n(codequotebacktick|codequoteundirected|deftypefnnewline\n|frenchspacing|validatemenus|xrefautomaticsectiontitle))\n\\s+ (?:(on)|(off)) \\b","captures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"constant.language.boolean.true.texinfo"},"5":{"name":"constant.language.boolean.false.texinfo"}}}]},"codeBlocks":{"patterns":[{"name":"meta.command.$3.block.texinfo","contentName":"source.embedded.emacs.lisp","begin":"((@)(lisp|smalllisp))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"source.emacs.lisp"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.block.texinfo","contentName":"markup.raw.texinfo","begin":"((@)(example|smallexample|verbatim))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"comma":{"name":"punctuation.separator.delimiter.comma.texinfo","match":","},"command":{"patterns":[{"name":"meta.command.braced.texinfo","begin":"((@)(\\w+))({)","end":"}","patterns":[{"include":"#param"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},{"name":"keyword.operator.command.$2.texinfo","match":"(@)(\\w+)","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}}]},"comments":{"patterns":[{"name":"comment.line.at-sign.texinfo","begin":"((@)c(?:omment)?)(?=$|[^-A-Za-z0-9])","end":"$","beginCaptures":{"1":{"name":"keyword.operator.command.start-comment.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"comment.line.tex-style.texinfo","begin":"\\x7F","end":"$","beginCaptures":{"0":{"name":"punctuation.whitespace.delete.texinfo"}}}]},"conditionals":{"patterns":[{"name":"meta.command.$3.conditional.block.texinfo","begin":"((@)(ifclear|ifcommanddefined|ifcommandnotdefined|ifset))\\s+(\\S+)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"variable.parameter.texinfo"}},"endCaptures":{"1":{"name":"keyword.control.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.conditional.block.texinfo","begin":"(?x) ((@)\n(ifdocbook|ifhtml|ifinfo|ifnotdocbook|ifnothtml|ifnotinfo|ifnotplaintext\n|ifnottex|ifnotxml|ifplaintext|iftex|ifxml))\n(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.control.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"variable.parameter.texinfo"}},"endCaptures":{"1":{"name":"keyword.control.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"dashes":{"patterns":[{"name":"constant.character.dash.em-dash.texinfo","match":"---"},{"name":"constant.character.dash.en-dash.texinfo","match":"--"}]},"definitions":{"patterns":[{"name":"meta.command.$3.line.texinfo","begin":"((@)(defcodeindex|defindex|defopt|defoptx|defvar|defvarx))(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.var.texinfo","match":"\\G\\s*(?:({)[^}]*(})|\\S+)","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defcvx|defcv|defopx|defop))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deffnx|deffn|deftpx|deftp|defvrx|defvr))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(definfoenclose))(?=\\s|$)","end":"$","patterns":[{"match":"\\G\\s*(({)[^}]*(})|[^\\s,]+)","captures":{"1":{"name":"entity.name.var.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"}}},{"name":"string.unquoted.texinfo","match":"[^\\s,@]+"},{"include":"#comma"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defivarx|defivar|defmethodx|defmethod))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"entity.other.inherited-class.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(defmacx|defmac|defunx|defun|defspecx|defspec))(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.function.texinfo","match":"\\G\\s*(?:({)[^}]*(})|\\S+)","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypecvx|deftypecv|deftypevrx|deftypevr))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"10":{"name":"entity.name.var.texinfo"},"11":{"name":"punctuation.definition.begin.texinfo"},"12":{"name":"punctuation.definition.end.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"storage.type.var.data-type.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypefnx|deftypefn))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"storage.type.var.data-type.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypefunx|deftypefun))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.data-type.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypemethodx|deftypemethod|deftypeivarx|deftypeivar))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"entity.other.inherited-class.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"storage.type.var.data-type.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"entity.name.var.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypeopx|deftypeop))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.category.texinfo"},"10":{"name":"entity.name.var.texinfo"},"11":{"name":"punctuation.definition.begin.texinfo"},"12":{"name":"punctuation.definition.end.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.other.inherited-class.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"},"7":{"name":"storage.type.var.data-type.texinfo"},"8":{"name":"punctuation.definition.begin.texinfo"},"9":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.$3.line.texinfo","begin":"((@)(deftypevarx|deftypevar))(?=\\s|$)","end":"$","patterns":[{"match":"(?x)\n\\G \\s* (({)[^}]*(})|\\S+)\n(?: \\s+ (({)[^}]*(})|\\S+))?","captures":{"1":{"name":"storage.type.var.data-type.texinfo"},"2":{"name":"punctuation.definition.begin.texinfo"},"3":{"name":"punctuation.definition.end.texinfo"},"4":{"name":"entity.name.var.texinfo"},"5":{"name":"punctuation.definition.begin.texinfo"},"6":{"name":"punctuation.definition.end.texinfo"}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"ignored":{"patterns":[{"name":"meta.command.ignore.block.texinfo","contentName":"comment.block.ignored.texinfo","begin":"((@)ignore)(?=\\s|$)","end":"((@)end\\s+ignore)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.ignore.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-ignore.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.bye.block.texinfo","contentName":"comment.block.ignored.texinfo","begin":"^((@)bye)(?=\\s|$)","end":"(?=A)B","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.bye.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}}]},"italicText":{"name":"meta.command.$3.braced.texinfo","contentName":"markup.italic.texinfo","begin":"((@)(i|emph|sc|slanted))({)","end":"}","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"4":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}},"lineCommands":{"name":"meta.command.$3.line.texinfo","contentName":"markup.raw.texinfo","begin":"(?x) ^ ((@)\n(author|centerchap|center|cindex|clear|defcodeindex|defcvx|defcv|deffnx\n|deffn|defindex|definfoenclose|defivarx|defivar|defmacx|defmac|defmethodx\n|defmethod|defoptx|defopt|defopx|defop|defspecx|defspec|deftpx|deftp\n|deftypecvx|deftypecv|deftypefnx|deftypefn|deftypefunx|deftypefun\n|deftypeivarx|deftypeivar|deftypemethodx|deftypemethod|deftypeopx\n|deftypeop|deftypevarx|deftypevar|deftypevrx|deftypevr|defunx|defun\n|defvarx|defvar|defvrx|defvr|dircategory|documentencoding|documentlanguage\n|enumerate|evenfooting|even|everyfooting|everyexampleindent|exdent|findex\n|firstparagraphindent|fonttextsize|footnotestyle|ftable|include|itemize\n|kbdinputstyle|kindex|macro|multitable|need|node|oddfooting|oddpagesizes\n|paragraphindent|part|pindex|printindex|setfilename|settitle|set\n|shorttitlepage|sortas|sp|strong|subtitle|sub|sup|syncodeindex|synindex\n|table|tindex|title|unmacro|urefbreakstyle|verbatiminclude|vindex|vskip|vtable))\n(?=\\s|$)","end":"$","patterns":[{"name":"entity.name.function.macro.texinfo","match":"\\G(?\u003c=@macro)\\s*(\\S+)"},{"match":"\\G(?:\\s*[-+]?[0-9]+(?:\\.[0-9]+)?,?)+(?=\\s*$)","captures":{"0":{"patterns":[{"name":"constant.numeric.float.texinfo","match":"[-+]?\\d+(?:\\.\\d+)"},{"name":"constant.numeric.int.texinfo","match":"[-+]?\\d+"},{"include":"#comma"}]}}},{"name":"keyword.operator.command.separator.texinfo","match":"(@)\\|","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"include":"#param"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"main":{"patterns":[{"include":"#comments"},{"include":"#dashes"},{"include":"#texLine"},{"include":"#alias"},{"include":"#menu"},{"include":"#booleanCommands"},{"include":"#symbolCommands"},{"include":"#set"},{"include":"#definitions"},{"include":"#quotation"},{"include":"#boldText"},{"include":"#italicText"},{"include":"#verbatim"},{"include":"#codeBlocks"},{"include":"#conditionals"},{"include":"#blockCommands"},{"include":"#lineCommands"},{"include":"#ignored"},{"include":"#rawTex"},{"include":"#rawHTML"},{"include":"#rawXML"},{"include":"#command"}]},"manualName":{"name":"meta.manual-name.texinfo","contentName":"constant.other.reference.link.texinfo","begin":"(?:^|\\G)\\s*\\(","end":"\\)","patterns":[{"include":"#main"}],"beginCaptures":{"0":{"name":"punctuation.definition.reference.manual.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.definition.reference.manual.end.texinfo"}}},"menu":{"name":"meta.command.$3.block.texinfo","begin":"((@)(detailmenu|direntry|menu))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"name":"markup.list.texinfo","begin":"^\\*\\s","end":"^(?=\\S)","patterns":[{"contentName":"entity.name.tag.entry-name.texinfo","begin":"\\G(\\s*\\(.*?\\))?","end":"::?|(?=\\s*$)","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"patterns":[{"include":"#manualName"}]}},"endCaptures":{"0":{"name":"punctuation.separator.key-value.menu.texinfo"}}},{"contentName":"entity.name.node-name.texinfo","begin":"(?\u003c=[^:]:)\\s*(\\(.*?\\))?","end":"(\\.)|(?=\\s*$)","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"patterns":[{"include":"#manualName"}]}},"endCaptures":{"1":{"name":"punctuation.terminator.full-stop.period.texinfo"}}},{"name":"string.unquoted.description.texinfo","begin":"(?\u003c=::|\\.)","end":"^(?=\\S)","patterns":[{"include":"#main"}]}],"beginCaptures":{"0":{"name":"punctuation.definition.list.menu.texinfo"}}},{"name":"constant.other.menu-comment.texinfo","begin":"^(?=[^\\s*])(?!@end\\s)","end":"$|(?=\\s*@end\\s)","patterns":[{"include":"#main"}]},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"param":{"name":"variable.parameter.texinfo","match":"[^\\s{}@,]+|(?\u003c=\\s)({)[^\\s{}@,]+(})","captures":{"1":{"name":"punctuation.definition.begin.texinfo"},"2":{"name":"punctuation.definition.end.texinfo"}}},"quotation":{"name":"meta.command.$3.block.texinfo","contentName":"markup.quote.texinfo","begin":"((@)(quotation|smallquotation))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawHTML":{"name":"meta.command.raw-html.block.texinfo","contentName":"source.embedded.html","begin":"((@)html)(?=\\s|$)","end":"((@)end\\s+html)\\b","patterns":[{"include":"#main"},{"include":"text.html.basic"}],"beginCaptures":{"1":{"name":"keyword.operator.command.html.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-html.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawTex":{"name":"meta.command.raw-tex.block.texinfo","contentName":"source.embedded.tex","begin":"((@)tex)(?=\\s|$)","end":"((@)end\\s+tex)\\b","patterns":[{"include":"#main"},{"include":"text.tex.latex"}],"beginCaptures":{"1":{"name":"keyword.operator.command.tex.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-tex.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"rawXML":{"name":"meta.command.raw-$3.block.texinfo","contentName":"source.embedded.xml","begin":"((@)(docbook|xml))(?=\\s|$)","end":"((@)end\\s+\\3)\\b","patterns":[{"include":"#main"},{"include":"text.xml"}],"beginCaptures":{"1":{"name":"keyword.operator.command.$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}},"endCaptures":{"1":{"name":"keyword.operator.command.end-$3.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"set":{"begin":"((@)set)(?=\\s|$)","end":"$","patterns":[{"match":"\\G\\s*(\\S+)","captures":{"1":{"name":"entity.name.var.texinfo","patterns":[{"include":"#main"}]}}},{"include":"#param"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.set.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"}}},"symbolCommands":{"patterns":[{"name":"keyword.operator.command.non-alphabetic.texinfo","match":"(@)[-!\"'\u0026*./:=?@\\\\^`{}~]","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"name":"keyword.operator.command.whitespace.texinfo","match":"(@)(?:( |\\t)|$)","captures":{"1":{"name":"punctuation.definition.function.texinfo"}}},{"name":"meta.command.braced.texinfo","begin":"((@),)({)","end":"}","patterns":[{"name":"constant.character.texinfo","match":"[^\\s{}@,]+"},{"include":"#comma"},{"include":"#main"}],"beginCaptures":{"1":{"name":"keyword.operator.command.cedilla-accent.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"punctuation.section.scope.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"}}}]},"verbatim":{"name":"meta.command.braced.verb.texinfo","contentName":"string.quoted.other.verbatim.texinfo","begin":"((@)verb)({)([^}])","end":"(\\4)(})","beginCaptures":{"1":{"name":"keyword.operator.command.verb.texinfo"},"2":{"name":"punctuation.definition.function.texinfo"},"3":{"name":"punctuation.section.scope.begin.texinfo"},"4":{"name":"punctuation.arbitrary.delimiter.begin.texinfo"}},"endCaptures":{"0":{"name":"punctuation.section.scope.end.texinfo"},"1":{"name":"punctuation.arbitrary.delimiter.end.texinfo"}}}}}
|
data/grammars/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
7.
|
1
|
+
7.23.0
|
data/lib/linguist/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
7.
|
1
|
+
7.23.0
|
data/lib/linguist/blob_helper.rb
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
require 'linguist/generated'
|
2
|
+
require 'cgi'
|
2
3
|
require 'charlock_holmes'
|
3
|
-
require 'escape_utils'
|
4
4
|
require 'mini_mime'
|
5
5
|
require 'yaml'
|
6
6
|
|
@@ -94,7 +94,7 @@ module Linguist
|
|
94
94
|
elsif name.nil?
|
95
95
|
"attachment"
|
96
96
|
else
|
97
|
-
"attachment; filename=#{
|
97
|
+
"attachment; filename=#{CGI.escape(name)}"
|
98
98
|
end
|
99
99
|
end
|
100
100
|
|
data/lib/linguist/generated.rb
CHANGED
@@ -115,7 +115,7 @@ module Linguist
|
|
115
115
|
def xcode_file?
|
116
116
|
['.nib', '.xcworkspacedata', '.xcuserstate'].include?(extname)
|
117
117
|
end
|
118
|
-
|
118
|
+
|
119
119
|
# Internal: Is the blob an IntelliJ IDEA project file?
|
120
120
|
#
|
121
121
|
# JetBrains IDEs generate project files under an `.idea` directory
|
@@ -319,7 +319,7 @@ module Linguist
|
|
319
319
|
return false unless extname == '.go'
|
320
320
|
return false unless lines.count > 1
|
321
321
|
|
322
|
-
return lines.first(40).any? { |l| l
|
322
|
+
return lines.first(40).any? { |l| l =~ %r{^// Code generated .*} }
|
323
323
|
end
|
324
324
|
|
325
325
|
# Internal: Is the blob a protocol buffer file generated by the
|
data/lib/linguist/generic.yml
CHANGED
data/lib/linguist/heuristics.yml
CHANGED
@@ -96,6 +96,16 @@ disambiguations:
|
|
96
96
|
pattern: '^\s*(# |include|require)\b'
|
97
97
|
- language: Clojure
|
98
98
|
pattern: '\((def|defn|defmacro|let)\s'
|
99
|
+
- extensions: ['.bf']
|
100
|
+
rules:
|
101
|
+
- language: Beef
|
102
|
+
pattern: '(?-m)^\s*using\s+(System|Beefy)(\.(.*))?;\s*$'
|
103
|
+
- language: HyPhy
|
104
|
+
pattern:
|
105
|
+
- '(?-m)^\s*#include\s+".*";\s*$'
|
106
|
+
- '\sfprintf\s*\('
|
107
|
+
- language: Brainfuck
|
108
|
+
pattern: '(>\+>|>\+<)'
|
99
109
|
- extensions: ['.bi']
|
100
110
|
rules:
|
101
111
|
- language: FreeBasic
|
@@ -141,7 +151,7 @@ disambiguations:
|
|
141
151
|
- language: Smalltalk
|
142
152
|
pattern: '![\w\s]+methodsFor: '
|
143
153
|
- language: 'C#'
|
144
|
-
pattern: '
|
154
|
+
pattern: '^\s*(using\s+[A-Z][\s\w.]+;|namespace\s*[\w\.]+\s*({|;)|\/\/)'
|
145
155
|
- extensions: ['.csc']
|
146
156
|
rules:
|
147
157
|
- language: GSC
|
@@ -245,6 +255,12 @@ disambiguations:
|
|
245
255
|
pattern: '^(?:<|[a-zA-Z-][a-zA-Z0-9_-]+[ \t]+\w)|\${\w+[^\n]*?}|^[ \t]*(?:<#--.*?-->|<#([a-z]+)(?=\s|>)[^>]*>.*?</#\1>|\[#--.*?--\]|\[#([a-z]+)(?=\s|\])[^\]]*\].*?\[#\2\])'
|
246
256
|
- language: Fluent
|
247
257
|
pattern: '^-?[a-zA-Z][a-zA-Z0-9_-]* *=|\{\$-?[a-zA-Z][-\w]*(?:\.[a-zA-Z][-\w]*)?\}'
|
258
|
+
- extensions: ['.g']
|
259
|
+
rules:
|
260
|
+
- language: GAP
|
261
|
+
pattern: '\s*(Declare|BindGlobal|KeyDependentOperation|Install(Method|GlobalFunction)|SetPackageInfo)'
|
262
|
+
- language: G-code
|
263
|
+
pattern: '^[MG][0-9]+\n'
|
248
264
|
- extensions: ['.gd']
|
249
265
|
rules:
|
250
266
|
- language: GAP
|
@@ -494,7 +510,7 @@ disambiguations:
|
|
494
510
|
- pattern: HEADERS
|
495
511
|
- pattern: SOURCES
|
496
512
|
- language: IDL
|
497
|
-
pattern: '^\s*function[ \w
|
513
|
+
pattern: '^\s*(?i:function|pro|compile_opt) \w[ \w,:]*$'
|
498
514
|
- extensions: ['.properties']
|
499
515
|
rules:
|
500
516
|
- language: INI
|
@@ -573,6 +589,13 @@ disambiguations:
|
|
573
589
|
pattern: '(?i:\^(this|super)\.|^\s*~\w+\s*=\.)'
|
574
590
|
- language: Scala
|
575
591
|
pattern: '(^\s*import (scala|java)\.|^\s*class\b)'
|
592
|
+
- extensions: ['.scd']
|
593
|
+
rules:
|
594
|
+
- language: SuperCollider
|
595
|
+
pattern: '(?i:\^(this|super)\.|^\s*(~\w+\s*=\.|SynthDef\b))'
|
596
|
+
- language: Markdown
|
597
|
+
# Markdown syntax for scdoc
|
598
|
+
pattern: '^#+\s+(NAME|SYNOPSIS|DESCRIPTION)'
|
576
599
|
- extensions: ['.sol']
|
577
600
|
rules:
|
578
601
|
- language: Solidity
|
@@ -621,6 +644,10 @@ disambiguations:
|
|
621
644
|
pattern: '^\s*(?:use\s+v6\b|\bmodule\b|\bmy\s+class\b)'
|
622
645
|
- language: Turing
|
623
646
|
pattern: '^\s*%[ \t]+|^\s*var\s+\w+(\s*:\s*\w+)?\s*:=\s*\w+'
|
647
|
+
- extensions: ['.tag']
|
648
|
+
rules:
|
649
|
+
- language: Java Server Pages
|
650
|
+
pattern: '<%[@!=\s]?\s*(taglib|tag|include|attribute|variable)\s'
|
624
651
|
- extensions: ['.toc']
|
625
652
|
rules:
|
626
653
|
- language: World of Warcraft Addon Data
|
@@ -650,6 +677,27 @@ disambiguations:
|
|
650
677
|
# VIM_MODELINE pattern in `./lib/linguist/strategy/modeline.rb`.
|
651
678
|
- language: Vim Help File
|
652
679
|
pattern: '(?:(?:^|[ \t])(?:vi|Vi(?=m))(?:m[<=>]?[0-9]+|m)?|[ \t]ex)(?=:(?=[ \t]*set?[ \t][^\r\n:]+:)|:(?![ \t]*set?[ \t]))(?:(?:[ \t]*:[ \t]*|[ \t])\w*(?:[ \t]*=(?:[^\\\s]|\\.)*)?)*[ \t:](?:filetype|ft|syntax)[ \t]*=(help)(?=$|\s|:)'
|
680
|
+
- language: Adblock Filter List
|
681
|
+
pattern: |-
|
682
|
+
(?x)\A
|
683
|
+
\[
|
684
|
+
(?<version>
|
685
|
+
(?:
|
686
|
+
[Aa]d[Bb]lock
|
687
|
+
(?:[ \t][Pp]lus)?
|
688
|
+
|
|
689
|
+
u[Bb]lock
|
690
|
+
(?:[ \t][Oo]rigin)?
|
691
|
+
|
|
692
|
+
[Aa]d[Gg]uard
|
693
|
+
)
|
694
|
+
(?:[ \t] \d+(?:\.\d+)*+)?
|
695
|
+
)
|
696
|
+
(?:
|
697
|
+
[ \t]?;[ \t]?
|
698
|
+
\g<version>
|
699
|
+
)*+
|
700
|
+
\]
|
653
701
|
# HACK: This is a contrived use of heuristics needed to address
|
654
702
|
# an unusual edge-case. See https://git.io/JULye for discussion.
|
655
703
|
- language: Text
|
data/lib/linguist/language.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require '
|
1
|
+
require 'cgi'
|
2
2
|
require 'yaml'
|
3
3
|
begin
|
4
4
|
require 'yajl'
|
@@ -291,12 +291,11 @@ module Linguist
|
|
291
291
|
|
292
292
|
# If group name is set, save the name so we can lazy load it later
|
293
293
|
if attributes[:group_name]
|
294
|
-
@group = nil
|
295
294
|
@group_name = attributes[:group_name]
|
296
295
|
|
297
296
|
# Otherwise we can set it to self now
|
298
297
|
else
|
299
|
-
@
|
298
|
+
@group_name = self.name
|
300
299
|
end
|
301
300
|
end
|
302
301
|
|
@@ -434,7 +433,7 @@ module Linguist
|
|
434
433
|
#
|
435
434
|
# Returns the escaped String.
|
436
435
|
def escaped_name
|
437
|
-
|
436
|
+
CGI.escape(name).gsub('+', '%20')
|
438
437
|
end
|
439
438
|
|
440
439
|
# Public: Get default alias name
|