driver: Don't undefine aliases that begin with a '+', to workaround an upstream bug.

Fixes #392.
This commit is contained in:
Daniel Shahaf 2016-12-01 09:07:37 +00:00
parent 8d5afe47f7
commit 74949c2d91

View file

@ -28,8 +28,12 @@
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
# First of all, ensure predictable parsing. # First of all, ensure predictable parsing.
zsh_highlight__aliases=`builtin alias -L` zsh_highlight__aliases=`builtin alias -Lm '[^+]*'`
builtin unalias -m '*' # In zsh <= 5.2, `alias -L` emits aliases that begin with a plus sign ('alias -- +foo=42')
# them without a '--' guard, so they don't round trip.
#
# Hence, we exclude them from unaliasing:
builtin unalias -m '[^+]*'
# Set $0 to the expected value, regardless of functionargzero. # Set $0 to the expected value, regardless of functionargzero.
0=${(%):-%N} 0=${(%):-%N}