diff options
author | Oliver Kiddle <opk@users.sourceforge.net> | 2001-06-13 17:44:43 +0000 |
---|---|---|
committer | Oliver Kiddle <opk@users.sourceforge.net> | 2001-06-13 17:44:43 +0000 |
commit | 8c8f1c166badf5a8f9b9e6013c89cd22056074b4 (patch) | |
tree | 4cefc0966b54ab7f9a077b8ba147f26c82116ae3 /Completion/Zsh | |
parent | d6629f38e2f71b0d5a265af32843a64998af9715 (diff) | |
download | zsh-8c8f1c166badf5a8f9b9e6013c89cd22056074b4.tar.gz zsh-8c8f1c166badf5a8f9b9e6013c89cd22056074b4.tar.xz zsh-8c8f1c166badf5a8f9b9e6013c89cd22056074b4.zip |
don't complete read-only parameters on the left side of an assignment (14896)
Diffstat (limited to 'Completion/Zsh')
-rw-r--r-- | Completion/Zsh/Type/_command_names | 31 |
1 files changed, 31 insertions, 0 deletions
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[@]" |