Hello, I have the following alias defined:
WI='while {read -r it; ! [[ $? -ne 0 && -z $it ]]}'
that works fine except in command substitution:
a=$( echo 1 | WI { echo $it } )
zsh: parse error near `}'
zsh: parse error in command substitution
if I substitute the alias with the aliased code all works fine:
a=$( echo 1 | while {read -r it; ! [[ $? -ne 0 && -z $it ]]} { echo $it } ); echo $a
1
alias are normally correctly substituted inside command substitution, what can it be?