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.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/ext/linguist/lex.linguist_yy.c +584 -498
  3. data/ext/linguist/lex.linguist_yy.h +2 -3
  4. data/ext/linguist/tokenizer.l +52 -15
  5. data/grammars/inline.graphql.json +1 -0
  6. data/grammars/inline.graphql.php.json +1 -0
  7. data/grammars/inline.graphql.python.json +1 -0
  8. data/grammars/inline.graphql.re.json +1 -0
  9. data/grammars/inline.graphql.res.json +1 -0
  10. data/grammars/inline.prisma.json +1 -1
  11. data/grammars/liquid.injection.json +1 -1
  12. data/grammars/markdown.graphql.codeblock.json +1 -0
  13. data/grammars/markdown.rescript.codeblock.json +1 -0
  14. data/grammars/source.abap.json +1 -1
  15. data/grammars/source.abapcds.json +1 -1
  16. data/grammars/source.astro.json +1 -1
  17. data/grammars/source.ats.json +1 -1
  18. data/grammars/source.bicep.json +1 -1
  19. data/grammars/source.brs.json +1 -1
  20. data/grammars/source.cds.json +1 -1
  21. data/grammars/source.cobol.json +1 -1
  22. data/grammars/source.context.json +1 -0
  23. data/grammars/source.cs.json +1 -1
  24. data/grammars/source.curry.json +1 -1
  25. data/grammars/source.dart.json +1 -1
  26. data/grammars/source.denizenscript.json +1 -1
  27. data/grammars/source.ditroff.json +1 -1
  28. data/grammars/source.elvish-transcript.json +1 -0
  29. data/grammars/source.elvish.in.markdown.json +1 -0
  30. data/grammars/source.elvish.json +1 -0
  31. data/grammars/source.fsharp.json +1 -1
  32. data/grammars/source.ftl.json +1 -1
  33. data/grammars/source.gcode.json +1 -1
  34. data/grammars/source.gdscript.json +1 -1
  35. data/grammars/source.gdshader.json +1 -1
  36. data/grammars/source.gemini.json +1 -0
  37. data/grammars/source.graphql.json +1 -1
  38. data/grammars/source.hack.json +1 -1
  39. data/grammars/source.hocon.json +1 -0
  40. data/grammars/source.json.json +1 -1
  41. data/grammars/source.jsonnet.json +1 -1
  42. data/grammars/source.kusto.json +1 -1
  43. data/grammars/source.livescript.json +1 -1
  44. data/grammars/source.mo.json +1 -1
  45. data/grammars/source.move.json +1 -0
  46. data/grammars/source.nix.json +1 -1
  47. data/grammars/source.pic.json +1 -1
  48. data/grammars/source.pony.json +1 -1
  49. data/grammars/source.postscript.json +1 -1
  50. data/grammars/source.ql.json +1 -1
  51. data/grammars/source.rego.json +1 -1
  52. data/grammars/source.rescript.json +1 -1
  53. data/grammars/source.rsc.json +1 -0
  54. data/grammars/source.scala.json +1 -1
  55. data/grammars/source.sexp.json +1 -0
  56. data/grammars/source.stan.json +1 -1
  57. data/grammars/source.svelte.json +1 -1
  58. data/grammars/source.ts.json +1 -1
  59. data/grammars/source.ts.prismaClientRawSQL.json +1 -0
  60. data/grammars/source.tsx.json +1 -1
  61. data/grammars/source.v.json +1 -1
  62. data/grammars/source.velocity.html.json +1 -0
  63. data/grammars/source.velocity.json +1 -0
  64. data/grammars/source.wren.json +1 -0
  65. data/grammars/source.wsd.json +1 -1
  66. data/grammars/source.xojo.json +1 -1
  67. data/grammars/text.adblock.json +1 -0
  68. data/grammars/text.checksums.json +1 -1
  69. data/grammars/text.html.liquid.json +1 -1
  70. data/grammars/text.html.statamic.json +1 -1
  71. data/grammars/text.info.json +1 -1
  72. data/grammars/text.marko.json +1 -1
  73. data/grammars/text.restructuredtext.json +1 -1
  74. data/grammars/text.roff.json +1 -1
  75. data/grammars/text.texinfo.json +1 -1
  76. data/grammars/version +1 -1
  77. data/lib/linguist/VERSION +1 -1
  78. data/lib/linguist/blob_helper.rb +2 -2
  79. data/lib/linguist/generated.rb +2 -2
  80. data/lib/linguist/generic.yml +1 -0
  81. data/lib/linguist/heuristics.yml +50 -2
  82. data/lib/linguist/language.rb +3 -4
  83. data/lib/linguist/languages.json +1 -1
  84. data/lib/linguist/languages.yml +96 -1
  85. data/lib/linguist/samples.json +1 -1
  86. data/lib/linguist/vendor.yml +1 -1
  87. metadata +32 -11
@@ -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.21.0
1
+ 7.23.0
data/lib/linguist/VERSION CHANGED
@@ -1 +1 @@
1
- 7.21.0
1
+ 7.23.0
@@ -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=#{EscapeUtils.escape_url(name)}"
97
+ "attachment; filename=#{CGI.escape(name)}"
98
98
  end
99
99
  end
100
100
 
@@ -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.include? "Code generated by" }
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
@@ -17,4 +17,5 @@ extensions:
17
17
  - ".cmp"
18
18
  - ".sol"
19
19
  - ".stl"
20
+ - ".tag"
20
21
  - ".url"
@@ -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: '^(\s*namespace\s*[\w\.]+\s*{|\s*\/\/)'
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
@@ -1,4 +1,4 @@
1
- require 'escape_utils'
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
- @group = self
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
- EscapeUtils.escape_url(name).gsub('+', '%20')
436
+ CGI.escape(name).gsub('+', '%20')
438
437
  end
439
438
 
440
439
  # Public: Get default alias name