From d5003e1121045b1c8f505b3ff592630d2e277605 Mon Sep 17 00:00:00 2001 From: VacheDesNeiges <33199153+VacheDesNeiges@users.noreply.github.com> Date: Tue, 17 Sep 2024 17:40:43 +0200 Subject: [PATCH] Update C++ Tree-sitter queries (#17471) Closes #16443 Release Notes: - Fixed C++ functions being wrongly tagged as variables when called after two or more scope resolution operators. - Added a "namespace" tag for highlighting purposes Before : ![image](https://github.com/user-attachments/assets/743b8407-4e62-4549-9c6a-ed6608ea7e43) After : ![image](https://github.com/user-attachments/assets/de563621-e722-463c-97a1-a99b925f126e) --- crates/languages/src/cpp/highlights.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/crates/languages/src/cpp/highlights.scm b/crates/languages/src/cpp/highlights.scm index 42d05bde33e0ab409e7e2e3975a01e09d1803e2d..4c9db569285e39eba27d4af35d360359687ed6f4 100644 --- a/crates/languages/src/cpp/highlights.scm +++ b/crates/languages/src/cpp/highlights.scm @@ -1,10 +1,33 @@ (identifier) @variable (field_identifier) @property +(namespace_identifier) @namespace (call_expression function: (qualified_identifier name: (identifier) @function)) +(call_expression + (qualified_identifier + (identifier) @function.call)) + +(call_expression + (qualified_identifier + (qualified_identifier + (identifier) @function.call))) + +(call_expression + (qualified_identifier + (qualified_identifier + (qualified_identifier + (identifier) @function.call)))) + +((qualified_identifier + (qualified_identifier + (qualified_identifier + (qualified_identifier + (identifier) @function.call)))) @_parent + (#has-ancestor? @_parent call_expression)) + (call_expression function: (identifier) @function)