#compdef iftop _interfaces () { local disp expl sep _description interfaces expl 'network interface' _net_interfaces "$expl[@]" if zstyle -t ":completion:${curcontext}:interfaces" verbose; then zstyle -s ":completion:${curcontext}:interfaces" list-separator sep || sep=-- disp=( "any $sep capture on all interfaces" ) compadd "$expl[@]" -ld disp any else compadd "$expl[@]" any fi } _arguments \ '(-h -n -N -p -b -B -P -i -f -F -c)'-h'[print a summary of usage]' \ -n"[don't do hostname lookups]" \ -N"[don't resolve port number to service names]" \ -p'[run in promiscuous mode]' \ -P'[turn on port display]' \ -b"[don't display bar graphs of traffic]" \ -B'[display bandwidth rates in bytes/sec rather than bits/sec]' \ '-i+[interface]:network interface:_interfaces' \ '-f+[filter]:BPF filter' \ '-F+[net/mask]:network/mask' \ '-c+[config file]:config file:_files'