summaryrefslogtreecommitdiff
path: root/Completion/Core/_requested
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core/_requested')
-rw-r--r--Completion/Core/_requested21
1 files changed, 16 insertions, 5 deletions
diff --git a/Completion/Core/_requested b/Completion/Core/_requested
index 082c45820..bd838a28e 100644
--- a/Completion/Core/_requested
+++ b/Completion/Core/_requested
@@ -1,9 +1,20 @@
#autoload
-local tag tname="$funcstack[2,-1]"
+local gopt=-J
-for tag; do
- [[ "${_cur_tags[${tname}]}" = *:${tag}(:|\[*\]:)* ]] && return 0
-done
+if [[ "$1" = -([12]|)[VJ] ]]; then
+ gopt="$1"
+ shift
+fi
-return 1
+if comptags -R "$1"; then
+ _comp_tags="$_comp_tags $1"
+ if [[ $# -gt 3 ]]; then
+ _all_labels "$gopt" "$@"
+ elif [[ $# -gt 1 ]]; then
+ _description "$gopt" "$@"
+ fi
+ return 0
+else
+ return 1
+fi