driver: Be immune to weird aliases in the calling scope.

Fixes #390.
This commit is contained in:
Daniel Shahaf 2016-11-11 08:34:46 +00:00
parent 9396ad5c5f
commit 2dce602727

View File

@ -27,6 +27,9 @@
# vim: ft=zsh sw=2 ts=2 et
# -------------------------------------------------------------------------------------------------
# First of all, ensure predictable parsing.
zsh_highlight__aliases=`alias -L`
builtin unalias -m '*'
# Set $0 to the expected value, regardless of functionargzero.
0=${(%):-%N}
@ -390,4 +393,11 @@ zmodload zsh/parameter 2>/dev/null || true
autoload -U is-at-least
# Initialize the array of active highlighters if needed.
[[ $#ZSH_HIGHLIGHT_HIGHLIGHTERS -eq 0 ]] && ZSH_HIGHLIGHT_HIGHLIGHTERS=(main) || true
[[ $#ZSH_HIGHLIGHT_HIGHLIGHTERS -eq 0 ]] && ZSH_HIGHLIGHT_HIGHLIGHTERS=(main)
# Restore the aliases we unned
eval "$zsh_highlight__aliases"
builtin unset zsh_highlight__aliases
# Set $?.
true