From c9e0760f68994a0222f9b17d2c3f4ea0da337b98 Mon Sep 17 00:00:00 2001 From: Tanaka Akira Date: Fri, 24 Mar 2000 00:53:26 +0000 Subject: manual/10204 --- Completion/Base/_arguments | 9 ++++++--- Completion/Base/_values | 9 ++++++--- 2 files changed, 12 insertions(+), 6 deletions(-) (limited to 'Completion/Base') diff --git a/Completion/Base/_arguments b/Completion/Base/_arguments index 9a133617c..03f695629 100644 --- a/Completion/Base/_arguments +++ b/Completion/Base/_arguments @@ -236,14 +236,17 @@ if (( $# )) && comparguments -i "$autod" "$@"; then # A string in braces is evaluated. - _loop arguments expl "$descr" eval "$action[2,-2]" - + while _try arguments expl "$descr"; do + eval "$action[2,-2]" + done elif [[ "$action" = \ * ]]; then # If the action starts with a space, we just call it. eval "action=( $action )" - _loop arguments expl "$descr" "$action[@]" + while _try arguments expl "$descr"; do + "$action[@]" + done else # Otherwise we call it with the description-arguments. diff --git a/Completion/Base/_values b/Completion/Base/_values index 754147e05..e681d88ef 100644 --- a/Completion/Base/_values +++ b/Completion/Base/_values @@ -124,14 +124,17 @@ if compvalues -i "$@"; then # A string in braces is evaluated. - _loop arguments expl "$descr" eval "$action[2,-2]" - + while _try arguments expl "$descr"; do + eval "$action[2,-2]" + done elif [[ "$action" = \ * ]]; then # If the action starts with a space, we just call it. eval "action=( $action )" - _loop arguments expl "$descr" "$action[@]" + while _try arguments expl "$descr"; do + "$action[@]" + done else # Otherwise we call it with the description-arguments built above. -- cgit 1.4.1