mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-27 16:50:58 +01:00
27492 based on Jörg Sommer: 27473: fix run-help alias problem.
This commit is contained in:
parent
c4b72029cd
commit
46bad169a8
2 changed files with 14 additions and 4 deletions
|
|
@ -49,6 +49,7 @@ if [[ $places = *"not found"* && $1 != ${(Q)1} ]]; then
|
|||
noalias=1
|
||||
fi
|
||||
|
||||
{
|
||||
while ((i++ < $#places))
|
||||
do
|
||||
what=$places[$i]
|
||||
|
|
@ -56,7 +57,8 @@ do
|
|||
builtin print -r $what
|
||||
case $what in
|
||||
(*( is an alias)*)
|
||||
[[ ${what[(w)6]:t} != ${what[(w)1]} ]] && run-help ${what[(w)6]:t}
|
||||
[[ ${what[(w)6]:t} != ${what[(w)1]} ]] &&
|
||||
run_help_orig_cmd=${what[(w)1]} run-help ${what[(w)6]:t}
|
||||
;;
|
||||
(*( is a * function))
|
||||
case ${what[(w)1]} in
|
||||
|
|
@ -96,9 +98,9 @@ do
|
|||
builtin print -z "$cmd_args"
|
||||
cmd_args=( ${(z)cmd_args} )
|
||||
# Discard environment assignments, etc.
|
||||
while [[ $cmd_args[1] != $1 ]]
|
||||
while [[ $cmd_args[1] != ${run_help_orig_cmd:-$1} ]]
|
||||
do
|
||||
shift cmd_args
|
||||
shift cmd_args || return 1
|
||||
done
|
||||
eval "run-help-$1:t ${(q@)cmd_args[2,-1]}"
|
||||
else
|
||||
|
|
@ -115,3 +117,6 @@ do
|
|||
[[ $what == [qQ] ]] && break
|
||||
fi
|
||||
done
|
||||
} always {
|
||||
unset run_help_orig_cmd
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue