pub const HIGHLIGHTS_QUERY: &str = "; AUTO-GENERATED by scripts/sync_queries.py\n; Edit only the LOCAL section in composed files.\n; File: highlights.scm\n; === BEGIN EXPR ===\n(pattern_expression) @string.regexp\n\n[\n (json_number_literal)\n (numeric_literal)\n] @number\n\n[\n (json_boolean_literal)\n (json_null_literal)\n] @boolean\n\n(json_object_literal_pair\n (json_string_literal) @string.special)\n\n[\n (json_string_literal)\n (string_literal)\n] @string\n\n[\n (keyword_pound_pound_super)\n (keyword_pound_pound_class)\n] @keyword.operator\n\n(system_defined_function) @function.builtin\n\n(sql_field_modifier) @keyword.modifier\n\n[\n (property_name)\n (oref_parameter)\n (sql_field_identifier)\n] @variable.member\n\n(method_name) @function.method\n\n[\n (routine_name)\n (class_name)\n] @type\n\n(macro_function) @function.macro\n\n(macro_constant) @constant.macro\n\n(objectscript_identifier) @variable\n\n[\n (ssvn)\n (system_defined_variable)\n \"$$\"\n] @variable.builtin\n\n[\n (gvn)\n (objectscript_identifier_special)\n (instance_variable)\n] @variable.member\n\n(method_arg) @variable.parameter\n\n; I didn\'t include ( or ) in this, because they are often grouped\n; as part of a sequence that gets turned into a single token, so they\n; don\'t get matched, and one ends up getting colored differently than the other.\n[\n \"_\"\n \",\"\n \":\"\n \"..\"\n \"...\"\n \"\'[\"\n \"\']\"\n \"\']]\"\n \"\\\"\"\n \"\\\"\\\"\"\n \"[\"\n \"]\"\n \"]]\"\n \"{\"\n \"}\"\n \"/\"\n \"\\\\\"\n \"#\"\n \"|\"\n \"||\"\n \"$$\"\n] @punctuation.delimiter\n\n[\n \"\'&\"\n \"&\"\n \"&&\"\n \"\'<\"\n \"\'=\"\n \"\'>\"\n \"^\"\n \"-\"\n \"^$\"\n \"+\"\n \"<\"\n \"<=\"\n \"=\"\n \">\"\n \">=\"\n \"@\"\n \"*\"\n \"**\"\n \"\'\"\n \"\'!\"\n \"\'?\"\n \"!\"\n \"?\"\n] @operator\n\n(bracket) @punctuation.bracket\n\n; === END EXPR ===\n; === BEGIN CORE ===\n(macro_arg) @variable.member\n\n(macro_value) @constant.builtin\n\n(macro_def) @keyword.directive.define\n\n[\n (keyword_for)\n (keyword_while)\n (keyword_continue)\n (keyword_quit)\n] @keyword.repeat\n\n[\n (keyword_if)\n (keyword_elseif)\n (keyword_else)\n (keyword_oldelse)\n] @keyword.conditional\n\n[\n (keyword_throw)\n (keyword_try)\n (keyword_catch)\n] @keyword.exception\n\n(keyword_return) @keyword.return\n\n[\n (keyword_zbreak)\n (keyword_debug)\n (zbreak_command_option)\n (keyword_trace)\n (keyword_step)\n (keyword_nostep)\n (keyword_stepmethod)\n (keyword_errortrap)\n (keyword_interrupt)\n (keyword_zkill)\n (keyword_zn)\n (keyword_zsu)\n (keyword_ztrap)\n (keyword_zz)\n] @keyword.debug\n\n[\n (keyword_pound_define)\n (keyword_pound_def1arg)\n (keyword_pound_if)\n (keyword_pound_elseif)\n (keyword_pound_else)\n (keyword_pound_endif)\n (keyword_pound_ifdef)\n (keyword_pound_ifndef)\n (keyword_dim)\n (keyword_pound_import)\n (keyword_pound_include)\n (keyword_pound_delay)\n (locktype)\n (tag_end_if)\n] @keyword.directive\n\n[\n (keyword_as)\n (keyword_of)\n (keyword_public)\n (keyword_private)\n (keyword_methodimpl)\n (device_keywords)\n (close_parameter_option_value)\n (keyword_clear)\n (keyword_on)\n (keyword_off)\n (keyword_all)\n (keyword_ext)\n (keyword_stepmethod)\n (keyword_destruct)\n] @keyword.modifier\n\n[\n (keyword_print)\n (keyword_zprint)\n (keyword_set)\n (keyword_write)\n (keyword_zwrite)\n (keyword_do)\n (keyword_do_old)\n (keyword_old_if)\n (old_if_remove)\n (keyword_old_if_refactor)\n (keyword_for)\n (keyword_while)\n (keyword_kill)\n (keyword_lock)\n (keyword_read)\n (keyword_open)\n (keyword_close)\n (keyword_use)\n (keyword_new)\n (keyword_job)\n (keyword_merge)\n (keyword_goto)\n (keyword_halt_or_hang)\n (keyword_halt)\n (keyword_hang)\n (keyword_tcommit)\n (keyword_trollback)\n (keyword_tstart)\n (keyword_xecute)\n (keyword_view)\n (keyword_zremove)\n (command_keyword)\n (keyword_zload)\n] @function.builtin\n\n[\n (keyword_embedded_html)\n (keyword_embedded_xml)\n (keyword_embedded_sql_amp)\n (keyword_embedded_sql_hash)\n (keyword_js)\n] @keyword.operator\n\n[\n (embedded_js_special_case_complete)\n (embedded_sql_marker)\n (embedded_sql_reverse_marker)\n (html_marker)\n (html_marker_reversed)\n] @punctuation.special\n\n[\n (line_comment_1)\n (line_comment_2)\n (line_comment_3)\n (line_comment_4)\n (block_comment)\n] @comment @spell\n\n(tag) @label\n\n(pound_if_special_case) @comment.inactive\n\n[\n (command_quit)\n (command_else)\n (command_continue)\n (command_if)\n (command_do)\n (command_for)\n (command_lock)\n (command_return)\n (command_halt_or_hang)\n (command_break)\n (command_tcommit)\n (command_trollback)\n (command_tstart)\n (command_zbreak)\n] @comment\n\n\"--\" @operator\n\n(dotted_statement\n (dot) @punctuation.special.dots)\n\n; === END CORE ===\n; === BEGIN LOCAL ===\n(iris_username) @keyword.directive\n\n[\n (keyword_import)\n (keyword_include)\n (keyword_includegenerator)\n] @keyword.import\n\n[\n (keyword_method)\n (keyword_classmethod)\n] @keyword.function\n\n[\n (keyword_class)\n (keyword_extends)\n (keyword_property)\n (keyword_relationship)\n (keyword_foreignkey)\n (keyword_parameter)\n (keyword_projection)\n (keyword_index)\n (keyword_query)\n (keyword_trigger)\n (keyword_xdata)\n (keyword_storage)\n] @keyword.type\n\n[\n (method_keyword_codemode_expression)\n (call_method_keyword)\n (method_keyword)\n (class_keywords)\n (query_keywords)\n (trigger_keyword)\n (method_keyword_language)\n (relationship_keyword)\n (foreignkey_keyword)\n (parameter_keyword)\n (projection_keyword)\n (index_keyword)\n (index_keyword_extent)\n (xdata_keyword)\n (xdata_keyword_mimetype)\n (property_keyword)\n (keyword_not)\n (keyword_references)\n (keyword_byref)\n (keyword_output)\n] @keyword.modifier\n\n(documatic_line) @comment.documentation @spell\n\n[\n (query_name)\n (trigger_name)\n (relationship_name)\n (foreignkey_name)\n (parameter_name)\n (projection_name)\n (index_name)\n (xdata_name)\n (storage_name)\n (xml_identifier)\n (index_property)\n] @variable.member\n\n[\n (return_type)\n (keyword_list)\n (parameter_type)\n (index_type)\n (index_property_type)\n (typename)\n] @type.builtin\n\n; === END LOCAL ===\n";Expand description
The syntax highlighting query for ObjectScript UDL.