Skip to main content

STUDIO_HIGHLIGHTS_QUERY

Constant STUDIO_HIGHLIGHTS_QUERY 

Source
pub const STUDIO_HIGHLIGHTS_QUERY: &str = "; start @punctuation.bracket.json (magenta fg, default bg)\n[\n  (json_array_literal\n    [\n      \"[\"\n      \"]\"\n    ] @punctuation.bracket.json)\n  (json_object_literal\n    [\n      \"{\"\n      \"}\"\n    ] @punctuation.bracket.json)\n]\n\n[\n  (class_body\n    [\n      \"{\"\n      \"}\"\n    ] @punctuation.special)\n  (method_definition\n    [\n      \"{\"\n      \"}\"\n    ] @punctuation.special)\n]\n\n; end @punctuation.bracket.json\n; start @label (maroon fg, yellow bg)\n(tag) @label\n\n; end @label (maroon fg, yellow bg)\n; start @variable.builtin @keyword.directive @variable.member.oref @constant.builtin (blue fg, default bg)\n[\n  (ssvn)\n  (system_defined_variable)\n  (system_defined_function)\n  \"$$\"\n] @variable.builtin\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(macro_value) @constant.builtin\n\n[\n  (oref_property)\n  (oref_parameter)\n] @variable.member.oref\n\n(oref_method\n  (method_name) @variable.member.oref)\n\n(class_method_call\n  (method_name) @variable.member.oref)\n\n; end @variable.builtin @keyword.directive @variable.member.oref @constant.builtin (blue fg, default bg)\n; start @type.definition (purple fg)\n[\n  (keyword_embedded_html)\n  (keyword_embedded_xml)\n  (keyword_embedded_sql_amp)\n  (keyword_embedded_sql_hash)\n  (keyword_js)\n  (sql_field_reference)\n] @type.definition\n\n; end  @type.definition (purple fg)\n; local variable \"maroon fg, light_cyan bg\"\n(lvn) @variable\n\n; end local variable\n; start black fg, default bg @punctuation.special, @variable.member, @number, @keyword.debug\n[\n  (embedded_js_special_case_complete)\n  (embedded_sql_marker)\n  (embedded_sql_reverse_marker)\n  (html_marker)\n  (html_marker_reversed)\n  \"@\"\n  \":\"\n  \",\"\n  \"=\"\n  \"\'=\"\n  \"..\"\n  \"...\"\n  \"^\"\n  \"+\"\n  \"-\"\n  \"|\"\n  (bracket)\n  (binary_operator)\n  \"\'?\"\n  \"?\"\n  \"<\"\n  \">\"\n  \"/\"\n] @punctuation.special\n\n[\n  (json_number_literal)\n  (numeric_literal)\n] @number\n\n[\n  (keyword_trace)\n  (keyword_errortrap)\n  (keyword_interrupt)\n  (zbreak_command_option)\n  (keyword_clear)\n  (keyword_all)\n  (keyword_debug)\n  (keyword_step)\n  (keyword_nostep)\n  (keyword_stepmethod)\n  (keyword_ext)\n  (keyword_destruct)\n] @keyword.debug\n\n[\n  (instance_variable)\n  (gvn)\n  (macro_arg)\n  (macro_def)\n] @variable.member\n\n; end black fg, default bg @punctuation.special, @variable.member, @number, @keyword.debug\n; \"Navy FG, Default BG\" (Object (Class, super))\n[\n  (keyword_pound_pound_super)\n  (keyword_pound_pound_class)\n] @keyword.operator\n\n; end \"Navy FG, Default BG\" (Object (Class, super))\n; keyword names (red fg, default bg)\n[\n  (keyword_for)\n  (keyword_while)\n  (keyword_continue)\n  (keyword_quit)\n  (keyword_if)\n  (keyword_elseif)\n  (keyword_else)\n  (keyword_oldelse)\n  (keyword_throw)\n  (keyword_try)\n  (keyword_catch)\n  (keyword_return)\n  (keyword_break)\n  (keyword_zbreak)\n  (keyword_zkill)\n  (keyword_ztrap)\n  (keyword_zz)\n  (keyword_public)\n  (keyword_private)\n  (keyword_methodimpl)\n  (device_keywords)\n  (close_parameter_option_value)\n  (keyword_print)\n  (keyword_zprint)\n  (keyword_zn)\n  (keyword_set)\n  (keyword_write)\n  (keyword_zwrite)\n  (keyword_do)\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  (keyword_do_old)\n  (keyword_old_if)\n  (old_if_remove)\n  (keyword_old_if_refactor)\n] @keyword\n\n; end (red fg, default bg)\n; macro (silver bg, blue fg)\n(macro) @function.macro\n\n; end macro (silver bg, blue fg)\n; start (teal fg, default bg) @type.builtin\n(class_ref\n  (class_name) @type.builtin)\n\n; end (teal fg, default bg) @type.builtin\n; start comment (green fg, default bg)\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; end (green fg, default bg)\n; start string (\"black fg, pink bg\")\n[\n  (json_string_literal)\n  (string_literal)\n] @string\n\n; end string (\"black fg, pink bg\")\n; start brackets (purple fg, default bg)\n[\n  \"{\"\n  \"}\"\n  (bracket)\n] @punctuation.bracket\n\n; end brackets (purple fg, default bg)\n; start @label (maroon fg, yellow bg)\n(routine_name) @label\n\n; end @label (maroon fg, yellow bg)\n; start @string.regexp (olive fg, default bg)\n(pattern_expression) @string.regexp\n\n(keyword_zsu) @keyword.modifier\n\n; end @string.regexp (olive fg, default bg)\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; start Dots in dotted statements, (black fg,silver bg)\n(dotted_statement\n  (dot) @punctuation.special.dots)\n\n; end Dots in dotted statements (black fg,silver bg)\n; start #dim command\n; @type.builtin -> teal fg, default bg\n; @variable.member -> black fg, default bg\n; @variable -> maroon fg, light_cyan bg\n(pound_dim\n  (keyword_as)\n  .\n  (variable_datatype\n    [\n      (instance_variable)\n      (macro)\n      (objectscript_identifier)\n      (objectscript_identifier_special)\n    ] @type.builtin) @type.builtin)\n\n(pound_dim\n  (keyword_as)\n  .\n  (variable_datatype\n    [\n      (instance_variable)\n      (macro)\n      (objectscript_identifier)\n      (objectscript_identifier_special)\n    ] @variable.member) @variable.member\n  .\n  (keyword_of) @punctuation.special\n  .\n  (variable_datatype\n    [\n      (instance_variable)\n      (macro)\n      (objectscript_identifier)\n      (objectscript_identifier_special)\n    ] @type.builtin) @type.builtin)\n\n(pound_dim\n  (keyword_dim)\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @variable)\n\n; end #dim command\n; start write command/read command\n; @punctuation.special -> black fg, default bg\n[\n  \"!\"\n  \"*\"\n  \"?\"\n  (mnemonic_name)\n  (read_fchar)\n] @punctuation.special\n\n; end write command/read command\n; start lock command\n; @punctuation.special -> black fg, default background\n(command_lock_arguments_variant_1\n  [\n    \"+\"\n    \"-\"\n  ] @punctuation.special)\n\n(command_lock_arguments_variant_2\n  [\n    \"+\"\n    \"-\"\n  ] @punctuation.special)\n\n(locktype\n  [\n    \"#\"\n    \"_\"\n  ] @punctuation.special)\n\n; end lock command\n; read command # start (black fg, default bg)\n(read_variable\n  \"#\" @punctuation.special)\n\n; read command # end\n; start line_ref\n; @label -> maroon fg, yellow bg\n; @variable ->  \"maroon fg, light_cyan bg\"\n(line_ref\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @label)\n\n(line_ref\n  [\n    \"+\"\n    \"-\"\n  ] @punctuation.special\n  .\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @variable)\n\n; end line_ref\n; start dollarsf\n; @variable -> maroon fg, light_cyan bg\n; @variable.member.oref ->  blue fg, default bg\n(dollarsf\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @type.builtin\n  \".\"\n  .\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @variable.member.oref)\n\n; end dollarsf\n; start extrinsic_function\n(extrinsic_function\n  [\n    (objectscript_identifier)\n    (objectscript_identifier_special)\n  ] @label)\n\n; end extrinsic_function\n; start highlighting for code never touched\n[\n  (pound_if_special_case)\n  (pound_if_special_case_else)\n  (pound_if_special_case_else_if)\n] @comment.inactive\n\n; end highlighting for code never touched\n; start zload command\n; @label -> (maroon fg, yellow bg)\n(command_zload\n  (expression\n    (expr_atom\n      [\n        (lvn\n          (objectscript_identifier) @label)\n        (lvn\n          (objectscript_identifier_special) @label)\n        (instance_variable) @label\n        (oref_chain_expr\n          [\n            (lvn)\n            (instance_variable)\n          ] @label\n          (oref_chain_segment\n            (oref_property\n              (property_name\n                (identifier_segment_immediate) @label) @label)) @label)\n      ] @label)))\n\n; end zload command\n; start #ifdef command\n; @variable.member -> black fg, default bg\n(pound_ifdef\n  (keyword_pound_ifdef)\n  .\n  (expression\n    (expr_atom\n      (lvn\n        [\n          (objectscript_identifier)\n          (objectscript_identifier_special)\n        ] @variable.member))))\n\n; end #ifdef command\n; start #ifndef command\n; @variable.member -> black fg, default bg\n(pound_ifndef\n  (keyword_pound_ifndef)\n  .\n  (expression\n    (expr_atom\n      (lvn\n        [\n          (objectscript_identifier)\n          (objectscript_identifier_special)\n        ] @variable.member))))\n\n; end #ifdef command\n; start #import command\n; @variable.member -> black fg, default bg\n(pound_import\n  (class_name) @variable.member)\n\n; end #import command\n; start #include command\n; @label -> (maroon fg, yellow bg)\n(pound_include\n  (class_name) @label)\n\n; end #include command\n; === END CORE ===\n; === BEGIN LOCAL ===\n(iris_username) @variable.member\n\n[\n  (keyword_import)\n  (keyword_include)\n  (keyword_includegenerator)\n  (keyword_class)\n  (keyword_method)\n  (keyword_classmethod)\n  (class_extends)\n  (keyword_xdata)\n  (keyword_query)\n  (keyword_foreignkey)\n  (keyword_index)\n  (keyword_property)\n  (keyword_projection)\n  (keyword_relationship)\n  (keyword_parameter)\n  (keyword_references)\n  (keyword_trigger)\n  (keyword_storage)\n] @keyword.type\n\n(class_definition\n  (class_name) @keyword.type)\n\n;start brackets representing keywords\n;@punctuation.special -> black fg, default bg\n(query_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(class_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(query_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(property_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(parameter_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(method_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(foreignkey_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(index_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(extent_index_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(call_method_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(projection_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(relationship_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(expression_method_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(external_method_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(xdata_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(storage_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n(trigger_keywords\n  [\n    \"[\"\n    \"]\"\n  ] @punctuation.special)\n\n; end brackets representing keywords\n(class_keyword\n  (_\n    [\n      \"{\"\n      \"}\"\n    ] @punctuation.special))\n\n(class_keyword_owner\n  [\n    \"{\"\n    \"}\"\n  ] @punctuation.special)\n\n(documatic_line) @comment.documentation @spell\n\n; start keywords\n; @keyword.operator -> navy fg, default bg\n; \n[\n  (xdata_keyword)\n  (class_keyword)\n  (method_keyword)\n  (expression_method_keywords)\n  (call_method_keywords)\n  (external_method_keywords)\n  (foreignkey_keyword)\n  (index_keyword)\n  (index_keyword_extent)\n  (keyword_byref)\n  (keyword_output)\n  (parameter_keyword)\n  (property_keyword)\n  (projection_keyword)\n  (relationship_keyword)\n  (query_keyword)\n  (trigger_keyword)\n] @keyword.operator\n\n(property_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(query_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(class_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(index_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(method_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(trigger_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(class_keyword\n  (_\n    [\n      (property_name)\n      (typename)\n      (storage_name)\n    ] @type.definition))\n\n(query_keyword\n  (_\n    [\n      (property_name)\n      (typename)\n    ] @type.definition))\n\n(relationship_keyword\n  (_\n    [\n      (variable_datatype)\n      (typename)\n    ] @type.definition))\n\n(method_keyword\n  (_\n    [\n      (property_name)\n      (typename)\n      (xml_identifier)\n    ] @type.definition))\n\n(method_keyword_external_proc_name\n  (objectscript_identifier) @type.definition)\n\n(parameter_keyword\n  (_\n    [\n      (typename)\n      (keyword_list)\n    ] @type.definition))\n\n(trigger_keyword\n  (_\n    [\n      (typename)\n      (trigger_event_value)\n    ] @type.definition))\n\n(property_keyword\n  (_\n    (typename) @type.definition))\n\n(property_keyword_aliases\n  (property_name) @variable.member)\n\n(foreignkey_keyword\n  (_\n    (typename) @type.definition))\n\n(foreignkey_keyword\n  (_\n    (query_name) @variable.member.sql))\n\n(expression_method_keywords\n  (_\n    (typename) @type.definition))\n\n(call_method_keywords\n  (_\n    (typename) @type.definition))\n\n(external_method_keywords\n  (_\n    (typename) @type.definition))\n\n(method_keyword\n  (_\n    (method_name) @variable.member))\n\n; start class member names\n; @variable.member -> black fg, default bg\n(method_definition\n  (method_name) @variable.member)\n\n(xdata\n  (xdata_name) @variable.member)\n\n(property\n  (property_name) @variable.member)\n\n(parameter\n  (parameter_name) @variable.member)\n\n(relationship\n  (relationship_name) @variable.member)\n\n(query\n  (query_name) @variable.member)\n\n(foreignkey\n  [\n    (foreignkey_name)\n    (property_name)\n    (index_name)\n  ] @variable.member)\n\n(index\n  (index_name) @variable.member)\n\n(projection\n  (projection_name) @variable.member)\n\n(trigger\n  (trigger_name) @variable.member)\n\n(storage\n  (storage_name) @variable.member)\n\n; end class member names\n(foreignkey\n  (class_name) @keyword.type)\n\n(xdata_keyword\n  (_\n    (typename) @type.definition))\n\n(xdata_keyword_mimetype\n  (typename) @type.definition) @keyword.operator\n\n; start return_type @keyword.type\n(return_type) @keyword.type\n\n; end return_type\n; start method_arg @variable.parameter\n(method_arg) @variable.parameter\n\n(method_arg\n  (lvn\n    (objectscript_identifier) @variable.parameter))\n\n(method_arg\n  (expr_atom\n    (lvn\n      (objectscript_identifier) @variable.parameter)))\n\n; end method_arg @variable.parameter\n; END LOCAL\n; start Include, Import, Includegenerator\n(import_code\n  (include_clause\n    (class_name) @keyword.type))\n\n(include_code\n  (include_clause\n    (class_name) @keyword.type))\n\n(include_generator\n  (include_clause\n    (class_name) @keyword.type))\n\n; end Include, Import, Includegenerator\n; start index\n(index\n  (keyword_on) @keyword.operator\n  (index_properties\n    (index_item) @variable.member))\n\n(index\n  \";\" @punctuation.special)\n\n(index_properties\n  [\n    \"(\"\n    \")\"\n  ] @punctuation.special)\n\n; end index\n; start parameter\n(parameter\n  \";\" @punctuation.special)\n\n(parameter_type\n  (keyword_as) @keyword.operator) @variable.member\n\n; end parameter\n; start property\n(property\n  \";\" @punctuation.special)\n\n; end property\n; start projection\n(projection\n  \";\" @punctuation.special)\n\n; end projection\n;start relationship\n(relationship\n  \";\" @punctuation.special)\n\n; end relationship\n(default_argument_value) @type.definition\n";
Expand description

The syntax highlighting query for ObjectScript UDL (Studio Version).