diff options
Diffstat (limited to 'Completion/Base/Utility/_contexts')
-rw-r--r-- | Completion/Base/Utility/_contexts | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/Completion/Base/Utility/_contexts b/Completion/Base/Utility/_contexts new file mode 100644 index 000000000..680f2019f --- /dev/null +++ b/Completion/Base/Utility/_contexts @@ -0,0 +1,17 @@ +#autoload + +# This searches $* in the array for normal completions and calls the result. +# It is used to include completions for another command or special context +# into the list generated by the calling function. +# For example the function for `-subscript-' could call this as in +# `_contexts -math-' to get the completions that would be generated for a +# mathematical context. + +local i tmp ret=1 service + +for i; do + tmp="$_comps[$i]" + [[ -z "$tmp" ]] || service="${_services[$i]:-$i}" && "$tmp" && ret=0 +done + +return ret |