#compdef zmodload local fl="$words[2]" expl if [[ "$fl" = -*(a*u|u*a)* || "$fl" = -*a* && CURRENT -ge 4 ]]; then _description expl 'builtin command' compgen "$expl[@]" -B elif [[ "$fl" = -*u* ]]; then _description expl module compadd "$expl[@]" - $(zmodload) else _description expl 'module file' compadd "$expl[@]" - ${^module_path}/*.s[ol](N:t:r) fi