mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-01 19:17:02 -04:00
Squashed commit of the following:
commit 1b3700b0cd68cb507c64b7243a5bea050379f09c
Author: TravonteD <tman1300@aol.com>
Date: Fri Apr 24 08:44:34 2020 -0400
remove local from the capture groups
commit 62f1a613c7c6f26e3a85f06f322ead28280dc7ca
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 18:43:09 2020 -0400
update captures for identifiers
commit 9966d5a9cd780b2de80e620cee6833fd341028d0
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 18:42:42 2020 -0400
add capture for constants that are recievers of a method call
commit 10f03606710a3a54c8c722e4883b9475c6f9f776
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 17:54:25 2020 -0400
update captures for function definitions and calls
commit 4b350274cb02e1b69ae013fa157bae5c6be9e577
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 17:21:10 2020 -0400
update captures for operators
commit c66d42cd0d56d0a1bbfb1f88ffa7ff6ae8b6c2df
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 17:10:13 2020 -0400
update captures for literals
commit a9c097fe03f7294fdaede760f2c016cf6c960a45
Author: TravonteD <tman1300@aol.com>
Date: Thu Apr 23 15:54:47 2020 -0400
add highlights and locals from treesitter-ruby
This commit is contained in:
parent
b7fdd6ae38
commit
79ab9fc6fb
2 changed files with 185 additions and 0 deletions
140
queries/ruby/highlights.scm
Normal file
140
queries/ruby/highlights.scm
Normal file
|
|
@ -0,0 +1,140 @@
|
|||
; Keywords
|
||||
|
||||
"alias" @keyword
|
||||
"and" @keyword
|
||||
"begin" @keyword
|
||||
"break" @keyword
|
||||
"case" @keyword
|
||||
"class" @keyword
|
||||
"def" @keyword
|
||||
"do" @keyword
|
||||
"else" @keyword
|
||||
"elsif" @keyword
|
||||
"end" @keyword
|
||||
"ensure" @keyword
|
||||
"for" @keyword
|
||||
"if" @keyword
|
||||
"in" @keyword
|
||||
"module" @keyword
|
||||
"next" @keyword
|
||||
"or" @keyword
|
||||
"rescue" @keyword
|
||||
"retry" @keyword
|
||||
"return" @keyword
|
||||
"then" @keyword
|
||||
"unless" @keyword
|
||||
"until" @keyword
|
||||
"when" @keyword
|
||||
"while" @keyword
|
||||
"yield" @keyword
|
||||
|
||||
((identifier) @keyword
|
||||
(match? @keyword "^(private|protected|public)$"))
|
||||
|
||||
; Function calls
|
||||
|
||||
((identifier) @function
|
||||
(eq? @function "require"))
|
||||
|
||||
"defined?" @function
|
||||
|
||||
(call
|
||||
receiver: (constant) @constant)
|
||||
(method_call
|
||||
receiver: (constant) @constant)
|
||||
(call
|
||||
method: (identifier) @function)
|
||||
(method_call
|
||||
method: (identifier) @function)
|
||||
(call
|
||||
method: (constant) @function)
|
||||
(method_call
|
||||
method: (constant) @function)
|
||||
|
||||
; Function definitions
|
||||
|
||||
(alias (identifier) @function)
|
||||
(setter (identifier) @function)
|
||||
(method name: (identifier) @function)
|
||||
(method name: (constant) @constant)
|
||||
(class name: (constant) @constant)
|
||||
(singleton_method name: (identifier) @function)
|
||||
(singleton_method name: (constant) @constant)
|
||||
|
||||
; Identifiers
|
||||
|
||||
(class_variable) @Identifier
|
||||
(instance_variable) @Identifier
|
||||
|
||||
((identifier) @constant
|
||||
(match? @constant "^__(FILE|LINE|ENCODING)__$"))
|
||||
|
||||
((constant) @constant
|
||||
(match? @constant "^[A-Z\\d_]+$"))
|
||||
|
||||
(constant) @constant
|
||||
|
||||
(self) @constant
|
||||
(super) @Identifier
|
||||
|
||||
(method_parameters (identifier) @Type)
|
||||
(lambda_parameters (identifier) @Type)
|
||||
(block_parameters (identifier) @Type)
|
||||
(splat_parameter (identifier) @Type)
|
||||
(hash_splat_parameter (identifier) @Type)
|
||||
(optional_parameter (identifier) @Type)
|
||||
(destructured_parameter (identifier) @Type)
|
||||
(block_parameter (identifier) @Type)
|
||||
(keyword_parameter (identifier) @Type)
|
||||
|
||||
((identifier) @function
|
||||
(is-not? local))
|
||||
|
||||
; Literals
|
||||
|
||||
(string) @string
|
||||
(bare_string) @string
|
||||
(bare_symbol) @constant
|
||||
(subshell) @string
|
||||
(heredoc_beginning) @Delimiter
|
||||
(heredoc_body) @string
|
||||
(heredoc_end) @Delimiter
|
||||
(symbol) @constant
|
||||
(regex) @string
|
||||
(escape_sequence) @Special
|
||||
(integer) @number
|
||||
(float) @number
|
||||
|
||||
(nil) @Identifier
|
||||
(true) @Identifier
|
||||
(false) @Identifier
|
||||
|
||||
(interpolation
|
||||
"#{" @Delimiter
|
||||
(identifier) @Identifier
|
||||
"}" @Delimiter) @embedded
|
||||
|
||||
(comment) @comment
|
||||
|
||||
; Operators
|
||||
|
||||
"=" @operator
|
||||
"=>" @operator
|
||||
"->" @operator
|
||||
"+" @operator
|
||||
"-" @operator
|
||||
"*" @operator
|
||||
"/" @operator
|
||||
|
||||
"," @Normal
|
||||
";" @Normal
|
||||
"." @Normal
|
||||
|
||||
"(" @Normal
|
||||
")" @Normal
|
||||
"[" @Normal
|
||||
"]" @Normal
|
||||
"{" @Normal
|
||||
"}" @Normal
|
||||
"%w(" @Normal
|
||||
"%i(" @Normal
|
||||
45
queries/ruby/locals.scm
Normal file
45
queries/ruby/locals.scm
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
; The MIT License (MIT)
|
||||
;
|
||||
; Copyright (c) 2016 Rob Rix
|
||||
;
|
||||
; Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
; of this software and associated documentation files (the "Software"), to deal
|
||||
; in the Software without restriction, including without limitation the rights
|
||||
; to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
; copies of the Software, and to permit persons to whom the Software is
|
||||
; furnished to do so, subject to the following conditions:
|
||||
;
|
||||
; The above copyright notice and this permission notice shall be included in all
|
||||
; copies or substantial portions of the Software.
|
||||
;
|
||||
; THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
; IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
; FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
; AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
; LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
; OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
; SOFTWARE.
|
||||
|
||||
;;; DESCLARATIONS AND SCOPES
|
||||
((method) @scope
|
||||
(set! scope-inherits false))
|
||||
|
||||
(block) @scope
|
||||
(do_block) @scope
|
||||
|
||||
(method_parameters (identifier) @definition)
|
||||
(lambda_parameters (identifier) @definition)
|
||||
(block_parameters (identifier) @definition)
|
||||
(splat_parameter name: (identifier) @definition)
|
||||
(hash_splat_parameter name: (identifier) @definition)
|
||||
(optional_parameter name: (identifier) @definition)
|
||||
(destructured_parameter name: (identifier) @definition)
|
||||
(block_parameter name: (identifier) @definition)
|
||||
(keyword_parameter name: (identifier) @definition)
|
||||
|
||||
(identifier) @reference
|
||||
|
||||
(assignment left:(identifier) @definition)
|
||||
(left_assignment_list (identifier) @definition)
|
||||
(rest_assignment (identifier) @definition)
|
||||
(destructured_left_assignment (identifier) @definition)
|
||||
Loading…
Add table
Add a link
Reference in a new issue