On 7/15/25 10:44 AM, Vin Shelton wrote:
> I don't understand the order of parameter expansion. Consider the following example:
>
> zsh -f
> export HOME=/home/acs
> smaug% export SCMROOT=/home/acs/scmroot
> smaug% echo ${SCMROOT:s-$HOME/--}
>
> This yields /home/acs/scmroot", but I expected "scmroot".
> TIA,
> Vin Shelton
>
The history modifier doesn't create a new context where the parameter expansion code recurses and resolves any parameters within it's operands.
It is searching for the literal string $HOME.