diff options
Diffstat (limited to 'Completion/User/_ports')
-rw-r--r-- | Completion/User/_ports | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/Completion/User/_ports b/Completion/User/_ports index ffd04ce5e..da59fd4ea 100644 --- a/Completion/User/_ports +++ b/Completion/User/_ports @@ -1,7 +1,12 @@ #autoload -local expl +local expl ports -: ${(A)ports:=${${(M)${${(f)"$(</etc/services)"}:#\#*}#*/tcp}%%[ ]*}} +if ! _style ports ports ports; then + (( $+_cache_ports )) || + : ${(A)ports:=${${(M)${${(f)"$(</etc/services)"}:#\#*}#*/tcp}%%[ ]*}} + + ports=( "$_cache_ports[@]" ) +fi _wanted ports expl port && compadd "$@" "$expl[@]" - "$ports[@]" |