diff options
| author | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2000-05-02 08:18:54 +0000 |
|---|---|---|
| committer | Sven Wischnowsky <wischnow@users.sourceforge.net> | 2000-05-02 08:18:54 +0000 |
| commit | 3d088f16aab58abcedcad8720ffbbfadee38bdc3 (patch) | |
| tree | d7c8bb53de457af2672f9db98b451b7977683a93 /Completion/Core/_complete | |
| parent | completion doc fixes and cleanup; _sort_tags updated (11047) (diff) | |
| download | zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar.gz zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar.bz2 zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar.lz zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar.xz zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.tar.zst zsh-3d088f16aab58abcedcad8720ffbbfadee38bdc3.zip | |
make completion-in-vared complete parameter values as default; cleanup for _path_files (11048)
Diffstat (limited to 'Completion/Core/_complete')
| -rw-r--r-- | Completion/Core/_complete | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Completion/Core/_complete b/Completion/Core/_complete index c2679dcb8..e50f73b2e 100644 --- a/Completion/Core/_complete +++ b/Completion/Core/_complete @@ -33,6 +33,24 @@ if [[ ! -z "$comp" ]]; then fi fi +# If we are inside `vared' and we don't have a $compcontext, we treat +# this like a parameter assignment. Which it is. + +if [[ -n $compstate[vared] ]]; then + if [[ $compstate[vared] = *\[* ]]; then + # vared on an array-element + compstate[parameter]=${compstate[vared]%%\[*} + compstate[context]=value + else + # vared on a parameter, let's see if it is an array + compstate[parameter]=$compstate[vared] + if [[ ${(tP)compstate[vared]} = *(array|assoc)* ]]; then + compstate[context]=array_value + else + compstate[context]=value + fi + fi +fi # For arguments and command names we use the `_normal' function. |
