mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-03 20:10:10 -04:00
feat: add objectscript routine recognition as well
This commit is contained in:
parent
6f2be999f2
commit
c97ffd4511
7 changed files with 494 additions and 110 deletions
284
runtime/queries/objectscript_routine/highlights.scm
Normal file
284
runtime/queries/objectscript_routine/highlights.scm
Normal file
|
|
@ -0,0 +1,284 @@
|
|||
; AUTO-GENERATED by scripts/sync_queries.py
|
||||
; Edit only the LOCAL section in composed files.
|
||||
; File: highlights.scm
|
||||
; === BEGIN EXPR ===
|
||||
(pattern_expression) @string.regexp
|
||||
|
||||
[
|
||||
(json_number_literal)
|
||||
(numeric_literal)
|
||||
] @number
|
||||
|
||||
[
|
||||
(json_boolean_literal)
|
||||
(json_null_literal)
|
||||
] @boolean
|
||||
|
||||
(json_object_literal_pair
|
||||
(json_string_literal) @string.special)
|
||||
|
||||
[
|
||||
(json_string_literal)
|
||||
(string_literal)
|
||||
] @string
|
||||
|
||||
[
|
||||
(keyword_pound_pound_super)
|
||||
(keyword_pound_pound_class)
|
||||
] @keyword.operator
|
||||
|
||||
(system_defined_variable) @variable.builtin
|
||||
|
||||
(system_defined_function) @function.builtin
|
||||
|
||||
(sql_field_modifier) @keyword.modifier
|
||||
|
||||
[
|
||||
(property_name)
|
||||
(parameter_name)
|
||||
(sql_field_identifier)
|
||||
] @variable.member
|
||||
|
||||
(method_name) @function.method
|
||||
|
||||
[
|
||||
(routine_name)
|
||||
(class_name)
|
||||
] @type
|
||||
|
||||
(macro_function) @function.macro
|
||||
|
||||
(macro_constant) @constant.macro
|
||||
|
||||
[
|
||||
(lvn)
|
||||
(gvn)
|
||||
(ssvn)
|
||||
(objectscript_identifier)
|
||||
] @variable
|
||||
|
||||
(namespace) @module
|
||||
|
||||
[
|
||||
(objectscript_identifier_special)
|
||||
(instance_variable)
|
||||
] @variable.member
|
||||
|
||||
(method_arg) @variable.parameter
|
||||
|
||||
; I didn't include ( or ) in this, because they are often grouped
|
||||
; as part of a sequence that gets turned into a single token, so they
|
||||
; don't get matched, and one ends up getting colored differently than the other.
|
||||
[
|
||||
"_"
|
||||
","
|
||||
":"
|
||||
".."
|
||||
"..."
|
||||
"'["
|
||||
"']"
|
||||
"']]"
|
||||
"\""
|
||||
"\"\""
|
||||
"["
|
||||
"]"
|
||||
"]]"
|
||||
"{"
|
||||
"}"
|
||||
"/"
|
||||
"\\"
|
||||
"#"
|
||||
"|"
|
||||
"||"
|
||||
"$$"
|
||||
] @punctuation.delimiter
|
||||
|
||||
[
|
||||
"'&"
|
||||
"&"
|
||||
"&&"
|
||||
"'<"
|
||||
"'="
|
||||
"'>"
|
||||
"^"
|
||||
"-"
|
||||
"^$"
|
||||
"+"
|
||||
"<"
|
||||
"<="
|
||||
"="
|
||||
">"
|
||||
">="
|
||||
"@"
|
||||
"*"
|
||||
"**"
|
||||
"'"
|
||||
"'!"
|
||||
"'?"
|
||||
"!"
|
||||
"?"
|
||||
] @operator
|
||||
|
||||
(bracket) @punctuation.bracket
|
||||
|
||||
; === END EXPR ===
|
||||
; === BEGIN CORE ===
|
||||
(macro_arg) @variable.member
|
||||
|
||||
(macro_value) @constant.builtin
|
||||
|
||||
(macro_def) @keyword.directive.define
|
||||
|
||||
[
|
||||
(keyword_for)
|
||||
(keyword_while)
|
||||
(keyword_continue)
|
||||
(keyword_quit)
|
||||
] @keyword.repeat
|
||||
|
||||
[
|
||||
(keyword_if)
|
||||
(keyword_elseif)
|
||||
(keyword_else)
|
||||
(keyword_oldelse)
|
||||
] @keyword.conditional
|
||||
|
||||
[
|
||||
(keyword_throw)
|
||||
(keyword_try)
|
||||
(keyword_catch)
|
||||
] @keyword.exception
|
||||
|
||||
(keyword_return) @keyword.return
|
||||
|
||||
[
|
||||
(keyword_break)
|
||||
(keyword_zbreak)
|
||||
(keyword_debug)
|
||||
(keyword_trace)
|
||||
(keyword_step)
|
||||
(keyword_nostep)
|
||||
(keyword_stepmethod)
|
||||
(keyword_errortrap)
|
||||
(keyword_interrupt)
|
||||
(keyword_normal)
|
||||
(keyword_zkill)
|
||||
(keyword_zn)
|
||||
(keyword_zsu)
|
||||
(keyword_ztrap)
|
||||
(keyword_zz)
|
||||
] @keyword.debug
|
||||
|
||||
[
|
||||
(keyword_pound_define)
|
||||
(keyword_pound_def1arg)
|
||||
(keyword_pound_if)
|
||||
(keyword_pound_elseif)
|
||||
(keyword_pound_else)
|
||||
(keyword_pound_endif)
|
||||
(keyword_pound_ifdef)
|
||||
(keyword_pound_ifndef)
|
||||
(keyword_dim)
|
||||
(keyword_pound_import)
|
||||
(keyword_pound_include)
|
||||
(keyword_pound_delay)
|
||||
(locktype)
|
||||
] @keyword.directive
|
||||
|
||||
[
|
||||
(keyword_as)
|
||||
(keyword_of)
|
||||
(keyword_public)
|
||||
(keyword_private)
|
||||
(keyword_methodimpl)
|
||||
(open_keywords)
|
||||
(use_keywords)
|
||||
(close_parameter_option_value)
|
||||
(keyword_clear)
|
||||
(keyword_on)
|
||||
(keyword_off)
|
||||
(keyword_all)
|
||||
(keyword_ext)
|
||||
(keyword_stepmethod)
|
||||
(keyword_destruct)
|
||||
] @keyword.modifier
|
||||
|
||||
[
|
||||
(keyword_print)
|
||||
(keyword_zprint)
|
||||
(keyword_set)
|
||||
(keyword_write)
|
||||
(keyword_zwrite)
|
||||
(keyword_do)
|
||||
(keyword_for)
|
||||
(keyword_while)
|
||||
(keyword_kill)
|
||||
(keyword_lock)
|
||||
(keyword_read)
|
||||
(keyword_open)
|
||||
(keyword_close)
|
||||
(keyword_use)
|
||||
(keyword_new)
|
||||
(keyword_job)
|
||||
(keyword_merge)
|
||||
(keyword_goto)
|
||||
(keyword_halt_or_hang)
|
||||
(keyword_halt)
|
||||
(keyword_hang)
|
||||
(keyword_tcommit)
|
||||
(keyword_trollback)
|
||||
(keyword_tstart)
|
||||
(keyword_xecute)
|
||||
(keyword_view)
|
||||
] @function.builtin
|
||||
|
||||
[
|
||||
(keyword_embedded_html)
|
||||
(keyword_embedded_xml)
|
||||
(keyword_embedded_sql_amp)
|
||||
(keyword_embedded_sql_hash)
|
||||
(keyword_js)
|
||||
] @keyword.operator
|
||||
|
||||
[
|
||||
(embedded_js_special_case_complete)
|
||||
(embedded_sql_marker)
|
||||
(embedded_sql_reverse_marker)
|
||||
(html_marker)
|
||||
(html_marker_reversed)
|
||||
] @punctuation.special
|
||||
|
||||
[
|
||||
(line_comment_1)
|
||||
(line_comment_2)
|
||||
(line_comment_3)
|
||||
(line_comment_4)
|
||||
(block_comment)
|
||||
] @comment @spell
|
||||
|
||||
(namespace) @module
|
||||
|
||||
(tag) @label
|
||||
|
||||
[
|
||||
(command_quit)
|
||||
(command_else)
|
||||
(command_continue)
|
||||
(command_if)
|
||||
(command_do)
|
||||
(command_for)
|
||||
(command_lock)
|
||||
(command_return)
|
||||
(command_halt_or_hang)
|
||||
(command_break)
|
||||
] @comment
|
||||
|
||||
; === END CORE ===
|
||||
; === BEGIN LOCAL ===
|
||||
(routine_type) @type.builtin
|
||||
|
||||
(documatic_line) @comment.documentation @spell
|
||||
|
||||
(routine) @keyword.type
|
||||
|
||||
; === END LOCAL ===
|
||||
3
runtime/queries/objectscript_routine/indents.scm
Normal file
3
runtime/queries/objectscript_routine/indents.scm
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
"{" @indent.begin
|
||||
|
||||
"}" @indent.end
|
||||
27
runtime/queries/objectscript_routine/injections.scm
Normal file
27
runtime/queries/objectscript_routine/injections.scm
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
(embedded_html
|
||||
(angled_bracket_fenced_text) @injection.content
|
||||
(#set! injection.language "html"))
|
||||
|
||||
(embedded_sql
|
||||
(_
|
||||
(paren_fenced_text) @injection.content)
|
||||
(#set! injection.language "sql"))
|
||||
|
||||
(embedded_js
|
||||
[
|
||||
(angled_bracket_fenced_text)
|
||||
(embedded_js_special_case)
|
||||
] @injection.content
|
||||
(#set! injection.language "javascript"))
|
||||
|
||||
(embedded_xml
|
||||
(angled_bracket_fenced_text) @injection.content
|
||||
(#set! injection.language "xml"))
|
||||
|
||||
([
|
||||
(line_comment_1)
|
||||
(line_comment_2)
|
||||
(line_comment_3)
|
||||
(block_comment)
|
||||
] @injection.content
|
||||
(#set! injection.language "comment"))
|
||||
Loading…
Add table
Add a link
Reference in a new issue