Hello,

My initial issue was weird highlighting of double quotes inside of if 
blocks (probably applies to for, do, etc).
For example in

if [ "$1" = "$2" ]; then
    test "$1" = "$2"
    "$1" = "$2"
fi

each occurrence of "$1" = "$2" colors whole rhs of equal sign as string 
(including quotes). Then while looking for why it does that and how I could 
fix it came across shTestDoubleQuote and shTestSingleQuote. Pretty sure 
they are the reason this happens. (despite the name they do not apply to 
test command outside of an if block)

Is that intentional or not?
If it is not, adding matchgroup=shQuote to shTestDoubleQuote fixes the 
exact problem I stated, but it is a bit more complicated for single quotes: 
I guess they'll have to be changed from a match to a region like double 
quotes.

Also I don't really understand what is the reason behind separating 
sh___Quote and shTest___Quote groups, can't non-test ones be used instead?

Another small note: shTestSingleQuote also contains a '\\.' group. What 
bash syntax does that cover?

Visual demonstration of issues above:
[image: Screenshot from 2026-05-28 00-10-07.png]

(vim version 9.1, mentioned syntax groups are same on my machine and in the 
newest commit on master)

Thanks,
Kirill

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/vim_dev/38e9e6d8-d601-4e08-9e37-0ef7c9cff992n%40googlegroups.com.

Raspunde prin e-mail lui