diff --git a/ChangeLog b/ChangeLog index 730d98a3..2b7d56fd 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,24 @@ +2006-03-05 Tatsuhiro Tsujikawa + + * main.cc: correct help message for --http-auth-scheme. + * main.cc: changed e-mail address for bug reports. + * ja.po: added japanese translation. + +2006-03-04 Tatsuhiro Tsujikawa + + * SimpleLogger.cc: flush log file instead of stdout. + +2006-03-03 Tatsuhiro Tsujikawa + + * main.cc: Fixed command-line option: max-tries + * HttpResponseCommand.cc: Make the request re-sent only if req->seg.sp + does not equal to seg.sp. + * DownloadCommand.cc: If EOF is got from the server and the total size + of file is not zero, then throw DlRetryEx. + * main.cc: Set the minium value of min-segment-size to 1024. + * HttpResponseCommand.cc: Fixed the bug that http segmented downloading + fails because of a regression since 0.2.0 release. + 2006-03-02 Tatsuhiro Tsujikawa * HttpConnection.cc: diff --git a/Makefile.in b/Makefile.in index ca6e508b..61d4ea51 100644 --- a/Makefile.in +++ b/Makefile.in @@ -168,6 +168,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ diff --git a/configure b/configure index c2d86eda..f9e1430c 100755 --- a/configure +++ b/configure @@ -311,7 +311,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CPPUNIT_CONFIG CPPUNIT_CFLAGS CPPUNIT_LIBS RANLIB ac_ct_RANLIB MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CPP EGREP LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CPPUNIT_CONFIG CPPUNIT_CFLAGS CPPUNIT_LIBS RANLIB ac_ct_RANLIB MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB localedir CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CPP EGREP LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -4859,6 +4859,10 @@ _ACEOF +# Set localedir +localedir=${datadir}/locale + + # Checks for arguments. # Check whether --enable-ssl or --disable-ssl was given. if test "${enable_ssl+set}" = set; then @@ -8768,6 +8772,7 @@ s,@INTLLIBS@,$INTLLIBS,;t t s,@LIBINTL@,$LIBINTL,;t t s,@LTLIBINTL@,$LTLIBINTL,;t t s,@POSUB@,$POSUB,;t t +s,@localedir@,$localedir,;t t s,@CXX@,$CXX,;t t s,@CXXFLAGS@,$CXXFLAGS,;t t s,@ac_ct_CXX@,$ac_ct_CXX,;t t diff --git a/configure.in b/configure.in index 4e047668..9a861079 100644 --- a/configure.in +++ b/configure.in @@ -11,6 +11,10 @@ AC_PROG_RANLIB AM_GNU_GETTEXT([external]) AM_GNU_GETTEXT_VERSION(0.12.1) +# Set localedir +localedir=${datadir}/locale +AC_SUBST(localedir) + # Checks for arguments. AC_ARG_ENABLE([ssl], [ --enable-ssl enalbe SSL support if libssl is installed. Default: yes], [enable_ssl=$enableval], [enable_ssl=yes]) diff --git a/m4/Makefile b/m4/Makefile index 3e71bb82..7e25b2a1 100644 --- a/m4/Makefile +++ b/m4/Makefile @@ -143,6 +143,7 @@ infodir = ${prefix}/info install_sh = /home/tujikawa/aria2/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec +localedir = ${prefix}/share/locale localstatedir = ${prefix}/var mandir = ${prefix}/man mkdir_p = mkdir -p -- diff --git a/m4/Makefile.in b/m4/Makefile.in index 01326a48..6af096fe 100644 --- a/m4/Makefile.in +++ b/m4/Makefile.in @@ -143,6 +143,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ diff --git a/po/Makefile b/po/Makefile index 10fdd171..bb195bbe 100644 --- a/po/Makefile +++ b/po/Makefile @@ -49,7 +49,8 @@ $(POFILES) $(GMOFILES) \ $(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) POTFILES = \ - ../src/message.h + ../src/message.h \ + ../src/main.cc CATALOGS = ja.gmo diff --git a/po/Makevars b/po/Makevars index 68be7324..6b74cb59 100644 --- a/po/Makevars +++ b/po/Makevars @@ -18,7 +18,7 @@ XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ # or entity, or to disclaim their copyright. The empty string stands for # the public domain; in this case the translators are expected to disclaim # their copyright. -COPYRIGHT_HOLDER = Free Software Foundation, Inc. +COPYRIGHT_HOLDER = Tatsuhiro Tsujikawa # This is the email address or URL to which the translators shall report # bugs in the untranslated strings: diff --git a/po/POTFILES b/po/POTFILES index c25d2d17..ea42be2c 100644 --- a/po/POTFILES +++ b/po/POTFILES @@ -1 +1,2 @@ - ../src/message.h + ../src/message.h \ + ../src/main.cc diff --git a/po/POTFILES.in b/po/POTFILES.in index f7abb27f..7e010fe0 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -1 +1,2 @@ src/message.h +src/main.cc diff --git a/po/aria2.pot b/po/aria2.pot deleted file mode 100644 index 98913ccc..00000000 --- a/po/aria2.pot +++ /dev/null @@ -1,402 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR Free Software Foundation, Inc. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"PO-Revision-Date: 2006-03-02 19:19+0900\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: /home/tujikawa/aria2/src/message.h:27 -msgid "CUID#%d - The download for one segment completed successfully." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:28 -msgid "CUID#%d - No segment available." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:29 -msgid "CUID#%d - Connecting to %s:%d" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:30 -msgid "CUID#%d - The segment changed. We send the request again with new Range header." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:31 -msgid "CUID#%d - Redirecting to %s" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:32 -msgid "" -"CUID#%d - Requesting:\n" -"%s" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:33 -msgid "" -"CUID#%d - Response received:\n" -"%s" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:34 -msgid "CUID#%d - Download aborted." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:35 -msgid "CUID#%d - Restarting the download." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:36 -msgid "CUID#%d - %d times attempted, but no success. Download aborted." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:37 -msgid "CUID#%d - Unregistering cuid from segmentManager." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:39 -msgid "The segment file %s exists." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:40 -msgid "The segment file %s does not exist." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:41 -msgid "Saving the segment file %s" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:42 -msgid "The segment file was saved successfully." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:43 -msgid "Loading the segment file %s." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:44 -msgid "The segment file was loaded successfully." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:46 -msgid "Timeout." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:47 -msgid "Invalid chunk size." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:48 -msgid "Too large chunk. size = %d" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:49 -msgid "Invalid header." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:50 -msgid "Invalid response." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:51 -msgid "No header found." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:52 -msgid "No status header." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:53 -msgid "Proxy connection failed." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:54 -msgid "Connection failed." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:55 -msgid "The requested filename and the previously registered one are not same. %s != %s" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:56 -msgid "The response status is not successful. status = %d" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:57 -msgid "Too large file size. size = %lld" -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:58 -msgid "Transfer encoding %s is not supported." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:59 -msgid "SSL initialization failed." -msgstr "" - -#: /home/tujikawa/aria2/src/message.h:60 -msgid "Size mismatch %lld != %lld" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:57 -msgid "\nSIGINT signal received." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:72 -msgid "Unrecognized URL or unsupported protocol: " -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:102 -msgid "Usage: " -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:102 -msgid " [options] URL ..." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:104 -msgid "Options:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:105 -msgid " -d, --dir=DIR The directory to store downloaded file." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:106 -msgid " -o, --out=FILE The file name for downloaded file." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:107 -msgid " -l, --log=LOG The file path to store log. If '-' is specified," -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:108 -msgid " log is written to stdout." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:109 -msgid " -D, --daemon Run as daemon." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:110 -msgid " -s, --split=N Download a file using N connections. N must be" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:111 -msgid " between 1 and 5. This option affects all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:112 -msgid " Thus, aria2 connects to each URL with N connections." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:113 -msgid " --retry-wait=SEC Set amount of time in second between requests" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:114 -msgid " for errors. Specify a value between 0 and 60." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:116 -msgid " -t, --timeout=SEC Set timeout in second. Default: 60" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:117 -msgid " -m, --max-tries=N Set number of tries. 0 means unlimited." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:119 -msgid " --min-segment-size=SIZE[K|M] Set minimum segment size. You can append" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:121 -msgid " --http-proxy=HOST:PORT Use HTTP proxy server. This affects to all" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:122 -msgid " URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:123 -msgid " --http-user=USER Set HTTP user. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:124 -msgid " --http-passwd=PASSWD Set HTTP password. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:125 -msgid " --http-proxy-user=USER Set HTTP proxy user. This affects to all URLs" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:126 -msgid " --http-proxy-passwd=PASSWD Set HTTP proxy password. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:127 -msgid " --http-proxy-method=METHOD Set the method to use in proxy request." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:128 -msgid " METHOD is either 'get' or 'tunnel'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:130 -msgid " --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, basic" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:131 -msgid " is the only supported scheme. You MUST specify" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:132 -msgid " this option in order to use HTTP authentication" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:133 -msgid " as well as --http-proxy option." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:134 -msgid " --referer=REFERER Set Referer. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:135 -msgid " --ftp-user=USER Set FTP user. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:136 -msgid " Default: anonymous" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:137 -msgid " --ftp-passwd=PASSWD Set FTP password. This affects to all URLs." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:138 -msgid " Default: ARIA2USER@" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:139 -msgid " --ftp-type=TYPE Set FTP transfer type. TYPE is either 'binary'" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:140 -msgid " or 'ascii'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:141 -msgid " Default: binary" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:142 -msgid " -p, --ftp-pasv Use passive mode in FTP." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:143 -msgid " --ftp-via-http-proxy=METHOD Use HTTP proxy in FTP. METHOD is either 'get' or" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:144 -msgid " 'tunnel'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:146 -msgid " -v, --version Print the version number and exit." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:147 -msgid " -h, --help Print this message and exit." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:149 -msgid "URL:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:150 -msgid " You can specify multiple URLs. All URLs must point to the same file" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:151 -msgid " or downloading fails." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:153 -msgid "Examples:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:154 -msgid " Download a file by 1 connection:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:156 -msgid " Download a file by 2 connections:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:158 -msgid " Download a file by 2 connections, each connects to a different server:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:160 -msgid " You can mix up different protocols:" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:230 -msgid "unrecognized proxy format" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:256 -msgid "Currently, supported authentication scheme is basic." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:265 -msgid "retry-wait must be between 0 and 60." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:282 -msgid "ftp-type must be either 'binary' or 'ascii'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:291 -msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:309 -msgid "min-segment-size invalid" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:320 -msgid "http-proxy-method must be either 'get' or 'tunnel'." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:347 -msgid "split must be between 1 and 5." -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:357 -msgid "timeout must be between 1 and 600" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:366 -msgid "max-retires invalid" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:388 -msgid "specify at least one URL" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:439 -msgid "\nThe download was complete. <" -msgstr "" - -#: /home/tujikawa/aria2/src/main.cc:441 -msgid "\nThe download was not complete because of errors. Check the log." -msgstr "" diff --git a/po/aria2c.pot b/po/aria2c.pot index 26523dfe..89b3e262 100644 --- a/po/aria2c.pot +++ b/po/aria2c.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n" -"POT-Creation-Date: 2006-03-02 19:29+0900\n" +"POT-Creation-Date: 2006-03-05 15:17+0900\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -172,3 +172,283 @@ msgstr "" #, c-format msgid "Size mismatch %lld != %lld" msgstr "" + +#: src/message.h:61 +msgid "Got EOF from the server." +msgstr "" + +#: src/main.cc:57 +msgid "" +"\n" +"SIGINT signal received." +msgstr "" + +#: src/main.cc:72 +#, c-format +msgid "Unrecognized URL or unsupported protocol: %s\n" +msgstr "" + +#: src/main.cc:78 +msgid " version " +msgstr "" + +#: src/main.cc:82 +msgid "" +"This program is free software; you can redistribute it and/or modify\n" +"it under the terms of the GNU General Public License as published by\n" +"the Free Software Foundation; either version 2 of the License, or\n" +"(at your option) any later version.\n" +"\n" +"This program is distributed in the hope that it will be useful,\n" +"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" +"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" +"GNU General Public License for more details.\n" +"\n" +"You should have received a copy of the GNU General Public License\n" +"along with this program; if not, write to the Free Software\n" +"Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n" +msgstr "" + +#: src/main.cc:96 +#, c-format +msgid "Contact Info: %s\n" +msgstr "" + +#: src/main.cc:102 +#, c-format +msgid "Usage: %s [options] URL ...\n" +msgstr "" + +#: src/main.cc:104 +msgid "Options:" +msgstr "" + +#: src/main.cc:105 +msgid " -d, --dir=DIR The directory to store downloaded file." +msgstr "" + +#: src/main.cc:106 +msgid " -o, --out=FILE The file name for downloaded file." +msgstr "" + +#: src/main.cc:107 +msgid "" +" -l, --log=LOG The file path to store log. If '-' is " +"specified,\n" +" log is written to stdout." +msgstr "" + +#: src/main.cc:109 +msgid " -D, --daemon Run as daemon." +msgstr "" + +#: src/main.cc:110 +msgid "" +" -s, --split=N Download a file using N connections. N must " +"be\n" +" between 1 and 5. This option affects all " +"URLs.\n" +" Thus, aria2 connects to each URL with\n" +" N connections." +msgstr "" + +#: src/main.cc:114 +msgid "" +" --retry-wait=SEC Set amount of time in second between requests\n" +" for errors. Specify a value between 0 and 60.\n" +" Default: 5" +msgstr "" + +#: src/main.cc:117 +msgid " -t, --timeout=SEC Set timeout in second. Default: 60" +msgstr "" + +#: src/main.cc:118 +msgid "" +" -m, --max-tries=N Set number of tries. 0 means unlimited.\n" +" Default: 5" +msgstr "" + +#: src/main.cc:120 +msgid "" +" --min-segment-size=SIZE[K|M] Set minimum segment size. You can append\n" +" K or M(1K = 1024, 1M = 1024K). This\n" +" value must be greater than or equal to\n" +" 1024." +msgstr "" + +#: src/main.cc:124 +msgid "" +" --http-proxy=HOST:PORT Use HTTP proxy server. This affects to all\n" +" URLs." +msgstr "" + +#: src/main.cc:126 +msgid " --http-user=USER Set HTTP user. This affects to all URLs." +msgstr "" + +#: src/main.cc:127 +msgid "" +" --http-passwd=PASSWD Set HTTP password. This affects to all URLs." +msgstr "" + +#: src/main.cc:128 +msgid "" +" --http-proxy-user=USER Set HTTP proxy user. This affects to all URLs" +msgstr "" + +#: src/main.cc:129 +msgid "" +" --http-proxy-passwd=PASSWD Set HTTP proxy password. This affects to all " +"URLs." +msgstr "" + +#: src/main.cc:130 +msgid "" +" --http-proxy-method=METHOD Set the method to use in proxy request.\n" +" METHOD is either 'get' or 'tunnel'.\n" +" Default: tunnel" +msgstr "" + +#: src/main.cc:133 +msgid "" +" --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, " +"basic\n" +" is the only supported scheme. You MUST " +"specify\n" +" this option in order to use HTTP " +"authentication\n" +" as well as --http-user and --http-passwd." +msgstr "" + +#: src/main.cc:137 +msgid " --referer=REFERER Set Referer. This affects to all URLs." +msgstr "" + +#: src/main.cc:138 +msgid "" +" --ftp-user=USER Set FTP user. This affects to all URLs.\n" +" Default: anonymous" +msgstr "" + +#: src/main.cc:140 +msgid "" +" --ftp-passwd=PASSWD Set FTP password. This affects to all URLs.\n" +" Default: ARIA2USER@" +msgstr "" + +#: src/main.cc:142 +msgid "" +" --ftp-type=TYPE Set FTP transfer type. TYPE is either " +"'binary'\n" +" or 'ascii'.\n" +" Default: binary" +msgstr "" + +#: src/main.cc:145 +msgid " -p, --ftp-pasv Use passive mode in FTP." +msgstr "" + +#: src/main.cc:146 +msgid "" +" --ftp-via-http-proxy=METHOD Use HTTP proxy in FTP. METHOD is either 'get' " +"or\n" +" 'tunnel'.\n" +" Default: tunnel" +msgstr "" + +#: src/main.cc:149 +msgid " -v, --version Print the version number and exit." +msgstr "" + +#: src/main.cc:150 +msgid " -h, --help Print this message and exit." +msgstr "" + +#: src/main.cc:153 +msgid "" +" You can specify multiple URLs. All URLs must point to the same file\n" +" or downloading fails." +msgstr "" + +#: src/main.cc:156 +msgid "Examples:" +msgstr "" + +#: src/main.cc:157 +msgid " Download a file by 1 connection:" +msgstr "" + +#: src/main.cc:159 +msgid " Download a file by 2 connections:" +msgstr "" + +#: src/main.cc:161 +msgid " Download a file by 2 connections, each connects to a different server:" +msgstr "" + +#: src/main.cc:163 +msgid " You can mix up different protocols:" +msgstr "" + +#: src/main.cc:166 +#, c-format +msgid "Reports bugs to %s" +msgstr "" + +#: src/main.cc:240 +msgid "unrecognized proxy format" +msgstr "" + +#: src/main.cc:266 +msgid "Currently, supported authentication scheme is basic." +msgstr "" + +#: src/main.cc:275 +msgid "retry-wait must be between 0 and 60." +msgstr "" + +#: src/main.cc:292 +msgid "ftp-type must be either 'binary' or 'ascii'." +msgstr "" + +#: src/main.cc:301 +msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'." +msgstr "" + +#: src/main.cc:319 +msgid "min-segment-size invalid" +msgstr "" + +#: src/main.cc:330 +msgid "http-proxy-method must be either 'get' or 'tunnel'." +msgstr "" + +#: src/main.cc:357 +msgid "split must be between 1 and 5." +msgstr "" + +#: src/main.cc:367 +msgid "timeout must be between 1 and 600" +msgstr "" + +#: src/main.cc:376 +msgid "max-tries invalid" +msgstr "" + +#: src/main.cc:398 +msgid "specify at least one URL" +msgstr "" + +#: src/main.cc:449 +#, c-format +msgid "" +"\n" +"The download was complete. <%s>\n" +msgstr "" + +#: src/main.cc:451 +msgid "" +"\n" +"The download was not complete because of errors. Check the log.\n" +msgstr "" diff --git a/po/ja.gmo b/po/ja.gmo index b91ef225..7158b6cd 100644 Binary files a/po/ja.gmo and b/po/ja.gmo differ diff --git a/po/ja.po b/po/ja.po index ac10be4a..c6f1b8d4 100644 --- a/po/ja.po +++ b/po/ja.po @@ -1,14 +1,14 @@ # Japanese translations for aria2c package # aria2c パッケージに対する英訳. -# Copyright (C) 2006 Free Software Foundation, Inc. -# Tatsuhiro Tsujikawa , 2006. +# Copyright (C) 2006 Tatsuhiro Tsujikawa +# Tatsuhiro Tsujikawa , 2006. # msgid "" msgstr "" "Project-Id-Version: aria2c 0.2.1\n" "Report-Msgid-Bugs-To: http://aria2.sourceforge.net/\n" -"POT-Creation-Date: 2006-03-02 19:29+0900\n" -"PO-Revision-Date: 2006-03-02 19:29+0900\n" +"POT-Creation-Date: 2006-03-05 15:17+0900\n" +"PO-Revision-Date: 2006-03-05 15:21+0900\n" "Last-Translator: Tatsuhiro Tsujikawa \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" @@ -19,17 +19,17 @@ msgstr "" #: src/message.h:27 #, c-format msgid "CUID#%d - The download for one segment completed successfully." -msgstr "" +msgstr "CUID#%d - 1 セグメントのダウンロードが完了." #: src/message.h:28 #, c-format msgid "CUID#%d - No segment available." -msgstr "" +msgstr "CUID#%d - 利用可能なセグメントはありません." #: src/message.h:29 #, c-format msgid "CUID#%d - Connecting to %s:%d" -msgstr "" +msgstr "CUID#%d - %s:%d に接続しています." #: src/message.h:30 #, c-format @@ -37,11 +37,13 @@ msgid "" "CUID#%d - The segment changed. We send the request again with new Range " "header." msgstr "" +"CUID#%d - セグメントが変更されています. 新たな Range ヘッダーで再リクエストを" +"発行します." #: src/message.h:31 #, c-format msgid "CUID#%d - Redirecting to %s" -msgstr "" +msgstr "CUID#%d - %s にリダイレクトします." #: src/message.h:32 #, c-format @@ -49,6 +51,8 @@ msgid "" "CUID#%d - Requesting:\n" "%s" msgstr "" +"CUID#%d - リクエスト:\n" +"%s" #: src/message.h:33 #, c-format @@ -56,119 +60,506 @@ msgid "" "CUID#%d - Response received:\n" "%s" msgstr "" +"CUID#%d - サーバーからのレスポンス:\n" +"%s" #: src/message.h:34 #, c-format msgid "CUID#%d - Download aborted." -msgstr "" +msgstr "CUID#%d - ダウンロードを中止します." #: src/message.h:35 #, c-format msgid "CUID#%d - Restarting the download." -msgstr "" +msgstr "CUID#%d - ダウンロードシーケンスを再開します." #: src/message.h:36 #, c-format msgid "CUID#%d - %d times attempted, but no success. Download aborted." msgstr "" +"CUID#%d - %d 回ダウンロードを行いましたがすべて失敗しました. ダウンロードを中" +"止します." #: src/message.h:37 #, c-format msgid "CUID#%d - Unregistering cuid from segmentManager." -msgstr "" +msgstr "CUID#%d - cuid をセグメントマネジャーから削除します." #: src/message.h:39 #, c-format msgid "The segment file %s exists." -msgstr "" +msgstr "セグメントファイル %s が存在します." #: src/message.h:40 #, c-format msgid "The segment file %s does not exist." -msgstr "" +msgstr "セグメントファイル %s が存在しません." #: src/message.h:41 #, c-format msgid "Saving the segment file %s" -msgstr "" +msgstr "セグメントファイル %s を保存しています." #: src/message.h:42 msgid "The segment file was saved successfully." -msgstr "" +msgstr "セグメントファイルの保存が完了しました." #: src/message.h:43 #, c-format msgid "Loading the segment file %s." -msgstr "" +msgstr "セグメントファイル %s をロードしています." #: src/message.h:44 msgid "The segment file was loaded successfully." -msgstr "" +msgstr "セグメントファイルのロードが完了しました." #: src/message.h:46 msgid "Timeout." -msgstr "" +msgstr "タイムアウトしました." #: src/message.h:47 msgid "Invalid chunk size." -msgstr "" +msgstr "chunk サイズが不正です." #: src/message.h:48 #, c-format msgid "Too large chunk. size = %d" -msgstr "" +msgstr "chunk サイズ (%d) が大きすぎます." #: src/message.h:49 msgid "Invalid header." -msgstr "" +msgstr "ヘッダーが不正です." #: src/message.h:50 msgid "Invalid response." -msgstr "" +msgstr "サーバーから不正なレスポンスを受け取りました." #: src/message.h:51 msgid "No header found." -msgstr "" +msgstr "ヘッダーが見つかりません." #: src/message.h:52 msgid "No status header." -msgstr "" +msgstr "status ヘッダーが見つかりません." #: src/message.h:53 msgid "Proxy connection failed." -msgstr "" +msgstr "Proxy 接続に失敗しました." #: src/message.h:54 msgid "Connection failed." -msgstr "" +msgstr "接続に失敗しました." #: src/message.h:55 #, c-format msgid "" "The requested filename and the previously registered one are not same. %s != " "%s" -msgstr "" +msgstr "リクエストしたファイル名 (%s) と登録済みファイル名 (%s) が異なります." #: src/message.h:56 #, c-format msgid "The response status is not successful. status = %d" -msgstr "" +msgstr "レスポンスのステータス (%d) が異常です." #: src/message.h:57 #, c-format msgid "Too large file size. size = %lld" -msgstr "" +msgstr "ファイルサイズ (%lld) が大きすぎます." #: src/message.h:58 #, c-format msgid "Transfer encoding %s is not supported." -msgstr "" +msgstr "トランスファー・エンコーディング %s はサポートされていません." #: src/message.h:59 msgid "SSL initialization failed." -msgstr "" +msgstr "SSL 初期化に失敗しました." #: src/message.h:60 #, c-format msgid "Size mismatch %lld != %lld" +msgstr "サイズが合いません (%lld != %lld)" + +#: src/message.h:61 +msgid "Got EOF from the server." +msgstr "サーバーから EOF を受けとりました." + +#: src/main.cc:57 +msgid "" +"\n" +"SIGINT signal received." msgstr "" +"\n" +"SIGINT シグナルを受け取りました." + +#: src/main.cc:72 +#, c-format +msgid "Unrecognized URL or unsupported protocol: %s\n" +msgstr "" +"%s は, 理解できない URL フォーマット, または, サポートされないプロトコルで" +"す.\n" + +#: src/main.cc:78 +msgid " version " +msgstr " バージョン " + +#: src/main.cc:82 +msgid "" +"This program is free software; you can redistribute it and/or modify\n" +"it under the terms of the GNU General Public License as published by\n" +"the Free Software Foundation; either version 2 of the License, or\n" +"(at your option) any later version.\n" +"\n" +"This program is distributed in the hope that it will be useful,\n" +"but WITHOUT ANY WARRANTY; without even the implied warranty of\n" +"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" +"GNU General Public License for more details.\n" +"\n" +"You should have received a copy of the GNU General Public License\n" +"along with this program; if not, write to the Free Software\n" +"Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n" +msgstr "" +"このプログラムはフリーソフトウェアです。あなたはこれを、フリーソフトウェ\n" +"ア財団によって発行された GNU 一般公衆利用許諾契約書(バージョン2か、希\n" +"望によってはそれ以降のバージョンのうちどれか)の定める条件の下で再頒布\n" +"または改変することができます。\n" +"\n" +"このプログラムは有用であることを願って頒布されますが、*全くの無保証* \n" +"です。商業可能性の保証や特定の目的への適合性は、言外に示されたものも含\n" +"め全く存在しません。詳しくはGNU 一般公衆利用許諾契約書をご覧ください。\n" +"\n" +"あなたはこのプログラムと共に、GNU 一般公衆利用許諾契約書の複製物を一部\n" +"受け取ったはずです。もし受け取っていなければ、フリーソフトウェア財団ま\n" +"で請求してください(宛先は the Free Software Foundation, Inc., 59\n" +"Temple Place, Suite 330, Boston, MA 02111-1307 USA)。\n" +"(訳: http://www.opensource.jp/gpl/gpl.ja.html.euc-jp)\n" + +#: src/main.cc:96 +#, c-format +msgid "Contact Info: %s\n" +msgstr "連絡先: %s\n" + +#: src/main.cc:102 +#, c-format +msgid "Usage: %s [options] URL ...\n" +msgstr "使い方: %s [オプション] URL ...\n" + +#: src/main.cc:104 +msgid "Options:" +msgstr "オプション:" + +#: src/main.cc:105 +msgid " -d, --dir=DIR The directory to store downloaded file." +msgstr "" +" -d, --dir=DIR ダウンロードしたファイルを保存するディレクトリ." + +#: src/main.cc:106 +msgid " -o, --out=FILE The file name for downloaded file." +msgstr "" +" -o, --out=FILE ダウンロードしたファイルの保存先ファイル名." + +#: src/main.cc:107 +msgid "" +" -l, --log=LOG The file path to store log. If '-' is " +"specified,\n" +" log is written to stdout." +msgstr "" +" -l, --log=LOG ログを保存するパス. '-' を指定した場合, 標準出" +"力\n" +" に出力します." + +#: src/main.cc:109 +msgid " -D, --daemon Run as daemon." +msgstr " -D, --daemon デーモンとして起動します." + +#: src/main.cc:110 +msgid "" +" -s, --split=N Download a file using N connections. N must " +"be\n" +" between 1 and 5. This option affects all " +"URLs.\n" +" Thus, aria2 connects to each URL with\n" +" N connections." +msgstr "" +" -s, --split=N N 個のコネクションを使ってファイルをダウンロー" +"ド\n" +" します. N は 1 から 5 の数字を指定してくださ" +"い.\n" +" このオプションはすべての URL 引数に影響しま" +"す.\n" +" つまり, それぞれの URL に対して N 個のコネク" +"ショ\n" +" ンを確立します." + +#: src/main.cc:114 +msgid "" +" --retry-wait=SEC Set amount of time in second between requests\n" +" for errors. Specify a value between 0 and 60.\n" +" Default: 5" +msgstr "" +" --retry-wait=SEC エラーによる再試行時の待ち時間を秒単位で指定し" +"ま\n" +" す. 0 - 60 の値を指定してください.\n" +" デフォルト値: 5" + +#: src/main.cc:117 +msgid " -t, --timeout=SEC Set timeout in second. Default: 60" +msgstr "" +" -t, --timeout=SEC タイムアウトとなる時間を秒で指定します.\n" +" デフォルト値: 60" + +#: src/main.cc:118 +msgid "" +" -m, --max-tries=N Set number of tries. 0 means unlimited.\n" +" Default: 5" +msgstr "" +" -m, --max-tries=N 試行回数を指定します. 0 を指定すると何度でも試" +"行\n" +" します. デフォルト値: 5" + +#: src/main.cc:120 +msgid "" +" --min-segment-size=SIZE[K|M] Set minimum segment size. You can append\n" +" K or M(1K = 1024, 1M = 1024K). This\n" +" value must be greater than or equal to\n" +" 1024." +msgstr "" +" --min-segment-size=SIZE[K|M] 最小のセグメント・サイズを指定します. K または " +"M\n" +" を付加することができます (1k = 1024, 1M = " +"1024K).\n" +" 1024 以上の値を指定してください." + +#: src/main.cc:124 +msgid "" +" --http-proxy=HOST:PORT Use HTTP proxy server. This affects to all\n" +" URLs." +msgstr "" +" --http-proxy=HOST:PORT HTTP プロキシ・サーバーを指定します. このオプ" +"シ\n" +" ョンはすべての URL に影響します." + +#: src/main.cc:126 +msgid " --http-user=USER Set HTTP user. This affects to all URLs." +msgstr "" +" --http-user=USER HTTP での認証ユーザーを指定します. このオプショ" +"ン\n" +" はすべての URL に影響します." + +#: src/main.cc:127 +msgid "" +" --http-passwd=PASSWD Set HTTP password. This affects to all URLs." +msgstr "" +" --http-passwd=PASSWD HTTP での認証パスワードを指定します. このオプ" +"ショ\n" +" ンはすべての URL に影響します." + +#: src/main.cc:128 +msgid "" +" --http-proxy-user=USER Set HTTP proxy user. This affects to all URLs" +msgstr "" +" --http-proxy-user=USER HTTP プロキシ・サーバーでの認証で使うユーザーを" +"指\n" +" 定します. このオプションはすべての URL に影響し" +"ま\n" +" す." + +#: src/main.cc:129 +msgid "" +" --http-proxy-passwd=PASSWD Set HTTP proxy password. This affects to all " +"URLs." +msgstr "" +" --http-proxy-passwd=PASSWD HTTP プロキシ・サーバーでの認証で使うパスワード" +"を\n" +" 指定します. このオプションはすべての URL に影響" +"し\n" +" ます." + +#: src/main.cc:130 +msgid "" +" --http-proxy-method=METHOD Set the method to use in proxy request.\n" +" METHOD is either 'get' or 'tunnel'.\n" +" Default: tunnel" +msgstr "" +" --http-proxy-method=METHOD HTTP プロキシ・リクエストで使うメソッドを指定し" +"ま\n" +" す. 'get' または 'tunnel' を指定してください.\n" +" デフォルト値: tunnel" + +#: src/main.cc:133 +msgid "" +" --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, " +"basic\n" +" is the only supported scheme. You MUST " +"specify\n" +" this option in order to use HTTP " +"authentication\n" +" as well as --http-user and --http-passwd." +msgstr "" +" --http-auth-scheme=SCHEME HTTP での認証方法を指定します. 現在サポートされ" +"て\n" +" いるのは basic です. HTTP 認証を使うには, この" +"オ\n" +" プションおよび, --http-user, --http-passwd を指" +"定\n" +" する必要があります." + +#: src/main.cc:137 +msgid " --referer=REFERER Set Referer. This affects to all URLs." +msgstr "" +" --referer=REFERER リファラーを指定します. このオプションはすべて" +"の\n" +" URL に影響します." + +#: src/main.cc:138 +msgid "" +" --ftp-user=USER Set FTP user. This affects to all URLs.\n" +" Default: anonymous" +msgstr "" +" --ftp-user=USER FTP での認証ユーザーを指定します. このオプショ" +"ン\n" +" はすべての URL に影響します.\n" +" デフォルト値: anonymous" + +#: src/main.cc:140 +msgid "" +" --ftp-passwd=PASSWD Set FTP password. This affects to all URLs.\n" +" Default: ARIA2USER@" +msgstr "" +" --ftp-passwd=PASSWD FTP での認証パスワードを指定します. このオプ" +"ショ\n" +" ンはすべての URL に影響します.\n" +" デフォルト値: ARIA2USER@" + +#: src/main.cc:142 +msgid "" +" --ftp-type=TYPE Set FTP transfer type. TYPE is either " +"'binary'\n" +" or 'ascii'.\n" +" Default: binary" +msgstr "" +" --ftp-type=TYPE FTP 転送モードを指定します. 'binary' または\n" +" 'ascii' を指定してください. デフォルト値: " +"binary" + +#: src/main.cc:145 +msgid " -p, --ftp-pasv Use passive mode in FTP." +msgstr " -p, --ftp-pasv FTP で passive モードを使用します." + +#: src/main.cc:146 +msgid "" +" --ftp-via-http-proxy=METHOD Use HTTP proxy in FTP. METHOD is either 'get' " +"or\n" +" 'tunnel'.\n" +" Default: tunnel" +msgstr "" +" --ftp-via-http-proxy=METHOD FTP で HTTP プロキシ・サーバーを使用する際の方" +"法\n" +" を指定します. 'get' または 'tunnel' を指定して" +"く\n" +" ださい. デフォルト値: tunnel" + +#: src/main.cc:149 +msgid " -v, --version Print the version number and exit." +msgstr " -v, --version バージョン番号を表示し, 終了します." + +#: src/main.cc:150 +msgid " -h, --help Print this message and exit." +msgstr "" +" -h, --help このヘルプメッセージを表示し, 終了します." + +#: src/main.cc:153 +msgid "" +" You can specify multiple URLs. All URLs must point to the same file\n" +" or downloading fails." +msgstr "" +" 複数の URL を指定できます. ただし, すべての URL が同じファイルを指していなけ" +"れ\n" +" ばなりません. さもなくばダウンロードは失敗します." + +#: src/main.cc:156 +msgid "Examples:" +msgstr "例:" + +#: src/main.cc:157 +msgid " Download a file by 1 connection:" +msgstr " 1 コネクションでのダウンロード:" + +#: src/main.cc:159 +msgid " Download a file by 2 connections:" +msgstr " 2 コネクションでのダウンロード:" + +#: src/main.cc:161 +msgid " Download a file by 2 connections, each connects to a different server:" +msgstr " 二つの異なるサーバーに接続してダウンロード:" + +#: src/main.cc:163 +msgid " You can mix up different protocols:" +msgstr " 異なるプロトコルを混合させてダウンロード:" + +#: src/main.cc:166 +#, c-format +msgid "Reports bugs to %s" +msgstr "バグレポートはこちらへ: %s" + +#: src/main.cc:240 +msgid "unrecognized proxy format" +msgstr "理解できないProxyフォーマットです." + +#: src/main.cc:266 +msgid "Currently, supported authentication scheme is basic." +msgstr "現在サポートされている認証方法は basic です." + +#: src/main.cc:275 +msgid "retry-wait must be between 0 and 60." +msgstr "retry-wait は 0 から 60 の間で指定してください." + +#: src/main.cc:292 +msgid "ftp-type must be either 'binary' or 'ascii'." +msgstr "ftp-type は 'binary' または 'ascii' を指定してください." + +#: src/main.cc:301 +msgid "ftp-via-http-proxy must be either 'get' or 'tunnel'." +msgstr "ftp-via-http-proxy は 'get' または 'tunnel' を指定してください." + +#: src/main.cc:319 +msgid "min-segment-size invalid" +msgstr "min-segment-size が不正です." + +#: src/main.cc:330 +msgid "http-proxy-method must be either 'get' or 'tunnel'." +msgstr "http-proxy-method は 'get' または 'tunnel' を指定してください." + +#: src/main.cc:357 +msgid "split must be between 1 and 5." +msgstr "split は 1 - 5 の値を指定してください." + +#: src/main.cc:367 +msgid "timeout must be between 1 and 600" +msgstr "timeout は 1 - 600 の値を指定してください." + +#: src/main.cc:376 +msgid "max-tries invalid" +msgstr "max-tries が不正です." + +#: src/main.cc:398 +msgid "specify at least one URL" +msgstr "一個以上の URL を指定してください." + +#: src/main.cc:449 +#, c-format +msgid "" +"\n" +"The download was complete. <%s>\n" +msgstr "" +"\n" +"<%s> のダウンロードが完了しました.\n" + +#: src/main.cc:451 +msgid "" +"\n" +"The download was not complete because of errors. Check the log.\n" +msgstr "" +"\n" +"ダウンロードはエラーのため完了していません. ログを確認してください.\n" diff --git a/src/DownloadCommand.cc b/src/DownloadCommand.cc index 5b582c98..86b56004 100644 --- a/src/DownloadCommand.cc +++ b/src/DownloadCommand.cc @@ -67,10 +67,12 @@ bool DownloadCommand::executeInternal(Segment seg) { lastSize = seg.ds; } } - + if(e->segmentMan->totalSize != 0 && bufSize == 0) { + throw new DlRetryEx(EX_GOT_EOF); + } if(te != NULL && te->finished() || te == NULL && seg.ds >= seg.ep-seg.sp+1 - || e->segmentMan->totalSize == 0 && bufSize == 0) { + || bufSize == 0) { if(te != NULL) te->end(); e->logger->info(MSG_DOWNLOAD_COMPLETED, cuid); seg.ds = seg.ep-seg.sp+1; diff --git a/src/HttpResponseCommand.cc b/src/HttpResponseCommand.cc index 30e65db1..fd2526b8 100644 --- a/src/HttpResponseCommand.cc +++ b/src/HttpResponseCommand.cc @@ -37,7 +37,7 @@ HttpResponseCommand::~HttpResponseCommand() { } bool HttpResponseCommand::executeInternal(Segment seg) { - if(SEGMENT_EQUAL(req->seg, seg) == false) { + if(req->seg.sp != seg.sp) { e->logger->info(MSG_SEGMENT_CHANGED, cuid); return prepareForRetry(0); } @@ -104,6 +104,8 @@ bool HttpResponseCommand::handleDefaultEncoding(const HttpHeader& headers) { return prepareForRetry(0); } else { e->segmentMan->totalSize = size; + Segment seg; + e->segmentMan->getSegment(seg, cuid); e->diskWriter->initAndOpenFile(e->segmentMan->getFilePath()); createHttpDownloadCommand(); return true; diff --git a/src/Makefile.am b/src/Makefile.am index 775f3075..5093b3bc 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -49,6 +49,6 @@ SRCS = Socket.cc Socket.h\ noinst_LIBRARIES = libaria2c.a libaria2c_a_SOURCES = $(SRCS) aria2c_LDADD = libaria2c.a -FLAGS = -Wall -D_FILE_OFFSET_BITS=64 -I../lib +FLAGS = -I../lib -Wall -D_FILE_OFFSET_BITS=64 -DLOCALEDIR=\"$(localedir)\" libaria2c_a_CXXFLAGS = $(FLAGS) aria2c_CXXFLAGS = $(FLAGS) diff --git a/src/Makefile.in b/src/Makefile.in index 685c5a8f..32d56271 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -206,6 +206,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ @@ -267,7 +268,7 @@ SRCS = Socket.cc Socket.h\ noinst_LIBRARIES = libaria2c.a libaria2c_a_SOURCES = $(SRCS) aria2c_LDADD = libaria2c.a -FLAGS = -Wall -D_FILE_OFFSET_BITS=64 -I../lib +FLAGS = -I../lib -Wall -D_FILE_OFFSET_BITS=64 -DLOCALEDIR=\"$(localedir)\" libaria2c_a_CXXFLAGS = $(FLAGS) aria2c_CXXFLAGS = $(FLAGS) all: all-am diff --git a/src/SimpleLogger.cc b/src/SimpleLogger.cc index 2de0dbe7..52f8e039 100644 --- a/src/SimpleLogger.cc +++ b/src/SimpleLogger.cc @@ -23,6 +23,7 @@ #include "Util.h" #include #include +#include SimpleLogger::SimpleLogger(string filename) { file = fopen(filename.c_str(), "a"); @@ -60,7 +61,7 @@ void SimpleLogger::writeLog(int level, const char* msg, va_list ap, Exception* e if(e != NULL) { fprintf(file, string(string(datestr)+" - "+levelStr+" - exception: "+Util::replace(e->getMsg(), "\r", "")+"\n").c_str()); } - fflush(stdout); + fflush(file); } void SimpleLogger::debug(const char* msg, ...) const { diff --git a/src/Util.cc b/src/Util.cc index e19ef451..5db1bcec 100644 --- a/src/Util.cc +++ b/src/Util.cc @@ -122,7 +122,7 @@ bool Util::endsWith(string target, string part) { if(part == "") { return true; } - if(target.find(part) == target.size()-part.size()) { + if(target.rfind(part) == target.size()-part.size()) { return true; } else { return false; diff --git a/src/common.h b/src/common.h index d624266d..6b3672ad 100644 --- a/src/common.h +++ b/src/common.h @@ -19,14 +19,19 @@ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* copyright --> */ +#ifndef _D_COMMON_H_ +#define _D_COMMON_H_ +#ifdef HAVE_CONFIG_H +# include +#endif #include #include #include -#include -#define _(String) gettext (String) - -#ifdef HAVE_CONFIG_H -# include +#if ENABLE_NLS +# include +# define _(String) gettext (String) +#else +# define _(String) (String) #endif #ifndef LONG_LONG_MAX @@ -37,3 +42,5 @@ #define USER_AGENT "aria2" using namespace std; + +#endif // _D_COMMON_H_ diff --git a/src/main.cc b/src/main.cc index 71a40f76..c1b280d2 100644 --- a/src/main.cc +++ b/src/main.cc @@ -69,86 +69,89 @@ void addCommand(int cuid, const char* url, string referer, vector requ e->commands.push(InitiateConnectionCommandFactory::createInitiateConnectionCommand(cuid, req, e)); requests.push_back(req); } else { - cerr << _("Unrecognized URL or unsupported protocol: ") << req->getUrl() << endl; + fprintf(stderr, _("Unrecognized URL or unsupported protocol: %s\n"), req->getUrl().c_str()); delete(req); } } void showVersion() { - cout << PACKAGE_NAME << " version " << PACKAGE_VERSION << endl; + cout << PACKAGE << _(" version ") << PACKAGE_VERSION << endl; cout << "Copyright (C) 2006 Tatsuhiro Tsujikawa" << endl; cout << endl; - cout << "This program is free software; you can redistribute it and/or modify" << endl; - cout << "it under the terms of the GNU General Public License as published by" << endl; - cout << "the Free Software Foundation; either version 2 of the License, or" << endl; - cout << "(at your option) any later version." << endl; + cout << + _("This program is free software; you can redistribute it and/or modify\n" + "it under the terms of the GNU General Public License as published by\n" + "the Free Software Foundation; either version 2 of the License, or\n" + "(at your option) any later version.\n" + "\n" + "This program is distributed in the hope that it will be useful,\n" + "but WITHOUT ANY WARRANTY; without even the implied warranty of\n" + "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n" + "GNU General Public License for more details.\n" + "\n" + "You should have received a copy of the GNU General Public License\n" + "along with this program; if not, write to the Free Software\n" + "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\n"); cout << endl; - cout << "This program is distributed in the hope that it will be useful," << endl; - cout << "but WITHOUT ANY WARRANTY; without even the implied warranty of" << endl; - cout << "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the" << endl; - cout << "GNU General Public License for more details." << endl; - cout << endl; - cout << "You should have received a copy of the GNU General Public License" << endl; - cout << "along with this program; if not, write to the Free Software" << endl; - cout << "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA" << endl; - cout << endl; - cout << "Contact Info: Tasuhiro Tsujikawa " << endl; + printf(_("Contact Info: %s\n"), "Tasuhiro Tsujikawa "); cout << endl; } void showUsage() { - cout << endl; - cout << _("Usage: ") << PACKAGE_NAME << _(" [options] URL ...") << endl; + printf(_("Usage: %s [options] URL ...\n"), PACKAGE_NAME); cout << endl; cout << _("Options:") << endl; cout << _(" -d, --dir=DIR The directory to store downloaded file.") << endl; cout << _(" -o, --out=FILE The file name for downloaded file.") << endl; - cout << _(" -l, --log=LOG The file path to store log. If '-' is specified,") << endl; - cout << _(" log is written to stdout.") << endl; + cout << _(" -l, --log=LOG The file path to store log. If '-' is specified,\n" + " log is written to stdout.") << endl; cout << _(" -D, --daemon Run as daemon.") << endl; - cout << _(" -s, --split=N Download a file using N connections. N must be") << endl; - cout << _(" between 1 and 5. This option affects all URLs.") << endl; - cout << _(" Thus, aria2 connects to each URL with N connections.") << endl; - cout << _(" --retry-wait=SEC Set amount of time in second between requests") << endl; - cout << _(" for errors. Specify a value between 0 and 60.") << endl; - cout << " Default: 5" << endl; + cout << _(" -s, --split=N Download a file using N connections. N must be\n" + " between 1 and 5. This option affects all URLs.\n" + " Thus, aria2 connects to each URL with\n" + " N connections.") << endl; + cout << _(" --retry-wait=SEC Set amount of time in second between requests\n" + " for errors. Specify a value between 0 and 60.\n" + " Default: 5") << endl; cout << _(" -t, --timeout=SEC Set timeout in second. Default: 60") << endl; - cout << _(" -m, --max-tries=N Set number of tries. 0 means unlimited.") << endl; - cout << " Default: 5" << endl; - cout << _(" --min-segment-size=SIZE[K|M] Set minimum segment size. You can append") << endl; - cout << " K or M(1K = 1024, 1M = 1024K)." << endl; - cout << _(" --http-proxy=HOST:PORT Use HTTP proxy server. This affects to all") << endl; - cout << _(" URLs.") << endl; + cout << _(" -m, --max-tries=N Set number of tries. 0 means unlimited.\n" + " Default: 5") << endl; + cout << _(" --min-segment-size=SIZE[K|M] Set minimum segment size. You can append\n" + " K or M(1K = 1024, 1M = 1024K). This\n" + " value must be greater than or equal to\n" + " 1024.") << endl; + cout << _(" --http-proxy=HOST:PORT Use HTTP proxy server. This affects to all\n" + " URLs.") << endl; cout << _(" --http-user=USER Set HTTP user. This affects to all URLs.") << endl; cout << _(" --http-passwd=PASSWD Set HTTP password. This affects to all URLs.") << endl; cout << _(" --http-proxy-user=USER Set HTTP proxy user. This affects to all URLs") << endl; cout << _(" --http-proxy-passwd=PASSWD Set HTTP proxy password. This affects to all URLs.") << endl; - cout << _(" --http-proxy-method=METHOD Set the method to use in proxy request.") << endl; - cout << _(" METHOD is either 'get' or 'tunnel'.") << endl; - cout << " Default: tunnel" << endl; - cout << _(" --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, basic") << endl; - cout << _(" is the only supported scheme. You MUST specify") << endl; - cout << _(" this option in order to use HTTP authentication") << endl; - cout << _(" as well as --http-proxy option.") << endl; + cout << _(" --http-proxy-method=METHOD Set the method to use in proxy request.\n" + " METHOD is either 'get' or 'tunnel'.\n" + " Default: tunnel") << endl; + cout << _(" --http-auth-scheme=SCHEME Set HTTP authentication scheme. Currently, basic\n" + " is the only supported scheme. You MUST specify\n" + " this option in order to use HTTP authentication\n" + " as well as --http-user and --http-passwd.") << endl; cout << _(" --referer=REFERER Set Referer. This affects to all URLs.") << endl; - cout << _(" --ftp-user=USER Set FTP user. This affects to all URLs.") << endl; - cout << _(" Default: anonymous") << endl; - cout << _(" --ftp-passwd=PASSWD Set FTP password. This affects to all URLs.") << endl; - cout << _(" Default: ARIA2USER@") << endl; - cout << _(" --ftp-type=TYPE Set FTP transfer type. TYPE is either 'binary'") << endl; - cout << _(" or 'ascii'.") << endl; - cout << _(" Default: binary") << endl; + cout << _(" --ftp-user=USER Set FTP user. This affects to all URLs.\n" + " Default: anonymous") << endl; + cout << _(" --ftp-passwd=PASSWD Set FTP password. This affects to all URLs.\n" + " Default: ARIA2USER@") << endl; + cout << _(" --ftp-type=TYPE Set FTP transfer type. TYPE is either 'binary'\n" + " or 'ascii'.\n" + " Default: binary") << endl; cout << _(" -p, --ftp-pasv Use passive mode in FTP.") << endl; - cout << _(" --ftp-via-http-proxy=METHOD Use HTTP proxy in FTP. METHOD is either 'get' or") << endl; - cout << _(" 'tunnel'.") << endl; - cout << " Default: tunnel" << endl; + cout << _(" --ftp-via-http-proxy=METHOD Use HTTP proxy in FTP. METHOD is either 'get' or\n" + " 'tunnel'.\n" + " Default: tunnel") << endl; cout << _(" -v, --version Print the version number and exit.") << endl; cout << _(" -h, --help Print this message and exit.") << endl; cout << endl; - cout << _("URL:") << endl; - cout << _(" You can specify multiple URLs. All URLs must point to the same file") << endl; - cout << _(" or downloading fails.") << endl; + cout << "URL:" << endl; + cout << _(" You can specify multiple URLs. All URLs must point to the same file\n" + " or downloading fails.") << endl; cout << endl; cout << _("Examples:") << endl; cout << _(" Download a file by 1 connection:") << endl; @@ -160,10 +163,17 @@ void showUsage() { cout << _(" You can mix up different protocols:") << endl; cout << " aria2c http://AAA.BBB.CCC/file.zip ftp://DDD.EEE.FFF/GGG/file.zip" << endl; cout << endl; - cout << "Reports bugs to " << endl; + printf(_("Reports bugs to %s"), ""); + cout << endl; } int main(int argc, char* argv[]) { +#ifdef ENABLE_NLS + setlocale (LC_CTYPE, ""); + setlocale (LC_MESSAGES, ""); + bindtextdomain (PACKAGE, LOCALEDIR); + textdomain (PACKAGE); +#endif // ENABLE_NLS bool stdoutLog = false; string logfile; string dir; @@ -194,7 +204,7 @@ int main(int argc, char* argv[]) { { "log", required_argument, NULL, 'l' }, { "split", required_argument, NULL, 's' }, { "timeout", required_argument, NULL, 't' }, - { "max-retries", required_argument, NULL, 'm' }, + { "max-tries", required_argument, NULL, 'm' }, { "http-proxy", required_argument, &lopt, 1 }, { "http-user", required_argument, &lopt, 2 }, { "http-passwd", required_argument, &lopt, 3 }, @@ -305,7 +315,7 @@ int main(int argc, char* argv[]) { optarg[p] = '\0'; } long long int size = strtoll(optarg, NULL, 10)*mult; - if(size <= 0) { + if(size < 1024) { cerr << _("min-segment-size invalid") << endl; showUsage(); exit(1); @@ -363,7 +373,7 @@ int main(int argc, char* argv[]) { case 'm': { int retries = (int)strtol(optarg, NULL, 10); if(retries < 0) { - cerr << _("max-retires invalid") << endl; + cerr << _("max-tries invalid") << endl; showUsage(); exit(1); } @@ -436,9 +446,9 @@ int main(int argc, char* argv[]) { e->run(); if(e->segmentMan->finished()) { - cout << _("\nThe download was complete. <") << e->segmentMan->getFilePath() << ">" << endl; + printf(_("\nThe download was complete. <%s>\n"), e->segmentMan->getFilePath().c_str()); } else { - cout << _("\nThe download was not complete because of errors. Check the log.") << endl; + printf(_("\nThe download was not complete because of errors. Check the log.\n")); } for_each(requests.begin(), requests.end(), clearRequest); diff --git a/src/message.h b/src/message.h index ebe0ef45..16596b0b 100644 --- a/src/message.h +++ b/src/message.h @@ -58,5 +58,6 @@ #define EX_TRANSFER_ENCODING_NOT_SUPPORTED _("Transfer encoding %s is not supported.") #define EX_SSL_INIT_FAILURE _("SSL initialization failed.") #define EX_SIZE_MISMATCH _("Size mismatch %lld != %lld") +#define EX_GOT_EOF _("Got EOF from the server.") #endif // _D_MESSAGE_H_ diff --git a/test/Makefile.am b/test/Makefile.am index 966a49b2..72bbd507 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -8,6 +8,6 @@ aria2c_SOURCES = AllTest.cc\ Base64Test.cc\ UtilTest.cc\ CookieBoxTest.cc -aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -Wall -D_FILE_OFFSET_BITS=64 +aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -I../lib -Wall -D_FILE_OFFSET_BITS=64 aria2c_LDFLAGS = ${CPPUNIT_LIBS} aria2c_LDADD = ../src/libaria2c.a \ No newline at end of file diff --git a/test/Makefile.in b/test/Makefile.in index 511a7b4f..3571b770 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -162,6 +162,7 @@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ +localedir = @localedir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ @@ -182,7 +183,7 @@ aria2c_SOURCES = AllTest.cc\ UtilTest.cc\ CookieBoxTest.cc -aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -Wall -D_FILE_OFFSET_BITS=64 +aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -I../lib -Wall -D_FILE_OFFSET_BITS=64 aria2c_LDFLAGS = ${CPPUNIT_LIBS} aria2c_LDADD = ../src/libaria2c.a all: all-am