summaryrefslogtreecommitdiff
path: root/Functions/Completion/_main_complete
diff options
context:
space:
mode:
Diffstat (limited to 'Functions/Completion/_main_complete')
-rw-r--r--Functions/Completion/_main_complete48
1 files changed, 0 insertions, 48 deletions
diff --git a/Functions/Completion/_main_complete b/Functions/Completion/_main_complete
deleted file mode 100644
index 003a01785..000000000
--- a/Functions/Completion/_main_complete
+++ /dev/null
@@ -1,48 +0,0 @@
-#autoload
-
-# The main loop of the completion code. This is what is called when
-# completion is attempted from the command line.
-# The completion code gives us the special variables and the arguments
-# from the command line are given as positional parameters.
-
-local comp name
-
-setopt localoptions nullglob rcexpandparam globdots
-unsetopt markdirs globsubst shwordsplit nounset
-
-# An entry for `-first-' is the replacement for `compctl -T'
-# Completion functions may set `COMPSKIP' to any value to make the
-# main loops stop calling other completion functions.
-
-comp="$comps[-first-]"
-if [[ ! -z "$comp" ]]; then
- "$comp" "$@"
- if (( $+COMPSKIP )); then
- unset COMPSKIP
- return
- fi
-fi
-
-# For arguments we use the `_normal function.
-
-if [[ $CONTEXT == argument || $CONTEXT == command ]]; then
- _normal "$@"
-else
- # Let's see if we have a special completion definition for the other
- # possible contexts.
-
- comp=''
-
- case $CONTEXT in
- redirect) comp="$comps[-redirect-]";;
- math) comp="$comps[-math-]";;
- subscript) comp="$comps[-subscript-]";;
- value) comp="$comps[-value-]";;
- condition) comp="$comps[-condition-]";;
- esac
-
- # If not, we use default completion, if any.
-
- [[ -z "$comp" ]] && comp="$comps[-default-]"
- [[ -z "$comp" ]] || "$comp" "$@"
-fi