diff --git a/apps/i2psnark/java/bundle-messages.sh b/apps/i2psnark/java/bundle-messages.sh index 01aa5b1c7446f84fe3f2f7d7758c3b6e133fa1ce..c09aa811f94817e645cbc5b37c37870b058c2d31 100755 --- a/apps/i2psnark/java/bundle-messages.sh +++ b/apps/i2psnark/java/bundle-messages.sh @@ -49,7 +49,7 @@ do # To start a new translation, copy the header from an old translation to the new .po file, # then ant distclean poupdate. find $JPATHS -name *.java > $TMPFILE - xgettext -f $TMPFILE -F -L java --from-code=UTF-8 \ + xgettext -f $TMPFILE -F -L java --from-code=UTF-8 --add-comments\ --keyword=_ --keyword=_x \ -o ${i}t if [ $? -ne 0 ] diff --git a/apps/i2psnark/java/src/org/klomp/snark/Peer.java b/apps/i2psnark/java/src/org/klomp/snark/Peer.java index a1b2c1039db6cd31d5934d0dd7855a418da071c8..e0ae6e1f25449a2b47adf884629ace0d10f5aa66 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Peer.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Peer.java @@ -388,6 +388,7 @@ public class Peer implements Comparable * Sets whether or not we are interested in pieces from this peer. * Defaults to false. When interest is true and this peer unchokes * us then we start downloading from it. Has no effect when not connected. + * @deprecated unused */ public void setInteresting(boolean interest) { diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java index 88dee31019e6e5f9f3dcc1efe6edb299c3f06c54..9d9fd2e2a733ac8ac8474e8a02d9d3468f6f8ee6 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCheckerTask.java @@ -118,7 +118,7 @@ class PeerCheckerTask extends TimerTask // Choke a percentage of them rather than all so it isn't so drastic... // unless this torrent is over the limit all by itself. boolean overBWLimitChoke = upload > 0 && - ((overBWLimit && random.nextInt(5) < 2) || + ((overBWLimit && random.nextBoolean()) || (coordinator.overUpBWLimit(uploaded))); // If we are at our max uploaders and we have lots of other diff --git a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java index 53dde145c786cf0a5a689f01afafff8b6c03c5fc..2a2e40e7d5f46b14d3b12418dc77c859edb842fb 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java +++ b/apps/i2psnark/java/src/org/klomp/snark/PeerCoordinator.java @@ -489,6 +489,13 @@ public class PeerCoordinator implements PeerListener return false; } + /** + * This should be somewhat less than the max conns per torrent, + * but not too much less, so a torrent doesn't get stuck near the end. + * @since 0.7.14 + */ + private static final int END_GAME_THRESHOLD = 8; + /** * Returns one of pieces in the given BitField that is still wanted or * -1 if none of the given pieces are wanted. @@ -525,7 +532,7 @@ public class PeerCoordinator implements PeerListener // AND if there are almost no wanted pieces left (real end game). // If we do end game all the time, we generate lots of extra traffic // when the seeder is super-slow and all the peers are "caught up" - if (wantedPieces.size() > 4) + if (wantedPieces.size() > END_GAME_THRESHOLD) return -1; // nothing to request and not in end game // let's not all get on the same piece Collections.shuffle(requested); diff --git a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java index f93f009ee5c0f0151afbb84f56af70cc23a9b192..75f1485a1c6e8f8d2411f57f5153b388ba7a2fe3 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java +++ b/apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java @@ -29,7 +29,7 @@ public class SnarkManager implements Snark.CompleteListener { private static SnarkManager _instance = new SnarkManager(); public static SnarkManager instance() { return _instance; } - /** map of (canonical) filename to Snark instance (unsynchronized) */ + /** map of (canonical) filename of the .torrent file to Snark instance (unsynchronized) */ private final Map<String, Snark> _snarks; private final Object _addSnarkLock; private /* FIXME final FIXME */ File _configFile; @@ -396,12 +396,30 @@ public class SnarkManager implements Snark.CompleteListener { /** hardcoded for sanity. perhaps this should be customizable, for people who increase their ulimit, etc. */ private static final int MAX_FILES_PER_TORRENT = 512; - /** set of filenames that we are dealing with */ + /** set of canonical .torrent filenames that we are dealing with */ public Set<String> listTorrentFiles() { synchronized (_snarks) { return new HashSet(_snarks.keySet()); } } + /** - * Grab the torrent given the (canonical) filename + * Grab the torrent given the (canonical) filename of the .torrent file + * @return Snark or null */ public Snark getTorrent(String filename) { synchronized (_snarks) { return (Snark)_snarks.get(filename); } } + + /** + * Grab the torrent given the base name of the storage + * @return Snark or null + * @since 0.7.14 + */ + public Snark getTorrentByBaseName(String filename) { + synchronized (_snarks) { + for (Snark s : _snarks.values()) { + if (s.storage.getBaseName().equals(filename)) + return s; + } + } + return null; + } + public void addTorrent(String filename) { addTorrent(filename, false); } public void addTorrent(String filename, boolean dontAutoStart) { if ((!dontAutoStart) && !_util.connected()) { @@ -595,8 +613,8 @@ public class SnarkManager implements Snark.CompleteListener { } else if (info.getPieces() > Storage.MAX_PIECES) { return _("Too many pieces in \"{0}\", limit is {1}, deleting it!", info.getName(), Storage.MAX_PIECES); } else if (info.getPieceLength(0) > Storage.MAX_PIECE_SIZE) { - return _("Pieces are too large in \"{0}\" ({1}B), deleting it.", info.getName(), DataHelper.formatSize(info.getPieceLength(0))) + ' ' + - _("Limit is {0}B", DataHelper.formatSize(Storage.MAX_PIECE_SIZE)); + return _("Pieces are too large in \"{0}\" ({1}B), deleting it.", info.getName(), DataHelper.formatSize2(info.getPieceLength(0))) + ' ' + + _("Limit is {0}B", DataHelper.formatSize2(Storage.MAX_PIECE_SIZE)); } else if (info.getTotalLength() > Storage.MAX_TOTAL_SIZE) { System.out.println("torrent info: " + info.toString()); List lengths = info.getLengths(); @@ -689,7 +707,7 @@ public class SnarkManager implements Snark.CompleteListener { public void torrentComplete(Snark snark) { File f = new File(snark.torrent); long len = snark.meta.getTotalLength(); - addMessage(_("Download finished: \"{0}\"", f.getName()) + " (" + _("size: {0}B", DataHelper.formatSize(len)) + ')'); + addMessage(_("Download finished: \"{0}\"", f.getName()) + " (" + _("size: {0}B", DataHelper.formatSize2(len)) + ')'); updateStatus(snark); } diff --git a/apps/i2psnark/java/src/org/klomp/snark/Storage.java b/apps/i2psnark/java/src/org/klomp/snark/Storage.java index fba307f52ae291379cc6254a87065a8b84944880..f90301848d8ab9b2f4297313b031f9b5976ed5c1 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/Storage.java +++ b/apps/i2psnark/java/src/org/klomp/snark/Storage.java @@ -315,12 +315,12 @@ public class Storage if (!bitfield.get(pc)) rv = Math.min(psz - (start % psz), lengths[i]); int pieces = metainfo.getPieces(); - for (int j = pc + 1; j * psz < end && j < pieces; j++) { + for (int j = pc + 1; (((long)j) * psz) < end && j < pieces; j++) { if (!bitfield.get(j)) { - if ((j+1)*psz < end) + if (((long)(j+1))*psz < end) rv += psz; else - rv += end - (j * psz); + rv += end - (((long)j) * psz); } } return rv; @@ -339,6 +339,18 @@ public class Storage return bitfield; } + /** + * The base file or directory name of the data, + * as specified in the .torrent file, but filtered to remove + * illegal characters. This is where the data actually is, + * relative to the snark base dir. + * + * @since 0.7.14 + */ + public String getBaseName() { + return filterName(metainfo.getName()); + } + /** * Creates (and/or checks) all files from the metainfo file list. */ diff --git a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java index 5ec39ff90a60453d750122bbc9e2fe5d786f650a..98c64fbbddff0b04838018d09d120fa4adc73147 100644 --- a/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java +++ b/apps/i2psnark/java/src/org/klomp/snark/web/I2PSnarkServlet.java @@ -547,9 +547,11 @@ public class I2PSnarkServlet extends Default { l = l.substring(skip.length()); if (r.startsWith(skip)) r = r.substring(skip.length()); - if (l.toLowerCase().startsWith("the ")) + String llc = l.toLowerCase(); + if (llc.startsWith("the ") || llc.startsWith("the.")) l = l.substring(4); - if (r.toLowerCase().startsWith("the ")) + String rlc = r.toLowerCase(); + if (rlc.startsWith("the ") || rlc.startsWith("the.")) r = r.substring(4); return collator.compare(l, r); } @@ -681,7 +683,7 @@ public class I2PSnarkServlet extends Default { out.write("<td align=\"left\" class=\"snarkTorrentName " + rowClass + "\">"); if (remaining == 0 || snark.meta.getFiles() != null) { - out.write("<a href=\"" + snark.meta.getName()); + out.write("<a href=\"" + snark.storage.getBaseName()); if (snark.meta.getFiles() != null) out.write("/"); out.write("\" title=\""); @@ -695,7 +697,7 @@ public class I2PSnarkServlet extends Default { if (snark.meta.getFiles() != null) icon = "folder"; else - icon = toIcon(fullFilename); + icon = toIcon(snark.meta.getName()); out.write(toImg(icon)); out.write(filename); if (remaining == 0 || snark.meta.getFiles() != null) @@ -1091,6 +1093,9 @@ public class I2PSnarkServlet extends Default { /** dummies for translation */ private static final String HOPS = ngettext("1 hop", "{0} hops"); private static final String TUNNELS = ngettext("1 tunnel", "{0} tunnels"); + /** prevents the ngettext line below from getting tagged */ + private static final String DUMMY0 = "{0} "; + private static final String DUMMY1 = "1 "; /** modded from ConfigTunnelsHelper @since 0.7.14 */ private String renderOptions(int min, int max, String strNow, String selName, String name) { @@ -1104,7 +1109,8 @@ public class I2PSnarkServlet extends Default { buf.append("<option value=\"").append(i).append("\" "); if (i == now) buf.append("selected=\"true\" "); - buf.append(">").append(ngettext("1 " + name, "{0} " + name + 's', i)); + // constants to prevent tagging + buf.append(">").append(ngettext(DUMMY1 + name, DUMMY0 + name + 's', i)); buf.append("</option>\n"); } buf.append("</select>\n"); @@ -1208,18 +1214,13 @@ public class I2PSnarkServlet extends Default { title = title.substring("/i2psnark/".length()); // Get the snark associated with this directory - Snark snark = null; - try { - String torrentName; - int slash = title.indexOf('/'); - if (slash > 0) - torrentName = title.substring(0, slash) + ".torrent"; - else - torrentName = title + ".torrent"; - File dataDir = _manager.getDataDir(); - String torrentAbsPath = (new File(dataDir, torrentName)).getCanonicalPath(); - snark = _manager.getTorrent(torrentAbsPath); - } catch (IOException ioe) {} + String torrentName; + int slash = title.indexOf('/'); + if (slash > 0) + torrentName = title.substring(0, slash); + else + torrentName = title; + Snark snark = _manager.getTorrentByBaseName(torrentName); if (title.endsWith("/")) title = title.substring(0, title.length() - 1); title = _("Torrent") + ": " + title; @@ -1371,7 +1372,7 @@ public class I2PSnarkServlet extends Default { plc.endsWith(".ape")) icon = "music"; else if (mime.startsWith("video/") || plc.endsWith(".mkv") || plc.endsWith(".m4v") || - plc.endsWith(".mp4")) + plc.endsWith(".mp4") || plc.endsWith(".wmv")) icon = "film"; else if (mime.equals("application/zip") || mime.equals("application/x-gtar") || mime.equals("application/compress") || mime.equals("application/gzip") || diff --git a/apps/i2psnark/locale/messages_ru.po b/apps/i2psnark/locale/messages_ru.po index 853edcf36c3ec844b4bb19887144bc9fb5833b2d..4c8758f6704160543dcc2619fd707a04c0abd98b 100644 --- a/apps/i2psnark/locale/messages_ru.po +++ b/apps/i2psnark/locale/messages_ru.po @@ -8,16 +8,15 @@ msgid "" msgstr "" "Project-Id-Version: I2P i2psnark\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-05-25 21:14+0000\n" -"PO-Revision-Date: 2010-05-25 21:45+0000\n" +"POT-Creation-Date: 2010-05-27 14:45+0000\n" +"PO-Revision-Date: 2010-05-27 16:54+0000\n" "Last-Translator: 4get <forget@mail.i2p>\n" "Language-Team: foo <foo@bar>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Russian\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" -"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" #: ../java/src/org/klomp/snark/SnarkManager.java:87 #, java-format @@ -219,7 +218,7 @@ msgid "Refresh page" msgstr "Обновить Ñтраницу" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:180 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:808 msgid "I2PSnark" msgstr "I2PSnark" @@ -228,7 +227,7 @@ msgid "Forum" msgstr "Форум" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:208 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1228 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1243 msgid "Status" msgstr "СтатуÑ" @@ -241,7 +240,7 @@ msgid "Show Peers" msgstr "показать ÑпиÑок пиров" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:222 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1210 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1225 msgid "Torrent" msgstr "Торрент" @@ -291,13 +290,19 @@ msgstr "Ð’Ñего" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:272 #, java-format -msgid "{0} torrents" -msgstr "{0} торрентов" +msgid "1 torrent" +msgid_plural "{0} torrents" +msgstr[0] "{0} торрент" +msgstr[1] "{0} торрента" +msgstr[2] "{0} торрентов" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 #, java-format -msgid "{0} connected peers" -msgstr "{0} подÑоединенных пиров" +msgid "1 connected peer" +msgid_plural "{0} connected peers" +msgstr[0] "{0} подÑоединенный пир" +msgstr[1] "{0} подÑоединенных пиров" +msgstr[2] "{0} подÑоединенных пиров" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:310 #, java-format @@ -305,13 +310,13 @@ msgid "Torrent file {0} does not exist" msgstr "Торрент {0} не ÑущеÑтвует" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:320 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1399 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1428 #, java-format msgid "Torrent already running: {0}" msgstr "Торрент уже запущен: {0}" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1401 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1430 #, java-format msgid "Torrent already in the queue: {0}" msgstr "Торрент уже в очереди: {0}" @@ -409,330 +414,350 @@ msgid "Opening the I2P tunnel and starting all torrents." msgstr "СоединÑемÑÑ Ñ I2P и запуÑкаем вÑе торренты." #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:628 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:808 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:822 msgid "Unknown" msgstr "ÐеизвеÑтный" #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:635 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:639 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:636 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:641 msgid "TrackerErr" msgstr "ОшибкаТрекера" # TODO should replace "uploader limit NN peers" with "global number of upload slots: NN" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:633 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:635 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:654 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:656 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:660 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:634 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:637 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:648 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:651 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:659 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:662 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1000 -msgid "peers" -msgstr "пир." +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:667 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 +#, java-format +msgid "1 peer" +msgid_plural "{0} peers" +msgstr[0] "{0} пир" +msgstr[1] "{0} пира" +msgstr[2] "{0} пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:647 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:650 msgid "Seeding" msgstr "РаздаетÑÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:649 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1270 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:653 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1281 msgid "Complete" msgstr "Завершен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:652 #: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:656 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:661 msgid "OK" msgstr "ЗагружаетÑÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:658 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:664 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:669 msgid "Stalled" msgstr "ПроÑтаивает" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:664 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:672 msgid "No Peers" msgstr "Ðет Пиров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:666 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 msgid "Stopped" msgstr "ОÑтановлен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:681 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:689 msgid "View files" msgstr "Открыть директорию" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:691 msgid "Open file" msgstr "Открыть файл" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:707 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:919 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:933 msgid "Tracker" msgstr "Трекер" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:708 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:722 msgid "Details" msgstr "Подробнее" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:742 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:756 msgid "Stop the torrent" msgstr "ОÑтановить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:744 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:758 msgid "Stop" msgstr "ОÑтановить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:750 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:764 msgid "Start the torrent" msgstr "ЗапуÑтить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:752 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:766 msgid "Start" msgstr "ЗапуÑтить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:757 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:771 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "Удалить торрент из ÑпиÑка и Ñ Ð´Ð¸Ñка" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:762 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:776 #, java-format msgid "Are you sure you want to delete the file \\''{0}.torrent\\'' (downloaded data will not be deleted) ?" msgstr "Ð’Ñ‹ дейÑтвительно хотите удалить \\''{0}.torrent\\''? (загруженные файлы удалÑÑ‚ÑŒÑÑ ÐЕ будут)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:764 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:778 msgid "Remove" msgstr "Удалить" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:768 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:782 msgid "Delete the .torrent file and the associated data file(s)" msgstr "Удалить торрент и Ñтереть загруженные файлы" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:773 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:787 #, java-format msgid "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded data?" msgstr "Ð’Ñ‹ дейÑтвительно хотите удалить торрент \\''{0}\\'' и вÑе загруженные файлы?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:775 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:789 msgid "Delete" msgstr "Стереть" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:818 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:832 msgid "Seed" msgstr "Сид" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:850 msgid "Uninteresting (The peer has no pieces we need)" msgstr "Uninteresting (У пира нет нужных нам чаÑтей торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:838 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:852 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "Choked (Ðтот пир не позволÑет нам запрашивать чаÑти торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:852 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 msgid "Uninterested (We have no pieces the peer needs)" msgstr "Uninterested (У Ð½Ð°Ñ Ð½ÑƒÐ¶Ð½Ñ‹Ñ… Ñтому пиру чаÑтей торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:854 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "Choking (Мы не позволÑем Ñтому пиру запрашивать у Ð½Ð°Ñ Ñ‡Ð°Ñти торрента)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:881 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:895 msgid "Add Torrent" msgstr "Добавить Торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:883 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:897 msgid "From URL" msgstr "Из URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:888 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:902 msgid "Add torrent" msgstr "Добавить торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:891 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:905 #, java-format msgid "Alternately, you can copy .torrent files to the directory {0}." msgstr "Ðу или вы можете Ñкопировать .torrent-файлы в директорию {0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:893 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:907 msgid "Removing a .torrent file will cause the torrent to stop." msgstr "Удаление .torrent-файла приведет к оÑтановке торрента." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:910 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:924 msgid "Create Torrent" msgstr "Создать Торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:913 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:927 msgid "Data to seed" msgstr "Файлы Ð´Ð»Ñ Ñ€Ð°Ð·Ð´Ð°Ñ‡Ð¸" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:917 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:931 msgid "File or directory to seed (must be within the specified path)" msgstr "Файл или Ð´Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ Ñ€Ð°Ð·Ð´Ð°Ñ‡Ð¸ (вводите только название файла или директории, указание абÑолютных путей не поддерживаетÑÑ)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:921 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:935 msgid "Select a tracker" msgstr "Выбрать трекер" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:934 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:948 msgid "or" msgstr "или" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:937 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:951 msgid "Specify custom tracker announce URL" msgstr "Задать URL анонÑера вручную" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:940 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:954 msgid "Create torrent" msgstr "Создать торрент" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:958 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 msgid "Configuration" msgstr "ÐаÑтройки" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:961 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:975 msgid "Data directory" msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð´Ð»Ñ Ñ„Ð°Ð¹Ð»Ð¾Ð²" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:964 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:978 msgid "Directory to store torrents and data" msgstr "ДиректориÑ, где будут хранитьÑÑ Ñ‚Ð¾Ñ€Ñ€ÐµÐ½Ñ‚Ñ‹ и загружаемые файлы" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:966 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:980 msgid "Edit i2psnark.config and restart to change" msgstr "Ð”Ð»Ñ Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð¾Ñ‚Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€ÑƒÐ¹Ñ‚Ðµ файл i2psnark.config и перезагрузите I2PSnark" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:970 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:984 msgid "Auto start" msgstr "ÐвтозапуÑк" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:974 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:988 msgid "If checked, automatically start torrents that are added" msgstr "ÐвтоматичеÑки запуÑкать торренты поÑле добавлениÑ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:997 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1011 msgid "Total uploader limit" msgstr "Ограничение количеÑтва Ñлотов отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1004 +# TODO should replace "uploader limit NN peers" with "global number of upload slots: NN" +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1014 +msgid "peers" +msgstr "пир." + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1018 msgid "Up bandwidth limit" msgstr "Ограничение ÑкороÑти отдачи" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1007 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1021 msgid "Half available bandwidth recommended." msgstr "РекомендуетÑÑ Ð¸Ñпользовать половину от доÑтупной пропуÑкной ÑпоÑобноÑти." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1009 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1023 msgid "View or change router bandwidth" msgstr "ПоÑмотреть/наÑтроить Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð¸Ñ ÑкороÑти в маршрутизаторе I2P" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1013 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1027 msgid "Use open trackers also" msgstr "Дополнительно иÑпользовать открытые трекеры" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1017 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1031 msgid "If checked, announce torrents to open trackers as well as the tracker listed in the torrent file" msgstr "ÐнонÑировать торренты на открытых трекерах, дополнительно к тем, что указаны внутри торрента" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1021 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1035 msgid "Open tracker announce URLs" msgstr "URL открытых трекеров" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1033 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1047 msgid "Inbound Settings" msgstr "ВходÑщие туннели" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1039 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 msgid "Outbound Settings" msgstr "ИÑходÑщие туннели" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1046 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1060 msgid "I2CP host" msgstr "ÐÐ´Ñ€ÐµÑ I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1051 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1065 msgid "I2CP port" msgstr "Порт I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1063 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1077 msgid "I2CP options" msgstr "Параметры I2CP" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1068 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1082 msgid "Save configuration" msgstr "Сохранить наÑтройки" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1075 -msgid "hop" -msgstr "хоп" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1076 -msgid "tunnel" -msgstr "туннель" +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1092 +#, java-format +msgid "1 hop" +msgid_plural "{0} hops" +msgstr[0] "{0} хоп" +msgstr[1] "{0} хопа" +msgstr[2] "{0} хопов" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1078 -msgid "hops" -msgstr "хопа(-ов)" +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1093 +#, java-format +msgid "1 tunnel" +msgid_plural "{0} tunnels" +msgstr[0] "{0} туннель" +msgstr[1] "{0} туннелÑ" +msgstr[2] "{0} туннелей" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1079 -msgid "tunnels" -msgstr "туннелÑ(-ей)" +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1107 +#, java-format +msgid "1 " +msgid_plural "{0} " +msgstr[0] "{0} " +msgstr[1] "{0} " +msgstr[2] "{0} " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1222 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1237 msgid "Up to higher level directory" msgstr "Перейти в директорию уровнем выше" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1227 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 msgid "File" msgstr "Файл" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1227 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 msgid "Size" msgstr "Размер" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1251 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1265 msgid "Directory" msgstr "ДиректориÑ" # This debug error message intentionally left in English -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1257 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1270 msgid "Torrent not found?" msgstr "Torrent not found?" # This debug error message intentionally left in English -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1266 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1278 msgid "File not found in torrent?" msgstr "File not found in torrent?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1273 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 msgid "complete" msgstr "Ñкачано" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1274 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1285 msgid "bytes remaining" msgstr "байт оÑталоÑÑŒ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1352 -msgid "Bytes" -msgstr "байт" - -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1379 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1408 #, java-format msgid "Torrent fetched from {0}" msgstr "Получен торрент из: {0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1436 #, java-format msgid "Torrent at {0} was not valid" msgstr "Торрент полученный из {0} некорректен" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1412 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1441 #, java-format msgid "Torrent was not retrieved from {0}" msgstr "Ðе удалоÑÑŒ получить торрент из: {0}" +#~ msgid "{0} torrents" +#~ msgstr "{0} торрентов" +#~ msgid "hops" +#~ msgstr "хопа(-ов)" +#~ msgid "tunnels" +#~ msgstr "туннелÑ(-ей)" +#~ msgid "Bytes" +#~ msgstr "байт" #~ msgid "Cannot change the I2CP settings while torrents are active" #~ msgstr "Ðевозможно изменить наÑтройки I2CP пока еÑÑ‚ÑŒ активные торренты" diff --git a/apps/i2psnark/locale/messages_zh.po b/apps/i2psnark/locale/messages_zh.po index 860e93fcff8126664b55bc78874f1cc01280b35d..e5538dd4864c95ae45d778fa389cac2c33eb92ad 100644 --- a/apps/i2psnark/locale/messages_zh.po +++ b/apps/i2psnark/locale/messages_zh.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: I2P i2psnark\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-03-05 12:41+0000\n" -"PO-Revision-Date: 2010-03-05 21:58+0800\n" +"POT-Creation-Date: 2010-05-29 02:34+0000\n" +"PO-Revision-Date: 2010-05-29 10:55+0800\n" "Last-Translator: walking <walking@mail.i2p>\n" "Language-Team: foo <foo@bar>\n" "MIME-Version: 1.0\n" @@ -18,654 +18,726 @@ msgstr "" "X-Poedit-Language: Chinese\n" "Plural-Forms: nplurals=1; plural=0\n" -#: ../java/src/org/klomp/snark/SnarkManager.java:84 +#: ../java/src/org/klomp/snark/SnarkManager.java:87 #, java-format msgid "Adding torrents in {0} minutes" msgstr "{0}分钟内完æˆæ·»åŠ " -#: ../java/src/org/klomp/snark/SnarkManager.java:242 +#: ../java/src/org/klomp/snark/SnarkManager.java:251 #, java-format msgid "Total uploaders limit changed to {0}" -msgstr "" +msgstr "æ€»ä¸Šä¼ ç§åæ•°é™åˆ¶å·²æ›´æ–°ä¸º{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:244 +#: ../java/src/org/klomp/snark/SnarkManager.java:253 #, java-format msgid "Minimum total uploaders limit is {0}" -msgstr "" +msgstr "æœ€ä½Žä¸Šä¼ ç§åæ•°é™åˆ¶ä¸º{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:256 +#: ../java/src/org/klomp/snark/SnarkManager.java:265 #, java-format msgid "Up BW limit changed to {0}KBps" msgstr "ä¸Šä¼ å¸¦å®½é™åˆ¶æ”¹ä¸º {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:258 +#: ../java/src/org/klomp/snark/SnarkManager.java:267 #, java-format msgid "Minimum up bandwidth limit is {0}KBps" msgstr "最å°ä¸Šä¼ 带宽é™åˆ¶ä¸º {0} KBps" -#: ../java/src/org/klomp/snark/SnarkManager.java:302 -msgid "Cannot change the I2CP settings while torrents are active" -msgstr "æ£åœ¨ä¸‹è½½/ä¸Šä¼ ï¼Œæ— æ³•æ›´æ”¹I2CP设置" +#: ../java/src/org/klomp/snark/SnarkManager.java:314 +msgid "I2CP and tunnel changes will take effect after stopping all torrents" +msgstr "I2CP与隧é“设置的å˜åŒ–在所有ç§ååœæ¢åŽæ‰èƒ½ç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:308 +#: ../java/src/org/klomp/snark/SnarkManager.java:320 msgid "Disconnecting old I2CP destination" msgstr "æ£åœ¨æ–开旧的I2CPç›®æ ‡" -#: ../java/src/org/klomp/snark/SnarkManager.java:312 +#: ../java/src/org/klomp/snark/SnarkManager.java:324 #, java-format msgid "I2CP settings changed to {0}" msgstr "I2CP设置改为{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:316 +#: ../java/src/org/klomp/snark/SnarkManager.java:328 msgid "Unable to connect with the new settings, reverting to the old I2CP settings" msgstr "æ— æ³•é€šè¿‡æ–°è®¾ç½®è¿žæŽ¥ï¼Œæ¢å¤I2CP的旧设置" -#: ../java/src/org/klomp/snark/SnarkManager.java:320 +#: ../java/src/org/klomp/snark/SnarkManager.java:332 msgid "Unable to reconnect with the old settings!" msgstr "æ—§è®¾ç½®ä¹Ÿæ— æ³•è¿žæŽ¥ï¼" -#: ../java/src/org/klomp/snark/SnarkManager.java:322 +#: ../java/src/org/klomp/snark/SnarkManager.java:334 msgid "Reconnected on the new I2CP destination" msgstr "é‡æ–°è¿žæŽ¥æ–°I2CPç›®æ ‡" -#: ../java/src/org/klomp/snark/SnarkManager.java:333 +#: ../java/src/org/klomp/snark/SnarkManager.java:345 #, java-format msgid "I2CP listener restarted for \"{0}\"" msgstr "\"{0}\"çš„I2CP监å¬ç«¯å£å·²å¯åŠ¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:344 +#: ../java/src/org/klomp/snark/SnarkManager.java:356 msgid "Enabled autostart" msgstr "å¯ç”¨è‡ªåŠ¨å¯åŠ¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:346 +#: ../java/src/org/klomp/snark/SnarkManager.java:358 msgid "Disabled autostart" msgstr "ç¦ç”¨è‡ªåŠ¨å¯åŠ¨" -#: ../java/src/org/klomp/snark/SnarkManager.java:352 +#: ../java/src/org/klomp/snark/SnarkManager.java:364 msgid "Enabled open trackers - torrent restart required to take effect." msgstr "å¯ç”¨OpenTracker-é‡æ–°å¯åŠ¨ç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:354 +#: ../java/src/org/klomp/snark/SnarkManager.java:366 msgid "Disabled open trackers - torrent restart required to take effect." msgstr "ç¦ç”¨OpenTracker - é‡æ–°å¯åŠ¨ç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:361 +#: ../java/src/org/klomp/snark/SnarkManager.java:373 msgid "Open Tracker list changed - torrent restart required to take effect." msgstr "OpenTrackeråˆ—è¡¨å·²æ”¹å˜ - é‡æ–°å¯åŠ¨ç§ååŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/SnarkManager.java:368 +#: ../java/src/org/klomp/snark/SnarkManager.java:380 msgid "Configuration unchanged." msgstr "设置未改å˜" -#: ../java/src/org/klomp/snark/SnarkManager.java:378 +#: ../java/src/org/klomp/snark/SnarkManager.java:390 #, java-format msgid "Unable to save the config to {0}" msgstr "æ— æ³•ä¿å˜è®¾ç½®åˆ°{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:396 +#: ../java/src/org/klomp/snark/SnarkManager.java:408 msgid "Connecting to I2P" msgstr "æ£åœ¨è¿žæŽ¥åˆ°I2P" -#: ../java/src/org/klomp/snark/SnarkManager.java:399 +#: ../java/src/org/klomp/snark/SnarkManager.java:411 msgid "Error connecting to I2P - check your I2CP settings!" msgstr "连接I2Pæ—¶å‘生错误 - 请检查I2CP设置!" -#: ../java/src/org/klomp/snark/SnarkManager.java:408 +#: ../java/src/org/klomp/snark/SnarkManager.java:420 #, java-format msgid "Error: Could not add the torrent {0}" msgstr "é”™è¯¯ï¼šæ— æ³•æ·»åŠ ç§å{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:430 +#: ../java/src/org/klomp/snark/SnarkManager.java:442 #, java-format msgid "Cannot open \"{0}\"" msgstr "æ— æ³•æ‰“å¼€ \"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:443 +#: ../java/src/org/klomp/snark/SnarkManager.java:455 #, java-format msgid "Warning - Ignoring non-i2p tracker in \"{0}\", will announce to i2p open trackers only" msgstr "è¦å‘Š - 忽略\"{0}\"文件ä¸I2P网络外的TrackeræœåŠ¡å™¨ï¼Œæ–‡ä»¶å°†ä»…å‘布至 I2P 内的 Open Tracker æœåŠ¡å™¨ã€‚" -#: ../java/src/org/klomp/snark/SnarkManager.java:445 +#: ../java/src/org/klomp/snark/SnarkManager.java:457 #, java-format msgid "Warning - Ignoring non-i2p tracker in \"{0}\", and open trackers are disabled, you must enable open trackers before starting the torrent!" msgstr "è¦å‘Š - 忽略\"{0}\"文件ä¸I2P网络外的TrackeræœåŠ¡å™¨ï¼ŒOpenTrackerå·²ç¦ç”¨ï¼Œå¯åŠ¨æ¤ç§åå‰æ‚¨å¿…é¡»å¯ç”¨OpenTracker。" -#: ../java/src/org/klomp/snark/SnarkManager.java:464 +#: ../java/src/org/klomp/snark/SnarkManager.java:476 #, java-format msgid "Torrent in \"{0}\" is invalid" msgstr "æ— æ•ˆç§å \"{0}\" " -#: ../java/src/org/klomp/snark/SnarkManager.java:479 +#: ../java/src/org/klomp/snark/SnarkManager.java:491 #, java-format msgid "Torrent added and started: \"{0}\"" msgstr "å·²æ·»åŠ å¹¶å¯åŠ¨ç§å:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:481 +#: ../java/src/org/klomp/snark/SnarkManager.java:493 #, java-format msgid "Torrent added: \"{0}\"" msgstr "å·²æ·»åŠ ç§å:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:578 +#: ../java/src/org/klomp/snark/SnarkManager.java:590 #, java-format msgid "Too many files in \"{0}\" ({1}), deleting it!" msgstr "\"{0}\" ({1}) å«æœ‰å¤ªå¤šæ–‡ä»¶ï¼Œåˆ 除之!" -#: ../java/src/org/klomp/snark/SnarkManager.java:580 +#: ../java/src/org/klomp/snark/SnarkManager.java:592 #, java-format msgid "Torrent file \"{0}\" cannot end in \".torrent\", deleting it!" msgstr "ç§å文件 \"{0}\" ä¸ä»¥ \".torrent\"结尾,æ£åœ¨åˆ 除ï¼" -#: ../java/src/org/klomp/snark/SnarkManager.java:582 +#: ../java/src/org/klomp/snark/SnarkManager.java:594 #, java-format msgid "No pieces in \"{0}\", deleting it!" msgstr "\"{0}\" ä¸æ²¡æœ‰æ•°æ®ç‰‡ï¼Œåˆ 除之!" -#: ../java/src/org/klomp/snark/SnarkManager.java:584 +#: ../java/src/org/klomp/snark/SnarkManager.java:596 #, java-format msgid "Too many pieces in \"{0}\", limit is {1}, deleting it!" msgstr "\"{0}\" ä¸æ–‡ä»¶åˆ†ç‰‡å¤ªå¤šï¼Œé™é¢ä¸º{1}ï¼Œåˆ é™¤ä¹‹ï¼" -#: ../java/src/org/klomp/snark/SnarkManager.java:586 +#: ../java/src/org/klomp/snark/SnarkManager.java:598 #, java-format msgid "Pieces are too large in \"{0}\" ({1}B), deleting it." msgstr "\"{0}\" ({1}B) ä¸æ–‡ä»¶åˆ†ç‰‡è¿‡å¤§ï¼Œåˆ 除之。" -#: ../java/src/org/klomp/snark/SnarkManager.java:587 +#: ../java/src/org/klomp/snark/SnarkManager.java:599 #, java-format msgid "Limit is {0}B" msgstr "é™é¢ä¸º {0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:595 +#: ../java/src/org/klomp/snark/SnarkManager.java:607 #, java-format msgid "Torrents larger than {0}B are not supported yet, deleting \"{1}\"" msgstr "ç›®å‰ä¸æ”¯æŒå¤§äºŽ{0}B çš„ç§å,æ£åœ¨åˆ 除\"{1}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:611 +#: ../java/src/org/klomp/snark/SnarkManager.java:623 #, java-format msgid "Error: Could not remove the torrent {0}" msgstr "错误:æ— æ³•åˆ é™¤ç§å{0}" -#: ../java/src/org/klomp/snark/SnarkManager.java:632 +#: ../java/src/org/klomp/snark/SnarkManager.java:644 #, java-format msgid "Torrent stopped: \"{0}\"" msgstr "ç§åå·²åœæ¢:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:647 +#: ../java/src/org/klomp/snark/SnarkManager.java:659 #, java-format msgid "Torrent removed: \"{0}\"" msgstr "ç§åå·²åˆ é™¤:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:680 +#: ../java/src/org/klomp/snark/SnarkManager.java:692 #, java-format msgid "Download finished: \"{0}\"" msgstr "下载已完æˆ:\"{0}\"" -#: ../java/src/org/klomp/snark/SnarkManager.java:680 +#: ../java/src/org/klomp/snark/SnarkManager.java:692 #, java-format msgid "size: {0}B" msgstr "大å°:{0}B" -#: ../java/src/org/klomp/snark/SnarkManager.java:708 +#: ../java/src/org/klomp/snark/SnarkManager.java:720 msgid "Unable to connect to I2P!" msgstr "æ— æ³•è¿žæŽ¥è‡³I2P!" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:86 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:169 msgid "I2PSnark - Anonymous BitTorrent Client" msgstr "I2PSnark - 匿åBitTorrent客户端" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:95 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:178 msgid "Refresh page" msgstr "刷新页é¢" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:97 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:669 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:180 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:808 msgid "I2PSnark" msgstr "" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:99 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:182 msgid "Forum" msgstr "论å›" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:125 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:208 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1243 msgid "Status" msgstr "状æ€" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:131 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:214 msgid "Hide Peers" msgstr "éšè—用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:134 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:217 msgid "Show Peers" msgstr "显示用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:139 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:222 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1225 msgid "Torrent" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:141 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:224 msgid "ETA" -msgstr "" +msgstr "预计剩余时间" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:143 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:226 msgid "Downloaded" msgstr "已下载" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:145 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:228 msgid "Uploaded" msgstr "å·²ä¸Šä¼ " -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:147 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:230 msgid "Down Rate" msgstr "下载速度" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:149 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:232 msgid "Up Rate" msgstr "ä¸Šä¼ é€Ÿåº¦" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:156 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:239 msgid "Stop all torrents and the I2P tunnel" msgstr "åœæ¢å…¨éƒ¨ç§ååŠI2P隧é“" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:158 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:241 msgid "Stop All" msgstr "åœæ¢å…¨éƒ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:163 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:246 msgid "Start all torrents and the I2P tunnel" msgstr "å¯åŠ¨å…¨éƒ¨ç§ååŠI2P隧é“" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:165 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:248 msgid "Start All" msgstr "å¯åŠ¨å…¨éƒ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:182 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:265 msgid "No torrents loaded." msgstr "未载入任何ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:187 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:270 msgid "Totals" msgstr "总计" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:189 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:272 #, java-format -msgid "{0} torrents" -msgstr "{0} 个ç§å" +msgid "1 torrent" +msgid_plural "{0} torrents" +msgstr[0] "{0}个ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:192 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:275 #, java-format -msgid "{0} connected peers" -msgstr "{0} 已连接用户" +msgid "1 connected peer" +msgid_plural "{0} connected peers" +msgstr[0] "{0}个已连接用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:227 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:310 #, java-format msgid "Torrent file {0} does not exist" msgstr "ç§å文件{0}ä¸å˜åœ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:237 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1003 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:320 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1428 #, java-format msgid "Torrent already running: {0}" msgstr "ç§åå·²å¯åŠ¨:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:239 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1005 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:322 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1430 #, java-format msgid "Torrent already in the queue: {0}" msgstr "ç§å排队ä¸:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:243 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 #, java-format msgid "Copying torrent to {0}" msgstr "æ£åœ¨å¤åˆ¶ç§å到{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:329 #, java-format msgid "Unable to copy the torrent to {0}" msgstr "æ— æ³•å¤åˆ¶ç§å文件到{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:246 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:329 #, java-format msgid "from {0}" msgstr "æ¥æº{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:254 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:337 #, java-format msgid "Fetching {0}" msgstr "æ£åœ¨èŽ·å–{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:258 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:341 msgid "Invalid URL - must start with http://" msgstr "æ— æ•ˆé“¾æŽ¥ - 必须以http:// 开头" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:288 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:371 #, java-format msgid "Starting up torrent {0}" msgstr "æ£åœ¨å¯åŠ¨ç§å{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:308 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:326 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:391 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:409 #, java-format msgid "Torrent file deleted: {0}" msgstr "ç§åæ–‡ä»¶å·²åˆ é™¤:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:332 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:342 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:415 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:425 #, java-format msgid "Data file deleted: {0}" msgstr "æ•°æ®æ–‡ä»¶å·²åˆ 除:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:334 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:344 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:417 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:427 #, java-format msgid "Data file could not be deleted: {0}" msgstr "æ— æ³•åˆ é™¤æ•°æ®æ–‡ä»¶:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:353 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:436 #, java-format msgid "Data dir deleted: {0}" msgstr "æ•°æ®æ–‡ä»¶å¤¹å·²åˆ 除:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:384 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:467 msgid "Error creating torrent - you must select a tracker" msgstr "创建ç§åæ—¶å‘生错误 - 您必须选择一个Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:399 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:482 #, java-format msgid "Torrent created for \"{0}\"" msgstr "ç§å创建æˆåŠŸ\"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:402 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:485 #, java-format msgid "Many I2P trackers require you to register new torrents before seeding - please do so before starting \"{0}\"" msgstr "多数I2PTracker需è¦ç”¨æˆ·åœ¨åšç§å‰æ³¨å†Œæ–°ç§å - 请在å¯åŠ¨ \"{0}\"å‰åˆ°æ‰€ä½¿ç”¨çš„Tracker进行注册。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:404 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:487 #, java-format msgid "Error creating a torrent for \"{0}\"" msgstr "创建ç§åæ—¶å‘生错误 \"{0}\"" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:407 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:490 #, java-format msgid "Cannot create a torrent for the nonexistent data: {0}" msgstr "æ— æ³•ä¸ºä¸å˜åœ¨çš„æ•°æ®æ–‡ä»¶åˆ›å»ºç§å:{0}" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:410 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:493 msgid "Error creating torrent - you must enter a file or directory" msgstr "创建ç§åæ—¶å‘生错误 - 必须指定文件或文件夹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:413 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:496 msgid "Stopping all torrents and closing the I2P tunnel." msgstr "æ£åœ¨åœç”¨æ‰€æœ‰ç§å并关é—I2P隧é“。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:422 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:505 msgid "I2P tunnel closed." msgstr "I2P隧é“已关é—" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:425 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:508 msgid "Opening the I2P tunnel and starting all torrents." msgstr "æ£åœ¨æ‰“å¼€I2P隧é“并å¯åŠ¨æ‰€æœ‰ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:505 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:683 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:628 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:822 msgid "Unknown" msgstr "未知" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:508 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:516 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:631 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:636 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:641 msgid "TrackerErr" msgstr "Tracker错误" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:510 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:512 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:522 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:524 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:531 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:533 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:537 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:875 -msgid "peers" -msgstr "用户" +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:634 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:637 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:648 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:651 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:659 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:662 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:667 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:670 +#, java-format +msgid "1 peer" +msgid_plural "{0} peers" +msgstr[0] "{0}个用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:520 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:524 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:645 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:650 msgid "Seeding" msgstr "æ£åšç§" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:526 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:653 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1281 msgid "Complete" msgstr "完æˆ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:529 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:533 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:656 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:661 msgid "OK" msgstr "确定" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:535 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:539 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:664 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:669 msgid "Stalled" msgstr "ç‰å¾…" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:541 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:672 msgid "No Peers" msgstr "没有用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:543 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:674 msgid "Stopped" msgstr "å·²åœç”¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:556 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:689 msgid "View files" msgstr "æµè§ˆæ–‡ä»¶" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:558 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:691 msgid "Open file" msgstr "打开文件" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:582 -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:794 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:721 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:933 msgid "Tracker" msgstr "TrackeræœåŠ¡å™¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:583 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:722 msgid "Details" msgstr "详情" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:617 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:756 msgid "Stop the torrent" msgstr "åœæ¢ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:619 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:758 msgid "Stop" msgstr "åœæ¢" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:625 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:764 msgid "Start the torrent" msgstr "å¯åŠ¨ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:627 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:766 msgid "Start" msgstr "å¯åŠ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:632 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:771 msgid "Remove the torrent from the active list, deleting the .torrent file" msgstr "å–æ¶ˆä¸‹è½½ä»»åŠ¡å¹¶åˆ é™¤å¯¹åº”ç§å文件。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:637 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:776 #, java-format msgid "Are you sure you want to delete the file \\''{0}.torrent\\'' (downloaded data will not be deleted) ?" msgstr "您确定è¦åˆ 除文件“{0}.torrentâ€(下载的数æ®æ–‡ä»¶ä¸ä¼šè¢«åˆ 除)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:639 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:778 msgid "Remove" msgstr "移除" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:643 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:782 msgid "Delete the .torrent file and the associated data file(s)" msgstr "åˆ é™¤ç§ååŠæ‰€ä¸‹è½½çš„文件" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:648 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:787 #, java-format msgid "Are you sure you want to delete the torrent \\''{0}\\'' and all downloaded data?" msgstr "您确定è¦åˆ 除ç§å“{0}â€(下载的数æ®æ–‡ä»¶ä¼šä¸€å¹¶è¢«åˆ 除)?" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:650 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:789 msgid "Delete" msgstr "åˆ é™¤" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:693 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:832 msgid "Seed" msgstr "ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:711 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:850 msgid "Uninteresting (The peer has no pieces we need)" msgstr "æ— éœ€è¦éƒ¨åˆ†" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:713 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:852 msgid "Choked (The peer is not allowing us to request pieces)" msgstr "æ‹’ç»è¯·æ±‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:727 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:866 msgid "Uninterested (We have no pieces the peer needs)" msgstr "æ— éœ€è¦éƒ¨åˆ†" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:729 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:868 msgid "Choking (We are not allowing the peer to request pieces)" msgstr "æ‹’ç»è¯·æ±‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:756 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:895 msgid "Add Torrent" msgstr "æ·»åŠ ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:758 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:897 msgid "From URL" msgstr "从URL" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:763 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:902 msgid "Add torrent" msgstr "æ·»åŠ ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:766 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:905 #, java-format msgid "Alternately, you can copy .torrent files to the directory {0}." msgstr "或者您å¯ä»¥å°†.torrent文件å¤åˆ¶åˆ°ä»¥ä¸‹ç›®å½•{0}." -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:768 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:907 msgid "Removing a .torrent file will cause the torrent to stop." msgstr "åˆ é™¤ç§å文件将导致ä¸æ¢è¯¥ä¸‹è½½ä»»åŠ¡ã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:785 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:924 msgid "Create Torrent" msgstr "创建ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:788 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:927 msgid "Data to seed" msgstr "åšç§æ•°æ®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:792 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:931 msgid "File or directory to seed (must be within the specified path)" msgstr "åšç§æ–‡ä»¶æˆ–文件夹(必须下é¢ä¸ºSnark指定的文件夹ä¸)" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:796 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:935 msgid "Select a tracker" msgstr "选择一个Tracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:809 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:948 msgid "or" msgstr "或" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:812 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:951 msgid "Specify custom tracker announce URL" msgstr "指定Open Trackerå‘布链接" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:815 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:954 msgid "Create torrent" msgstr "创建ç§å" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:833 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:972 msgid "Configuration" msgstr "设置" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:836 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:975 msgid "Data directory" msgstr "æ•°æ®æ–‡ä»¶å¤¹" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:839 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:978 msgid "Directory to store torrents and data" msgstr "ç§ååŠè¢«åšç§æ–‡ä»¶çš„ä¿å˜ä½ç½®ã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:841 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:980 msgid "Edit i2psnark.config and restart to change" msgstr "编辑 i2psnark.config 并é‡å¯SnarkåŽç”Ÿæ•ˆ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:845 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:984 msgid "Auto start" msgstr "自动å¯åŠ¨" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:849 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:988 msgid "If checked, automatically start torrents that are added" msgstr "选ä¸åŽSnark将自动å¯åŠ¨å·²æ·»åŠ 的所有ç§å。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:872 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1011 msgid "Total uploader limit" -msgstr "" +msgstr "é™åˆ¶æ€»ä¸Šä¼ ç§å数为" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1014 +msgid "peers" +msgstr "用户" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:879 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1018 msgid "Up bandwidth limit" msgstr "ä¸Šä¼ å¸¦å®½é™åˆ¶" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:882 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1021 msgid "Half available bandwidth recommended." msgstr "推è设置为å¯ç”¨å¸¦å®½çš„一åŠã€‚" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:884 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1023 msgid "View or change router bandwidth" msgstr "æµè§ˆæˆ–修改路由器带宽" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:888 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1027 msgid "Use open trackers also" msgstr "åŒæ—¶ä½¿ç”¨OpenTracker" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:892 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1031 msgid "If checked, announce torrents to open trackers as well as the tracker listed in the torrent file" msgstr "选择åŽåœ¨OpenTrackeråŠç§å文件ä¸çš„Tracker上åŒæ—¶å‘布。" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:896 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1035 msgid "Open tracker announce URLs" msgstr "Open Trackerå‘布链接" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:907 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1047 +msgid "Inbound Settings" +msgstr "入站设置" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1053 +msgid "Outbound Settings" +msgstr "出站设置" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1060 msgid "I2CP host" msgstr "I2CP主机" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:912 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1065 msgid "I2CP port" msgstr "I2CP端å£" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:925 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1077 msgid "I2CP options" msgstr "I2CP选项" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:930 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1082 msgid "Save configuration" msgstr "ä¿å˜è®¾ç½®" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:983 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1092 +#, java-format +msgid "1 hop" +msgid_plural "{0} hops" +msgstr[0] "{0}è·³" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1093 +#, java-format +msgid "1 tunnel" +msgid_plural "{0} tunnels" +msgstr[0] "{0}隧é“" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1107 +#, java-format +msgid "1 " +msgid_plural "{0} " +msgstr[0] "" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1237 +msgid "Up to higher level directory" +msgstr "上一层文件夹" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +msgid "File" +msgstr "文件" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1242 +msgid "Size" +msgstr "大å°" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1265 +msgid "Directory" +msgstr "文件夹" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1270 +msgid "Torrent not found?" +msgstr "ç§å未找到" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1278 +msgid "File not found in torrent?" +msgstr "ç§åä¸æ²¡æœ‰å‘现文件?" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1284 +msgid "complete" +msgstr "完æˆ" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1285 +msgid "bytes remaining" +msgstr "剩余å—节数" + +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1408 #, java-format msgid "Torrent fetched from {0}" msgstr "从{0}获å–ç§åæˆåŠŸ" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1011 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1436 #, java-format msgid "Torrent at {0} was not valid" msgstr "{0}çš„ç§åä¸æœ‰é”™è¯¯" -#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1016 +#: ../java/src/org/klomp/snark/web/I2PSnarkServlet.java:1441 #, java-format msgid "Torrent was not retrieved from {0}" msgstr "从{0}获得ç§å失败" +#~ msgid "Cannot change the I2CP settings while torrents are active" +#~ msgstr "æ£åœ¨ä¸‹è½½/ä¸Šä¼ ï¼Œæ— æ³•æ›´æ”¹I2CP设置" +#~ msgid "{0} torrents" +#~ msgstr "{0} 个ç§å" #~ msgid "Non-i2p tracker in \"{0}\", deleting it from our list of trackers!" #~ msgstr "" #~ "ã€åŒ¿å性è¦å‘Šã€‘\"{0}\" ä¸å«æœ‰éžI2P Tracker,程åºå°†ä»ŽTracker列表ä¸å°†å…¶åˆ 除。" diff --git a/apps/i2ptunnel/java/bundle-messages.sh b/apps/i2ptunnel/java/bundle-messages.sh index 8e9375d209f0b1241c65a7c3c425bc4d738ba032..236b0ad0114d1ca9cfcf7903e4f31ed08e8dd4b7 100755 --- a/apps/i2ptunnel/java/bundle-messages.sh +++ b/apps/i2ptunnel/java/bundle-messages.sh @@ -51,7 +51,7 @@ do # To start a new translation, copy the header from an old translation to the new .po file, # then ant distclean updater. find $JPATHS -name *.java > $TMPFILE - xgettext -f $TMPFILE -F -L java --from-code=UTF-8 \ + xgettext -f $TMPFILE -F -L java --from-code=UTF-8 --add-comments\ --keyword=_ --keyword=_x --keyword=intl._ --keyword=intl.title \ -o ${i}t if [ $? -ne 0 ] diff --git a/apps/i2ptunnel/locale/messages_zh.po b/apps/i2ptunnel/locale/messages_zh.po index 401c4968216dbec05abef7d80e89483f6a51baa1..833b62fe94d6cf6bf83889e609ac4d14c71818c3 100644 --- a/apps/i2ptunnel/locale/messages_zh.po +++ b/apps/i2ptunnel/locale/messages_zh.po @@ -1,698 +1,677 @@ -# I2P -# Copyright (C) 2009 The I2P Project -# This file is distributed under the same license as the i2ptunnel package. -# To contribute translations, see http://www.i2p2.de/newdevelopers -# foo <foo@bar>, 2009. -# -msgid "" -msgstr "" -"Project-Id-Version: I2P i2ptunnel\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-03-05 12:41+0000\n" -"PO-Revision-Date: 2010-01-29 15:31+0800\n" -"Last-Translator: walking <zhazhenzhong@gmail.com>\n" -"Language-Team: foo <foo@bar>\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Poedit-Language: Chinese\n" - -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:483 -#, fuzzy, java-format -msgid "" -"To visit the destination in your host database, click <a href=\"{0}\">here</" -"a>. To visit the conflicting addresshelper destination, click <a href=\"{1}" -"\">here</a>." -msgstr "" -"è¦è®¿é—®æ‚¨æœ¬åœ°ã€åœ°å€ç°¿ã€‘ä¸è§„定的主机(相当与IP),请点击<a href=\"{0}\">这里</" -"a>。è¦è®¿é—®ã€åœ°å€åŠ©æ‰‹ã€‘返回的主机请点<a href=\"{1}\">这里</a>(主机的域å会被临" -"时强制替æ¢)。" - -#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:886 -msgid "" -"Click a link below to look for an address helper by using a \"jump\" service:" -msgstr "" -"请点击下é¢çš„链接通过ã€è·³è½¬(Jump)】æœåŠ¡æ供的ã€åœ°å€åŠ©æ‰‹ã€‘链接跳转至域å对应的" -"主机:" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:362 -msgid "New Tunnel" -msgstr "新建隧é“" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:382 -msgid "Standard client" -msgstr "æ ‡å‡†å®¢æˆ·ç«¯" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:383 -msgid "HTTP client" -msgstr "HTTP 客户端" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:384 -msgid "IRC client" -msgstr "IRC 客户端" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:385 -msgid "Standard server" -msgstr "æ ‡å‡†æœåŠ¡å™¨" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:386 -msgid "HTTP server" -msgstr "HTTP æœåŠ¡å™¨" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:387 -msgid "SOCKS 4/4a/5 proxy" -msgstr "SOCKS4/4A/5 代ç†" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:388 -msgid "CONNECT/SSL/HTTPS proxy" -msgstr "CONNECT/SSL/HTTPS 代ç†" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:389 -msgid "IRC server" -msgstr "IRC æœåŠ¡å™¨" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:390 -msgid "Streamr client" -msgstr "Streamr 客户端" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:391 -msgid "Streamr server" -msgstr "Streamr æœåŠ¡å™¨" - -#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:392 -msgid "HTTP bidir" -msgstr "åŒå‘http" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:73 -msgid "I2P Tunnel Manager - Edit Client Tunnel" -msgstr "I2P 隧é“管ç†å™¨ - 编辑客户端隧é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:93 -msgid "Edit proxy settings" -msgstr "编辑代ç†è®¾ç½®" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:101 -msgid "New proxy settings" -msgstr "新建代ç†è®¾ç½®" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:112 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:112 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:107 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:121 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:242 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:257 -msgid "Name" -msgstr "å称" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:116 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:116 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:246 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:270 -msgid "Type" -msgstr "类型" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:120 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:120 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:226 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:357 -msgid "Description" -msgstr "æè¿°" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:126 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:136 -msgid "Target" -msgstr "ç›®æ ‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:130 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:132 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:167 -msgid "Access Point" -msgstr "接入点" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:137 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:179 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:207 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:157 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:172 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:228 -msgid "required" -msgstr "å¿…è¦" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:150 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:142 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:183 -msgid "Reachable by" -msgstr "访问地å€" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:162 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:195 -msgid "Locally (127.0.0.1)" -msgstr "本地(127.0.0.1)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:166 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:199 -msgid "Everyone (0.0.0.0)" -msgstr "任何人(0.0.0.0)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:170 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:203 -msgid "LAN Hosts (Please specify your LAN address)" -msgstr "局域网(请指定LAN地å€)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:186 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:205 -msgid "Other" -msgstr "其他" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:195 -msgid "Outproxies" -msgstr "出å£ä»£ç†" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:202 -msgid "Tunnel Destination" -msgstr "隧é“ç›®æ ‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:214 -msgid "name or destination" -msgstr "å称或æè¿°" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:220 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:237 -msgid "Profile" -msgstr "连接类型" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:227 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:244 -msgid "interactive connection" -msgstr "速度连接" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:231 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:248 -msgid "bulk connection (downloads/websites/BT)" -msgstr "效率连接(下载/WEB/BT)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:233 -msgid "Delay Connect" -msgstr "连接延迟æ–å¼€" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:237 -msgid "for request/response connections" -msgstr "å•è¯·æ±‚/å“应连接" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:239 -msgid "Shared Client" -msgstr "共享客户端" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:243 -msgid "" -"(Share tunnels with other clients and irc/httpclients? Change requires " -"restart of client proxy)" -msgstr "(与其他客户端例如IRC/HTTP共享隧é“?修改需è¦é‡æ–°å¯åŠ¨)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:247 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:124 -msgid "Auto Start" -msgstr "自动å¯åŠ¨" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:251 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:128 -msgid "(Check the Box for 'YES')" -msgstr "(选ä¸è¡¨ç¤º\"是\")" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:253 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:266 -msgid "Advanced networking options" -msgstr "高级网络设置" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:255 -msgid "" -"(NOTE: when this client proxy is configured to share tunnels, then these " -"options are for all the shared proxy clients!)" -msgstr "" -"(注æ„:æ¤å®¢æˆ·ä»£ç†è¢«è®¾ç½®ä½¿ç”¨å…±äº«éš§é“时,这些设置将影å“所有使用共享隧é“的客户" -"端!)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:257 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:268 -msgid "Tunnel Options" -msgstr "隧é“选项" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:259 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:270 -msgid "Length" -msgstr "长度" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:266 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:277 -msgid "0 hop tunnel (low anonymity, low latency)" -msgstr "ç›´è¿ž(匿åæ€§æ— ,延迟低)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:270 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:281 -msgid "1 hop tunnel (medium anonymity, medium latency)" -msgstr "隧é“跳点x1(匿å性ä¸,延迟ä¸)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:274 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:285 -msgid "2 hop tunnel (high anonymity, high latency)" -msgstr "隧é“跳点x2(匿å性高,延迟高)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:278 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:289 -msgid "3 hop tunnel (very high anonymity, poor performance)" -msgstr "隧é“跳点x3(匿å性优,å½±å“性能)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:287 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:298 -msgid "hop tunnel (very poor performance)" -msgstr "跳点隧é“(严é‡å½±å“性能)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:292 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:303 -msgid "Variance" -msgstr "éšæœºå˜åŒ–" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:299 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:310 -msgid "0 hop variance (no randomisation, consistant performance)" -msgstr "隧é“长度æ’定(éšæœºæ€§æ— ,性能稳定)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:303 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:314 -msgid "" -"+ 0-1 hop variance (medium additive randomisation, subtractive performance)" -msgstr "隧é“长度+ 0-1(éšæœºæ€§ä¸,å½±å“性能)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:307 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:318 -msgid "" -"+ 0-2 hop variance (high additive randomisation, subtractive performance)" -msgstr "隧é“长度+ 0-2(éšæœºæ€§é«˜,å½±å“性能)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:311 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:322 -msgid "+/- 0-1 hop variance (standard randomisation, standard performance)" -msgstr "隧é“长度+/- 0-1(éšæœºæ€§æ ‡å‡†,æ£å¸¸æ€§èƒ½)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:315 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:326 -msgid "+/- 0-2 hop variance (not recommended)" -msgstr "隧é“程度+/- 0-2(ä¸æŽ¨è)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:327 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:338 -msgid "hop variance" -msgstr "节点数é‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:332 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:343 -msgid "Count" -msgstr "计数" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:339 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:350 -msgid "1 inbound, 1 outbound tunnel (low bandwidth usage, less reliability)" -msgstr "出/入站隧é“x1(带宽低,低å¯é 性)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:343 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:354 -msgid "" -"2 inbound, 2 outbound tunnels (standard bandwidth usage, standard " -"reliability)" -msgstr "出/入站隧é“x2(å¸¦å®½æ ‡å‡†,æ ‡å‡†ç¨³å®šæ€§)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:347 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:358 -msgid "" -"3 inbound, 3 outbound tunnels (higher bandwidth usage, higher reliability)" -msgstr "出/入站隧é“x3(带宽高,高稳定性)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:356 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:367 -msgid "tunnels" -msgstr "隧é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:361 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:372 -msgid "Backup Count" -msgstr "备用数é‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:368 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:379 -msgid "0 backup tunnels (0 redundancy, no added resource usage)" -msgstr "æ— å¤‡ç”¨éš§é“(æ— å†—ä½™,ä¸å¢žåŠ 资æºå 用)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:372 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:383 -msgid "1 backup tunnel each direction (low redundancy, low resource usage)" -msgstr "备用隧é“对x1 (低冗余,低资æºå 用)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:376 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:387 -msgid "" -"2 backup tunnels each direction (medium redundancy, medium resource usage)" -msgstr "备用隧é“对x2 (ä¸å†—ä½™,ä¸èµ„æºå 用)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:380 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:391 -msgid "3 backup tunnels each direction (high redundancy, high resource usage)" -msgstr "备用隧é“对x3 (高冗余,高资æºå 用)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:389 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:400 -msgid "backup tunnels" -msgstr "备用隧é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:394 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:405 -msgid "I2CP Options" -msgstr "I2CP选项" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:396 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:146 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:407 -msgid "Host" -msgstr "主机" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:400 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:152 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:411 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:244 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:266 -msgid "Port" -msgstr "端å£" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:406 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:445 -msgid "Reduce tunnel quantity when idle" -msgstr "空闲时缩å‡éš§é“æ•°é‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:408 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:422 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:430 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:442 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:452 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:417 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:435 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:447 -msgid "Enable" -msgstr "å¯ç”¨" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:412 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:451 -msgid "Reduced tunnel count" -msgstr "削å‡åŽçš„隧é“æ•°é‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:416 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:436 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:455 -msgid "Idle minutes" -msgstr "空闲时间(分钟)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:420 -msgid "Close tunnels when idle" -msgstr "空闲时关é—隧é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:426 -msgid "New Keys on Reopen" -msgstr "é‡æ–°æ‰“开隧é“时使用新密钥" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:434 -msgid "Disable" -msgstr "ç¦ç”¨" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:440 -msgid "Delay tunnel open until required" -msgstr "仅在请求时打开" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:450 -msgid "Persistent private key" -msgstr "永久ç§æœ‰å¯†é’¥" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:456 -msgid "File" -msgstr "文件" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:460 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:252 -msgid "Local destination" -msgstr "æœ¬åœ°ç›®æ ‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:464 -msgid "(if known)" -msgstr "(如果已知)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:468 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:491 -msgid "Custom options" -msgstr "自定义选项" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:472 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:495 -msgid "" -"NOTE: If tunnel is currently running, most changes will not take effect " -"until tunnel is stopped and restarted." -msgstr "" -"注æ„:如果当å‰éš§é“å·²ç»å¯åŠ¨ï¼Œè®¾ç½®éœ€è¦ã€åœæ¢ã€‘并é‡æ–°ã€å¯åŠ¨ã€‘相应隧é“åŽæ‰èƒ½ç”Ÿ" -"效。" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:474 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:497 -msgid "Save" -msgstr "ä¿å˜" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:478 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:501 -msgid "Delete" -msgstr "åˆ é™¤" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:480 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:503 -msgid "Cancel" -msgstr "å–消" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:73 -msgid "I2P Tunnel Manager - Edit Server Tunnel" -msgstr "I2P隧é“管ç†å™¨ - 编辑æœåŠ¡å™¨éš§é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:93 -msgid "Edit server settings" -msgstr "æœåŠ¡å™¨éš§é“设置" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:101 -msgid "New server settings" -msgstr "新建æœåŠ¡å™¨è®¾ç½®" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:214 -msgid "Website name" -msgstr "网站å称" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:218 -msgid "(leave blank for outproxies)" -msgstr "(出å£ä»£ç†è¿™é‡Œè¯·ç½®ç©º)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:223 -msgid "Private key file" -msgstr "ç§é’¥æ–‡ä»¶" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:262 -msgid "Add to local addressbook" -msgstr "æ·»åŠ è‡³æœ¬åœ°åœ°å€ç°¿" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:415 -msgid "Encrypt Leaseset" -msgstr "åŠ å¯†èµé›†" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:421 -msgid "Encryption Key" -msgstr "åŠ å¯†å¯†é’¥" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:425 -msgid "Generate New Key" -msgstr "生æˆæ–°å¯†é’¥" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:427 -msgid "Generate" -msgstr "生æˆ" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:429 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:489 -msgid "(Tunnel must be stopped first)" -msgstr "(必须先åœæ¢éš§é“)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:431 -msgid "Restricted Access List" -msgstr "é™åˆ¶è®¿é—®åˆ—表" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:433 -msgid "Unimplemented" -msgstr "尚未实现" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:439 -msgid "Access List" -msgstr "访问列表" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:443 -msgid "(Restrict to these clients only)" -msgstr "(ä»…å…许这些客户访问)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:459 -msgid "New Certificate type" -msgstr "新建è¯ä¹¦ç±»åž‹" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:461 -msgid "None" -msgstr "æ— " - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:465 -msgid "Hashcash (effort)" -msgstr "Hashcash (强度)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:471 -msgid "Hashcash Calc Time" -msgstr "Hashcash 计算时间" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:473 -msgid "Estimate" -msgstr "ä¼°ç®—" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:475 -msgid "Hidden" -msgstr "éšè—" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:479 -msgid "Signed (signed by)" -msgstr "ç¾å(ç¾å者)" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:485 -msgid "Modify Certificate" -msgstr "修改è¯ä¹¦" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:487 -msgid "Modify" -msgstr "修改" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:71 -msgid "I2P Tunnel Manager - List" -msgstr "I2P隧é“管ç†å™¨ - 列表" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:83 -msgid "Status Messages" -msgstr "状æ€ä¿¡æ¯" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:87 -msgid "Refresh" -msgstr "刷新" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:91 -msgid "Stop All" -msgstr "全部åœæ¢" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:95 -msgid "Start All" -msgstr "全部å¯åŠ¨" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:99 -msgid "Restart All" -msgstr "全部é‡å¯" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:103 -msgid "Reload Config" -msgstr "é‡æ–°è½½å…¥è®¾ç½®" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:105 -msgid "I2P Server Tunnels" -msgstr "I2PæœåŠ¡ç«¯éš§é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:109 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:130 -msgid "Points at" -msgstr "指å‘" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:111 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:153 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:157 -msgid "Preview" -msgstr "预览" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:113 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:177 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:250 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:278 -msgid "Status" -msgstr "状æ€" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:163 -msgid "Base32 Address" -msgstr "Base32地å€" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:171 -msgid "No Preview" -msgstr "æ— é¢„è§ˆ" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:184 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:285 -msgid "Starting..." -msgstr "æ£åœ¨å¯åŠ¨..." - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:191 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:205 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:292 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:306 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:320 -msgid "Stop" -msgstr "åœæ¢" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:198 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:313 -msgid "Running" -msgstr "è¿è¡Œä¸" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:212 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:327 -msgid "Stopped" -msgstr "å·²åœæ¢" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:219 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:334 -msgid "Start" -msgstr "å¯åŠ¨" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:234 -msgid "New server tunnel" -msgstr "新建æœåŠ¡å™¨éš§é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:236 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:367 -msgid "Standard" -msgstr "æ ‡å‡†" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:238 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:369 -msgid "Create" -msgstr "创建" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:240 -msgid "I2P Client Tunnels" -msgstr "I2P客户端隧é“" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:248 -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:274 -msgid "Interface" -msgstr "网络接å£" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:299 -msgid "Standby" -msgstr "ç‰å¾…" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:345 -msgid "Outproxy" -msgstr "出å£ä»£ç†" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:349 -msgid "Destination" -msgstr "ç›®æ ‡" - -#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:365 -msgid "New client tunnel" -msgstr "新建客户隧é“" +# I2P +# Copyright (C) 2009 The I2P Project +# This file is distributed under the same license as the i2ptunnel package. +# To contribute translations, see http://www.i2p2.de/newdevelopers +# foo <foo@bar>, 2009. +# +msgid "" +msgstr "" +"Project-Id-Version: I2P i2ptunnel\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2010-05-29 02:35+0000\n" +"PO-Revision-Date: 2010-05-29 10:57+0800\n" +"Last-Translator: walking <walking@mail.i2p>\n" +"Language-Team: foo <foo@bar>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Chinese\n" + +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:493 +#, java-format +msgid "To visit the destination in your host database, click <a href=\"{0}\">here</a>. To visit the conflicting addresshelper destination, click <a href=\"{1}\">here</a>." +msgstr "域å冲çªï¼šè¦è®¿é—®æ‚¨æœ¬åœ°ã€åœ°å€ç°¿ã€‘ä¸è®¾ç½®çš„ç›®æ ‡ä¸»æœº(相当与IP),请点击<a href=\"{0}\">这里</a>。è¦è®¿é—®ã€åœ°å€åŠ©æ‰‹ã€‘è¿”å›žçš„ç›®æ ‡ä¸»æœºè¯·ç‚¹<a href=\"{1}\">这里</a>。" + +#: ../java/src/net/i2p/i2ptunnel/I2PTunnelHTTPClient.java:904 +msgid "Click a link below to look for an address helper by using a \"jump\" service:" +msgstr "请点击下é¢çš„链接通过ã€è·³è½¬(Jump)】æœåŠ¡æ供的ã€åœ°å€åŠ©æ‰‹ã€‘链接跳转至域å对应的主机:" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:369 +msgid "New Tunnel" +msgstr "新建隧é“" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:389 +msgid "Standard client" +msgstr "æ ‡å‡†å®¢æˆ·ç«¯" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:390 +msgid "HTTP client" +msgstr "HTTP 客户端" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:391 +msgid "IRC client" +msgstr "IRC 客户端" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:392 +msgid "Standard server" +msgstr "æ ‡å‡†æœåŠ¡å™¨" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:393 +msgid "HTTP server" +msgstr "HTTP æœåŠ¡å™¨" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:394 +msgid "SOCKS 4/4a/5 proxy" +msgstr "SOCKS4/4A/5 代ç†" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:395 +msgid "SOCKS IRC proxy" +msgstr "SOCKS IRC 代ç†" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:396 +msgid "CONNECT/SSL/HTTPS proxy" +msgstr "CONNECT/SSL/HTTPS 代ç†" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:397 +msgid "IRC server" +msgstr "IRC æœåŠ¡å™¨" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:398 +msgid "Streamr client" +msgstr "Streamr 客户端" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:399 +msgid "Streamr server" +msgstr "Streamr æœåŠ¡å™¨" + +#: ../java/src/net/i2p/i2ptunnel/web/IndexBean.java:400 +msgid "HTTP bidir" +msgstr "åŒå‘http" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:73 +msgid "I2P Tunnel Manager - Edit Client Tunnel" +msgstr "I2P 隧é“管ç†å™¨ - 编辑客户端隧é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:93 +msgid "Edit proxy settings" +msgstr "编辑代ç†è®¾ç½®" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:101 +msgid "New proxy settings" +msgstr "新建代ç†è®¾ç½®" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:112 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:112 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:107 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:121 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:242 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:257 +msgid "Name" +msgstr "å称" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:116 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:116 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:246 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:270 +msgid "Type" +msgstr "类型" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:120 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:120 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:226 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:358 +msgid "Description" +msgstr "æè¿°" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:126 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:136 +msgid "Target" +msgstr "ç›®æ ‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:130 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:132 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:167 +msgid "Access Point" +msgstr "接入点" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:137 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:179 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:207 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:157 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:172 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:228 +msgid "required" +msgstr "å¿…è¦" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:150 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:142 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:183 +msgid "Reachable by" +msgstr "访问地å€" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:162 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:195 +msgid "Locally (127.0.0.1)" +msgstr "本地(127.0.0.1)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:166 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:199 +msgid "Everyone (0.0.0.0)" +msgstr "任何人(0.0.0.0)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:170 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:203 +msgid "LAN Hosts (Please specify your LAN address)" +msgstr "局域网(请指定LAN地å€)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:186 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:205 +msgid "Other" +msgstr "其他" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:195 +msgid "Outproxies" +msgstr "出å£ä»£ç†" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:202 +msgid "Tunnel Destination" +msgstr "隧é“ç›®æ ‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:214 +msgid "name or destination" +msgstr "å称或æè¿°" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:220 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:237 +msgid "Profile" +msgstr "连接类型" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:227 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:244 +msgid "interactive connection" +msgstr "速度连接" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:231 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:248 +msgid "bulk connection (downloads/websites/BT)" +msgstr "效率连接(下载/WEB/BT)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:233 +msgid "Delay Connect" +msgstr "连接延迟æ–å¼€" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:237 +msgid "for request/response connections" +msgstr "å•è¯·æ±‚/å“应连接" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:239 +msgid "Shared Client" +msgstr "共享客户端" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:243 +msgid "(Share tunnels with other clients and irc/httpclients? Change requires restart of client proxy)" +msgstr "(与其他客户端例如IRC/HTTP共享隧é“?修改需è¦é‡æ–°å¯åŠ¨)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:247 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:124 +msgid "Auto Start" +msgstr "自动å¯åŠ¨" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:251 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:128 +msgid "(Check the Box for 'YES')" +msgstr "(选ä¸è¡¨ç¤º\"是\")" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:253 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:266 +msgid "Advanced networking options" +msgstr "高级网络设置" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:255 +msgid "(NOTE: when this client proxy is configured to share tunnels, then these options are for all the shared proxy clients!)" +msgstr "(注æ„:æ¤å®¢æˆ·ä»£ç†è¢«è®¾ç½®ä½¿ç”¨å…±äº«éš§é“时,这些设置将影å“所有使用共享隧é“的客户端!)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:257 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:268 +msgid "Tunnel Options" +msgstr "隧é“选项" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:259 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:270 +msgid "Length" +msgstr "长度" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:266 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:277 +msgid "0 hop tunnel (low anonymity, low latency)" +msgstr "ç›´è¿ž(匿åæ€§æ— ,延迟低)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:270 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:281 +msgid "1 hop tunnel (medium anonymity, medium latency)" +msgstr "隧é“跳点x1(匿å性ä¸,延迟ä¸)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:274 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:285 +msgid "2 hop tunnel (high anonymity, high latency)" +msgstr "隧é“跳点x2(匿å性高,延迟高)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:278 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:289 +msgid "3 hop tunnel (very high anonymity, poor performance)" +msgstr "隧é“跳点x3(匿å性优,å½±å“性能)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:287 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:298 +msgid "hop tunnel (very poor performance)" +msgstr "跳点隧é“(严é‡å½±å“性能)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:303 +msgid "Variance" +msgstr "éšæœºå˜åŒ–" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:299 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:310 +msgid "0 hop variance (no randomisation, consistant performance)" +msgstr "隧é“长度æ’定(éšæœºæ€§æ— ,性能稳定)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:303 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:314 +msgid "+ 0-1 hop variance (medium additive randomisation, subtractive performance)" +msgstr "隧é“长度+ 0-1(éšæœºæ€§ä¸,å½±å“性能)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:307 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:318 +msgid "+ 0-2 hop variance (high additive randomisation, subtractive performance)" +msgstr "隧é“长度+ 0-2(éšæœºæ€§é«˜,å½±å“性能)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:311 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:322 +msgid "+/- 0-1 hop variance (standard randomisation, standard performance)" +msgstr "隧é“长度+/- 0-1(éšæœºæ€§æ ‡å‡†,æ£å¸¸æ€§èƒ½)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:315 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:326 +msgid "+/- 0-2 hop variance (not recommended)" +msgstr "隧é“程度+/- 0-2(ä¸æŽ¨è)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:327 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:338 +msgid "hop variance" +msgstr "节点数é‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:332 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:343 +msgid "Count" +msgstr "计数" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:339 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:350 +msgid "1 inbound, 1 outbound tunnel (low bandwidth usage, less reliability)" +msgstr "出/入站隧é“x1(带宽低,低å¯é 性)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:343 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:354 +msgid "2 inbound, 2 outbound tunnels (standard bandwidth usage, standard reliability)" +msgstr "出/入站隧é“x2(å¸¦å®½æ ‡å‡†,æ ‡å‡†ç¨³å®šæ€§)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:347 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:358 +msgid "3 inbound, 3 outbound tunnels (higher bandwidth usage, higher reliability)" +msgstr "出/入站隧é“x3(带宽高,高稳定性)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:367 +msgid "tunnels" +msgstr "隧é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:361 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:372 +msgid "Backup Count" +msgstr "备用数é‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:368 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:379 +msgid "0 backup tunnels (0 redundancy, no added resource usage)" +msgstr "æ— å¤‡ç”¨éš§é“(æ— å†—ä½™,ä¸å¢žåŠ 资æºå 用)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:372 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:383 +msgid "1 backup tunnel each direction (low redundancy, low resource usage)" +msgstr "备用隧é“对x1 (低冗余,低资æºå 用)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:376 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:387 +msgid "2 backup tunnels each direction (medium redundancy, medium resource usage)" +msgstr "备用隧é“对x2 (ä¸å†—ä½™,ä¸èµ„æºå 用)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:380 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:391 +msgid "3 backup tunnels each direction (high redundancy, high resource usage)" +msgstr "备用隧é“对x3 (高冗余,高资æºå 用)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:389 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:400 +msgid "backup tunnels" +msgstr "备用隧é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:394 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:405 +msgid "I2CP Options" +msgstr "I2CP选项" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:396 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:146 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:407 +msgid "Host" +msgstr "主机" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:400 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:152 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:411 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:244 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:266 +msgid "Port" +msgstr "端å£" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:406 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:443 +msgid "Reduce tunnel quantity when idle" +msgstr "空闲时缩å‡éš§é“æ•°é‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:408 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:422 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:430 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:442 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:452 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:417 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:433 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:445 +msgid "Enable" +msgstr "å¯ç”¨" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:412 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:449 +msgid "Reduced tunnel count" +msgstr "削å‡åŽçš„隧é“æ•°é‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:416 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:436 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:453 +msgid "Idle minutes" +msgstr "空闲时间(分钟)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:420 +msgid "Close tunnels when idle" +msgstr "空闲时关é—隧é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:426 +msgid "New Keys on Reopen" +msgstr "é‡æ–°æ‰“开隧é“时使用新密钥" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:434 +msgid "Disable" +msgstr "ç¦ç”¨" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:440 +msgid "Delay tunnel open until required" +msgstr "仅在请求时打开" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:450 +msgid "Persistent private key" +msgstr "永久ç§æœ‰å¯†é’¥" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:456 +msgid "File" +msgstr "文件" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:460 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:252 +msgid "Local destination" +msgstr "æœ¬åœ°ç›®æ ‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:464 +msgid "(if known)" +msgstr "(如果已知)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:468 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:489 +msgid "Custom options" +msgstr "自定义选项" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:472 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:493 +msgid "NOTE: If tunnel is currently running, most changes will not take effect until tunnel is stopped and restarted." +msgstr "注æ„:如果当å‰éš§é“å·²ç»å¯åŠ¨ï¼Œè®¾ç½®éœ€è¦ã€åœæ¢ã€‘并é‡æ–°ã€å¯åŠ¨ã€‘相应隧é“åŽæ‰èƒ½ç”Ÿæ•ˆã€‚" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:474 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:495 +msgid "Cancel" +msgstr "å–消" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:478 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:499 +msgid "Delete" +msgstr "åˆ é™¤" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editClient_jsp.java:480 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:501 +msgid "Save" +msgstr "ä¿å˜" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:73 +msgid "I2P Tunnel Manager - Edit Server Tunnel" +msgstr "I2P隧é“管ç†å™¨ - 编辑æœåŠ¡å™¨éš§é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:93 +msgid "Edit server settings" +msgstr "æœåŠ¡å™¨éš§é“设置" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:101 +msgid "New server settings" +msgstr "新建æœåŠ¡å™¨è®¾ç½®" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:214 +msgid "Website name" +msgstr "网站å称" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:218 +msgid "(leave blank for outproxies)" +msgstr "(出å£ä»£ç†è¿™é‡Œè¯·ç½®ç©º)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:223 +msgid "Private key file" +msgstr "ç§é’¥æ–‡ä»¶" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:262 +msgid "Add to local addressbook" +msgstr "æ·»åŠ è‡³æœ¬åœ°åœ°å€ç°¿" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:415 +msgid "Encrypt Leaseset" +msgstr "åŠ å¯†èµé›†" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:421 +msgid "Encryption Key" +msgstr "åŠ å¯†å¯†é’¥" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:425 +msgid "Generate New Key" +msgstr "生æˆæ–°å¯†é’¥" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:427 +msgid "Generate" +msgstr "生æˆ" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:429 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:487 +msgid "(Tunnel must be stopped first)" +msgstr "(必须先åœæ¢éš§é“)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:431 +msgid "Restricted Access List" +msgstr "é™åˆ¶è®¿é—®åˆ—表" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:437 +msgid "Access List" +msgstr "访问列表" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:441 +msgid "(Restrict to these clients only)" +msgstr "(ä»…å…许这些客户访问)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:457 +msgid "New Certificate type" +msgstr "新建è¯ä¹¦ç±»åž‹" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:459 +msgid "None" +msgstr "æ— " + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:463 +msgid "Hashcash (effort)" +msgstr "Hashcash (强度)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:469 +msgid "Hashcash Calc Time" +msgstr "Hashcash 计算时间" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:471 +msgid "Estimate" +msgstr "ä¼°ç®—" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:473 +msgid "Hidden" +msgstr "éšè—" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:477 +msgid "Signed (signed by)" +msgstr "ç¾å(ç¾å者)" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:483 +msgid "Modify Certificate" +msgstr "修改è¯ä¹¦" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/editServer_jsp.java:485 +msgid "Modify" +msgstr "修改" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:71 +msgid "I2P Tunnel Manager - List" +msgstr "I2P隧é“管ç†å™¨ - 列表" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:83 +msgid "Status Messages" +msgstr "状æ€ä¿¡æ¯" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:87 +msgid "Refresh" +msgstr "刷新" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:91 +msgid "Stop All" +msgstr "全部åœæ¢" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:95 +msgid "Start All" +msgstr "全部å¯åŠ¨" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:99 +msgid "Restart All" +msgstr "全部é‡å¯" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:103 +msgid "Reload Config" +msgstr "é‡æ–°è½½å…¥è®¾ç½®" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:105 +msgid "I2P Server Tunnels" +msgstr "I2PæœåŠ¡ç«¯éš§é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:109 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:130 +msgid "Points at" +msgstr "指å‘" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:111 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:153 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:157 +msgid "Preview" +msgstr "预览" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:113 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:177 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:250 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:278 +msgid "Status" +msgstr "状æ€" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:163 +msgid "Base32 Address" +msgstr "Base32地å€" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:171 +msgid "No Preview" +msgstr "æ— é¢„è§ˆ" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:184 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:285 +msgid "Starting..." +msgstr "æ£åœ¨å¯åŠ¨..." + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:191 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:205 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:292 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:306 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:320 +msgid "Stop" +msgstr "åœæ¢" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:198 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:313 +msgid "Running" +msgstr "è¿è¡Œä¸" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:212 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:327 +msgid "Stopped" +msgstr "å·²åœæ¢" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:219 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:334 +msgid "Start" +msgstr "å¯åŠ¨" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:234 +msgid "New server tunnel" +msgstr "新建æœåŠ¡å™¨éš§é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:236 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:368 +msgid "Standard" +msgstr "æ ‡å‡†" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:238 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:370 +msgid "Create" +msgstr "创建" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:240 +msgid "I2P Client Tunnels" +msgstr "I2P客户端隧é“" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:248 +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:274 +msgid "Interface" +msgstr "网络接å£" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:299 +msgid "Standby" +msgstr "ç‰å¾…" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:346 +msgid "Outproxy" +msgstr "出å£ä»£ç†" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:350 +msgid "Destination" +msgstr "ç›®æ ‡" + +#: ../jsp/WEB-INF/classes/net/i2p/i2ptunnel/jsp/index_jsp.java:366 +msgid "New client tunnel" +msgstr "新建客户隧é“" + +#~ msgid "Unimplemented" +#~ msgstr "尚未实现" + diff --git a/apps/routerconsole/java/bundle-messages.sh b/apps/routerconsole/java/bundle-messages.sh index c72b33ab738698d720ddea1c4c013491d29d5c08..548f7f768a7b08c5b14fe4e787f5fad36fbeb150 100755 --- a/apps/routerconsole/java/bundle-messages.sh +++ b/apps/routerconsole/java/bundle-messages.sh @@ -82,7 +82,7 @@ do # To start a new translation, copy the header from an old translation to the new .po file, # then ant distclean updater. find $JPATHS -name *.java > $TMPFILE - xgettext -f $TMPFILE -F -L java --from-code=UTF-8 \ + xgettext -f $TMPFILE -F -L java --from-code=UTF-8 --add-comments\ --keyword=_ --keyword=_x --keyword=intl._ --keyword=intl.title \ --keyword=handler._ --keyword=formhandler._ \ --keyword=net.i2p.router.web.Messages.getString \ diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHandler.java index 896b8b200fa73396124872449570e96cef8f52c8..541f6d73cc1e837623a048a0e36dbdf5953b81c5 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigNetHandler.java @@ -145,7 +145,10 @@ public class ConfigNetHandler extends FormHandler { } _context.router().setConfigSetting(UDPTransport.PROP_SOURCES, _udpAutoIP); // Todo: Catch local IPs right here rather than complaining later - _context.router().setConfigSetting(UDPTransport.PROP_EXTERNAL_HOST, uhost); + if (uhost.length() > 0) + _context.router().setConfigSetting(UDPTransport.PROP_EXTERNAL_HOST, uhost); + else + _context.router().removeConfigSetting(UDPTransport.PROP_EXTERNAL_HOST); if ((!oldUdp.equals(_udpAutoIP)) || (!oldUHost.equals(uhost))) { addFormNotice(_("Updating IP address")); restartRequired = true; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java index cea2a11b2fe851eeddf310d5b96a8e3434d72528..cc8e01bc057b27b41296999d2e5f4fccc232bb6d 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/ConfigUpdateHandler.java @@ -42,11 +42,15 @@ public class ConfigUpdateHandler extends FormHandler { public static final String PROP_ZIP_URL = "router.updateUnsignedURL"; public static final String PROP_UPDATE_URL = "router.updateURL"; + /** + * Changed as of release 0.7.14 from .sud to .su2 + * Update hosts must maintain both for several releases + */ public static final String DEFAULT_UPDATE_URL = - "http://echelon.i2p/i2p/i2pupdate.sud\r\n" + - "http://stats.i2p/i2p/i2pupdate.sud\r\n" + - "http://www.i2p2.i2p/_static/i2pupdate.sud\r\n" + - "http://update.postman.i2p/i2pupdate.sud" ; + "http://echelon.i2p/i2p/i2pupdate.su2\r\n" + + "http://stats.i2p/i2p/i2pupdate.su2\r\n" + + "http://www.i2p2.i2p/_static/i2pupdate.su2\r\n" + + "http://update.postman.i2p/i2pupdate.su2" ; public static final String PROP_TRUSTED_KEYS = "router.trustedUpdateKeys"; diff --git a/apps/routerconsole/java/src/net/i2p/router/web/GraphHelper.java b/apps/routerconsole/java/src/net/i2p/router/web/GraphHelper.java index 2d676bdacffc8cda2a6bf3e55aa877f88d674702..94dc08b98aebcedf84b978bcfcec757751dd00a8 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/GraphHelper.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/GraphHelper.java @@ -79,19 +79,21 @@ public class GraphHelper extends HelperBase { + "&width=" + (3 * _width) + "&height=" + (3 * _height) + "\" / target=\"_blank\">"); + String title = _("Combined bandwidth graph"); _out.write("<img class=\"statimage\" width=\"" + (_width + 83) + "\" height=\"" + (_height + 92) + "\" src=\"viewstat.jsp?stat=bw.combined" + "&periodCount=" + _periodCount + "&width=" + _width + "&height=" + (_height - 14) - + "\" alt=\"Combined bandwidth graph\" title=\"Combined bandwidth graph\"></a>\n"); + + "\" alt=\"" + title + "\" title=\"" + title + "\"></a>\n"); } for (Iterator iter = ordered.iterator(); iter.hasNext(); ) { SummaryListener lsnr = (SummaryListener)iter.next(); Rate r = lsnr.getRate(); - String title = r.getRateStat().getName() + " for " + DataHelper.formatDuration(_periodCount * r.getPeriod()); + // e.g. "statname for 60m" + String title = _("{0} for {1}", r.getRateStat().getName(), DataHelper.formatDuration(_periodCount * r.getPeriod())); _out.write("<a href=\"viewstat.jsp?stat=" + r.getRateStat().getName() + "&showEvents=" + _showEvents diff --git a/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java b/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java index 1d1d03d59239ef787a52017166f5e48d197d8102..802e059adf280f3daf6e9a7aa5f07ccc5dbd114e 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/HelperBase.java @@ -51,6 +51,11 @@ public abstract class HelperBase { return Messages.getString(s, o, _context); } + /** two params @since 0.7.14 */ + public String _(String s, Object o, Object o2) { + return Messages.getString(s, o, o2, _context); + } + /** translate (ngettext) @since 0.7.14 */ public String _(int n, String s, String p) { return Messages.getString(n, s, p, _context); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/Messages.java b/apps/routerconsole/java/src/net/i2p/router/web/Messages.java index 427ac9d8aefc78f1022dfa16332a6fc207d7bcb3..b50940fab5e72dabe98978e1b7797c935d2222ba 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/Messages.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/Messages.java @@ -30,6 +30,11 @@ public class Messages extends Translate { return Translate.getString(s, o, ctx, BUNDLE_NAME); } + /** two params @since 0.7.14 */ + public static String getString(String s, Object o, Object o2, I2PAppContext ctx) { + return Translate.getString(s, o, o2, ctx, BUNDLE_NAME); + } + /** translate (ngettext) @since 0.7.14 */ public static String getString(int n, String s, String p, I2PAppContext ctx) { return Translate.getString(n, s, p, ctx, BUNDLE_NAME); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java b/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java index 0bcaaf315ae62fe59acd4dd23bfc9db62871442b..72c93330e23d2d78d085556990bd8b84fa8504bc 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/StatSummarizer.java @@ -170,6 +170,7 @@ public class StatSummarizer implements Runnable { def.setTimePeriod(start/1000, 0); def.setLowerLimit(0d); def.setBaseValue(1024); + // Note to translators: all runtime zh translation disabled in this file, no font available in RRD String title = _("Bandwidth usage"); if (!hideTitle) def.setTitle(title); diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryRenderer.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryRenderer.java index 7ee62510bac4dff2dc28c8db28e2163a6f955a56..f26426edca2435b1f62c94280ea6f7a4da96e33c 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryRenderer.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryRenderer.java @@ -80,6 +80,7 @@ class SummaryRenderer { String title; String p = DataHelper.formatDuration(_listener.getRate().getPeriod()); if (showEvents) + // Note to translators: all runtime zh translation disabled in this file, no font available in RRD title = name + ' ' + _("events in {0}", p); else title = name + ' ' + _("averaged for {0}", p); @@ -96,7 +97,11 @@ class SummaryRenderer { } else { // include the average value plotName = dsNames[0]; - descr = _listener.getRate().getRateStat().getDescription(); + // The descriptions are not tagged in the createRateStat calls + // (there are over 500 of them) + // but the descriptions for the default graphs are tagged in + // Strings.java + descr = _(_listener.getRate().getRateStat().getDescription()); } def.datasource(plotName, path, plotName, "AVERAGE", "MEMORY"); def.area(plotName, Color.BLUE, descr + "@r"); diff --git a/apps/routerconsole/java/strings/Strings.java b/apps/routerconsole/java/strings/Strings.java index 8d37b3b7638be04d7ba8a3317c4197da1c0177d1..b71541c78b0cfeb488b6ef0cfcfa3c72185c6e95 100644 --- a/apps/routerconsole/java/strings/Strings.java +++ b/apps/routerconsole/java/strings/Strings.java @@ -96,5 +96,12 @@ class Dummy { _("itag1"); _("itag2"); + // Descriptions for the stats that are graphed by default + // There are over 500 stats currently defined, we aren't going to tag them all + _("Low-level bandwidth receive rate"); // bw.recvRate + _("Low-level bandwidth send rate"); // bw.sendRate + _("How many peers we are actively talking with"); // router.activePeers + // router.memoryUsed currently has the max size in the description so it can't be tagged + } } diff --git a/apps/routerconsole/locale/messages_ru.po b/apps/routerconsole/locale/messages_ru.po index 89ef1782baa999eab554f6b0d972669690d9296b..3d2a735ceb828dc8410869ea8d8916b0c92d9a1d 100644 --- a/apps/routerconsole/locale/messages_ru.po +++ b/apps/routerconsole/locale/messages_ru.po @@ -8,16 +8,15 @@ msgid "" msgstr "" "Project-Id-Version: I2P routerconsole\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-05-25 21:14+0000\n" -"PO-Revision-Date: 2010-05-26 04:20+0000\n" +"POT-Creation-Date: 2010-05-27 14:44+0000\n" +"PO-Revision-Date: 2010-05-27 16:56+0000\n" "Last-Translator: 4get <forget@mail.i2p>\n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Russian\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" -"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)\n" "X-Poedit-Bookmarks: 283,-1,-1,-1,-1,-1,-1,-1,-1,-1\n" #: ../../../router/java/src/net/i2p/router/Blocklist.java:126 @@ -2136,21 +2135,21 @@ msgstr "ÐаÑтройки зондирующих туннелей Ñохран msgid "Error saving the configuration (applied but not saved) - please see the error logs." msgstr "Ðе удалоÑÑŒ Ñохранить наÑтройки (применены, но не Ñохранены) — заглÑните в журнал ошибок" -#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:11 -msgid "hop" -msgstr "хоп" - -#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:12 -msgid "tunnel" -msgstr "туннель" - #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:14 -msgid "hops" -msgstr "хопа" +#, java-format +msgid "1 hop" +msgid_plural "{0} hops" +msgstr[0] "{0} хоп" +msgstr[1] "{0} хопа" +msgstr[2] "{0} хопов" #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:15 -msgid "tunnels" -msgstr "туннелей" +#, java-format +msgid "1 tunnel" +msgid_plural "{0} tunnels" +msgstr[0] "{0} туннель" +msgstr[1] "{0} туннелÑ" +msgstr[2] "{0} туннелей" #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:26 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:41 @@ -4976,6 +4975,10 @@ msgstr "обзор туннелей" msgid "I2P Tunnel Summary" msgstr "Обзор туннелей I2P" +#~ msgid "hops" +#~ msgstr "хопа" +#~ msgid "tunnels" +#~ msgstr "туннелей" #~ msgid "Tunnels in/out" #~ msgstr "Туннели (вх./иÑÑ….)" diff --git a/apps/routerconsole/locale/messages_zh.po b/apps/routerconsole/locale/messages_zh.po index f5fd269e66e46f97461b1e61521410026c40c7e7..1927595508b5837a75932222ffa1794884cd56d1 100644 --- a/apps/routerconsole/locale/messages_zh.po +++ b/apps/routerconsole/locale/messages_zh.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: I2P routerconsole\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-03-05 13:42+0000\n" +"POT-Creation-Date: 2010-04-29 14:53+0000\n" "PO-Revision-Date: \n" "Last-Translator: walking <walking@mail.i2p>\n" "Language-Team: \n" @@ -19,20 +19,20 @@ msgstr "" "X-Poedit-Country: CHINA\n" "Plural-Forms: nplurals=1; plural=0\n" -#: ../../../router/java/src/net/i2p/router/Blocklist.java:117 +#: ../../../router/java/src/net/i2p/router/Blocklist.java:126 #, java-format msgid "Banned by router hash: {0}" msgstr "按路由器 HASH å°æ€: {0}" -#: ../../../router/java/src/net/i2p/router/Blocklist.java:119 +#: ../../../router/java/src/net/i2p/router/Blocklist.java:128 msgid "Banned by router hash" msgstr "已按路由 HASH å°æ€" -#: ../../../router/java/src/net/i2p/router/Blocklist.java:664 +#: ../../../router/java/src/net/i2p/router/Blocklist.java:673 msgid "IP banned" msgstr "IPå°é”" -#: ../../../router/java/src/net/i2p/router/Blocklist.java:734 +#: ../../../router/java/src/net/i2p/router/Blocklist.java:743 #, java-format msgid "IP banned by blocklist.txt entry {0}" msgstr "按IP黑åå•blocklist.txtå°æ€çš„节点{0}" @@ -73,20 +73,374 @@ msgstr "接收共享隧é“" msgid "Rejecting tunnels" msgstr "æ‹’ç»å‚与共享隧é“" +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:49 +msgid "Ensure that nothing blocks outbound HTTP, check <a target=\"_top\" href=\"logs.jsp\">logs</a> and if nothing helps, read the <a target=\"_top\" href=\"http://www.i2p2.de/faq.html\">FAQ</a> about reseeding manually." +msgstr "请ä¿è¯HTTP通信没有å—阻,检查 <a target=\"_top\" href=\"logs.jsp\">日志</a> ,如果问题ä»æ— 法解决,请å‚ç…§ <a target=\"_top\" href=\"http://www.i2p2.de/faq.html\">FAQ</a> 进行手动补ç§ã€‚" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:81 +msgid "Reseeding" +msgstr "æ£åœ¨è¡¥ç§(引导网络å¯åŠ¨)..." + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:145 +msgid "Reseeding: fetching seed URL." +msgstr "æ£åœ¨è¡¥ç§:获å–è¡¥ç§è¿žæŽ¥..." + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:151 +msgid "Last reseed failed fully (failed reading seed URL)." +msgstr "上一次补ç§å°è¯•å¤±è´¥(读å–è¡¥ç§URL失败)。" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:177 +msgid "Last reseed failed fully (no routerInfo URLs at seed URL)." +msgstr "上一次补ç§å°è¯•å¤±è´¥(è¡¥ç§æœåŠ¡å™¨æœªè¿”回任何路由信æ¯URL)。" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:190 +#, java-format +msgid "Reseeding: fetching router info from seed URL ({0} successful, {1} errors)." +msgstr "æ£åœ¨è¡¥ç§:从补ç§æœåŠ¡å™¨èŽ·å–路由信æ¯({0}æˆåŠŸï¼Œ{1}失败)。" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:211 +#, java-format +msgid "Last reseed failed partly ({0}% of {1})." +msgstr "上一次补ç§éƒ¨åˆ†å¤±è´¥({0}%失败,共{1})" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:216 +#, java-format +msgid "Last reseed failed ({0}% of {1})." +msgstr "上一次补ç§å¤±è´¥({0}%失败,共{1})" + +#: ../../../router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java:226 +msgid "Last reseed failed fully (exception caught)." +msgstr "上一次补ç§å¤±è´¥(exception caught)." + +#: ../../../router/java/src/net/i2p/router/transport/CommSystemFacadeImpl.java:498 +msgid "NetDb entry" +msgstr "NetDb 项目" + #: ../../../router/java/src/net/i2p/router/transport/GetBidsJob.java:70 msgid "No transports (hidden or starting up?)" msgstr "æ— æ•°æ®ä¼ 输(éšèº«æˆ–æ£åœ¨å¯åŠ¨)" -#: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:456 +#: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:457 msgid "Unreachable on any transport" msgstr "å„ä¼ è¾“æ–¹å¼å‡ä¸å¯è¾¾" +#: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:503 +msgid "Router Transport Addresses" +msgstr "è·¯ç”±ä¼ è¾“åœ°å€" + +#: ../../../router/java/src/net/i2p/router/transport/TransportManager.java:509 +#, java-format +msgid "{0} is used for outbound connections only" +msgstr "{0} 仅被用作出站连接" + #: ../../../router/java/src/net/i2p/router/transport/ntcp/EstablishState.java:380 #: ../../../router/java/src/net/i2p/router/transport/ntcp/EstablishState.java:594 #, java-format msgid "Excessive clock skew: {0}" msgstr "严é‡æ—¶æ»ž:{0}" +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:691 +msgid "NTCP connections" +msgstr "NTCP连接" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:692 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1879 +msgid "Limit" +msgstr "é™åˆ¶" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:693 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1880 +msgid "Timeout" +msgstr "超时" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:696 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1883 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2146 +#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 +#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 +#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 +#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:81 +#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:187 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:235 +msgid "Peer" +msgstr "节点" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:697 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1887 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2147 +msgid "Dir" +msgstr "类别" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:698 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1888 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2155 +msgid "Idle" +msgstr "空闲" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:699 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1893 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2156 +#: ../java/src/net/i2p/router/web/TunnelRenderer.java:156 +msgid "In/Out" +msgstr "å…¥/出" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:700 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1898 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2157 +msgid "Up" +msgstr "寿命" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:701 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1900 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2158 +msgid "Skew" +msgstr "时滞" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:702 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1917 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2168 +msgid "TX" +msgstr "å‘包" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:703 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1919 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2169 +msgid "RX" +msgstr "接包" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:704 +msgid "Out Queue" +msgstr "出队" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:705 +msgid "Backlogged?" +msgstr "积压?" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:719 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1942 +#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:82 +msgid "Inbound" +msgstr "入站" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:721 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1944 +#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:82 +msgid "Outbound" +msgstr "出站" + +#: ../../../router/java/src/net/i2p/router/transport/ntcp/NTCPTransport.java:768 +msgid "peers" +msgstr "节点" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1878 +msgid "UDP connections" +msgstr "UDP连接" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1885 +msgid "Sort by peer hash" +msgstr "按节点Hash" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1887 +msgid "Direction/Introduction" +msgstr "æ–¹å‘" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1889 +msgid "Sort by idle inbound" +msgstr "出站空闲" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1891 +msgid "Sort by idle outbound" +msgstr "入站空闲" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1894 +msgid "Sort by inbound rate" +msgstr "按入站速度" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1896 +msgid "Sort by outbound rate" +msgstr "按出站速度" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1899 +msgid "Sort by connection uptime" +msgstr "按连接时间" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1901 +msgid "Sort by clock skew" +msgstr "按时滞" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1904 +msgid "Sort by congestion window" +msgstr "按拥塞窗å£" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1906 +msgid "Sort by slow start threshold" +msgstr "按å¯åŠ¨é—¨æ§›" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1909 +msgid "Sort by round trip time" +msgstr "按往返时间" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1910 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2165 +msgid "Dev" +msgstr "åå·®" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1911 +msgid "Sort by round trip time deviation" +msgstr "按RTTåå·®" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1913 +msgid "Sort by retransmission timeout" +msgstr "按é‡ä¼ 输超时时间" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1916 +msgid "Sort by outbound maximum transmit unit" +msgstr "æŒ‰å‡ºç«™æœ€å¤§ä¼ è¾“å•å…ƒ" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1918 +msgid "Sort by packets sent" +msgstr "按已å‘é€æ•°æ®åŒ…" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1920 +msgid "Sort by packets received" +msgstr "按已接收数æ®åŒ…" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1922 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2170 +msgid "Dup TX" +msgstr "é‡å‘包" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1923 +msgid "Sort by packets retransmitted" +msgstr "按é‡ä¼ æ•°æ®åŒ…" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1924 +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2171 +msgid "Dup RX" +msgstr "é‡æŽ¥åŒ…" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1925 +msgid "Sort by packets received more than once" +msgstr "按é‡å¤æ•°æ®åŒ…" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1946 +msgid "We offered to introduce them" +msgstr "ä¸ç»§å®¢æˆ·" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1948 +msgid "They offered to introduce us" +msgstr "ä¸ç»§" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1952 +msgid "Choked" +msgstr "" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1957 +msgid "fail(s)" +msgstr "失败" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:1962 +#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:162 +msgid "Banned" +msgstr "å·²å°é”" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2094 +msgid "SUMMARY" +msgstr "总结" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2145 +#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:257 +msgid "Definitions" +msgstr "定义" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2146 +msgid "The remote peer, identified by router hash" +msgstr "以路由Hash区分的远程节点" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2148 +msgid "Inbound connection" +msgstr "进站连接" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2150 +msgid "Outbound connection" +msgstr "出站连接" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2152 +msgid "They offered to introduce us (help other peers traverse our firewall)" +msgstr "对方节点为ä¸ç»§å¸®åŠ©æˆ‘方穿越防ç«å¢™" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2154 +msgid "We offered to introduce them (help other peers traverse their firewall)" +msgstr "我方为ä¸ç»§å¸®åŠ©å…¶ä»–节点穿越防ç«å¢™" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2155 +msgid "How long since a packet has been received / sent" +msgstr "最近一次数æ®ä¼ 输è·çŽ°åœ¨çš„时间" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2156 +msgid "The smoothed inbound / outbound transfer rate (KBytes per second)" +msgstr "è¿›/å‡ºç«™å¹³æ»‘ä¼ è¾“çŽ‡(Kbyte/s)" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2157 +msgid "How long ago this connection was established" +msgstr "连接建立时间" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2158 +msgid "The difference between the peer's clock and your own" +msgstr "节点与本地时钟间的时滞" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2159 +msgid "The congestion window, which is how many bytes can be sent without an acknowledgement" +msgstr "拥塞窗å£ï¼Œå³æ¯æ¬¡ç¡®è®¤å‰å¯å‘é€çš„å—节é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2160 +msgid "The number of sent messages awaiting acknowledgement" +msgstr "ç‰å¾…确认的已å‘é€æ•°æ®åŒ…æ•°é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2161 +msgid "The maximum number of concurrent messages to send" +msgstr "并å‘消æ¯çš„最大å‘é€é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2162 +msgid "The number of pending sends which exceed congestion window" +msgstr "超过拥塞窗å£çš„å¾…å‘é€æ•°é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2163 +msgid "The slow start threshold" +msgstr "æ…¢å¯åŠ¨é—¨æ§›" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2164 +msgid "The round trip time in milliseconds" +msgstr "往返时间å•ä½æ¯«ç§’" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2165 +msgid "The standard deviation of the round trip time in milliseconds" +msgstr "çŽ¯è¡Œæ—¶é—´çš„æ ‡å‡†å·®å•ä½æ¯«ç§’" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2166 +msgid "The retransmit timeout in milliseconds" +msgstr "é‡ä¼ 输超时时间å•ä½æ¯«ç§’" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2167 +msgid "Current maximum send packet size / estimated maximum receive packet size (bytes)" +msgstr "当å‰å‘é€æ•°æ®åŒ…的最大大å°/预计接收数æ®åŒ…的最大大å°(å—节)" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2168 +msgid "The total number of packets sent to the peer" +msgstr "å‘节点å‘é€çš„æ•°æ®åŒ…总é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2169 +msgid "The total number of packets received from the peer" +msgstr "从节点接收到数æ®åŒ…总é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2170 +msgid "The total number of packets retransmitted to the peer" +msgstr "å‘节点å‘é€çš„é‡å¤æ•°æ®åŒ…总é‡" + +#: ../../../router/java/src/net/i2p/router/transport/udp/UDPTransport.java:2171 +msgid "The total number of duplicate packets received from the peer" +msgstr "从节点接收到的é‡å¤æ•°æ®åŒ…总é‡" + #: ../../../router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java:145 msgid "Dropping tunnel requests: Too slow" msgstr "忽略共享请求:速度太慢" @@ -1058,165 +1412,152 @@ msgstr "设置ä¿å˜æˆåŠŸ" msgid "Error saving the configuration (applied but not saved) - please see the error logs" msgstr "é…ç½®ä¿å˜å‡ºé”™(已应用但未ä¿å˜) - å‚è§é”™è¯¯æ—¥å¿—" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:31 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:332 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:34 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:334 msgid "Save Client Configuration" msgstr "ä¿å˜å®¢æˆ·ç¨‹åºè®¾ç½®" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:35 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:344 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:38 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:346 msgid "Save WebApp Configuration" msgstr "ä¿å˜ WebApp 设置" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:39 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:354 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:42 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:356 msgid "Save Plugin Configuration" msgstr "ä¿å˜æ’件é…ç½®" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:43 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:360 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:46 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:362 msgid "Install Plugin" msgstr "安装æ’件" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:79 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:82 #, java-format msgid "Deleted plugin {0}" msgstr "åˆ é™¤æ’件 {0}" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:81 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:84 #, java-format msgid "Error deleting plugin {0}" msgstr "åˆ é™¤æ’件 {0} æ—¶å‘生错误" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:93 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:96 #, java-format msgid "Stopped plugin {0}" msgstr "æ’件 {0} å·²åœç”¨" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:95 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:98 #, java-format msgid "Error stopping plugin {0}" msgstr "åœç”¨æ’件 {0} æ—¶å‘生错误" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:116 -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:187 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:119 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:189 msgid "Start" msgstr "å¯åŠ¨" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:135 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:138 #: ../java/src/net/i2p/router/web/ConfigKeyringHandler.java:49 +#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:61 msgid "Unsupported" msgstr "未支æŒçš„" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:150 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:166 -msgid "desc" -msgstr "" - -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:161 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:176 -msgid "name" -msgstr "å称" - -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:181 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:184 msgid "New client added" msgstr "æ–°å®¢æˆ·ç«¯æ·»åŠ å®Œæ¯•" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:185 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:188 msgid "Client configuration saved successfully - restart required to take effect." msgstr "客户程åºè®¾ç½®ä¿å˜æˆåŠŸ - 程åºé‡å¯åŽç”Ÿæ•ˆ" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:199 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:210 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:202 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:213 msgid "Bad client index." msgstr "客户程åºç´¢å¼•æ— 效" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:204 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:215 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:207 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:218 #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:38 #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:374 #: ../java/src/net/i2p/router/web/SummaryHelper.java:389 msgid "Client" msgstr "客户" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:204 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:263 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:207 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:266 msgid "started" msgstr "å·²å¯åŠ¨" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:215 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:218 msgid "deleted" msgstr "å·²åˆ é™¤" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:232 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:235 msgid "WebApp configuration saved." msgstr "WebApp 设置已ä¿å˜" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:248 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:251 msgid "Plugin configuration saved." msgstr "æ’件é…置已ä¿å˜" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:263 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:266 #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:58 msgid "WebApp" msgstr "Web程åº" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:265 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:268 msgid "Failed to start" msgstr "å¯åŠ¨å¤±è´¥" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:270 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:273 msgid "Failed to find server." msgstr "æœåŠ¡å™¨æˆ–æœåŠ¡ç¨‹åºæŸ¥æ‰¾å¤±è´¥ã€‚" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:274 -msgid "pluginURL" -msgstr "" - -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:276 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:279 msgid "No plugin URL specified." msgstr "未指定æ’件链接" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:286 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:289 #, java-format msgid "No update URL specified for {0}" msgstr "{0} 未指定更新链接" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:294 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:299 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:312 -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:317 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:297 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:302 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:315 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:320 msgid "Plugin or update download already in progress." msgstr "æ’件/更新包的下载æ£åœ¨è¿›è¡Œ" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:303 -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:100 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:306 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:117 #, java-format msgid "Downloading plugin from {0}" msgstr "æ£åœ¨ä»Ž {0} 下载æ’件" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:321 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:324 #, java-format msgid "Checking plugin {0} for updates" msgstr "æ£åœ¨æ£€æŸ¥æ’件 {0} 是å¦å˜åœ¨æ›´æ–°" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:331 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:334 #, java-format msgid "Started plugin {0}" msgstr "æ’件 {0} å·²è¿è¡Œ" -#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:333 +#: ../java/src/net/i2p/router/web/ConfigClientsHandler.java:336 #, java-format msgid "Error starting plugin {0}" msgstr "æ’件å¯åŠ¨é”™è¯¯ {0}" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:21 -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:190 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:192 msgid "Edit" msgstr "编辑" #: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:30 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:328 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:330 msgid "Add Client" msgstr "æ·»åŠ å®¢æˆ·ç«¯" @@ -1276,34 +1617,34 @@ msgstr "网站" msgid "Update link" msgstr "更新链接" -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:192 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:194 msgid "Stop" msgstr "åœæ¢" -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:194 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:196 #: ../java/src/net/i2p/router/web/ConfigUpdateHandler.java:58 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:310 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:312 msgid "Check for updates" msgstr "检查更新" -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:195 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:197 #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:18 #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:213 #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:220 msgid "Update" msgstr "æ›´æ–°" -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:200 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:202 #, java-format msgid "Are you sure you want to delete {0}?" msgstr "您确定è¦åˆ 除 {0} ?" -#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:202 +#: ../java/src/net/i2p/router/web/ConfigClientsHelper.java:204 msgid "Delete" msgstr "åˆ é™¤" #: ../java/src/net/i2p/router/web/ConfigKeyringHandler.java:18 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:320 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:324 msgid "Add key" msgstr "æ·»åŠ å¯†é’¥" @@ -1417,7 +1758,7 @@ msgid "Peers" msgstr "节点" #: ../java/src/net/i2p/router/web/ConfigNavHelper.java:19 -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:294 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:298 #: ../java/src/net/i2p/router/web/SummaryBarRenderer.java:132 msgid "Stats" msgstr "统计" @@ -1429,11 +1770,12 @@ msgstr "高级" #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:48 #: ../java/src/net/i2p/router/web/ConfigNetHandler.java:261 #: ../java/src/net/i2p/router/web/ConfigTunnelsHandler.java:35 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:357 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:502 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:333 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:373 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:341 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:359 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:515 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:305 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:335 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:375 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:343 msgid "Save changes" msgstr "ä¿å˜ä¿®æ”¹" @@ -1509,11 +1851,11 @@ msgstr "æ£åœ¨èŽ·å–SSUä¸ä»‹" msgid "Gracefully restarting I2P to change published router address" msgstr "æ£åœ¨å¹³æ»‘é‡å¯è·¯ç”±é‡æ–°å‘布路由地å€" -#: ../java/src/net/i2p/router/web/ConfigNetHandler.java:308 +#: ../java/src/net/i2p/router/web/ConfigNetHandler.java:311 msgid "Updating bandwidth share percentage" msgstr "æ£åœ¨æ›´æ–°å…±äº«å¸¦å®½æ¯”例" -#: ../java/src/net/i2p/router/web/ConfigNetHandler.java:378 +#: ../java/src/net/i2p/router/web/ConfigNetHandler.java:394 msgid "Updated bandwidth limits" msgstr "带宽é™åˆ¶æ›´æ–°å®Œæ¯•" @@ -1539,15 +1881,6 @@ msgstr "å°æ€èŠ‚点直到é‡å¯" msgid "Manually banned via {0}" msgstr "通过{0}手动å°é”" -#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 -#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:33 -#: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:35 -#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:81 -#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:187 -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:235 -msgid "Peer" -msgstr "节点" - #: ../java/src/net/i2p/router/web/ConfigPeerHandler.java:24 msgid "banned until restart" msgstr "å·²å°é”直到é‡å¯" @@ -1828,14 +2161,6 @@ msgstr "性能è¦å‘Š - 设置ä¸åŒ…括长隧é“" msgid "PERFORMANCE WARNING - Settings include high tunnel quantities." msgstr "性能è¦å‘Š - 设置ä¸åŒ…括大é‡éš§é“" -#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:82 -msgid "Inbound" -msgstr "入站" - -#: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:82 -msgid "Outbound" -msgstr "出站" - #: ../java/src/net/i2p/router/web/ConfigTunnelsHelper.java:87 msgid "Length" msgstr "长度" @@ -1961,6 +2286,10 @@ msgstr "仅下载并验è¯" msgid "Download, verify, and restart" msgstr "仅下载ã€éªŒè¯å¹¶é‡å¯" +#: ../java/src/net/i2p/router/web/FormHandler.java:163 +msgid "Invalid form submission, probably because you used the 'back' or 'reload' button on your browser. Please resubmit." +msgstr "表å•æäº¤æ— æ•ˆï¼Œå¯èƒ½çš„åŽŸå› æ˜¯æ‚¨ä½¿ç”¨äº†â€œåŽé€€â€æˆ–“刷新â€æŒ‰é’®ã€‚请é‡æ–°æ交。" + #: ../java/src/net/i2p/router/web/GraphHelper.java:128 msgid "Configure Graph Display" msgstr "图表显示设置" @@ -1978,7 +2307,7 @@ msgid "Plot averages" msgstr "事件å‡å€¼" #: ../java/src/net/i2p/router/web/GraphHelper.java:132 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:405 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:416 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:332 msgid "or" msgstr "或" @@ -2147,7 +2476,7 @@ msgstr "完整项" #: ../java/src/net/i2p/router/web/NetDbRenderer.java:267 #: ../java/src/net/i2p/router/web/SummaryHelper.java:110 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:589 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:600 msgid "Hidden" msgstr "éšèº«" @@ -2170,27 +2499,31 @@ msgstr "å‘布" msgid "Address(es)" msgstr "地å€" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:309 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:289 +msgid "cost" +msgstr "" + +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:313 msgid "Hidden or starting up" msgstr "éšèº«æˆ–æ£åœ¨å¯åŠ¨" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:309 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:313 msgid "SSU" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:309 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:313 msgid "SSU with introducers" msgstr "使用ä¸ä»‹çš„SSU连接" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:310 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:314 msgid "NTCP" msgstr "" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:310 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:314 msgid "NTCP and SSU" msgstr "NTCP 与 SSU" -#: ../java/src/net/i2p/router/web/NetDbRenderer.java:310 +#: ../java/src/net/i2p/router/web/NetDbRenderer.java:314 msgid "NTCP and SSU with introducers" msgstr "使用ä¸ä»‹çš„NTCP与SSU连接" @@ -2204,161 +2537,161 @@ msgstr "新闻更新于{0}å‰" msgid "News last checked {0} ago." msgstr "最近一次查收新闻在{0}å‰" -#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:65 +#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:77 #, java-format msgid "Cannot check, plugin {0} is not installed" msgstr "æ— æ³•ç¡®å®šç‰ˆæœ¬,æ’件 {0} 安装失败" -#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:102 +#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:129 #, java-format msgid "Checking for update of plugin {0}" msgstr "æ£åœ¨ä¸ºæ’件 {0} 检查更新" -#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:125 +#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:153 #, java-format msgid "New plugin version {0} is available" msgstr "æ–°æ’件版本为 {0}" -#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:127 +#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:155 #, java-format msgid "No new version is available for plugin {0}" msgstr "æ’件 {0} 有更新" -#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:134 +#: ../java/src/net/i2p/router/web/PluginUpdateChecker.java:164 #, java-format msgid "Update check failed for plugin {0}" msgstr "æ’件 {0} 更新检测失败" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:121 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:138 msgid "Downloading plugin" msgstr "æ£åœ¨ä¸‹è½½æ’件" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:128 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:145 #: ../java/src/net/i2p/router/web/UpdateHandler.java:179 #, java-format msgid "{0}B transferred" msgstr "å·²ä¼ è¾“ {0}B" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:134 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:151 msgid "Plugin downloaded" msgstr "æ’件下载完æˆ" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:139 -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:326 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:156 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:343 #, java-format msgid "Cannot create plugin directory {0}" msgstr "æ— æ³•åˆ›å»ºæ’件目录 {0}" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:148 -#: ../java/src/net/i2p/router/web/UpdateHandler.java:219 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:165 +#: ../java/src/net/i2p/router/web/UpdateHandler.java:220 #, java-format msgid "from {0}" msgstr "自 {0}" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:158 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:175 #, java-format msgid "Plugin from {0} is corrupt" msgstr "ç”± {0} 获å–çš„æ’件已æŸå。" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:169 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:186 #, java-format msgid "Plugin from {0} does not contain the required configuration file" msgstr "ç”± {0} 获å–çš„æ’件缺少必è¦çš„é…置文件" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:182 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:199 #, java-format msgid "Plugin from {0} contains an invalid key" msgstr "ç”± {0} 获å–çš„æ’件ç¾åå¯†é’¥æ— æ•ˆ" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:201 -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:210 -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:219 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:218 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:227 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:236 #, java-format msgid "Plugin signature verification of {0} failed" msgstr "æ’件 {0} çš„ç¾å验è¯å¤±è´¥ã€‚" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:234 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:251 #, java-format msgid "Plugin from {0} has invalid name or version" msgstr "从 {0} 获å–çš„æ’件缺少有效的å称或版本" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:239 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:256 #, java-format msgid "Plugin {0} has mismatched versions" msgstr "æ’件 {0} 的内部版本ä¸ç¬¦ã€‚" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:247 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:264 #, java-format msgid "This plugin requires I2P version {0} or higher" msgstr "æ’件需è¦I2P版本 {0} 或更高" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:255 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:272 #, java-format msgid "This plugin requires Java version {0} or higher" msgstr "æ’ä»¶éœ€è¦ Java 版本 {0} 或更高" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:263 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:280 msgid "Downloaded plugin is for new installs only, but the plugin is already installed" msgstr "所下æ’件包仅用于全新安装,但您已ç»å®‰è£…过该æ’件" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:275 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:292 msgid "Installed plugin does not contain the required configuration file" msgstr "已安装æ’件缺少所需的é…置文件" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:283 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:300 msgid "Signature of downloaded plugin does not match installed plugin" msgstr "所下æ’件的ç¾å(人)与所安装æ’件的ç¾åä¸ç¬¦" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:290 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:307 #, java-format msgid "Downloaded plugin version {0} is not newer than installed plugin" msgstr "所下æ’件版本 {0} 没有已安装æ’件的版本新" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:297 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:314 #, java-format msgid "Plugin update requires installed plugin version {0} or higher" msgstr "æ’件更新包需è¦å®‰è£…æ’件的版本为 {0} 或更高" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:304 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:321 #, java-format msgid "Plugin update requires installed plugin version {0} or lower" msgstr "æ’件更新包需è¦å®‰è£…æ’件的版本ä¸é«˜äºŽ {0}" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:321 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:338 msgid "Plugin is for upgrades only, but the plugin is not installed" msgstr "æ’件更新包包找ä¸åˆ°å¯¹åº”的原版æ’件" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:334 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:351 #, java-format msgid "Failed to install plugin in {0}" msgstr "æ— æ³•å°†æ’件安装至目录{0}" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:341 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:358 #, java-format msgid "Plugin {0} installed, router restart required" msgstr "æ’件 {0} 已安装,é‡å¯I2PåŽç”Ÿæ•ˆ" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:343 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:360 #, java-format msgid "Plugin {0} installed" msgstr "æ’件 {0} 已安装" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:352 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:369 #, java-format msgid "Plugin {0} installed and started" msgstr "æ’件 {0} 已安装并å¯åŠ¨" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:354 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:371 #, java-format msgid "Plugin {0} installed but failed to start, check logs" msgstr "æ’件 {0} 已安装但å¯åŠ¨å¤±è´¥ï¼Œè¯·æ£€æŸ¥æ—¥å¿—。" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:356 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:373 #, java-format msgid "Plugin {0} installed but failed to start" msgstr "æ’件 {0} 已安装但å¯åŠ¨å¤±è´¥" -#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:366 +#: ../java/src/net/i2p/router/web/PluginUpdateHandler.java:383 #, java-format msgid "Failed to download plugin from {0}" msgstr "é‡ {0} 下载æ’件失败" @@ -2429,10 +2762,6 @@ msgstr "失败" msgid "Integrated" msgstr "已整åˆèŠ‚点" -#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:162 -msgid "Banned" -msgstr "å·²å°é”" - #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:164 msgid "Unreachable" msgstr "ä¸å¯è¾¾" @@ -2525,10 +2854,6 @@ msgstr "高容节点" msgid " well integrated peers" msgstr "æ•´åˆèŠ‚点" -#: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:257 -msgid "Definitions" -msgstr "定义" - #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:258 msgid "as determined by the profile organizer" msgstr "由节点æè¿°ä¿¡æ¯ç®¡ç†å™¨å†³å®š" @@ -2542,6 +2867,7 @@ msgid "capabilities in the netDb, not used to determine profiles" msgstr "netDbä¸çš„容é‡ï¼Œä¸Žæè¿°ä¿¡æ¯æ— 关。" #: ../java/src/net/i2p/router/web/ProfileOrganizerRenderer.java:259 +#: ../java/strings/Strings.java:81 msgid "caps" msgstr "容é‡" @@ -2882,7 +3208,7 @@ msgstr "错误-系统时滞 {0}" # æš‚ä¸ç¿»è¯‘,确定/良好 å¯èƒ½å½±å“按钮的翻译 #: ../java/src/net/i2p/router/web/SummaryHelper.java:117 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:565 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:576 msgid "OK" msgstr "æ£å¸¸" @@ -2907,7 +3233,7 @@ msgid "WARN-Firewalled and Fast" msgstr "è¦å‘Š-å¿«é€ŸèŠ‚ç‚¹å› é˜²ç«å¢™å—é™" #: ../java/src/net/i2p/router/web/SummaryHelper.java:128 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:569 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:580 msgid "Firewalled" msgstr "防ç«å¢™é™åˆ¶" @@ -2928,7 +3254,7 @@ msgid "WARN-Firewalled with UDP Disabled" msgstr "è¦å‘Š-å› é˜²ç«å¢™å—é™ä¸”UDP被ç¦ç”¨" #: ../java/src/net/i2p/router/web/SummaryHelper.java:143 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:585 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:596 msgid "Testing" msgstr "测试ä¸" @@ -2980,7 +3306,7 @@ msgstr "共享客户端" #: ../java/src/net/i2p/router/web/TunnelRenderer.java:41 #: ../java/src/net/i2p/router/web/TunnelRenderer.java:63 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:273 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:275 msgid "configure" msgstr "设置" @@ -3055,10 +3381,6 @@ msgstr "è¿è¡ŒæœŸé—´å¸¦å®½ä½¿ç”¨æƒ…况" msgid "Expiry" msgstr "到期" -#: ../java/src/net/i2p/router/web/TunnelRenderer.java:156 -msgid "In/Out" -msgstr "å…¥/出" - #: ../java/src/net/i2p/router/web/TunnelRenderer.java:159 msgid "Participants" msgstr "å‚与节点" @@ -3162,7 +3484,7 @@ msgstr "æ— æ³•å¤åˆ¶åˆ°{0}" msgid "Update verified" msgstr "更新已验è¯" -#: ../java/src/net/i2p/router/web/UpdateHandler.java:227 +#: ../java/src/net/i2p/router/web/UpdateHandler.java:228 msgid "Transfer failed" msgstr "æ•°æ®ä¼ 输失败" @@ -3322,6 +3644,66 @@ msgstr "ä¼ è¾“" msgid "udp" msgstr "UDP" +#: ../java/strings/Strings.java:77 +msgid "host" +msgstr "主机" + +#: ../java/strings/Strings.java:78 +msgid "key" +msgstr "密钥" + +#: ../java/strings/Strings.java:79 +msgid "port" +msgstr "端å£" + +#: ../java/strings/Strings.java:83 +msgid "ihost0" +msgstr "" + +#: ../java/strings/Strings.java:84 +msgid "ihost1" +msgstr "" + +#: ../java/strings/Strings.java:85 +msgid "ihost2" +msgstr "" + +#: ../java/strings/Strings.java:87 +msgid "iport0" +msgstr "" + +#: ../java/strings/Strings.java:88 +msgid "iport1" +msgstr "" + +#: ../java/strings/Strings.java:89 +msgid "iport2" +msgstr "" + +#: ../java/strings/Strings.java:91 +msgid "ikey0" +msgstr "" + +#: ../java/strings/Strings.java:92 +msgid "ikey1" +msgstr "" + +#: ../java/strings/Strings.java:93 +msgid "ikey2" +msgstr "" + +#: ../java/strings/Strings.java:95 +msgid "itag0" +msgstr "" + +#: ../java/strings/Strings.java:96 +msgid "itag1" +msgstr "" + +#: ../java/strings/Strings.java:97 +msgid "itag2" +msgstr "" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:106 msgid "config networking" msgstr "连网设置" @@ -3442,442 +3824,442 @@ msgstr "您设置I2P共享 {0} KBps" msgid "The higher the share bandwidth the more you improve your anonymity and help the network." msgstr "共享的带宽越多,您的匿å性越强åŒæ—¶èƒ½å¸®åŠ©ç½‘络æˆé•¿ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:359 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:504 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:305 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:324 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:324 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:335 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:375 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:343 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:323 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:357 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:513 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:303 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:326 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configkeyring_jsp.java:320 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configlogging_jsp.java:333 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configstats_jsp.java:373 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:341 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:321 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:364 msgid "Cancel" msgstr "å–消" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:363 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:374 msgid "IP and Transport Configuration" msgstr "IP ä¸Žä¼ è¾“è®¾ç½®" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:365 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:376 msgid "The default settings will work for most people." msgstr "默认设置适于大多数人。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:367 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:378 msgid "There is help below." msgstr "页é¢ä¸‹æ–¹æœ‰å¸®åŠ©ä¿¡æ¯" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:369 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:380 msgid "UPnP Configuration" msgstr "UPnP 设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:373 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:384 msgid "Enable UPnP to open firewall ports" msgstr "å¯ç”¨UPnP以打开防ç«å¢™ç«¯å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:375 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:386 msgid "UPnP status" msgstr "UPnP 统计" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:377 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:388 msgid "IP Configuration" msgstr "IP 设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:379 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:449 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:390 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:460 msgid "Externally reachable hostname or IP address" msgstr "公网å¯è®¿é—®çš„本机域å或IP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:383 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:394 msgid "Use all auto-detect methods" msgstr "使用全部自动探测方法" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:387 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:398 msgid "Disable UPnP IP address detection" msgstr "ç¦ç”¨UPnP IP 地å€æŽ¢æµ‹" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:391 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:402 msgid "Ignore local interface IP address" msgstr "忽略本地接å£çš„ IP 地å€" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:395 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:406 msgid "Use SSU IP address detection only" msgstr "仅使用SSU IP 地å€æŽ¢æµ‹" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:399 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:467 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:410 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:478 msgid "Specify hostname or IP" msgstr "指定主机å或IP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:405 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:416 msgid "Select Interface" msgstr "选择网络接å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:419 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:430 msgid "Hidden mode - do not publish IP" msgstr "éšèº«æ¨¡å¼ - ä¸å‘布IP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:421 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:432 msgid "(prevents participating traffic)" msgstr "(阻æ¢å…±äº«æµé‡)" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:423 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:434 msgid "Action when IP changes" msgstr "IP改å˜åŽåº”" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:427 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:438 msgid "Laptop mode - Change router identity and UDP port when IP changes for enhanced anonymity" msgstr "ç¬”è®°æœ¬æ¨¡å¼ - IPå˜åŒ–åŽæ”¹å˜è·¯ç”±èº«ä»½åŠUDP端å£(拨å·ç”¨æˆ·æ…Žç”¨)" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:429 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:440 msgid "Experimental" msgstr "试验性" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:431 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:442 msgid "UDP Configuration:" msgstr "UPnP 设置:" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:433 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:444 msgid "UDP port:" msgstr "UDP端å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:447 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:458 msgid "TCP Configuration" msgstr "TCP 连接设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:453 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:464 msgid "Use auto-detected IP address" msgstr "使用自动检测得到的 IP 地å€" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:455 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:487 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:466 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:498 msgid "currently" msgstr "ç›®å‰" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:459 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:470 msgid "if we are not firewalled" msgstr "如果没有å—到防ç«å¢™é˜»æŒ¡" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:463 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:474 msgid "Always use auto-detected IP address (Not firewalled)" msgstr "总是使用自动探测到的IP地å€(没有防ç«å¢™é™åˆ¶)" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:473 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:484 msgid "Disable inbound (Firewalled)" msgstr "ç¦æ¢å…¥ç«™è¿žæŽ¥(å—防ç«å¢™é™åˆ¶)" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:477 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:488 msgid "Completely disable" msgstr "完全ç¦ç”¨" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:479 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:490 msgid "(select only if behind a firewall that throttles or blocks outbound TCP)" msgstr "仅在å—到防ç«å¢™çš„æµé‡é™åˆ¶æˆ–入站连接é™åˆ¶æ—¶ä½¿ç”¨" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:481 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:492 msgid "Externally reachable TCP port" msgstr "公网å¯è®¿é—®çš„TCP端å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:485 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:496 msgid "Use the same port configured for UDP" msgstr "使用与UDP相åŒçš„端å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:493 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:504 msgid "Specify Port" msgstr "指定端å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:497 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:508 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configservice_jsp.java:338 #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configtunnels_jsp.java:329 msgid "Note" msgstr "注æ„" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:500 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:511 msgid "Changing these settings will restart your router." msgstr "修改这些设置将必须é‡å¯è·¯ç”±å™¨ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:506 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:517 msgid "Configuration Help" msgstr "设置帮助" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:508 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:557 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:519 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:568 msgid "While I2P will work fine behind most firewalls, your speeds and network integration will generally improve if the I2P port is forwarded for both UDP and TCP." msgstr "I2På¯ä»¥ä¸Žå¤§å¤šæ•°é˜²ç«å¢™å…±å˜ï¼Œå¦‚æžœI2P端å£(第一次安装时éšæœºé€‰æ‹©)进行了UDP/TCPæ˜ å°„ï¼Œæ‚¨çš„é€Ÿåº¦å’Œç½‘ç»œæ•´åˆåº¦ä¼šé€æ¸æå‡ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:510 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:521 msgid "If you can, please poke a hole in your firewall to allow unsolicited UDP and TCP packets to reach you." msgstr "如果å¯èƒ½ï¼Œè¯·åœ¨é˜²ç«å¢™ä¸æ·»åŠ 端å£å¹¶å…许入站UDP/TCPæ•°æ®åŒ…通过。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:512 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:523 msgid "If you can't, I2P supports UPnP (Universal Plug and Play) and UDP hole punching with \"SSU introductions\" to relay traffic." msgstr "如果ä¸èƒ½ï¼ŒI2P支æŒUPnP(Universal Plug and Play)或借助“SSUä¸ä»‹â€è¿›è¡ŒUDP端å£ç©¿é€ï¼Œé€šè¿‡å®ƒä»¬ä¹Ÿå¯ä»¥ä¸ç»§æ•°æ®ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:514 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:525 msgid "Most of the options above are for special situations, for example where UPnP does not work correctly, or a firewall not under your control is doing harm." msgstr "上述大部分设置仅为特殊情况准备,例如UPnPä¸èƒ½æ£å¸¸å·¥ä½œï¼Œæˆ–外部防ç«å¢™å°é”网络。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:516 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:527 msgid "Certain firewalls such as symmetric NATs may not work well with I2P." msgstr "在æŸäº›é˜²ç«å¢™ä¸‹ä¾‹å¦‚Symmetric,I2På¯èƒ½æ— 法有效利用NAT工作。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:525 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:536 msgid "UPnP is used to communicate with Internet Gateway Devices (IGDs) to detect the external IP address and forward ports." msgstr "UPnP与公网网关设备(IGD)通讯å¯ä»¥æ£€æµ‹å¤–部IPå’Œæ˜ å°„ç«¯å£ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:527 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:538 msgid "UPnP support is beta, and may not work for any number of reasons" msgstr "UPnP支æŒä»åœ¨æµ‹è¯•é˜¶æ®µï¼Œå¯èƒ½ç”±äºŽä¸€äº›åŽŸå› æ— æ³•æ£å¸¸å·¥ä½œã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:529 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:540 msgid "No UPnP-compatible device present" msgstr "没有å‘现UPnP兼容设备" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:531 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:542 msgid "UPnP disabled on the device" msgstr "设备上的UPnP支æŒå·²ç¦ç”¨" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:533 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:544 msgid "Software firewall interference with UPnP" msgstr "软件防ç«å¢™é˜»æ¢UPnP" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:535 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:546 msgid "Bugs in the device's UPnP implementation" msgstr "设备的UPnP支æŒæœ‰Bug" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:537 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:548 msgid "Multiple firewall/routers in the internet connection path" msgstr "公网连接ä¸å˜åœ¨å¤šä¸ªé˜²ç«å¢™/路由器" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:539 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:550 msgid "UPnP device change, reset, or address change" msgstr "UPnP设备改å˜ã€é‡ç½®æˆ–地å€è¿ç§»" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:541 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:552 msgid "Review the UPnP status here." msgstr "在这里检查UPnP状æ€ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:543 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:554 msgid "UPnP may be enabled or disabled above, but a change requires a router restart to take effect." msgstr "UPnP çš„å…³é—或开å¯å‡éœ€è¦ç¨‹åºé‡å¯åŽç”Ÿæ•ˆã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:545 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:556 msgid "Hostnames entered above will be published in the network database." msgstr "上é¢è¾“入的主机å称将在网络数æ®åº“(NetDB)ä¸å‘布。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:547 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:558 msgid "They are <b>not private</b>." msgstr "他们并<b>éžç§æœ‰åœ°å€</b>。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:549 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:560 msgid "Also, <b>do not enter a private IP address</b> like 127.0.0.1 or 192.168.1.1." msgstr "æ¤å¤–,<b>请勿输入如127.0.0.1或192.168.1.1ç‰ç§æœ‰åœ°å€</b>" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:551 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:562 msgid "If you specify the wrong IP address or hostname, or do not properly configure your NAT or firewall, your network performance will degrade substantially." msgstr "如果您设置了错误的IP地å€æˆ–主机å称,或NAT/防ç«å¢™é…ç½®ä¸å½“,您的网络性能将å—到明显影å“。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:553 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:564 msgid "When in doubt, leave the settings at the defaults." msgstr "如果对设置有疑问,请ä¿ç•™é»˜è®¤è®¾ç½®ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:555 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:566 msgid "Reachability Help" msgstr "连通性帮助" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:560 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:571 msgid "If you think you have opened up your firewall and I2P still thinks you are firewalled, remember that you may have multiple firewalls, for example both software packages and external hardware routers." msgstr "如果您认为已ç»æ‰“开了防ç«å¢™ï¼Œä½†I2Pä»ç„¶æŠ¥å‘Šæ‚¨å—到防ç«å¢™é˜»éš”,请想想您是å¦å¯èƒ½æœ‰å¤šå±‚防ç«å¢™ï¼Œä¾‹å¦‚软件防护墙和外部的硬件路由器。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:563 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:574 msgid "If there is an error, the <a href=\"logs.jsp\">logs</a> may also help diagnose the problem." msgstr "如果å˜åœ¨é”™è¯¯ï¼Œ<a href=\"logs.jsp\">日志</a>å¯ä»¥å¸®åŠ©æ‚¨è¯Šæ–问题。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:567 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:578 msgid "Your UDP port does not appear to be firewalled." msgstr "您的UDP端å£ä¼¼ä¹Žä¸€åˆ‡æ£å¸¸ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:571 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:582 msgid "Your UDP port appears to be firewalled." msgstr "您的UDP端å£ä¼¼ä¹Žå› 防ç«å¢™è€Œè¿žæŽ¥å—é™ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:573 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:584 msgid "As the firewall detection methods are not 100% reliable, this may occasionally be displayed in error." msgstr "由于防ç«å¢™æ£€æµ‹æ–¹æ³•å¹¶éž100%å¯é ,有时也å¯èƒ½é”™è¯¯åœ°æ˜¾ç¤ºæ¤æ¤æ示。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:575 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:586 msgid "However, if it appears consistently, you should check whether both your external and internal firewalls are open for your port." msgstr "然而,如果总是出现æ¤æ示,您应检查外部或内部防ç«å¢™æ˜¯å¦æ‰“开了I2P端å£ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:577 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:588 msgid "I2P will work fine when firewalled, there is no reason for concern. When firewalled, the router uses \"introducers\" to relay inbound connections." msgstr "å³ä½¿å—到防ç«å¢™é˜»æ‹¦ï¼ŒI2P也能够æ£å¸¸å·¥ä½œï¼Œæ— 需担心。å—到防ç«å¢™é˜»éš”时,路由器将通过“ä¸ä»‹(Introducers)â€ä¸ç»§å…¥ç«™è¿žæŽ¥ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:579 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:590 msgid "However, you will get more participating traffic and help the network more if you can open your firewall(s)." msgstr "然而,如果您能打开防ç«å¢™ç«¯å£ï¼Œæ‚¨æ‰èƒ½å¾—到的共享æµé‡ï¼Œæ›´å¥½çš„帮助I2P网络。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:581 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:592 msgid "If you think you have already done so, remember that you may have both a hardware and a software firewall, or be behind an additional, institutional firewall you cannot control." msgstr "如果您确信已ç»æ‰“开了防ç«å¢™ï¼Œè¯·æƒ³æƒ³æ˜¯ä¸æ˜¯åŒæ—¶å˜åœ¨ç¡¬ä»¶å’Œè½¯ä»¶é˜²ç«å¢™ï¼Œæˆ–å˜åœ¨æ‚¨æ— 法控制的é¢å¤–的机构性的防ç«å¢™ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:583 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:594 msgid "Also, some routers cannot correctly forward both TCP and UDP on a single port, or may have other limitations or bugs that prevent them from passing traffic through to I2P." msgstr "当然,æŸäº›è·¯ç”±å™¨å¯èƒ½æ— 法æ£ç¡®æ˜ å°„åŒæ—¶ä½¿ç”¨TCPå’ŒUDPå议的端å£ï¼Œæˆ–å˜åœ¨å…¶ä»–é™åˆ¶æˆ–缺陷,障ç¢äº†æ•°æ®è¿›å…¥I2P网络。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:587 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:598 msgid "The router is currently testing whether your UDP port is firewalled." msgstr "路由器æ£åœ¨æµ‹è¯•æ‚¨çš„UDP端å£æ˜¯å¦è¢«é˜²ç«å¢™é˜»æŒ¡ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:591 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:602 msgid "The router is not configured to publish its address, therefore it does not expect incoming connections." msgstr "路由器被设置为ç¦æ¢å‘布IP地å€ï¼Œå› æ¤å¹¶ä¸éœ€è¦å…¥ç«™è¿žæŽ¥ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:593 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:604 msgid "WARN - Firewalled and Fast" msgstr "è¦å‘Š - å¿«é€ŸèŠ‚ç‚¹ï¼Œå› é˜²ç«å¢™å—é™" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:595 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:606 msgid "You have configured I2P to share more than 128KBps of bandwidth, but you are firewalled." msgstr "您设置I2P共享超过128KBpsçš„å¸¦å®½ï¼Œä½†æ‚¨çš„è¿žæŽ¥å› é˜²ç«å¢™å—阻。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:597 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:608 msgid "While I2P will work fine in this configuration, if you really have over 128KBps of bandwidth to share, it will be much more helpful to the network if you open your firewall." msgstr "尽管在æ¤ç§é…置情况下I2På¯ä»¥æ£å¸¸å·¥ä½œï¼Œä½†å¦‚果您的确能够分享超过128kps的带宽,打开防ç«å¢™ç«¯å£å®ƒèƒ½å·¥ä½œçš„更好帮助网络ä¸å…¶ä»–的人。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:599 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:610 msgid "WARN - Firewalled and Floodfill" msgstr "è¦å‘Š - ç§åèŠ‚ç‚¹ï¼Œå› é˜²ç«å¢™å—é™" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:601 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:612 msgid "You have configured I2P to be a floodfill router, but you are firewalled." msgstr "您已将I2P设置为ç§åè·¯ç”±ï¼Œä½†æ‚¨çš„è¿žæŽ¥å·²å› é˜²ç«å¢™å—阻。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:603 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:614 msgid "For best participation as a floodfill router, you should open your firewall." msgstr "为了ç§å路由能够更好的å‚与到I2P网络ä¸ï¼Œè¯·æ‚¨çš„防ç«å¢™ä¸æ‰“开端å£ã€‚" # æš‚ä¸ç¿»è¯‘方便å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:605 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:616 msgid "WARN - Firewalled with Inbound TCP Enabled" msgstr "è¦å‘Š - 入站TCPå¼€å¯ï¼Œä½†å› 防ç«å¢™å—é™" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:607 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:618 msgid "You have configured inbound TCP, however your UDP port is firewalled, and therefore it is likely that your TCP port is firewalled as well." msgstr "您设置了使用入站TCP连接,åŒæ—¶æ‚¨çš„UDP端å£å› 防ç«å¢™å—阻,由æ¤çœ‹æ¥æ‚¨çš„TCP端å£ä¹Ÿè¢«é˜²ç«å¢™é˜»æŒ¡ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:609 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:620 msgid "If your TCP port is firewalled with inbound TCP enabled, routers will not be able to contact you via TCP, which will hurt the network." msgstr "如果您在TCP端å£å› 防ç«å¢™å—阻的情况下å¯ç”¨å…¥ç«™TCPè¿žæŽ¥ï¼Œå…¶ä»–è·¯ç”±å™¨èŠ‚ç‚¹å°†æ— æ³•ä¸Žæ‚¨å»ºç«‹è¿žæŽ¥ï¼Œé€ æˆç½‘络å—阻。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:611 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:622 msgid "Please open your firewall or disable inbound TCP above." msgstr "请打开您的防ç«å¢™ç«¯å£æˆ–ç¦ç”¨ä¸Šé¢çš„入站TCP连接。" # æš‚ä¸ç¿»è¯‘ -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:613 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:624 msgid "WARN - Firewalled with UDP Disabled" msgstr "è¦å‘Š - å› é˜²ç«å¢™å—é™ï¼Œä¸”UDP被ç¦ç”¨" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:615 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:626 msgid "You have configured inbound TCP, however you have disabled UDP." msgstr "您设置了使用TCP连接,然而ç¦ç”¨äº†UDP连接。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:617 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:628 msgid "You appear to be firewalled on TCP, therefore your router cannot accept inbound connections." msgstr "您的TCPè¿žæŽ¥ä¼¼ä¹Žå› é˜²ç«å¢™å—é˜»ï¼Œå¯¼è‡´æ‚¨çš„è·¯ç”±å™¨æ— æ³•æŽ¥æ”¶å…¥ç«™è¿žæŽ¥ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:619 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:630 msgid "Please open your firewall or enable UDP." msgstr "请打开防ç«å¢™ç«¯å£æˆ–å¯ç”¨UDP。" # æš‚ä¸ç¿»è¯‘,方便错误å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:621 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:632 msgid "ERR - Clock Skew" msgstr "错误 - 系统时滞" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:623 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:634 msgid "Your system's clock is skewed, which will make it difficult to participate in the network." msgstr "如果您的系统时钟太快或太慢,将影å“计算机接入网络。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:625 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:636 msgid "Correct your clock setting if this error persists." msgstr "如果错误æŒç»ï¼Œè¯·æ ¡å¯¹æ‚¨çš„系统时间。" # æš‚ä¸ç¿»è¯‘,方便错误å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:627 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:638 msgid "ERR - Private TCP Address" msgstr "错误 - ç§æœ‰TCP地å€" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:629 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:640 msgid "You must never advertise an unroutable IP address such as 127.0.0.1 or 192.168.1.1 as your external address." msgstr "您ä¸èƒ½å‘å¸ƒä¸€ä¸ªå…¬ç½‘æ— æ³•è®¿é—®çš„ IP 地å€ï¼Œä¾‹å¦‚127.0.0.1或192.168.1.1一类的内网地å€ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:631 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:642 msgid "Correct the address or disable inbound TCP above." msgstr "æ£ç¡®è®¾ç½®IP地å€æˆ–ç¦ç”¨ä¸Šé¢çš„入站TCP连接。" # æš‚ä¸ç¿»è¯‘,方便错误å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:633 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:644 msgid "ERR - SymmetricNAT" msgstr "错误 - SymmetricNAT" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:635 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:646 msgid "I2P detected that you are firewalled by a Symmetric NAT." msgstr "I2P检测到您å—到Symmetic NAT的阻挡。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:637 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:648 msgid "I2P does not work well behind this type of firewall. You will probably not be able to accept inbound connections, which will limit your participation in the network." msgstr "I2Pæ— æ³•ä¸Žæ¤ç±»é˜²ç«å¢™å¾ˆå¥½çš„并å˜ã€‚您å¯èƒ½æ— 法接收入站连接,这会障ç¢æ‚¨è¿žå…¥I2P网络。" # æš‚ä¸ç¿»è¯‘,方便问题å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:639 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:650 msgid "ERR - UDP Port In Use - Set i2np.udp.internalPort=xxxx in advanced config and restart" msgstr "错误 - UDP端å£å·²å 用 - 在高级设置ä¸è®¾ç½® i2np.udp.internalPort=æ–°ç«¯å£ å¹¶é‡å¯ç¨‹åº" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:641 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:652 msgid "I2P was unable to bind to port 8887 or other configured port." msgstr "I2Pæ— æ³•ç»‘å®šåˆ°ç«¯å£8887或其他指定的端å£ä¸Šã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:643 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:654 msgid "Check to see if another program is using the configured port. If so, stop that program or configure I2P to use a different port." msgstr "检查是å¦æœ‰å…¶ä»–程åºæ£åœ¨ä½¿ç”¨äº†I2P的端å£ï¼Œå¦‚果是,关é—æ¤ç¨‹åºæˆ–设置I2P使用ä¸åŒçš„端å£ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:645 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:656 msgid "This may be a transient error, if the other program is no longer using the port." msgstr "如果其他程åºä¸å†ä½¿ç”¨æ¤ç«¯å£ï¼Œè¿™å¯èƒ½æ˜¯ä¸´æ—¶æ€§çš„错误。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:647 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:658 msgid "However, a restart is always required after this error." msgstr "然而,å‘生æ¤é”™è¯¯åŽä¸€èˆ¬éœ€è¦é‡å¯ç¨‹åºæ‰èƒ½è§£å†³ã€‚" # æš‚ä¸ç¿»è¯‘,方便错误å馈 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:649 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:660 msgid "ERR - UDP Disabled and Inbound TCP host/port not set" msgstr "错误 - UDPå·²ç¦ç”¨ï¼Œä¸”TCP入站主机与端å£æœªè®¾ç½®" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:651 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:662 msgid "You have not configured inbound TCP with a hostname and port above, however you have disabled UDP." msgstr "您没有设置入站TCP的主机å称和端å£ï¼ŒåŒæ—¶åˆå…³é—了UDP。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:653 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:664 msgid "Therefore your router cannot accept inbound connections." msgstr "å› æ¤æ‚¨çš„è·¯ç”±å™¨æ— æ³•æŽ¥æ”¶å…¥ç«™è¿žæŽ¥ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:655 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:666 msgid "Please configure a TCP host and port above or enable UDP." msgstr "请在å‰é¢è®¾ç½®TCP主机和端å£æˆ–å¯ç”¨UDP" # 错误æ示暂ä¸ç¿»è¯‘,以便错误å馈。 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:657 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:668 msgid "ERR - Client Manager I2CP Error - check logs" msgstr "错误 - 客户程åºç®¡ç†å™¨ I2CP 错误 - 请看日志" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:659 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:670 msgid "This is usually due to a port 7654 conflict. Check the logs to verify." msgstr "这通常为7654端å£å†²çªæ‰€è‡´ï¼Œè¯·æŸ¥çœ‹æ—¥å¿—ç¡®è®¤åŽŸå› ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:661 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/config_jsp.java:672 msgid "Do you have another I2P instance running? Stop the conflicting program and restart I2P." msgstr "您是å¦å·²ç»è¿è¡Œäº†å¦ä¸€ä¸ªI2P实例?请关掉冲çªçš„程åºå¹¶é‡å¯I2P。" @@ -3893,11 +4275,6 @@ msgstr "I2P 高级设置" msgid "Advanced I2P Configuration" msgstr "I2P 高级设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:303 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:321 -msgid "Apply" -msgstr "应用" - #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configadvanced_jsp.java:309 msgid "Some changes may require a restart to take effect." msgstr "æŸäº›è®¾ç½®éœ€è¦ç¨‹åºé‡å¯åŽç”Ÿæ•ˆã€‚" @@ -3910,48 +4287,48 @@ msgstr "客户程åºè®¾ç½®" msgid "I2P Client Configuration" msgstr "I2P 客户程åºè®¾ç½®" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:309 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:311 msgid "Client Configuration" msgstr "客户程åºè®¾ç½®" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:311 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:313 msgid "The Java clients listed below are started by the router and run in the same JVM." msgstr "下é¢åˆ—出的Java客户端éšè·¯ç”±å™¨å¯åŠ¨å¹¶è¿è¡ŒäºŽåŒä¸€JVMä¸ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:315 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:317 msgid "To change other client options, edit the file" msgstr "修改其他客户端设置请编辑文件" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:322 -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:342 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:324 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:344 msgid "All changes require restart to take effect." msgstr "所有更改å‡éœ€è¦ç¨‹åºé‡å¯æ‰èƒ½ç”Ÿæ•ˆã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:334 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:336 msgid "WebApp Configuration" msgstr "WebApp 设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:336 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:338 msgid "The Java web applications listed below are started by the webConsole client and run in the same JVM as the router. They are usually web applications accessible through the router console. They may be complete applications (e.g. i2psnark),front-ends to another client or application which must be separately enabled (e.g. susidns, i2ptunnel), or have no web interface at all (e.g. addressbook)." msgstr "下é¢åˆ—出的Java Web 程åºéšå®¢æˆ·ç«¯â€œweb控制å°â€ä¸€åŒå¯åŠ¨ï¼Œå¹¶ä¸Žè·¯ç”±è¿è¡ŒäºŽåŒä¸€JVMä¸ã€‚这些Web程åºé€šå¸¸å¯ä»¥é€šè¿‡è·¯ç”±å™¨ç•Œé¢ç›´æŽ¥è®¿é—®ã€‚他们å¯èƒ½æ˜¯å®Œæ•´çš„ç¨‹åº (例如 i2psnark/BT客户端),其他客户端程åºçš„å‰ç«¯æˆ–å¿…é¡»å•ç‹¬å¯åŠ¨çš„程åº(例如. susidns, i2ptunnel),ç”šè‡³æ ¹æœ¬æ²¡æœ‰Webç•Œé¢(例如 addressbook)。" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:338 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:340 msgid "A web app may also be disabled by removing the .war file from the webapps directory; however the .war file and web app will reappear when you update your router to a newer version, so disabling the web app here is the preferred method." msgstr "从webapps目录ä¸åˆ 除相应的.war文件åŒæ ·å¯ä»¥ç¦ç”¨Web程åº;然而这些 .war 文件和Web程åºåœ¨æ›´æ–°I2PåŽè¿˜ä¼šå†æ¬¡å‡ºçŽ°,所以推è在这里通过设置的方法ç¦ç”¨ä¸ç”¨çš„Web程åºã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:348 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:350 msgid "Plugin Configuration" msgstr "æ’件设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:350 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:352 msgid "The plugins listed below are started by the webConsole client." msgstr "下é¢åˆ—出的æ’件将由 webConsole 客户程åºè´Ÿè´£å¯åŠ¨ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:356 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:358 msgid "Plugin Installation" msgstr "æ’件安装" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:358 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configclients_jsp.java:360 msgid "To install a plugin, enter the download URL:" msgstr "安装æ’件å‰ï¼Œè¯·è¾“å…¥æ’件的下载链接:" @@ -4301,6 +4678,10 @@ msgstr "路由控制å°è¯è¨€" msgid "Please contribute to the router console translation project! Contact the developers on IRC #i2p to help." msgstr "æ¬¢è¿ŽåŠ å…¥è·¯ç”±æŽ§åˆ¶å°ç¿»è¯‘项目ï¼æ供帮助请通过IRC到#i2p房间与开å‘人员è”系。" +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configui_jsp.java:323 +msgid "Apply" +msgstr "应用" + #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:106 msgid "config update" msgstr "更新设置" @@ -4309,63 +4690,63 @@ msgstr "更新设置" msgid "I2P Update Configuration" msgstr "I2P 更新设置" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:300 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:302 msgid "Check for I2P and news updates" msgstr "检查I2P软件åŠæ–°é—»æ›´æ–°" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:302 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:304 msgid "News & I2P Updates" msgstr "软件åŠæ–°é—»æ›´æ–°" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:306 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:308 msgid "Update In Progress" msgstr "æ›´æ–°ä¸" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:314 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:316 msgid "News URL" msgstr "新闻链接" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:318 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:320 msgid "Refresh frequency" msgstr "更新频率" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:324 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:326 msgid "Update policy" msgstr "å‡çº§ç–ç•¥" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:328 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:330 msgid "Update through the eepProxy?" msgstr "通过I2P代ç†æ›´æ–°?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:332 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:334 msgid "eepProxy host" msgstr "I2P代ç†ä¸»æœº" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:336 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:338 msgid "eepProxy port" msgstr "I2P代ç†ç«¯å£" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:340 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:342 msgid "Update URLs" msgstr "更新链接" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:344 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:346 msgid "Trusted keys" msgstr "å¯ä¿¡å…¬é’¥" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:348 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:350 msgid "Update with unsigned development builds?" msgstr "更新包括未ç¾åçš„å¼€å‘版?" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:352 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:354 msgid "Unsigned Build URL" msgstr "未ç¾å软件链接" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:358 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:360 msgid "I2P updates are disabled because you do not have write permission for the install directory." msgstr "I2P更新功能已ç¦ç”¨ï¼Œå› 为您对I2P的安装目录没有写æƒé™ã€‚" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:362 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/configupdate_jsp.java:366 msgid "Save" msgstr "ä¿å˜" @@ -4418,18 +4799,22 @@ msgid "I2P Version & Running Environment" msgstr "I2P 版本åŠè¿è¡ŒçŽ¯å¢ƒ" #: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:231 +msgid "Please report bugs on <a href=\"http://trac.i2p2.i2p/newticket\">trac.i2p2.i2p</a>." +msgstr "如果您å‘现错误请报告至<a href=\"http://trac.i2p2.i2p/newticket\">trac.i2p2.i2p</a>。" + +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:233 msgid "Please include this information in bug reports" msgstr "报告问题时请包括以下信æ¯" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:267 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:269 msgid "Critical Logs" msgstr "关键日志" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:271 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:273 msgid "Router Logs" msgstr "路由器日志" -#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:277 +#: ../jsp/WEB-INF/classes/net/i2p/router/web/jsp/logs_jsp.java:279 msgid "Service (Wrapper) Logs" msgstr "æœåŠ¡(å°è£…)日志" @@ -4494,6 +4879,8 @@ msgstr "隧é“概况" msgid "I2P Tunnel Summary" msgstr "I2P 隧é“概况" +#~ msgid "name" +#~ msgstr "å称" #~ msgid "" #~ "WebApp configuration saved successfully - restart required to take effect." #~ msgstr "WebApp设置ä¿å˜æˆåŠŸ - 程åºé‡å¯åŽç”Ÿæ•ˆ" @@ -4507,8 +4894,6 @@ msgstr "I2P 隧é“概况" #~ msgstr "é‡å¯åœ¨æŸäº›æƒ…况下有用" #~ msgid "I2P will install (or remove) a service accordingly." #~ msgstr "I2P将相应的将自身安装为æœåŠ¡(或å¸è½½æœåŠ¡)。" -#~ msgid "skew" -#~ msgstr "时滞" #~ msgid "Expl. + Client" #~ msgstr "探测+客户" #~ msgid "Part. from + to" diff --git a/apps/susidns/locale/messages_zh.po b/apps/susidns/locale/messages_zh.po index f52e96bd5c37d8f5c6274a3354fea82e5fbe82d5..ace16bf4b86971b824e8e90d8addeb32b9d11adf 100644 --- a/apps/susidns/locale/messages_zh.po +++ b/apps/susidns/locale/messages_zh.po @@ -8,8 +8,8 @@ msgid "" msgstr "" "Project-Id-Version: I2P susidns\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2010-03-05 12:44+0000\n" -"PO-Revision-Date: 2010-03-05 21:37+0800\n" +"POT-Creation-Date: 2010-05-29 02:35+0000\n" +"PO-Revision-Date: 2010-05-29 12:51+0800\n" "Last-Translator: walking <walking@mail.i2p>\n" "Language-Team: foo <foo@bar>\n" "MIME-Version: 1.0\n" @@ -17,79 +17,109 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "X-Poedit-Language: Chinese\n" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:197 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:199 #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:193 #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:197 msgid "Search" msgstr "æœç´¢" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:201 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:203 msgid "Search within filtered list" msgstr "在过滤结果ä¸æœç´¢" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:203 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:205 msgid "Filtered list" msgstr "过滤结果列表" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:207 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:209 msgid "no matches" msgstr "æ— åŒ¹é…项目" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:210 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:212 msgid "Addressbook" msgstr "地å€ç°¿" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:212 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:214 msgid "contains no entries" msgstr "åŒ…å« 0 个项目" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:214 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:216 msgid "contains 1 entry" msgstr "åŒ…å« 1 个项目" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:216 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:218 #, java-format msgid "contains {0} entries" msgstr "åŒ…å« {0} 个项目" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:226 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:228 #, java-format msgid "Showing {0} of {1}" msgstr "显示 {0} 个项目共 {1}" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:257 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:364 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:259 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:368 msgid "Add" msgstr "æ·»åŠ " -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:261 -msgid "Destination added." -msgstr "ç›®æ ‡å·²æ·»åŠ " +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:259 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:264 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:366 +msgid "Replace" +msgstr "替æ¢" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:263 +#, java-format +msgid "Host name {0} is already in addressbook, unchanged." +msgstr "主机å称{0}å·²å˜åœ¨äºŽåœ°å€ç°¿ä¸ï¼Œæœ¬æ¬¡æ“作未更新。" #: ../src/java/src/i2p/susi/dns/AddressbookBean.java:265 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:312 -msgid "Delete" -msgstr "åˆ é™¤" +#, java-format +msgid "Host name {0} is already in addressbook with a different destination. Click \"Replace\" to overwrite." +msgstr "域å{0}已以ä¸åŒç›®æ ‡å¯†é’¥çš„å˜åœ¨äºŽåœ°å€ç°¿ä¸ï¼Œç‚¹å‡»â€œæ›¿æ¢â€è¿›è¡Œè¦†ç›–" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:277 +#, java-format +msgid "Destination added for {0}." +msgstr "ç›®æ ‡å¯†é’¥å·²æ·»åŠ ä¸º{0}。" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:279 +#, java-format +msgid "Destination changed for {0}." +msgstr "ç›®æ ‡å·²æ›´æ–°ä¸º{0}。" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:275 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:284 +msgid "Invalid Base 64 destination." +msgstr "æ— æ•ˆçš„Base64ç›®æ ‡å¯†é’¥" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:288 +msgid "Please enter a host name and destination" +msgstr "请输入主机åç§°ä¸Žç›®æ ‡" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:292 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:314 +msgid "Delete Selected" +msgstr "åˆ é™¤é€‰ä¸é¡¹" + +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:302 #, java-format msgid "Destination {0} deleted." msgstr "ç›®æ ‡ {0} å·²åˆ é™¤" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:277 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:304 #, java-format msgid "{0} destinations deleted." msgstr "{0} ä¸ªç›®æ ‡å·²åˆ é™¤" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:283 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:310 msgid "Addressbook saved." msgstr "地å€ç°¿å·²ä¿å˜" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:286 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:313 msgid "ERROR: Could not write addressbook file." msgstr "错误:æ— æ³•å†™å…¥åœ°å€ç°¿æ–‡ä»¶" -#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:291 +#: ../src/java/src/i2p/susi/dns/AddressbookBean.java:318 #: ../src/java/src/i2p/susi/dns/ConfigBean.java:148 #: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:150 msgid "Invalid form submission, probably because you used the \"back\" or \"reload\" button on your browser. Please resubmit." @@ -97,8 +127,8 @@ msgstr "æ交数æ®æ— 效,å¯èƒ½çš„åŽŸå› æ˜¯æ‚¨ä½¿ç”¨äº†æµè§ˆå™¨ä¸çš„â€œå‰ #: ../src/java/src/i2p/susi/dns/ConfigBean.java:139 #: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:129 -#: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:128 -#: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:128 +#: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:130 +#: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:130 msgid "Save" msgstr "ä¿å˜" @@ -108,8 +138,8 @@ msgstr "é…置已ä¿å˜" #: ../src/java/src/i2p/susi/dns/ConfigBean.java:142 #: ../src/java/src/i2p/susi/dns/SubscriptionsBean.java:144 -#: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:130 -#: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:130 +#: ../src/tmp/i2p/susi/dns/jsp/config_jsp.java:128 +#: ../src/tmp/i2p/susi/dns/jsp/subscriptions_jsp.java:128 msgid "Reload" msgstr "刷新" @@ -213,7 +243,7 @@ msgid "Name" msgstr "å称" #: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:226 -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:360 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:362 msgid "Destination" msgstr "ç›®æ ‡" @@ -225,15 +255,19 @@ msgstr "æ ‡è®°ä¸ºåˆ é™¤" msgid "address helper link" msgstr "地å€ç°¿åŠ©æ‰‹é“¾æŽ¥" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:343 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:312 +msgid "Cancel" +msgstr "å–消" + +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:345 msgid "This addressbook is empty." msgstr "æ¤åœ°å€ç°¿ä¸ºç©º" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:354 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:356 msgid "Add new destination" msgstr "æ·»åŠ æ–°ç›®æ ‡" -#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:356 +#: ../src/tmp/i2p/susi/dns/jsp/addressbook_jsp.java:358 msgid "Hostname" msgstr "主机å称" @@ -393,3 +427,6 @@ msgstr "所以订阅一些网站的最新地å€ç°¿æ˜¯ä¸ªä¸é”™çš„主æ„。" msgid "See the FAQ for a list of subscription URLs." msgstr "其他æ¥æºçš„订阅链接å‚è§I2P站点的 <a href=\"http://www.i2p2.i2p/faq_zh.html\">FAQ</a>" +#~ msgid "Delete" +#~ msgstr "åˆ é™¤" + diff --git a/apps/susidns/src/bundle-messages.sh b/apps/susidns/src/bundle-messages.sh index e46eccd73f6816d61c1293aea9223a9df9cd4c32..b1cd377b3ff9511229b49b14cd43370047f48973 100755 --- a/apps/susidns/src/bundle-messages.sh +++ b/apps/susidns/src/bundle-messages.sh @@ -51,7 +51,7 @@ do # To start a new translation, copy the header from an old translation to the new .po file, # then ant distclean updater. find $JPATHS -name *.java > $TMPFILE - xgettext -f $TMPFILE -F -L java --from-code=UTF-8 \ + xgettext -f $TMPFILE -F -L java --from-code=UTF-8 --add-comments\ --keyword=_ --keyword=_x --keyword=intl._ --keyword=intl.title \ -o ${i}t if [ $? -ne 0 ] diff --git a/build.xml b/build.xml index 5cfe3aa03416d8e34a1f0a12425a05a6989bd157..9cb1ba22360a2a61a0720c619b6c2c5643b5d648 100644 --- a/build.xml +++ b/build.xml @@ -255,8 +255,7 @@ <defaultexcludes default="true"/> </target> - <!-- A few reeleases only, then back to updater. Jetty fix for snark in 0.7.14 --> - <target name="pkg" depends="distclean, updaterWithJettyFixes, preppkg, installer" /> + <target name="pkg" depends="distclean, updater, preppkg, installer" /> <target name="pkgclean" depends="deletepkg-temp"> <delete> @@ -582,6 +581,15 @@ <jar destfile="./pkg-temp/installer/exec.jar" basedir="./core/java/build/obj" includes="net/i2p/util/Exec.class"> <manifest><attribute name="Main-Class" value="net.i2p.util.Exec" /></manifest> </jar> + <!-- + Force 1.5 pack200 output + Doesnt work! + http://jira.codehaus.org/browse/IZPACK-404 + http://forums.sun.com/thread.jspa?threadID=773439 + http://bfo.co.uk/blog/2010/05/13/combining_ant_jar_signatures_and_pack200.html + <property name="com.sun.java.util.jar.pack.package.majver" value="150" /> + <property name="com.sun.java.util.jar.pack.package.minver" value="7" /> + --> <izpack input="${basedir}/installer/install.xml" output="${basedir}/install.jar" installerType="standard" basedir="${basedir}" /> <ant target="installerexe" /> diff --git a/history.txt b/history.txt index b5de3e81cab42bce73822b73f41fc15c92885339..e3515e597267ef657a6e1f07ea6db34e16c4625f 100644 --- a/history.txt +++ b/history.txt @@ -1,3 +1,21 @@ +2010-06-02 zzz + * graphs.jsp: Tag some more + * Translation: Set xgettext add-comments option + * UDP: Fix a bug from a blank i2np.udp.host config + causing frequent RouterInfo updates and incorrect + addition of introducers, caused by config.jsp handling + * Update: Change default update URLs to .su2 for pack200 + +2010-06-01 zzz + * i2psnark: + - More listing fixes + - Revert choker change + - Start end game a little sooner + * Installer: Disable pack200 in updater again, doesn't work + on Java 1.5 + * Remove jetty from updater - it's been in for a few + releases, and i2psnark now has its own listHTML method + 2010-05-27 zzz * Translate: Add GNU ngettext (plurals) support @@ -30,7 +48,7 @@ 2010-05-19 zzz * Data: Remove lots of unnecessary initializers - * susidns: More validataion when adding entry + * susidns: More validatation when adding entry 2010-05-15 zzz * Console: diff --git a/installer/install.xml b/installer/install.xml index ea523483840b49a9f8c218dd27edf8924ba8295b..37fe5fce19a45b50eb955cd8af77c14ac3e100a0 100644 --- a/installer/install.xml +++ b/installer/install.xml @@ -9,11 +9,14 @@ <author name="I2P" email="http://forum.i2p2.de/"/> </authors> <url>http://www.i2p2.de/</url> + <javaversion>1.5</javaversion> <!-- use pack200 compression, saves about 33% see http://java.sun.com/j2se/1.5.0/docs/guide/deployment/deployment-guide/pack200.html - --> + Unpack fails on java 1.5 + see http://jira.codehaus.org/browse/IZPACK-404 <pack200 /> + --> <!-- adding this element will make the installer attempt to launch itself with administrator permissions, but see http://www.nabble.com/Classpath-security-issues-on-Vista-td22456230.html diff --git a/installer/resources/themes/console/snark.css b/installer/resources/themes/console/snark.css index 4c673c1426788311404ca60ebe036f6ee89b9184..8d0c39bcc852ef3a328e4f1a59a4da4a7885e065 100644 --- a/installer/resources/themes/console/snark.css +++ b/installer/resources/themes/console/snark.css @@ -234,7 +234,7 @@ textarea { img { border: none; - margin: 4px 8px 4px 4px; + margin: 3px 8px 5px 4px; vertical-align: middle; opacity: 1.0; line-height: 100%; diff --git a/router/java/src/net/i2p/router/RouterVersion.java b/router/java/src/net/i2p/router/RouterVersion.java index 7f4edb97520b081fa27255ad38c4da1068327822..421ff4f630110e645f24b485d06a7151f306e1cd 100644 --- a/router/java/src/net/i2p/router/RouterVersion.java +++ b/router/java/src/net/i2p/router/RouterVersion.java @@ -18,10 +18,10 @@ public class RouterVersion { /** deprecated */ public final static String ID = "Monotone"; public final static String VERSION = CoreVersion.VERSION; - public final static long BUILD = 13; + public final static long BUILD = 16; /** for example "-test" */ - public final static String EXTRA = ""; + public final static String EXTRA = "-rc"; public final static String FULL_VERSION = VERSION + "-" + BUILD + EXTRA; public static void main(String args[]) { System.out.println("I2P Router version: " + FULL_VERSION); diff --git a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java index 773f8b46ed32c40326e34e868ca4595d4d33345a..88d57877b1fdb80ff0a99b0964cf297be8674d92 100644 --- a/router/java/src/net/i2p/router/transport/udp/UDPTransport.java +++ b/router/java/src/net/i2p/router/transport/udp/UDPTransport.java @@ -1181,7 +1181,9 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority } private boolean explicitAddressSpecified() { - return (_context.getProperty(PROP_EXTERNAL_HOST) != null); + String h = _context.getProperty(PROP_EXTERNAL_HOST); + // Bug in config.jsp prior to 0.7.14, sets an empty host config + return h != null && h.length() > 0; } /** @@ -2146,6 +2148,10 @@ public class UDPTransport extends TransportImpl implements TimedWeightedPriority } } + /** + * Todo: Move since some of these apply to NTCP also, and the whole thing + * is hidden if i2np.udp.enable=false + */ private final String getKey() { StringBuilder buf = new StringBuilder(1024); buf.append("<h3>").append(_("Definitions")).append("</h3><div class=\"configure\">" +