id = "httrack" name = "HTTrack" homepage = "https://www.httrack.com/" description = "An offline browser utility for downloading websites to a local directory." executables = ["httrack"] [dotfiles] # https://www.httrack.com/HelpHtml/fcguide.html — .httrackrc is searched in # the current/output directories and then in the user's home directory. paths = ["~/.httrackrc"] secret = [] side_effect = false [commands] format = 1 label = "Mirror a website" description = "Download a site into a local folder. URL filters (+pattern, -pattern), cookies, proxies and cache tuning are not in this form." quality = "ai-draft" parser = { end_of_options = "", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "man" kind = "manual" url = "https://manpages.debian.org/bookworm/httrack/httrack.1.en.html" revision = "bookworm" evidence = """ -O path for mirror/logfiles+cache (-O path mirror[,path cache and logfiles]) -rN set the mirror depth to N (* r9999) (--depth[=N]) -AN maximum transfer rate in bytes/seconds (1000=1KB/s max) (--max-rate[=N]) -cN number of multiple connections (*c8) (--sockets[=N]) -q no questions - quiet mode (--quiet) -%v display on screen filenames downloaded (in realtime) - * %v1 short version -a *stay on the same address (--stay-on-same-address) -d stay on the same principal domain (--stay-on-same-domain) -e go everywhere on the web (--go-everywhere) """ [[commands.field]] id = "path" label = "Output folder" type = "path" option = ["-O"] path = { kind = "directory", role = "output", must_exist = false } sources = ["man"] [[commands.field]] id = "depth" label = "Mirror depth" type = "integer" option = ["--depth"] value_style = "equals" sources = ["man"] [[commands.field]] id = "max_rate" label = "Max transfer rate (bytes/s)" type = "integer" option = ["--max-rate"] value_style = "equals" sources = ["man"] [[commands.field]] id = "sockets" label = "Parallel connections" type = "integer" option = ["--sockets"] value_style = "equals" sources = ["man"] [[commands.field]] id = "quiet" label = "No questions" type = "boolean" option = ["-q"] sources = ["man"] [[commands.field]] id = "same_address" label = "Stay on same address" type = "boolean" option = ["-a"] sources = ["man"] [[commands.field]] id = "same_domain" label = "Stay on same domain" type = "boolean" option = ["-d"] sources = ["man"] [[commands.field]] id = "everywhere" label = "Go everywhere" type = "boolean" option = ["-e"] sources = ["man"] [[commands.field]] id = "urls" label = "URLs" type = "url" position = 0 multiple = true sources = ["man"] [[commands.task]] id = "mirror" label = "Mirror one site" set = { same_address = [true] } fields = ["urls", "path", "depth", "quiet", "same_address"] required = ["urls", "path"] [[commands.group]] id = "basic" label = "Basic" fields = ["urls", "path", "depth", "quiet"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["max_rate", "sockets", "same_address", "same_domain", "everywhere"]