languages: Separate control flow keywords for Shell Scripts (#46722)
Cole McAnelly
created
Part of https://github.com/zed-industries/zed/issues/9461. Similar PRs:
- https://github.com/zed-industries/zed/pull/39683
- https://github.com/zed-industries/zed/pull/39801
## Release Notes:
- Added the ability to separately highlight control flow keywords for
Shell Scripts for users and theme authors via the `keyword.control`
syntax property.
## Screenshots
| **Before** | **After** |
|:--:|:--:|
| <img width="719" height="860" alt="image"
src="https://github.com/user-attachments/assets/1e509e7b-a197-4fb0-a5da-bd3669b6bcd6"
/> | <img width="718" height="855" alt="image"
src="https://github.com/user-attachments/assets/9c5e253d-bfd6-4fe7-9e30-95af1b260fdf"
/> |
Change summary
crates/languages/src/bash/highlights.scm | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
Detailed changes
@@ -10,6 +10,14 @@
(variable_name) @variable
+[
+ "export"
+ "function"
+ "unset"
+ "local"
+ "declare"
+] @keyword
+
[
"case"
"do"
@@ -17,20 +25,15 @@
"elif"
"else"
"esac"
- "export"
"fi"
"for"
- "function"
"if"
"in"
"select"
"then"
- "unset"
"until"
"while"
- "local"
- "declare"
-] @keyword
+] @keyword.control
(comment) @comment