1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-10-02 08:51:18 +02:00
zsh/Completion/Unix/Command/_wget

136 lines
7.3 KiB
Plaintext

#compdef wget
local curcontext="$curcontext" state line
typeset -A opt_args
_arguments -C -s \
'(- *)'{--version,-V}'[display version info]' \
'(- *)'{--help,-h}'[display help]' \
'(--background -b)'{--background,-b}'[run in background]' \
'(--execute -e)'{--execute=,-e+}'[execute .wgetrc command]:.wgetrc command' \
'(--output-file -o --append-output -a)'{--output-file=,-o+}'[specify output logfile]:log file to output:_files' \
'(--append-output -a --output-file -o)'{--append-output=,-a+}'[specify output logfile to append to]:log file to append:_files' \
'(--debug -d)'{--debug,-d}'[turn on debug output]' \
'(--quiet -q --verbose -v --no-verbose -nv)'{--quiet,-q}'[turn off output]' \
'(--quiet -q --verbose -v --no-verbose -nv)'{--verbose,-v}'[turn on verbose output]' \
'*-n+[turn off flags]:flags:->noflags' \
'(--input-file -i)'{--input-file=,-i+}'[specify input file]:file containing URLs:_files' \
'(--force-html -F)'{--force-html,-F}'[treat input file as html]' \
'(--base -B)'{--base=,-B+}'[prepend URL to relative links]:base URL:_urls' \
'(--tries -t)'{--tries=,-t+}'[set number of retries]:number of retries' \
'--retry-connrefused[retry even if connection is refused]' \
'(--output-document -O)'{--output-document=,-O+}'[specify file to write documents to]:output file:_files' \
'(--continue -c)'{--continue,-c}'[continue getting an existing file]' \
'--progress=[set progress gauge type]:gauge type:->gauge' \
'(--timestamping -N)'{--timestamping,-N}'[retrieve only files newer than existing]' \
'(--server-response -S)'{--server-response,-S}'[print server response]' \
"--spider[don't download anything]" \
'(--timeout -T)'{--timeout=,-T+}'[set all timeout values]:timeout (seconds)' \
'(--timeout -T)--dns-timeout=[set the DNS lookup timeout]:DNS lookup timeout (seconds)' \
'(--timeout -T)--connect-timeout=[set the connect timeout]:connect timeout (seconds)' \
'(--timeout -T)--read-timeout=[set the read timeout]:read timeout (seconds)' \
'(--wait,-w)'{--wait=,-w+}'[specify wait between retrievals]:time (seconds)' \
'(--random-wait)--waitretry=:time (seconds)' \
'(--waitretry)--random-wait[random wait time between retrievals]' \
'(--proxy -Y --no-proxy)'{--proxy=,-Y+}'[explicitly turn on proxy]' \
'(--proxy -Y --no-proxy)--no-proxy[explicitly turn off proxy]' \
'(--quota -Q)'{--quota=,-Q+}'[set retrieval quota]:number' \
'--bind-address=:address to bind to (hostname or IP):_hosts' \
'--limit-rate=[specify limit to download rate]:download rate limit' \
'--no-dns-cache[disable caching DNS lookups]' \
'--restrict-file-names=[restrict chars in file names to ones OS allows]:OS:->restrict' \
'(-4 --inet4-only -6 --inet6-only)'{-4,--inet4-only}'[connect only to IPv4 addresses]' \
'(-4 --inet4-only -6 --inet6-only)'{-6,--inet6-only}'[connect only to IPv6 addresses]' \
'--prefer-family[connect first to addresses of specified family]:address family:(IPv6 IPv4 none)' \
'(--http-user --ftp-user)--user[set both ftp and http user]:user' \
'(--http-password --ftp-password)--password[set both ftp and http password]:password' \
'(--force-directories -x)'{--force-directories,-x}'[force creation of directories]' \
'--protocol-directories[use protocol name in directories]' \
'(--directory-prefix -P)'{--directory-prefix=,-P+}'[specify prefix to save files to]:prefix:_files -/' \
'--cut-dirs=:number:' \
'(--user)--http-user=:user' \
'(--password)--http-password=:password' \
'--no-cache[disallow server-cached data]' \
'(--html-extension -E)'{--html-extension,-E}'[save all HTML documents with a .html extension]' \
"--ignore-length[ignore \`Content-Length' header field]" \
'--header=:string' \
'--proxy-user=:user' \
'--proxy-password=:password' \
'--referer=:URL:_urls' \
'--save-headers[save http headers]' \
'(--user-agent -U)'{--user-agent=,-U+}'[specify user agent to identify as]:user-agent' \
'--no-http-keep-alive[disable HTTP keep-alive]' \
'--no-cookies=[turn cookies off]' \
'--load-cookies=[specify file to load cookies from]:cookie file:_files' \
'--save-cookies=[specify file to save cookies to]:cookie file:_files' \
'--keep-session-cookies[load and save session cookies]' \
'--post-data=[use the POST method with specified data]:data to send' \
'--post-file=[use the POST method; sending contents of a file]:file:_files' \
'--secure-protocol=[choose secure protocol]:protocol:(SSLv2 SSLv3 TLSv1)' \
"--no-check-certificate=[don't check the server certificate]" \
'--certificate=[specify client certificate]:client certificate file:_files' \
'--certificate-type=[specify client certificate type]:certificate type:(PEM DER)' \
'--private-key=[specify private key file]:key file:_files' \
'--private-key-type=[specify private key type]:key type:key type:(PEM DER)' \
"--ca-certificate=[specify file with bundle of CA's]:file:_files" \
"--ca-directory=[specify dir where hash list of CA's are stored]:directory:_directories" \
'--random-file[specify file with random data for seeding generator]:file:_files' \
'--egd-file=[specify filename of EGD socket]:file:_files' \
'(--user)--ftp-user=:user' \
'(--password)--ftp-password=:password' \
"--no-remove-listing[don't remove \`.listing' files]" \
'--no-glob[turn off FTP file name globbing.]' \
'--no-passive-ftp' \
'--retr-symlinks' \
'--preserve-permissions[preserve remote file permissions with ftp]' \
'(--recursive -r)'{--recursive,-r}'[recurse subdirectories]' \
'(--level -l)'{--level=,-l+}'[specify maximum recursion depth]:level' \
'--delete-after' \
'(--convert-links -k)'{--convert-links,-k}'[convert links to be relative]' \
'(--backup-converted -K)'{--backup-converted,-K}'[backup files before conversion]' \
'(--mirror -m -r -N -l)'{--mirror,-m}'[mirror (-r -N -l inf -nr)]' \
'(--page-requisites -p)'{--page-requisites,-p}'[get all images needed to display page]' \
'--strict-comments[turn on strict (SGML) handling of HTML comments]' \
'(--accept -A)'{--accept=,-A+}'[specify accepted extensions]:extensions' \
'(--reject -R)'{--reject=,-R+}'[specify rejected extensions]:extensions' \
'(--domains -D)'{--domains=,-D+}'[specify accepted domains]:domains:_domains' \
'--exclude-domains=:rejected domains:_domains' \
'--follow-ftp' \
'--follow-tags=:HTML tags:' \
'--ignore-tags=[specify ignored HTML tags]:HTML tags' \
'(--span-hosts -H)'{--span-hosts,-H}'[span hosts]' \
'(--relative -L)'{--relative,-L}'[follow relative links only]' \
'(--include-directories -I)'{--include-directories=,-I+}'[include directories]:allowed directories' \
'(--exclude-directories -X)'{--exclude-directories=,-X+}'[exclude directories]:excluded directories' \
'--no-host-lookup' \
'--no-parent' \
'--no-verbose' \
'--no-clobber' \
'--no-directories' \
'--no-host-directories' \
'--htmlify=:htmlify:' \
'--no:no:->noflags' \
'*:URL:_urls' && return 0
case "$state" in
gauge)
_values -S : 'progress gauge type' \
'dot:style:(default binary mega giga micro)' \
'bar:force:(force)'
;;
noflags)
_values -s '' 'option' \
'v[non verbose]' \
'H[no host directories]' \
'd[no directories]' \
'c[no clobber]' \
'p[no parent]'
;;
restrict)
_values -s , 'filename char restriction' \
'(windows)unix' \
'(unix)windows' \
'(unix windows)nocontrol'
;;
esac