From 8c8f1c166badf5a8f9b9e6013c89cd22056074b4 Mon Sep 17 00:00:00 2001 From: Oliver Kiddle Date: Wed, 13 Jun 2001 17:44:43 +0000 Subject: don't complete read-only parameters on the left side of an assignment (14896) --- Completion/Zsh/Type/_command_names | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Completion/Zsh/Type/_command_names (limited to 'Completion') diff --git a/Completion/Zsh/Type/_command_names b/Completion/Zsh/Type/_command_names new file mode 100644 index 000000000..cf4088295 --- /dev/null +++ b/Completion/Zsh/Type/_command_names @@ -0,0 +1,31 @@ +#compdef -command- + +# The option `-e' if given as the first argument says that we should +# complete only external commands and executable files. This and a +# `-' as the first argument is then removed from the arguments. + +local args defs + +defs=( + 'commands:external command:compadd -k commands' + 'executables:executable file or directory:_path_files -/g \*\(-\*\)' +) + +if [[ "$1" = -e ]]; then + shift +else + [[ "$1" = - ]] && shift + + defs=( "$defs[@]" + 'builtins:builtin command:compadd -k builtins' + 'functions:shell function:compadd -k functions' + 'aliases:alias:compadd -k aliases' + 'reserved-words:reserved word:compadd -k reswords' + 'jobs:: _jobs -t' + 'parameters:: _parameters -g "^*readonly*" -qS= -r "\n\t\- =["' + ) +fi + +args=( "$@" ) + +_alternative -O args "$defs[@]" -- cgit 1.4.1