pub const OBJECTSCRIPT_INJECTIONS_QUERY: &str = "(embedded_html\n (angled_bracket_fenced_text) @injection.content\n (#set! injection.language \"html\")\n)\n\n(embedded_sql\n (_\n (paren_fenced_text) @injection.content\n )\n (#set! injection.language \"sql\")\n)\n\n (embedded_js\n [\n (angled_bracket_fenced_text)\n (embedded_js_special_case)\n ] @injection.content\n (#set! injection.language \"javascript\"))\n\n\n(embedded_xml\n (angled_bracket_fenced_text) @injection.content\n (#set! injection.language \"xml\")\n)\n\n([\n (line_comment_1)\n (line_comment_2)\n (line_comment_3)\n (block_comment)\n] @injection.content\n (#set! injection.language \"comment\"))\n\n\n;; Keywords, one of type language = \"python\", none of type codemode\n; External method body injection based on [ Language = ... ]\n(method_definition\n (external_method_keywords\n (method_keyword_language\n (rhs) @lang))\n (external_method_body_content) @injection.content\n (#set! injection.include-children \"true\")\n (#match? @lang \"^[Pp][Yy][Tt][Hh][Oo][Nn]$\")\n (#set! injection.language \"python\"))\n\n(method_definition\n (external_method_keywords\n (method_keyword_language\n (rhs) @lang))\n (external_method_body_content) @injection.content\n (#set! injection.include-children \"true\")\n (#match? @lang \"^[Tt][Ss][Qq][Ll]$\")\n (#set! injection.language \"tsql\"))\n\n(method_definition\n (external_method_keywords\n (method_keyword_language\n (rhs) @lang))\n (external_method_body_content) @injection.content\n (#set! injection.include-children \"true\")\n (#match? @lang \"^[Ii][Ss][Pp][Ll]$\")\n (#set! injection.language \"ispl\"))\n\n\n\n;; External trigger with python body\n(\n (trigger\n (external_trigger\n (trigger_keywords\n (method_keyword_language\n (rhs) @lang))\n (external_method_body_content) @injection.content))\n (#set! injection.include-children \"true\")\n (#match? @lang \"^[Pp][Yy][Tt][Hh][Oo][Nn]$\")\n (#set! injection.language \"python\")\n)\n\n;; External trigger with TSQL body\n(\n (trigger\n (external_trigger\n (trigger_keywords\n (method_keyword_language\n (rhs) @lang))\n (external_method_body_content) @injection.content))\n (#set! injection.include-children \"true\")\n (#match? @lang \"^[Tt][Ss][Qq][Ll]$\")\n (#set! injection.language \"tsql\")\n)\n\n; A query must be of type %SQLQuery to have an SQL body, otherwise the body\n; is empty\n(query\n (return_type\n (typename\n (identifier) @_querytype\n (#match? @_querytype \"^%[Ss][Qq][Ll][Qq][Uu][Ee][Rr][Yy]$\")))\n (query_body\n (query_body_content) @injection.content)\n (#set! injection.language \"sql\")\n (#set! injection.include-children \"true\")\n)\n\n; XDATA blocks:\n; - xdata_any requires a keyword list that includes MimeType\n; - xdata_xml allows an optional keyword list and defaults to XML\n\n; ----------------------------\n; XDATA injections (MimeType)\n; ----------------------------\n\n; text/markdown\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?text/markdown\\\"?$\")\n (#set! injection.language \"markdown\"))\n\n; XML MimeTypes\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?([Tt][Ee][Xx][Tt]|[Aa][Pp][Pp][Ll][Ii][Cc][Aa][Tt][Ii][Oo][Nn])/[Xx][Mm][Ll]\\\"?$\")\n (#set! injection.language \"xml\"))\n\n; text/html\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?text/html\\\"?$\")\n (#set! injection.language \"html\"))\n\n; application/json\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?application/json\\\"?$\")\n (#set! injection.language \"json\"))\n\n; text/yaml or application/yaml\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?([Tt][Ee][Xx][Tt]|[Aa][Pp][Pp][Ll][Ii][Cc][Aa][Tt][Ii][Oo][Nn])/[Yy][Aa][Mm][Ll]\\\"?$\")\n (#set! injection.language \"yaml\"))\n\n; text/css\n(xdata\n (xdata_any\n (xdata_keywords\n (xdata_keyword_mimetype (rhs) @mt))\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#match? @mt \"^\\\"?text/css\\\"?$\")\n (#set! injection.language \"css\"))\n\n; -----------------------------------------\n; XDATA default (no MimeType): XML fallback\n; -----------------------------------------\n(xdata\n (xdata_xml\n (xdata_keywords)?\n (external_method_body_content) @injection.content)\n (#set! injection.include-children \"true\")\n (#set! injection.language \"xml\"))\n\n\n; Storage definition is XML\n(storage\n (storage_body\n (external_method_body_content) @injection.content)\n (#set! injection.language \"xml\")\n (#set! injection.include-children \"true\"))\n";Expand description
The injections query for ObjectScript.