github-linguist 9.0.0 → 9.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/grammars/liquid.injection.json +1 -1
- data/grammars/source.abap.json +1 -1
- data/grammars/source.abl.json +1 -1
- data/grammars/source.answersetprogramming.json +1 -0
- data/grammars/source.apacheconf.json +1 -0
- data/grammars/source.assembly.json +1 -1
- data/grammars/source.ats.json +1 -1
- data/grammars/source.brs.json +1 -1
- data/grammars/source.bst.json +1 -0
- data/grammars/source.c.linker.json +1 -0
- data/grammars/source.cairo0.json +1 -1
- data/grammars/source.cobol.json +1 -1
- data/grammars/source.cs.json +1 -1
- data/grammars/source.curry.json +1 -1
- data/grammars/source.dds.dspf.json +1 -1
- data/grammars/source.erlang.json +1 -1
- data/grammars/source.gdscript.json +1 -1
- data/grammars/source.git-revlist.json +1 -1
- data/grammars/source.gleam.json +1 -1
- data/grammars/source.hack.json +1 -1
- data/grammars/source.hcl.json +1 -1
- data/grammars/source.ice.json +1 -1
- data/grammars/source.ispc.json +1 -0
- data/grammars/source.jai.json +1 -0
- data/grammars/source.json.comments.json +1 -0
- data/grammars/source.just.json +1 -1
- data/grammars/source.kdl.json +1 -0
- data/grammars/source.lean.markdown.json +1 -1
- data/grammars/source.lean4.markdown.json +1 -1
- data/grammars/source.matlab.json +1 -1
- data/grammars/source.mo.json +1 -1
- data/grammars/source.moonbit.json +1 -1
- data/grammars/source.mzn.json +1 -0
- data/grammars/source.nr.json +1 -1
- data/grammars/source.openesql.json +1 -1
- data/grammars/source.overpassql.json +1 -0
- data/grammars/source.polar.json +1 -1
- data/grammars/source.prisma.json +1 -1
- data/grammars/source.purescript.json +1 -1
- data/grammars/source.ql.json +1 -1
- data/grammars/source.qsharp.json +1 -1
- data/grammars/source.rascal.json +1 -1
- data/grammars/source.rpgle.json +1 -1
- data/grammars/source.scala.json +1 -1
- data/grammars/source.scm.json +1 -0
- data/grammars/source.slang.json +1 -0
- data/grammars/source.slice.json +1 -1
- data/grammars/source.sourcepawn.json +1 -1
- data/grammars/source.stan.json +1 -1
- data/grammars/source.swift.json +1 -1
- data/grammars/source.tact.json +1 -1
- data/grammars/source.talon.json +1 -1
- data/grammars/source.templ.json +1 -1
- data/grammars/source.textgrid.json +1 -1
- data/grammars/source.toc.json +1 -1
- data/grammars/source.ts.prismaClientRawSQL.json +1 -1
- data/grammars/source.tsp.json +1 -1
- data/grammars/source.typst.json +1 -1
- data/grammars/source.vue.json +1 -1
- data/grammars/source.wdl.json +1 -1
- data/grammars/source.xmake.json +1 -0
- data/grammars/text.html.liquid.json +1 -1
- data/grammars/text.html.markdown.d2.json +1 -1
- data/grammars/text.rtf.json +1 -1
- data/grammars/version +1 -1
- data/lib/linguist/VERSION +1 -1
- data/lib/linguist/generated.rb +1 -1
- data/lib/linguist/heuristics.yml +57 -17
- data/lib/linguist/languages.json +1 -1
- data/lib/linguist/languages.yml +155 -23
- data/lib/linguist/samples.json +1 -1
- data/lib/linguist/shebang.rb +1 -1
- metadata +16 -6
- data/grammars/source.apache-config.json +0 -1
- data/grammars/source.apache-config.mod_perl.json +0 -1
- data/grammars/text.html.erlang.yaws.json +0 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 68a6d79492f6408088762b786fc3cf181e18fdba0af0d309282b1ae96742fc53
|
4
|
+
data.tar.gz: 9e4f5e011587af022bc50116235fbd996ef03ca9bb6a957b4500a574258c5e50
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ad5b61a3fe3ac49f6960d016fcb16abf9af696e228c0a6474ee40181c5d9041d68771a0a1b06d034baad5084e9eedc4ea9bc02e5830138f47c0a9743fcc7952
|
7
|
+
data.tar.gz: ccf950a746b20550df29682921f52a91cf1bf201c535a382cfc7639a1734c537d352afe8d86e4bd62dd515b2f70fcad746e3274d1a931e9f5f6cda6098bbf1c8
|
@@ -1 +1 @@
|
|
1
|
-
{"scopeName":"liquid.injection","patterns":[{"include":"#injection"}],"repository":{"attribute":{"begin":"\\w+:","end":"(?=,|%}|}}|\\|)","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"attribute_liquid":{"begin":"\\w+:","end":"(?=,|\\|)|$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"comment_block":{"name":"comment.block.liquid","begin":"{%-?\\s*comment\\s*-?%}","end":"{%-?\\s*endcomment\\s*-?%}","patterns":[{"include":"#comment_block"},{"match":"(.(?!{%-?\\s*(comment|endcomment)\\s*-?%}))*."}]},"core":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#style_codefence"},{"include":"#stylesheet_codefence"},{"include":"#json_codefence"},{"include":"#javascript_codefence"},{"include":"#object"},{"include":"#tag"},{"include":"text.html.basic"}]},"filter":{"match":"\\|\\s*((?![\\.0-9])[a-zA-Z0-9_-]+\\:?)\\s*","captures":{"1":{"name":"support.function.liquid"}}},"injection":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#object"},{"include":"#tag_injection"}]},"invalid_range":{"name":"invalid.illegal.range.liquid","match":"\\((.(?!\\.\\.))+\\)"},"javascript_codefence":{"name":"meta.block.javascript.liquid","contentName":"meta.embedded.block.js","begin":"({%-?)\\s*(javascript)\\s*(-?%})","end":"({%-?)\\s*(endjavascript)\\s*(-?%})","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.javascript.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.javascript.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"json_codefence":{"name":"meta.block.schema.liquid","contentName":"meta.embedded.block.json","begin":"({%-?)\\s*(schema)\\s*(-?%})","end":"({%-?)\\s*(endschema)\\s*(-?%})","patterns":[{"include":"source.json"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.schema.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.schema.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"language_constant":{"name":"constant.language.liquid","match":"\\b(false|true|nil|blank)\\b|empty(?!\\?)"},"number":{"name":"constant.numeric.liquid","match":"((-|\\+)\\s*)?[0-9]+(\\.[0-9]+)?"},"object":{"name":"meta.object.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){{-?","end":"-?}}","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"operator":{"match":"(?:(?\u003c=\\s)|\\b)(\\=\\=|!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=|or|and|contains)(?:(?=\\s)|\\b)","captures":{"1":{"name":"keyword.operator.expression.liquid"}}},"range":{"name":"meta.range.liquid","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.range.liquid","match":"\\.\\."},{"include":"#variable_lookup"},{"include":"#number"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.liquid"}}},"raw_tag":{"name":"meta.entity.tag.raw.liquid","contentName":"string.unquoted.liquid","begin":"{%-?\\s*(raw)\\s*-?%}","end":"{%-?\\s*(endraw)\\s*-?%}","patterns":[{"match":"(.(?!{%-?\\s*endraw\\s*-?%}))*."}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"endCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"string":{"patterns":[{"include":"#string_single"},{"include":"#string_double"}]},"string_double":{"name":"string.quoted.double.liquid","begin":"\"","end":"\""},"string_single":{"name":"string.quoted.single.liquid","begin":"'","end":"'"},"style_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(style)\\s*(-?%})","end":"({%-?)\\s*(endstyle)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"stylesheet_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(stylesheet)\\s*(-?%})","end":"({%-?)\\s*(endstylesheet)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"tag":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_assign":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"(?=%})","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_assign_liquid":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"$","patterns":[{"include":"#filter"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_body":{"patterns":[{"include":"#tag_liquid"},{"include":"#tag_assign"},{"include":"#tag_comment_inline"},{"include":"#tag_case"},{"include":"#tag_conditional"},{"include":"#tag_for"},{"include":"#tag_paginate"},{"include":"#tag_render"},{"include":"#tag_tablerow"},{"include":"#tag_expression"}]},"tag_case":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_case_liquid":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_comment_block_liquid":{"name":"comment.block.liquid","begin":"(?:^\\s*)(comment)\\b","end":"(?:^\\s*)(endcomment)\\b","patterns":[{"include":"#tag_comment_block_liquid"},{"match":"(?:^\\s*)(?!(comment|endcomment)).*"}]},"tag_comment_inline":{"name":"comment.line.number-sign.liquid","begin":"#","end":"(?=%})"},"tag_comment_inline_liquid":{"name":"comment.line.number-sign.liquid","begin":"(?:^\\s*)#.*","end":"$"},"tag_conditional":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_conditional_liquid":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_expression":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_liquid":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_without_arguments":{"patterns":[{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endunless|endif)\\b","captures":{"1":{"name":"keyword.control.conditional.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endfor|endtablerow|endpaginate)\\b","captures":{"1":{"name":"keyword.control.loop.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcase)\\b","captures":{"1":{"name":"keyword.control.case.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(else|break|continue)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}}]},"tag_for":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"(?=%})","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_for_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in|reversed)\\b"},{"name":"keyword.control.liquid","match":"\\b(offset|limit):"},{"include":"#value_expression"}]},"tag_for_liquid":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"$","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_injection":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?(?!-?\\s*(endstyle|endjavascript|endcomment|endraw))","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_liquid":{"name":"meta.entity.tag.liquid.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(liquid)\\b","end":"(?=%})","patterns":[{"include":"#tag_comment_block_liquid"},{"include":"#tag_comment_inline_liquid"},{"include":"#tag_assign_liquid"},{"include":"#tag_case_liquid"},{"include":"#tag_conditional_liquid"},{"include":"#tag_for_liquid"},{"include":"#tag_paginate_liquid"},{"include":"#tag_render_liquid"},{"include":"#tag_tablerow_liquid"},{"include":"#tag_expression_liquid"}],"beginCaptures":{"1":{"name":"keyword.control.liquid.liquid"}}},"tag_paginate":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"(?=%})","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_paginate_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(by)\\b"},{"include":"#value_expression"}]},"tag_paginate_liquid":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"$","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_render":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"(?=%})","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_liquid":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"$","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_special_keywords":{"name":"keyword.control.other.liquid","match":"\\b(with|as|for)\\b"},"tag_tablerow":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"(?=%})","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"tag_tablerow_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in)\\b"},{"name":"keyword.control.liquid","match":"\\b(cols|offset|limit):"},{"include":"#value_expression"}]},"tag_tablerow_liquid":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"$","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"value_expression":{"patterns":[{"match":"(\\[)(\\|)(?=[^\\]]*)(?=\\])","captures":{"2":{"name":"invalid.illegal.filter.liquid"},"3":{"name":"invalid.illegal.filter.liquid"}}},{"name":"invalid.illegal.filter.liquid","match":"(?\u003c=\\s)(\\+|\\-|\\/|\\*)(?=\\s)"},{"include":"#language_constant"},{"include":"#operator"},{"include":"#invalid_range"},{"include":"#range"},{"include":"#number"},{"include":"#string"},{"include":"#variable_lookup"}]},"variable_lookup":{"patterns":[{"name":"variable.language.liquid","match":"\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\b"},{"name":"variable.parameter.liquid","match":"((?\u003c=\\w\\:\\s)\\w+)"},{"name":"meta.brackets.liquid","begin":"(?\u003c=\\w)\\[","end":"\\]","patterns":[{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.liquid"}}},{"name":"variable.other.member.liquid","match":"(?\u003c=(\\w|\\])\\.)([-\\w]+\\??)"},{"name":"punctuation.accessor.liquid","match":"(?\u003c=\\w)\\.(?=\\w)"},{"name":"variable.other.liquid","match":"(?i)[a-z_](\\w|(?:-(?!\\}\\})))*"}]}}}
|
1
|
+
{"scopeName":"liquid.injection","patterns":[{"include":"#injection"}],"repository":{"attribute":{"begin":"\\w+:","end":"(?=,|%}|}}|\\|)","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"attribute_liquid":{"begin":"\\w+:","end":"(?=,|\\|)|$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"entity.other.attribute-name.liquid"}}},"comment_block":{"name":"comment.block.liquid","begin":"{%-?\\s*comment\\s*-?%}","end":"{%-?\\s*endcomment\\s*-?%}","patterns":[{"include":"#comment_block"},{"match":"(.(?!{%-?\\s*(comment|endcomment)\\s*-?%}))*."}]},"core":{"patterns":[{"include":"#raw_tag"},{"include":"#doc_tag"},{"include":"#comment_block"},{"include":"#style_codefence"},{"include":"#stylesheet_codefence"},{"include":"#json_codefence"},{"include":"#javascript_codefence"},{"include":"#object"},{"include":"#tag"},{"include":"text.html.basic"}]},"doc_tag":{"name":"meta.block.doc.liquid","contentName":"comment.block.documentation.liquid","begin":"{%-?\\s*(doc)\\s*-?%}","end":"{%-?\\s*(enddoc)\\s*-?%}","patterns":[{"include":"#liquid_doc_description_tag"},{"include":"#liquid_doc_param_tag"},{"include":"#liquid_doc_example_tag"},{"include":"#liquid_doc_fallback_tag"}],"beginCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}},"endCaptures":{"0":{"name":"meta.tag.liquid"},"1":{"name":"entity.name.tag.doc.liquid"}}},"filter":{"match":"\\|\\s*((?![\\.0-9])[a-zA-Z0-9_-]+\\:?)\\s*","captures":{"1":{"name":"support.function.liquid"}}},"injection":{"patterns":[{"include":"#raw_tag"},{"include":"#comment_block"},{"include":"#object"},{"include":"#tag_injection"}]},"invalid_range":{"name":"invalid.illegal.range.liquid","match":"\\((.(?!\\.\\.))+\\)"},"javascript_codefence":{"name":"meta.block.javascript.liquid","contentName":"meta.embedded.block.js","begin":"({%-?)\\s*(javascript)\\s*(-?%})","end":"({%-?)\\s*(endjavascript)\\s*(-?%})","patterns":[{"include":"source.js"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.javascript.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.javascript.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.javascript.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"json_codefence":{"name":"meta.block.schema.liquid","contentName":"meta.embedded.block.json","begin":"({%-?)\\s*(schema)\\s*(-?%})","end":"({%-?)\\s*(endschema)\\s*(-?%})","patterns":[{"include":"source.json"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.schema.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.schema.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.schema.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"language_constant":{"name":"constant.language.liquid","match":"\\b(false|true|nil|blank)\\b|empty(?!\\?)"},"liquid_doc_description_tag":{"begin":"(@description)\\b\\s*","end":"(?=@|{%-?\\s*enddoc\\s*-?%})","patterns":[{"name":"string.quoted.single.liquid","match":"[^@]+"}],"beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_example_tag":{"contentName":"meta.embedded.block.liquid","begin":"(@example)\\b\\s*","end":"(?=@|{%-?\\s*enddoc\\s*-?%})","patterns":[{"include":"#core"}],"beginCaptures":{"0":{"name":"comment.block.documentation.liquid"},"1":{"name":"storage.type.class.liquid"}}},"liquid_doc_fallback_tag":{"match":"(@\\w+)\\b","captures":{"1":{"name":"comment.block.liquid"}}},"liquid_doc_param_tag":{"match":"(@param)\\s+(?:({[^}]*}?)\\s+)?(\\[?[a-zA-Z_][\\w-]*\\]?)?(?:\\s+(.*))?","captures":{"1":{"name":"storage.type.class.liquid"},"2":{"name":"entity.name.type.instance.liquid"},"3":{"name":"variable.other.liquid"},"4":{"name":"string.quoted.single.liquid"}}},"number":{"name":"constant.numeric.liquid","match":"((-|\\+)\\s*)?[0-9]+(\\.[0-9]+)?"},"object":{"name":"meta.object.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){{-?","end":"-?}}","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"operator":{"match":"(?:(?\u003c=\\s)|\\b)(\\=\\=|!\\=|\\\u003e|\\\u003c|\\\u003e\\=|\\\u003c\\=|or|and|contains)(?:(?=\\s)|\\b)","captures":{"1":{"name":"keyword.operator.expression.liquid"}}},"range":{"name":"meta.range.liquid","begin":"\\(","end":"\\)","patterns":[{"name":"punctuation.range.liquid","match":"\\.\\."},{"include":"#variable_lookup"},{"include":"#number"}],"beginCaptures":{"0":{"name":"punctuation.section.parens.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.parens.end.liquid"}}},"raw_tag":{"name":"meta.entity.tag.raw.liquid","contentName":"string.unquoted.liquid","begin":"{%-?\\s*(raw)\\s*-?%}","end":"{%-?\\s*(endraw)\\s*-?%}","patterns":[{"match":"(.(?!{%-?\\s*endraw\\s*-?%}))*."}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}},"endCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"string":{"patterns":[{"include":"#string_single"},{"include":"#string_double"}]},"string_double":{"name":"string.quoted.double.liquid","begin":"\"","end":"\""},"string_single":{"name":"string.quoted.single.liquid","begin":"'","end":"'"},"style_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(style)\\s*(-?%})","end":"({%-?)\\s*(endstyle)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"stylesheet_codefence":{"name":"meta.block.style.liquid","contentName":"meta.embedded.block.css","begin":"({%-?)\\s*(stylesheet)\\s*(-?%})","end":"({%-?)\\s*(endstylesheet)\\s*(-?%})","patterns":[{"include":"source.css"}],"beginCaptures":{"0":{"name":"meta.tag.metadata.style.start.liquid"},"1":{"name":"punctuation.definition.tag.begin.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"meta.tag.metadata.style.end.liquid"},"1":{"name":"punctuation.definition.tag.end.liquid"},"2":{"name":"entity.name.tag.style.liquid"},"3":{"name":"punctuation.definition.tag.end.liquid"}}},"tag":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_assign":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"(?=%})","patterns":[{"include":"#filter"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_assign_liquid":{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(assign|echo)\\b","end":"$","patterns":[{"include":"#filter"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}},"tag_body":{"patterns":[{"include":"#tag_liquid"},{"include":"#tag_assign"},{"include":"#tag_comment_inline"},{"include":"#tag_case"},{"include":"#tag_conditional"},{"include":"#tag_for"},{"include":"#tag_paginate"},{"include":"#tag_render"},{"include":"#tag_tablerow"},{"include":"#tag_expression"}]},"tag_case":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_case_liquid":{"name":"meta.entity.tag.case.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(case|when)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.case.liquid"}}},"tag_comment_block_liquid":{"name":"comment.block.liquid","begin":"(?:^\\s*)(comment)\\b","end":"(?:^\\s*)(endcomment)\\b","patterns":[{"include":"#tag_comment_block_liquid"},{"match":"(?:^\\s*)(?!(comment|endcomment)).*"}]},"tag_comment_inline":{"name":"comment.line.number-sign.liquid","begin":"#","end":"(?=%})"},"tag_comment_inline_liquid":{"name":"comment.line.number-sign.liquid","begin":"(?:^\\s*)#.*","end":"$"},"tag_conditional":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_conditional_liquid":{"name":"meta.entity.tag.conditional.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(if|elsif|unless)\\b","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"keyword.control.conditional.liquid"}}},"tag_expression":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"(?=%})","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_liquid":{"patterns":[{"include":"#tag_expression_without_arguments"},{"name":"meta.entity.tag.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(\\w+)","end":"$","patterns":[{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.liquid"}}}]},"tag_expression_without_arguments":{"patterns":[{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endunless|endif)\\b","captures":{"1":{"name":"keyword.control.conditional.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endfor|endtablerow|endpaginate)\\b","captures":{"1":{"name":"keyword.control.loop.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcase)\\b","captures":{"1":{"name":"keyword.control.case.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(capture|case|comment|for|form|if|javascript|paginate|schema|style)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(endcapture|endcase|endcomment|endfor|endform|endif|endjavascript|endpaginate|endschema|endstyle)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}},{"match":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(else|break|continue)\\b","captures":{"1":{"name":"keyword.control.other.liquid"}}}]},"tag_for":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"(?=%})","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_for_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in|reversed)\\b"},{"name":"keyword.control.liquid","match":"\\b(offset|limit):"},{"include":"#value_expression"}]},"tag_for_liquid":{"name":"meta.entity.tag.for.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(for)\\b","end":"$","patterns":[{"include":"#tag_for_body"}],"beginCaptures":{"1":{"name":"keyword.control.for.liquid"}}},"tag_injection":{"name":"meta.tag.liquid","begin":"(?\u003c!comment %})(?\u003c!comment -%})(?\u003c!comment%})(?\u003c!comment-%})(?\u003c!raw %})(?\u003c!raw -%})(?\u003c!raw%})(?\u003c!raw-%}){%-?(?!-?\\s*(endstyle|endjavascript|endcomment|endraw))","end":"-?%}","patterns":[{"include":"#tag_body"}],"beginCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}},"endCaptures":{"0":{"name":"punctuation.definition.tag.end.liquid"}}},"tag_liquid":{"name":"meta.entity.tag.liquid.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(liquid)\\b","end":"(?=%})","patterns":[{"include":"#tag_comment_block_liquid"},{"include":"#tag_comment_inline_liquid"},{"include":"#tag_assign_liquid"},{"include":"#tag_case_liquid"},{"include":"#tag_conditional_liquid"},{"include":"#tag_for_liquid"},{"include":"#tag_paginate_liquid"},{"include":"#tag_render_liquid"},{"include":"#tag_tablerow_liquid"},{"include":"#tag_expression_liquid"}],"beginCaptures":{"1":{"name":"keyword.control.liquid.liquid"}}},"tag_paginate":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"(?=%})","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_paginate_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(by)\\b"},{"include":"#value_expression"}]},"tag_paginate_liquid":{"name":"meta.entity.tag.paginate.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(paginate)\\b","end":"$","patterns":[{"include":"#tag_paginate_body"}],"beginCaptures":{"1":{"name":"keyword.control.paginate.liquid"}}},"tag_render":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"(?=%})","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_liquid":{"name":"meta.entity.tag.render.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(render)\\b","end":"$","patterns":[{"include":"#tag_render_special_keywords"},{"include":"#attribute_liquid"},{"include":"#value_expression"}],"beginCaptures":{"1":{"name":"entity.name.tag.render.liquid"}}},"tag_render_special_keywords":{"name":"keyword.control.other.liquid","match":"\\b(with|as|for)\\b"},"tag_tablerow":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"(?=%})","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"tag_tablerow_body":{"patterns":[{"name":"keyword.control.liquid","match":"\\b(in)\\b"},{"name":"keyword.control.liquid","match":"\\b(cols|offset|limit):"},{"include":"#value_expression"}]},"tag_tablerow_liquid":{"name":"meta.entity.tag.tablerow.liquid","begin":"(?:(?:(?\u003c={%)|(?\u003c={%-)|^)\\s*)(tablerow)\\b","end":"$","patterns":[{"include":"#tag_tablerow_body"}],"beginCaptures":{"1":{"name":"keyword.control.tablerow.liquid"}}},"value_expression":{"patterns":[{"match":"(\\[)(\\|)(?=[^\\]]*)(?=\\])","captures":{"2":{"name":"invalid.illegal.filter.liquid"},"3":{"name":"invalid.illegal.filter.liquid"}}},{"name":"invalid.illegal.filter.liquid","match":"(?\u003c=\\s)(\\+|\\-|\\/|\\*)(?=\\s)"},{"include":"#language_constant"},{"include":"#operator"},{"include":"#invalid_range"},{"include":"#range"},{"include":"#number"},{"include":"#string"},{"include":"#variable_lookup"}]},"variable_lookup":{"patterns":[{"name":"variable.language.liquid","match":"\\b(additional_checkout_buttons|address|all_country_option_tags|all_products|article|articles|block|blog|blogs|canonical_url|cart|checkout|collection|collections|comment|content_for_additional_checkout_buttons|content_for_header|content_for_index|content_for_layout|country_option_tags|currency|current_page|current_tags|customer|customer_address|discount_allocation|discount_application|external_video|font|forloop|form|fulfillment|gift_card|handle|image|images|line_item|link|linklist|linklists|location|localization|metafield|model|model_source|order|page|page_description|page_image|page_title|pages|paginate|part|policy|powered_by_link|predictive_search|product|product_option|product_variant|recommendations|request|routes|script|scripts|search|section|selling_plan|selling_plan_allocation|selling_plan_group|settings|shipping_method|shop|shop_locale|store_availability|tablerow|tax_line|template|theme|transaction|unit_price_measurement|variant|video|video_source)\\b"},{"name":"variable.parameter.liquid","match":"((?\u003c=\\w\\:\\s)\\w+)"},{"name":"meta.brackets.liquid","begin":"(?\u003c=\\w)\\[","end":"\\]","patterns":[{"include":"#string"}],"beginCaptures":{"0":{"name":"punctuation.section.brackets.begin.liquid"}},"endCaptures":{"0":{"name":"punctuation.section.brackets.end.liquid"}}},{"name":"variable.other.member.liquid","match":"(?\u003c=(\\w|\\])\\.)([-\\w]+\\??)"},{"name":"punctuation.accessor.liquid","match":"(?\u003c=\\w)\\.(?=\\w)"},{"name":"variable.other.liquid","match":"(?i)[a-z_](\\w|(?:-(?!\\}\\})))*"}]}}}
|
data/grammars/source.abap.json
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"name":"ABAP","scopeName":"source.abap","patterns":[{"name":"comment.line.full.abap","match":"^\\*.*\\n?","captures":{"1":{"name":"punctuation.definition.comment.abap"}}},{"name":"comment.line.partial.abap","match":"\".*\\n?","captures":{"1":{"name":"punctuation.definition.comment.abap"}}},{"name":"comment.line.pragma.abap","match":"(?\u003c![^\\s])##.*?(?=([\\.:,\\s]))"},{"name":"variable.other.abap","match":"(?i)(?\u003c=(?:\\s|~|-))(?\u003c=(?:-\u003e|=\u003e))([a-z_\\/][a-z_0-9\\/]*)(?=\\s+(?:=|\\+=|-=|\\*=|\\/=|\u0026\u0026=|\u0026=)\\s+)"},{"name":"constant.numeric.abap","match":"\\b[0-9]+(\\b|\\.|,)"},{"name":"storage.modifier.class.abap","match":"(?ix)(^|\\s+)((PUBLIC|PRIVATE|PROTECTED)\\sSECTION)(?=\\s+|:|\\.)"},{"name":"string.interpolated.abap","begin":"(?\u003c!\\\\)(\\|)(.*?)","end":"(?\u003c!\\\\)(\\||(\\\\\\\\\\|))","patterns":[{"name":"constant.character.escape","match":"({ )|( })"},{"name":"variable.other.abap","match":"(?\u003c={ ).*?(?= })"},{"name":"constant.character.escape.abap","match":"\\\\\\|"}],"beginCaptures":{"1":{"name":"constant.character.escape.abap"}},"endCaptures":{"1":{"name":"constant.character.escape.abap"}}},{"name":"string.quoted.single.abap","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.abap","match":"''"}]},{"name":"string.quoted.single.abap","begin":"`","end":"`","patterns":[{"name":"constant.character.escape.abap","match":"``"}]},{"name":"meta.block.begin.implementation.abap","begin":"(?i)^\\s*(class)\\s([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.class.abap","match":"(?ix)(^|\\s+)(definition|implementation|public|inheriting\\s+from|final|deferred|abstract|shared\\s+memory\\s+enabled|(global|local)*\\s*friends|(create\\s+(public|protected|private))|for\\s+behavior\\s+of|for\\s+testing|risk\\s+level\\s+(critical|dangerous|harmless))|duration\\s(short|medium|long)(?=\\s+|\\.)"},{"contentName":"entity.name.type.block.abap","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#generic_names"}]}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.block.abap"}}},{"begin":"(?ix)^\\s*(method)\\s(?:([a-z_\\/][a-z_0-9\\/]*)~)?([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(BY\\s+DATABASE(\\s+PROCEDURE|\\s+FUNCTION|\\s+GRAPH\\s+WORKSPACE)|BY\\s+KERNEL\\s+MODULE)(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(FOR\\s+(HDB|LLANG))(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=\\s)(OPTIONS\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\s+SYNTAX\\s+ERRORS))(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(LANGUAGE\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\s+|\\.)"},{"match":"(?ix)(?\u003c=\\s)(USING)\\s+([a-z_\\/][a-z_0-9\\/=\\\u003e]*)+(?=\\s+|\\.)","captures":{"1":{"name":"storage.modifier.method.abap"}}},{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#generic_names"}]}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"},"3":{"name":"entity.name.function.abap"}}},{"begin":"(?ix)^\\s*(INTERFACE)\\s([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(DEFERRED|PUBLIC)(?=\\s+|\\.)"}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}}},{"begin":"(?ix)^\\s*(FORM)\\s([a-z_\\/][a-z_0-9\\/\\-\\?]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.form.abap","match":"(?ix)(?\u003c=^|\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\s+|\\.)"},{"include":"#abaptypes"},{"include":"#keywords_followed_by_braces"}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}}},{"name":"storage.type.block.end.abap","match":"(?i)(endclass|endmethod|endform|endinterface)"},{"name":"variable.other.field.symbol.abap","match":"(?i)(\u003c[A-Za-z_][A-Za-z0-9_]*\u003e)"},{"include":"#keywords"},{"include":"#abap_constants"},{"include":"#reserved_names"},{"include":"#operators"},{"include":"#builtin_functions"},{"include":"#abaptypes"},{"include":"#system_fields"},{"include":"#sql_functions"},{"include":"#sql_types"}],"repository":{"abap_constants":{"name":"constant.language.abap","match":"(?ix)(?\u003c=\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|\n %_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|\n\t\t\t\tadabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\s|\\.|,)"},"abaptypes":{"patterns":[{"name":"support.type.abap","match":"(?ix)\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\s|\\.|,)"},{"name":"keyword.control.simple.abap","match":"(?ix)\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\s|\\.|,)"}]},"arithmetic_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(\\+|\\-|\\*|\\*\\*|\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\s)"},"builtin_functions":{"name":"entity.name.function.builtin.abap","match":"(?ix)(?\u003c=\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\()"},"comparison_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(\u003c|\u003e|\u003c\\=|\u003e\\=|\\=|\u003c\u003e|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\s)"},"control_keywords":{"name":"keyword.control.flow.abap","match":"(?ix)(^|\\s)(\n\t at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|\n\t endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\s|\\.|:)"},"generic_names":{"match":"[A-Za-z_][A-Za-z0-9_]*"},"keywords":{"patterns":[{"include":"#main_keywords"},{"include":"#text_symbols"},{"include":"#control_keywords"},{"include":"#keywords_followed_by_braces"}]},"keywords_followed_by_braces":{"match":"(?ix)\\b(data|value|field-symbol|final|reference|resumable)\\((\u003c?[a-z_\\/][a-z_0-9\\/]*\u003e?)\\)","captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"variable.other.abap"}}},"logical_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(not|or|and)(?=\\s)"},"main_keywords":{"name":"keyword.control.simple.abap","match":"(?ix)(?\u003c=^|\\s)(\nabap-source|\nabstract|\naccept|\naccepting|\naccess|\naccording|\naction|\nactivation|\nactual|\nadd|\nadd-corresponding|\nadjacent|\nafter|\nalias|\naliases|\nalign|\nall|\nallocate|\nalpha|\namdp|\nanalysis|\nanalyzer|\nappend|\nappending|\napplication|\narchive|\narea|\narithmetic|\nas|\nascending|\nassert|\nassign|\nassigned|\nassigning|\nassociation|\nasynchronous|\nat|\nattributes|\nauthority|\nauthority-check|\nauthorization|\nauto|\nback|\nbackground|\nbackward|\nbadi|\nbase|\nbefore|\nbegin|\nbehavior|\nbetween|\nbinary|\nbit|\nblank|\nblanks|\nblock|\nblocks|\nbound|\nboundaries|\nbounds|\nboxed|\nbreak|\nbreak-point|\nbuffer|\nby|\nbypassing|\nbyte|\nbyte-order|\ncall|\ncalling|\ncast|\ncasting|\ncds|\ncenter|\ncentered|\nchange|\nchanging|\nchannels|\nchar-to-hex|\ncharacter|\ncheck|\ncheckbox|\ncid|\ncircular|\nclass|\nclass-data|\nclass-events|\nclass-method|\nclass-methods|\nclass-pool|\ncleanup|\nclear|\nclient|\nclients|\nclock|\nclone|\nclose|\ncnt|\ncode|\ncollect|\ncolor|\ncolumn|\ncomment|\ncomments|\ncommit|\ncommon|\ncommunication|\ncomparing|\ncomponent|\ncomponents|\ncompression|\ncompute|\nconcatenate|\ncond|\ncondense|\ncondition|\nconnection|\nconstant|\nconstants|\ncontext|\ncontexts|\ncontrol|\ncontrols|\nconv|\nconversion|\nconvert|\ncopy|\ncorresponding|\ncount|\ncountry|\ncover|\ncreate|\ncurrency|\ncurrent|\ncursor|\ncustomer-function|\ndata|\ndatabase|\ndatainfo|\ndataset|\ndate|\ndaylight|\nddl|\ndeallocate|\ndecimals|\ndeclarations|\ndeep|\ndefault|\ndeferred|\ndefine|\ndelete|\ndeleting|\ndemand|\ndescending|\ndescribe|\ndestination|\ndetail|\ndetermine|\ndialog|\ndid|\ndirectory|\ndiscarding|\ndisplay|\ndisplay-mode|\ndistance|\ndistinct|\ndivide|\ndivide-corresponding|\ndummy|\nduplicate|\nduplicates|\nduration|\nduring|\ndynpro|\nedit|\neditor-call|\nempty|\nenabled|\nenabling|\nencoding|\nend|\nend-enhancement-section|\nend-of-definition|\nend-of-page|\nend-of-selection|\nend-test-injection|\nend-test-seam|\nendenhancement|\nendexec|\nendfunction|\nendian|\nending|\nendmodule|\nendprovide|\nendselect|\nendwith|\nengineering|\nenhancement|\nenhancement-point|\nenhancement-section|\nenhancements|\nentities|\nentity|\nentries|\nentry|\nenum|\nenvironment|\nequiv|\nerrors|\nescape|\nescaping|\nevent|\nevents|\nexact|\nexcept|\nexception|\nexception-table|\nexceptions|\nexcluding|\nexec|\nexecute|\nexists|\nexit|\nexit-command|\nexpanding|\nexplicit|\nexponent|\nexport|\nexporting|\nextended|\nextension|\nextract|\nfail|\nfailed|\nfeatures|\nfetch|\nfield|\nfield-groups|\nfield-symbols|\nfields|\nfile|\nfill|\nfilter|\nfilters|\nfinal|\nfind|\nfirst|\nfirst-line|\nfixed-point|\nflush|\nfollowing|\nfor|\nformat|\nforward|\nfound|\nframe|\nframes|\nfree|\nfrom|\nfull|\nfunction|\nfunction-pool|\ngenerate|\nget|\ngiving|\ngraph|\ngroup|\ngroups|\nhandle|\nhandler|\nhashed|\nhaving|\nheader|\nheaders|\nheading|\nhelp-id|\nhelp-request|\nhide|\nhint|\nhold|\nhotspot|\nicon|\nid|\nidentification|\nidentifier|\nignore|\nignoring|\nimmediately|\nimplemented|\nimplicit|\nimport|\nimporting|\nin|\ninactive|\nincl|\ninclude|\nincludes|\nincluding|\nincrement|\nindex|\nindex-line|\nindicators|\ninfotypes|\ninheriting|\ninit|\ninitial|\ninitialization|\ninner|\ninput|\ninsert|\ninstance|\ninstances|\nintensified|\ninterface|\ninterface-pool|\ninterfaces|\ninternal|\nintervals|\ninto|\ninverse|\ninverted-date|\nis|\niso|\njob|\njoin|\nkeep|\nkeeping|\nkernel|\nkey|\nkeys|\nkeywords|\nkind|\nlanguage|\nlast|\nlate|\nlayout|\nleading|\nleave|\nleft|\nleft-justified|\nleftplus|\nleftspace|\nlegacy|\nlength|\nlet|\nlevel|\nlevels|\nlike|\nline|\nline-count|\nline-selection|\nline-size|\nlinefeed|\nlines|\nlink|\nlist|\nlist-processing|\nlistbox|\nload|\nload-of-program|\nlocal|\nlocale|\nlock|\nlocks|\nlog-point|\nlogical|\nlower|\nmapped|\nmapping|\nmargin|\nmark|\nmask|\nmatch|\nmatchcode|\nmaximum|\nmembers|\nmemory|\nmesh|\nmessage|\nmessage-id|\nmessages|\nmessaging|\nmethod|\nmethods|\nmode|\nmodif|\nmodifier|\nmodify|\nmodule|\nmove|\nmove-corresponding|\nmultiply|\nmultiply-corresponding|\nname|\nnametab|\nnative|\nnested|\nnesting|\nnew|\nnew-line|\nnew-page|\nnew-section|\nnext|\nno|\nno-display|\nno-extension|\nno-gap|\nno-gaps|\nno-grouping|\nno-heading|\nno-scrolling|\nno-sign|\nno-title|\nno-zero|\nnodes|\nnon-unicode|\nnon-unique|\nnumber|\nobject|\nobjects|\nobjmgr|\nobligatory|\noccurence|\noccurences|\noccurrence|\noccurrences|\noccurs|\nof|\noffset|\non|\nonly|\nopen|\noptional|\noption|\noptions|\norder|\nothers|\nout|\nouter|\noutput|\noutput-length|\noverflow|\noverlay|\npack|\npackage|\npad|\npadding|\npage|\nparameter|\nparameter-table|\nparameters|\npart|\npartially|\npcre|\nperform|\nperforming|\npermissions|\npf-status|\nplaces|\npool|\nposition|\npragmas|\npreceding|\nprecompiled|\npreferred|\npreserving|\nprimary|\nprint|\nprint-control|\nprivate|\nprivileged|\nprocedure|\nprocess|\nprogram|\nproperty|\nprotected|\nprovide|\npush|\npushbutton|\nput|\nquery|\nqueue-only|\nqueueonly|\nquickinfo|\nradiobutton|\nraising|\nrange|\nranges|\nread|\nread-only|\nreceive|\nreceived|\nreceiving|\nredefinition|\nreduce|\nref|\nreference|\nrefresh|\nregex|\nreject|\nrenaming|\nreplace|\nreplacement|\nreplacing|\nreport|\nreported|\nrequest|\nrequested|\nrequired|\nreserve|\nreset|\nresolution|\nrespecting|\nresponse|\nrestore|\nresult|\nresults|\nresumable|\nresume|\nretry|\nreturn|\nreturning|\nright|\nright-justified|\nrightplus|\nrightspace|\nrollback|\nrows|\nrp-provide-from-last|\nrun|\nsap|\nsap-spool|\nsave|\nsaving|\nscale_preserving|\nscale_preserving_scientific|\nscan|\nscientific|\nscientific_with_leading_zero|\nscreen|\nscroll|\nscroll-boundary|\nscrolling|\nsearch|\nseconds|\nsection|\nselect|\nselect-options|\nselection|\nselection-screen|\nselection-set|\nselection-sets|\nselection-table|\nselections|\nsend|\nseparate|\nseparated|\nsession|\nset|\nshared|\nshift|\nshortdump|\nshortdump-id|\nsign|\nsign_as_postfix|\nsimple|\nsimulation|\nsingle|\nsize|\nskip|\nskipping|\nsmart|\nsome|\nsort|\nsortable|\nsorted|\nsource|\nspecified|\nsplit|\nspool|\nspots|\nsql|\nstable|\nstamp|\nstandard|\nstart-of-selection|\nstarting|\nstate|\nstatement|\nstatements|\nstatic|\nstatics|\nstatusinfo|\nstep|\nstep-loop|\nstop|\nstructure|\nstructures|\nstyle|\nsubkey|\nsubmatches|\nsubmit|\nsubroutine|\nsubscreen|\nsubstring|\nsubtract|\nsubtract-corresponding|\nsuffix|\nsum|\nsummary|\nsupplied|\nsupply|\nsuppress|\nswitch|\nsymbol|\nsyntax-check|\nsyntax-trace|\nsystem-call|\nsystem-exceptions|\ntab|\ntabbed|\ntable|\ntables|\ntableview|\ntabstrip|\ntarget|\ntask|\ntasks|\ntest|\ntest-injection|\ntest-seam|\ntesting|\ntext|\ntextpool|\nthen|\nthrow|\ntime|\ntimes|\ntimestamp|\ntimezone|\ntitle|\ntitlebar|\nto|\ntokens|\ntop-lines|\ntop-of-page|\ntrace-file|\ntrace-table|\ntrailing|\ntransaction|\ntransfer|\ntransformation|\ntranslate|\ntransporting|\ntrmac|\ntruncate|\ntruncation|\ntype|\ntype-pool|\ntype-pools|\ntypes|\nuline|\nunassign|\nunbounded|\nunder|\nunicode|\nunion|\nunique|\nunit|\nunix|\nunpack|\nuntil|\nunwind|\nup|\nupdate|\nupper|\nuser|\nuser-command|\nusing|\nutf-8|\nuuid|\nvalid|\nvalidate|\nvalue|\nvalue-request|\nvalues|\nvary|\nvarying|\nversion|\nvia|\nvisible|\nwait|\nwhen|\nwhere|\nwidth|\nwindow|\nwindows|\nwith|\nwith-heading|\nwith-title|\nwithout|\nword|\nwork|\nworkspace|\nwrite|\nxml|\nxsd|\nyes|\nzero|\nzone\n\t\t \t)(?=\\s|\\.|:|,)"},"operators":{"patterns":[{"include":"#other_operator"},{"include":"#arithmetic_operator"},{"include":"#comparison_operator"},{"include":"#logical_operator"}]},"other_operator":{"name":"keyword.control.simple.abap","match":"(?\u003c=\\s)(\u0026\u0026|\u0026|\\?=|\\+=|-=|\\/=|\\*=|\u0026\u0026=|\u0026=)(?=\\s)"},"reserved_names":{"name":"constant.language.abap","match":"(?ix)(?\u003c=\\s)(me|super)(?=\\s|\\.|,|-\u003e)"},"sql_functions":{"name":"entity.name.function.sql.abap","match":"(?ix)(?\u003c=\\s)(\nabap_system_timezone|\nabap_user_timezone|\nabs|\nadd_days|\nadd_months|\nallow_precision_loss|\nas_geo_json|\navg|\nbintohex|\ncast|\nceil|\ncoalesce|\nconcat_with_space|\nconcat|\ncorr_spearman|\ncorr|\ncount|\ncurrency_conversion|\ndatn_add_days|\ndatn_add_months|\ndatn_days_between|\ndats_add_days|\ndats_add_months|\ndats_days_between|\ndats_from_datn|\ndats_is_valid|\ndats_tims_to_tstmp|\ndats_to_datn|\ndayname|\ndays_between|\ndense_rank|\ndivision|\ndiv|\nextract_day|\nextract_hour|\nextract_minute|\nextract_month|\nextract_second|\nextract_year|\nfirst_value|\nfloor|\ngrouping|\nhextobin|\ninitcap|\ninstr|\nis_valid|\nlag|\nlast_value|\nlead|\nleft|\nlength|\nlike_regexpr|\nlocate_regexpr_after|\nlocate_regexpr|\nlocate|\nlower|\nlpad|\nltrim|\nmax|\nmedian|\nmin|\nmod|\nmonthname|\nntile|\noccurrences_regexpr|\nover|\nproduct|\nrank|\nreplace_regexpr|\nreplace|\nrigth|\nround|\nrow_number|\nrpad|\nrtrim|\nstddev|\nstring_agg|\nsubstring_regexpr|\nsubstring|\nsum|\ntims_from_timn|\ntims_is_valid|\ntims_to_timn|\nto_blob|\nto_clob|\ntstmp_add_seconds|\ntstmp_current_utctimestamp|\ntstmp_is_valid|\ntstmp_seconds_between|\ntstmp_to_dats|\ntstmp_to_dst|\ntstmp_to_tims|\ntstmpl_from_utcl|\ntstmpl_to_utcl|\nunit_conversion|\nupper|\nutcl_add_seconds|\nutcl_current|\nutcl_seconds_between|\nuuid|\nvar|\nweekday\n )(?=\\()"},"sql_types":{"name":"entity.name.type.sql.abap","match":"(?ix)(?\u003c=\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\s|\\(|\\))"},"system_fields":{"match":"(?ix)\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\.|\\s)","captures":{"1":{"name":"variable.language.abap"},"2":{"name":"variable.language.abap"}}},"text_symbols":{"match":"(?ix)(?\u003c=^|\\s)(text)-([A-Z0-9]{1,3})(?=\\s|\\.|:|,)","captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"constant.numeric.abap"}}}}}
|
1
|
+
{"name":"ABAP","scopeName":"source.abap","patterns":[{"name":"comment.line.full.abap","match":"^\\*.*\\n?","captures":{"1":{"name":"punctuation.definition.comment.abap"}}},{"name":"comment.line.partial.abap","match":"\".*\\n?","captures":{"1":{"name":"punctuation.definition.comment.abap"}}},{"name":"comment.line.pragma.abap","match":"(?\u003c![^\\s])##.*?(?=([\\.:,\\s]))"},{"name":"variable.other.abap","match":"(?i)(?\u003c=(?:\\s|~|-))(?\u003c=(?:-\u003e|=\u003e))([a-z_\\/][a-z_0-9\\/]*)(?=\\s+(?:=|\\+=|-=|\\*=|\\/=|\u0026\u0026=|\u0026=)\\s+)"},{"name":"constant.numeric.abap","match":"\\b[0-9]+(\\b|\\.|,)"},{"name":"storage.modifier.class.abap","match":"(?ix)(^|\\s+)((PUBLIC|PRIVATE|PROTECTED)\\sSECTION)(?=\\s+|:|\\.)"},{"name":"string.interpolated.abap","begin":"(?\u003c!\\\\)(\\|)(.*?)","end":"(?\u003c!\\\\)(\\||(\\\\\\\\\\|))","patterns":[{"name":"constant.character.escape","match":"({ )|( })"},{"name":"constant.character.escape.abap","match":"\\\\\\|"},{"name":"entity.name.property.stringtemplate.abap","match":"(?ix)(?\u003c=\\s)(align|alpha|case|country|currency|date|decimals|exponent|number|pad|sign|style|time|timestamp|timezone|width|xsd|zero)(?=\\s\\=)"},{"name":"entity.value.property.stringtemplate.abap","match":"(?ix)(?\u003c=\\=\\s)(center|engineering|environment|in|iso|left|leftplus|leftspace|lower|no|out|raw|right|rightplus|rightspace|scale_preserving|scale_preserving_scientific|scientific|scientific_with_leading_zero|sign_as_postfix|simple|space|upper|user|yes)(?=\\s)"}],"beginCaptures":{"1":{"name":"constant.character.escape.abap"}},"endCaptures":{"1":{"name":"constant.character.escape.abap"}}},{"name":"string.quoted.single.abap","begin":"'","end":"'","patterns":[{"name":"constant.character.escape.abap","match":"''"}]},{"name":"string.quoted.single.abap","begin":"`","end":"`","patterns":[{"name":"constant.character.escape.abap","match":"``"}]},{"name":"meta.block.begin.implementation.abap","begin":"(?i)^\\s*(class)\\s([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.class.abap","match":"(?ix)(^|\\s+)(definition|implementation|public|inheriting\\s+from|final|deferred|abstract|shared\\s+memory\\s+enabled|(global|local)*\\s*friends|(create\\s+(public|protected|private))|for\\s+behavior\\s+of|for\\s+testing|risk\\s+level\\s+(critical|dangerous|harmless))|duration\\s(short|medium|long)(?=\\s+|\\.)"},{"contentName":"entity.name.type.block.abap","begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#generic_names"}]}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.block.abap"}}},{"begin":"(?ix)^\\s*(method)\\s(?:([a-z_\\/][a-z_0-9\\/]*)~)?([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(BY\\s+DATABASE(\\s+PROCEDURE|\\s+FUNCTION|\\s+GRAPH\\s+WORKSPACE)|BY\\s+KERNEL\\s+MODULE)(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(FOR\\s+(HDB|LLANG))(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=\\s)(OPTIONS\\s+(READ-ONLY|DETERMINISTIC|SUPPRESS\\s+SYNTAX\\s+ERRORS))(?=\\s+|\\.)"},{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(LANGUAGE\\s+(SQLSCRIPT|SQL|GRAPH))(?=\\s+|\\.)"},{"match":"(?ix)(?\u003c=\\s)(USING)\\s+([a-z_\\/][a-z_0-9\\/=\\\u003e]*)+(?=\\s+|\\.)","captures":{"1":{"name":"storage.modifier.method.abap"}}},{"begin":"(?=[A-Za-z_][A-Za-z0-9_]*)","end":"(?![A-Za-z0-9_])","patterns":[{"include":"#generic_names"}]}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"},"3":{"name":"entity.name.function.abap"}}},{"begin":"(?ix)^\\s*(INTERFACE)\\s([a-z_\\/][a-z_0-9\\/]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.method.abap","match":"(?ix)(?\u003c=^|\\s)(DEFERRED|PUBLIC)(?=\\s+|\\.)"}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}}},{"begin":"(?ix)^\\s*(FORM)\\s([a-z_\\/][a-z_0-9\\/\\-\\?]*)","end":"\\s*\\.\\s*\\n?","patterns":[{"name":"storage.modifier.form.abap","match":"(?ix)(?\u003c=^|\\s)(USING|TABLES|CHANGING|RAISING|IMPLEMENTATION|DEFINITION)(?=\\s+|\\.)"},{"include":"#abaptypes"},{"include":"#keywords_followed_by_braces"}],"beginCaptures":{"1":{"name":"storage.type.block.abap"},"2":{"name":"entity.name.type.abap"}}},{"name":"storage.type.block.end.abap","match":"(?i)(endclass|endmethod|endform|endinterface)"},{"name":"variable.other.field.symbol.abap","match":"(?i)(\u003c[A-Za-z_][A-Za-z0-9_]*\u003e)"},{"include":"#keywords"},{"include":"#abap_constants"},{"include":"#reserved_names"},{"include":"#operators"},{"include":"#builtin_functions"},{"include":"#abaptypes"},{"include":"#system_fields"},{"include":"#sql_functions"},{"include":"#sql_types"}],"repository":{"abap_constants":{"name":"constant.language.abap","match":"(?ix)(?\u003c=\\s)(initial|null|@?space|@?abap_true|@?abap_false|@?abap_undefined|table_line|\n %_final|%_hints|%_predefined|col_background|col_group|col_heading|col_key|col_negative|col_normal|col_positive|col_total|\n\t\t\t\tadabas|as400|db2|db6|hdb|oracle|sybase|mssqlnt|pos_low|pos_high)(?=\\s|\\.|,)"},"abaptypes":{"patterns":[{"name":"support.type.abap","match":"(?ix)\\s(abap_bool|string|xstring|any|clike|csequence|numeric|xsequence|decfloat|decfloat16|decfloat34|utclong|simple|int8|c|n|i|p|f|d|t|x)(?=\\s|\\.|,)"},{"name":"keyword.control.simple.abap","match":"(?ix)\\s(TYPE|REF|TO|LIKE|LINE|OF|STRUCTURE|STANDARD|SORTED|HASHED|INDEX|TABLE|WITH|UNIQUE|NON-UNIQUE|SECONDARY|DEFAULT|KEY)(?=\\s|\\.|,)"}]},"arithmetic_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(\\+|\\-|\\*|\\*\\*|\\/|%|DIV|MOD|BIT-AND|BIT-OR|BIT-XOR|BIT-NOT)(?=\\s)"},"builtin_functions":{"name":"entity.name.function.builtin.abap","match":"(?ix)(?\u003c=\\s)(abs|sign|ceil|floor|trunc|frac|acos|asin|atan|cos|sin|tan|cosh|sinh|tanh|exp|log|log10|sqrt|strlen|xstrlen|charlen|lines|numofchar|dbmaxlen|round|rescale|nmax|nmin|cmax|cmin|boolc|boolx|xsdbool|contains|contains_any_of|contains_any_not_of|matches|line_exists|ipow|char_off|count|count_any_of|count_any_not_of|distance|condense|concat_lines_of|escape|find|find_end|find_any_of|find_any_not_of|insert|match|repeat|replace|reverse|segment|shift_left|shift_right|substring|substring_after|substring_from|substring_before|substring_to|to_upper|to_lower|to_mixed|from_mixed|translate|bit-set|line_index)(?=\\()"},"comparison_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(\u003c|\u003e|\u003c\\=|\u003e\\=|\\=|\u003c\u003e|eq|ne|lt|le|gt|ge|cs|cp|co|cn|ca|na|ns|np|byte-co|byte-cn|byte-ca|byte-na|byte-cs|byte-ns|o|z|m)(?=\\s)"},"control_keywords":{"name":"keyword.control.flow.abap","match":"(?ix)(^|\\s)(\n\t at|case|catch|continue|do|elseif|else|endat|endcase|endcatch|enddo|endif|\n\t endloop|endon|endtry|endwhile|if|loop|on|raise|try|while)(?=\\s|\\.|:)"},"generic_names":{"match":"[A-Za-z_][A-Za-z0-9_]*"},"keywords":{"patterns":[{"include":"#main_keywords"},{"include":"#text_symbols"},{"include":"#control_keywords"},{"include":"#keywords_followed_by_braces"}]},"keywords_followed_by_braces":{"match":"(?ix)\\b(data|value|field-symbol|final|reference|resumable)\\((\u003c?[a-z_\\/][a-z_0-9\\/]*\u003e?)\\)","captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"variable.other.abap"}}},"logical_operator":{"name":"keyword.control.simple.abap","match":"(?i)(?\u003c=\\s)(not|or|and)(?=\\s)"},"main_keywords":{"name":"keyword.control.simple.abap","match":"(?ix)(?\u003c=^|\\s)(\nabap-source|\nabstract|\naccept|\naccepting|\naccess|\naccording|\naction|\nactivation|\nactual|\nadd|\nadd-corresponding|\nadjacent|\nafter|\nalias|\naliases|\nall|\nallocate|\namdp|\nanalysis|\nanalyzer|\nappend|\nappending|\napplication|\narchive|\narea|\narithmetic|\nas|\nascending|\nassert|\nassign|\nassigned|\nassigning|\nassociation|\nasynchronous|\nat|\nattributes|\nauthority|\nauthority-check|\nauthorization|\nauto|\nback|\nbackground|\nbackward|\nbadi|\nbase|\nbefore|\nbegin|\nbehavior|\nbetween|\nbinary|\nbit|\nblank|\nblanks|\nblock|\nblocks|\nbound|\nboundaries|\nbounds|\nboxed|\nbreak|\nbreak-point|\nbuffer|\nby|\nbypassing|\nbyte|\nbyte-order|\ncall|\ncalling|\ncast|\ncasting|\ncds|\ncentered|\nchange|\nchanging|\nchannels|\nchar-to-hex|\ncharacter|\ncheck|\ncheckbox|\ncid|\ncircular|\nclass|\nclass-data|\nclass-events|\nclass-method|\nclass-methods|\nclass-pool|\ncleanup|\nclear|\nclient|\nclients|\nclock|\nclone|\nclose|\ncnt|\ncode|\ncollect|\ncolor|\ncolumn|\ncomment|\ncomments|\ncommit|\ncommon|\ncommunication|\ncomparing|\ncomponent|\ncomponents|\ncompression|\ncompute|\nconcatenate|\ncond|\ncondense|\ncondition|\nconnection|\nconstant|\nconstants|\ncontext|\ncontexts|\ncontrol|\ncontrols|\nconv|\nconversion|\nconvert|\ncopy|\ncorresponding|\ncount|\ncountry|\ncover|\ncreate|\ncurrency|\ncurrent|\ncursor|\ncustomer-function|\ndata|\ndatabase|\ndatainfo|\ndataset|\ndate|\ndaylight|\nddl|\ndeallocate|\ndecimals|\ndeclarations|\ndeep|\ndefault|\ndeferred|\ndefine|\ndelete|\ndeleting|\ndemand|\ndescending|\ndescribe|\ndestination|\ndetail|\ndetermine|\ndialog|\ndid|\ndirectory|\ndiscarding|\ndisplay|\ndisplay-mode|\ndistance|\ndistinct|\ndivide|\ndivide-corresponding|\ndummy|\nduplicate|\nduplicates|\nduration|\nduring|\ndynpro|\nedit|\neditor-call|\nempty|\nenabled|\nenabling|\nencoding|\nend|\nend-enhancement-section|\nend-of-definition|\nend-of-page|\nend-of-selection|\nend-test-injection|\nend-test-seam|\nendenhancement|\nendexec|\nendfunction|\nendian|\nending|\nendmodule|\nendprovide|\nendselect|\nendwith|\nenhancement|\nenhancement-point|\nenhancement-section|\nenhancements|\nentities|\nentity|\nentries|\nentry|\nenum|\nequiv|\nerrors|\nescape|\nescaping|\nevent|\nevents|\nexact|\nexcept|\nexception|\nexception-table|\nexceptions|\nexcluding|\nexec|\nexecute|\nexists|\nexit|\nexit-command|\nexpanding|\nexplicit|\nexponent|\nexport|\nexporting|\nextended|\nextension|\nextract|\nfail|\nfailed|\nfeatures|\nfetch|\nfield|\nfield-groups|\nfield-symbols|\nfields|\nfile|\nfill|\nfilter|\nfilters|\nfinal|\nfind|\nfirst|\nfirst-line|\nfixed-point|\nflush|\nfollowing|\nfor|\nformat|\nforward|\nfound|\nframe|\nframes|\nfree|\nfrom|\nfull|\nfunction|\nfunction-pool|\ngenerate|\nget|\ngiving|\ngraph|\ngroup|\ngroups|\nhandle|\nhandler|\nhashed|\nhaving|\nheader|\nheaders|\nheading|\nhelp-id|\nhelp-request|\nhide|\nhint|\nhold|\nhotspot|\nicon|\nid|\nidentification|\nidentifier|\nignore|\nignoring|\nimmediately|\nimplemented|\nimplicit|\nimport|\nimporting|\nin|\ninactive|\nincl|\ninclude|\nincludes|\nincluding|\nincrement|\nindex|\nindex-line|\nindicators|\ninfotypes|\ninheriting|\ninit|\ninitial|\ninitialization|\ninner|\ninput|\ninsert|\ninstance|\ninstances|\nintensified|\ninterface|\ninterface-pool|\ninterfaces|\ninternal|\nintervals|\ninto|\ninverse|\ninverted-date|\nis|\njob|\njoin|\nkeep|\nkeeping|\nkernel|\nkey|\nkeys|\nkeywords|\nkind|\nlanguage|\nlast|\nlate|\nlayout|\nleading|\nleave|\nleft|\nleft-justified|\nlegacy|\nlength|\nlet|\nlevel|\nlevels|\nlike|\nline|\nline-count|\nline-selection|\nline-size|\nlinefeed|\nlines|\nlink|\nlist|\nlist-processing|\nlistbox|\nload|\nload-of-program|\nlocal|\nlocale|\nlock|\nlocks|\nlog-point|\nlogical|\nlower|\nmapped|\nmapping|\nmargin|\nmark|\nmask|\nmatch|\nmatchcode|\nmaximum|\nmembers|\nmemory|\nmesh|\nmessage|\nmessage-id|\nmessages|\nmessaging|\nmethod|\nmethods|\nmode|\nmodif|\nmodifier|\nmodify|\nmodule|\nmove|\nmove-corresponding|\nmultiply|\nmultiply-corresponding|\nname|\nnametab|\nnative|\nnested|\nnesting|\nnew|\nnew-line|\nnew-page|\nnew-section|\nnext|\nno-display|\nno-extension|\nno-gap|\nno-gaps|\nno-grouping|\nno-heading|\nno-scrolling|\nno-sign|\nno-title|\nno-zero|\nnodes|\nnon-unicode|\nnon-unique|\nnumber|\nobject|\nobjects|\nobjmgr|\nobligatory|\noccurence|\noccurences|\noccurrence|\noccurrences|\noccurs|\nof|\noffset|\non|\nonly|\nopen|\noptional|\noption|\noptions|\norder|\nothers|\nout|\nouter|\noutput|\noutput-length|\noverflow|\noverlay|\npack|\npackage|\npadding|\npage|\nparameter|\nparameter-table|\nparameters|\npart|\npartially|\npcre|\nperform|\nperforming|\npermissions|\npf-status|\nplaces|\npool|\nposition|\npragmas|\npreceding|\nprecompiled|\npreferred|\npreserving|\nprimary|\nprint|\nprint-control|\nprivate|\nprivileged|\nprocedure|\nprocess|\nprogram|\nproperty|\nprotected|\nprovide|\npush|\npushbutton|\nput|\nquery|\nqueue-only|\nqueueonly|\nquickinfo|\nradiobutton|\nraising|\nrange|\nranges|\nread|\nread-only|\nreceive|\nreceived|\nreceiving|\nredefinition|\nreduce|\nref|\nreference|\nrefresh|\nregex|\nreject|\nrenaming|\nreplace|\nreplacement|\nreplacing|\nreport|\nreported|\nrequest|\nrequested|\nrequired|\nreserve|\nreset|\nresolution|\nrespecting|\nresponse|\nrestore|\nresult|\nresults|\nresumable|\nresume|\nretry|\nreturn|\nreturning|\nright|\nright-justified|\nrollback|\nrows|\nrp-provide-from-last|\nrun|\nsap|\nsap-spool|\nsave|\nsaving|\nscan|\nscreen|\nscroll|\nscroll-boundary|\nscrolling|\nsearch|\nseconds|\nsection|\nselect|\nselect-options|\nselection|\nselection-screen|\nselection-set|\nselection-sets|\nselection-table|\nselections|\nsend|\nseparate|\nseparated|\nsession|\nset|\nshared|\nshift|\nshortdump|\nshortdump-id|\nsign|\nsimple|\nsimulation|\nsingle|\nsize|\nskip|\nskipping|\nsmart|\nsome|\nsort|\nsortable|\nsorted|\nsource|\nspecified|\nsplit|\nspool|\nspots|\nsql|\nstable|\nstamp|\nstandard|\nstart-of-selection|\nstarting|\nstate|\nstatement|\nstatements|\nstatic|\nstatics|\nstatusinfo|\nstep|\nstep-loop|\nstop|\nstructure|\nstructures|\nstyle|\nsubkey|\nsubmatches|\nsubmit|\nsubroutine|\nsubscreen|\nsubstring|\nsubtract|\nsubtract-corresponding|\nsuffix|\nsum|\nsummary|\nsupplied|\nsupply|\nsuppress|\nswitch|\nsymbol|\nsyntax-check|\nsyntax-trace|\nsystem-call|\nsystem-exceptions|\ntab|\ntabbed|\ntable|\ntables|\ntableview|\ntabstrip|\ntarget|\ntask|\ntasks|\ntest|\ntest-injection|\ntest-seam|\ntesting|\ntext|\ntextpool|\nthen|\nthrow|\ntime|\ntimes|\ntitle|\ntitlebar|\nto|\ntokens|\ntop-lines|\ntop-of-page|\ntrace-file|\ntrace-table|\ntrailing|\ntransaction|\ntransfer|\ntransformation|\ntranslate|\ntransporting|\ntrmac|\ntruncate|\ntruncation|\ntype|\ntype-pool|\ntype-pools|\ntypes|\nuline|\nunassign|\nunbounded|\nunder|\nunicode|\nunion|\nunique|\nunit|\nunix|\nunpack|\nuntil|\nunwind|\nup|\nupdate|\nupper|\nuser|\nuser-command|\nusing|\nutf-8|\nuuid|\nvalid|\nvalidate|\nvalue|\nvalue-request|\nvalues|\nvary|\nvarying|\nversion|\nvia|\nvisible|\nwait|\nwhen|\nwhere|\nwindow|\nwindows|\nwith|\nwith-heading|\nwith-title|\nwithout|\nword|\nwork|\nworkspace|\nwrite|\nxml|\nzone\n\t\t \t)(?=\\s|\\.|:|,)"},"operators":{"patterns":[{"include":"#other_operator"},{"include":"#arithmetic_operator"},{"include":"#comparison_operator"},{"include":"#logical_operator"}]},"other_operator":{"name":"keyword.control.simple.abap","match":"(?\u003c=\\s)(\u0026\u0026|\u0026|\\?=|\\+=|-=|\\/=|\\*=|\u0026\u0026=|\u0026=)(?=\\s)"},"reserved_names":{"name":"constant.language.abap","match":"(?ix)(?\u003c=\\s)(me|super)(?=\\s|\\.|,|-\u003e)"},"sql_functions":{"name":"entity.name.function.sql.abap","match":"(?ix)(?\u003c=\\s)(\nabap_system_timezone|\nabap_user_timezone|\nabs|\nadd_days|\nadd_months|\nallow_precision_loss|\nas_geo_json|\navg|\nbintohex|\ncast|\nceil|\ncoalesce|\nconcat_with_space|\nconcat|\ncorr_spearman|\ncorr|\ncount|\ncurrency_conversion|\ndatn_add_days|\ndatn_add_months|\ndatn_days_between|\ndats_add_days|\ndats_add_months|\ndats_days_between|\ndats_from_datn|\ndats_is_valid|\ndats_tims_to_tstmp|\ndats_to_datn|\ndayname|\ndays_between|\ndense_rank|\ndivision|\ndiv|\nextract_day|\nextract_hour|\nextract_minute|\nextract_month|\nextract_second|\nextract_year|\nfirst_value|\nfloor|\ngrouping|\nhextobin|\ninitcap|\ninstr|\nis_valid|\nlag|\nlast_value|\nlead|\nleft|\nlength|\nlike_regexpr|\nlocate_regexpr_after|\nlocate_regexpr|\nlocate|\nlower|\nlpad|\nltrim|\nmax|\nmedian|\nmin|\nmod|\nmonthname|\nntile|\noccurrences_regexpr|\nover|\nproduct|\nrank|\nreplace_regexpr|\nreplace|\nrigth|\nround|\nrow_number|\nrpad|\nrtrim|\nstddev|\nstring_agg|\nsubstring_regexpr|\nsubstring|\nsum|\ntims_from_timn|\ntims_is_valid|\ntims_to_timn|\nto_blob|\nto_clob|\ntstmp_add_seconds|\ntstmp_current_utctimestamp|\ntstmp_is_valid|\ntstmp_seconds_between|\ntstmp_to_dats|\ntstmp_to_dst|\ntstmp_to_tims|\ntstmpl_from_utcl|\ntstmpl_to_utcl|\nunit_conversion|\nupper|\nutcl_add_seconds|\nutcl_current|\nutcl_seconds_between|\nuuid|\nvar|\nweekday\n )(?=\\()"},"sql_types":{"name":"entity.name.type.sql.abap","match":"(?ix)(?\u003c=\\s)(char|clnt|cuky|curr|datn|dats|dec|decfloat16|decfloat34|fltp|int1|int2|int4|int8|lang|numc|quan|raw|sstring|timn|tims|unit|utclong)(?=\\s|\\(|\\))"},"system_fields":{"match":"(?ix)\\b(sy)-(abcde|batch|binpt|calld|callr|colno|cpage|cprog|cucol|curow|datar|datlo|datum|dayst|dbcnt|dbnam|dbsysc|dyngr|dynnr|fdayw|fdpos|host|index|langu|ldbpg|lilli|linct|linno|linsz|lisel|listi|loopc|lsind|macol|mandt|marow|modno|msgid|msgli|msgno|msgty|msgv[1-4]|opsysc|pagno|pfkey|repid|saprl|scols|slset|spono|srows|staco|staro|stepl|subrc|sysid|tabix|tcode|tfill|timlo|title|tleng|tvar[0-9]|tzone|ucomm|uline|uname|uzeit|vline|wtitl|zonlo)(?=\\.|\\s)","captures":{"1":{"name":"variable.language.abap"},"2":{"name":"variable.language.abap"}}},"text_symbols":{"match":"(?ix)(?\u003c=^|\\s)(text)-([A-Z0-9]{1,3})(?=\\s|\\.|:|,)","captures":{"1":{"name":"keyword.control.simple.abap"},"2":{"name":"constant.numeric.abap"}}}}}
|