#compdef ftp rwho rup xping traceroute host aaaa zone mx ns soa txt local expl hosts tmp if ! zstyle -a ":completion:${curcontext}:hosts" hosts hosts; then (( $+_cache_hosts )) || if (( ${+commands[getent]} )); then : ${(A)_cache_hosts:=${(s: :)${(ps:\t:)${(f)~~"$(_call_program hosts getent hosts 2>/dev/null)"}##[:blank:]#[^[:blank:]]#}}} else : ${(A)_cache_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(/dev/null); then _cache_hosts+=( ${=${(f)tmp}##[:blank:]#[^[:blank:]]#} ) # If you use YP fi fi hosts=( "$_cache_hosts[@]" ) fi _wanted hosts expl host \ compadd -M 'm:{a-zA-Z}={A-Za-z} r:|.=* r:|=*' -a "$@" - hosts