id = "wget2" name = "GNU Wget2" homepage = "https://gitlab.com/gnuwget/wget2" description = "The successor of GNU Wget, a file and recursive website downloader." executables = ["wget2"] [dotfiles] # https://gitlab.com/gnuwget/wget2/-/blob/master/docs/wget2.md — Wget2 reads # the first user startup file it finds from $XDG_CONFIG_HOME/wget/wget2rc, # $HOME/.config/wget/wget2rc, and the legacy $HOME/.wget2rc. The latter is # deprecated but remains a supported spelling, so both paths are retained. paths = ["~/.config/wget/wget2rc", "~/.wget2rc"] exclude = [] secret = [] side_effect = false # The same manual documents http-password, ftp-password and proxy-password # startup options. The rc parser also accepts the generic password directive; # keep every password-prefixed directive out of synced content. [[dotfiles.secret_paths]] file = ["~/.config/wget/wget2rc", "~/.wget2rc"] match = { prefix = ["password"] } [commands] format = 1 label = "Download files" description = "Download one or more URLs, optionally recursively. Authentication, certificates, proxies and mirroring filters are left out." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "manual" kind = "manual" url = "https://gitlab.com/gnuwget/wget2/-/blob/master/docs/wget2.md" revision = "2026-10-27" evidence = """ ### `-q`, `--quiet` ### `-i`, `--input-file=file` ### `-t`, `--tries=number` ### `-O`, `--output-document=file` ### `-c`, `--continue` ### `-P prefix`, `--directory-prefix=prefix` ### `-U agent-string`, `--user-agent=agent-string` ### `--max-threads=number` ### `-r`, `--recursive` ### `-l depth`, `--level=depth` ### `-p`, `--page-requisites` ### `-np`, `--no-parent` ### `-nc`, `--no-clobber` """ [[commands.field]] id = "url" label = "URLs" type = "url" position = 0 multiple = true sources = ["manual"] [[commands.field]] id = "output_document" label = "Output file" description = "Concatenates all downloads into this file." type = "path" path = { kind = "file", role = "output" } option = ["--output-document", "-O"] effect = "overwrite" sources = ["manual"] [[commands.field]] id = "directory_prefix" label = "Save into directory" type = "path" path = { kind = "directory", role = "output" } option = ["--directory-prefix", "-P"] sources = ["manual"] [[commands.field]] id = "input_file" label = "Read URLs from file" type = "path" path = { kind = "file", role = "input" } option = ["--input-file", "-i"] sources = ["manual"] [[commands.field]] id = "continue" label = "Resume partial download" type = "boolean" option = ["--continue", "-c"] sources = ["manual"] [[commands.field]] id = "no_clobber" label = "Do not overwrite existing files" type = "boolean" option = ["--no-clobber"] sources = ["manual"] [[commands.field]] id = "recursive" label = "Recursive download" type = "boolean" option = ["--recursive", "-r"] sources = ["manual"] [[commands.field]] id = "level" label = "Recursion depth" type = "integer" option = ["--level", "-l"] sources = ["manual"] [[commands.field]] id = "no_parent" label = "Do not ascend to parent directory" type = "boolean" option = ["--no-parent"] sources = ["manual"] [[commands.field]] id = "page_requisites" label = "Fetch page requisites" type = "boolean" option = ["--page-requisites", "-p"] sources = ["manual"] [[commands.field]] id = "tries" label = "Retries" type = "integer" option = ["--tries", "-t"] sources = ["manual"] [[commands.field]] id = "max_threads" label = "Max threads" type = "integer" option = ["--max-threads"] sources = ["manual"] [[commands.field]] id = "user_agent" label = "User agent" type = "string" option = ["--user-agent", "-U"] sources = ["manual"] [[commands.field]] id = "quiet" label = "Quiet" type = "boolean" option = ["--quiet", "-q"] sources = ["manual"] [[commands.task]] id = "download" label = "Download URL" fields = ["url", "directory_prefix", "continue"] required = ["url"] [[commands.task]] id = "recursive" label = "Recursive download" fields = ["url", "recursive", "level", "no_parent", "directory_prefix"] required = ["url"] set = { recursive = [true], no_parent = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["url", "output_document", "directory_prefix", "continue", "recursive", "level", "no_parent"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["input_file", "no_clobber", "page_requisites", "tries", "max_threads", "user_agent", "quiet"]