#compdef sudo sudoedit local curcontext="$curcontext" environ e local -a args zstyle -a ":completion:${curcontext}:" environ environ for e in "${environ[@]}" do local -x "$e" done args=( '-V[show version]' '-l[list allowed commands]' '-L[list options from Default section]' '-a[BSD auth type]:BSD auth type:' '-c[BSD login class]:BSD login class:' '-h[show help]' '-v[validate user timestamp]' '-k[invalidate user timestamp]' '-K[remove user timestamp]' '-r[Kerberos realm]:Kerberos realm:' '-p[password prompt]:password prompt:' '-u[user name]:user name:_users' '-S[read password from stdin]' ) if [[ $service = sudoedit ]]; then _arguments $args \ '*:file: _files' else _arguments $args \ '(- :)-e[edit file]:*:file:_files' \ '(- :)-s[run SHELL]' \ '(- :)-i[simulate login]' \ '(-i -s -e)-b[run command in background]' \ '(-i -s -e)-E[preserve environment]' \ '(-i -s -e)-H[set HOME environment variable]' \ '(-i -s -e)-P[preserve group vector]' \ '(-):command: _command_names -e' \ '*::arguments: _normal' fi