Hello,
I think I found a bug in Functions/Misc/regexp-replace
Steps to reproduce:
zsh -f
str='x :=bad'
regexp-replace str 'a' 'z' && echo $str
Actual Output:
(eval):1: bzd not found
Expected:
x :=bzd
Root cause:
Line 41: eval ${1}=${(q)5}
It appears the ${(q)5} is not escaping = so the =command is executed after :
Instead of 'x\ :\=bad', you get '= x\ :=bad'
One way to fix:
41: eval ${1}=${(qqq)5}
Patch file is attached.
Thanks
Jacob Menke