usage_text.h 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391
  1. /* <!-- copyright */
  2. /*
  3. * aria2 - The high speed download utility
  4. *
  5. * Copyright (C) 2006 Tatsuhiro Tsujikawa
  6. *
  7. * This program is free software; you can redistribute it and/or modify
  8. * it under the terms of the GNU General Public License as published by
  9. * the Free Software Foundation; either version 2 of the License, or
  10. * (at your option) any later version.
  11. *
  12. * This program is distributed in the hope that it will be useful,
  13. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  14. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  15. * GNU General Public License for more details.
  16. *
  17. * You should have received a copy of the GNU General Public License
  18. * along with this program; if not, write to the Free Software
  19. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  20. *
  21. * In addition, as a special exception, the copyright holders give
  22. * permission to link the code of portions of this program with the
  23. * OpenSSL library under certain conditions as described in each
  24. * individual source file, and distribute linked combinations
  25. * including the two.
  26. * You must obey the GNU General Public License in all respects
  27. * for all of the code used other than OpenSSL. If you modify
  28. * file(s) with this exception, you may extend this exception to your
  29. * version of the file(s), but you are not obligated to do so. If you
  30. * do not wish to do so, delete this exception statement from your
  31. * version. If you delete this exception statement from all source
  32. * files in the program, then also delete it here.
  33. */
  34. /* copyright --> */
  35. #define TEXT_DIR \
  36. _(" -d, --dir=DIR The directory to store the downloaded file.")
  37. #define TEXT_OUT \
  38. _(" -o, --out=FILE The file name of the downloaded file.")
  39. #define TEXT_LOG \
  40. _(" -l, --log=LOG The file name of the log file. If '-' is\n"\
  41. " specified, log is written to stdout.")
  42. #define TEXT_DAEMON \
  43. _(" -D, --daemon Run as daemon.")
  44. #define TEXT_SPLIT \
  45. _(" -s, --split=N Download a file using N connections. If more\n"\
  46. " than N URLs are given, first N URLs are used and\n"\
  47. " remaining URLs are used for backup. If less than\n"\
  48. " N URLs are given, those URLs are used more than\n"\
  49. " once so that N connections total are made\n"\
  50. " simultaneously. Please see -j option too.")
  51. #define TEXT_RETRY_WAIT \
  52. _(" --retry-wait=SEC Set the seconds to wait to retry after an error\n"\
  53. " has occured.")
  54. #define TEXT_TIMEOUT \
  55. _(" -t, --timeout=SEC Set timeout in seconds.")
  56. #define TEXT_MAX_TRIES \
  57. _(" -m, --max-tries=N Set number of tries. 0 means unlimited.")
  58. #define TEXT_HTTP_PROXY \
  59. _(" --http-proxy=PROXY Use this proxy server for HTTP.\n"\
  60. " See also --all-proxy option.\n"\
  61. " This affects all URLs.")
  62. #define TEXT_HTTPS_PROXY \
  63. _(" --https-proxy=PROXY Use this proxy server for HTTPS.\n"\
  64. " See also --all-proxy option.\n"\
  65. " This affects all URLs.")
  66. #define TEXT_FTP_PROXY \
  67. _(" --ftp-proxy=PROXY Use this proxy server for FTP.\n"\
  68. " See also --all-proxy option.\n"\
  69. " This affects all URLs.")
  70. #define TEXT_ALL_PROXY \
  71. _(" --all-proxy=PROXY Use this proxy server in the all protocols.\n"\
  72. " You can override this setting and specify a\n"\
  73. " proxy server for particular proctol using\n"\
  74. " --http-proxy, --https-proxy and --ftp-proxy\n"\
  75. " options.\n"\
  76. " This affects all URLs.")
  77. #define TEXT_HTTP_USER \
  78. _(" --http-user=USER Set HTTP user. This affects all URLs.")
  79. #define TEXT_HTTP_PASSWD \
  80. _(" --http-passwd=PASSWD Set HTTP password. This affects all URLs.")
  81. #define TEXT_PROXY_METHOD \
  82. _(" --proxy-method=METHOD Set the method to use in proxy request.")
  83. #define TEXT_HTTP_AUTH_SCHEME \
  84. _(" --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, basic\n"\
  85. " is the only supported scheme.")
  86. #define TEXT_REFERER \
  87. _(" --referer=REFERER Set Referer. This affects all URLs.")
  88. #define TEXT_FTP_USER \
  89. _(" --ftp-user=USER Set FTP user. This affects all URLs.")
  90. #define TEXT_FTP_PASSWD \
  91. _(" --ftp-passwd=PASSWD Set FTP password. This affects all URLs.")
  92. #define TEXT_FTP_TYPE \
  93. _(" --ftp-type=TYPE Set FTP transfer type.")
  94. #define TEXT_FTP_PASV \
  95. _(" -p, --ftp-pasv Use passive mode in FTP.")
  96. #define TEXT_LOWEST_SPEED_LIMIT \
  97. _(" --lowest-speed-limit=SPEED Close connection if download speed is lower than\n"\
  98. " or equal to this value(bytes per sec).\n"\
  99. " 0 means aria2 does not have a lowest speed limit.\n"\
  100. " You can append K or M(1K = 1024, 1M = 1024K).\n"\
  101. " This option does not affect BitTorrent downloads.")
  102. #define TEXT_MAX_DOWNLOAD_LIMIT \
  103. _(" --max-download-limit=SPEED Set max download speed in bytes per sec.\n"\
  104. " 0 means unrestricted.\n"\
  105. " You can append K or M(1K = 1024, 1M = 1024K).")
  106. #define TEXT_FILE_ALLOCATION \
  107. _(" --file-allocation=METHOD Specify file allocation method.\n"\
  108. " 'none' doesn't pre-allocate file space. 'prealloc'\n"\
  109. " pre-allocates file space before download begins.\n"\
  110. " This may take some time depending on the size of\n"\
  111. " the file.")
  112. #define TEXT_NO_FILE_ALLOCATION_LIMIT \
  113. _(" --no-file-allocation-limit=SIZE No file allocation is made for files whose\n"\
  114. " size is smaller than SIZE.\n"\
  115. " You can append K or M(1K = 1024, 1M = 1024K).")
  116. # define TEXT_ENABLE_DIRECT_IO \
  117. _(" --enable-direct-io[=true|false] Enable directI/O, which lowers cpu usage while\n"\
  118. " allocating files.\n"\
  119. " Turn off if you encounter any error")
  120. #define TEXT_ALLOW_OVERWRITE \
  121. _(" --allow-overwrite=true|false If false, aria2 doesn't download a file which\n"\
  122. " already exists but the corresponding .aria2 file\n"\
  123. " doesn't exist.")
  124. #define TEXT_ALLOW_PIECE_LENGTH_CHANGE \
  125. _(" --allow-piece-length-change=true|false If false is given, aria2 aborts download\n"\
  126. " when a piece length is different from one in\n"\
  127. " a control file. If true is given, you can proceed\n"\
  128. " but some download progress will be lost.")
  129. #define TEXT_FORCE_SEQUENTIAL \
  130. _(" -Z, --force-sequential[=true|false] Fetch URIs in the command-line sequentially\n"\
  131. " and download each URI in a separate session, like\n"\
  132. " the usual command-line download utilities.")
  133. #define TEXT_AUTO_FILE_RENAMING \
  134. _(" --auto-file-renaming[=true|false] Rename file name if the same file already\n"\
  135. " exists. This option works only in http(s)/ftp\n"\
  136. " download.\n"\
  137. " The new file name has a dot and a number(1..9999)\n"\
  138. " appended.")
  139. #define TEXT_PARAMETERIZED_URI \
  140. _(" -P, --parameterized-uri[=true|false] Enable parameterized URI support.\n"\
  141. " You can specify set of parts:\n"\
  142. " http://{sv1,sv2,sv3}/foo.iso\n"\
  143. " Also you can specify numeric sequences with step\n"\
  144. " counter:\n"\
  145. " http://host/image[000-100:2].img\n"\
  146. " A step counter can be omitted.\n"\
  147. " If all URIs do not point to the same file, such\n"\
  148. " as the second example above, -Z option is\n"\
  149. " required.")
  150. #define TEXT_ENABLE_HTTP_KEEP_ALIVE \
  151. _(" --enable-http-keep-alive[=true|false] Enable HTTP/1.1 persistent connection.")
  152. #define TEXT_ENABLE_HTTP_PIPELINING \
  153. _(" --enable-http-pipelining[=true|false] Enable HTTP/1.1 pipelining.")
  154. #define TEXT_CHECK_INTEGRITY \
  155. _(" --check-integrity=true|false Check file integrity by validating piece hash.\n"\
  156. " This option only affects in BitTorrent downloads\n"\
  157. " and Metalink downloads with chunk checksums.\n"\
  158. " Use this option to re-download a damaged portion\n"\
  159. " of a file.")
  160. #define TEXT_REALTIME_CHUNK_CHECKSUM \
  161. _(" --realtime-chunk-checksum=true|false Validate chunk checksum while\n"\
  162. " downloading a file in Metalink mode. This option\n"\
  163. " on affects Metalink mode with chunk checksums.")
  164. #define TEXT_CONTINUE \
  165. _(" -c, --continue Continue downloading a partially downloaded\n"\
  166. " file. Use this option to resume a download\n"\
  167. " started by a web browser or another program\n"\
  168. " which downloads files sequentially from the\n"\
  169. " beginning. Currently this option is only\n"\
  170. " applicable to http(s)/ftp downloads.")
  171. #define TEXT_USER_AGENT \
  172. _(" -U, --user-agent=USER_AGENT Set user agent for http(s) downloads.")
  173. #define TEXT_NO_NETRC \
  174. _(" -n, --no-netrc Disables netrc support.")
  175. #define TEXT_INPUT_FILE \
  176. _(" -i, --input-file=FILE Downloads URIs found in FILE. You can specify\n"\
  177. " multiple URIs for a single entity: separate\n"\
  178. " URIs on a single line using the TAB character.\n"\
  179. " Reads input from stdin when '-' is specified.")
  180. #define TEXT_MAX_CONCURRENT_DOWNLOADS \
  181. _(" -j, --max-concurrent-downloads=N Set maximum number of parallel downloads for\n"\
  182. " every static (HTTP/FTP) URL, torrent and metalink.")
  183. #define TEXT_LOAD_COOKIES \
  184. _(" --load-cookies=FILE Load Cookies from FILE using the Firefox3 format\n"\
  185. " and Mozilla/Firefox(1.x/2.x)/Netscape format.")
  186. #define TEXT_SHOW_FILES \
  187. _(" -S, --show-files Print file listing of .torrent or .metalink file\n"\
  188. " and exit. More detailed information will be listed\n"\
  189. " in case of torrent file.")
  190. #define TEXT_SELECT_FILE \
  191. _(" --select-file=INDEX... Set file to download by specifing its index.\n"\
  192. " You can find the file index using the\n"\
  193. " --show-files option. Multiple indexes can be\n"\
  194. " specified by using ',', for example: \"3,6\".\n"\
  195. " You can also use '-' to specify a range: \"1-5\".\n"\
  196. " ',' and '-' can be used together.\n"\
  197. " When used with the -M option, index may vary\n"\
  198. " depending on the query(see --metalink-* options).")
  199. #define TEXT_TORRENT_FILE \
  200. _(" -T, --torrent-file=TORRENT_FILE The path to the .torrent file.")
  201. #define TEXT_FOLLOW_TORRENT \
  202. _(" --follow-torrent=true|false|mem If true or mem is specified, when a file\n"\
  203. " whose suffix is .torrent or content type is\n"\
  204. " application/x-bittorrent is downloaded, aria2\n"\
  205. " parses it as a torrent file and downloads files\n"\
  206. " mentioned in it.\n"\
  207. " If mem is specified, a torrent file is not\n"\
  208. " written to the disk, but is just kept in memory.\n"\
  209. " If false is specified, the action mentioned above\n"\
  210. " is not taken.")
  211. #define TEXT_DIRECT_FILE_MAPPING \
  212. _(" --direct-file-mapping=true|false Directly read from and write to each file\n"\
  213. " mentioned in .torrent file.")
  214. #define TEXT_LISTEN_PORT \
  215. _(" --listen-port=PORT... Set TCP port number for BitTorrent downloads.\n"\
  216. " Multiple ports can be specified by using ',',\n"\
  217. " for example: \"6881,6885\". You can also use '-'\n"\
  218. " to specify a range: \"6881-6999\". ',' and '-' can\n"\
  219. " be used together.")
  220. #define TEXT_MAX_UPLOAD_LIMIT \
  221. _(" --max-upload-limit=SPEED Set max upload speed in bytes per sec.\n"\
  222. " 0 means unrestricted.\n"\
  223. " You can append K or M(1K = 1024, 1M = 1024K).")
  224. #define TEXT_SEED_TIME \
  225. _(" --seed-time=MINUTES Specify seeding time in minutes. Also see the\n"\
  226. " --seed-ratio option.")
  227. #define TEXT_SEED_RATIO \
  228. _(" --seed-ratio=RATIO Specify share ratio. Seed completed torrents\n"\
  229. " until share ratio reaches RATIO. 1.0 is\n"\
  230. " encouraged. Specify 0.0 if you intend to do\n"\
  231. " seeding regardless of share ratio.\n"\
  232. " If --seed-time option is specified along with\n"\
  233. " this option, seeding ends when at least one of\n"\
  234. " the conditions is satisfied.")
  235. #define TEXT_PEER_ID_PREFIX \
  236. _(" --peer-id-prefix=PEERI_ID_PREFIX Specify the prefix of peer ID. The peer ID in\n"\
  237. " BitTorrent is 20 byte length. If more than 20\n"\
  238. " bytes are specified, only first 20\n"\
  239. " bytes are used. If less than 20 bytes are\n"\
  240. " specified, the random alphabet characters are\n"\
  241. " added to make it's length 20 bytes.")
  242. #define TEXT_ENABLE_PEER_EXCHANGE \
  243. _(" --enable-peer-exchange[=true|false] Enable Peer Exchange extension.")
  244. #define TEXT_ENABLE_DHT \
  245. _(" --enable-dht[=true|false] Enable DHT functionality.")
  246. #define TEXT_DHT_LISTEN_PORT \
  247. _(" --dht-listen-port=PORT... Set UDP listening port for DHT.\n"\
  248. " Multiple ports can be specified by using ',',\n"\
  249. " for example: \"6881,6885\". You can also use '-'\n"\
  250. " to specify a range: \"6881-6999\". ',' and '-' can\n"\
  251. " be used together.")
  252. #define TEXT_DHT_ENTRY_POINT \
  253. _(" --dht-entry-point=HOST:PORT Set host and port as an entry point to DHT\n"\
  254. " network.")
  255. #define TEXT_DHT_FILE_PATH \
  256. _(" --dht-file-path=PATH Change the DHT routing table file to PATH.")
  257. #define TEXT_BT_MIN_CRYPTO_LEVEL \
  258. _(" --bt-min-crypto-level=plain|arc4 Set minimum level of encryption method.\n"\
  259. " If several encryption methods are provided by a\n"\
  260. " peer, aria2 chooses a lowest one which satisfies\n"\
  261. " the given level.")
  262. #define TEXT_BT_REQUIRE_CRYPTO \
  263. _(" --bt-require-crypto=true|false If true is given, aria2 doesn't accept and\n"\
  264. " establish connection with legacy BitTorrent\n"\
  265. " handshake. Thus aria2 always uses Obfuscation\n"\
  266. " handshake.")
  267. #define TEXT_BT_REQUEST_PEER_SPEED_LIMIT \
  268. _(" --bt-request-peer-speed-limit=SPEED In BitTorrent downloads, if the download\n"\
  269. " speed is lower than SPEED, aria2 initiates and\n"\
  270. " accepts connections ignoring max peer cap.\n"\
  271. " You can append K or M(1K = 1024, 1M = 1024K).")
  272. #define TEXT_BT_MAX_OPEN_FILES \
  273. _(" --bt-max-open-files=NUM Specify maximum number of files to open in each\n"\
  274. " BitTorrent download.")
  275. #define TEXT_BT_SEED_UNVERIFIED \
  276. _(" --bt-seed-unverified[=true|false] Seed previously downloaded files without\n"\
  277. " verifying piece hashes.")
  278. #define TEXT_METALINK_FILE \
  279. _(" -M, --metalink-file=METALINK_FILE The file path to the .metalink file.")
  280. #define TEXT_METALINK_SERVERS \
  281. _(" -C, --metalink-servers=NUM_SERVERS The number of servers to connect to\n"\
  282. " simultaneously.")
  283. #define TEXT_METALINK_VERSION \
  284. _(" --metalink-version=VERSION The version of the file to download.")
  285. #define TEXT_METALINK_LANGUAGE \
  286. _(" --metalink-language=LANGUAGE The language of the file to download.")
  287. #define TEXT_METALINK_OS \
  288. _(" --metalink-os=OS The operating system of the file to download.")
  289. #define TEXT_METALINK_LOCATION \
  290. _(" --metalink-location=LOCATION[,...] The location of the preferred server.\n"\
  291. " A comma-deliminated list of locations is\n"\
  292. " acceptable.")
  293. #define TEXT_METALINK_PREFERRED_PROTOCOL \
  294. _(" --metalink-preferred-protocol=PROTO Specify preferred protocol. Specifiy 'none'\n"\
  295. " if you don't have any preferred protocol.")
  296. #define TEXT_FOLLOW_METALINK \
  297. _(" --follow-metalink=true|false|mem If true or mem is specified, when a file\n"\
  298. " whose suffix is .metaink or content type is\n"\
  299. " application/metalink+xml is downloaded, aria2\n"\
  300. " parses it as a metalink file and downloads files\n"\
  301. " mentioned in it.\n"\
  302. " If mem is specified, a metalink file is not\n"\
  303. " written to the disk, but is just kept in memory.\n"\
  304. " If false is specified, the action mentioned above\n"\
  305. " is not taken.")
  306. #define TEXT_METALINK_ENABLE_UNIQUE_PROTOCOL \
  307. _(" --metalink-enable-unique-protocol=true|false If true is given and several\n"\
  308. " protocols are available for a mirror in a metalink\n"\
  309. " file, aria2 uses one of them.\n"\
  310. " Use --metalink-preferred-protocol option to\n"\
  311. " specify the preference of protocol.")
  312. #define TEXT_VERSION \
  313. _(" -v, --version Print the version number and exit.")
  314. #define TEXT_HELP \
  315. _(" -h, --help[=CATEGORY] Print usage and exit.\n"\
  316. " The help messages are classified in several\n"\
  317. " categories. For example, type \"--help=http\" for\n"\
  318. " detailed explanation for the options related to\n"\
  319. " http. If no matching category is found, search\n"\
  320. " option name using a given word in middle match\n"\
  321. " and print the result.")
  322. #define TEXT_NO_CONF \
  323. _(" --no-conf Disable loading aria2.conf file.")
  324. #define TEXT_CONF_PATH \
  325. _(" --conf-path=PATH Change the configuration file path to PATH.")
  326. #define TEXT_STOP \
  327. _(" --stop=SEC Stop application after SEC seconds has passed.\n" \
  328. " If 0 is given, this feature is disabled.")
  329. #define TEXT_HEADER \
  330. _(" --header=HEADER Append HEADER to HTTP request header. You can use\n"\
  331. " this option repeatedly to specify more than one\n"\
  332. " header:\n"\
  333. " aria2c --header=\"X-A: b78\" --header=\"X-B: 9J1\"\n"\
  334. " http://host/file")
  335. #define TEXT_QUIET \
  336. _(" -q, --quiet[=true|false] Make aria2 quite (no console output).")
  337. #define TEXT_ASYNC_DNS \
  338. _(" --async-dns[=true|false] Enable asynchronous DNS.")
  339. #define TEXT_FTP_REUSE_CONNECTION \
  340. _(" --ftp-reuse-connection[=true|false] Reuse connection in FTP.")
  341. #define TEXT_SUMMARY_INTERVAL \
  342. _(" --summary-interval=SEC Set interval to output download progress summary.\n"\
  343. " Setting 0 suppresses the output.")
  344. #define TEXT_LOG_LEVEL \
  345. _(" --log-level=LEVEL Set log level to output.")
  346. #define TEXT_REMOTE_TIME \
  347. _(" -R, --remote-time[=true|false] Retrieve timestamp of the remote file from the\n"\
  348. " remote HTTP/FTP server and if it is available,\n"\
  349. " apply it to the local file.")
  350. #define TEXT_CONNECT_TIMEOUT \
  351. _(" --connect-timeout=SEC Set the connect timeout in seconds to establish\n"\
  352. " connection to HTTP/FTP/proxy server. After the\n"\
  353. " connection is established, this option makes no\n"\
  354. " effect and --timeout option is used instead.")
  355. #define TEXT_MAX_FILE_NOT_FOUND \
  356. _(" --max-file-not-found=NUM If aria2 recieves `file not found' status from the\n"\
  357. " remote HTTP/FTP servers NUM times without getting\n"\
  358. " a single byte, then force the download to fail.\n"\
  359. " Specify 0 to disable this option.\n"\
  360. " This options is only effective only when using\n"\
  361. " HTTP/FTP servers.")
  362. #define TEXT_URI_SELECTOR \
  363. _(" --uri-selector=SELECTOR Specify URI selection algorithm.\n"\
  364. " If 'inorder' is given, URI is tried in the order\n"\
  365. " appeared in the URI list.\n"\
  366. " If 'feedback' is given, aria2 uses download speed\n"\
  367. " observed in the previous downloads and choose\n"\
  368. " fastest server in the URI list. This also\n"\
  369. " effectively skips dead mirrors. The observed\n"\
  370. " download speed is a part of performance profile\n"\
  371. " of servers mentioned in --server-stat-of and\n"\
  372. " --server-stat-if options.")
  373. #define TEXT_SERVER_STAT_OF \
  374. _(" --server-stat-of=FILE Specify the filename to which performance profile\n"\
  375. " of the servers is saved. You can load saved data\n"\
  376. " using --server-stat-if option.")
  377. #define TEXT_SERVER_STAT_IF \
  378. _(" --server-stat-if=FILE Specify the filename to load performance profile\n"\
  379. " of the servers. The loaded data will be used in\n"\
  380. " some URI selector such as 'feedback'.\n"\
  381. " See also --uri-selector option")
  382. #define TEXT_SERVER_STAT_TIMEOUT \
  383. _(" --server-stat-timeout=SEC Specifies timeout in seconds to invalidate\n"\
  384. " performance profile of the servers since the last\n"\
  385. " contact to them.")
  386. #define TEXT_AUTO_SAVE_INTERVAL \
  387. _(" --auto-save-interval=SEC Save a control file(*.aria2) every SEC seconds.\n"\
  388. " If 0 is given, a control file is not saved during\n"\
  389. " download. aria2 saves a control file when it stops\n"\
  390. " regardless of the value.")