diff --git a/runtime/queries/rust/highlights.scm b/runtime/queries/rust/highlights.scm index 81f05f7a..0afb8388 100644 --- a/runtime/queries/rust/highlights.scm +++ b/runtime/queries/rust/highlights.scm @@ -111,23 +111,31 @@ ; ------- (for_expression - "for" @keyword.control) + "for" @keyword.control.repeat) ((identifier) @keyword.control (#match? @keyword.control "^yield$")) -[ - "while" - "loop" - "in" - "break" - "continue" +"in" @keyword.control + +[ "match" "if" "else" +] @keyword.control.conditional + +[ + "while" + "loop" +] @keyword.control.repeat + +[ + "break" + "continue" + "return" "await" -] @keyword.control +] @keyword.control.return "use" @keyword.control.import (mod_item "mod" @keyword.control.import !body) @@ -143,24 +151,28 @@ "mod" "extern" - "struct" - "enum" "impl" "where" "trait" "for" - "type" - "union" "unsafe" "default" "macro_rules!" - "let" - "async" ] @keyword +[ + "struct" + "enum" + "union" + + "type" +] @keyword.storage.type + +"let" @keyword.storage + "fn" @keyword.function (mutable_specifier) @keyword.storage.modifier.mut