complete-c which -s a -l all --description"Print all matching executables in PATH, not just the first"
complete-c which -s i -lread-alias--description"Read aliases from stdin, reporting matching ones on stdout"
complete-c which -l skip-alias--description"Ignore option '--read-alias'"
complete-c which -lread-functions--description"Read shell function definitions from stdin, reporting matching ones on stdout"
complete-c which -l skip-functions--description"Ignore option '--read-functions'"
complete-c which -l skip-dot --description"Skip directories in PATH that start with a dot"
complete-c which -l skip-tilde --description"Skip directories in PATH that start with a tilde and executables which reside in the HOME directory"
complete-c which -l show-dot --description"If a directory in PATH starts with a dot and a matching executable was found for that path, then print './programname'"
complete-c which -l show-tilde --description"Output a tilde when a directory matches the HOME directory"
complete-c which -l tty-only --description"Stop processing options on the right if not on tty"
complete-c which -s v -s V -l version --description"Display version and exit"
complete-c which -lhelp--description"Display help and exit"
else# OSX
complete-c which -s a --description"Print all matching executables in PATH, not just the first"
complete-c which -s s --description"Print no output, only return 0 if found"