diff options
Diffstat (limited to 'src')
113 files changed, 13614 insertions, 2739 deletions
diff --git a/src/Makefile.am b/src/Makefile.am index 3df8e267bb..e3eaacdb4c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -74,6 +74,7 @@ BITCOIN_CORE_H = \ addrman.h \ base58.h \ bloom.h \ + blockencodings.h \ chain.h \ chainparams.h \ chainparamsbase.h \ @@ -163,6 +164,7 @@ libbitcoin_server_a_CXXFLAGS = $(AM_CXXFLAGS) $(PIE_FLAGS) libbitcoin_server_a_SOURCES = \ addrman.cpp \ bloom.cpp \ + blockencodings.cpp \ chain.cpp \ checkpoints.cpp \ httprpc.cpp \ diff --git a/src/Makefile.qt.include b/src/Makefile.qt.include index 9381cca9f2..dc775a3568 100644 --- a/src/Makefile.qt.include +++ b/src/Makefile.qt.include @@ -3,6 +3,7 @@ EXTRA_LIBRARIES += qt/libbitcoinqt.a # bitcoin qt core # QT_TS = \ + qt/locale/bitcoin_af.ts \ qt/locale/bitcoin_af_ZA.ts \ qt/locale/bitcoin_ar.ts \ qt/locale/bitcoin_be_BY.ts \ @@ -22,7 +23,10 @@ QT_TS = \ qt/locale/bitcoin_en_GB.ts \ qt/locale/bitcoin_en.ts \ qt/locale/bitcoin_eo.ts \ + qt/locale/bitcoin_es_419.ts \ + qt/locale/bitcoin_es_AR.ts \ qt/locale/bitcoin_es_CL.ts \ + qt/locale/bitcoin_es_CO.ts \ qt/locale/bitcoin_es_DO.ts \ qt/locale/bitcoin_es_ES.ts \ qt/locale/bitcoin_es_MX.ts \ @@ -33,6 +37,7 @@ QT_TS = \ qt/locale/bitcoin_eu_ES.ts \ qt/locale/bitcoin_fa_IR.ts \ qt/locale/bitcoin_fa.ts \ + qt/locale/bitcoin_fil.ts \ qt/locale/bitcoin_fi.ts \ qt/locale/bitcoin_fr_CA.ts \ qt/locale/bitcoin_fr_FR.ts \ @@ -43,6 +48,7 @@ QT_TS = \ qt/locale/bitcoin_hr.ts \ qt/locale/bitcoin_hu.ts \ qt/locale/bitcoin_id_ID.ts \ + qt/locale/bitcoin_it_IT.ts \ qt/locale/bitcoin_it.ts \ qt/locale/bitcoin_ja.ts \ qt/locale/bitcoin_ka.ts \ @@ -62,22 +68,27 @@ QT_TS = \ qt/locale/bitcoin_pt_BR.ts \ qt/locale/bitcoin_pt_PT.ts \ qt/locale/bitcoin_ro_RO.ts \ + qt/locale/bitcoin_ro.ts \ qt/locale/bitcoin_ru_RU.ts \ qt/locale/bitcoin_ru.ts \ qt/locale/bitcoin_sk.ts \ qt/locale/bitcoin_sl_SI.ts \ qt/locale/bitcoin_sq.ts \ + qt/locale/bitcoin_sr@latin.ts \ qt/locale/bitcoin_sr.ts \ qt/locale/bitcoin_sv.ts \ + qt/locale/bitcoin_ta.ts \ qt/locale/bitcoin_th_TH.ts \ qt/locale/bitcoin_tr_TR.ts \ qt/locale/bitcoin_tr.ts \ qt/locale/bitcoin_uk.ts \ qt/locale/bitcoin_ur_PK.ts \ qt/locale/bitcoin_uz@Cyrl.ts \ + qt/locale/bitcoin_uz@Latn.ts \ qt/locale/bitcoin_vi.ts \ qt/locale/bitcoin_vi_VN.ts \ qt/locale/bitcoin_zh_CN.ts \ + qt/locale/bitcoin_zh_HK.ts \ qt/locale/bitcoin_zh.ts \ qt/locale/bitcoin_zh_TW.ts diff --git a/src/Makefile.test.include b/src/Makefile.test.include index 41d811fb54..c8918eb53f 100644 --- a/src/Makefile.test.include +++ b/src/Makefile.test.include @@ -45,6 +45,7 @@ BITCOIN_TESTS =\ test/base58_tests.cpp \ test/base64_tests.cpp \ test/bip32_tests.cpp \ + test/blockencodings_tests.cpp \ test/bloom_tests.cpp \ test/Checkpoints_tests.cpp \ test/coins_tests.cpp \ diff --git a/src/blockencodings.cpp b/src/blockencodings.cpp new file mode 100644 index 0000000000..7fd6a9cf52 --- /dev/null +++ b/src/blockencodings.cpp @@ -0,0 +1,180 @@ +// Copyright (c) 2016 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include "blockencodings.h" +#include "consensus/consensus.h" +#include "consensus/validation.h" +#include "chainparams.h" +#include "hash.h" +#include "random.h" +#include "streams.h" +#include "txmempool.h" +#include "main.h" +#include "util.h" + +#include <unordered_map> + +#define MIN_TRANSACTION_SIZE (::GetSerializeSize(CTransaction(), SER_NETWORK, PROTOCOL_VERSION)) + +CBlockHeaderAndShortTxIDs::CBlockHeaderAndShortTxIDs(const CBlock& block) : + nonce(GetRand(std::numeric_limits<uint64_t>::max())), + shorttxids(block.vtx.size() - 1), prefilledtxn(1), header(block) { + FillShortTxIDSelector(); + //TODO: Use our mempool prior to block acceptance to predictively fill more than just the coinbase + prefilledtxn[0] = {0, block.vtx[0]}; + for (size_t i = 1; i < block.vtx.size(); i++) { + const CTransaction& tx = block.vtx[i]; + shorttxids[i - 1] = GetShortID(tx.GetHash()); + } +} + +void CBlockHeaderAndShortTxIDs::FillShortTxIDSelector() const { + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << header << nonce; + CSHA256 hasher; + hasher.Write((unsigned char*)&(*stream.begin()), stream.end() - stream.begin()); + uint256 shorttxidhash; + hasher.Finalize(shorttxidhash.begin()); + shorttxidk0 = shorttxidhash.GetUint64(0); + shorttxidk1 = shorttxidhash.GetUint64(1); +} + +uint64_t CBlockHeaderAndShortTxIDs::GetShortID(const uint256& txhash) const { + static_assert(SHORTTXIDS_LENGTH == 6, "shorttxids calculation assumes 6-byte shorttxids"); + return SipHashUint256(shorttxidk0, shorttxidk1, txhash) & 0xffffffffffffL; +} + + + +ReadStatus PartiallyDownloadedBlock::InitData(const CBlockHeaderAndShortTxIDs& cmpctblock) { + if (cmpctblock.header.IsNull() || (cmpctblock.shorttxids.empty() && cmpctblock.prefilledtxn.empty())) + return READ_STATUS_INVALID; + if (cmpctblock.shorttxids.size() + cmpctblock.prefilledtxn.size() > MAX_BLOCK_SIZE / MIN_TRANSACTION_SIZE) + return READ_STATUS_INVALID; + + assert(header.IsNull() && txn_available.empty()); + header = cmpctblock.header; + txn_available.resize(cmpctblock.BlockTxCount()); + + int32_t lastprefilledindex = -1; + for (size_t i = 0; i < cmpctblock.prefilledtxn.size(); i++) { + if (cmpctblock.prefilledtxn[i].tx.IsNull()) + return READ_STATUS_INVALID; + + lastprefilledindex += cmpctblock.prefilledtxn[i].index + 1; //index is a uint16_t, so cant overflow here + if (lastprefilledindex > std::numeric_limits<uint16_t>::max()) + return READ_STATUS_INVALID; + if ((uint32_t)lastprefilledindex > cmpctblock.shorttxids.size() + i) { + // If we are inserting a tx at an index greater than our full list of shorttxids + // plus the number of prefilled txn we've inserted, then we have txn for which we + // have neither a prefilled txn or a shorttxid! + return READ_STATUS_INVALID; + } + txn_available[lastprefilledindex] = std::make_shared<CTransaction>(cmpctblock.prefilledtxn[i].tx); + } + prefilled_count = cmpctblock.prefilledtxn.size(); + + // Calculate map of txids -> positions and check mempool to see what we have (or dont) + // Because well-formed cmpctblock messages will have a (relatively) uniform distribution + // of short IDs, any highly-uneven distribution of elements can be safely treated as a + // READ_STATUS_FAILED. + std::unordered_map<uint64_t, uint16_t> shorttxids(cmpctblock.shorttxids.size()); + uint16_t index_offset = 0; + for (size_t i = 0; i < cmpctblock.shorttxids.size(); i++) { + while (txn_available[i + index_offset]) + index_offset++; + shorttxids[cmpctblock.shorttxids[i]] = i + index_offset; + // To determine the chance that the number of entries in a bucket exceeds N, + // we use the fact that the number of elements in a single bucket is + // binomially distributed (with n = the number of shorttxids S, and p = + // 1 / the number of buckets), that in the worst case the number of buckets is + // equal to S (due to std::unordered_map having a default load factor of 1.0), + // and that the chance for any bucket to exceed N elements is at most + // buckets * (the chance that any given bucket is above N elements). + // Thus: P(max_elements_per_bucket > N) <= S * (1 - cdf(binomial(n=S,p=1/S), N)). + // If we assume blocks of up to 16000, allowing 12 elements per bucket should + // only fail once per ~1 million block transfers (per peer and connection). + if (shorttxids.bucket_size(shorttxids.bucket(cmpctblock.shorttxids[i])) > 12) + return READ_STATUS_FAILED; + } + // TODO: in the shortid-collision case, we should instead request both transactions + // which collided. Falling back to full-block-request here is overkill. + if (shorttxids.size() != cmpctblock.shorttxids.size()) + return READ_STATUS_FAILED; // Short ID collision + + std::vector<bool> have_txn(txn_available.size()); + LOCK(pool->cs); + const std::vector<std::pair<uint256, CTxMemPool::txiter> >& vTxHashes = pool->vTxHashes; + for (size_t i = 0; i < vTxHashes.size(); i++) { + uint64_t shortid = cmpctblock.GetShortID(vTxHashes[i].first); + std::unordered_map<uint64_t, uint16_t>::iterator idit = shorttxids.find(shortid); + if (idit != shorttxids.end()) { + if (!have_txn[idit->second]) { + txn_available[idit->second] = vTxHashes[i].second->GetSharedTx(); + have_txn[idit->second] = true; + mempool_count++; + } else { + // If we find two mempool txn that match the short id, just request it. + // This should be rare enough that the extra bandwidth doesn't matter, + // but eating a round-trip due to FillBlock failure would be annoying + if (txn_available[idit->second]) { + txn_available[idit->second].reset(); + mempool_count--; + } + } + } + // Though ideally we'd continue scanning for the two-txn-match-shortid case, + // the performance win of an early exit here is too good to pass up and worth + // the extra risk. + if (mempool_count == shorttxids.size()) + break; + } + + LogPrint("cmpctblock", "Initialized PartiallyDownloadedBlock for block %s using a cmpctblock of size %lu\n", cmpctblock.header.GetHash().ToString(), cmpctblock.GetSerializeSize(SER_NETWORK, PROTOCOL_VERSION)); + + return READ_STATUS_OK; +} + +bool PartiallyDownloadedBlock::IsTxAvailable(size_t index) const { + assert(!header.IsNull()); + assert(index < txn_available.size()); + return txn_available[index] ? true : false; +} + +ReadStatus PartiallyDownloadedBlock::FillBlock(CBlock& block, const std::vector<CTransaction>& vtx_missing) const { + assert(!header.IsNull()); + block = header; + block.vtx.resize(txn_available.size()); + + size_t tx_missing_offset = 0; + for (size_t i = 0; i < txn_available.size(); i++) { + if (!txn_available[i]) { + if (vtx_missing.size() <= tx_missing_offset) + return READ_STATUS_INVALID; + block.vtx[i] = vtx_missing[tx_missing_offset++]; + } else + block.vtx[i] = *txn_available[i]; + } + if (vtx_missing.size() != tx_missing_offset) + return READ_STATUS_INVALID; + + CValidationState state; + if (!CheckBlock(block, state, Params().GetConsensus())) { + // TODO: We really want to just check merkle tree manually here, + // but that is expensive, and CheckBlock caches a block's + // "checked-status" (in the CBlock?). CBlock should be able to + // check its own merkle root and cache that check. + if (state.CorruptionPossible()) + return READ_STATUS_FAILED; // Possible Short ID collision + return READ_STATUS_INVALID; + } + + LogPrint("cmpctblock", "Successfully reconstructed block %s with %lu txn prefilled, %lu txn from mempool and %lu txn requested\n", header.GetHash().ToString(), prefilled_count, mempool_count, vtx_missing.size()); + if (vtx_missing.size() < 5) { + for(const CTransaction& tx : vtx_missing) + LogPrint("cmpctblock", "Reconstructed block %s required tx %s\n", header.GetHash().ToString(), tx.GetHash().ToString()); + } + + return READ_STATUS_OK; +} diff --git a/src/blockencodings.h b/src/blockencodings.h new file mode 100644 index 0000000000..b980e9e286 --- /dev/null +++ b/src/blockencodings.h @@ -0,0 +1,206 @@ +// Copyright (c) 2016 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#ifndef BITCOIN_BLOCK_ENCODINGS_H +#define BITCOIN_BLOCK_ENCODINGS_H + +#include "primitives/block.h" + +#include <memory> + +class CTxMemPool; + +// Dumb helper to handle CTransaction compression at serialize-time +struct TransactionCompressor { +private: + CTransaction& tx; +public: + TransactionCompressor(CTransaction& txIn) : tx(txIn) {} + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + READWRITE(tx); //TODO: Compress tx encoding + } +}; + +class BlockTransactionsRequest { +public: + // A BlockTransactionsRequest message + uint256 blockhash; + std::vector<uint16_t> indexes; + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + READWRITE(blockhash); + uint64_t indexes_size = (uint64_t)indexes.size(); + READWRITE(COMPACTSIZE(indexes_size)); + if (ser_action.ForRead()) { + size_t i = 0; + while (indexes.size() < indexes_size) { + indexes.resize(std::min((uint64_t)(1000 + indexes.size()), indexes_size)); + for (; i < indexes.size(); i++) { + uint64_t index = 0; + READWRITE(COMPACTSIZE(index)); + if (index > std::numeric_limits<uint16_t>::max()) + throw std::ios_base::failure("index overflowed 16 bits"); + indexes[i] = index; + } + } + + uint16_t offset = 0; + for (size_t i = 0; i < indexes.size(); i++) { + if (uint64_t(indexes[i]) + uint64_t(offset) > std::numeric_limits<uint16_t>::max()) + throw std::ios_base::failure("indexes overflowed 16 bits"); + indexes[i] = indexes[i] + offset; + offset = indexes[i] + 1; + } + } else { + for (size_t i = 0; i < indexes.size(); i++) { + uint64_t index = indexes[i] - (i == 0 ? 0 : (indexes[i - 1] + 1)); + READWRITE(COMPACTSIZE(index)); + } + } + } +}; + +class BlockTransactions { +public: + // A BlockTransactions message + uint256 blockhash; + std::vector<CTransaction> txn; + + BlockTransactions() {} + BlockTransactions(const BlockTransactionsRequest& req) : + blockhash(req.blockhash), txn(req.indexes.size()) {} + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + READWRITE(blockhash); + uint64_t txn_size = (uint64_t)txn.size(); + READWRITE(COMPACTSIZE(txn_size)); + if (ser_action.ForRead()) { + size_t i = 0; + while (txn.size() < txn_size) { + txn.resize(std::min((uint64_t)(1000 + txn.size()), txn_size)); + for (; i < txn.size(); i++) + READWRITE(REF(TransactionCompressor(txn[i]))); + } + } else { + for (size_t i = 0; i < txn.size(); i++) + READWRITE(REF(TransactionCompressor(txn[i]))); + } + } +}; + +// Dumb serialization/storage-helper for CBlockHeaderAndShortTxIDs and PartiallyDownlaodedBlock +struct PrefilledTransaction { + // Used as an offset since last prefilled tx in CBlockHeaderAndShortTxIDs, + // as a proper transaction-in-block-index in PartiallyDownloadedBlock + uint16_t index; + CTransaction tx; + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + uint64_t idx = index; + READWRITE(COMPACTSIZE(idx)); + if (idx > std::numeric_limits<uint16_t>::max()) + throw std::ios_base::failure("index overflowed 16-bits"); + index = idx; + READWRITE(REF(TransactionCompressor(tx))); + } +}; + +typedef enum ReadStatus_t +{ + READ_STATUS_OK, + READ_STATUS_INVALID, // Invalid object, peer is sending bogus crap + READ_STATUS_FAILED, // Failed to process object +} ReadStatus; + +class CBlockHeaderAndShortTxIDs { +private: + mutable uint64_t shorttxidk0, shorttxidk1; + uint64_t nonce; + + void FillShortTxIDSelector() const; + + friend class PartiallyDownloadedBlock; + + static const int SHORTTXIDS_LENGTH = 6; +protected: + std::vector<uint64_t> shorttxids; + std::vector<PrefilledTransaction> prefilledtxn; + +public: + CBlockHeader header; + + // Dummy for deserialization + CBlockHeaderAndShortTxIDs() {} + + CBlockHeaderAndShortTxIDs(const CBlock& block); + + uint64_t GetShortID(const uint256& txhash) const; + + size_t BlockTxCount() const { return shorttxids.size() + prefilledtxn.size(); } + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + READWRITE(header); + READWRITE(nonce); + + uint64_t shorttxids_size = (uint64_t)shorttxids.size(); + READWRITE(COMPACTSIZE(shorttxids_size)); + if (ser_action.ForRead()) { + size_t i = 0; + while (shorttxids.size() < shorttxids_size) { + shorttxids.resize(std::min((uint64_t)(1000 + shorttxids.size()), shorttxids_size)); + for (; i < shorttxids.size(); i++) { + uint32_t lsb = 0; uint16_t msb = 0; + READWRITE(lsb); + READWRITE(msb); + shorttxids[i] = (uint64_t(msb) << 32) | uint64_t(lsb); + static_assert(SHORTTXIDS_LENGTH == 6, "shorttxids serialization assumes 6-byte shorttxids"); + } + } + } else { + for (size_t i = 0; i < shorttxids.size(); i++) { + uint32_t lsb = shorttxids[i] & 0xffffffff; + uint16_t msb = (shorttxids[i] >> 32) & 0xffff; + READWRITE(lsb); + READWRITE(msb); + } + } + + READWRITE(prefilledtxn); + + if (ser_action.ForRead()) + FillShortTxIDSelector(); + } +}; + +class PartiallyDownloadedBlock { +protected: + std::vector<std::shared_ptr<const CTransaction> > txn_available; + size_t prefilled_count = 0, mempool_count = 0; + CTxMemPool* pool; +public: + CBlockHeader header; + PartiallyDownloadedBlock(CTxMemPool* poolIn) : pool(poolIn) {} + + ReadStatus InitData(const CBlockHeaderAndShortTxIDs& cmpctblock); + bool IsTxAvailable(size_t index) const; + ReadStatus FillBlock(CBlock& block, const std::vector<CTransaction>& vtx_missing) const; +}; + +#endif diff --git a/src/chainparams.cpp b/src/chainparams.cpp index 442bc61023..6eb66c78e2 100644 --- a/src/chainparams.cpp +++ b/src/chainparams.cpp @@ -16,14 +16,6 @@ #include "chainparamsseeds.h" -std::string CDNSSeedData::getHost(uint64_t requiredServiceBits) const { - //use default host for non-filter-capable seeds or if we use the default service bits (NODE_NETWORK) - if (!supportsServiceBitsFiltering || requiredServiceBits == NODE_NETWORK) - return host; - - return strprintf("x%x.%s", requiredServiceBits, host); -} - static CBlock CreateGenesisBlock(const char* pszTimestamp, const CScript& genesisOutputScript, uint32_t nTime, uint32_t nNonce, uint32_t nBits, int32_t nVersion, const CAmount& genesisReward) { CMutableTransaction txNew; diff --git a/src/chainparams.h b/src/chainparams.h index 7168daaf43..638893e9ad 100644 --- a/src/chainparams.h +++ b/src/chainparams.h @@ -13,11 +13,9 @@ #include <vector> -class CDNSSeedData { -public: +struct CDNSSeedData { std::string name, host; bool supportsServiceBitsFiltering; - std::string getHost(uint64_t requiredServiceBits) const; CDNSSeedData(const std::string &strName, const std::string &strHost, bool supportsServiceBitsFilteringIn = false) : name(strName), host(strHost), supportsServiceBitsFiltering(supportsServiceBitsFilteringIn) {} }; diff --git a/src/init.cpp b/src/init.cpp index c2ba9ae44b..b572bfc327 100644 --- a/src/init.cpp +++ b/src/init.cpp @@ -479,11 +479,20 @@ std::string HelpMessage(HelpMessageMode mode) std::string LicenseInfo() { + const std::string URL_SOURCE_CODE = "<https://github.com/bitcoin/bitcoin>"; + const std::string URL_WEBSITE = "<https://bitcoincore.org>"; // todo: remove urls from translations on next change return CopyrightHolders(strprintf(_("Copyright (C) %i-%i"), 2009, COPYRIGHT_YEAR) + " ") + "\n" + "\n" + - _("This is experimental software.") + "\n" + + strprintf(_("Please contribute if you find %s useful. " + "Visit %s for further information about the software."), + PACKAGE_NAME, URL_WEBSITE) + + "\n" + + strprintf(_("The source code is available from %s."), + URL_SOURCE_CODE) + "\n" + + "\n" + + _("This is experimental software.") + "\n" + _("Distributed under the MIT software license, see the accompanying file COPYING or <http://www.opensource.org/licenses/mit-license.php>.") + "\n" + "\n" + _("This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written by Eric Young and UPnP software written by Thomas Bernard.") + diff --git a/src/main.cpp b/src/main.cpp index 62012bf567..ae195ecc40 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,6 +7,7 @@ #include "addrman.h" #include "arith_uint256.h" +#include "blockencodings.h" #include "chainparams.h" #include "checkpoints.h" #include "checkqueue.h" @@ -88,12 +89,22 @@ CAmount maxTxFee = DEFAULT_TRANSACTION_MAXFEE; CTxMemPool mempool(::minRelayTxFee); FeeFilterRounder filterRounder(::minRelayTxFee); +struct IteratorComparator +{ + template<typename I> + bool operator()(const I& a, const I& b) + { + return &(*a) < &(*b); + } +}; + struct COrphanTx { CTransaction tx; NodeId fromPeer; + int64_t nTimeExpire; }; map<uint256, COrphanTx> mapOrphanTransactions GUARDED_BY(cs_main); -map<uint256, set<uint256> > mapOrphanTransactionsByPrev GUARDED_BY(cs_main); +map<COutPoint, set<map<uint256, COrphanTx>::iterator, IteratorComparator>> mapOrphanTransactionsByPrev GUARDED_BY(cs_main); void EraseOrphansFor(NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(cs_main); /** @@ -197,11 +208,15 @@ namespace { /** Blocks that are in flight, and that are in the queue to be downloaded. Protected by cs_main. */ struct QueuedBlock { uint256 hash; - CBlockIndex* pindex; //!< Optional. - bool fValidatedHeaders; //!< Whether this block has validated headers at the time of request. + CBlockIndex* pindex; //!< Optional. + bool fValidatedHeaders; //!< Whether this block has validated headers at the time of request. + std::unique_ptr<PartiallyDownloadedBlock> partialBlock; //!< Optional, used for CMPCTBLOCK downloads }; map<uint256, pair<NodeId, list<QueuedBlock>::iterator> > mapBlocksInFlight; + /** Stack of nodes which we have set to announce using compact blocks */ + list<NodeId> lNodesAnnouncingHeaderAndIDs; + /** Number of preferable block download peers. */ int nPreferredDownload = 0; @@ -274,6 +289,10 @@ struct CNodeState { bool fPreferredDownload; //! Whether this peer wants invs or headers (when possible) for block announcements. bool fPreferHeaders; + //! Whether this peer wants invs or cmpctblocks (when possible) for block announcements. + bool fPreferHeaderAndIDs; + //! Whether this peer will send us cmpctblocks if we request them + bool fProvidesHeaderAndIDs; CNodeState() { fCurrentlyConnected = false; @@ -290,6 +309,8 @@ struct CNodeState { nBlocksInFlightValidHeaders = 0; fPreferredDownload = false; fPreferHeaders = false; + fPreferHeaderAndIDs = false; + fProvidesHeaderAndIDs = false; } }; @@ -358,6 +379,7 @@ void FinalizeNode(NodeId nodeid) { // Requires cs_main. // Returns a bool indicating whether we requested this block. +// Also used if a block was /not/ received and timed out or started with another peer bool MarkBlockAsReceived(const uint256& hash) { map<uint256, pair<NodeId, list<QueuedBlock>::iterator> >::iterator itInFlight = mapBlocksInFlight.find(hash); if (itInFlight != mapBlocksInFlight.end()) { @@ -381,17 +403,26 @@ bool MarkBlockAsReceived(const uint256& hash) { } // Requires cs_main. -void MarkBlockAsInFlight(NodeId nodeid, const uint256& hash, const Consensus::Params& consensusParams, CBlockIndex *pindex = NULL) { +// returns false, still setting pit, if the block was already in flight from the same peer +// pit will only be valid as long as the same cs_main lock is being held +bool MarkBlockAsInFlight(NodeId nodeid, const uint256& hash, const Consensus::Params& consensusParams, CBlockIndex *pindex = NULL, list<QueuedBlock>::iterator **pit = NULL) { CNodeState *state = State(nodeid); assert(state != NULL); + // Short-circuit most stuff in case its from the same node + map<uint256, pair<NodeId, list<QueuedBlock>::iterator> >::iterator itInFlight = mapBlocksInFlight.find(hash); + if (itInFlight != mapBlocksInFlight.end() && itInFlight->second.first == nodeid) { + *pit = &itInFlight->second.second; + return false; + } + // Make sure it's not listed somewhere already. MarkBlockAsReceived(hash); - QueuedBlock newentry = {hash, pindex, pindex != NULL}; - list<QueuedBlock>::iterator it = state->vBlocksInFlight.insert(state->vBlocksInFlight.end(), newentry); + list<QueuedBlock>::iterator it = state->vBlocksInFlight.insert(state->vBlocksInFlight.end(), + {hash, pindex, pindex != NULL, std::unique_ptr<PartiallyDownloadedBlock>(pit ? new PartiallyDownloadedBlock(&mempool) : NULL)}); state->nBlocksInFlight++; - state->nBlocksInFlightValidHeaders += newentry.fValidatedHeaders; + state->nBlocksInFlightValidHeaders += it->fValidatedHeaders; if (state->nBlocksInFlight == 1) { // We're starting a block download (batch) from this peer. state->nDownloadingSince = GetTimeMicros(); @@ -399,7 +430,10 @@ void MarkBlockAsInFlight(NodeId nodeid, const uint256& hash, const Consensus::Pa if (state->nBlocksInFlightValidHeaders == 1 && pindex != NULL) { nPeersWithValidatedDownloads++; } - mapBlocksInFlight[hash] = std::make_pair(nodeid, it); + itInFlight = mapBlocksInFlight.insert(std::make_pair(hash, std::make_pair(nodeid, it))).first; + if (pit) + *pit = &itInFlight->second.second; + return true; } /** Check whether the last unknown block a peer advertised is not yet known. */ @@ -435,6 +469,28 @@ void UpdateBlockAvailability(NodeId nodeid, const uint256 &hash) { } } +void MaybeSetPeerAsAnnouncingHeaderAndIDs(const CNodeState* nodestate, CNode* pfrom) { + if (nodestate->fProvidesHeaderAndIDs) { + BOOST_FOREACH(const NodeId nodeid, lNodesAnnouncingHeaderAndIDs) + if (nodeid == pfrom->GetId()) + return; + bool fAnnounceUsingCMPCTBLOCK = false; + uint64_t nCMPCTBLOCKVersion = 1; + if (lNodesAnnouncingHeaderAndIDs.size() >= 3) { + // As per BIP152, we only get 3 of our peers to announce + // blocks using compact encodings. + CNode* pnodeStop = FindNode(lNodesAnnouncingHeaderAndIDs.front()); + if (pnodeStop) { + pnodeStop->PushMessage(NetMsgType::SENDCMPCT, fAnnounceUsingCMPCTBLOCK, nCMPCTBLOCKVersion); + lNodesAnnouncingHeaderAndIDs.pop_front(); + } + } + fAnnounceUsingCMPCTBLOCK = true; + pfrom->PushMessage(NetMsgType::SENDCMPCT, fAnnounceUsingCMPCTBLOCK, nCMPCTBLOCKVersion); + lNodesAnnouncingHeaderAndIDs.push_back(pfrom->GetId()); + } +} + // Requires cs_main bool CanDirectFetch(const Consensus::Params &consensusParams) { @@ -623,40 +679,42 @@ bool AddOrphanTx(const CTransaction& tx, NodeId peer) EXCLUSIVE_LOCKS_REQUIRED(c // large transaction with a missing parent then we assume // it will rebroadcast it later, after the parent transaction(s) // have been mined or received. - // 10,000 orphans, each of which is at most 5,000 bytes big is - // at most 500 megabytes of orphans: + // 100 orphans, each of which is at most 99,999 bytes big is + // at most 10 megabytes of orphans and somewhat more byprev index (in the worst case): unsigned int sz = tx.GetSerializeSize(SER_NETWORK, CTransaction::CURRENT_VERSION); - if (sz > 5000) + if (sz >= MAX_STANDARD_TX_SIZE) { LogPrint("mempool", "ignoring large orphan tx (size: %u, hash: %s)\n", sz, hash.ToString()); return false; } - mapOrphanTransactions[hash].tx = tx; - mapOrphanTransactions[hash].fromPeer = peer; - BOOST_FOREACH(const CTxIn& txin, tx.vin) - mapOrphanTransactionsByPrev[txin.prevout.hash].insert(hash); + auto ret = mapOrphanTransactions.emplace(hash, COrphanTx{tx, peer, GetTime() + ORPHAN_TX_EXPIRE_TIME}); + assert(ret.second); + BOOST_FOREACH(const CTxIn& txin, tx.vin) { + mapOrphanTransactionsByPrev[txin.prevout].insert(ret.first); + } - LogPrint("mempool", "stored orphan tx %s (mapsz %u prevsz %u)\n", hash.ToString(), + LogPrint("mempool", "stored orphan tx %s (mapsz %u outsz %u)\n", hash.ToString(), mapOrphanTransactions.size(), mapOrphanTransactionsByPrev.size()); return true; } -void static EraseOrphanTx(uint256 hash) EXCLUSIVE_LOCKS_REQUIRED(cs_main) +int static EraseOrphanTx(uint256 hash) EXCLUSIVE_LOCKS_REQUIRED(cs_main) { map<uint256, COrphanTx>::iterator it = mapOrphanTransactions.find(hash); if (it == mapOrphanTransactions.end()) - return; + return 0; BOOST_FOREACH(const CTxIn& txin, it->second.tx.vin) { - map<uint256, set<uint256> >::iterator itPrev = mapOrphanTransactionsByPrev.find(txin.prevout.hash); + auto itPrev = mapOrphanTransactionsByPrev.find(txin.prevout); if (itPrev == mapOrphanTransactionsByPrev.end()) continue; - itPrev->second.erase(hash); + itPrev->second.erase(it); if (itPrev->second.empty()) mapOrphanTransactionsByPrev.erase(itPrev); } mapOrphanTransactions.erase(it); + return 1; } void EraseOrphansFor(NodeId peer) @@ -668,8 +726,7 @@ void EraseOrphansFor(NodeId peer) map<uint256, COrphanTx>::iterator maybeErase = iter++; // increment to avoid iterator becoming invalid if (maybeErase->second.fromPeer == peer) { - EraseOrphanTx(maybeErase->second.tx.GetHash()); - ++nErased; + nErased += EraseOrphanTx(maybeErase->second.tx.GetHash()); } } if (nErased > 0) LogPrint("mempool", "Erased %d orphan tx from peer %d\n", nErased, peer); @@ -679,6 +736,26 @@ void EraseOrphansFor(NodeId peer) unsigned int LimitOrphanTxSize(unsigned int nMaxOrphans) EXCLUSIVE_LOCKS_REQUIRED(cs_main) { unsigned int nEvicted = 0; + static int64_t nNextSweep; + int64_t nNow = GetTime(); + if (nNextSweep <= nNow) { + // Sweep out expired orphan pool entries: + int nErased = 0; + int64_t nMinExpTime = nNow + ORPHAN_TX_EXPIRE_TIME - ORPHAN_TX_EXPIRE_INTERVAL; + map<uint256, COrphanTx>::iterator iter = mapOrphanTransactions.begin(); + while (iter != mapOrphanTransactions.end()) + { + map<uint256, COrphanTx>::iterator maybeErase = iter++; + if (maybeErase->second.nTimeExpire <= nNow) { + nErased += EraseOrphanTx(maybeErase->second.tx.GetHash()); + } else { + nMinExpTime = std::min(maybeErase->second.nTimeExpire, nMinExpTime); + } + } + // Sweep again 5 minutes after the next entry that expires in order to batch the linear scan. + nNextSweep = nMinExpTime + ORPHAN_TX_EXPIRE_INTERVAL; + if (nErased > 0) LogPrint("mempool", "Erased %d orphan tx due to expiration\n", nErased); + } while (mapOrphanTransactions.size() > nMaxOrphans) { // Evict a random orphan: @@ -2241,7 +2318,7 @@ bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockIndex* pin int64_t nTimeStart = GetTimeMicros(); // Check it again in case a previous version let a bad block in - if (!CheckBlock(block, state, chainparams.GetConsensus(), GetAdjustedTime(), !fJustCheck, !fJustCheck)) + if (!CheckBlock(block, state, chainparams.GetConsensus(), !fJustCheck, !fJustCheck)) return error("%s: Consensus::CheckBlock: %s", __func__, FormatStateMessage(state)); // verify that the view's current state corresponds to the previous block @@ -2335,6 +2412,7 @@ bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockIndex* pin CCheckQueueControl<CScriptCheck> control(fScriptChecks && nScriptCheckThreads ? &scriptcheckqueue : NULL); + std::vector<uint256> vOrphanErase; std::vector<int> prevheights; CAmount nFees = 0; int nInputs = 0; @@ -2367,6 +2445,17 @@ bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockIndex* pin prevheights[j] = view.AccessCoins(tx.vin[j].prevout.hash)->nHeight; } + // Which orphan pool entries must we evict? + for (size_t j = 0; j < tx.vin.size(); j++) { + auto itByPrev = mapOrphanTransactionsByPrev.find(tx.vin[j].prevout); + if (itByPrev == mapOrphanTransactionsByPrev.end()) continue; + for (auto mi = itByPrev->second.begin(); mi != itByPrev->second.end(); ++mi) { + const CTransaction& orphanTx = (*mi)->second.tx; + const uint256& orphanHash = orphanTx.GetHash(); + vOrphanErase.push_back(orphanHash); + } + } + if (!SequenceLocks(tx, nLockTimeFlags, &prevheights, *pindex)) { return state.DoS(100, error("%s: contains a non-BIP68-final transaction", __func__), REJECT_INVALID, "bad-txns-nonfinal"); @@ -2454,6 +2543,15 @@ bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockIndex* pin GetMainSignals().UpdatedTransaction(hashPrevBestCoinBase); hashPrevBestCoinBase = block.vtx[0].GetHash(); + // Erase orphan transactions include or precluded by this block + if (vOrphanErase.size()) { + int nErased = 0; + BOOST_FOREACH(uint256 &orphanHash, vOrphanErase) { + nErased += EraseOrphanTx(orphanHash); + } + LogPrint("mempool", "Erased %d orphan tx included or conflicted by block\n", nErased); + } + int64_t nTime6 = GetTimeMicros(); nTimeCallbacks += nTime6 - nTime5; LogPrint("bench", " - Callbacks: %.2fms [%.2fs]\n", 0.001 * (nTime6 - nTime5), nTimeCallbacks * 0.000001); @@ -3258,20 +3356,16 @@ bool FindUndoPos(CValidationState &state, int nFile, CDiskBlockPos &pos, unsigne return true; } -bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, int64_t nAdjustedTime, bool fCheckPOW) +bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, bool fCheckPOW) { // Check proof of work matches claimed amount if (fCheckPOW && !CheckProofOfWork(block.GetHash(), block.nBits, consensusParams)) return state.DoS(50, false, REJECT_INVALID, "high-hash", false, "proof of work failed"); - // Check timestamp - if (block.GetBlockTime() > nAdjustedTime + 2 * 60 * 60) - return state.Invalid(false, REJECT_INVALID, "time-too-new", "block timestamp too far in the future"); - return true; } -bool CheckBlock(const CBlock& block, CValidationState& state, const Consensus::Params& consensusParams, int64_t nAdjustedTime, bool fCheckPOW, bool fCheckMerkleRoot) +bool CheckBlock(const CBlock& block, CValidationState& state, const Consensus::Params& consensusParams, bool fCheckPOW, bool fCheckMerkleRoot) { // These are checks that are independent of context. @@ -3280,7 +3374,7 @@ bool CheckBlock(const CBlock& block, CValidationState& state, const Consensus::P // Check that the header is valid (particularly PoW). This is mostly // redundant with the call in AcceptBlockHeader. - if (!CheckBlockHeader(block, state, consensusParams, nAdjustedTime, fCheckPOW)) + if (!CheckBlockHeader(block, state, consensusParams, fCheckPOW)) return false; // Check the merkle root. @@ -3346,7 +3440,7 @@ static bool CheckIndexAgainstCheckpoint(const CBlockIndex* pindexPrev, CValidati return true; } -bool ContextualCheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, CBlockIndex * const pindexPrev) +bool ContextualCheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, CBlockIndex * const pindexPrev, int64_t nAdjustedTime) { // Check proof of work if (block.nBits != GetNextWorkRequired(pindexPrev, &block, consensusParams)) @@ -3356,6 +3450,10 @@ bool ContextualCheckBlockHeader(const CBlockHeader& block, CValidationState& sta if (block.GetBlockTime() <= pindexPrev->GetMedianTimePast()) return state.Invalid(false, REJECT_INVALID, "time-too-old", "block's timestamp is too early"); + // Check timestamp + if (block.GetBlockTime() > nAdjustedTime + 2 * 60 * 60) + return state.Invalid(false, REJECT_INVALID, "time-too-new", "block timestamp too far in the future"); + // Reject outdated version blocks when 95% (75% on testnet) of the network has upgraded: for (int32_t version = 2; version < 5; ++version) // check for version 2, 3 and 4 upgrades if (block.nVersion < version && IsSuperMajority(version, pindexPrev, consensusParams.nMajorityRejectBlockOutdated, consensusParams)) @@ -3420,7 +3518,7 @@ static bool AcceptBlockHeader(const CBlockHeader& block, CValidationState& state return true; } - if (!CheckBlockHeader(block, state, chainparams.GetConsensus(), GetAdjustedTime())) + if (!CheckBlockHeader(block, state, chainparams.GetConsensus())) return error("%s: Consensus::CheckBlockHeader: %s, %s", __func__, hash.ToString(), FormatStateMessage(state)); // Get prev block index @@ -3436,7 +3534,7 @@ static bool AcceptBlockHeader(const CBlockHeader& block, CValidationState& state if (fCheckpointsEnabled && !CheckIndexAgainstCheckpoint(pindexPrev, state, chainparams, hash)) return error("%s: CheckIndexAgainstCheckpoint(): %s", __func__, state.GetRejectReason().c_str()); - if (!ContextualCheckBlockHeader(block, state, chainparams.GetConsensus(), pindexPrev)) + if (!ContextualCheckBlockHeader(block, state, chainparams.GetConsensus(), pindexPrev, GetAdjustedTime())) return error("%s: Consensus::ContextualCheckBlockHeader: %s, %s", __func__, hash.ToString(), FormatStateMessage(state)); } if (pindex == NULL) @@ -3449,8 +3547,9 @@ static bool AcceptBlockHeader(const CBlockHeader& block, CValidationState& state } /** Store block on disk. If dbp is non-NULL, the file is known to already reside on disk */ -static bool AcceptBlock(const CBlock& block, CValidationState& state, const CChainParams& chainparams, CBlockIndex** ppindex, bool fRequested, const CDiskBlockPos* dbp) +static bool AcceptBlock(const CBlock& block, CValidationState& state, const CChainParams& chainparams, CBlockIndex** ppindex, bool fRequested, const CDiskBlockPos* dbp, bool* fNewBlock) { + if (fNewBlock) *fNewBlock = false; AssertLockHeld(cs_main); CBlockIndex *pindexDummy = NULL; @@ -3479,6 +3578,7 @@ static bool AcceptBlock(const CBlock& block, CValidationState& state, const CCha if (!fHasMoreWork) return true; // Don't process less-work chains if (fTooFarAhead) return true; // Block height is too high } + if (fNewBlock) *fNewBlock = true; if ((!CheckBlock(block, state, chainparams.GetConsensus(), GetAdjustedTime())) || !ContextualCheckBlock(block, state, pindex->pprev)) { if (state.IsInvalid() && !state.CorruptionPossible()) { @@ -3526,7 +3626,7 @@ static bool IsSuperMajority(int minVersion, const CBlockIndex* pstart, unsigned } -bool ProcessNewBlock(CValidationState& state, const CChainParams& chainparams, const CNode* pfrom, const CBlock* pblock, bool fForceProcessing, const CDiskBlockPos* dbp) +bool ProcessNewBlock(CValidationState& state, const CChainParams& chainparams, CNode* pfrom, const CBlock* pblock, bool fForceProcessing, const CDiskBlockPos* dbp) { { LOCK(cs_main); @@ -3535,9 +3635,11 @@ bool ProcessNewBlock(CValidationState& state, const CChainParams& chainparams, c // Store to disk CBlockIndex *pindex = NULL; - bool ret = AcceptBlock(*pblock, state, chainparams, &pindex, fRequested, dbp); + bool fNewBlock = false; + bool ret = AcceptBlock(*pblock, state, chainparams, &pindex, fRequested, dbp, &fNewBlock); if (pindex && pfrom) { mapBlockSource[pindex->GetBlockHash()] = pfrom->GetId(); + if (fNewBlock) pfrom->nLastBlockTime = GetTime(); } CheckBlockIndex(chainparams.GetConsensus()); if (!ret) @@ -3565,9 +3667,9 @@ bool TestBlockValidity(CValidationState& state, const CChainParams& chainparams, indexDummy.nHeight = pindexPrev->nHeight + 1; // NOTE: CheckBlockHeader is called by CheckBlock - if (!ContextualCheckBlockHeader(block, state, chainparams.GetConsensus(), pindexPrev)) + if (!ContextualCheckBlockHeader(block, state, chainparams.GetConsensus(), pindexPrev, GetAdjustedTime())) return error("%s: Consensus::ContextualCheckBlockHeader: %s", __func__, FormatStateMessage(state)); - if (!CheckBlock(block, state, chainparams.GetConsensus(), GetAdjustedTime(), fCheckPOW, fCheckMerkleRoot)) + if (!CheckBlock(block, state, chainparams.GetConsensus(), fCheckPOW, fCheckMerkleRoot)) return error("%s: Consensus::CheckBlock: %s", __func__, FormatStateMessage(state)); if (!ContextualCheckBlock(block, state, pindexPrev)) return error("%s: Consensus::ContextualCheckBlock: %s", __func__, FormatStateMessage(state)); @@ -3912,7 +4014,7 @@ bool CVerifyDB::VerifyDB(const CChainParams& chainparams, CCoinsView *coinsview, if (!ReadBlockFromDisk(block, pindex, chainparams.GetConsensus())) return error("VerifyDB(): *** ReadBlockFromDisk failed at %d, hash=%s", pindex->nHeight, pindex->GetBlockHash().ToString()); // check level 1: verify block validity - if (nCheckLevel >= 1 && !CheckBlock(block, state, chainparams.GetConsensus(), GetAdjustedTime())) + if (nCheckLevel >= 1 && !CheckBlock(block, state, chainparams.GetConsensus())) return error("%s: *** found bad block at %d, hash=%s (%s)\n", __func__, pindex->nHeight, pindex->GetBlockHash().ToString(), FormatStateMessage(state)); // check level 2: verify undo validity @@ -4107,7 +4209,7 @@ bool LoadExternalBlockFile(const CChainParams& chainparams, FILE* fileIn, CDiskB if (mapBlockIndex.count(hash) == 0 || (mapBlockIndex[hash]->nStatus & BLOCK_HAVE_DATA) == 0) { LOCK(cs_main); CValidationState state; - if (AcceptBlock(block, state, chainparams, NULL, true, dbp)) + if (AcceptBlock(block, state, chainparams, NULL, true, dbp, NULL)) nLoaded++; if (state.IsError()) break; @@ -4140,7 +4242,7 @@ bool LoadExternalBlockFile(const CChainParams& chainparams, FILE* fileIn, CDiskB head.ToString()); LOCK(cs_main); CValidationState dummy; - if (AcceptBlock(block, dummy, chainparams, NULL, true, &it->second)) + if (AcceptBlock(block, dummy, chainparams, NULL, true, &it->second, NULL)) { nLoaded++; queue.push_back(block.GetHash()); @@ -4450,7 +4552,7 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam boost::this_thread::interruption_point(); it++; - if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK) + if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK || inv.type == MSG_CMPCT_BLOCK) { bool send = false; BlockMap::iterator mi = mapBlockIndex.find(inv.hash); @@ -4492,7 +4594,7 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam assert(!"cannot load block from disk"); if (inv.type == MSG_BLOCK) pfrom->PushMessage(NetMsgType::BLOCK, block); - else // MSG_FILTERED_BLOCK) + else if (inv.type == MSG_FILTERED_BLOCK) { LOCK(pfrom->cs_filter); if (pfrom->pfilter) @@ -4512,6 +4614,18 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam // else // no response } + else if (inv.type == MSG_CMPCT_BLOCK) + { + // If a peer is asking for old blocks, we're almost guaranteed + // they wont have a useful mempool to match against a compact block, + // and we dont feel like constructing the object for them, so + // instead we respond with the full, non-compact block. + if (mi->second->nHeight >= chainActive.Height() - 10) { + CBlockHeaderAndShortTxIDs cmpctblock(block); + pfrom->PushMessage(NetMsgType::CMPCTBLOCK, cmpctblock); + } else + pfrom->PushMessage(NetMsgType::BLOCK, block); + } // Trigger the peer node to send a getblocks request for the next batch of inventory if (inv.hash == pfrom->hashContinue) @@ -4551,7 +4665,7 @@ void static ProcessGetData(CNode* pfrom, const Consensus::Params& consensusParam // Track requests for our stuff. GetMainSignals().Inventory(inv.hash); - if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK) + if (inv.type == MSG_BLOCK || inv.type == MSG_FILTERED_BLOCK || inv.type == MSG_CMPCT_BLOCK) break; } } @@ -4761,6 +4875,16 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, // nodes) pfrom->PushMessage(NetMsgType::SENDHEADERS); } + if (pfrom->nVersion >= SHORT_IDS_BLOCKS_VERSION) { + // Tell our peer we are willing to provide version-1 cmpctblocks + // However, we do not request new block announcements using + // cmpctblock messages. + // We send this to non-NODE NETWORK peers as well, because + // they may wish to request compact blocks from us + bool fAnnounceUsingCMPCTBLOCK = false; + uint64_t nCMPCTBLOCKVersion = 1; + pfrom->PushMessage(NetMsgType::SENDCMPCT, fAnnounceUsingCMPCTBLOCK, nCMPCTBLOCKVersion); + } } @@ -4835,6 +4959,18 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, State(pfrom->GetId())->fPreferHeaders = true; } + else if (strCommand == NetMsgType::SENDCMPCT) + { + bool fAnnounceUsingCMPCTBLOCK = false; + uint64_t nCMPCTBLOCKVersion = 1; + vRecv >> fAnnounceUsingCMPCTBLOCK >> nCMPCTBLOCKVersion; + if (nCMPCTBLOCKVersion == 1) { + LOCK(cs_main); + State(pfrom->GetId())->fProvidesHeaderAndIDs = true; + State(pfrom->GetId())->fPreferHeaderAndIDs = fAnnounceUsingCMPCTBLOCK; + } + } + else if (strCommand == NetMsgType::INV) { @@ -4881,7 +5017,10 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, CNodeState *nodestate = State(pfrom->GetId()); if (CanDirectFetch(chainparams.GetConsensus()) && nodestate->nBlocksInFlight < MAX_BLOCKS_IN_TRANSIT_PER_PEER) { - vToFetch.push_back(inv); + if (nodestate->fProvidesHeaderAndIDs) + vToFetch.push_back(CInv(MSG_CMPCT_BLOCK, inv.hash)); + else + vToFetch.push_back(inv); // Mark block as in flight already, even though the actual "getdata" message only goes out // later (within the same cs_main lock, though). MarkBlockAsInFlight(pfrom->GetId(), inv.hash, chainparams.GetConsensus()); @@ -4978,6 +5117,39 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } + else if (strCommand == NetMsgType::GETBLOCKTXN) + { + BlockTransactionsRequest req; + vRecv >> req; + + BlockMap::iterator it = mapBlockIndex.find(req.blockhash); + if (it == mapBlockIndex.end() || !(it->second->nStatus & BLOCK_HAVE_DATA)) { + Misbehaving(pfrom->GetId(), 100); + LogPrintf("Peer %d sent us a getblocktxn for a block we don't have", pfrom->id); + return true; + } + + if (it->second->nHeight < chainActive.Height() - 15) { + LogPrint("net", "Peer %d sent us a getblocktxn for a block > 15 deep", pfrom->id); + return true; + } + + CBlock block; + assert(ReadBlockFromDisk(block, it->second, chainparams.GetConsensus())); + + BlockTransactions resp(req); + for (size_t i = 0; i < req.indexes.size(); i++) { + if (req.indexes[i] >= block.vtx.size()) { + Misbehaving(pfrom->GetId(), 100); + LogPrintf("Peer %d sent us a getblocktxn with out-of-bounds tx indices", pfrom->id); + return true; + } + resp.txn[i] = block.vtx[req.indexes[i]]; + } + pfrom->PushMessage(NetMsgType::BLOCKTXN, resp); + } + + else if (strCommand == NetMsgType::GETHEADERS) { CBlockLocator locator; @@ -5037,7 +5209,7 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, return true; } - vector<uint256> vWorkQueue; + deque<COutPoint> vWorkQueue; vector<uint256> vEraseQueue; CTransaction tx; vRecv >> tx; @@ -5056,7 +5228,11 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, if (!AlreadyHave(inv) && AcceptToMemoryPool(mempool, state, tx, true, &fMissingInputs)) { mempool.check(pcoinsTip); RelayTransaction(tx); - vWorkQueue.push_back(inv.hash); + for (unsigned int i = 0; i < tx.vout.size(); i++) { + vWorkQueue.emplace_back(inv.hash, i); + } + + pfrom->nLastTXTime = GetTime(); LogPrint("mempool", "AcceptToMemoryPool: peer=%d: accepted %s (poolsz %u txn, %u kB)\n", pfrom->id, @@ -5065,18 +5241,18 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, // Recursively process any orphan transactions that depended on this one set<NodeId> setMisbehaving; - for (unsigned int i = 0; i < vWorkQueue.size(); i++) - { - map<uint256, set<uint256> >::iterator itByPrev = mapOrphanTransactionsByPrev.find(vWorkQueue[i]); + while (!vWorkQueue.empty()) { + auto itByPrev = mapOrphanTransactionsByPrev.find(vWorkQueue.front()); + vWorkQueue.pop_front(); if (itByPrev == mapOrphanTransactionsByPrev.end()) continue; - for (set<uint256>::iterator mi = itByPrev->second.begin(); + for (auto mi = itByPrev->second.begin(); mi != itByPrev->second.end(); ++mi) { - const uint256& orphanHash = *mi; - const CTransaction& orphanTx = mapOrphanTransactions[orphanHash].tx; - NodeId fromPeer = mapOrphanTransactions[orphanHash].fromPeer; + const CTransaction& orphanTx = (*mi)->second.tx; + const uint256& orphanHash = orphanTx.GetHash(); + NodeId fromPeer = (*mi)->second.fromPeer; bool fMissingInputs2 = false; // Use a dummy CValidationState so someone can't setup nodes to counter-DoS based on orphan // resolution (that is, feeding people an invalid transaction based on LegitTxX in order to get @@ -5089,7 +5265,9 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, if (AcceptToMemoryPool(mempool, stateDummy, orphanTx, true, &fMissingInputs2)) { LogPrint("mempool", " accepted orphan tx %s\n", orphanHash.ToString()); RelayTransaction(orphanTx); - vWorkQueue.push_back(orphanHash); + for (unsigned int i = 0; i < orphanTx.vout.size(); i++) { + vWorkQueue.emplace_back(orphanHash, i); + } vEraseQueue.push_back(orphanHash); } else if (!fMissingInputs2) @@ -5118,13 +5296,29 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } else if (fMissingInputs) { - AddOrphanTx(tx, pfrom->GetId()); + bool fRejectedParents = false; // It may be the case that the orphans parents have all been rejected + BOOST_FOREACH(const CTxIn& txin, tx.vin) { + if (recentRejects->contains(txin.prevout.hash)) { + fRejectedParents = true; + break; + } + } + if (!fRejectedParents) { + BOOST_FOREACH(const CTxIn& txin, tx.vin) { + CInv inv(MSG_TX, txin.prevout.hash); + pfrom->AddInventoryKnown(inv); + if (!AlreadyHave(inv)) pfrom->AskFor(inv); + } + AddOrphanTx(tx, pfrom->GetId()); - // DoS prevention: do not allow mapOrphanTransactions to grow unbounded - unsigned int nMaxOrphanTx = (unsigned int)std::max((int64_t)0, GetArg("-maxorphantx", DEFAULT_MAX_ORPHAN_TRANSACTIONS)); - unsigned int nEvicted = LimitOrphanTxSize(nMaxOrphanTx); - if (nEvicted > 0) - LogPrint("mempool", "mapOrphan overflow, removed %u tx\n", nEvicted); + // DoS prevention: do not allow mapOrphanTransactions to grow unbounded + unsigned int nMaxOrphanTx = (unsigned int)std::max((int64_t)0, GetArg("-maxorphantx", DEFAULT_MAX_ORPHAN_TRANSACTIONS)); + unsigned int nEvicted = LimitOrphanTxSize(nMaxOrphanTx); + if (nEvicted > 0) + LogPrint("mempool", "mapOrphan overflow, removed %u tx\n", nEvicted); + } else { + LogPrint("mempool", "not keeping orphan with rejected parents %s\n",tx.GetHash().ToString()); + } } else { assert(recentRejects); recentRejects->insert(tx.GetHash()); @@ -5163,6 +5357,174 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } + else if (strCommand == NetMsgType::CMPCTBLOCK && !fImporting && !fReindex) // Ignore blocks received while importing + { + CBlockHeaderAndShortTxIDs cmpctblock; + vRecv >> cmpctblock; + + LOCK(cs_main); + + if (mapBlockIndex.find(cmpctblock.header.hashPrevBlock) == mapBlockIndex.end()) { + // Doesn't connect (or is genesis), instead of DoSing in AcceptBlockHeader, request deeper headers + if (!IsInitialBlockDownload()) + pfrom->PushMessage(NetMsgType::GETHEADERS, chainActive.GetLocator(pindexBestHeader), uint256()); + return true; + } + + CBlockIndex *pindex = NULL; + CValidationState state; + if (!AcceptBlockHeader(cmpctblock.header, state, chainparams, &pindex)) { + int nDoS; + if (state.IsInvalid(nDoS)) { + if (nDoS > 0) + Misbehaving(pfrom->GetId(), nDoS); + LogPrintf("Peer %d sent us invalid header via cmpctblock\n", pfrom->id); + return true; + } + } + + // If AcceptBlockHeader returned true, it set pindex + assert(pindex); + UpdateBlockAvailability(pfrom->GetId(), pindex->GetBlockHash()); + + std::map<uint256, pair<NodeId, list<QueuedBlock>::iterator> >::iterator blockInFlightIt = mapBlocksInFlight.find(pindex->GetBlockHash()); + bool fAlreadyInFlight = blockInFlightIt != mapBlocksInFlight.end(); + + if (pindex->nStatus & BLOCK_HAVE_DATA) // Nothing to do here + return true; + + if (pindex->nChainWork <= chainActive.Tip()->nChainWork || // We know something better + pindex->nTx != 0) { // We had this block at some point, but pruned it + if (fAlreadyInFlight) { + // We requested this block for some reason, but our mempool will probably be useless + // so we just grab the block via normal getdata + std::vector<CInv> vInv(1); + vInv[0] = CInv(MSG_BLOCK, cmpctblock.header.GetHash()); + pfrom->PushMessage(NetMsgType::GETDATA, vInv); + return true; + } + } + + // If we're not close to tip yet, give up and let parallel block fetch work its magic + if (!fAlreadyInFlight && !CanDirectFetch(chainparams.GetConsensus())) + return true; + + CNodeState *nodestate = State(pfrom->GetId()); + + // We want to be a bit conservative just to be extra careful about DoS + // possibilities in compact block processing... + if (pindex->nHeight <= chainActive.Height() + 2) { + if ((!fAlreadyInFlight && nodestate->nBlocksInFlight < MAX_BLOCKS_IN_TRANSIT_PER_PEER) || + (fAlreadyInFlight && blockInFlightIt->second.first == pfrom->GetId())) { + list<QueuedBlock>::iterator *queuedBlockIt = NULL; + if (!MarkBlockAsInFlight(pfrom->GetId(), pindex->GetBlockHash(), chainparams.GetConsensus(), pindex, &queuedBlockIt)) { + if (!(*queuedBlockIt)->partialBlock) + (*queuedBlockIt)->partialBlock.reset(new PartiallyDownloadedBlock(&mempool)); + else { + // The block was already in flight using compact blocks from the same peer + LogPrint("net", "Peer sent us compact block we were already syncing!\n"); + return true; + } + } + + PartiallyDownloadedBlock& partialBlock = *(*queuedBlockIt)->partialBlock; + ReadStatus status = partialBlock.InitData(cmpctblock); + if (status == READ_STATUS_INVALID) { + MarkBlockAsReceived(pindex->GetBlockHash()); // Reset in-flight state in case of whitelist + Misbehaving(pfrom->GetId(), 100); + LogPrintf("Peer %d sent us invalid compact block\n", pfrom->id); + return true; + } else if (status == READ_STATUS_FAILED) { + // Duplicate txindexes, the block is now in-flight, so just request it + std::vector<CInv> vInv(1); + vInv[0] = CInv(MSG_BLOCK, cmpctblock.header.GetHash()); + pfrom->PushMessage(NetMsgType::GETDATA, vInv); + return true; + } + + BlockTransactionsRequest req; + for (size_t i = 0; i < cmpctblock.BlockTxCount(); i++) { + if (!partialBlock.IsTxAvailable(i)) + req.indexes.push_back(i); + } + if (req.indexes.empty()) { + // Dirty hack to jump to BLOCKTXN code (TODO: move message handling into their own functions) + BlockTransactions txn; + txn.blockhash = cmpctblock.header.GetHash(); + CDataStream blockTxnMsg(SER_NETWORK, PROTOCOL_VERSION); + blockTxnMsg << txn; + return ProcessMessage(pfrom, NetMsgType::BLOCKTXN, blockTxnMsg, nTimeReceived, chainparams); + } else { + req.blockhash = pindex->GetBlockHash(); + pfrom->PushMessage(NetMsgType::GETBLOCKTXN, req); + } + } + } else { + if (fAlreadyInFlight) { + // We requested this block, but its far into the future, so our + // mempool will probably be useless - request the block normally + std::vector<CInv> vInv(1); + vInv[0] = CInv(MSG_BLOCK, cmpctblock.header.GetHash()); + pfrom->PushMessage(NetMsgType::GETDATA, vInv); + return true; + } else { + // If this was an announce-cmpctblock, we want the same treatment as a header message + // Dirty hack to process as if it were just a headers message (TODO: move message handling into their own functions) + std::vector<CBlock> headers; + headers.push_back(cmpctblock.header); + CDataStream vHeadersMsg(SER_NETWORK, PROTOCOL_VERSION); + vHeadersMsg << headers; + return ProcessMessage(pfrom, NetMsgType::HEADERS, vHeadersMsg, nTimeReceived, chainparams); + } + } + + CheckBlockIndex(chainparams.GetConsensus()); + } + + else if (strCommand == NetMsgType::BLOCKTXN && !fImporting && !fReindex) // Ignore blocks received while importing + { + BlockTransactions resp; + vRecv >> resp; + + LOCK(cs_main); + + map<uint256, pair<NodeId, list<QueuedBlock>::iterator> >::iterator it = mapBlocksInFlight.find(resp.blockhash); + if (it == mapBlocksInFlight.end() || !it->second.second->partialBlock || + it->second.first != pfrom->GetId()) { + LogPrint("net", "Peer %d sent us block transactions for block we weren't expecting\n", pfrom->id); + return true; + } + + PartiallyDownloadedBlock& partialBlock = *it->second.second->partialBlock; + CBlock block; + ReadStatus status = partialBlock.FillBlock(block, resp.txn); + if (status == READ_STATUS_INVALID) { + MarkBlockAsReceived(resp.blockhash); // Reset in-flight state in case of whitelist + Misbehaving(pfrom->GetId(), 100); + LogPrintf("Peer %d sent us invalid compact block/non-matching block transactions\n", pfrom->id); + return true; + } else if (status == READ_STATUS_FAILED) { + // Might have collided, fall back to getdata now :( + std::vector<CInv> invs; + invs.push_back(CInv(MSG_BLOCK, resp.blockhash)); + pfrom->PushMessage(NetMsgType::GETDATA, invs); + } else { + CValidationState state; + ProcessNewBlock(state, chainparams, pfrom, &block, false, NULL); + int nDoS; + if (state.IsInvalid(nDoS)) { + assert (state.GetRejectCode() < REJECT_INTERNAL); // Blocks are never rejected with internal reject codes + pfrom->PushMessage(NetMsgType::REJECT, strCommand, (unsigned char)state.GetRejectCode(), + state.GetRejectReason().substr(0, MAX_REJECT_MESSAGE_LENGTH), block.GetHash()); + if (nDoS > 0) { + LOCK(cs_main); + Misbehaving(pfrom->GetId(), nDoS); + } + } + } + } + + else if (strCommand == NetMsgType::HEADERS && !fImporting && !fReindex) // Ignore headers received while importing { std::vector<CBlockHeader> headers; @@ -5212,10 +5574,10 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, } } - if (pindexLast) - UpdateBlockAvailability(pfrom->GetId(), pindexLast->GetBlockHash()); + assert(pindexLast); + UpdateBlockAvailability(pfrom->GetId(), pindexLast->GetBlockHash()); - if (nCount == MAX_HEADERS_RESULTS && pindexLast && hasNewHeaders) { + if (nCount == MAX_HEADERS_RESULTS && hasNewHeaders) { // Headers message had its maximum size; the peer may have more headers. // TODO: optimize: if pindexLast is an ancestor of chainActive.Tip or pindexBestHeader, continue // from there instead. @@ -5265,6 +5627,13 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv, pindexLast->GetBlockHash().ToString(), pindexLast->nHeight); } if (vGetData.size() > 0) { + if (nodestate->fProvidesHeaderAndIDs && vGetData.size() == 1 && mapBlocksInFlight.size() == 1 && pindexLast->pprev->IsValid(BLOCK_VALID_CHAIN)) { + // We seem to be rather well-synced, so it appears pfrom was the first to provide us + // with this block! Let's get them to announce using compact blocks in the future. + MaybeSetPeerAsAnnouncingHeaderAndIDs(nodestate, pfrom); + // In any case, we want to download using a compact block, not a regular one + vGetData[0] = CInv(MSG_CMPCT_BLOCK, vGetData[0].hash); + } pfrom->PushMessage(NetMsgType::GETDATA, vGetData); } } @@ -5818,7 +6187,9 @@ bool SendMessages(CNode* pto) // add all to the inv queue. LOCK(pto->cs_inventory); vector<CBlock> vHeaders; - bool fRevertToInv = (!state.fPreferHeaders || pto->vBlockHashesToAnnounce.size() > MAX_BLOCKS_TO_ANNOUNCE); + bool fRevertToInv = ((!state.fPreferHeaders && + (!state.fPreferHeaderAndIDs || pto->vBlockHashesToAnnounce.size() > 1)) || + pto->vBlockHashesToAnnounce.size() > MAX_BLOCKS_TO_ANNOUNCE); CBlockIndex *pBestIndex = NULL; // last header queued for delivery ProcessBlockAvailability(pto->id); // ensure pindexBestKnownBlock is up-to-date @@ -5870,6 +6241,33 @@ bool SendMessages(CNode* pto) } } } + if (!fRevertToInv && !vHeaders.empty()) { + if (vHeaders.size() == 1 && state.fPreferHeaderAndIDs) { + // We only send up to 1 block as header-and-ids, as otherwise + // probably means we're doing an initial-ish-sync or they're slow + LogPrint("net", "%s sending header-and-ids %s to peer %d\n", __func__, + vHeaders.front().GetHash().ToString(), pto->id); + //TODO: Shouldn't need to reload block from disk, but requires refactor + CBlock block; + assert(ReadBlockFromDisk(block, pBestIndex, consensusParams)); + CBlockHeaderAndShortTxIDs cmpctblock(block); + pto->PushMessage(NetMsgType::CMPCTBLOCK, cmpctblock); + state.pindexBestHeaderSent = pBestIndex; + } else if (state.fPreferHeaders) { + if (vHeaders.size() > 1) { + LogPrint("net", "%s: %u headers, range (%s, %s), to peer=%d\n", __func__, + vHeaders.size(), + vHeaders.front().GetHash().ToString(), + vHeaders.back().GetHash().ToString(), pto->id); + } else { + LogPrint("net", "%s: sending header %s to peer=%d\n", __func__, + vHeaders.front().GetHash().ToString(), pto->id); + } + pto->PushMessage(NetMsgType::HEADERS, vHeaders); + state.pindexBestHeaderSent = pBestIndex; + } else + fRevertToInv = true; + } if (fRevertToInv) { // If falling back to using an inv, just try to inv the tip. // The last entry in vBlockHashesToAnnounce was our tip at some point @@ -5895,18 +6293,6 @@ bool SendMessages(CNode* pto) pto->id, hashToAnnounce.ToString()); } } - } else if (!vHeaders.empty()) { - if (vHeaders.size() > 1) { - LogPrint("net", "%s: %u headers, range (%s, %s), to peer=%d\n", __func__, - vHeaders.size(), - vHeaders.front().GetHash().ToString(), - vHeaders.back().GetHash().ToString(), pto->id); - } else { - LogPrint("net", "%s: sending header %s to peer=%d\n", __func__, - vHeaders.front().GetHash().ToString(), pto->id); - } - pto->PushMessage(NetMsgType::HEADERS, vHeaders); - state.pindexBestHeaderSent = pBestIndex; } pto->vBlockHashesToAnnounce.clear(); } diff --git a/src/main.h b/src/main.h index 9b99ae7c87..f004a29bb1 100644 --- a/src/main.h +++ b/src/main.h @@ -56,6 +56,10 @@ static const CAmount HIGH_TX_FEE_PER_KB = 0.01 * COIN; static const CAmount HIGH_MAX_TX_FEE = 100 * HIGH_TX_FEE_PER_KB; /** Default for -maxorphantx, maximum number of orphan transactions kept in memory */ static const unsigned int DEFAULT_MAX_ORPHAN_TRANSACTIONS = 100; +/** Expiration time for orphan transactions in seconds */ +static const int64_t ORPHAN_TX_EXPIRE_TIME = 20 * 60; +/** Minimum time between orphan transactions expire time checks in seconds */ +static const int64_t ORPHAN_TX_EXPIRE_INTERVAL = 5 * 60; /** Default for -limitancestorcount, max number of in-mempool ancestors */ static const unsigned int DEFAULT_ANCESTOR_LIMIT = 25; /** Default for -limitancestorsize, maximum kilobytes of tx + all in-mempool ancestors */ @@ -215,7 +219,7 @@ void UnregisterNodeSignals(CNodeSignals& nodeSignals); * @param[out] dbp The already known disk position of pblock, or NULL if not yet stored. * @return True if state.IsValid() */ -bool ProcessNewBlock(CValidationState& state, const CChainParams& chainparams, const CNode* pfrom, const CBlock* pblock, bool fForceProcessing, const CDiskBlockPos* dbp); +bool ProcessNewBlock(CValidationState& state, const CChainParams& chainparams, CNode* pfrom, const CBlock* pblock, bool fForceProcessing, const CDiskBlockPos* dbp); /** Check whether enough disk space is available for an incoming block */ bool CheckDiskSpace(uint64_t nAdditionalBytes = 0); /** Open a block file (blk?????.dat) */ @@ -425,13 +429,13 @@ bool ReadBlockFromDisk(CBlock& block, const CBlockIndex* pindex, const Consensus /** Functions for validating blocks and updating the block tree */ /** Context-independent validity checks */ -bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, int64_t nAdjustedTime, bool fCheckPOW = true); -bool CheckBlock(const CBlock& block, CValidationState& state, const Consensus::Params& consensusParams, int64_t nAdjustedTime, bool fCheckPOW = true, bool fCheckMerkleRoot = true); +bool CheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, bool fCheckPOW = true); +bool CheckBlock(const CBlock& block, CValidationState& state, const Consensus::Params& consensusParams, bool fCheckPOW = true, bool fCheckMerkleRoot = true); /** Context-dependent validity checks. * By "context", we mean only the previous block headers, but not the UTXO * set; UTXO-related validity checks are done in ConnectBlock(). */ -bool ContextualCheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, CBlockIndex* pindexPrev); +bool ContextualCheckBlockHeader(const CBlockHeader& block, CValidationState& state, const Consensus::Params& consensusParams, CBlockIndex* pindexPrev, int64_t nAdjustedTime); bool ContextualCheckBlock(const CBlock& block, CValidationState& state, CBlockIndex *pindexPrev); /** Apply the effects of this block (with given index) on the UTXO set represented by coins. diff --git a/src/miner.cpp b/src/miner.cpp index 99eb0a2ebd..989ad11a26 100644 --- a/src/miner.cpp +++ b/src/miner.cpp @@ -25,6 +25,7 @@ #include "utilmoneystr.h" #include "validationinterface.h" +#include <algorithm> #include <boost/thread.hpp> #include <boost/tuple/tuple.hpp> #include <queue> @@ -134,7 +135,7 @@ CBlockTemplate* BlockAssembler::CreateNewBlock(const CScript& scriptPubKeyIn) : pblock->GetBlockTime(); addPriorityTxs(); - addScoreTxs(); + addPackageTxs(); nLastBlockTx = nBlockTx; nLastBlockSize = nBlockSize; @@ -177,7 +178,38 @@ bool BlockAssembler::isStillDependent(CTxMemPool::txiter iter) return false; } +void BlockAssembler::onlyUnconfirmed(CTxMemPool::setEntries& testSet) +{ + for (CTxMemPool::setEntries::iterator iit = testSet.begin(); iit != testSet.end(); ) { + // Only test txs not already in the block + if (inBlock.count(*iit)) { + testSet.erase(iit++); + } + else { + iit++; + } + } +} + +bool BlockAssembler::TestPackage(uint64_t packageSize, unsigned int packageSigOps) +{ + if (nBlockSize + packageSize >= nBlockMaxSize) + return false; + if (nBlockSigOps + packageSigOps >= MAX_BLOCK_SIGOPS) + return false; + return true; +} +// Block size and sigops have already been tested. Check that all transactions +// are final. +bool BlockAssembler::TestPackageFinality(const CTxMemPool::setEntries& package) +{ + BOOST_FOREACH (const CTxMemPool::txiter it, package) { + if (!IsFinalTx(it->GetTx(), nHeight, nLockTimeCutoff)) + return false; + } + return true; +} bool BlockAssembler::TestForBlock(CTxMemPool::txiter iter) { @@ -297,6 +329,178 @@ void BlockAssembler::addScoreTxs() } } +void BlockAssembler::UpdatePackagesForAdded(const CTxMemPool::setEntries& alreadyAdded, + indexed_modified_transaction_set &mapModifiedTx) +{ + BOOST_FOREACH(const CTxMemPool::txiter it, alreadyAdded) { + CTxMemPool::setEntries descendants; + mempool.CalculateDescendants(it, descendants); + // Insert all descendants (not yet in block) into the modified set + BOOST_FOREACH(CTxMemPool::txiter desc, descendants) { + if (alreadyAdded.count(desc)) + continue; + modtxiter mit = mapModifiedTx.find(desc); + if (mit == mapModifiedTx.end()) { + CTxMemPoolModifiedEntry modEntry(desc); + modEntry.nSizeWithAncestors -= it->GetTxSize(); + modEntry.nModFeesWithAncestors -= it->GetModifiedFee(); + modEntry.nSigOpCountWithAncestors -= it->GetSigOpCount(); + mapModifiedTx.insert(modEntry); + } else { + mapModifiedTx.modify(mit, update_for_parent_inclusion(it)); + } + } + } +} + +// Skip entries in mapTx that are already in a block or are present +// in mapModifiedTx (which implies that the mapTx ancestor state is +// stale due to ancestor inclusion in the block) +// Also skip transactions that we've already failed to add. This can happen if +// we consider a transaction in mapModifiedTx and it fails: we can then +// potentially consider it again while walking mapTx. It's currently +// guaranteed to fail again, but as a belt-and-suspenders check we put it in +// failedTx and avoid re-evaluation, since the re-evaluation would be using +// cached size/sigops/fee values that are not actually correct. +bool BlockAssembler::SkipMapTxEntry(CTxMemPool::txiter it, indexed_modified_transaction_set &mapModifiedTx, CTxMemPool::setEntries &failedTx) +{ + assert (it != mempool.mapTx.end()); + if (mapModifiedTx.count(it) || inBlock.count(it) || failedTx.count(it)) + return true; + return false; +} + +void BlockAssembler::SortForBlock(const CTxMemPool::setEntries& package, CTxMemPool::txiter entry, std::vector<CTxMemPool::txiter>& sortedEntries) +{ + // Sort package by ancestor count + // If a transaction A depends on transaction B, then A's ancestor count + // must be greater than B's. So this is sufficient to validly order the + // transactions for block inclusion. + sortedEntries.clear(); + sortedEntries.insert(sortedEntries.begin(), package.begin(), package.end()); + std::sort(sortedEntries.begin(), sortedEntries.end(), CompareTxIterByAncestorCount()); +} + +// This transaction selection algorithm orders the mempool based +// on feerate of a transaction including all unconfirmed ancestors. +// Since we don't remove transactions from the mempool as we select them +// for block inclusion, we need an alternate method of updating the feerate +// of a transaction with its not-yet-selected ancestors as we go. +// This is accomplished by walking the in-mempool descendants of selected +// transactions and storing a temporary modified state in mapModifiedTxs. +// Each time through the loop, we compare the best transaction in +// mapModifiedTxs with the next transaction in the mempool to decide what +// transaction package to work on next. +void BlockAssembler::addPackageTxs() +{ + // mapModifiedTx will store sorted packages after they are modified + // because some of their txs are already in the block + indexed_modified_transaction_set mapModifiedTx; + // Keep track of entries that failed inclusion, to avoid duplicate work + CTxMemPool::setEntries failedTx; + + // Start by adding all descendants of previously added txs to mapModifiedTx + // and modifying them for their already included ancestors + UpdatePackagesForAdded(inBlock, mapModifiedTx); + + CTxMemPool::indexed_transaction_set::index<ancestor_score>::type::iterator mi = mempool.mapTx.get<ancestor_score>().begin(); + CTxMemPool::txiter iter; + while (mi != mempool.mapTx.get<ancestor_score>().end() || !mapModifiedTx.empty()) + { + // First try to find a new transaction in mapTx to evaluate. + if (mi != mempool.mapTx.get<ancestor_score>().end() && + SkipMapTxEntry(mempool.mapTx.project<0>(mi), mapModifiedTx, failedTx)) { + ++mi; + continue; + } + + // Now that mi is not stale, determine which transaction to evaluate: + // the next entry from mapTx, or the best from mapModifiedTx? + bool fUsingModified = false; + + modtxscoreiter modit = mapModifiedTx.get<ancestor_score>().begin(); + if (mi == mempool.mapTx.get<ancestor_score>().end()) { + // We're out of entries in mapTx; use the entry from mapModifiedTx + iter = modit->iter; + fUsingModified = true; + } else { + // Try to compare the mapTx entry to the mapModifiedTx entry + iter = mempool.mapTx.project<0>(mi); + if (modit != mapModifiedTx.get<ancestor_score>().end() && + CompareModifiedEntry()(*modit, CTxMemPoolModifiedEntry(iter))) { + // The best entry in mapModifiedTx has higher score + // than the one from mapTx. + // Switch which transaction (package) to consider + iter = modit->iter; + fUsingModified = true; + } else { + // Either no entry in mapModifiedTx, or it's worse than mapTx. + // Increment mi for the next loop iteration. + ++mi; + } + } + + // We skip mapTx entries that are inBlock, and mapModifiedTx shouldn't + // contain anything that is inBlock. + assert(!inBlock.count(iter)); + + uint64_t packageSize = iter->GetSizeWithAncestors(); + CAmount packageFees = iter->GetModFeesWithAncestors(); + unsigned int packageSigOps = iter->GetSigOpCountWithAncestors(); + if (fUsingModified) { + packageSize = modit->nSizeWithAncestors; + packageFees = modit->nModFeesWithAncestors; + packageSigOps = modit->nSigOpCountWithAncestors; + } + + if (packageFees < ::minRelayTxFee.GetFee(packageSize) && nBlockSize >= nBlockMinSize) { + // Everything else we might consider has a lower fee rate + return; + } + + if (!TestPackage(packageSize, packageSigOps)) { + if (fUsingModified) { + // Since we always look at the best entry in mapModifiedTx, + // we must erase failed entries so that we can consider the + // next best entry on the next loop iteration + mapModifiedTx.get<ancestor_score>().erase(modit); + failedTx.insert(iter); + } + continue; + } + + CTxMemPool::setEntries ancestors; + uint64_t nNoLimit = std::numeric_limits<uint64_t>::max(); + std::string dummy; + mempool.CalculateMemPoolAncestors(*iter, ancestors, nNoLimit, nNoLimit, nNoLimit, nNoLimit, dummy, false); + + onlyUnconfirmed(ancestors); + ancestors.insert(iter); + + // Test if all tx's are Final + if (!TestPackageFinality(ancestors)) { + if (fUsingModified) { + mapModifiedTx.get<ancestor_score>().erase(modit); + failedTx.insert(iter); + } + continue; + } + + // Package can be added. Sort the entries in a valid order. + vector<CTxMemPool::txiter> sortedEntries; + SortForBlock(ancestors, iter, sortedEntries); + + for (size_t i=0; i<sortedEntries.size(); ++i) { + AddToBlock(sortedEntries[i]); + // Erase from the modified set, if present + mapModifiedTx.erase(sortedEntries[i]); + } + + // Update transactions that depend on each of these + UpdatePackagesForAdded(ancestors, mapModifiedTx); + } +} + void BlockAssembler::addPriorityTxs() { // How much of the block should be dedicated to high-priority transactions, diff --git a/src/miner.h b/src/miner.h index 74f19693c4..a9fea85304 100644 --- a/src/miner.h +++ b/src/miner.h @@ -11,6 +11,8 @@ #include <stdint.h> #include <memory> +#include "boost/multi_index_container.hpp" +#include "boost/multi_index/ordered_index.hpp" class CBlockIndex; class CChainParams; @@ -29,6 +31,104 @@ struct CBlockTemplate std::vector<int64_t> vTxSigOps; }; +// Container for tracking updates to ancestor feerate as we include (parent) +// transactions in a block +struct CTxMemPoolModifiedEntry { + CTxMemPoolModifiedEntry(CTxMemPool::txiter entry) + { + iter = entry; + nSizeWithAncestors = entry->GetSizeWithAncestors(); + nModFeesWithAncestors = entry->GetModFeesWithAncestors(); + nSigOpCountWithAncestors = entry->GetSigOpCountWithAncestors(); + } + + CTxMemPool::txiter iter; + uint64_t nSizeWithAncestors; + CAmount nModFeesWithAncestors; + unsigned int nSigOpCountWithAncestors; +}; + +/** Comparator for CTxMemPool::txiter objects. + * It simply compares the internal memory address of the CTxMemPoolEntry object + * pointed to. This means it has no meaning, and is only useful for using them + * as key in other indexes. + */ +struct CompareCTxMemPoolIter { + bool operator()(const CTxMemPool::txiter& a, const CTxMemPool::txiter& b) const + { + return &(*a) < &(*b); + } +}; + +struct modifiedentry_iter { + typedef CTxMemPool::txiter result_type; + result_type operator() (const CTxMemPoolModifiedEntry &entry) const + { + return entry.iter; + } +}; + +// This matches the calculation in CompareTxMemPoolEntryByAncestorFee, +// except operating on CTxMemPoolModifiedEntry. +// TODO: refactor to avoid duplication of this logic. +struct CompareModifiedEntry { + bool operator()(const CTxMemPoolModifiedEntry &a, const CTxMemPoolModifiedEntry &b) + { + double f1 = (double)a.nModFeesWithAncestors * b.nSizeWithAncestors; + double f2 = (double)b.nModFeesWithAncestors * a.nSizeWithAncestors; + if (f1 == f2) { + return CTxMemPool::CompareIteratorByHash()(a.iter, b.iter); + } + return f1 > f2; + } +}; + +// A comparator that sorts transactions based on number of ancestors. +// This is sufficient to sort an ancestor package in an order that is valid +// to appear in a block. +struct CompareTxIterByAncestorCount { + bool operator()(const CTxMemPool::txiter &a, const CTxMemPool::txiter &b) + { + if (a->GetCountWithAncestors() != b->GetCountWithAncestors()) + return a->GetCountWithAncestors() < b->GetCountWithAncestors(); + return CTxMemPool::CompareIteratorByHash()(a, b); + } +}; + +typedef boost::multi_index_container< + CTxMemPoolModifiedEntry, + boost::multi_index::indexed_by< + boost::multi_index::ordered_unique< + modifiedentry_iter, + CompareCTxMemPoolIter + >, + // sorted by modified ancestor fee rate + boost::multi_index::ordered_non_unique< + // Reuse same tag from CTxMemPool's similar index + boost::multi_index::tag<ancestor_score>, + boost::multi_index::identity<CTxMemPoolModifiedEntry>, + CompareModifiedEntry + > + > +> indexed_modified_transaction_set; + +typedef indexed_modified_transaction_set::nth_index<0>::type::iterator modtxiter; +typedef indexed_modified_transaction_set::index<ancestor_score>::type::iterator modtxscoreiter; + +struct update_for_parent_inclusion +{ + update_for_parent_inclusion(CTxMemPool::txiter it) : iter(it) {} + + void operator() (CTxMemPoolModifiedEntry &e) + { + e.nModFeesWithAncestors -= iter->GetFee(); + e.nSizeWithAncestors -= iter->GetTxSize(); + e.nSigOpCountWithAncestors -= iter->GetSigOpCount(); + } + + CTxMemPool::txiter iter; +}; + /** Generate a new block, without valid proof-of-work */ class BlockAssembler { @@ -74,12 +174,30 @@ private: void addScoreTxs(); /** Add transactions based on tx "priority" */ void addPriorityTxs(); + /** Add transactions based on feerate including unconfirmed ancestors */ + void addPackageTxs(); // helper function for addScoreTxs and addPriorityTxs /** Test if tx will still "fit" in the block */ bool TestForBlock(CTxMemPool::txiter iter); /** Test if tx still has unconfirmed parents not yet in block */ bool isStillDependent(CTxMemPool::txiter iter); + + // helper functions for addPackageTxs() + /** Remove confirmed (inBlock) entries from given set */ + void onlyUnconfirmed(CTxMemPool::setEntries& testSet); + /** Test if a new package would "fit" in the block */ + bool TestPackage(uint64_t packageSize, unsigned int packageSigOps); + /** Test if a set of transactions are all final */ + bool TestPackageFinality(const CTxMemPool::setEntries& package); + /** Return true if given transaction from mapTx has already been evaluated, + * or if the transaction's cached data in mapTx is incorrect. */ + bool SkipMapTxEntry(CTxMemPool::txiter it, indexed_modified_transaction_set &mapModifiedTx, CTxMemPool::setEntries &failedTx); + /** Sort the package in an order that is valid to appear in a block */ + void SortForBlock(const CTxMemPool::setEntries& package, CTxMemPool::txiter entry, std::vector<CTxMemPool::txiter>& sortedEntries); + /** Add descendants of given transactions to mapModifiedTx with ancestor + * state updated assuming given transactions are inBlock. */ + void UpdatePackagesForAdded(const CTxMemPool::setEntries& alreadyAdded, indexed_modified_transaction_set &mapModifiedTx); }; /** Modify the extranonce in a block */ diff --git a/src/net.cpp b/src/net.cpp index a390eca776..336163a896 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -368,6 +368,16 @@ CNode* FindNode(const CService& addr) return NULL; } +//TODO: This is used in only one place in main, and should be removed +CNode* FindNode(const NodeId nodeid) +{ + LOCK(cs_vNodes); + BOOST_FOREACH(CNode* pnode, vNodes) + if (pnode->GetId() == nodeid) + return (pnode); + return NULL; +} + CNode* ConnectNode(CAddress addrConnect, const char *pszDest, bool fCountFailure) { if (pszDest == NULL) { @@ -400,6 +410,26 @@ CNode* ConnectNode(CAddress addrConnect, const char *pszDest, bool fCountFailure return NULL; } + if (pszDest && addrConnect.IsValid()) { + // It is possible that we already have a connection to the IP/port pszDest resolved to. + // In that case, drop the connection that was just created, and return the existing CNode instead. + // Also store the name we used to connect in that CNode, so that future FindNode() calls to that + // name catch this early. + CNode* pnode = FindNode((CService)addrConnect); + if (pnode) + { + pnode->AddRef(); + { + LOCK(cs_vNodes); + if (pnode->addrName.empty()) { + pnode->addrName = std::string(pszDest); + } + } + CloseSocket(hSocket); + return pnode; + } + } + addrman.Attempt(addrConnect, fCountFailure); // Add node @@ -841,6 +871,11 @@ struct NodeEvictionCandidate NodeId id; int64_t nTimeConnected; int64_t nMinPingUsecTime; + int64_t nLastBlockTime; + int64_t nLastTXTime; + bool fNetworkNode; + bool fRelayTxes; + bool fBloomFilter; CAddress addr; uint64_t nKeyedNetGroup; }; @@ -857,7 +892,24 @@ static bool ReverseCompareNodeTimeConnected(const NodeEvictionCandidate &a, cons static bool CompareNetGroupKeyed(const NodeEvictionCandidate &a, const NodeEvictionCandidate &b) { return a.nKeyedNetGroup < b.nKeyedNetGroup; -}; +} + +static bool CompareNodeBlockTime(const NodeEvictionCandidate &a, const NodeEvictionCandidate &b) +{ + // There is a fall-through here because it is common for a node to have many peers which have not yet relayed a block. + if (a.nLastBlockTime != b.nLastBlockTime) return a.nLastBlockTime < b.nLastBlockTime; + if (a.fNetworkNode != b.fNetworkNode) return b.fNetworkNode; + return a.nTimeConnected > b.nTimeConnected; +} + +static bool CompareNodeTXTime(const NodeEvictionCandidate &a, const NodeEvictionCandidate &b) +{ + // There is a fall-through here because it is common for a node to have more than a few peers that have not yet relayed txn. + if (a.nLastTXTime != b.nLastTXTime) return a.nLastTXTime < b.nLastTXTime; + if (a.fRelayTxes != b.fRelayTxes) return b.fRelayTxes; + if (a.fBloomFilter != b.fBloomFilter) return a.fBloomFilter; + return a.nTimeConnected > b.nTimeConnected; +} /** Try to find a connection to evict when the node is full. * Extreme care must be taken to avoid opening the node to attacker @@ -867,7 +919,7 @@ static bool CompareNetGroupKeyed(const NodeEvictionCandidate &a, const NodeEvict * to forge. In order to partition a node the attacker must be * simultaneously better at all of them than honest peers. */ -static bool AttemptToEvictConnection(bool fPreferNewConnection) { +static bool AttemptToEvictConnection() { std::vector<NodeEvictionCandidate> vEvictionCandidates; { LOCK(cs_vNodes); @@ -879,7 +931,9 @@ static bool AttemptToEvictConnection(bool fPreferNewConnection) { continue; if (node->fDisconnect) continue; - NodeEvictionCandidate candidate = {node->id, node->nTimeConnected, node->nMinPingUsecTime, node->addr, node->nKeyedNetGroup}; + NodeEvictionCandidate candidate = {node->id, node->nTimeConnected, node->nMinPingUsecTime, + node->nLastBlockTime, node->nLastTXTime, node->fNetworkNode, + node->fRelayTxes, node->pfilter != NULL, node->addr, node->nKeyedNetGroup}; vEvictionCandidates.push_back(candidate); } } @@ -902,6 +956,20 @@ static bool AttemptToEvictConnection(bool fPreferNewConnection) { if (vEvictionCandidates.empty()) return false; + // Protect 4 nodes that most recently sent us transactions. + // An attacker cannot manipulate this metric without performing useful work. + std::sort(vEvictionCandidates.begin(), vEvictionCandidates.end(), CompareNodeTXTime); + vEvictionCandidates.erase(vEvictionCandidates.end() - std::min(4, static_cast<int>(vEvictionCandidates.size())), vEvictionCandidates.end()); + + if (vEvictionCandidates.empty()) return false; + + // Protect 4 nodes that most recently sent us blocks. + // An attacker cannot manipulate this metric without performing useful work. + std::sort(vEvictionCandidates.begin(), vEvictionCandidates.end(), CompareNodeBlockTime); + vEvictionCandidates.erase(vEvictionCandidates.end() - std::min(4, static_cast<int>(vEvictionCandidates.size())), vEvictionCandidates.end()); + + if (vEvictionCandidates.empty()) return false; + // Protect the half of the remaining nodes which have been connected the longest. // This replicates the non-eviction implicit behavior, and precludes attacks that start later. std::sort(vEvictionCandidates.begin(), vEvictionCandidates.end(), ReverseCompareNodeTimeConnected); @@ -930,13 +998,6 @@ static bool AttemptToEvictConnection(bool fPreferNewConnection) { // Reduce to the network group with the most connections vEvictionCandidates = std::move(mapAddrCounts[naMostConnections]); - // Do not disconnect peers if there is only one unprotected connection from their network group. - // This step excessively favors netgroup diversity, and should be removed once more protective criteria are established. - if (vEvictionCandidates.size() <= 1) - // unless we prefer the new connection (for whitelisted peers) - if (!fPreferNewConnection) - return false; - // Disconnect from the network group with the most connections NodeId evicted = vEvictionCandidates.front().id; LOCK(cs_vNodes); @@ -1002,7 +1063,7 @@ static void AcceptConnection(const ListenSocket& hListenSocket) { if (nInbound >= nMaxInbound) { - if (!AttemptToEvictConnection(whitelisted)) { + if (!AttemptToEvictConnection()) { // No connection to evict, disconnect the new connection LogPrint("net", "failed to find an eviction candidate - connection dropped (full)\n"); CloseSocket(hSocket); @@ -1415,6 +1476,18 @@ void MapPort(bool) +static std::string GetDNSHost(const CDNSSeedData& data, ServiceFlags* requiredServiceBits) +{ + //use default host for non-filter-capable seeds or if we use the default service bits (NODE_NETWORK) + if (!data.supportsServiceBitsFiltering || *requiredServiceBits == NODE_NETWORK) { + *requiredServiceBits = NODE_NETWORK; + return data.host; + } + + return strprintf("x%x.%s", *requiredServiceBits, data.host); +} + + void ThreadDNSAddressSeed() { // goal: only query DNS seeds if address need is acute @@ -1441,7 +1514,7 @@ void ThreadDNSAddressSeed() std::vector<CNetAddr> vIPs; std::vector<CAddress> vAdd; ServiceFlags requiredServiceBits = nRelevantServices; - if (LookupHost(seed.getHost(requiredServiceBits).c_str(), vIPs, 0, true)) + if (LookupHost(GetDNSHost(seed, &requiredServiceBits).c_str(), vIPs, 0, true)) { BOOST_FOREACH(const CNetAddr& ip, vIPs) { @@ -1616,68 +1689,79 @@ void ThreadOpenConnections() } } -void ThreadOpenAddedConnections() +std::vector<AddedNodeInfo> GetAddedNodeInfo() { + std::vector<AddedNodeInfo> ret; + + std::list<std::string> lAddresses(0); { LOCK(cs_vAddedNodes); - vAddedNodes = mapMultiArgs["-addnode"]; + ret.reserve(vAddedNodes.size()); + BOOST_FOREACH(const std::string& strAddNode, vAddedNodes) + lAddresses.push_back(strAddNode); } - if (HaveNameProxy()) { - while(true) { - std::list<std::string> lAddresses(0); - { - LOCK(cs_vAddedNodes); - BOOST_FOREACH(const std::string& strAddNode, vAddedNodes) - lAddresses.push_back(strAddNode); + + // Build a map of all already connected addresses (by IP:port and by name) to inbound/outbound and resolved CService + std::map<CService, bool> mapConnected; + std::map<std::string, std::pair<bool, CService>> mapConnectedByName; + { + LOCK(cs_vNodes); + for (const CNode* pnode : vNodes) { + if (pnode->addr.IsValid()) { + mapConnected[pnode->addr] = pnode->fInbound; } - BOOST_FOREACH(const std::string& strAddNode, lAddresses) { - CAddress addr; - CSemaphoreGrant grant(*semOutbound); - OpenNetworkConnection(addr, false, &grant, strAddNode.c_str()); - MilliSleep(500); + if (!pnode->addrName.empty()) { + mapConnectedByName[pnode->addrName] = std::make_pair(pnode->fInbound, static_cast<const CService&>(pnode->addr)); } - MilliSleep(120000); // Retry every 2 minutes } } + BOOST_FOREACH(const std::string& strAddNode, lAddresses) { + CService service(strAddNode, Params().GetDefaultPort()); + if (service.IsValid()) { + // strAddNode is an IP:port + auto it = mapConnected.find(service); + if (it != mapConnected.end()) { + ret.push_back(AddedNodeInfo{strAddNode, service, true, it->second}); + } else { + ret.push_back(AddedNodeInfo{strAddNode, CService(), false, false}); + } + } else { + // strAddNode is a name + auto it = mapConnectedByName.find(strAddNode); + if (it != mapConnectedByName.end()) { + ret.push_back(AddedNodeInfo{strAddNode, it->second.second, true, it->second.first}); + } else { + ret.push_back(AddedNodeInfo{strAddNode, CService(), false, false}); + } + } + } + + return ret; +} + +void ThreadOpenAddedConnections() +{ + { + LOCK(cs_vAddedNodes); + vAddedNodes = mapMultiArgs["-addnode"]; + } + for (unsigned int i = 0; true; i++) { - std::list<std::string> lAddresses(0); - { - LOCK(cs_vAddedNodes); - BOOST_FOREACH(const std::string& strAddNode, vAddedNodes) - lAddresses.push_back(strAddNode); + std::vector<AddedNodeInfo> vInfo = GetAddedNodeInfo(); + for (const AddedNodeInfo& info : vInfo) { + if (!info.fConnected) { + CSemaphoreGrant grant(*semOutbound); + // If strAddedNode is an IP/port, decode it immediately, so + // OpenNetworkConnection can detect existing connections to that IP/port. + CService service(info.strAddedNode, Params().GetDefaultPort()); + OpenNetworkConnection(CAddress(service, NODE_NONE), false, &grant, info.strAddedNode.c_str(), false); + MilliSleep(500); + } } - std::list<std::vector<CService> > lservAddressesToAdd(0); - BOOST_FOREACH(const std::string& strAddNode, lAddresses) { - std::vector<CService> vservNode(0); - if(Lookup(strAddNode.c_str(), vservNode, Params().GetDefaultPort(), fNameLookup, 0)) - lservAddressesToAdd.push_back(vservNode); - } - // Attempt to connect to each IP for each addnode entry until at least one is successful per addnode entry - // (keeping in mind that addnode entries can have many IPs if fNameLookup) - { - LOCK(cs_vNodes); - BOOST_FOREACH(CNode* pnode, vNodes) - for (std::list<std::vector<CService> >::iterator it = lservAddressesToAdd.begin(); it != lservAddressesToAdd.end(); it++) - BOOST_FOREACH(const CService& addrNode, *(it)) - if (pnode->addr == addrNode) - { - it = lservAddressesToAdd.erase(it); - it--; - break; - } - } - BOOST_FOREACH(std::vector<CService>& vserv, lservAddressesToAdd) - { - CSemaphoreGrant grant(*semOutbound); - /* We want -addnode to work even for nodes that don't provide all - * wanted services, so pass in nServices=NODE_NONE to CAddress. */ - OpenNetworkConnection(CAddress(vserv[i % vserv.size()], NODE_NONE), false, &grant); - MilliSleep(500); - } MilliSleep(120000); // Retry every 2 minutes } } @@ -2368,6 +2452,8 @@ CNode::CNode(SOCKET hSocketIn, const CAddress& addrIn, const std::string& addrNa fSentAddr = false; pfilter = new CBloomFilter(); timeLastMempoolReq = 0; + nLastBlockTime = 0; + nLastTXTime = 0; nPingNonceSent = 0; nPingUsecStart = 0; nPingUsecTime = 0; @@ -80,12 +80,15 @@ static const unsigned int DEFAULT_MISBEHAVING_BANTIME = 60 * 60 * 24; // Defaul unsigned int ReceiveFloodSize(); unsigned int SendBufferSize(); +typedef int NodeId; + void AddOneShot(const std::string& strDest); void AddressCurrentlyConnected(const CService& addr); CNode* FindNode(const CNetAddr& ip); CNode* FindNode(const CSubNet& subNet); CNode* FindNode(const std::string& addrName); CNode* FindNode(const CService& ip); +CNode* FindNode(const NodeId id); //TODO: Remove this bool OpenNetworkConnection(const CAddress& addrConnect, bool fCountFailure, CSemaphoreGrant *grantOutbound = NULL, const char *strDest = NULL, bool fOneShot = false); void MapPort(bool fUseUPnP); unsigned short GetListenPort(); @@ -94,8 +97,6 @@ void StartNode(boost::thread_group& threadGroup, CScheduler& scheduler); bool StopNode(); void SocketSendData(CNode *pnode); -typedef int NodeId; - struct CombinerAll { typedef bool result_type; @@ -419,6 +420,11 @@ public: // Last time a "MEMPOOL" request was serviced. std::atomic<int64_t> timeLastMempoolReq; + + // Block and TXN accept times + std::atomic<int64_t> nLastBlockTime; + std::atomic<int64_t> nLastTXTime; + // Ping time measurement: // The pong reply we're expecting, or 0 if no pong expected. uint64_t nPingNonceSent; @@ -818,4 +824,14 @@ public: /** Return a timestamp in the future (in microseconds) for exponentially distributed events. */ int64_t PoissonNextSend(int64_t nNow, int average_interval_seconds); +struct AddedNodeInfo +{ + std::string strAddedNode; + CService resolvedAddress; + bool fConnected; + bool fInbound; +}; + +std::vector<AddedNodeInfo> GetAddedNodeInfo(); + #endif // BITCOIN_NET_H diff --git a/src/netbase.cpp b/src/netbase.cpp index 572ae70871..e2a516986c 100644 --- a/src/netbase.cpp +++ b/src/netbase.cpp @@ -621,10 +621,10 @@ bool ConnectSocketByName(CService &addr, SOCKET& hSocketRet, const char *pszDest proxyType nameProxy; GetNameProxy(nameProxy); - CService addrResolved; - if (Lookup(strDest.c_str(), addrResolved, port, fNameLookup && !HaveNameProxy())) { - if (addrResolved.IsValid()) { - addr = addrResolved; + std::vector<CService> addrResolved; + if (Lookup(strDest.c_str(), addrResolved, port, fNameLookup && !HaveNameProxy(), 256)) { + if (addrResolved.size() > 0) { + addr = addrResolved[GetRand(addrResolved.size())]; return ConnectSocket(addr, hSocketRet, nTimeout); } } diff --git a/src/protocol.cpp b/src/protocol.cpp index 422ef6f636..2f90fb764c 100644 --- a/src/protocol.cpp +++ b/src/protocol.cpp @@ -35,6 +35,10 @@ const char *FILTERCLEAR="filterclear"; const char *REJECT="reject"; const char *SENDHEADERS="sendheaders"; const char *FEEFILTER="feefilter"; +const char *SENDCMPCT="sendcmpct"; +const char *CMPCTBLOCK="cmpctblock"; +const char *GETBLOCKTXN="getblocktxn"; +const char *BLOCKTXN="blocktxn"; }; static const char* ppszTypeName[] = @@ -42,7 +46,8 @@ static const char* ppszTypeName[] = "ERROR", // Should never occur NetMsgType::TX, NetMsgType::BLOCK, - "filtered block" // Should never occur + "filtered block", // Should never occur + "compact block" // Should never occur }; /** All known message types. Keep this in the same order as the list of @@ -70,7 +75,11 @@ const static std::string allNetMessageTypes[] = { NetMsgType::FILTERCLEAR, NetMsgType::REJECT, NetMsgType::SENDHEADERS, - NetMsgType::FEEFILTER + NetMsgType::FEEFILTER, + NetMsgType::SENDCMPCT, + NetMsgType::CMPCTBLOCK, + NetMsgType::GETBLOCKTXN, + NetMsgType::BLOCKTXN, }; const static std::vector<std::string> allNetMessageTypesVec(allNetMessageTypes, allNetMessageTypes+ARRAYLEN(allNetMessageTypes)); diff --git a/src/protocol.h b/src/protocol.h index ab0a581783..a72813e959 100644 --- a/src/protocol.h +++ b/src/protocol.h @@ -217,6 +217,32 @@ extern const char *SENDHEADERS; * @since protocol version 70013 as described by BIP133 */ extern const char *FEEFILTER; +/** + * Contains a 1-byte bool and 8-byte LE version number. + * Indicates that a node is willing to provide blocks via "cmpctblock" messages. + * May indicate that a node prefers to receive new block announcements via a + * "cmpctblock" message rather than an "inv", depending on message contents. + * @since protocol version 70014 as described by BIP 152 + */ +extern const char *SENDCMPCT; +/** + * Contains a CBlockHeaderAndShortTxIDs object - providing a header and + * list of "short txids". + * @since protocol version 70014 as described by BIP 152 + */ +extern const char *CMPCTBLOCK; +/** + * Contains a BlockTransactionsRequest + * Peer should respond with "blocktxn" message. + * @since protocol version 70014 as described by BIP 152 + */ +extern const char *GETBLOCKTXN; +/** + * Contains a BlockTransactions. + * Sent in response to a "getblocktxn" message. + * @since protocol version 70014 as described by BIP 152 + */ +extern const char *BLOCKTXN; }; /* Get a vector of all valid message types (see above) */ @@ -315,9 +341,10 @@ public: enum { MSG_TX = 1, MSG_BLOCK, - // Nodes may always request a MSG_FILTERED_BLOCK in a getdata, however, - // MSG_FILTERED_BLOCK should not appear in any invs except as a part of getdata. + // Nodes may always request a MSG_FILTERED_BLOCK/MSG_CMPCT_BLOCK in a getdata, however, + // MSG_FILTERED_BLOCK/MSG_CMPCT_BLOCK should not appear in any invs except as a part of getdata. MSG_FILTERED_BLOCK, + MSG_CMPCT_BLOCK, }; #endif // BITCOIN_PROTOCOL_H diff --git a/src/qt/bitcoin.cpp b/src/qt/bitcoin.cpp index 6218ab6ab0..64b5c83d72 100644 --- a/src/qt/bitcoin.cpp +++ b/src/qt/bitcoin.cpp @@ -533,6 +533,9 @@ int main(int argc, char *argv[]) // Generate high-dpi pixmaps QApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); #endif +#if QT_VERSION >= 0x050600 + QGuiApplication::setAttribute(Qt::AA_EnableHighDpiScaling); +#endif #ifdef Q_OS_MAC QApplication::setAttribute(Qt::AA_DontShowIconsInMenus); #endif diff --git a/src/qt/bitcoin_locale.qrc b/src/qt/bitcoin_locale.qrc index a8a0253b07..1acda7f28c 100644 --- a/src/qt/bitcoin_locale.qrc +++ b/src/qt/bitcoin_locale.qrc @@ -1,5 +1,6 @@ <!DOCTYPE RCC><RCC version="1.0"> <qresource prefix="/translations"> + <file alias="af">locale/bitcoin_af.qm</file> <file alias="af_ZA">locale/bitcoin_af_ZA.qm</file> <file alias="ar">locale/bitcoin_ar.qm</file> <file alias="be_BY">locale/bitcoin_be_BY.qm</file> @@ -19,7 +20,10 @@ <file alias="en_GB">locale/bitcoin_en_GB.qm</file> <file alias="en">locale/bitcoin_en.qm</file> <file alias="eo">locale/bitcoin_eo.qm</file> + <file alias="es_419">locale/bitcoin_es_419.qm</file> + <file alias="es_AR">locale/bitcoin_es_AR.qm</file> <file alias="es_CL">locale/bitcoin_es_CL.qm</file> + <file alias="es_CO">locale/bitcoin_es_CO.qm</file> <file alias="es_DO">locale/bitcoin_es_DO.qm</file> <file alias="es_ES">locale/bitcoin_es_ES.qm</file> <file alias="es_MX">locale/bitcoin_es_MX.qm</file> @@ -30,6 +34,7 @@ <file alias="eu_ES">locale/bitcoin_eu_ES.qm</file> <file alias="fa_IR">locale/bitcoin_fa_IR.qm</file> <file alias="fa">locale/bitcoin_fa.qm</file> + <file alias="fil">locale/bitcoin_fil.qm</file> <file alias="fi">locale/bitcoin_fi.qm</file> <file alias="fr_CA">locale/bitcoin_fr_CA.qm</file> <file alias="fr_FR">locale/bitcoin_fr_FR.qm</file> @@ -40,6 +45,7 @@ <file alias="hr">locale/bitcoin_hr.qm</file> <file alias="hu">locale/bitcoin_hu.qm</file> <file alias="id_ID">locale/bitcoin_id_ID.qm</file> + <file alias="it_IT">locale/bitcoin_it_IT.qm</file> <file alias="it">locale/bitcoin_it.qm</file> <file alias="ja">locale/bitcoin_ja.qm</file> <file alias="ka">locale/bitcoin_ka.qm</file> @@ -59,22 +65,27 @@ <file alias="pt_BR">locale/bitcoin_pt_BR.qm</file> <file alias="pt_PT">locale/bitcoin_pt_PT.qm</file> <file alias="ro_RO">locale/bitcoin_ro_RO.qm</file> + <file alias="ro">locale/bitcoin_ro.qm</file> <file alias="ru_RU">locale/bitcoin_ru_RU.qm</file> <file alias="ru">locale/bitcoin_ru.qm</file> <file alias="sk">locale/bitcoin_sk.qm</file> <file alias="sl_SI">locale/bitcoin_sl_SI.qm</file> <file alias="sq">locale/bitcoin_sq.qm</file> + <file alias="sr@latin">locale/bitcoin_sr@latin.qm</file> <file alias="sr">locale/bitcoin_sr.qm</file> <file alias="sv">locale/bitcoin_sv.qm</file> + <file alias="ta">locale/bitcoin_ta.qm</file> <file alias="th_TH">locale/bitcoin_th_TH.qm</file> <file alias="tr_TR">locale/bitcoin_tr_TR.qm</file> <file alias="tr">locale/bitcoin_tr.qm</file> <file alias="uk">locale/bitcoin_uk.qm</file> <file alias="ur_PK">locale/bitcoin_ur_PK.qm</file> <file alias="uz@Cyrl">locale/bitcoin_uz@Cyrl.qm</file> + <file alias="uz@Latn">locale/bitcoin_uz@Latn.qm</file> <file alias="vi">locale/bitcoin_vi.qm</file> <file alias="vi_VN">locale/bitcoin_vi_VN.qm</file> <file alias="zh_CN">locale/bitcoin_zh_CN.qm</file> + <file alias="zh_HK">locale/bitcoin_zh_HK.qm</file> <file alias="zh">locale/bitcoin_zh.qm</file> <file alias="zh_TW">locale/bitcoin_zh_TW.qm</file> </qresource> diff --git a/src/qt/bitcoinstrings.cpp b/src/qt/bitcoinstrings.cpp index 9e53f19591..83901732ac 100644 --- a/src/qt/bitcoinstrings.cpp +++ b/src/qt/bitcoinstrings.cpp @@ -60,6 +60,8 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" QT_TRANSLATE_NOOP("bitcoin-core", "" "Do not keep transactions in the mempool longer than <n> hours (default: %u)"), QT_TRANSLATE_NOOP("bitcoin-core", "" +"Error loading %s: You can't enable HD on a already existing non-HD wallet"), +QT_TRANSLATE_NOOP("bitcoin-core", "" "Error reading %s! All keys read correctly, but transaction data or address " "book entries might be missing or incorrect."), QT_TRANSLATE_NOOP("bitcoin-core", "" @@ -114,6 +116,9 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" "Please check that your computer's date and time are correct! If your clock " "is wrong, %s will not work properly."), QT_TRANSLATE_NOOP("bitcoin-core", "" +"Please contribute if you find %s useful. Visit %s for further information " +"about the software."), +QT_TRANSLATE_NOOP("bitcoin-core", "" "Prune configured below the minimum of %d MiB. Please use a higher number."), QT_TRANSLATE_NOOP("bitcoin-core", "" "Prune: last wallet synchronisation goes beyond pruned data. You need to -" @@ -168,6 +173,9 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" QT_TRANSLATE_NOOP("bitcoin-core", "" "Use UPnP to map the listening port (default: 1 when listening and no -proxy)"), QT_TRANSLATE_NOOP("bitcoin-core", "" +"Use hierarchical deterministic key generation (HD) after BIP32. Only has " +"effect during wallet creation/first start"), +QT_TRANSLATE_NOOP("bitcoin-core", "" "Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: " "%s)"), QT_TRANSLATE_NOOP("bitcoin-core", "" @@ -243,6 +251,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Error initializing wallet database environmen QT_TRANSLATE_NOOP("bitcoin-core", "Error loading %s"), QT_TRANSLATE_NOOP("bitcoin-core", "Error loading %s: Wallet corrupted"), QT_TRANSLATE_NOOP("bitcoin-core", "Error loading %s: Wallet requires newer version of %s"), +QT_TRANSLATE_NOOP("bitcoin-core", "Error loading %s: You can't disable HD on a already existing HD wallet"), QT_TRANSLATE_NOOP("bitcoin-core", "Error loading block database"), QT_TRANSLATE_NOOP("bitcoin-core", "Error opening block database"), QT_TRANSLATE_NOOP("bitcoin-core", "Error reading from database, shutting down."), @@ -317,6 +326,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Specify pid file (default: %s)"), QT_TRANSLATE_NOOP("bitcoin-core", "Specify wallet file (within data directory)"), QT_TRANSLATE_NOOP("bitcoin-core", "Specify your own public address"), QT_TRANSLATE_NOOP("bitcoin-core", "Spend unconfirmed change when sending transactions (default: %u)"), +QT_TRANSLATE_NOOP("bitcoin-core", "The source code is available from %s."), QT_TRANSLATE_NOOP("bitcoin-core", "The transaction amount is too small to pay the fee"), QT_TRANSLATE_NOOP("bitcoin-core", "This is experimental software."), QT_TRANSLATE_NOOP("bitcoin-core", "Threshold for disconnecting misbehaving peers (default: %u)"), diff --git a/src/qt/locale/bitcoin_af.ts b/src/qt/locale/bitcoin_af.ts new file mode 100644 index 0000000000..492c7bccd4 --- /dev/null +++ b/src/qt/locale/bitcoin_af.ts @@ -0,0 +1,509 @@ +<TS language="af" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Regs-kliek om die adres of etiket te verander</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Skep 'n nuwe adres</translation> + </message> + <message> + <source>&New</source> + <translation>&Nuut</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Dupliseer die geselekteerde adres na die sisteem se geheuebord</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Dupliseer</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Dupliseer Adres</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Verwyder die adres wat u gekies het van die lys</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Voer die inligting op hierdie bladsy uit na 'n leer</translation> + </message> + <message> + <source>&Export</source> + <translation>&Voer uit</translation> + </message> + <message> + <source>&Delete</source> + <translation>&Vee uit</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Kies die adres waarheen u munte wil stuur</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Kies die adres wat die munte moet ontvang</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Stuurders adresse</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Ontvanger adresse</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Hierdie is die adresse vanwaar u Bitcoin betalings stuur. U moet altyd die bedrag en die adres van die ontvanger nagaan voordat u enige munte stuur.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Hierdie is die adresse waar u Bitcoins sal ontvang. Ons beveel aan dat u 'n nuwe adres kies vir elke transaksie</translation> + </message> + <message> + <source>&Edit</source> + <translation>&Verander</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Voer adreslys uit</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Comma separated file (*.csv)</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Uitvoer was onsuksesvol</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Die adreslys kon nie in %1 gestoor word nie. Probeer asseblief weer.</translation> + </message> +</context> +<context> + <name>AddressTableModel</name> + <message> + <source>Address</source> + <translation>Adres</translation> + </message> + <message> + <source>(no label)</source> + <translation>(geen etiket)</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Passphrase Dialog</source> + <translation>Wagwoord Dialoog</translation> + </message> + <message> + <source>Enter passphrase</source> + <translation>Tik u wagwoord in</translation> + </message> + <message> + <source>New passphrase</source> + <translation>Nuwe wagwoord</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>Herhaal nuwe wagwoord</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>Kodifiseer beursie</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>U het u beursie se wagwoord nodig om toegang tot u beursie te verkry.</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>Sluit beursie oop</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to decrypt the wallet.</source> + <translation>U het u beursie se wagwoord nodig om u beursie se kode te ontsyfer.</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>Ontsleutel beursie</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>Verander wagwoord</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>Bevestig dat die beursie gekodifiseer is</translation> + </message> + <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>Waarskuwing: Indien u die beursie kodifiseer en u vergeet u wagwoord <b>VERLOOR U AL U BITCOINS</b>!</translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>Is u seker dat u die beursie wil kodifiseer?</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Kern gaan nou toemaak om die kodifikasie af te handel. Onthou dat die kodifikasie van u beursie nie altyd u munte kan beskerm teen diefstal deur kwaadwillige sagteware op u rekenaar nie.</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>BELANGRIK: Alle vorige kopieรซ en rugsteun-weergawes wat u tevore van die gemaak het, moet vervang word met die jongste weergawe van u nuutste gekodifiseerde beursie. Alle vorige weergawes en rugsteun-kopieรซ van u beursie sal nutteloos raak die oomblik wat u die nuut-gekodifiseerde beursie begin gebruik.</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>WAARSKUWING: Outomatiese Kapitalisering is aktief op u sleutelbord!</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>Beursie gekodifiseer</translation> + </message> + <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>Tik die nuwe wagwoord vir u beursie.<br/>Gerbuik asseblief 'n wagwoord met <b>tien of meer lukrake karakters</b>, of <b>agt of meer woorde</b>.</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Tik die ou en die nuwe wagwoorde vir die beursie.</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>Kodifikasie was onsuksesvol</translation> + </message> + <message> + <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> + <translation>Weens 'n interne fout het kodifikasie het nie geslaag nie. U beursie is nie gekodifiseer nie</translation> + </message> + <message> + <source>The supplied passphrases do not match.</source> + <translation>Die wagwoorde stem nie ooreen nie.</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>Die beursie is nie oopgesluit nie</translation> + </message> + <message> + <source>The passphrase entered for the wallet decryption was incorrect.</source> + <translation>U het die verkeerde wagwoord ingetik.</translation> + </message> + </context> +<context> + <name>BanTableModel</name> + <message> + <source>Banned Until</source> + <translation>Verban tot</translation> + </message> +</context> +<context> + <name>BitcoinGUI</name> + <message> + <source>Synchronizing with network...</source> + <translation>Netwerk-sinkronisasie...</translation> + </message> + <message> + <source>&Overview</source> + <translation>&Oorsig</translation> + </message> + <message> + <source>Node</source> + <translation>Node</translation> + </message> + <message> + <source>Show general overview of wallet</source> + <translation>Vertoon 'n algemene oorsig van die beursie</translation> + </message> + <message> + <source>&Transactions</source> + <translation>&Transaksies</translation> + </message> + <message> + <source>Quit application</source> + <translation>Stop en verlaat die applikasie</translation> + </message> + <message> + <source>&Options...</source> + <translation>&Opsies</translation> + </message> + <message> + <source>&Encrypt Wallet...</source> + <translation>&Kodifiseer Beursie</translation> + </message> + <message> + <source>&Backup Wallet...</source> + <translation>&Rugsteun-kopie van Beursie</translation> + </message> + <message> + <source>&Change Passphrase...</source> + <translation>&Verander Wagwoord</translation> + </message> + <message> + <source>&Sending addresses...</source> + <translation>&Versending adresse...</translation> + </message> + <message> + <source>&Receiving addresses...</source> + <translation>&Ontvanger adresse</translation> + </message> + <message> + <source>Open &URI...</source> + <translation>Oop & URI...</translation> + </message> + <message> + <source>Bitcoin Core client</source> + <translation>Bitcoin Kern klient</translation> + </message> + <message> + <source>Importing blocks from disk...</source> + <translation>Besig om blokke vanaf die hardeskyf in te voer...</translation> + </message> + <message> + <source>Reindexing blocks on disk...</source> + <translation>Besig met herindeksering van blokke op hardeskyf...</translation> + </message> + <message> + <source>Send coins to a Bitcoin address</source> + <translation>Stuur munte na 'n Bitcoin adres</translation> + </message> + <message> + <source>Backup wallet to another location</source> + <translation>Maak 'n rugsteun-kopiรฉ van beursie na 'n ander stoorplek</translation> + </message> + <message> + <source>Change the passphrase used for wallet encryption</source> + <translation>Verander die wagwoord wat ek vir kodifikasie van my beursie gebruik</translation> + </message> + <message> + <source>Bitcoin</source> + <translation>Bitcoin</translation> + </message> + <message> + <source>Wallet</source> + <translation>Beursie</translation> + </message> + <message> + <source>&Send</source> + <translation>&Stuur</translation> + </message> + <message> + <source>&Receive</source> + <translation>&Ontvang</translation> + </message> + <message> + <source>Show information about Bitcoin Core</source> + <translation>Vertoon inligting oor Bitcoin Kern</translation> + </message> + <message> + <source>Show or hide the main Window</source> + <translation>Wys of versteek die hoofbladsy</translation> + </message> + <message> + <source>Encrypt the private keys that belong to your wallet</source> + <translation>Kodifiseer die private sleutes wat aan jou beursie gekoppel is.</translation> + </message> + <message> + <source>Sign messages with your Bitcoin addresses to prove you own them</source> + <translation>Onderteken boodskappe met u Bitcoin adresse om u eienaarskap te bewys</translation> + </message> + <message> + <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source> + <translation>Verifieรซr boodskappe om seker te maak dat dit met die gespesifiseerde Bitcoin adresse</translation> + </message> + <message> + <source>&Help</source> + <translation>&Help</translation> + </message> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Kern</translation> + </message> + <message> + <source>Request payments (generates QR codes and bitcoin: URIs)</source> + <translation>Versoek betalings (genereer QR-kodes en bitcoin: URI's)</translation> + </message> + <message> + <source>&About Bitcoin Core</source> + <translation>&Omtrent Bitcoin Kern</translation> + </message> + <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>Verander konfigurasie-opsies vir Bitcoin Kern</translation> + </message> + <message> + <source>Show the list of used sending addresses and labels</source> + <translation>Vertoon die lys van gebruikte versendingsadresse en etikette</translation> + </message> + <message> + <source>Show the list of used receiving addresses and labels</source> + <translation>Vertoon die lys van gebruikte ontvangers-adresse en etikette</translation> + </message> + <message> + <source>Open a bitcoin: URI or payment request</source> + <translation>Skep 'n bitcoin: URI of betalingsversoek</translation> + </message> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>(no label)</source> + <translation>(geen etiket)</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Kern</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Herstel al my veranderinge aan die stellings terug na die verstek-opsies</translation> + </message> +</context> +<context> + <name>Intro</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Kern</translation> + </message> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Adres</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>(no label)</source> + <translation>(geen etiket)</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(geen etiket)</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Kern</translation> + </message> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Exporting Failed</source> + <translation>Uitvoer was onsuksesvol</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Comma separated file (*.csv)</translation> + </message> + <message> + <source>Address</source> + <translation>Adres</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Voer uit</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Voer die inligting op hierdie bladsy uit na 'n leer</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + <message> + <source>WARNING: check your network connection, %d blocks received in the last %d hours (%d expected)</source> + <translation>WAARSKUWING: toets die status van u netwerk, %d blokke ontvang in die laaste %d ure (%d verwag)</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>Moenie transaksies vir langer as <n> ure in die geheuepoel hou nie (verstek: %u)</translation> + </message> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_af_ZA.ts b/src/qt/locale/bitcoin_af_ZA.ts index d77aa77f8e..12ac21eb80 100644 --- a/src/qt/locale/bitcoin_af_ZA.ts +++ b/src/qt/locale/bitcoin_af_ZA.ts @@ -32,16 +32,20 @@ <context> <name>AskPassphraseDialog</name> <message> + <source>Passphrase Dialog</source> + <translation>Wagfrase Dialoog</translation> + </message> + <message> <source>Enter passphrase</source> - <translation>Tik Wagwoord in</translation> + <translation>Tik wagfrase in</translation> </message> <message> <source>New passphrase</source> - <translation>Nuwe wagwoord</translation> + <translation>Nuwe wagfrase</translation> </message> <message> <source>Repeat new passphrase</source> - <translation>Herhaal nuwe wagwoord</translation> + <translation>Herhaal nuwe wagfrase</translation> </message> <message> <source>Encrypt wallet</source> @@ -65,7 +69,7 @@ </message> <message> <source>Change passphrase</source> - <translation>Verander wagwoord</translation> + <translation>Verander wagfrase</translation> </message> <message> <source>Confirm wallet encryption</source> @@ -76,6 +80,10 @@ <translation>Die beursie is nou bewaak</translation> </message> <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Tik in die ou wagfrase en die nuwe wagfrase vir die beursie.</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>Die beursie kon nie bewaak word nie</translation> </message> @@ -85,7 +93,7 @@ </message> <message> <source>The supplied passphrases do not match.</source> - <translation>Die wagwoord stem nie ooreen nie</translation> + <translation>Die wagfrase stem nie ooreen nie</translation> </message> <message> <source>Wallet unlock failed</source> @@ -93,13 +101,17 @@ </message> <message> <source>The passphrase entered for the wallet decryption was incorrect.</source> - <translation>Die wagwoord wat ingetik was om die beursie oop te sluit, was verkeerd.</translation> + <translation>Die wagfrase wat ingetik was om die beursie oop te sluit, was verkeerd.</translation> </message> <message> <source>Wallet decryption failed</source> <translation>Beursie dekripsie het misluk</translation> </message> - </context> + <message> + <source>Wallet passphrase was successfully changed.</source> + <translation>Die beursie se wagfrase verandering was suksesvol.</translation> + </message> +</context> <context> <name>BanTableModel</name> </context> diff --git a/src/qt/locale/bitcoin_ar.ts b/src/qt/locale/bitcoin_ar.ts index 88ce05bbd5..1e74564ed3 100644 --- a/src/qt/locale/bitcoin_ar.ts +++ b/src/qt/locale/bitcoin_ar.ts @@ -222,7 +222,15 @@ </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>ุนููุงู ุงูุจุฑูุชูููู/ููุงุน</translation> + </message> + <message> + <source>Banned Until</source> + <translation>ู
ุญุธูุฑ ุญุชู</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -326,6 +334,10 @@ <translation>&ูุงูุฐุฉ ุงูู
ุนุงูุฌุฉ</translation> </message> <message> + <source>Open debugging and diagnostic console</source> + <translation>ุฅูุชุญ ูุญุฏุฉ ุงูุชุตุญูุญ ู ุงูุชุดุฎูุต</translation> + </message> + <message> <source>&Verify message...</source> <translation>&ุงูุชุญูู ู
ู ุงูุฑุณุงูุฉ...</translation> </message> @@ -362,6 +374,14 @@ <translation>ุชุดููุฑ ุงูู
ูุชุงุญ ุงูุฎุงุต ุจู
ุญูุธุชู</translation> </message> <message> + <source>Sign messages with your Bitcoin addresses to prove you own them</source> + <translation>ูููุน ุงูุฑุณุงุฆู ุจูุงุณุทุฉ ุงู: Bitcoin ุงูุฎุงุต ุจู ูุฅุซุจุงุช ุงู
ุชูุงูู ููู
</translation> + </message> + <message> + <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source> + <translation>ุชุญูู ู
ู ุงูุฑุณุงุฆู ููุชุฃูุฏ ู
ู ุฃูููุง ูููุนุช ุจุฑุณุงุฆู Bitcoin ู
ุญุฏูุฏุฉ</translation> + </message> + <message> <source>&File</source> <translation>&ู
ูู</translation> </message> @@ -382,14 +402,58 @@ <translation>ุฌููุฑ ุงูุจูุช ูููู</translation> </message> <message> + <source>Request payments (generates QR codes and bitcoin: URIs)</source> + <translation>ุฃุทูุจ ุฏูุนุงุช (ูููุฏ ููุฏุงุช ุงูุฑู
ุฒ ุงูู
ุฑุจุน ูุจูุช ูููู: ุงูุนูุงููู ุงูู
ุนุทุงุฉ)</translation> + </message> + <message> <source>&About Bitcoin Core</source> <translation>ุญูู bitcoin core</translation> </message> <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>ุชุบููุฑ ุฎูุงุฑุงุช ุงูุฅุนุฏุงุฏ ูุฃุณุงุณ Bitcoin</translation> + </message> + <message> + <source>Show the list of used sending addresses and labels</source> + <translation>ุนุฑุถ ูุงุฆู
ุฉ ุนูุงููู ุงูุฅุฑุณุงู ุงูู
ุณุชุฎุฏู
ุฉ ูุงูู
ูุตูุงุช</translation> + </message> + <message> + <source>Show the list of used receiving addresses and labels</source> + <translation>ุนุฑุถ ูุงุฆู
ุฉ ุนูุงููู ุงูุฅุณุชูุจุงู ุงูู
ุณุชุฎุฏู
ุฉ ูุงูู
ูุตูุงุช</translation> + </message> + <message> + <source>Open a bitcoin: URI or payment request</source> + <translation>ูุชุญ URI : Bitcoin ุฃู ุทูุจ ุฏูุน</translation> + </message> + <message> + <source>&Command-line options</source> + <translation>&ุฎูุงุฑุงุช ุณุทุฑ ุงูุฃูุงู
ุฑ</translation> + </message> + <message> + <source>No block source available...</source> + <translation>ูุง ููุฌุฏ ุฃู ู
ุตุฏุฑ ุงููุชูุฉ</translation> + </message> + <message numerus="yes"> + <source>Processed %n block(s) of transaction history.</source> + <translation><numerusform>ูู
ูุชู
ู
ุนุงูุฌุฉ ุฃู ูุชูุฉ ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform><numerusform>ุชู
ู
ุนุงูุฌุฉ ูุชูุฉ ูุงุญุฏุฉ ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform><numerusform>ุชู
ู
ุนุงูุฌุฉ ูุชูุชูู ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform><numerusform>ุชู
ู
ุนุงูุฌุฉ %n ูุชู ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform><numerusform>ุชู
ู
ุนุงูุฌุฉ %n ูุชูุฉ ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform><numerusform>ุชู
ู
ุนุงูุฌุฉ %n ูุชูุฉ ุณุฌู ุงูู
ุนุงู
ูุงุช</numerusform></translation> + </message> + <message numerus="yes"> + <source>%n hour(s)</source> + <translation><numerusform>0 ุณุงุนุฉ</numerusform><numerusform>%n ุณุงุนุฉ</numerusform><numerusform>%n ุณุงุนุชูู</numerusform><numerusform>%n ุณุงุนุงุช</numerusform><numerusform>%n ุณุงุนุฉ</numerusform><numerusform>%n ุณุงุนุงุช</numerusform></translation> + </message> + <message> <source>%1 and %2</source> <translation>%1 ู %2</translation> </message> <message> + <source>Last received block was generated %1 ago.</source> + <translation>ุชู
ุชูููุฏ ุงููุชูุฉ ุงูู
ุณุชูุจูุฉ ุงูุฃุฎูุฑุฉ ู
ูุฐ %1.</translation> + </message> + <message> + <source>Transactions after this will not yet be visible.</source> + <translation>ุงูู
ุนุงู
ูุงุช ุจุนุฏ ุฐูู ูู ุชููู ู
ุฑูุฆุฉ ุจุนุฏ.</translation> + </message> + <message> <source>Error</source> <translation>ุฎุทุฃ</translation> </message> @@ -464,6 +528,14 @@ <translation>ุงูู
ุจูุบ</translation> </message> <message> + <source>Received with label</source> + <translation>ู
ุณุชูุจู ู
ุน ู
ูุตู</translation> + </message> + <message> + <source>Received with address</source> + <translation>ู
ุณุชูุจู ู
ุน ุนููุงู</translation> + </message> + <message> <source>Date</source> <translation>ุงูุชุงุฑูุฎ</translation> </message> @@ -532,6 +604,14 @@ <translation>ู
ุชูุณุท-ู
ุฑุชูุน</translation> </message> <message> + <source>medium</source> + <translation>ู
ุชูุณุท</translation> + </message> + <message> + <source>low-medium</source> + <translation>ู
ุชูุณุท-ู
ูุฎูุถ</translation> + </message> + <message> <source>low</source> <translation>ู
ูุฎูุถ</translation> </message> @@ -548,6 +628,10 @@ <translation>ูุง ุดูุก</translation> </message> <message> + <source>This label turns red if the transaction size is greater than 1000 bytes.</source> + <translation>ูุฐุง ุงูู
ูุตู ูุตุจุญ ุฃุฎู
ุฑุง ุฅุฐุง ูุงู ุญุฌู
ุงูู
ุนุงู
ูุฉ ุฃูุจุฑ ู
ู 1000 ุจุงูุช.</translation> + </message> + <message> <source>yes</source> <translation>ูุนู
</translation> </message> @@ -556,6 +640,18 @@ <translation>ูุง</translation> </message> <message> + <source>This means a fee of at least %1 per kB is required.</source> + <translation>ูุฐุง ูุนูู ุฃู ู
ู ุงูู
ุทููุจ ุฃู ูููู ุงูุฑุณู
ุฃูู ุงูุฃูู %1 ููู ููููุจุงูุช.</translation> + </message> + <message> + <source>Can vary +/- 1 byte per input.</source> + <translation>ูู
ูู ุฃู ูุชูุงูุช ุจู 1 ุจุงูุช ููู ู
ุณุงูู
ุฉ.</translation> + </message> + <message> + <source>Transactions with higher priority are more likely to get included into a block.</source> + <translation>ุงูู
ุนุงู
ูุงุช ุงูุชู ูุฏููุง ุฃููููุฉ ุฃุนูู ุนูู ุงูุฃุฑุฌุญ ุณูุชู
ุฅูุถู
ุงู
ูุง ูู ุงููุชูุฉ.</translation> + </message> + <message> <source>(no label)</source> <translation>(ูุง ูุตู)</translation> </message> @@ -599,6 +695,10 @@ <translation>ูุฏุง ุงูุนููุงู "%1" ู
ูุฌูุฏ ู
ุณุจูุง ูู ุฏูุชุฑ ุงูุนูุงููู</translation> </message> <message> + <source>The entered address "%1" is not a valid Bitcoin address.</source> + <translation>ุงูุนููุงู ุงูู
ุฏุฎู "%1" ููุณ ุนููุงู ุจูุช ูููู ุตุญูุญ.</translation> + </message> + <message> <source>Could not unlock wallet.</source> <translation> ูู
ูู ูุชุญ ุงูู
ุญูุธุฉ.</translation> </message> @@ -618,6 +718,14 @@ <translation>ุงูุงุณู
</translation> </message> <message> + <source>Directory already exists. Add %1 if you intend to create a new directory here.</source> + <translation>ุงูุฏููู ู
ูุฌูุฌ ุจุงููุนู. ุฃุถู %1 ูู ูููุช ุฅูุดุงุก ุฏููู ุฌุฏูุฏ ููุง.</translation> + </message> + <message> + <source>Path already exists, and is not a directory.</source> + <translation>ุงูู
ุณุงุฑ ู
ูุฌูุฏ ุจุงููุนูุ ููู ููุณ ุฏูููุงู.</translation> + </message> + <message> <source>Cannot create data directory here.</source> <translation>ูุง ูู
ูู ุงูุดุงุก ุฏููู ุจูุงูุงุช ููุง .</translation> </message> @@ -637,10 +745,38 @@ <translation>ุนู ุฌููุฑ ุงูุจูุช ูููู</translation> </message> <message> + <source>Command-line options</source> + <translation>ุฎูุงุฑุงุช ุณุทุฑ ุงูุฃูุงู
ุฑ</translation> + </message> + <message> <source>Usage:</source> <translation>ุงูู
ุณุชุฎุฏู
</translation> </message> - </context> + <message> + <source>command-line options</source> + <translation>ุฎูุงุฑุงุช ุณุทุฑ ุงูุฃูุงู
ุฑ</translation> + </message> + <message> + <source>UI Options:</source> + <translation>ุฎูุงุฑุงุช ูุงุฌูุฉ ุงูู
ุณุชุฎุฏู
</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>ุงุฎุชุฑ ุฏููู ุงูุจูุงูุงุช ุนูุฏ ุจุฏุก ุงูุชุดุบูุฑ (ุงูุชุฑุงุถู: %u)</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>ุฃุถุน ุดูุงุฏุฉ ุจุฑูุชูููู ุงูุดุจูุฉ ุงูุฃู
ููุฉ ูุทูุจ ุงูู
ุฏููุน (ุงูุชุฑุงุถู: -ูุธุงู
-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>ุฃุธูุฑ ุดุงุดุฉ ุงูุจุฏุงูุฉ ุนูุฏ ุจุฏุก ุงูุชุดุบูู (ุงูุชุฑุงุถู: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>ุฅุนุงุฏุฉ ุชุนููู ูู ุงูุฅุนุฏุงุฏุงุช ุชู
ุชุบููุฑูุง ู
ู ุฎูุงู ุงููุงุฌูุฉ ุงูุฑุณูู
ูุฉ</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -1794,14 +1930,26 @@ <translation>ุนููุงู ุงูุจุฑููุณู ุบูุฑ ุตุญูุญ : '%s'</translation> </message> <message> + <source>Make the wallet broadcast transactions</source> + <translation>ุฅูุชุงุฌ ู
ุนุงู
ูุงุช ุจุซ ุงูู
ุญูุธุฉ</translation> + </message> + <message> <source>Insufficient funds</source> <translation>ุงู
ูุงู ุบูุฑ ูุงููุฉ</translation> </message> <message> + <source>Loading block index...</source> + <translation>ุชุญู
ูู ู
ุคุดุฑ ุงููุชูุฉ</translation> + </message> + <message> <source>Loading wallet...</source> <translation>ุชุญู
ูู ุงูู
ุญูุธู</translation> </message> <message> + <source>Cannot downgrade wallet</source> + <translation>ูุง ูู
ูู ุชุฎููุถ ููู
ุฉ ุงูู
ุญูุธุฉ</translation> + </message> + <message> <source>Cannot write default address</source> <translation>ูุงูู
ูู ูุชุงุจุฉ ุงูุนููุงู ุงูุงูุชุฑุงุถู</translation> </message> diff --git a/src/qt/locale/bitcoin_bg.ts b/src/qt/locale/bitcoin_bg.ts index ecd10e5461..54bf8136a6 100644 --- a/src/qt/locale/bitcoin_bg.ts +++ b/src/qt/locale/bitcoin_bg.ts @@ -214,7 +214,11 @@ </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>Banned Until</source> + <translation>ะกัั ะทะฐะฑัะฐะฝะตะฝ ะดะพัััะฟ ะดะพ</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -1230,10 +1234,6 @@ <translation>ะัะฝะพะฒะฝะธ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ะะทะฟะพะปะทะฒะฐะฝะต ะฝะฐ OpenSSL ะฒะตััะธั</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ะะทะฟะพะปะทะฒะฐะฝะต ะฝะฐ ะฑะฐะทะฐ ะดะฐะฝะฝะธ BerkeleyDB </translation> </message> diff --git a/src/qt/locale/bitcoin_ca.ts b/src/qt/locale/bitcoin_ca.ts index 38e770f182..8bc9281f1d 100644 --- a/src/qt/locale/bitcoin_ca.ts +++ b/src/qt/locale/bitcoin_ca.ts @@ -1116,6 +1116,22 @@ <translation>Mostra si el proxy SOCKS5 per defecte proporcionat s'utilitza per arribar als iguals mitjanรงant aquest tipus de xarxa.</translation> </message> <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Conectar a la red de Bitcoin a travรฉs de un proxy SOCKS5 per als serveis ocults de Tor</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> <translation>Utilitza un proxy SOCKS4 apart per a arribar als iguals a travรฉs de serveis ocults de Tor:</translation> </message> @@ -1458,10 +1474,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utilitzant OpenSSL versiรณ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Utilitzant BerkeleyDB versiรณ</translation> </message> @@ -1490,6 +1502,18 @@ <translation>Nombre de blocs actuals</translation> </message> <message> + <source>Memory Pool</source> + <translation>Reserva de memรฒria</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Nombre actual de transaccions</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Us de memoria</translation> + </message> + <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> <translation>Obre el fitxer de registre de depuraciรณ del Bitcoin Core del directori de dades actual. Pot portar uns quants segons per a fitxers de registre grans.</translation> </message> @@ -2749,6 +2773,10 @@ <translation>Copiar ID de transacciรณ</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Copia la transacciรณ crua</translation> + </message> + <message> <source>Edit label</source> <translation>Editar etiqueta</translation> </message> @@ -2896,22 +2924,62 @@ <translation>Accepta la lรญnia d'ordres i ordres JSON-RPC </translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Si no es proporciona <category> o si <category> = 1, treu a la sortida tota la informaciรณ de depuraciรณ.</translation> + </message> + <message> <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> <translation>Comissions totals mร ximes (en %s) per utilitzar en una รบnica transacciรณ de moneder; definir-ne una massa baixa pot interrompre les transaccions mรฉs grans (per defecte: %s)</translation> </message> <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Comproveu que la data i hora de l'ordinador sรณn correctes! Si el vostre rellotge no tรฉ l'hora correcta, el Bitcoin Core no funcionarร adequadament.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Poda configurada per sota el mรญnim de %d MiB. Utilitzeu un nombre superior.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Poda: la darrera sincronitzaciรณ del moneder va mรฉs enllร de les dades podades. Cal que activeu -reindex (baixeu tota la cadena de blocs de nou en cas de node podat)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Reduรฏu els requisits d'emmagatzematge podant (suprimint) els blocs antics. Aquest mode รฉs incompatible amb -txindex i -rescan. Avรญs: la reversiรณ d'aquest parร metre implica haver de tornar a baixar la cadena de blocs sencera. (per defecte: 0 = inhabilita la poda de blocs, >%u = mida objectiu en MiB per utilitzar en els fitxers de blocs)</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>Els rescanejos no sรณn possible en el mode de poda. Caldrร que utilitzeu -reindex, que tornarร a baixar la cadena de blocs sencera.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>Error: s'ha produรฏt un error intern fatal. Vegeu debug.log per a mรฉs detalls</translation> + </message> + <message> <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> <translation>Comissiรณ (en %s/kB) per afegir a les transaccions que envieu (per defecte: %s)</translation> </message> <message> + <source>Pruning blockstore...</source> + <translation>S'estร podant la cadena de blocs...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>Executa en segon pla com a programa dimoni i accepta ordres</translation> </message> <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>No s'ha pogut iniciar el servidor HTTP. Vegeu debug.log per a mรฉs detalls.</translation> + </message> + <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Accepta connexions de fora (per defecte: 1 si no -proxy o -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee รฉs molt elevat. Aquesta รฉs la comissiรณ de transacciรณ que podeu pagar quan les estimacions de comissions no estan disponibles.</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Vincula a una adreรงa especรญfica i sempre escolta-hi. Utilitza la notaciรณ [host]:port per IPv6</translation> </message> @@ -3080,10 +3148,6 @@ <translation>Opcions de moneder:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Avรญs: aquesta versiรณ รฉs obsoleta; cal actualitzar-la!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Cal que reconstruรฏu la base de dades fent servir -reindex per canviar -txindex</translation> </message> diff --git a/src/qt/locale/bitcoin_ca@valencia.ts b/src/qt/locale/bitcoin_ca@valencia.ts index 2c41ec78d4..e5744fcbbf 100644 --- a/src/qt/locale/bitcoin_ca@valencia.ts +++ b/src/qt/locale/bitcoin_ca@valencia.ts @@ -1414,10 +1414,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utilitzant OpenSSL versiรณ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Utilitzant BerkeleyDB versiรณ</translation> </message> @@ -2960,10 +2956,6 @@ <translation>Opcions de moneder:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Avรญs: esta versiรณ รฉs obsoleta; cal actualitzar-la!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Cal que reconstruรฏu la base de dades fent servir -reindex per canviar -txindex</translation> </message> diff --git a/src/qt/locale/bitcoin_ca_ES.ts b/src/qt/locale/bitcoin_ca_ES.ts index e6a932ebee..2c238bb44f 100644 --- a/src/qt/locale/bitcoin_ca_ES.ts +++ b/src/qt/locale/bitcoin_ca_ES.ts @@ -1116,6 +1116,22 @@ <translation>Mostra si el proxy SOCKS5 per defecte proporcionat s'utilitza per arribar als iguals mitjanรงant aquest tipus de xarxa.</translation> </message> <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Conectar a la red de Bitcoin a travรฉs de un proxy SOCKS5 per als serveis ocults de Tor</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> <translation>Utilitza un proxy SOCKS4 apart per a arribar als iguals a travรฉs de serveis ocults de Tor:</translation> </message> @@ -1458,10 +1474,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utilitzant OpenSSL versiรณ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Utilitzant BerkeleyDB versiรณ</translation> </message> @@ -1490,6 +1502,18 @@ <translation>Nombre de blocs actuals</translation> </message> <message> + <source>Memory Pool</source> + <translation>Reserva de memรฒria</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Nombre actual de transaccions</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Us de memoria</translation> + </message> + <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> <translation>Obre el fitxer de registre de depuraciรณ del Bitcoin Core del directori de dades actual. Pot portar uns quants segons per a fitxers de registre grans.</translation> </message> @@ -2749,6 +2773,10 @@ <translation>Copiar ID de transacciรณ</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Copia la transacciรณ crua</translation> + </message> + <message> <source>Edit label</source> <translation>Editar etiqueta</translation> </message> @@ -2896,18 +2924,54 @@ <translation>Accepta la lรญnia d'ordres i ordres JSON-RPC </translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Si no es proporciona <category> o si <category> = 1, treu a la sortida tota la informaciรณ de depuraciรณ.</translation> + </message> + <message> <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> <translation>Comissions totals mร ximes (en %s) per utilitzar en una รบnica transacciรณ de moneder; definir-ne una massa baixa pot interrompre les transaccions mรฉs grans (per defecte: %s)</translation> </message> <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Comproveu que la data i hora de l'ordinador sรณn correctes! Si el vostre rellotge no tรฉ l'hora correcta, el Bitcoin Core no funcionarร adequadament.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Poda configurada per sota el mรญnim de %d MiB. Utilitzeu un nombre superior.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Poda: la darrera sincronitzaciรณ del moneder va mรฉs enllร de les dades podades. Cal que activeu -reindex (baixeu tota la cadena de blocs de nou en cas de node podat)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Reduรฏu els requisits d'emmagatzematge podant (suprimint) els blocs antics. Aquest mode รฉs incompatible amb -txindex i -rescan. Avรญs: la reversiรณ d'aquest parร metre implica haver de tornar a baixar la cadena de blocs sencera. (per defecte: 0 = inhabilita la poda de blocs, >%u = mida objectiu en MiB per utilitzar en els fitxers de blocs)</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>Els rescanejos no sรณn possible en el mode de poda. Caldrร que utilitzeu -reindex, que tornarร a baixar la cadena de blocs sencera.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>Error: s'ha produรฏt un error intern fatal. Vegeu debug.log per a mรฉs detalls</translation> + </message> + <message> <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> <translation>Comissiรณ (en %s/kB) per afegir a les transaccions que envieu (per defecte: %s)</translation> </message> <message> + <source>Pruning blockstore...</source> + <translation>S'estร podant la cadena de blocs...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>Executa en segon pla com a programa dimoni i accepta ordres</translation> </message> <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>No s'ha pogut iniciar el servidor HTTP. Vegeu debug.log per a mรฉs detalls.</translation> + </message> + <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Accepta connexions de fora (per defecte: 1 si no -proxy o -connect)</translation> </message> @@ -3080,10 +3144,6 @@ <translation>Opcions de moneder:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Avรญs: aquesta versiรณ รฉs obsoleta; cal actualitzar-la!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Cal que reconstruรฏu la base de dades fent servir -reindex per canviar -txindex</translation> </message> diff --git a/src/qt/locale/bitcoin_cs.ts b/src/qt/locale/bitcoin_cs.ts index ef1903edd1..d3ff5c1f57 100644 --- a/src/qt/locale/bitcoin_cs.ts +++ b/src/qt/locale/bitcoin_cs.ts @@ -3,7 +3,7 @@ <name>AddressBookPage</name> <message> <source>Right-click to edit address or label</source> - <translation>Pravรฝm tlaฤรญtkem myลกi zaฤneลก upravovat oznaฤenรญ adresy</translation> + <translation>Pravรฝm tlaฤรญtkem myลกi mลฏลพeลก upravit oznaฤenรญ adresy</translation> </message> <message> <source>Create a new address</source> @@ -71,7 +71,7 @@ </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> - <translation>Tohle jsou tvรฉ Bitcoinovรฉ adresy pro pลรญjem plateb. Je doporuฤenรฉ pouลพรญvat pokaลพdรฉ novou adresu pro kaลพdou transakci.</translation> + <translation>Tohle jsou tvรฉ Bitcoinovรฉ adresy pro pลรญjem plateb. Nezapomeล si pro kaลพdou transakci vลพdy vygenerovat novou adresu.</translation> </message> <message> <source>Copy &Label</source> @@ -83,11 +83,11 @@ </message> <message> <source>Export Address List</source> - <translation>Exportuj seznam adres</translation> + <translation>Export seznamu adres</translation> </message> <message> <source>Comma separated file (*.csv)</source> - <translation>CSV formรกt (*.csv)</translation> + <translation>Formรกt CSV (*.csv)</translation> </message> <message> <source>Exporting Failed</source> @@ -343,7 +343,7 @@ </message> <message> <source>&Send</source> - <translation>&Poลกli</translation> + <translation>P&oลกli</translation> </message> <message> <source>&Receive</source> @@ -383,7 +383,7 @@ </message> <message> <source>&Help</source> - <translation>Nรก&povฤda</translation> + <translation>Nรกpovฤd&a</translation> </message> <message> <source>Tabs toolbar</source> @@ -419,7 +419,7 @@ </message> <message> <source>&Command-line options</source> - <translation>Ar&gumenty z pลรญkazovรฉ ลรกdky</translation> + <translation>Ar&gumenty pลรญkazovรฉ ลรกdky</translation> </message> <message> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> @@ -467,7 +467,7 @@ </message> <message> <source>Transactions after this will not yet be visible.</source> - <translation>Nรกslednรฉ transakce jeลกtฤ nebudou vidฤt.</translation> + <translation>Novฤjลกรญ transakce zatรญm nejsou vidฤt.</translation> </message> <message> <source>Error</source> @@ -806,11 +806,11 @@ </message> <message> <source>The entered address "%1" is already in the address book.</source> - <translation>Zadanรก adresa "%1" uลพ v adresรกลi je.</translation> + <translation>Zadanรก adresa โ%1โ uลพ v adresรกลi je.</translation> </message> <message> <source>The entered address "%1" is not a valid Bitcoin address.</source> - <translation>Zadanรก adresa "%1" nenรญ platnรก Bitcoinovรก adresa.</translation> + <translation>Zadanรก adresa โ%1โ nenรญ platnรก Bitcoinovรก adresa.</translation> </message> <message> <source>Could not unlock wallet.</source> @@ -864,7 +864,7 @@ </message> <message> <source>Command-line options</source> - <translation>Argumenty z pลรญkazovรฉ ลรกdky</translation> + <translation>Argumenty pลรญkazovรฉ ลรกdky</translation> </message> <message> <source>Usage:</source> @@ -874,7 +874,35 @@ <source>command-line options</source> <translation>moลพnosti pลรญkazovรฉ ลรกdky</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>Moลพnosti UI:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>Zvolit pลi startu adresรกล pro data (vรฝchozรญ: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>Nastavit jazyk, napลรญklad โde_DEโ (vรฝchozรญ: systรฉmovรฉ nastavenรญ)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Nastartovat minimalizovanฤ</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>Nastavit koลenovรฉ SSL certifikรกty pro platebnรญ poลพadavky (vรฝchozรญ: -system-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>Zobrazit startovacรญ obrazovku (vรฝchozรญ: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Resetovat vลกechna nastavenรญ provedenรฉ v GUI</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -989,7 +1017,7 @@ </message> <message> <source>Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source> - <translation>URL tลetรญch stran (napล. block exploreru), kterรฉ se zobrazรญ v kontextovรฉm menu v zรกloลพce Transakce. %s v URL se nahradรญ hashem transakce. Vรญce URL oddฤl svislรญtkem |.</translation> + <translation>URL tลetรญch stran (napล. block exploreru), kterรก se zobrazรญ v kontextovรฉm menu v zรกloลพce Transakce. %s v URL se nahradรญ hashem transakce. Vรญce URL oddฤl svislรญtkem |.</translation> </message> <message> <source>Third party transaction URLs</source> @@ -997,7 +1025,7 @@ </message> <message> <source>Active command-line options that override above options:</source> - <translation>Aktivnรญ argumenty z pลรญkazovรฉ ลรกdky, kterรฉ pลetloukly tato nastavenรญ:</translation> + <translation>Aktivnรญ argumenty z pลรญkazovรฉ ลรกdky, kterรฉ majรญ pลednost pลed nastavenรญm vรฝลกe:</translation> </message> <message> <source>Reset all client options to default.</source> @@ -1029,7 +1057,7 @@ </message> <message> <source>Expert</source> - <translation>Odbornรญk</translation> + <translation>Pokroฤilรก nastavenรญ</translation> </message> <message> <source>Enable coin &control features</source> @@ -1072,6 +1100,30 @@ <translation>Port proxy (napล. 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>Pouลพije se k pลipojovรกnรญ k protฤjลกkลฏm pลes:</translation> + </message> + <message> + <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> + <translation>Ukazuje, jestli se zadanรก vรฝchozรญ SOCKS5 proxy pouลพรญvรก k pลipojovรกnรญ k peerลฏm v rรกmci tohoto typu sรญtฤ.</translation> + </message> + <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Pลipojรญ se do Bitcoinovรฉ sรญtฤ pลes SOCKS5 proxy vyhrazenou pro skrytรฉ sluลพby v Tor sรญti.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> <translation>Pouลพรญt samostatnou SOCKS5 proxy ke spojenรญ s protฤjลกky pลes skrytรฉ sluลพby v Toru:</translation> </message> @@ -1101,7 +1153,7 @@ </message> <message> <source>&Unit to show amounts in:</source> - <translation>J&ednotka pro ฤรกstky:</translation> + <translation>Je&dnotka pro ฤรกstky:</translation> </message> <message> <source>Choose the default subdivision unit to show in the interface and when sending coins.</source> @@ -1113,7 +1165,7 @@ </message> <message> <source>&OK</source> - <translation>&Budiลพ</translation> + <translation>&Pouลพรญt</translation> </message> <message> <source>&Cancel</source> @@ -1141,7 +1193,7 @@ </message> <message> <source>This change would require a client restart.</source> - <translation>Tahle zmฤna bude chtรญt restartovat klienta.</translation> + <translation>Tato zmฤna vyลพaduje restart aplikace.</translation> </message> <message> <source>The supplied proxy address is invalid.</source> @@ -1188,7 +1240,7 @@ </message> <message> <source>Balances</source> - <translation>Stavy รบฤtลฏ</translation> + <translation>Stav รบฤtลฏ</translation> </message> <message> <source>Total:</source> @@ -1414,10 +1466,6 @@ <translation>Obecnรฉ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Pouลพรญvanรก verze OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Pouลพรญvanรก verze BerkeleyDB</translation> </message> @@ -1446,6 +1494,10 @@ <translation>Aktuรกlnรญ poฤet blokลฏ</translation> </message> <message> + <source>Memory usage</source> + <translation>Vyuลพitรญ pamฤti</translation> + </message> + <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> <translation>Otevลi soubor s ladicรญmi zรกznamy Bitcoin Core z aktuรกlnรญho datovรฉho adresรกลe. U velkรฝch logลฏ to mลฏลพe pรกr vteลin zabrat.</translation> </message> @@ -1550,6 +1602,34 @@ <translation>Vyฤistit konzoli</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>&Odpojit uzel</translation> + </message> + <message> + <source>Ban Node for</source> + <translation>Uvalit na uzel klatbu na</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &hodinu</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &den</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &tรฝden</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &rok</translation> + </message> + <message> + <source>&Unban Node</source> + <translation>&Zbavit uzel klatby</translation> + </message> + <message> <source>Welcome to the Bitcoin Core RPC console.</source> <translation>Vรญtej v RPC konzoli Bitcoin Core.</translation> </message> @@ -1578,6 +1658,10 @@ <translation>%1 GB</translation> </message> <message> + <source>(node id: %1)</source> + <translation>(id uzlu: %1)</translation> + </message> + <message> <source>via %1</source> <translation>via %1</translation> </message> @@ -1630,7 +1714,7 @@ </message> <message> <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source> - <translation>Volitelnรก zprรกva, kterรก se pลipojรญ k platebnรญmu poลพadavku a kterรก se zobrazรญ, kdyลพ se poลพadavek otevลe. Poznรกmka: Tahle zprรกva se neposรญlรก s platbou po Bitcoinovรฉ sรญti.</translation> + <translation>Volitelnรก zprรกva, kterรก se pลipojรญ k platebnรญmu poลพadavku a kterรก se zobrazรญ, kdyลพ se poลพadavek otevลe. Poznรกmka: tahle zprรกva se neposรญlรก s platbou po Bitcoinovรฉ sรญti.</translation> </message> <message> <source>An optional label to associate with the new receiving address.</source> @@ -1638,7 +1722,7 @@ </message> <message> <source>Use this form to request payments. All fields are <b>optional</b>.</source> - <translation>Tรญmto formulรกล mลฏลพeลก poลพadovat platby. Vลกechna pole jsou <b>volitelnรก</b>.</translation> + <translation>Tรญmto formulรกลem mลฏลพeลก poลพadovat platby. Vลกechna pole jsou <b>volitelnรก</b>.</translation> </message> <message> <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source> @@ -1931,7 +2015,7 @@ </message> <message> <source>S&end</source> - <translation>P&oลกli</translation> + <translation>Poลกl&i</translation> </message> <message> <source>Confirm send coins</source> @@ -1970,6 +2054,10 @@ <translation>Kopรญruj drobnรฉ</translation> </message> <message> + <source>Total Amount %1</source> + <translation>Celkovรก ฤรกstka %1</translation> + </message> + <message> <source>or</source> <translation>nebo</translation> </message> @@ -2001,6 +2089,10 @@ <source>Payment request expired.</source> <translation>Platebnรญ poลพadavek vyprลกel.</translation> </message> + <message> + <source>Pay only the required fee of %1</source> + <translation>Zaplatit pouze vyลพadovanรฝ poplatek %1</translation> + </message> <message numerus="yes"> <source>Estimated to begin confirmation within %n block(s).</source> <translation><numerusform>Potvrzovรกnรญ by podle odhadu mฤlo zaฤรญt bฤhem %n bloku.</numerusform><numerusform>Potvrzovรกnรญ by podle odhadu mฤlo zaฤรญt bฤhem %n blokลฏ.</numerusform><numerusform>Potvrzovรกnรญ by podle odhadu mฤlo zaฤรญt bฤhem %n blokลฏ.</numerusform></translation> @@ -2090,7 +2182,7 @@ </message> <message> <source>S&ubtract fee from amount</source> - <translation>&Odeฤรญst poplatek od ฤรกstky</translation> + <translation>Od&eฤรญst poplatek od ฤรกstky</translation> </message> <message> <source>Message:</source> @@ -2176,7 +2268,7 @@ </message> <message> <source>Copy the current signature to the system clipboard</source> - <translation>Zkopรญruj aktuรกlnฤ vybranรฝ podpis do systรฉmovรฉ schrรกnky</translation> + <translation>Zkopรญruj tento podpis do schrรกnky</translation> </message> <message> <source>Sign the message to prove you own this Bitcoin address</source> @@ -2220,7 +2312,7 @@ </message> <message> <source>Click "Sign Message" to generate signature</source> - <translation>Kliknutรญm na "Podepiลก zprรกvu" vygenerujeลก podpis</translation> + <translation>Kliknutรญm na โPodepiลก zprรกvuโ vygenerujeลก podpis</translation> </message> <message> <source>The entered address is invalid.</source> @@ -2248,7 +2340,7 @@ </message> <message> <source>Message signed.</source> - <translation>Zprรกv podepsรกna.</translation> + <translation>Zprรกva podepsรกna.</translation> </message> <message> <source>The signature could not be decoded.</source> @@ -2405,7 +2497,7 @@ </message> <message> <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source> - <translation>Vygenerovanรฉ mince musรญ ฤekat %1 blokลฏ, neลพ mohou bรฝt utraceny. Kdyลพ jsi vygeneroval tenhle blok, tak byl rozposlรกn do sรญtฤ, aby byl pลidรกn do ลetฤzce blokลฏ. Pokud se mu nepodaลรญ dostat se do ลetฤzce, zmฤnรญ se na "neakceptovanรฝ" a nepลฏjde utratit. To se obฤas mลฏลพe stรกt, pokud jinรฝ uzel vygeneruje blok zhruba ve stejnรฉm okamลพiku jako ty.</translation> + <translation>Vygenerovanรฉ mince musรญ ฤekat %1 blokลฏ, neลพ mohou bรฝt utraceny. Kdyลพ jsi vygeneroval tenhle blok, tak byl rozposlรกn do sรญtฤ, aby byl pลidรกn do ลetฤzce blokลฏ. Pokud se mu nepodaลรญ dostat se do ลetฤzce, zmฤnรญ se na โneakceptovanรฝโ a nepลฏjde utratit. To se obฤas mลฏลพe stรกt, pokud jinรฝ uzel vygeneruje blok zhruba ve stejnรฉm okamลพiku jako ty.</translation> </message> <message> <source>Debug information</source> @@ -2467,7 +2559,7 @@ </message> <message> <source>Immature (%1 confirmations, will be available after %2)</source> - <translation>Nedozrรกno (%1 potvrzenรญ, bude k dispozici za %2)</translation> + <translation>Nedozrรกno (%1 potvrzenรญ, dozraje pลi %2 potvrzenรญch)</translation> </message> <message numerus="yes"> <source>Open for %n more block(s)</source> @@ -2637,6 +2729,10 @@ <translation>Kopรญruj ID transakce</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Kopรญruj surovou transakci</translation> + </message> + <message> <source>Edit label</source> <translation>Uprav oznaฤenรญ</translation> </message> @@ -2670,7 +2766,7 @@ </message> <message> <source>Comma separated file (*.csv)</source> - <translation>CSV formรกt (*.csv)</translation> + <translation>Formรกt CSV (*.csv)</translation> </message> <message> <source>Confirmed</source> @@ -2784,14 +2880,66 @@ <translation>Akceptovat pลรญkazy z pลรญkazovรฉ ลรกdky a pลes JSON-RPC</translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Pokud nenรญ <category> zadรกna nebo je <category> = 1, bude tisknout veลกkerรฉ ladicรญ informace.</translation> + </message> + <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Prosรญm zkontrolujte nastavenรญ ฤasu na svรฉm poฤรญtaฤi. Pokud ฤas a datum nenรญ nastaven sprรกvnฤ, Bitcoin Core nebude fungovat!</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Proลezรกvรกnรญ je nastaveno pod minimum %d MiB. Pouลพij, prosรญm, nฤjakรฉ vyลกลกรญ ฤรญslo.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Proลezรกvรกnรญ: poslednรญ synchronizace penฤลพenky probฤhla pลed uลพ proลezanรฝmi daty. Je tลeba provรฉst -reindex (tedy v pลรญpadฤ proลezรกvacรญho reลพimu stรกhnout znovu celรฝ ลetฤzec blokลฏ)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Omezit nรกroky na รบloลพnรฝ prostor proลezรกvรกnรญm (mazรกnรญm) starรฝch blokลฏ. Tento reลพim nenรญ sluฤitelnรฝ s -txindex ani -rescan. Upozornฤnรญ: opฤtovnรก zmฤna tohoto nastavenรญ bude vyลพadovat novรฉ staลพenรญ celรฉho ลetฤzce blokลฏ. (vรฝchozรญ: 0 = bloky neproลezรกvat, >%u = cรญlovรก velikost souborลฏ s bloky, v MiB)</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>V proลezรกvacรญm reลพimu nenรญ moลพnรฉ pลeskenovรกvat ลetฤzec blokลฏ. Musรญลก provรฉst -reindex, coลพ znovu stรกhne celรฝ ลetฤzec blokลฏ.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>Chyba: Pลihodila se zรกvaลพnรก vnitลnรญ chyba, podrobnosti viz v debug.log</translation> + </message> + <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>Poplatek (v %s/kB), kterรฝ se pลidรก ke kaลพdรฉ odeslanรฉ transakci (vรฝchozรญ: %s)</translation> + </message> + <message> + <source>Pruning blockstore...</source> + <translation>Proลezรกvรกm รบloลพiลกtฤ blokลฏ...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> - <translation>Bฤลพet na pozadรญ jako dรฉmon a akceptovat pลรญkazy</translation> + <translation>Bฤลพet na pozadรญ jako dรฉmon a pลijรญmat pลรญkazy</translation> + </message> + <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>Nemohu spustit HTTP server. Detaily viz v debug.log.</translation> </message> <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Pลijรญmat spojenรญ zvenฤรญ (vรฝchozรญ: 1, pokud nenรญ zadรกno -proxy nebo -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee je nastaveno velmi vysoko! Toto je transakฤnรญ poplatek, kterรฝ bys platil, pokud nebude k dispozici odhad poplatkลฏ.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Sazba poplatku (v %s/kB), kterรก se pouลพije, pokud nebude k dispozici dostatek dat pro automatickรฝ odhad poplatku (vรฝchozรญ: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Pลijรญmat pลeposรญlanรฉ transakce obdrลพenรฉ od vลพdy vรญtanรฝch protฤjลกkลฏ, i kdyลพ transakce nepลeposรญlรกme (vรฝchozรญ: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Poslouchat na zadanรฉ adrese. Pro zรกpis IPv6 adresy pouลพij notaci [adresa]:port</translation> </message> @@ -2808,10 +2956,18 @@ <translation>Spustit pลรญkaz, kdyลพ se objevรญ transakce tรฝkajรญcรญ se penฤลพenky (%s se v pลรญkazu nahradรญ za TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Vynutit pลeposรญlรกnรญ transakcรญ od vลพdy vรญtanรฝch protฤjลกkลฏ (tj. tฤch na bรญlรฉ listinฤ), i kdyลพ poruลกujรญ mรญstnรญ zรกsady pro pลeposรญlรกnรญ (vรฝchozรญ: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Nastavenรญ poฤtu vlรกken pro verifikaci skriptลฏ (%u aลพ %d, 0 = automaticky, <0 = nechat danรฝ poฤet jader volnรฝ, vรฝchozรญ: %d)</translation> </message> <message> + <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source> + <translation>Databรกze blokลฏ obsahuje blok, kterรฝ vypadรก jako z budoucnosti, coลพ mลฏลพe bรฝt kvลฏli ลกpatnฤ nastavenรฉmu datu a ฤasu na tvรฉm poฤรญtaฤi. Nech databรกzi blokลฏ pลestavฤt pouze v pลรญpadฤ, ลพe si jsi jistรฝ, ลพe mรกลก na poฤรญtaฤi sprรกvnรฝ datum a ฤas</translation> + </message> + <message> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>Tohle je testovacรญ verze โ pouลพรญvej ji jen na vlastnรญ riziko, ale rozhodnฤ ji nepouลพรญvej k tฤลพbฤ nebo pro obchodnรญ aplikace</translation> </message> @@ -2820,6 +2976,14 @@ <translation>Nedaลรญ se mi pลipojit na %s na tomhle poฤรญtaฤi. Bitcoin Core uลพ pravdฤpodobnฤ jednou bฤลพรญ.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Nepodporovanรฝ argument -whitelistalwaysrelay se ignoruje, pouลพij -whitelistrelay a/nebo -whitelistforcerelay.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>Pouลพรญt UPnP k namapovรกnรญ naslouchacรญho portu (vรฝchozรญ: 1, pokud naslouchรก a nepouลพรญvรก -proxy)</translation> + </message> + <message> <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> <translation>UPOZORNฤNร: vygenerovรกno nezvykle mnoho blokลฏ โ pลijato %d blokลฏ jen za poslednรญch %d hodin (oฤekรกvรกno %d)</translation> </message> @@ -2837,17 +3001,25 @@ </message> <message> <source>Warning: wallet.dat corrupt, data salvaged! Original wallet.dat saved as wallet.{timestamp}.bak in %s; if your balance or transactions are incorrect you should restore from a backup.</source> - <translation>Upozornฤnรญ: soubor wallet.dat je poลกkozenรฝ, data jsou vลกak zachrรกnฤna! Pลฏvodnรญ soubor wallet.dat je uloลพenรฝ jako wallet.{timestamp}.bak v %s. Pokud je stav tvรฉho รบฤtu nebo transakce nesprรกvnรฉ, zลejmฤ bys mฤl obnovit zรกlohu.</translation> + <translation>Upozornฤnรญ: soubor wallet.dat je poลกkozenรฝ, data jsou vลกak zachrรกnฤna! Pลฏvodnรญ soubor wallet.dat je uloลพenรฝ jako wallet.{timestamp}.bak v %s. Pokud jsou stav tvรฉho รบฤtu nebo transakce nesprรกvnรฉ, zลejmฤ bys mฤl obnovit zรกlohu.</translation> </message> <message> <source>Whitelist peers connecting from the given netmask or IP address. Can be specified multiple times.</source> - <translation>Umรญstit na bรญlou listinu protฤjลกky pลipojujรญcรญ se z danรฉ podsรญtฤ ฤi IP adresy. Lze zadat i vรญcekrรกt.</translation> + <translation>Vลพdy vรญtat protฤjลกky pลipojujรญcรญ se z danรฉ podsรญtฤ ฤi IP adresy. Lze zadat i vรญcekrรกt.</translation> + </message> + <message> + <source>-maxmempool must be at least %d MB</source> + <translation>-maxmempool musรญ bรฝt alespoล %d MB</translation> </message> <message> <source><category> can be:</source> <translation><category> mลฏลพe bรฝt:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Pลipojit komentรกล k typu klienta</translation> + </message> + <message> <source>Block creation options:</source> <translation>Moลพnosti vytvรกลenรญ bloku:</translation> </message> @@ -2912,6 +3084,22 @@ <translation>Neplatnรก -onion adresa: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Neplatnรก ฤรกstka pro -fallbackfee=<ฤรกstka>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>Udrลพovat zasobnรญk transakcรญ menลกรญ neลพ <n> megabajtลฏ (vรฝchozรญ: %u)</translation> + </message> + <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Mรญsto pro autentizaฤnรญ cookie (vรฝchozรญ: adresรกล pro data)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Minimรกlnรญ poฤet bajtลฏ na kaลพdรฝ sigop v transakcรญch, kterรฉ pลeposรญlรกme a tฤลพรญme (vรฝchozรญ: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Je nedostatek deskriptorลฏ souborลฏ.</translation> </message> @@ -2920,6 +3108,10 @@ <translation>Pลipojovat se pouze k uzlลฏm v <net> sรญti (ipv4, ipv6 nebo onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Vypsat verzi a skonฤit</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Proลezรกvรกnรญ nemลฏลพe bรฝt zkonfigurovรกno s negativnรญ hodnotou.</translation> </message> @@ -2940,10 +3132,26 @@ <translation>Udej nรกzev souboru s penฤลพenkou (v rรกmci datovรฉho adresรกลe)</translation> </message> <message> + <source>Unsupported argument -benchmark ignored, use -debug=bench.</source> + <translation>Nepodporovanรฝ argument -benchmark se ignoruje, pouลพij -debug=bench.</translation> + </message> + <message> + <source>Unsupported argument -debugnet ignored, use -debug=net.</source> + <translation>Nepodporovanรฝ argument -debugnet se ignoruje, pouลพij -debug=net.</translation> + </message> + <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>Argument -tor jiลพ nenรญ podporovanรฝ, pouลพij -onion.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: %u)</source> <translation>Pouลพรญt UPnP k namapovรกnรญ naslouchacรญho portu (vรฝchozรญ: %u)</translation> </message> <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>Komentรกล u typu klienta (%s) obsahuje riskantnรญ znaky.</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>Ovฤลuji bloky...</translation> </message> @@ -2960,10 +3168,6 @@ <translation>Moลพnosti penฤลพenky:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Upozornฤnรญ: tahle verze je zastaralรก, mฤl bys ji aktualizovat!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Je tลeba pลestavฤt databรกzi pouลพitรญm -reindex, aby bylo moลพnรฉ zmฤnit -txindex</translation> </message> @@ -2973,7 +3177,7 @@ </message> <message> <source>Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6</source> - <translation>Obsadit zadanou adresu a protฤjลกky, kterรฉ se na nรญ pลipojรญ, umรญstit na bรญlou listinu. Pro zรกpis IPv6 adresy pouลพij notaci [adresa]:port</translation> + <translation>Obsadit zadanou adresu a vลพdy vรญtat protฤjลกky, kterรฉ se na ni pลipojรญ. Pro zรกpis IPv6 adresy pouลพij notaci [adresa]:port</translation> </message> <message> <source>Bind to given address to listen for JSON-RPC connections. Use [host]:port notation for IPv6. This option can be specified multiple times (default: bind to all interfaces)</source> @@ -3000,6 +3204,10 @@ <translation>Spustit pลรญkaz, kdyลพ pลijde relevantnรญ upozornฤnรญ nebo kdyลพ dojde k opravdu dlouhรฉmu rozลกtฤpenรญ ลetezce blokลฏ (%s se v pลรญkazu nahradรญ zprรกvou)</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>Poplatky (v %s/kB) menลกรญ neลพ tato hodnota jsou povaลพovรกny za nulovรฉ pro รบฤely pลeposรญlรกnรญ, tฤลพenรญ a vytvรกลenรญ transakcรญ (vรฝchozรญ: %s)</translation> + </message> + <message> <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> <translation>Pokud paytxfee nenรญ nastaveno, platit dostateฤnรฝ poplatek na to, aby zaฤaly bรฝt transakce potvrzovรกny v prลฏmฤru bฤhem n blokลฏ (vรฝchozรญ: %u)</translation> </message> @@ -3037,7 +3245,7 @@ </message> <message> <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> - <translation>Na protฤjลกky na bรญlรฉ listinฤ se nevztahuje DoS klatba a jejich transakce jsou vลพdy pลeposรญlรกny, i kdyลพ uลพ tลeba jsou v mempoolu, coลพ je uลพiteฤnรฉ napล. pro brรกnu</translation> + <translation>Na vลพdy vรญtanรฉ protฤjลกky se nevztahuje DoS klatba a jejich transakce jsou vลพdy pลeposรญlรกny, i kdyลพ uลพ tลeba jsou v transakฤnรญm zรกsobnรญku, coลพ je uลพiteฤnรฉ napล. pro brรกnu</translation> </message> <message> <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source> @@ -3056,6 +3264,14 @@ <translation>Aktivuji nejlepลกรญ ลetฤzec...</translation> </message> <message> + <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> + <translation>Pokusit se pลi startu zachrรกnit soukromรฉ klรญฤe z poลกkozenรฉho souboru wallet.dat</translation> + </message> + <message> + <source>Automatically create Tor hidden service (default: %d)</source> + <translation>Automaticky v Toru vytvรกลet skrytรฉ sluลพby (vรฝchozรญ: %d)</translation> + </message> + <message> <source>Cannot resolve -whitebind address: '%s'</source> <translation>Nemohu pลeloลพit -whitebind adresu: '%s'</translation> </message> @@ -3076,6 +3292,10 @@ <translation>Chyba pลi ฤtenรญ z databรกze, ukonฤuji se.</translation> </message> <message> + <source>Imports blocks from external blk000??.dat file on startup</source> + <translation>Importovat pลi startu bloky z externรญho souboru blk000??.dat</translation> + </message> + <message> <source>Information</source> <translation>Informace</translation> </message> @@ -3128,6 +3348,14 @@ <translation>Pลijรญmat a zobrazovat poplachy z P2P sรญtฤ (vรฝchozรญ: %u)</translation> </message> <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Omezuji -maxconnections z %d na %d kvลฏli systรฉmovรฝm omezenรญm.</translation> + </message> + <message> + <source>Rescan the block chain for missing wallet transactions on startup</source> + <translation>Pลeskenovat pลi startu ลetฤzec blokลฏ na chybฤjรญcรญ transakce tvรฉ pฤnฤลพenky</translation> + </message> + <message> <source>Send trace/debug info to console instead of debug.log file</source> <translation>Posรญlat stopovacรญ/ladicรญ informace do konzole mรญsto do souboru debug.log</translation> </message> @@ -3156,6 +3384,14 @@ <translation>Tohle je experimentรกlnรญ program.</translation> </message> <message> + <source>Tor control port password (default: empty)</source> + <translation>Heslo ovlรกdacรญho portu Toru (vรฝchozรญ: prรกzdnรฉ)</translation> + </message> + <message> + <source>Tor control port to use if onion listening enabled (default: %s)</source> + <translation>Ovlรกdacรญ port Toru, je-li zapnutรฉ onion naslouchรกnรญ (vรฝchozรญ: %s)</translation> + </message> + <message> <source>Transaction amount too small</source> <translation>ฤรกstka v transakci je pลรญliลก malรก</translation> </message> @@ -3176,6 +3412,10 @@ <translation>Nedaลรญ se mi pลipojit na %s na tomhle poฤรญtaฤi (operace bind vrรกtila chybu %s)</translation> </message> <message> + <source>Upgrade wallet to latest format on startup</source> + <translation>Pลevรฉst pลi startu penฤลพenku na nejnovฤjลกรญ formรกt</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>Uลพivatelskรฉ jmรฉno pro JSON-RPC spojenรญ</translation> </message> @@ -3188,10 +3428,18 @@ <translation>Upozornฤnรญ</translation> </message> <message> + <source>Whether to operate in a blocks only mode (default: %u)</source> + <translation>Zda fungovat v ฤistฤ blokovรฉm reลพimu (vรฝchozรญ: %u)</translation> + </message> + <message> <source>Zapping all transactions from wallet...</source> <translation>Vymazat vลกechny transakce z penฤลพenky...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>Moลพnosti ZeroMQ oznรกmenรญ:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>Soubor wallet.dat je poลกkozen, jeho zรกchrana se nezdaลila</translation> </message> @@ -3224,6 +3472,26 @@ <translation>(1 = uklรกdat transakฤnรญ metadata, napล. majitele รบฤtu a informace o platebnรญm poลพadavku, 2 = mazat transakฤnรญ metadata)</translation> </message> <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee je nastaveno velmi vysoko! Takto vysokรฝ poplatek mลฏลพe bรฝt zaplacen v jednotlivรฉ transakci.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee je nastaveno velmi vysoko! Toto je transakฤnรญ poplatek, kterรฝ zaplatรญลก za kaลพdou poslanou transakci.</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>Nedrลพet transakce v zรกsobnรญku dรฉle neลพ <n> hodin (vรฝchozรญ: %u)</translation> + </message> + <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>Nastala chyba pลi ฤtenรญ souboru wallet.dat! Vลกechny klรญฤe se pลeฤetly sprรกvnฤ, ale data o transakcรญch nebo zรกznamy v adresรกลi mohou chybฤt ฤi bรฝt nesprรกvnรฉ.</translation> + </message> + <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>Poplatky (v %s/kB) menลกรญ neลพ tato hodnota jsou povaลพovรกny za nulovรฉ pro รบฤely vytvรกลenรญ transakcรญ (vรฝchozรญ: %s)</translation> + </message> + <message> <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> <translation>Jak moc dลฏkladnรก mรก bรฝt verifikace blokลฏ -checkblocks (0-4, vรฝchozรญ: %u)</translation> </message> @@ -3240,10 +3508,30 @@ <translation>Tisknout ladicรญ informace (vรฝchozรญ: %u, zadรกnรญ <category> je volitelnรฉ)</translation> </message> <message> + <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> + <translation>Umoลพnit filtrovรกnรญ blokลฏ a transakcรญ pomocรญ Bloomova filtru (vรฝchozรญ: %u)</translation> + </message> + <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>Celkovรก dรฉlka sรญลฅovรฉho identifikaฤnรญho ลetฤzce (%i) pลekroฤila svลฏj hornรญ limit (%i). Omez poฤet nebo velikost voleb uacomment.</translation> + </message> + <message> + <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> + <translation>Pokusit se udrลพet odchozรญ provoz pod stanovenou hodnotou (v MiB za 24 hodin), 0 = bez omezenรญ (vรฝchozรญ: %d)</translation> + </message> + <message> + <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> + <translation>Byl pouลพit nepodporovanรฝ argument -socks. Nastavenรญ verze SOCKS uลพ nenรญ moลพnรฉ, podporovรกny jsou pouze SOCKS5 proxy.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> <translation>Pouลพรญt samostatnou SOCKS5 proxy ke spojenรญ s protฤjลกky pลes skrytรฉ sluลพby v Toru (vรฝchozรญ: %s)</translation> </message> <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>Uลพivatelskรฉ jmรฉno a zahaลกovanรฉ heslo pro JSON-RPC spojenรญ. Pole <userpw> mรก formรกt: <UลฝIVATELSKร_JMรNO>:<SลฎL>$<HAล >. Pomocnรฝ pythonnรญ skript je pลiloลพen v share/rpcuser. Tuto volbu lze pouลพรญt i vรญcekrรกt</translation> + </message> + <message> <source>(default: %s)</source> <translation>(vรฝchozรญ: %s)</translation> </message> @@ -3328,10 +3616,6 @@ <translation>Zadej ฤasovรฝ limit spojenรญ v milivteลinรกch (minimum: 1, vรฝchozรญ: %d)</translation> </message> <message> - <source>Specify pid file (default: %s)</source> - <translation>PID soubor (vรฝchozรญ: %s)</translation> - </message> - <message> <source>Spend unconfirmed change when sending transactions (default: %u)</source> <translation>Utrรกcet i jeลกtฤ nepotvrzenรฉ drobnรฉ pลi posรญlรกnรญ transakcรญ (vรฝchozรญ: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_cs_CZ.ts b/src/qt/locale/bitcoin_cs_CZ.ts index cc0c791154..34d7b4b4a1 100644 --- a/src/qt/locale/bitcoin_cs_CZ.ts +++ b/src/qt/locale/bitcoin_cs_CZ.ts @@ -2,6 +2,10 @@ <context> <name>AddressBookPage</name> <message> + <source>Right-click to edit address or label</source> + <translation>Pravรฝm klikem editujte adresu nebo popisek</translation> + </message> + <message> <source>Create a new address</source> <translation>Vytvoลit novou adresu</translation> </message> @@ -10,6 +14,18 @@ <translation>Kopรญrovat aktuรกlnฤ vybranรฉ adresy do schrรกnky</translation> </message> <message> + <source>Delete the currently selected address from the list</source> + <translation>Odstranรญ aktuรกlnฤ vybranรฉ adresy ze seznamu</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportovat aktuรกlnรญ pohled do souboru</translation> + </message> + <message> + <source>&Export</source> + <translation>&Exportovat</translation> + </message> + <message> <source>&Delete</source> <translation>&Odstranit</translation> </message> @@ -622,6 +638,14 @@ </context> <context> <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Exportovat</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportovat aktuรกlnรญ pohled do souboru</translation> + </message> </context> <context> <name>bitcoin-core</name> diff --git a/src/qt/locale/bitcoin_da.ts b/src/qt/locale/bitcoin_da.ts index aa2724a1e8..7d11825a61 100644 --- a/src/qt/locale/bitcoin_da.ts +++ b/src/qt/locale/bitcoin_da.ts @@ -1017,7 +1017,7 @@ </message> <message> <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source> - <translation>Minimรฉr i stedet for at lukke applikationen, nรฅr vinduet lukkes. Nรฅr denne indstilling er slรฅet til, vil applikationen fรธrst blive lukket, nรฅr Afslut vรฆlges i menuen.</translation> + <translation>Minimรฉr i stedet for at lukke applikationen, nรฅr vinduet lukkes. Nรฅr denne indstilling er aktiveret, vil applikationen fรธrst blive lukket, nรฅr Afslut vรฆlges i menuen.</translation> </message> <message> <source>The user interface language can be set here. This setting will take effect after restarting Bitcoin Core.</source> @@ -1069,7 +1069,7 @@ </message> <message> <source>Enable coin &control features</source> - <translation>Slรฅ egenskaber for &coin-styring til</translation> + <translation>Aktivรฉr egenskaber for &coin-styring</translation> </message> <message> <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source> @@ -1474,10 +1474,6 @@ <translation>Generelt</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Anvender OpenSSL-version</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Bruger BerkeleyDB version</translation> </message> @@ -2980,6 +2976,18 @@ <translation>Acceptรฉr forbindelser udefra (standard: 1 hvis hverken -proxy eller -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee er sat meget hรธjt! Dette er transaktionsgebyret, du eventuelt betaler, hvis gebyrestimater ikke er tilgรฆngelige.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>En gebyrsats (i %s/kB), som vil blive brugt, hvis gebyrestimering har utilstrรฆkkelig data (standard: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Acceptรฉr videresendte transaktioner, der modtages fra hvidlistede knuder, selv nรฅr transaktioner ikke videresendes (standard: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Tildel til den givne adresse og lyt altid pรฅ den. Brug [vรฆrt]:port-notation for IPv6</translation> </message> @@ -2996,6 +3004,10 @@ <translation>Udfรธr kommando, nรฅr en transaktion i tegnebogen รฆndres (%s i kommandoen erstattes med TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Gennemtving videresendelse af transaktioner fra hvidlistede knuder, selv om de overtrรฆder lokal videresendelsespolitik (standard: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Sรฆt antallet af scriptverificeringstrรฅde (%u til %d, 0 = auto, <0 = efterlad det antal kernet fri, standard: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>Ikke i stand til at tildele til %s pรฅ denne computer. Bitcoin Core kรธrer sansynligvis allerede.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Argument -whitelistalwaysrelay understรธttes ikke og ignoreres; brug -whitelistrelay og/eller -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Brug UPnP for at konfigurere den lyttende port (standard: 1 under lytning og ingen -proxy)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>Advarsel: Netvรฆrket ser ikke ud til at vรฆre fuldt ud enige! Enkelte minere ser ud til at opleve problemer.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Advarsel: Ukendte blokversioner bliver minet! Det er muligt, at ukendte regler er i brug</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Advarsel: Vi ser ikke ud til at vรฆre fuldt ud enige med andre knuder! Du kan vรฆre nรธdt til at opgradere, eller andre knuder kan vรฆre nรธdt til at opgradere.</translation> </message> @@ -3048,6 +3068,10 @@ <translation><kategori> kan vรฆre:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Fรธj kommentar til brugeragentstrengen</translation> + </message> + <message> <source>Block creation options:</source> <translation>Blokoprettelsestilvalg:</translation> </message> @@ -3092,6 +3116,10 @@ <translation>Aktivรฉr offentliggรธrelse af rรฅ transaktion i <address></translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Aktivรฉr transaktionserstatning i hukommelsespuljen (standard: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Klargรธring af blokdatabase mislykkedes</translation> </message> @@ -3128,10 +3156,22 @@ <translation>Ugyldig -onion adresse: "%s"</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Ugyldigt belรธb for -fallbackfee=<belรธb>: "%s"</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Hold hukommelsespuljen med transaktioner under <n> megabyte (standard: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Placering for autentificerings-cookie (standard: datamappe)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Minimum bytes pr. sigop i transaktioner, vi videresender og miner (standard: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>For fรฅ tilgรฆngelige fildeskriptorer.</translation> </message> @@ -3140,6 +3180,10 @@ <translation>Tilslut kun til knuder i netvรฆrk <net> (IPv4, IPv6 eller Onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Udskriv version og afslut</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Beskรฆring kan ikke opsรฆttes med en negativ vรฆrdi.</translation> </message> @@ -3196,10 +3240,6 @@ <translation>Tilvalg for tegnebog:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Advarsel: Denne version er forรฆldet; opgradering pรฅkrรฆvet!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Du er nรธdt til at genopbygge databasen ved hjรฆlp af -reindex for at รฆndre -txindex</translation> </message> @@ -3257,7 +3297,7 @@ </message> <message> <source>Randomize credentials for every proxy connection. This enables Tor stream isolation (default: %u)</source> - <translation>Brug tilfรฆldige akkreditiver for hver proxy-forbindelse. Dette tillader strรธmisolation med Tor (standard: %u)</translation> + <translation>Brug tilfรฆldige akkreditiver for hver proxy-forbindelse. Dette aktiverer strรธmisolation med Tor (standard: %u)</translation> </message> <message> <source>Set maximum size of high-priority/low-fee transactions in bytes (default: %d)</source> @@ -3277,7 +3317,7 @@ </message> <message> <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> - <translation>Andre knuder pรฅ hvidliste kan ikke DoS-bandlyses, og deres transaktioner videresendes altid, selv hvis de allerede er i mempool'en. Brugbart til fx et adgangspunkt</translation> + <translation>Andre knuder pรฅ hvidliste kan ikke DoS-bandlyses, og deres transaktioner videresendes altid, selv hvis de allerede er i hukommelsespuljen. Brugbart til fx et adgangspunkt</translation> </message> <message> <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source> @@ -3296,10 +3336,6 @@ <translation>Aktiverer bedste kรฆdeโฆ</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Videresend altid transaktioner, der modtages fra hvidlistede knuder (standard: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Forsรธg at genskabe private nรธgler fra en รธdelagt wallet.dat under opstart</translation> </message> @@ -3425,7 +3461,7 @@ </message> <message> <source>Tor control port to use if onion listening enabled (default: %s)</source> - <translation>Tor kontrolport, der skal bruges, hvis onion-lytning er slรฅet til (standard: %s)</translation> + <translation>Tor kontrolport, der skal bruges, hvis onion-lytning er aktiveret (standard: %s)</translation> </message> <message> <source>Transaction amount too small</source> @@ -3464,6 +3500,10 @@ <translation>Advarsel</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Advarsel: Ukendte nye regler aktiveret (versionsbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Hvorvidt der skal arbejdes i kun-blokke-tilstand (standard: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_de.ts b/src/qt/locale/bitcoin_de.ts index 84de80aff5..947a471acd 100644 --- a/src/qt/locale/bitcoin_de.ts +++ b/src/qt/locale/bitcoin_de.ts @@ -892,7 +892,7 @@ </message> <message> <source>Set language, for example "de_DE" (default: system locale)</source> - <translation>Sprache einstellen, zum Beispiel "de_DE" (default: system locale)</translation> + <translation>Sprache einstellen, zum Beispiel "de_DE" (Standard: Systemgebietsschema)</translation> </message> <message> <source>Start minimized</source> @@ -1474,10 +1474,6 @@ <translation>Allgemein</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Verwendete OpenSSL-Version</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Verwendete BerkeleyDB-Version</translation> </message> @@ -2928,6 +2924,10 @@ <translation>Kommandozeilen- und JSON-RPC-Befehle annehmen</translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Wenn <category> nicht angegeben wird oder <category>=1, jegliche Debugginginformationen ausgeben.</translation> + </message> + <message> <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> <translation>Maximale Gesamtgebรผhr (in %s) in einer Bรถrsentransaktion; wird dies zu niedrig gesetzten kรถnnen groรe Transaktionen abgebrochen werden (Standard: %s)</translation> </message> @@ -2936,10 +2936,22 @@ <translation>Bitte korrigieren Sie die Datums- und Uhrzeiteinstellungen Ihres Computers, da Bitcoin Core ansonsten nicht ordnungsgemรคร funktionieren wird.</translation> </message> <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Kรผrzungsmodus wurde kleiner als das Minimum in Hรถhe von %d MiB konfiguriert. Bitte verwenden Sie einen grรถรeren Wert.</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Speicherplatzanforderung durch kรผrzen (lรถschen) alter Blรถcke reduzieren. Dieser Modus ist nicht mit -txindex und -rescan kompatibel. Warnung: Die Umkehr dieser Einstellung erfordert das erneute Herunterladen der gesamten Blockkette. (Standard: 0 = deaktiviert das Kรผrzen von Blรถcken, >%u = Zielgrรถรe in MiB, die fรผr Blockdateien verwendet werden darf)</translation> + </message> + <message> <source>Error: A fatal internal error occurred, see debug.log for details</source> <translation>Fehler: Ein schwerer interner Fehler ist aufgetreten, siehe debug.log fรผr Details.</translation> </message> <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>Gebรผhr (in %s/kB), die von Ihnen gesendeten Transaktionen hinzugefรผgt wird (Standard: %s)</translation> + </message> + <message> <source>Pruning blockstore...</source> <translation>Kรผrze Blockspeicher...</translation> </message> @@ -2956,6 +2968,14 @@ <translation>Eingehende Verbindungen annehmen (Standard: 1, wenn nicht -proxy oder -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee ist sehr hoch eingestellt! Das ist die Transaktionsgebรผhr, welche du zahlen mรผsstest, wenn die Gebรผhrenschรคtzungen nicht verfรผgbar sind.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Eine Transaktionsgebรผhr (in %s/kB) wird genutzt, wenn fรผr die Gebรผhrenschรผtzung zu wenig Daten vorliegen (Standardwert: %s)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>An die angegebene Adresse binden und immer abhรถren. Fรผr IPv6 "[Host]:Port"-Notation verwenden</translation> </message> @@ -2972,10 +2992,18 @@ <translation>Befehl ausfรผhren wenn sich eine Wallet-Transaktion verรคndert (%s im Befehl wird durch die Transaktions-ID ersetzt)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Leite Transaktionen von Peers auf der Positivliste auf jeden Fall weiter, auch wenn sie die lokale Weiterleitungsregeln verletzen (Standardeinstellung: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Maximale Anzahl an Skript-Verifizierungs-Threads festlegen (%u bis %d, 0 = automatisch, <0 = so viele Kerne frei lassen, Standard: %d)</translation> </message> <message> + <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source> + <translation>Die Block-Datenbank enthรคlt einen Block, der in der Zukunft auftaucht. Dies kann daran liegen, dass die Systemzeit Ihres Computers falsch eingestellt ist. Stellen Sie die Block-Datenbank nur wieder her, wenn Sie sich sicher sind, dass Ihre Systemzeit korrekt eingestellt ist.</translation> + </message> + <message> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>Dies ist eine Vorab-Testversion - Verwendung auf eigene Gefahr - nicht fรผr Mining- oder Handelsanwendungen nutzen!</translation> </message> @@ -2984,6 +3012,14 @@ <translation>Kann auf diesem Computer nicht an %s binden, da Bitcoin Core wahrscheinlich bereits gestartet wurde.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Das Argument -whitelistalwaysrelay wird nicht unterstรผtzt und deswegen ignoriert. Benutze -whitelistrelay und/oder -whitelistforcerelay.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>UPnP verwenden, um eine Portweiterleitung einzurichten (Standard: 1, wenn abgehรถrt wird und -proxy nicht gesetzt ist)</translation> + </message> + <message> <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> <translation>Warnung: Es wurde eine ungewรถhnlich hohe Anzahl Blรถcke erzeugt, %d Blรถcke wurden in den letzten %d Stunden empfangen (%d wurden erwartet).</translation> </message> @@ -2996,6 +3032,10 @@ <translation>Warnung: Das Netzwerk scheint nicht vollstรคndig รผbereinzustimmen! Einige Miner scheinen Probleme zu haben.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Warnung: Unbekannte Blockversion wird durch Mining erzeugt! Es ist mรถglich, dass unbekannte Regeln in Kraft sind.</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Warnung: Wir scheinen nicht vollstรคndig mit unseren Gegenstellen รผbereinzustimmen! Sie oder die anderen Knoten mรผssen unter Umstรคnden Ihre Client-Software aktualisieren.</translation> </message> @@ -3016,6 +3056,10 @@ <translation><category> kann sein:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Hรคnge ein Kommentar zur User Agent-Zeichenkette an</translation> + </message> + <message> <source>Block creation options:</source> <translation>Blockerzeugungsoptionen:</translation> </message> @@ -3056,6 +3100,10 @@ <translation>Aktiviere das Verรถffentlichen des Raw-Blocks in <address></translation> </message> <message> + <source>Enable publish raw transaction in <address></source> + <translation>Aktiviere das Verรถffentlichen der Roh-Transaktion in <address></translation> + </message> + <message> <source>Error initializing block database</source> <translation>Fehler beim Initialisieren der Blockdatenbank</translation> </message> @@ -3092,6 +3140,18 @@ <translation>Ungรผltige "-onion"-Adresse: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Ungรผltiger Betrag fรผr -fallbackfee=<amount>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>Halten Sie den Transaktionsspeicherpool unter <n> Megabytes (Voreinstellung: %u)</translation> + </message> + <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Dateiort fรผr das Auth-Cookie (Standard: Datenverzeichnis)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Nicht genรผgend Datei-Deskriptoren verfรผgbar.</translation> </message> @@ -3100,6 +3160,10 @@ <translation>Nur zu Knoten des Netzwerktyps <net> verbinden (ipv4, ipv6 oder onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Gibt die Versionsnummer aus und beendet das Programm</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Kรผrzungsmodus kann nicht mit einem negativen Wert konfiguriert werden.</translation> </message> @@ -3136,6 +3200,10 @@ <translation>UPnP verwenden, um eine Portweiterleitung einzurichten (Standard: %u)</translation> </message> <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>Der User Agent Kommentar (%s) enthรคlt unsichere Zeichen.</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>Verifiziere Blรถcke...</translation> </message> @@ -3152,10 +3220,6 @@ <translation>Wallet-Optionen:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Warnung: Diese Version is veraltet, Aktualisierung erforderlich!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Sie mรผssen die Datenbank mit Hilfe von -reindex neu aufbauen, um -txindex zu verรคndern</translation> </message> @@ -3192,6 +3256,10 @@ <translation>Befehl ausfรผhren wenn ein relevanter Alarm empfangen wird oder wir einen wirklich langen Fork entdecken (%s im Befehl wird durch die Nachricht ersetzt)</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>Niedrigere Gebรผhren (in %s/Kb) als diese werden bei der Transaktionserstellung als gebรผhrenfrei angesehen (Standard: %s)</translation> + </message> + <message> <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> <translation>Wenn -paytxfee nicht festgelegt wurde Gebรผhren einschlieรen, so dass mit der Bestรคtigung von Transaktionen im Schnitt innerhalb von n Blรถcken begonnen wird (Standard: %u)</translation> </message> @@ -3332,6 +3400,10 @@ <translation>P2P-Netzwerk-Alarme empfangen und anzeigen (Standard: %u)</translation> </message> <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Reduziere -maxconnections von %d zu %d, aufgrund von Systemlimitierungen.</translation> + </message> + <message> <source>Rescan the block chain for missing wallet transactions on startup</source> <translation>Blockkette beim Starten erneut nach fehlenden Wallet-Transaktionen durchsuchen</translation> </message> @@ -3408,6 +3480,10 @@ <translation>Warnung</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Warnung: Unbekannte neue Regeln aktiviert (Versionsbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Legt fest ob nur Blรถcke Modus aktiv sein soll (Standard: %u)</translation> </message> @@ -3468,6 +3544,10 @@ <translation>Lesen von wallet.dat fehlgeschlagen! Alle Schlรผssel wurden korrekt gelesen, Transaktionsdaten bzw. Adressbucheintrรคge fehlen aber mรถglicherweise oder sind inkorrekt.</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>Niedrigere Gebรผhren (in %s/Kb) als diese werden bei der Transaktionserstellung als gebรผhrenfrei angesehen (Standard: %s)</translation> + </message> + <message> <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> <translation>Legt fest, wie grรผndlich die Blockverifikation von -checkblocks ist (0-4, Standard: %u)</translation> </message> @@ -3484,6 +3564,10 @@ <translation>Debugginginformationen ausgeben (Standard: %u, <category> anzugeben ist optional)</translation> </message> <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>Gesamtlรคnge des Netzwerkversionstrings (%i) erreicht die maximale Lรคnge (%i). Reduzieren Sie die Nummer oder die Grรถรe von uacomments.</translation> + </message> + <message> <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> <translation>Versucht ausgehenden Datenverkehr unter dem gegebenen Wert zu halten (in MiB pro 24h), 0 = kein Limit (default: %d)</translation> </message> @@ -3496,6 +3580,10 @@ <translation>Separaten SOCKS5-Proxy verwenden, um Gegenstellen รผber versteckte Tor-Dienste zu erreichen (Standard: %s)</translation> </message> <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>Benutzername und gehashtes Passwort fรผr JSON-RPC Verbindungen. Das Feld <userpw> kommt im Format: <USERNAME>:<SALT>$<HASH>. Ein kanonisches Pythonskript ist in share/rpcuser inbegriffen. Diese Option kann mehrere Male spezifiziert werden</translation> + </message> + <message> <source>(default: %s)</source> <translation>(Standard: %s)</translation> </message> diff --git a/src/qt/locale/bitcoin_el_GR.ts b/src/qt/locale/bitcoin_el_GR.ts index 90c27c4394..b5fb22f973 100644 --- a/src/qt/locale/bitcoin_el_GR.ts +++ b/src/qt/locale/bitcoin_el_GR.ts @@ -169,6 +169,11 @@ <translation>ฮฮฏฯฯฮต ฯฮฏฮณฮฟฯ
ฯฮฟฮน ฯฯฮน ฮธฮญฮปฮตฯฮต ฮฝฮฑ ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฮฎฯฮตฯฮต ฯฮฟ ฯฮฟฯฯฮฟฯฯฮปฮน ฯฮฑฯ;</translation> </message> <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>ฮคฮฟ Bitcoin Core ฮธฮฑ ฮบฮปฮตฮนฯฮตฮน ฯฯฯฮฑ ฮณฮนฮฑ ฮฝฮฑ ฯฮตฮปฮตฮนฯฯฮตฮน ฯฮทฮฝ ฮดฮนฮฑฮดฮนฮบฮฑฯฮฏฮฑ ฮบฯฯ
ฯฯฮฟฮณฯฮฌฯฮทฯฮทฯ. ฮฯ
ฮผฮฎฯฮฟฯ
ฯฯฮน ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฯฮฝฯฮฑฯ ฯฮฟ ฯฮฟฯฯฮฟฯฯฮปฮน ฯฮฟฯ
ฮดฮตฮฝ ฮผฯฮฟฯฮตฮฏฯ ฮฝฮฑ ฯฯฮฟฯฯฮฑฯฮญฯฮตฮนฯ ฯฮปฮฎฯฯฯ ฯฮฑ bitcoins ฯฮฟฯ
ฮฑฯฯ ฮบฮปฮฟฯฮฎ ฯฯฮทฮฝ ฯฮตฯฮฏฯฯฯฯฮท ฯฮฟฯ
ฮผฮฟฮปฯ
ฮฝฮธฮตฮฏ ฮฟ ฯ
ฯฮฟฮปฮฟฮณฮนฯฯฮฎฯ ฯฮฟฯ
ฮผฮต ฮบฮฑฮบฯฮฒฮฟฯ
ฮปฮฟ ฮปฮฟฮณฮนฯฮผฮนฮบฯ. +</translation> + </message> + <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> <translation>ฮฃฮฮฮฮฮคฮฮฮ: ฮคฮฑ ฯฯฮฟฮทฮณฮฟฯฮผฮตฮฝฮฑ ฮฑฮฝฯฮฏฮณฯฮฑฯฮฑ ฮฑฯฯฮฑฮปฮตฮฏฮฑฯ ฯฮฟฯ
ฮญฯฮตฯฮต ฮบฮฌฮฝฮตฮน ฮฑฯฯ ฯฮฟ ฮฑฯฯฮตฮฏฮฟ ฯฮฟฯ
ฯฮฟฯฯฮฟฯฯฮปฮนฮฟฯ
ฯฮฑฯ ฮธฮฑ ฯฯฮญฯฮตฮน ฮฝฮฑ ฮฑฮฝฯฮนฮบฮฑฯฮฑฯฯฮฑฮธฮฟฯ
ฮฝ ฮผฮต ฯฮฟ ฮฝฮญฮฟ ฯฮฟฯ
ฮดฮทฮผฮนฮฟฯ
ฯฮณฮตฮฏฯฮฑฮน, ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฮทฮผฮญฮฝฮฟ ฮฑฯฯฮตฮฏฮฟ ฯฮฟฯฯฮฟฯฯฮปฮนฮฟฯ
. ฮฮนฮฑ ฮปฯฮณฮฟฯ
ฯ ฮฑฯฯฮฑฮปฮตฮฏฮฑฯ, ฯฮฑ ฯฯฮฟฮทฮณฮฟฯฮผฮตฮฝฮฑ ฮฑฮฝฯฮฏฮณฯฮฑฯฮฑ ฮฑฯฯฮฑฮปฮตฮฏฮฑฯ ฯฮฟฯ
ฮผฮท ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฮทฮผฮญฮฝฮฟฯ
ฮฑฯฯฮตฮฏฮฟฯ
ฯฮฟฯฯฮฟฯฯฮปฮนฮฟฯ
ฮธฮฑ ฮบฮฑฯฮฑฯฯฮฟฯ
ฮฝ ฮฌฯฯฮทฯฯฮฑ ฮผฯฮปฮนฯ ฮฑฯฯฮฏฯฮตฯฮต ฮฝฮฑ ฯฯฮทฯฮนฮผฮฟฯฮฟฮนฮตฮฏฯฮต ฯฮฟ ฮฝฮญฮฟ ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฮทฮผฮญฮฝฮฟ ฯฮฟฯฯฮฟฯฯฮปฮน. </translation> </message> @@ -185,6 +190,10 @@ <translation>ฮฮนฯฮฌฮณฮตฯฮต ฯฮฟฮฝ ฮฝฮญฮฟ ฮบฯฮดฮนฮบฯ ฯฯฯฯฮฒฮฑฯฮทฯ ฯฯฮฟฮฝ ฯฮฟฯฯฮฟฯฯฮปฮน <br/> ฮ ฮฑฯฮฑฮบฮฑฮปฯ ฯฯฮทฯฮนฮผฮฟฯฮฟฮนฮตฮฏฯฯฮต ฮญฮฝฮฑ ฮบฯฮดฮนฮบฯ ฮผฮต <b> 10 ฮฎ ฯฮตฯฮนฯฯฯฯฮตฯฮฟฯ
ฯ ฯฯ
ฯฮฑฮฏฮฟฯ
ฯ ฯฮฑฯฮฑฮบฯฮฎฯฮตฯ</b> ฮฎ <b> ฮฟฯฯฯ ฮฎ ฯฮฑฯฮฑฯฮฌฮฝฯ ฮปฮญฮพฮตฮนฯ</b>.</translation> </message> <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>ฮ ฮปฮทฮบฯฯฮฟฮปฯฮณฮทฯฮต ฯฮฟฮฝ ฯฮฑฮปฮนฯ ฮบฮฑฮน ฯฮฟฮฝ ฮฝฮญฮฟ ฮบฯฮดฮนฮบฯ ฯฯฮฟ ฯฮฟฯฯฮฟฯฮฟฮปฮน.</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>ฮ ฮบฯฯ
ฯฯฮฟฮณฯฮฑฯฮทฯฮท ฯฮฟฯ
ฯฮฟฯฯฮฟฯฮฟฮปฮนฮฟฯ ฮฑฯฮญฯฯ
ฯฮต</translation> </message> @@ -1325,10 +1334,6 @@ <translation>ฮฮตฮฝฮนฮบฮฌ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ฮงฯฮทฯฮนฮผฮฟฯฮฟฮนฮทฯฮท ฯฮทฯ OpenSSL ฮตฮบฮดฮฟฯฮทฯ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ฮงฯฮฎฯฮท BerkeleyDB ฮญฮบฮดฮฟฯฮทฯ</translation> </message> diff --git a/src/qt/locale/bitcoin_en.ts b/src/qt/locale/bitcoin_en.ts index b90221f2c2..4e4c9f45e6 100644 --- a/src/qt/locale/bitcoin_en.ts +++ b/src/qt/locale/bitcoin_en.ts @@ -34,12 +34,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="../addressbookpage.cpp" line="+80"/> - <source>&Copy Address</source> - <translation>&Copy Address</translation> - </message> - <message> - <location filename="../forms/addressbookpage.ui" line="-53"/> + <location line="-53"/> <source>Delete the currently selected address from the list</source> <translation>Delete the currently selected address from the list</translation> </message> @@ -58,89 +53,6 @@ <source>&Delete</source> <translation>&Delete</translation> </message> - <message> - <location filename="../addressbookpage.cpp" line="-30"/> - <source>Choose the address to send coins to</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Choose the address to receive coins with</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+5"/> - <source>C&hoose</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+6"/> - <source>Sending addresses</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Receiving addresses</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+7"/> - <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> - <translation>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</translation> - </message> - <message> - <location line="+4"/> - <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+7"/> - <source>Copy &Label</source> - <translation>Copy &Label</translation> - </message> - <message> - <location line="+1"/> - <source>&Edit</source> - <translation>&Edit</translation> - </message> - <message> - <location line="+193"/> - <source>Export Address List</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Comma separated file (*.csv)</source> - <translation>Comma separated file (*.csv)</translation> - </message> - <message> - <location line="+13"/> - <source>Exporting Failed</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>There was an error trying to save the address list to %1. Please try again.</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>AddressTableModel</name> - <message> - <location filename="../addresstablemodel.cpp" line="+170"/> - <source>Label</source> - <translation>Label</translation> - </message> - <message> - <location line="+0"/> - <source>Address</source> - <translation>Address</translation> - </message> - <message> - <location line="+36"/> - <source>(no label)</source> - <translation>(no label)</translation> - </message> </context> <context> <name>AskPassphraseDialog</name> @@ -164,124 +76,6 @@ <source>Repeat new passphrase</source> <translation>Repeat new passphrase</translation> </message> - <message> - <location filename="../askpassphrasedialog.cpp" line="+49"/> - <source>Encrypt wallet</source> - <translation>Encrypt wallet</translation> - </message> - <message> - <location line="+3"/> - <source>This operation needs your wallet passphrase to unlock the wallet.</source> - <translation>This operation needs your wallet passphrase to unlock the wallet.</translation> - </message> - <message> - <location line="+5"/> - <source>Unlock wallet</source> - <translation>Unlock wallet</translation> - </message> - <message> - <location line="+3"/> - <source>This operation needs your wallet passphrase to decrypt the wallet.</source> - <translation>This operation needs your wallet passphrase to decrypt the wallet.</translation> - </message> - <message> - <location line="+5"/> - <source>Decrypt wallet</source> - <translation>Decrypt wallet</translation> - </message> - <message> - <location line="+3"/> - <source>Change passphrase</source> - <translation>Change passphrase</translation> - </message> - <message> - <location line="+45"/> - <source>Confirm wallet encryption</source> - <translation>Confirm wallet encryption</translation> - </message> - <message> - <location line="+1"/> - <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> - <translation>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</translation> - </message> - <message> - <location line="+0"/> - <source>Are you sure you wish to encrypt your wallet?</source> - <translation>Are you sure you wish to encrypt your wallet?</translation> - </message> - <message> - <location line="+15"/> - <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> - <translation>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</translation> - </message> - <message> - <location line="+100"/> - <location line="+24"/> - <source>Warning: The Caps Lock key is on!</source> - <translation>Warning: The Caps Lock key is on!</translation> - </message> - <message> - <location line="-130"/> - <location line="+58"/> - <source>Wallet encrypted</source> - <translation>Wallet encrypted</translation> - </message> - <message> - <location line="-135"/> - <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+23"/> - <source>Enter the old passphrase and new passphrase to the wallet.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+56"/> - <source>%1 will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+13"/> - <location line="+7"/> - <location line="+42"/> - <location line="+6"/> - <source>Wallet encryption failed</source> - <translation>Wallet encryption failed</translation> - </message> - <message> - <location line="-54"/> - <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> - <translation>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</translation> - </message> - <message> - <location line="+7"/> - <location line="+48"/> - <source>The supplied passphrases do not match.</source> - <translation>The supplied passphrases do not match.</translation> - </message> - <message> - <location line="-37"/> - <source>Wallet unlock failed</source> - <translation>Wallet unlock failed</translation> - </message> - <message> - <location line="+1"/> - <location line="+11"/> - <location line="+19"/> - <source>The passphrase entered for the wallet decryption was incorrect.</source> - <translation>The passphrase entered for the wallet decryption was incorrect.</translation> - </message> - <message> - <location line="-20"/> - <source>Wallet decryption failed</source> - <translation>Wallet decryption failed</translation> - </message> - <message> - <location line="+14"/> - <source>Wallet passphrase was successfully changed.</source> - <translation>Wallet passphrase was successfully changed.</translation> - </message> </context> <context> <name>BanTableModel</name> @@ -795,189 +589,6 @@ <source>Priority</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../coincontroldialog.cpp" line="+47"/> - <source>Copy address</source> - <translation type="unfinished">Copy address</translation> - </message> - <message> - <location line="+1"/> - <source>Copy label</source> - <translation type="unfinished">Copy label</translation> - </message> - <message> - <location line="+1"/> - <location line="+26"/> - <source>Copy amount</source> - <translation type="unfinished">Copy amount</translation> - </message> - <message> - <location line="-25"/> - <source>Copy transaction ID</source> - <translation type="unfinished">Copy transaction ID</translation> - </message> - <message> - <location line="+1"/> - <source>Lock unspent</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Unlock unspent</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+22"/> - <source>Copy quantity</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>Copy fee</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy after fee</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy bytes</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy priority</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy dust</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy change</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+349"/> - <source>highest</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>higher</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>high</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>medium-high</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>medium</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>low-medium</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>low</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>lower</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>lowest</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+10"/> - <source>(%1 locked)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+28"/> - <source>none</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+161"/> - <source>This label turns red if the transaction size is greater than 1000 bytes.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+5"/> - <source>This label turns red if the priority is smaller than "medium".</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+12"/> - <source>Can vary +/- %1 satoshi(s) per input.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-33"/> - <source>yes</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>no</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+17"/> - <location line="+5"/> - <source>This means a fee of at least %1 per kB is required.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-4"/> - <source>Can vary +/- 1 byte per input.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>Transactions with higher priority are more likely to get included into a block.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+4"/> - <source>This label turns red if any recipient receives an amount smaller than the current dust threshold.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+55"/> - <location line="+60"/> - <source>(no label)</source> - <translation type="unfinished">(no label)</translation> - </message> - <message> - <location line="-7"/> - <source>change from %1 (%2)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>(change)</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>EditAddressDialog</name> @@ -1006,46 +617,6 @@ <source>&Address</source> <translation>&Address</translation> </message> - <message> - <location filename="../editaddressdialog.cpp" line="+28"/> - <source>New receiving address</source> - <translation>New receiving address</translation> - </message> - <message> - <location line="+4"/> - <source>New sending address</source> - <translation>New sending address</translation> - </message> - <message> - <location line="+3"/> - <source>Edit receiving address</source> - <translation>Edit receiving address</translation> - </message> - <message> - <location line="+4"/> - <source>Edit sending address</source> - <translation>Edit sending address</translation> - </message> - <message> - <location line="+76"/> - <source>The entered address "%1" is already in the address book.</source> - <translation>The entered address "%1" is already in the address book.</translation> - </message> - <message> - <location line="-5"/> - <source>The entered address "%1" is not a valid Bitcoin address.</source> - <translation>The entered address "%1" is not a valid Bitcoin address.</translation> - </message> - <message> - <location line="+10"/> - <source>Could not unlock wallet.</source> - <translation>Could not unlock wallet.</translation> - </message> - <message> - <location line="+5"/> - <source>New key generation failed.</source> - <translation>New key generation failed.</translation> - </message> </context> <context> <name>FreespaceChecker</name> @@ -1225,11 +796,6 @@ <source>Select payment request file</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../openuridialog.cpp" line="+47"/> - <source>Select payment request file to open</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>OptionsDialog</name> @@ -1627,132 +1193,6 @@ </message> </context> <context> - <name>PaymentServer</name> - <message> - <location filename="../paymentserver.cpp" line="+432"/> - <location line="+14"/> - <location line="+7"/> - <source>URI handling</source> - <translation type="unfinished">URI handling</translation> - </message> - <message> - <location line="-7"/> - <source>Invalid payment address %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+83"/> - <location line="+9"/> - <location line="+31"/> - <location line="+10"/> - <location line="+17"/> - <location line="+88"/> - <source>Payment request rejected</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-155"/> - <source>Payment request network doesn't match client network.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> - <source>Payment request is not initialized.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+42"/> - <source>Requested payment amount of %1 is too small (considered dust).</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-258"/> - <location line="+216"/> - <location line="+42"/> - <location line="+113"/> - <location line="+14"/> - <location line="+18"/> - <source>Payment request error</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-402"/> - <source>Cannot start bitcoin: click-to-pay handler</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+104"/> - <source>Payment request fetch URL is invalid: %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+21"/> - <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+13"/> - <source>Payment request file handling</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Payment request file cannot be read! This can be caused by an invalid payment request file.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+70"/> - <source>Payment request expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+32"/> - <source>Unverified payment requests to custom payment scripts are unsupported.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+9"/> - <location line="+17"/> - <source>Invalid payment request.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+45"/> - <source>Refund from %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+44"/> - <source>Payment request %1 is too large (%2 bytes, allowed %3 bytes).</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+9"/> - <source>Error communicating with %1: %2</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+20"/> - <source>Payment request cannot be parsed!</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+13"/> - <source>Bad response from server %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+33"/> - <source>Payment acknowledged</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-11"/> - <source>Network request error</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>PeerTableModel</name> <message> <location filename="../peertablemodel.cpp" line="+117"/> @@ -1820,29 +1260,6 @@ </message> </context> <context> - <name>QRImageWidget</name> - <message> - <location filename="../receiverequestdialog.cpp" line="+36"/> - <source>&Save Image...</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> - <source>&Copy Image</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+32"/> - <source>Save QR Code</source> - <translation type="unfinished">Save QR Code</translation> - </message> - <message> - <location line="+0"/> - <source>PNG Image (*.png)</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>RPCConsole</name> <message> <location filename="../forms/debugwindow.ui" line="+46"/> @@ -2338,21 +1755,6 @@ <source>Remove</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../receivecoinsdialog.cpp" line="+46"/> - <source>Copy label</source> - <translation type="unfinished">Copy label</translation> - </message> - <message> - <location line="+1"/> - <source>Copy message</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy amount</source> - <translation type="unfinished">Copy amount</translation> - </message> </context> <context> <name>ReceiveRequestDialog</name> @@ -2376,95 +1778,11 @@ <source>&Save Image...</source> <translation type="unfinished"></translation> </message> - <message> - <location filename="../receiverequestdialog.cpp" line="+65"/> - <source>Request payment to %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+6"/> - <source>Payment information</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>URI</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>Address</source> - <translation type="unfinished">Address</translation> - </message> - <message> - <location line="+2"/> - <source>Amount</source> - <translation type="unfinished">Amount</translation> - </message> - <message> - <location line="+2"/> - <source>Label</source> - <translation type="unfinished">Label</translation> - </message> - <message> - <location line="+2"/> - <source>Message</source> - <translation type="unfinished">Message</translation> - </message> - <message> - <location line="+10"/> - <source>Resulting URI too long, try to reduce the text for label / message.</source> - <translation type="unfinished">Resulting URI too long, try to reduce the text for label / message.</translation> - </message> - <message> - <location line="+5"/> - <source>Error encoding URI into QR Code.</source> - <translation type="unfinished">Error encoding URI into QR Code.</translation> - </message> -</context> -<context> - <name>RecentRequestsTableModel</name> - <message> - <location filename="../recentrequeststablemodel.cpp" line="+29"/> - <source>Date</source> - <translation type="unfinished">Date</translation> - </message> - <message> - <location line="+0"/> - <source>Label</source> - <translation type="unfinished">Label</translation> - </message> - <message> - <location line="+0"/> - <source>Message</source> - <translation type="unfinished">Message</translation> - </message> - <message> - <location line="+57"/> - <source>(no amount requested)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+42"/> - <source>Requested</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-59"/> - <source>(no label)</source> - <translation type="unfinished">(no label)</translation> - </message> - <message> - <location line="+9"/> - <source>(no message)</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>SendCoinsDialog</name> <message> <location filename="../forms/sendcoinsdialog.ui" line="+14"/> - <location filename="../sendcoinsdialog.cpp" line="+543"/> <source>Send Coins</source> <translation>Send Coins</translation> </message> @@ -2650,152 +1968,6 @@ <source>S&end</source> <translation>S&end</translation> </message> - <message> - <location filename="../sendcoinsdialog.cpp" line="-226"/> - <source>Confirm send coins</source> - <translation>Confirm send coins</translation> - </message> - <message> - <location line="-49"/> - <location line="+5"/> - <location line="+5"/> - <location line="+4"/> - <source>%1 to %2</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-215"/> - <source>Copy quantity</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy amount</source> - <translation type="unfinished">Copy amount</translation> - </message> - <message> - <location line="+1"/> - <source>Copy fee</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy after fee</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy bytes</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy priority</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>Copy change</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+238"/> - <source>Total Amount %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> - <source>or</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+196"/> - <source>The amount to pay must be larger than 0.</source> - <translation>The amount to pay must be larger than 0.</translation> - </message> - <message> - <location line="+3"/> - <source>The amount exceeds your balance.</source> - <translation>The amount exceeds your balance.</translation> - </message> - <message> - <location line="+3"/> - <source>The total exceeds your balance when the %1 transaction fee is included.</source> - <translation>The total exceeds your balance when the %1 transaction fee is included.</translation> - </message> - <message> - <location line="+6"/> - <source>Transaction creation failed!</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+4"/> - <source>The transaction was rejected! This might happen if some of the coins in your wallet were already spent, such as if you used a copy of wallet.dat and coins were spent in the copy but not marked as spent here.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+4"/> - <source>A fee higher than %1 is considered an absurdly high fee.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> - <source>Payment request expired.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+89"/> - <source>Pay only the required fee of %1</source> - <translation type="unfinished"></translation> - </message> - <message numerus="yes"> - <location line="+25"/> - <source>Estimated to begin confirmation within %n block(s).</source> - <translation type="unfinished"> - <numerusform>Estimated to begin confirmation within %n block.</numerusform> - <numerusform>Estimated to begin confirmation within %n blocks.</numerusform> - </translation> - </message> - <message> - <location line="-140"/> - <source>The recipient address is not valid. Please recheck.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+12"/> - <source>Duplicate address found: addresses should only be used once each.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+234"/> - <source>Warning: Invalid Bitcoin address</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+19"/> - <source>(no label)</source> - <translation type="unfinished">(no label)</translation> - </message> - <message> - <location line="-11"/> - <source>Warning: Unknown change address</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-689"/> - <source>Copy dust</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+215"/> - <source>Are you sure you want to send?</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+9"/> - <source>added as transaction fee</source> - <translation type="unfinished"></translation> - </message> </context> <context> <name>SendCoinsEntry</name> @@ -2812,12 +1984,7 @@ <translation>Pay &To:</translation> </message> <message> - <location filename="../sendcoinsentry.cpp" line="+37"/> - <source>Enter a label for this address to add it to your address book</source> - <translation>Enter a label for this address to add it to your address book</translation> - </message> - <message> - <location filename="../forms/sendcoinsentry.ui" line="+93"/> + <location line="+93"/> <source>&Label:</source> <translation>&Label:</translation> </message> @@ -2907,15 +2074,6 @@ </message> </context> <context> - <name>SendConfirmationDialog</name> - <message> - <location filename="../sendcoinsdialog.cpp" line="+571"/> - <location line="+5"/> - <source>Yes</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> <name>ShutdownWindow</name> <message> <location filename="../utilitydialog.cpp" line="+78"/> @@ -3038,77 +2196,6 @@ <source>Reset all verify message fields</source> <translation>Reset all verify message fields</translation> </message> - <message> - <location filename="../signverifymessagedialog.cpp" line="+41"/> - <source>Click "Sign Message" to generate signature</source> - <translation>Click "Sign Message" to generate signature</translation> - </message> - <message> - <location line="+83"/> - <location line="+80"/> - <source>The entered address is invalid.</source> - <translation>The entered address is invalid.</translation> - </message> - <message> - <location line="-80"/> - <location line="+8"/> - <location line="+72"/> - <location line="+8"/> - <source>Please check the address and try again.</source> - <translation>Please check the address and try again.</translation> - </message> - <message> - <location line="-80"/> - <location line="+80"/> - <source>The entered address does not refer to a key.</source> - <translation>The entered address does not refer to a key.</translation> - </message> - <message> - <location line="-72"/> - <source>Wallet unlock was cancelled.</source> - <translation>Wallet unlock was cancelled.</translation> - </message> - <message> - <location line="+8"/> - <source>Private key for the entered address is not available.</source> - <translation>Private key for the entered address is not available.</translation> - </message> - <message> - <location line="+12"/> - <source>Message signing failed.</source> - <translation>Message signing failed.</translation> - </message> - <message> - <location line="+5"/> - <source>Message signed.</source> - <translation>Message signed.</translation> - </message> - <message> - <location line="+58"/> - <source>The signature could not be decoded.</source> - <translation>The signature could not be decoded.</translation> - </message> - <message> - <location line="+0"/> - <location line="+13"/> - <source>Please check the signature and try again.</source> - <translation>Please check the signature and try again.</translation> - </message> - <message> - <location line="+0"/> - <source>The signature did not match the message digest.</source> - <translation>The signature did not match the message digest.</translation> - </message> - <message> - <location line="+7"/> - <source>Message verification failed.</source> - <translation>Message verification failed.</translation> - </message> - <message> - <location line="+5"/> - <source>Message verified.</source> - <translation>Message verified.</translation> - </message> </context> <context> <name>SplashScreen</name> @@ -3127,593 +2214,12 @@ </message> </context> <context> - <name>TransactionDesc</name> - <message> - <location filename="../transactiondesc.cpp" line="+32"/> - <source>Open until %1</source> - <translation>Open until %1</translation> - </message> - <message> - <location line="+8"/> - <source>%1/offline</source> - <translation>%1/offline</translation> - </message> - <message> - <location line="+2"/> - <source>0/unconfirmed, %1</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>in memory pool</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>not in memory pool</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>abandoned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>%1/unconfirmed</source> - <translation>%1/unconfirmed</translation> - </message> - <message> - <location line="+2"/> - <source>%1 confirmations</source> - <translation>%1 confirmations</translation> - </message> - <message> - <location line="+17"/> - <source>Status</source> - <translation>Status</translation> - </message> - <message numerus="yes"> - <location line="+7"/> - <source>, broadcast through %n node(s)</source> - <translation> - <numerusform>, broadcast through %n node</numerusform> - <numerusform>, broadcast through %n nodes</numerusform> - </translation> - </message> - <message> - <location line="+4"/> - <source>Date</source> - <translation>Date</translation> - </message> - <message> - <location line="+7"/> - <source>Source</source> - <translation>Source</translation> - </message> - <message> - <location line="+0"/> - <source>Generated</source> - <translation>Generated</translation> - </message> - <message> - <location line="+5"/> - <location line="+13"/> - <location line="+72"/> - <source>From</source> - <translation>From</translation> - </message> - <message> - <location line="-71"/> - <location line="+20"/> - <location line="+69"/> - <source>To</source> - <translation>To</translation> - </message> - <message> - <location line="-87"/> - <source>own address</source> - <translation>own address</translation> - </message> - <message> - <location line="+0"/> - <location line="+69"/> - <source>watch-only</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-67"/> - <source>label</source> - <translation>label</translation> - </message> - <message> - <location line="+34"/> - <location line="+12"/> - <location line="+53"/> - <location line="+26"/> - <location line="+54"/> - <source>Credit</source> - <translation>Credit</translation> - </message> - <message numerus="yes"> - <location line="-143"/> - <source>matures in %n more block(s)</source> - <translation> - <numerusform>matures in %n more block</numerusform> - <numerusform>matures in %n more blocks</numerusform> - </translation> - </message> - <message> - <location line="+2"/> - <source>not accepted</source> - <translation>not accepted</translation> - </message> - <message> - <location line="+59"/> - <location line="+25"/> - <location line="+54"/> - <source>Debit</source> - <translation>Debit</translation> - </message> - <message> - <location line="-69"/> - <source>Total debit</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Total credit</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+5"/> - <source>Transaction fee</source> - <translation>Transaction fee</translation> - </message> - <message> - <location line="+16"/> - <source>Net amount</source> - <translation>Net amount</translation> - </message> - <message> - <location line="+6"/> - <location line="+10"/> - <source>Message</source> - <translation>Message</translation> - </message> - <message> - <location line="-8"/> - <source>Comment</source> - <translation>Comment</translation> - </message> - <message> - <location line="+2"/> - <source>Transaction ID</source> - <translation>Transaction ID</translation> - </message> - <message> - <location line="+1"/> - <source>Output index</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+18"/> - <source>Merchant</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+7"/> - <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+8"/> - <source>Debug information</source> - <translation>Debug information</translation> - </message> - <message> - <location line="+8"/> - <source>Transaction</source> - <translation>Transaction</translation> - </message> - <message> - <location line="+3"/> - <source>Inputs</source> - <translation>Inputs</translation> - </message> - <message> - <location line="+21"/> - <source>Amount</source> - <translation>Amount</translation> - </message> - <message> - <location line="+1"/> - <location line="+1"/> - <source>true</source> - <translation>true</translation> - </message> - <message> - <location line="-1"/> - <location line="+1"/> - <source>false</source> - <translation>false</translation> - </message> - <message> - <location line="-243"/> - <source>, has not been successfully broadcast yet</source> - <translation>, has not been successfully broadcast yet</translation> - </message> - <message numerus="yes"> - <location line="-38"/> - <source>Open for %n more block(s)</source> - <translation> - <numerusform>Open for %n more block</numerusform> - <numerusform>Open for %n more blocks</numerusform> - </translation> - </message> - <message> - <location line="+8"/> - <source>conflicted with a transaction with %1 confirmations</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+61"/> - <source>unknown</source> - <translation>unknown</translation> - </message> -</context> -<context> <name>TransactionDescDialog</name> <message> <location filename="../forms/transactiondescdialog.ui" line="+20"/> <source>This pane shows a detailed description of the transaction</source> <translation>This pane shows a detailed description of the transaction</translation> </message> - <message> - <location filename="../transactiondescdialog.cpp" line="+17"/> - <source>Details for %1</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>TransactionTableModel</name> - <message> - <location filename="../transactiontablemodel.cpp" line="+246"/> - <source>Date</source> - <translation>Date</translation> - </message> - <message> - <location line="+0"/> - <source>Type</source> - <translation>Type</translation> - </message> - <message> - <location line="+82"/> - <source>Immature (%1 confirmations, will be available after %2)</source> - <translation type="unfinished"></translation> - </message> - <message numerus="yes"> - <location line="-24"/> - <source>Open for %n more block(s)</source> - <translation> - <numerusform>Open for %n more block</numerusform> - <numerusform>Open for %n more blocks</numerusform> - </translation> - </message> - <message> - <location line="+3"/> - <source>Open until %1</source> - <translation>Open until %1</translation> - </message> - <message> - <location line="+15"/> - <source>Confirmed (%1 confirmations)</source> - <translation>Confirmed (%1 confirmations)</translation> - </message> - <message> - <location line="+9"/> - <source>This block was not received by any other nodes and will probably not be accepted!</source> - <translation>This block was not received by any other nodes and will probably not be accepted!</translation> - </message> - <message> - <location line="+3"/> - <source>Generated but not accepted</source> - <translation>Generated but not accepted</translation> - </message> - <message> - <location line="-24"/> - <source>Offline</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-64"/> - <source>Label</source> - <translation type="unfinished">Label</translation> - </message> - <message> - <location line="+67"/> - <source>Unconfirmed</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> - <source>Abandoned</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> - <source>Confirming (%1 of %2 recommended confirmations)</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+6"/> - <source>Conflicted</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+48"/> - <source>Received with</source> - <translation>Received with</translation> - </message> - <message> - <location line="+2"/> - <source>Received from</source> - <translation>Received from</translation> - </message> - <message> - <location line="+3"/> - <source>Sent to</source> - <translation>Sent to</translation> - </message> - <message> - <location line="+2"/> - <source>Payment to yourself</source> - <translation>Payment to yourself</translation> - </message> - <message> - <location line="+2"/> - <source>Mined</source> - <translation>Mined</translation> - </message> - <message> - <location line="+28"/> - <source>watch-only</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+15"/> - <source>(n/a)</source> - <translation>(n/a)</translation> - </message> - <message> - <location line="+213"/> - <source>(no label)</source> - <translation type="unfinished">(no label)</translation> - </message> - <message> - <location line="+39"/> - <source>Transaction status. Hover over this field to show number of confirmations.</source> - <translation>Transaction status. Hover over this field to show number of confirmations.</translation> - </message> - <message> - <location line="+2"/> - <source>Date and time that the transaction was received.</source> - <translation>Date and time that the transaction was received.</translation> - </message> - <message> - <location line="+2"/> - <source>Type of transaction.</source> - <translation>Type of transaction.</translation> - </message> - <message> - <location line="+2"/> - <source>Whether or not a watch-only address is involved in this transaction.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>User-defined intent/purpose of the transaction.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+2"/> - <source>Amount removed from or added to balance.</source> - <translation>Amount removed from or added to balance.</translation> - </message> -</context> -<context> - <name>TransactionView</name> - <message> - <location filename="../transactionview.cpp" line="+69"/> - <location line="+16"/> - <source>All</source> - <translation>All</translation> - </message> - <message> - <location line="-15"/> - <source>Today</source> - <translation>Today</translation> - </message> - <message> - <location line="+1"/> - <source>This week</source> - <translation>This week</translation> - </message> - <message> - <location line="+1"/> - <source>This month</source> - <translation>This month</translation> - </message> - <message> - <location line="+1"/> - <source>Last month</source> - <translation>Last month</translation> - </message> - <message> - <location line="+1"/> - <source>This year</source> - <translation>This year</translation> - </message> - <message> - <location line="+1"/> - <source>Range...</source> - <translation>Range...</translation> - </message> - <message> - <location line="+11"/> - <source>Received with</source> - <translation>Received with</translation> - </message> - <message> - <location line="+2"/> - <source>Sent to</source> - <translation>Sent to</translation> - </message> - <message> - <location line="+2"/> - <source>To yourself</source> - <translation>To yourself</translation> - </message> - <message> - <location line="+1"/> - <source>Mined</source> - <translation>Mined</translation> - </message> - <message> - <location line="+1"/> - <source>Other</source> - <translation>Other</translation> - </message> - <message> - <location line="+6"/> - <source>Enter address or label to search</source> - <translation>Enter address or label to search</translation> - </message> - <message> - <location line="+6"/> - <source>Min amount</source> - <translation>Min amount</translation> - </message> - <message> - <location line="+36"/> - <source>Abandon transaction</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy address</source> - <translation>Copy address</translation> - </message> - <message> - <location line="+1"/> - <source>Copy label</source> - <translation>Copy label</translation> - </message> - <message> - <location line="+1"/> - <source>Copy amount</source> - <translation>Copy amount</translation> - </message> - <message> - <location line="+1"/> - <source>Copy transaction ID</source> - <translation>Copy transaction ID</translation> - </message> - <message> - <location line="+1"/> - <source>Copy raw transaction</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Copy full transaction details</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> - <source>Edit label</source> - <translation>Edit label</translation> - </message> - <message> - <location line="+1"/> - <source>Show transaction details</source> - <translation>Show transaction details</translation> - </message> - <message> - <location line="+186"/> - <source>Export Transaction History</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+12"/> - <source>Watch-only</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+9"/> - <source>Exporting Failed</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>There was an error trying to save the transaction history to %1.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+4"/> - <source>Exporting Successful</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>The transaction history was successfully saved to %1.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="-24"/> - <source>Comma separated file (*.csv)</source> - <translation>Comma separated file (*.csv)</translation> - </message> - <message> - <location line="+9"/> - <source>Confirmed</source> - <translation>Confirmed</translation> - </message> - <message> - <location line="+3"/> - <source>Date</source> - <translation>Date</translation> - </message> - <message> - <location line="+1"/> - <source>Type</source> - <translation>Type</translation> - </message> - <message> - <location line="+1"/> - <source>Label</source> - <translation>Label</translation> - </message> - <message> - <location line="+1"/> - <source>Address</source> - <translation>Address</translation> - </message> - <message> - <location line="+2"/> - <source>ID</source> - <translation>ID</translation> - </message> - <message> - <location line="+152"/> - <source>Range:</source> - <translation>Range:</translation> - </message> - <message> - <location line="+8"/> - <source>to</source> - <translation>to</translation> - </message> </context> <context> <name>UnitDisplayStatusBarControl</name> @@ -3724,68 +2230,9 @@ </message> </context> <context> - <name>WalletFrame</name> - <message> - <location filename="../walletframe.cpp" line="+27"/> - <source>No wallet has been loaded.</source> - <translation type="unfinished"></translation> - </message> -</context> -<context> - <name>WalletModel</name> - <message> - <location filename="../walletmodel.cpp" line="+288"/> - <source>Send Coins</source> - <translation>Send Coins</translation> - </message> -</context> -<context> - <name>WalletView</name> - <message> - <location filename="../walletview.cpp" line="+46"/> - <source>&Export</source> - <translation>&Export</translation> - </message> - <message> - <location line="+1"/> - <source>Export the data in the current tab to a file</source> - <translation>Export the data in the current tab to a file</translation> - </message> - <message> - <location line="+194"/> - <source>Backup Wallet</source> - <translation>Backup Wallet</translation> - </message> - <message> - <location line="+1"/> - <source>Wallet Data (*.dat)</source> - <translation>Wallet Data (*.dat)</translation> - </message> - <message> - <location line="+6"/> - <source>Backup Failed</source> - <translation>Backup Failed</translation> - </message> - <message> - <location line="+0"/> - <source>There was an error trying to save the wallet data to %1.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+4"/> - <source>The wallet data was successfully saved to %1.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+0"/> - <source>Backup Successful</source> - <translation>Backup Successful</translation> - </message> -</context> -<context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+286"/> + <location filename="../bitcoinstrings.cpp" line="+295"/> <source>Options:</source> <translation>Options:</translation> </message> @@ -3795,27 +2242,27 @@ <translation>Specify data directory</translation> </message> <message> - <location line="-87"/> + <location line="-88"/> <source>Connect to a node to retrieve peer addresses, and disconnect</source> <translation>Connect to a node to retrieve peer addresses, and disconnect</translation> </message> <message> - <location line="+90"/> + <location line="+91"/> <source>Specify your own public address</source> <translation>Specify your own public address</translation> </message> <message> - <location line="-106"/> + <location line="-107"/> <source>Accept command line and JSON-RPC commands</source> <translation>Accept command line and JSON-RPC commands</translation> </message> <message> - <location line="-125"/> + <location line="-131"/> <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+29"/> + <location line="+32"/> <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> <translation type="unfinished"></translation> </message> @@ -3835,7 +2282,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+118"/> + <location line="+122"/> <source>Error: A fatal internal error occurred, see debug.log for details</source> <translation type="unfinished"></translation> </message> @@ -3855,17 +2302,17 @@ <translation>Run in the background as a daemon and accept commands</translation> </message> <message> - <location line="+29"/> + <location line="+30"/> <source>Unable to start HTTP server. See debug log for details.</source> <translation type="unfinished"></translation> </message> <message> - <location line="-118"/> + <location line="-120"/> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Accept connections from outside (default: 1 if no -proxy or -connect)</translation> </message> <message> - <location line="-201"/> + <location line="-209"/> <source>Bitcoin Core</source> <translation type="unfinished">Bitcoin Core</translation> </message> @@ -3911,6 +2358,11 @@ </message> <message> <location line="+5"/> + <source>Error loading %s: You can't enable HD on a already existing non-HD wallet</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+2"/> <source>Error reading %s! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> <translation type="unfinished"></translation> </message> @@ -3940,6 +2392,11 @@ <translation type="unfinished"></translation> </message> <message> + <location line="+3"/> + <source>Please contribute if you find %s useful. Visit %s for further information about the software.</source> + <translation type="unfinished"></translation> + </message> + <message> <location line="+24"/> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation type="unfinished"></translation> @@ -3960,7 +2417,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+9"/> + <location line="+12"/> <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> <translation type="unfinished"></translation> </message> @@ -4116,6 +2573,11 @@ </message> <message> <location line="+1"/> + <source>Error loading %s: You can't disable HD on a already existing HD wallet</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Error loading block database</source> <translation>Error loading block database</translation> </message> @@ -4240,7 +2702,12 @@ <translation>Specify wallet file (within data directory)</translation> </message> <message> - <location line="+13"/> + <location line="+3"/> + <source>The source code is available from %s.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+11"/> <source>Unable to bind to %s on this computer. %s is probably already running.</source> <translation type="unfinished"></translation> </message> @@ -4300,7 +2767,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-313"/> + <location line="-323"/> <source>Allow JSON-RPC connections from specified source. Valid for <ip> are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified multiple times</source> <translation type="unfinished"></translation> </message> @@ -4325,7 +2792,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+11"/> + <location line="+13"/> <source>Error: Listening for incoming connections failed (listen returned error %s)</source> <translation type="unfinished"></translation> </message> @@ -4355,7 +2822,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+18"/> + <location line="+21"/> <source>Query for peer addresses via DNS lookup, if low on addresses (default: 1 unless -connect)</source> <translation type="unfinished"></translation> </message> @@ -4380,7 +2847,12 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+47"/> + <location line="+18"/> + <source>Use hierarchical deterministic key generation (HD) after BIP32. Only has effect during wallet creation/first start</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+32"/> <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> <translation type="unfinished"></translation> </message> @@ -4410,7 +2882,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+21"/> + <location line="+22"/> <source>Error reading from database, shutting down.</source> <translation type="unfinished"></translation> </message> @@ -4490,7 +2962,7 @@ <translation>Signing transaction failed</translation> </message> <message> - <location line="+8"/> + <location line="+9"/> <source>The transaction amount is too small to pay the fee</source> <translation type="unfinished"></translation> </message> @@ -4570,27 +3042,27 @@ <translation type="unfinished"></translation> </message> <message> - <location line="-63"/> + <location line="-64"/> <source>Password for JSON-RPC connections</source> <translation>Password for JSON-RPC connections</translation> </message> <message> - <location line="-214"/> + <location line="-221"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>Execute command when the best block changes (%s in cmd is replaced by block hash)</translation> </message> <message> - <location line="+143"/> + <location line="+149"/> <source>Allow DNS lookups for -addnode, -seednode and -connect</source> <translation>Allow DNS lookups for -addnode, -seednode and -connect</translation> </message> <message> - <location line="+56"/> + <location line="+57"/> <source>Loading addresses...</source> <translation>Loading addresses...</translation> </message> <message> - <location line="-258"/> + <location line="-267"/> <source>(1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)</source> <translation type="unfinished"></translation> </message> @@ -4610,7 +3082,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+19"/> + <location line="+21"/> <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> <translation type="unfinished"></translation> </message> @@ -4635,7 +3107,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+29"/> + <location line="+32"/> <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> <translation type="unfinished"></translation> </message> @@ -4660,7 +3132,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+5"/> + <location line="+8"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> <translation type="unfinished"></translation> </message> @@ -4690,7 +3162,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+37"/> + <location line="+38"/> <source>How many blocks to check at startup (default: %u, 0 = all)</source> <translation type="unfinished"></translation> </message> @@ -4785,7 +3257,7 @@ <translation type="unfinished"></translation> </message> <message> - <location line="+3"/> + <location line="+4"/> <source>Threshold for disconnecting misbehaving peers (default: %u)</source> <translation type="unfinished"></translation> </message> @@ -4795,7 +3267,7 @@ <translation>Unknown network specified in -onlynet: '%s'</translation> </message> <message> - <location line="-71"/> + <location line="-72"/> <source>Insufficient funds</source> <translation>Insufficient funds</translation> </message> @@ -4805,17 +3277,17 @@ <translation>Loading block index...</translation> </message> <message> - <location line="-59"/> + <location line="-60"/> <source>Add a node to connect to and attempt to keep the connection open</source> <translation>Add a node to connect to and attempt to keep the connection open</translation> </message> <message> - <location line="+60"/> + <location line="+61"/> <source>Loading wallet...</source> <translation>Loading wallet...</translation> </message> <message> - <location line="-53"/> + <location line="-54"/> <source>Cannot downgrade wallet</source> <translation>Cannot downgrade wallet</translation> </message> @@ -4825,17 +3297,17 @@ <translation>Cannot write default address</translation> </message> <message> - <location line="+77"/> + <location line="+78"/> <source>Rescanning...</source> <translation>Rescanning...</translation> </message> <message> - <location line="-66"/> + <location line="-67"/> <source>Done loading</source> <translation>Done loading</translation> </message> <message> - <location line="+14"/> + <location line="+15"/> <source>Error</source> <translation>Error</translation> </message> diff --git a/src/qt/locale/bitcoin_en_GB.ts b/src/qt/locale/bitcoin_en_GB.ts index bf912d295e..b9c0c82814 100644 --- a/src/qt/locale/bitcoin_en_GB.ts +++ b/src/qt/locale/bitcoin_en_GB.ts @@ -908,7 +908,7 @@ </message> <message> <source>Reset all settings changes made over the GUI</source> - <translation>Reset all settings changes made over the GUI</translation> + <translation>Reset all setting changes made via the GUI</translation> </message> </context> <context> @@ -1474,10 +1474,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Using OpenSSL version</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Using BerkeleyDB version</translation> </message> @@ -2980,6 +2976,18 @@ <translation>Accept connections from outside (default: 1 if no -proxy or -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Bind to given address and always listen on it. Use [host]:port notation for IPv6</translation> </message> @@ -2996,6 +3004,10 @@ <translation>Execute command when a wallet transaction changes (%s in cmd is replaced by TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</translation> </message> @@ -3048,6 +3068,10 @@ <translation><category> can be:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Append comment to the user agent string</translation> + </message> + <message> <source>Block creation options:</source> <translation>Block creation options:</translation> </message> @@ -3092,6 +3116,10 @@ <translation>Enable publish raw transaction in <address></translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Enable transaction replacement in the memory pool (default: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Error initialising block database</translation> </message> @@ -3128,10 +3156,22 @@ <translation>Invalid -onion address: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Invalid amount for -fallbackfee=<amount>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Keep the transaction memory pool below <n> megabytes (default: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Location of the auth cookie (default: data dir)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Minimum bytes per sigop in transactions we relay and mine (default: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Not enough file descriptors available.</translation> </message> @@ -3140,6 +3180,10 @@ <translation>Only connect to nodes in network <net> (ipv4, ipv6 or onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Print version and exit</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Prune cannot be configured with a negative value.</translation> </message> @@ -3196,10 +3240,6 @@ <translation>Wallet options:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Warning: This version is obsolete; upgrade required!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>You need to rebuild the database using -reindex to change -txindex</translation> </message> @@ -3296,10 +3336,6 @@ <translation>Activating best chain...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Always relay transactions received from whitelisted peers (default: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Attempt to recover private keys from a corrupt wallet.dat on startup</translation> </message> @@ -3464,6 +3500,10 @@ <translation>Warning</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Warning: unknown new rules activated (versionbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Whether to operate in a blocks only mode (default: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_eo.ts b/src/qt/locale/bitcoin_eo.ts index ab8dd65f81..2095db34bf 100644 --- a/src/qt/locale/bitcoin_eo.ts +++ b/src/qt/locale/bitcoin_eo.ts @@ -180,6 +180,10 @@ <translation>La monujo estas ฤifrita</translation> </message> <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Tajpu la malnovan pasvorton kaj la novan pasvorton por la monujo.</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>Cฬifrado de la monujo fiaskis</translation> </message> @@ -410,6 +414,10 @@ <translation>Neniu fonto de blokoj trovebla...</translation> </message> <message numerus="yes"> + <source>%n hour(s)</source> + <translation><numerusform>%n horo</numerusform><numerusform>%n horoj</numerusform></translation> + </message> + <message numerus="yes"> <source>%n day(s)</source> <translation><numerusform>%n tago</numerusform><numerusform>%n tagoj</numerusform></translation> </message> @@ -482,6 +490,12 @@ </translation> </message> <message> + <source>Address: %1 +</source> + <translation>Adreso: %1 +</translation> + </message> + <message> <source>Sent transaction</source> <translation>Sendita transakcio</translation> </message> @@ -812,6 +826,10 @@ <source>command-line options</source> <translation>komandliniaj agordajฬoj</translation> </message> + <message> + <source>UI Options:</source> + <translation>Uzantinterfaco ebloj:</translation> + </message> </context> <context> <name>Intro</name> @@ -847,6 +865,10 @@ <source>Error</source> <translation>Eraro</translation> </message> + <message numerus="yes"> + <source>%n GB of free space available</source> + <translation><numerusform>%n gigabajto de libera loko disponeble</numerusform><numerusform>%n gigabajtoj de libera loko disponebla.</numerusform></translation> + </message> </context> <context> <name>OpenURIDialog</name> @@ -1098,6 +1120,10 @@ </context> <context> <name>PeerTableModel</name> + <message> + <source>User Agent</source> + <translation>Uzanto Agento</translation> + </message> </context> <context> <name>QObject</name> @@ -1168,10 +1194,6 @@ <translation>ฤenerala</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>uzas OpenSSL-version</translation> - </message> - <message> <source>Startup time</source> <translation>Horo de lancฬo</translation> </message> @@ -1204,10 +1226,22 @@ <translation>Sendita</translation> </message> <message> + <source>&Peers</source> + <translation>&Samuloj</translation> + </message> + <message> + <source>Banned peers</source> + <translation>Malpermesita samuloj.</translation> + </message> + <message> <source>Version</source> <translation>Versio</translation> </message> <message> + <source>User Agent</source> + <translation>Uzanto Agento</translation> + </message> + <message> <source>Services</source> <translation>Servoj</translation> </message> diff --git a/src/qt/locale/bitcoin_es.ts b/src/qt/locale/bitcoin_es.ts index 936074210a..5322634c5d 100644 --- a/src/qt/locale/bitcoin_es.ts +++ b/src/qt/locale/bitcoin_es.ts @@ -883,6 +883,10 @@ <translation>opciones de la consola de comandos</translation> </message> <message> + <source>UI Options:</source> + <translation>Opciones de interfaz de usuario:</translation> + </message> + <message> <source>Choose data directory on startup (default: %u)</source> <translation>Elegir directorio de datos al iniciar (predeterminado: %u)</translation> </message> @@ -898,7 +902,11 @@ <source>Set SSL root certificates for payment request (default: -system-)</source> <translation>Establecer los certificados raรญz SSL para solicitudes de pago (predeterminado: -system-)</translation> </message> - </context> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Resetear los cambios de configuracion hechos por el GUI</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -1096,6 +1104,14 @@ <translation>Puerto del servidor proxy (ej. 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>Usado para alcanzar compaรฑeros via:</translation> + </message> + <message> + <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> + <translation>Muestra si el proxy SOCKS5 predeterminado es utilizado para llegar a los pares a traves de este tipo de red.</translation> + </message> + <message> <source>IPv4</source> <translation>IPv4</translation> </message> @@ -1108,6 +1124,10 @@ <translation>Tor</translation> </message> <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Conectar a la red Bitcoin mediante un proxy SOCKS5 por separado para los servicios ocultos de Tor.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> <translation>Usar distintos proxys SOCKS5 para comunicarse vรญa Tor de forma anรณnima:</translation> </message> @@ -1450,10 +1470,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utilizando la versiรณn de OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Utilizando la versiรณn de BerkeleyDB</translation> </message> @@ -1482,6 +1498,18 @@ <translation>Nรบmero actual de bloques</translation> </message> <message> + <source>Memory Pool</source> + <translation>Piscina de Memoria</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Nรบmero actual de transacciones</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Uso de memoria</translation> + </message> + <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> <translation>Abre el archivo de registro de depuraciรณn de Bitcoin desde el directorio de datos actual. Esto puede tardar unos segundos para ficheros de registro de gran tamaรฑo.</translation> </message> @@ -1506,6 +1534,10 @@ <translation>Seleccionar un par para ver su informaciรณn detallada.</translation> </message> <message> + <source>Whitelisted</source> + <translation>En la lista blanca</translation> + </message> + <message> <source>Direction</source> <translation>Direcciรณn</translation> </message> @@ -1554,6 +1586,14 @@ <translation>Ping</translation> </message> <message> + <source>The duration of a currently outstanding ping.</source> + <translation>La duraciรณn de un ping actualmente en proceso.</translation> + </message> + <message> + <source>Ping Wait</source> + <translation>Espera de Ping</translation> + </message> + <message> <source>Time Offset</source> <translation>Desplazamiento de tiempo</translation> </message> @@ -1606,6 +1646,10 @@ <translation>Nodo &Desconectado</translation> </message> <message> + <source>Ban Node for</source> + <translation>Prohibir Nodo para</translation> + </message> + <message> <source>1 &hour</source> <translation>1 &hora</translation> </message> @@ -1622,6 +1666,10 @@ <translation>1 &aรฑo</translation> </message> <message> + <source>&Unban Node</source> + <translation>&Desbanear Nodo</translation> + </message> + <message> <source>Welcome to the Bitcoin Core RPC console.</source> <translation>Bienvenido a la consola RPC de Bitcoin Core.</translation> </message> @@ -2721,6 +2769,10 @@ <translation>Copiar identificador de transacciรณn</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Copiar traducciรณn en crudo</translation> + </message> + <message> <source>Edit label</source> <translation>Editar etiqueta</translation> </message> @@ -2870,6 +2922,34 @@ </translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Si <category> no es proporcionado o si <category> =1, muestra toda la informaciรณn de depuraciรณn.</translation> + </message> + <message> + <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> + <translation>Mรกximas comisiones totales (en %s) para utilizar en una sola transacciรณn de la cartera; establecer esto demasiado bajo puede abortar grandes transacciones (predeterminado: %s)</translation> + </message> + <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Por favor, mira si la fecha y la hora en tu computador son correctas! Si tu hara es errรณnea Bitcoin Core no funcionarรก correctamente.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>La Poda se ha configurado por debajo del minimo de %d MiB. Por favor utiliza un valor mas alto.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Poda: la ultima sincronizacion de la cartera sobrepasa los datos podados. Necesitas reindexar con -reindex (o descargar la cadena de bloques de nuevo en el caso de un nodo podado)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Reduce los requisitos de almacenaje podando (eliminando) los bloques viejos. Este modo es incompatible con -txindex y -rescan. Advertencia: Revertir este ajuste requiere volver a descargar la cadena de bloques al completo. (predeterminado: 0 = deshabilitar la poda de bloques, >%u = objetivo de tamaรฑo en MiB para usar para los archivos de bloques)</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>Nos es posible re-escanear en modo podado.Necesitas utilizar -reindex el cual descargara la cadena de bloques al completo de nuevo.</translation> + </message> + <message> <source>Error: A fatal internal error occurred, see debug.log for details</source> <translation>Un error interno fatal ocurriรณ, ver debug.log para detalles</translation> </message> @@ -2895,6 +2975,18 @@ <translation>Aceptar conexiones desde el exterior (predeterminado: 1 si no -proxy o -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee tiene un ajuste muy alto! Esta es la comisiรณn de transacciรณn que pagarรกs cuando las estimaciones de comisiones no estรฉn disponibles.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Una comision (en %s/kB) que sera usada cuando las estimacion de comision no disponga de suficientes datos (predeterminado: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Aceptar transacciones retransmitidas recibidas desde nodos en la lista blanca incluso cuando no estรฉs retransmitiendo transacciones (predeterminado: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Vincular a la direcciรณn dada y escuchar siempre en ella. Utilice la notaciรณn [host]:port para IPv6</translation> </message> @@ -2911,10 +3003,18 @@ <translation>Ejecutar comando cuando una transacciรณn del monedero cambia (%s en cmd se remplazarรก por TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Fuerza la retransmisiรณn de transacciones desde nodos en la lista blanca incluso si violan la polรญtica de retransmisiones local (predeterminado: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Establecer el nรบmero de hilos (threads) de verificaciรณn de scripts (entre %u y %d, 0 = automรกtico, <0 = dejar libres ese nรบmero de nรบcleos; predeterminado: %d)</translation> </message> <message> + <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source> + <translation>La base de datos de bloques contiene un bloque que parece ser del futuro. Esto puede ser porque la fecha y hora de tu ordenador estรกn mal ajustados. Reconstruye la base de datos de bloques solo si estas seguro de que la fecha y hora de tu ordenador estan ajustados correctamente.</translation> + </message> + <message> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>Esta es una versiรณn de pre-prueba - utilรญcela bajo su propio riesgo. No la utilice para usos comerciales o de minerรญa.</translation> </message> @@ -2923,6 +3023,14 @@ <translation>No se ha podido acceder a %s en esta mรกquina. Probablemente ya se estรก ejecutando Bitcoin Core.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>El argumento no soportado -whitelistalwaysrelay ha sido ignorado, utiliza -whitelistrelay y/o -whitelistforcerelay.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>Utiliza UPnP para asignar el puerto de escucha (predeterminado: 1 cuando esta escuchando sin -proxy)</translation> + </message> + <message> <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> <translation>ADVERTENCIA: anormalmente alto nรบmero de bloques generado, %d bloques recibidos en las รบltimas horas %d (%d espera)</translation> </message> @@ -2935,6 +3043,10 @@ <translation>Atenciรณn: ยกParece que la red no estรก totalmente de acuerdo! Algunos mineros estรกn presentando inconvenientes.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Advertencia: Se estรกn minando versiones de bloques desconocidas! Es posible que normas desconocidas estรฉn activas</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Atenciรณn: ยกParece que no estamos completamente de acuerdo con nuestros pares! Podrรญa necesitar una actualizaciรณn, u otros nodos podrรญan necesitarla.</translation> </message> @@ -2955,6 +3067,10 @@ <translation><category> puede ser:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Adjunta un comentario a la linea de agente de usuario</translation> + </message> + <message> <source>Block creation options:</source> <translation>Opciones de creaciรณn de bloques:</translation> </message> @@ -2983,6 +3099,26 @@ <translation>ยฟQuieres reconstruir la base de datos de bloques ahora?</translation> </message> <message> + <source>Enable publish hash block in <address></source> + <translation>Activar publicar bloque .hash en <.Address></translation> + </message> + <message> + <source>Enable publish hash transaction in <address></source> + <translation>Activar publicar transacciรณn .hash en <.Address></translation> + </message> + <message> + <source>Enable publish raw block in <address></source> + <translation>Habilita la publicacion de bloques en bruto en <direccion></translation> + </message> + <message> + <source>Enable publish raw transaction in <address></source> + <translation>Habilitar publicar transacciรณn en rama en <direcciรณn></translation> + </message> + <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Habilita el reemplazamiento de transacciones en la piscina de memoria (predeterminado: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Error al inicializar la base de datos de bloques</translation> </message> @@ -3019,6 +3155,22 @@ <translation>Direcciรณn -onion invรกlida: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Cantidad invรกlida para -fallbackfee=<amount>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>Mantener la memoria de transacciones por debajo de <n> megabytes (predeterminado: %u)</translation> + </message> + <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Ubicaciรณn de la cookie de autenticaciรณn (default: data dir)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Mรญnimo de bytes por sigop en transacciones que retransmitimos y minamos (predeterminado: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>No hay suficientes descriptores de archivo disponibles. </translation> </message> @@ -3027,6 +3179,10 @@ <translation>Sรณlo conectar a nodos en redes <net> (ipv4, ipv6 o onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Imprimir versiรณn y salir</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Pode no se puede configurar con un valor negativo.</translation> </message> @@ -3047,10 +3203,26 @@ <translation>Especificar archivo de monedero (dentro del directorio de datos)</translation> </message> <message> + <source>Unsupported argument -benchmark ignored, use -debug=bench.</source> + <translation>El argumento -benchmark no es soportado y ha sido ignorado, utiliza -debug=bench</translation> + </message> + <message> + <source>Unsupported argument -debugnet ignored, use -debug=net.</source> + <translation>Parรกmetros no compatibles -debugnet ignorados , use -debug = red.</translation> + </message> + <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>Parรกmetros no compatibles -tor encontrados, use -onion .</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: %u)</source> <translation>Usar UPnP para asignar el puerto de escucha (predeterminado:: %u)</translation> </message> <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>El comentario del Agente de Usuario (%s) contiene caracteres inseguros.</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>Verificando bloques...</translation> </message> @@ -3067,10 +3239,6 @@ <translation>Opciones de monedero:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Peligro: Esta versiรณn es obsoleta; actualizaciรณn requerida!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Usted necesita reconstruir la base de datos utilizando -reindex para cambiar -txindex</translation> </message> @@ -3107,6 +3275,10 @@ <translation>Ejecutar un comando cuando se reciba una alerta importante o cuando veamos un fork demasiado largo (%s en cmd se reemplazarรก por el mensaje)</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>Las comisiones (en %s/kB) mas pequeรฑas que esto se consideran como cero comisiรณn para la retransmisiรณn, minerรญa y creaciรณn de la transacciรณn (predeterminado: %s)</translation> + </message> + <message> <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> <translation>Si el pago de comisiรณn no estรก establecido, incluir la cuota suficiente para que las transacciones comiencen la confirmaciรณn en una media de n bloques ( por defecto :%u)</translation> </message> @@ -3247,6 +3419,10 @@ <translation>Recibir y mostrar alertas de red P2P (default: %u)</translation> </message> <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Reduciendo -maxconnections de %d a %d, debido a limitaciones del sistema.</translation> + </message> + <message> <source>Rescan the block chain for missing wallet transactions on startup</source> <translation>Rescanea la cadena de bloques para transacciones perdidas de la cartera</translation> </message> @@ -3279,6 +3455,14 @@ <translation>Este software es experimental.</translation> </message> <message> + <source>Tor control port password (default: empty)</source> + <translation>Contraseรฑa del puerto de control de Tor (predeterminado: vacio)</translation> + </message> + <message> + <source>Tor control port to use if onion listening enabled (default: %s)</source> + <translation>Puerto de control de Tor a utilizar si la escucha de onion esta activada (predeterminado: %s)</translation> + </message> + <message> <source>Transaction amount too small</source> <translation>Cantidad de la transacciรณn demasiado pequeรฑa</translation> </message> @@ -3316,10 +3500,22 @@ <translation>Aviso</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Advertencia: nuevas reglas desconocidas activadas (versionbit %i)</translation> + </message> + <message> + <source>Whether to operate in a blocks only mode (default: %u)</source> + <translation>Si se debe o no operar en un modo de solo bloques (predeterminado: %u)</translation> + </message> + <message> <source>Zapping all transactions from wallet...</source> <translation>Eliminando todas las transacciones del monedero...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>Opciones de notificaciรณn ZeroQM:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>wallet.dat corrupto. Ha fallado la recuperaciรณn.</translation> </message> @@ -3354,6 +3550,26 @@ <translation>(1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)</translation> </message> <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee tiene un ajuste muy elevado! Las comisiones asรญ de grandes podrรญan ser pagadas en una รบnica transaccion.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee tiene un ajuste muy elevado! Esta es la comisiรณn de transacciรณn que pagaras si envรญas una transaccion.</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>No mantener transacciones en la memoria mas de <n> horas (predeterminado: %u)</translation> + </message> + <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>Error al leer wallet.dat! Todas las llaves se leyeron correctamente, pero los datos de transacciones o la libreta de direcciones pueden faltar o ser incorrectos.</translation> + </message> + <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>Las comisiones (en %s/kB) menores que esto son consideradas de cero comision para la creacion de transacciones (predeterminado: %s)</translation> + </message> + <message> <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> <translation>Nivel de rigor en la verificaciรณn de bloques de -checkblocks (0-4; predeterminado: %u)</translation> </message> @@ -3370,10 +3586,18 @@ <translation>Mostrar depuraciรณn (por defecto: %u, proporcionar <category> es opcional)</translation> </message> <message> + <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> + <translation>Error: Unsupported argumento -socks encontrados. SOCKS versiรณn ajuste ya no es posible, sรณlo SOCKS5 proxies son compatibles.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> <translation>Usar distintos proxys SOCKS5 para comunicarse vรญa Tor de forma anรณnima (Por defecto: %s)</translation> </message> <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>Nombre de usuario y hash de la contraseรฑa para las conexiones JSON-RPC. El campo <userpw> tiene el formato: <USERNAME>:<SALT>$<HASH>. Se incluye un script python convencional en share/rpcuser. Esta opciรณn puede ser especificada multiples veces</translation> + </message> + <message> <source>(default: %s)</source> <translation>(predeterminado: %s)</translation> </message> diff --git a/src/qt/locale/bitcoin_es_419.ts b/src/qt/locale/bitcoin_es_419.ts new file mode 100644 index 0000000000..b76915662c --- /dev/null +++ b/src/qt/locale/bitcoin_es_419.ts @@ -0,0 +1,173 @@ +<TS language="es_419" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Haga clic para editar la direcciรณn o etiqueta</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Crear una nueva direcciรณn</translation> + </message> + <message> + <source>&New</source> + <translation>&New</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Copia la direcciรณn seleccionada al portapapeles del sistema</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Seleccione la Direccion a la que enviara dinero</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Seleccione la direccion de la que recibira dinero</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Exportar Lista de Direcciones</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + <message> + <source>Address</source> + <translation>Direccion</translation> + </message> + </context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Decrypt wallet</source> + <translation>Desencriptar Monedero</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>Confirmar Encriptacion de Monedero</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>Advertencia: La Tecla Caps Lock esta habilitada!</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>Monedero ha sido encriptado</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>La encriptacion del monedero ha fallado</translation> + </message> + </context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Direccion</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + </context> +<context> + <name>SendCoinsDialog</name> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Address</source> + <translation>Direccion</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_es_AR.ts b/src/qt/locale/bitcoin_es_AR.ts new file mode 100644 index 0000000000..fb9ac895be --- /dev/null +++ b/src/qt/locale/bitcoin_es_AR.ts @@ -0,0 +1,373 @@ +<TS language="es_AR" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Hacรฉ click para editar la direcciรณn o etiqueta</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Crear una nueva direcciรณn</translation> + </message> + <message> + <source>&New</source> + <translation>&Nuevo</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Copiรก la direcciรณn que seleccionaste al portapapeles</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Copiar</translation> + </message> + <message> + <source>C&lose</source> + <translation>C&lose</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Copiar Direcciรณn</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Borrar de la lista la direcciรณn seleccionada</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportar los datos de la pestaรฑa actual a un archivo</translation> + </message> + <message> + <source>&Export</source> + <translation>&Exportar</translation> + </message> + <message> + <source>&Delete</source> + <translation>&Borrar</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Elegir la direcciรณn a donde enviar las monedas (coins)</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Elegรญ la direcciรณn donde recibir las monedas</translation> + </message> + <message> + <source>C&hoose</source> + <translation>E&legir</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Direcciones de envรญo</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Direcciones de recepciรณn</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Estas son tus direcciones Bitcoin para enviar pagos. Siempre chequeรก el monto y la direcciรณn de recepciรณn antes de mandar monedas.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Estas son tus direcciones para recibir pagos. Te recomendamos que uses una direcciรณn de recibir para cada transacciรณn.</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>Copiar &Etiqueta</translation> + </message> + <message> + <source>&Edit</source> + <translation>&Editar</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Exportar lista de direcciones</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Archivo separado por coma (*.csv)</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Fallรณ la exportaciรณn</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Hubo un error al tratar de guardar la lista de direcciones a %1. Por favor tratรก de nuevo.</translation> + </message> +</context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + <message> + <source>(no label)</source> + <translation>(sin etiqueta)</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Passphrase Dialog</source> + <translation>Diรกlogo de Frase de Contraseรฑa</translation> + </message> + <message> + <source>Enter passphrase</source> + <translation>Ingresar la Frase de Contraseรฑa</translation> + </message> + <message> + <source>New passphrase</source> + <translation>Nueva Frase de Contraseรฑa</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>Repetรญ la nueva Frase de Contraseรฑa</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>Encriptar la billetera</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>Esta operaciรณn necesita tu frase de contraseรฑa para desbloquear tu billetera.</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>Desbloquear la billetera</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to decrypt the wallet.</source> + <translation>Esta operaciรณn necesita tu Frase de Contraseรฑa de billetera para desencriptar la billetera.</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>Desencriptar la billetera</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>Cambiar la Frase de Contraseรฑa</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>Confirmรก la encriptaciรณn de la billetera</translation> + </message> + <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>Atenciรณn: Si encriptรกs tu billetera y perdรฉs tu frase de contraseรฑa, vas a <b>PERDER TODOS TUS BITCOINS</b>!</translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>ยฟEstรกs seguro que querรฉs encriptar tu billetera?</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core ahora se va a cerrar para terminar el proceso de encriptaciรณn. Acordate que encriptar tu billetera no te protege completamente de que algรบn malware que pueda infectar tu computadora te robe tus bitcoins.</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>IMPORTANTE: Todos los backups que hayas hecho de tu billetera tendrรญan que ser reemplazados por el archivo encriptado de billetera que generaste. Por razones de seguridad, los backups anteriores del archivo de billetera no encriptado se inutilizan en el momento en que empezรกs a usar la nueva billetera encriptada</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>Atenciรณn: Tenรฉs puestas las mayรบsculas!</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>Billetera encriptada</translation> + </message> + <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>Ingresรก una nueva frase de contraseรฑa para la billetera.<br/>Por favor, fijate de usar una frase de contraseรฑa de <b>diez o mรกs caracteres aleatorios</b>, o de <b>ocho o mรกs palabras</b>.</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Ingresรก la frase de contraseรฑa vieja y la nueva para la billetera.</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>Fallรณ la encriptaciรณn de la billetera</translation> + </message> + <message> + <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> + <translation>Fallรณ la encriptaciรณn de la billetera por un error interno. Tu billetera no estรก encriptada.</translation> + </message> + <message> + <source>The supplied passphrases do not match.</source> + <translation>Las frases de contraseรฑa no son iguales.</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>Fallรณ el desbloqueo de la billetera</translation> + </message> + <message> + <source>The passphrase entered for the wallet decryption was incorrect.</source> + <translation>La frase de contraseรฑa que ingresaste para desencriptar la billetera es incorrecta.</translation> + </message> + <message> + <source>Wallet decryption failed</source> + <translation>Fallรณ la desencriptaciรณn de la billetera</translation> + </message> + </context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>(no label)</source> + <translation>(sin etiqueta)</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>(no label)</source> + <translation>(sin etiqueta)</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(sin etiqueta)</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Exporting Failed</source> + <translation>Fallรณ la exportaciรณn</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Archivo separado por coma (*.csv)</translation> + </message> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Exportar</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportar los datos de la pestaรฑa actual a un archivo</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_es_CL.ts b/src/qt/locale/bitcoin_es_CL.ts index e6d48a29f0..742dee29d0 100644 --- a/src/qt/locale/bitcoin_es_CL.ts +++ b/src/qt/locale/bitcoin_es_CL.ts @@ -7,7 +7,7 @@ </message> <message> <source>Create a new address</source> - <translation>Crea una nueva direCrea una nueva direcciรณncciรณn</translation> + <translation>Crea una nueva direcciรณn</translation> </message> <message> <source>&New</source> @@ -46,6 +46,22 @@ <translation>&Borrar</translation> </message> <message> + <source>Choose the address to send coins to</source> + <translation>Selecciona la direccion para enviar coins</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Selecciona la direcciรณn para recibir coins</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Direcciรณn de envio</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Direcciรณn para recibir</translation> + </message> + <message> <source>Copy &Label</source> <translation>Copia &etiqueta</translation> </message> @@ -54,9 +70,17 @@ <translation>&Editar</translation> </message> <message> + <source>Export Address List</source> + <translation>Exportar lista de direcciones</translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>Archivos separados por coma (*.csv)</translation> </message> + <message> + <source>Exporting Failed</source> + <translation>Exportado fallo</translation> + </message> </context> <context> <name>AddressTableModel</name> @@ -226,6 +250,14 @@ <translation>&Cambiar la contraseรฑa...</translation> </message> <message> + <source>&Sending addresses...</source> + <translation>Mandando direcciones</translation> + </message> + <message> + <source>&Receiving addresses...</source> + <translation>Recibiendo direcciones</translation> + </message> + <message> <source>Open &URI...</source> <translation>Abrir y url...</translation> </message> @@ -258,6 +290,10 @@ <translation>Abre consola de depuraciรณn y diagnรณstico</translation> </message> <message> + <source>&Verify message...</source> + <translation>Verificar mensaje....</translation> + </message> + <message> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> @@ -274,6 +310,10 @@ <translation>y recibir</translation> </message> <message> + <source>Show information about Bitcoin Core</source> + <translation>Mostrar informacion sobre Bitcoin Core</translation> + </message> + <message> <source>&Show / Hide</source> <translation>&Mostrar/Ocultar</translation> </message> @@ -302,6 +342,18 @@ <translation>bitcoin core</translation> </message> <message> + <source>Request payments (generates QR codes and bitcoin: URIs)</source> + <translation>Pide pagos (genera codigos QR and bitcoin: URls)</translation> + </message> + <message> + <source>&About Bitcoin Core</source> + <translation>&Sobre Bitcoin Core</translation> + </message> + <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>Modifica las opciones para BitCoin Core</translation> + </message> + <message> <source>%1 and %2</source> <translation>%1 y %2</translation> </message> @@ -360,6 +412,11 @@ <translation>prioridad:</translation> </message> <message> + <source>Fee:</source> + <translation>comisiรณn: +</translation> + </message> + <message> <source>Amount</source> <translation>Cantidad</translation> </message> @@ -368,6 +425,10 @@ <translation>Fecha</translation> </message> <message> + <source>Confirmations</source> + <translation>Confirmaciones</translation> + </message> + <message> <source>Confirmed</source> <translation>Confirmado</translation> </message> @@ -388,10 +449,26 @@ <translation>Copiar Cantidad</translation> </message> <message> + <source>Copy quantity</source> + <translation>copiar cantidad</translation> + </message> + <message> + <source>Copy fee</source> + <translation>copiar comision</translation> + </message> + <message> + <source>Copy bytes</source> + <translation>copiar bytes</translation> + </message> + <message> <source>medium</source> <translation>medio</translation> </message> <message> + <source>low</source> + <translation>bajo</translation> + </message> + <message> <source>yes</source> <translation>si</translation> </message> @@ -469,6 +546,10 @@ <translation>versiรณn</translation> </message> <message> + <source>Command-line options</source> + <translation>opciones de linea de comando</translation> + </message> + <message> <source>Usage:</source> <translation>Uso:</translation> </message> @@ -794,10 +875,23 @@ <translation>prioridad:</translation> </message> <message> + <source>Fee:</source> + <translation>comisiรณn: +</translation> + </message> + <message> <source>Transaction Fee:</source> <translation>Comisiรณn transacciรณn:</translation> </message> <message> + <source>normal</source> + <translation>normal</translation> + </message> + <message> + <source>fast</source> + <translation>rapido</translation> + </message> + <message> <source>Send to multiple recipients at once</source> <translation>Enviar a mรบltiples destinatarios</translation> </message> @@ -826,10 +920,22 @@ <translation>Confirmar el envio de monedas</translation> </message> <message> + <source>Copy quantity</source> + <translation>copiar cantidad</translation> + </message> + <message> <source>Copy amount</source> <translation>Copiar Cantidad</translation> </message> <message> + <source>Copy fee</source> + <translation>copiar comision</translation> + </message> + <message> + <source>Copy bytes</source> + <translation>copiar bytes</translation> + </message> + <message> <source>The amount to pay must be larger than 0.</source> <translation>La cantidad por pagar tiene que ser mayor 0.</translation> </message> @@ -1114,10 +1220,18 @@ <translation>Generado pero no acceptado</translation> </message> <message> + <source>Offline</source> + <translation>fuera de linea</translation> + </message> + <message> <source>Label</source> <translation>Etiqueta</translation> </message> <message> + <source>Unconfirmed</source> + <translation>no confirmado</translation> + </message> + <message> <source>Received with</source> <translation>Recibido con</translation> </message> @@ -1237,6 +1351,10 @@ <translation>Mostrar detalles de la transacciรณn</translation> </message> <message> + <source>Exporting Failed</source> + <translation>Exportado fallo</translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>Archivos separados por coma (*.csv)</translation> </message> diff --git a/src/qt/locale/bitcoin_es_CO.ts b/src/qt/locale/bitcoin_es_CO.ts new file mode 100644 index 0000000000..ea0664636d --- /dev/null +++ b/src/qt/locale/bitcoin_es_CO.ts @@ -0,0 +1,542 @@ +<TS language="es_CO" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Click derecho para editar la direcciรณn o etiqueta</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Crear una nueva direcciรณn</translation> + </message> + <message> + <source>&New</source> + <translation>&Nuevo</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Copiar la direcciรณn actualmente seleccionada al sistema de portapapeles</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Copiar</translation> + </message> + <message> + <source>C&lose</source> + <translation>C&errar</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Copiar direcciรณn</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Borrar la direcciรณn actualmente seleccionada de la lista</translation> + </message> + <message> + <source>&Export</source> + <translation>&Exportar</translation> + </message> + <message> + <source>&Delete</source> + <translation>&Borrar</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Escoje la direcciรณn para enviar monedas a</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Escoje la direcciรณn para recibir monedas con</translation> + </message> + <message> + <source>C&hoose</source> + <translation>E&scojer</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Enviando direcciones</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Recibiendo direcciones</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation> +Estas son las direcciones de Bitcoin para enviar pagos . Siempre verifique la cantidad y la direcciรณn de recepciรณn antes de enviar monedas.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Estas son las direcciones de Bitcoin para recibir los pagos . Se recomienda el uso de una nueva direcciรณn de recepciรณn para cada transacciรณn.</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>Copiar &Etiqueta</translation> + </message> + <message> + <source>&Edit</source> + <translation>&Editar</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Exportar lista de direcciones</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Coma(,) archivo separado (*.csv)</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Exportaciรณn Fallida</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Hubo un error intentando guardar la lista de direcciones a %1 Intรฉntelo otravez</translation> + </message> +</context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + <message> + <source>(no label)</source> + <translation>(ninguna direcciรณn)</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Passphrase Dialog</source> + <translation>Diรกlogo de contraseรฑa</translation> + </message> + <message> + <source>Enter passphrase</source> + <translation>Poner contraseรฑa</translation> + </message> + <message> + <source>New passphrase</source> + <translation>Nueva contraseรฑa</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>Repetir nueva contraseรฑa</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>Billetera Encriptada</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>Esta operaciรณn necesita tu contraseรฑa de la billetera para desbloquear la billetera</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>Billetera Desbloqueada</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to decrypt the wallet.</source> + <translation>Esta operaciรณn necesita tu contraseรฑa de la billetera para desencriptar la billetera.</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>Billetera Desencriptada</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>Cambiar contraseรฑa</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>Confirmar encriptaciรณn de la billetera</translation> + </message> + <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>Precauciรณn: Si tรบ has encriptado tu billetera y has perdido tu contraseรฑa, usted <b>PERDERร TODOS TUS BITCOINS</b></translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>Estas seguro de que deseas encriptar tu billetera?</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core se cerrarรก ahora para finalizar el proceso de encriptaciรณn. Recuerda que encriptando tu billetera no protegera por completo tus bitcoins desde robos por malware que infectan tu computadora.</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>IMPORTANTE : Cualquier copias de seguridad anteriores que han hecho de su archivo cartera debe ser reemplazado por el archivo de la carpeta reciรฉn generado , encriptado . Por razones de seguridad , las copias de seguridad anteriores del archivo cartera sin cifrar se vuelven inรบtiles , tan pronto como empiece a utilizar el nuevo , carpeta cifrada .</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>Ojo: El bloqueo de MAYUSCULAS esta activado!</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>Billetera encriptada</translation> + </message> + <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>Poner la nueva contraseรฑa a la billetera.<br/>Por favor usa una contraseรฑa de <b>diez o mรกs palabras aleatorias</b>, o <b>nueve o mรกs letras</b>.</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Poner la antigua contraseรฑa y nueva contraseรฑa a la billetera.</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>Encriptaciรณn de la billetera fallida</translation> + </message> + <message> + <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> + <translation>Encriptaciรณn de la billetera fallida por un error interno. Tu billetera no ha sido encriptada.</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>Fallรณ el desbloqueo de la billetera</translation> + </message> + <message> + <source>The passphrase entered for the wallet decryption was incorrect.</source> + <translation>La contraseรฑa tecleada de la desencriptaciรณn de la billetera ha sido incorrecta.</translation> + </message> + <message> + <source>Wallet decryption failed</source> + <translation>Encriptaciรณn de la billetera fallida</translation> + </message> + <message> + <source>Wallet passphrase was successfully changed.</source> + <translation>La contraseรฑa de la billetera a sido cambiada exitosamente.</translation> + </message> +</context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + <message> + <source>Synchronizing with network...</source> + <translation>Sincronizando con la red...</translation> + </message> + <message> + <source>Node</source> + <translation>Nodo</translation> + </message> + <message> + <source>Show general overview of wallet</source> + <translation>Mostrar vista general de la billetera</translation> + </message> + <message> + <source>&Transactions</source> + <translation>&Transacciones</translation> + </message> + <message> + <source>E&xit</source> + <translation>S&alir</translation> + </message> + <message> + <source>Quit application</source> + <translation>Salir de la aplicaciรณn</translation> + </message> + <message> + <source>About &Qt</source> + <translation>Acerca de &Qt</translation> + </message> + <message> + <source>Show information about Qt</source> + <translation>Mostrar informaciรณn sobre Qt</translation> + </message> + <message> + <source>&Options...</source> + <translation>&Opciones</translation> + </message> + <message> + <source>&Encrypt Wallet...</source> + <translation>&Billetera Encriptada</translation> + </message> + <message> + <source>&Backup Wallet...</source> + <translation>&Billetera Copia de seguridad...</translation> + </message> + <message> + <source>&Change Passphrase...</source> + <translation>&Cambiar contraseรฑa...</translation> + </message> + <message> + <source>&Sending addresses...</source> + <translation>&Enviando Direcciones...</translation> + </message> + <message> + <source>&Receiving addresses...</source> + <translation>&Recibiendo Direcciones...</translation> + </message> + <message> + <source>Open &URI...</source> + <translation>Abrir &URL...</translation> + </message> + <message> + <source>Bitcoin Core client</source> + <translation>Bitcoin Core cliente</translation> + </message> + <message> + <source>Importing blocks from disk...</source> + <translation>Importando bloques desde el disco...</translation> + </message> + <message> + <source>Send coins to a Bitcoin address</source> + <translation>Enviando monedas a una direcciรณn de Bitcoin</translation> + </message> + <message> + <source>Change the passphrase used for wallet encryption</source> + <translation>Cambiar la contraseรฑa usando la encriptaciรณn de la billetera</translation> + </message> + <message> + <source>&Debug window</source> + <translation>&Ventana desarrollador</translation> + </message> + <message> + <source>Open debugging and diagnostic console</source> + <translation>Abrir consola de diagnรณstico y desarrollo</translation> + </message> + <message> + <source>&Verify message...</source> + <translation>&Verificar Mensaje...</translation> + </message> + <message> + <source>Bitcoin</source> + <translation>Bitcoin</translation> + </message> + <message> + <source>Wallet</source> + <translation>Billetera</translation> + </message> + <message> + <source>&Send</source> + <translation>&Enviar</translation> + </message> + <message> + <source>&Receive</source> + <translation>&Recibir</translation> + </message> + <message> + <source>Show information about Bitcoin Core</source> + <translation>Mostrar informaciรณn sobre Bitcoin Core</translation> + </message> + <message> + <source>&Show / Hide</source> + <translation>&Mostrar / Ocultar</translation> + </message> + <message> + <source>Show or hide the main Window</source> + <translation>Mostrar u ocultar la Ventana Principal</translation> + </message> + <message> + <source>&File</source> + <translation>&Archivo</translation> + </message> + <message> + <source>&Settings</source> + <translation>&Configuraciones</translation> + </message> + <message> + <source>&Help</source> + <translation>&Ayuda</translation> + </message> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Error</source> + <translation>Error</translation> + </message> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>(no label)</source> + <translation>(ninguna direcciรณn)</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + </context> +<context> + <name>Intro</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Error</source> + <translation>Error</translation> + </message> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>(no label)</source> + <translation>(ninguna direcciรณn)</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(ninguna direcciรณn)</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Exporting Failed</source> + <translation>Exportaciรณn Fallida</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Coma(,) archivo separado (*.csv)</translation> + </message> + <message> + <source>Label</source> + <translation>Etiqueta</translation> + </message> + <message> + <source>Address</source> + <translation>Direcciรณn</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Exportar</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + <message> + <source>Insufficient funds</source> + <translation>Fondos Insuficientes</translation> + </message> + <message> + <source>Loading wallet...</source> + <translation>Cargando billetera...</translation> + </message> + <message> + <source>Cannot write default address</source> + <translation>No se puede escribir la direcciรณn por defecto</translation> + </message> + <message> + <source>Rescanning...</source> + <translation>Reescaneando</translation> + </message> + <message> + <source>Done loading</source> + <translation>Listo Cargando</translation> + </message> + <message> + <source>Error</source> + <translation>Error</translation> + </message> +</context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_es_DO.ts b/src/qt/locale/bitcoin_es_DO.ts index 0463c0f6e1..b4841ca9b8 100644 --- a/src/qt/locale/bitcoin_es_DO.ts +++ b/src/qt/locale/bitcoin_es_DO.ts @@ -1076,10 +1076,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utilizando la versiรณn OpenSSL</translation> - </message> - <message> <source>Startup time</source> <translation>Hora de inicio</translation> </message> diff --git a/src/qt/locale/bitcoin_es_MX.ts b/src/qt/locale/bitcoin_es_MX.ts index fa2b3c0623..b0dfa4ab7c 100644 --- a/src/qt/locale/bitcoin_es_MX.ts +++ b/src/qt/locale/bitcoin_es_MX.ts @@ -2,6 +2,10 @@ <context> <name>AddressBookPage</name> <message> + <source>Right-click to edit address or label</source> + <translation>Click derecho para editar tu direcciรณn o etiqueta</translation> + </message> + <message> <source>Create a new address</source> <translation>Crear una direcciรณn nueva</translation> </message> @@ -346,6 +350,10 @@ <translation>Acerca de Bitcoin Core</translation> </message> <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>Modificar las opciones de configuraciรณn de Bitcoin Core</translation> + </message> + <message> <source>&Command-line options</source> <translation>opciones de la &Linea de comandos</translation> </message> @@ -354,6 +362,18 @@ <translation>Mostrar mensaje de ayuda del nucleo de Bitcoin para optener una lista con los posibles comandos de Bitcoin</translation> </message> <message> + <source>Error</source> + <translation>Error</translation> + </message> + <message> + <source>Warning</source> + <translation>Aviso</translation> + </message> + <message> + <source>Information</source> + <translation>Informaciรณn </translation> + </message> + <message> <source>Up to date</source> <translation>Actualizado al dia </translation> </message> @@ -384,6 +404,10 @@ <context> <name>CoinControlDialog</name> <message> + <source>Quantity:</source> + <translation>Cantidad</translation> + </message> + <message> <source>Bytes:</source> <translation>Bytes:</translation> </message> @@ -400,6 +424,14 @@ <translation>Cuota:</translation> </message> <message> + <source>After Fee:</source> + <translation>Despuรฉs de los cargos por comisiรณn. </translation> + </message> + <message> + <source>Change:</source> + <translation>Cambio</translation> + </message> + <message> <source>Amount</source> <translation>Monto</translation> </message> @@ -428,6 +460,10 @@ <translation>Copiar monto</translation> </message> <message> + <source>Copy transaction ID</source> + <translation>Copiar identificaciรณn de la transacciรณn. </translation> + </message> + <message> <source>Copy quantity</source> <translation>Copiar cantidad</translation> </message> @@ -452,10 +488,30 @@ <translation>Copiar cambio</translation> </message> <message> + <source>low</source> + <translation>Bajo</translation> + </message> + <message> + <source>none</source> + <translation>Ninguno </translation> + </message> + <message> + <source>yes</source> + <translation>si</translation> + </message> + <message> + <source>no</source> + <translation>no</translation> + </message> + <message> <source>(no label)</source> <translation>(sin etiqueta)</translation> </message> - </context> + <message> + <source>(change)</source> + <translation>cambio</translation> + </message> +</context> <context> <name>EditAddressDialog</name> <message> @@ -501,6 +557,10 @@ </context> <context> <name>FreespaceChecker</name> + <message> + <source>name</source> + <translation>nombre</translation> + </message> </context> <context> <name>HelpMessageDialog</name> @@ -539,6 +599,10 @@ <source>Bitcoin Core</source> <translation>nucleo Bitcoin</translation> </message> + <message> + <source>Error</source> + <translation>Error</translation> + </message> </context> <context> <name>OpenURIDialog</name> @@ -557,6 +621,10 @@ <source>W&allet</source> <translation>Cartera</translation> </message> + <message> + <source>none</source> + <translation>Ninguno </translation> + </message> </context> <context> <name>OverviewPage</name> @@ -676,6 +744,10 @@ <translation>Enviar monedas</translation> </message> <message> + <source>Quantity:</source> + <translation>Cantidad</translation> + </message> + <message> <source>Bytes:</source> <translation>Bytes:</translation> </message> @@ -692,6 +764,14 @@ <translation>Cuota:</translation> </message> <message> + <source>After Fee:</source> + <translation>Despuรฉs de los cargos por comisiรณn. </translation> + </message> + <message> + <source>Change:</source> + <translation>Cambio</translation> + </message> + <message> <source>fast</source> <translation>rรกpido</translation> </message> @@ -1063,6 +1143,10 @@ <translation>copiar monto</translation> </message> <message> + <source>Copy transaction ID</source> + <translation>Copiar identificaciรณn de la transacciรณn. </translation> + </message> + <message> <source>Edit label</source> <translation>Editar capa </translation> </message> @@ -1178,6 +1262,14 @@ <translation>Opciones de cartera:</translation> </message> <message> + <source>Information</source> + <translation>Informaciรณn </translation> + </message> + <message> + <source>Warning</source> + <translation>Aviso</translation> + </message> + <message> <source>Loading addresses...</source> <translation>Cargando direcciones...</translation> </message> @@ -1193,5 +1285,9 @@ <source>Done loading</source> <translation>Carga completa</translation> </message> - </context> + <message> + <source>Error</source> + <translation>Error</translation> + </message> +</context> </TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_et.ts b/src/qt/locale/bitcoin_et.ts index 945e4cfa58..089f01035d 100644 --- a/src/qt/locale/bitcoin_et.ts +++ b/src/qt/locale/bitcoin_et.ts @@ -830,10 +830,6 @@ <translation>รldine</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Kasutan OpenSSL versiooni</translation> - </message> - <message> <source>Startup time</source> <translation>Kรคivitamise hetk</translation> </message> diff --git a/src/qt/locale/bitcoin_fa.ts b/src/qt/locale/bitcoin_fa.ts index 7ab3b77da3..02c216765c 100644 --- a/src/qt/locale/bitcoin_fa.ts +++ b/src/qt/locale/bitcoin_fa.ts @@ -1000,10 +1000,6 @@ <translation>ูพูุฌุฑูู ุงุดฺฉุงูุฒุฏุง</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ูุณุฎูู OpenSSL ุงุณุชูุงุฏู ุดุฏู</translation> - </message> - <message> <source>Startup time</source> <translation>ุฒู
ุงู ุขุบุงุฒ ุจู ฺฉุงุฑ</translation> </message> diff --git a/src/qt/locale/bitcoin_fi.ts b/src/qt/locale/bitcoin_fi.ts index 57987b26ec..0fb6aebb9f 100644 --- a/src/qt/locale/bitcoin_fi.ts +++ b/src/qt/locale/bitcoin_fi.ts @@ -1474,10 +1474,6 @@ <translation>Yleinen</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Kรคytรถssรค oleva OpenSSL-versio</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Kรคyttรครค BerkeleyDB-versiota</translation> </message> @@ -2002,6 +1998,10 @@ <translation>Muokattu:</translation> </message> <message> + <source>(Smart fee not initialized yet. This usually takes a few blocks...)</source> + <translation>(รlykรคstรค rahansiirtokulua ei ole vielรค alustettu. Tรคhรคn kuluu yleensรค aikaa muutaman lohkon verran...)</translation> + </message> + <message> <source>Confirmation time:</source> <translation>Vahvistusaika:</translation> </message> @@ -2908,10 +2908,38 @@ <translation>Jos <category> on toimittamatta tai jos <category> = 1, tulosta kaikki debug-tieto.</translation> </message> <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Tarkistathan ettรค tietokoneesi pรคivรคmรครคrรค ja kellonaika ovat oikeassa! Jos kellosi on vรครคrรคssรค, Bitcoin Core ei toimi oikein.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Karsinta konfiguroitu alle minimin %d MiB. Kรคytรค surempaa numeroa.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Karsinta: viime lompakon synkronisointi menee karsitun datan taakse. Sinun tarvitsee ajaa -reindex (lataa koko lohkoketju uudelleen tapauksessa jossa karsiva noodi)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Vรคhennรค levytilan tarvetta karsimalla (poistamalla) vanhoja lohkoja. Tรคmรค tila ei ole yhteensopiva -txindex ja -rescan -parametrien kanssa. Varoitus: Tรคmรคn asetuksen peruutus vaatii koko lohkoketjun uudelleenlataamisen. (oletus: 0 = poista karsinta kรคytรถstรค, >%u = kohdekoko muodossa MiB jota kรคytetรครคn lohkotiedostoille) </translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>Uudelleenskannaukset eivรคt ole mahdollisia karsivassa tilassa. Sinun tรคytyy kรคyttรครค -reindex joka lataa koko lohkoketjun uudelleen.</translation> + </message> + <message> <source>Error: A fatal internal error occurred, see debug.log for details</source> <translation>Virhe: Kriittinen sisรคinen virhe kohdattiin, katso debug.log lisรคtietoja varten</translation> </message> <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>Kulu (muodossa %s/kB) joka lisรคtรครคn rahansiirtoihin joita lรคhetรคt (oletus: %s)</translation> + </message> + <message> + <source>Pruning blockstore...</source> + <translation>Karsitaan lohkovarastoa...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>Aja taustalla daemonina ja hyvรคksy komennot</translation> </message> @@ -2924,6 +2952,10 @@ <translation>Hyvรคksy yhteyksiรค ulkopuolelta (vakioasetus: 1 jos -proxy tai -connect ei mรครคritelty)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee on asetettu erittรคin suureksi! Tรคmรค on rahansiirtokulu jonka voit maksaa kun arvioitu rahansirtokulu ei ole saatavilla.</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Kytkeydy annettuun osoitteeseen ja pidรค linja aina auki. Kรคytรค [host]:portin merkintรคtapaa IPv6:lle.</translation> </message> @@ -2968,6 +3000,10 @@ <translation>Varoitus: wallet.dat -lompakkotiedosto on korruptoitunut, tiedot pelastettu. Alkuperรคinen wallet.dat -lompakkotiedosto on tallennettu wallet.{timestamp}.bak kansioon %s; jos balanssisi tai siirtohistoria on virheellinen, sinun tulisi palauttaa lompakkotiedosto varmuuskopiosta.</translation> </message> <message> + <source>Whitelist peers connecting from the given netmask or IP address. Can be specified multiple times.</source> + <translation>Salli vertaisten yhdistรครค annetusta verkkomaskista tai IP-osoitteesta. Voidaan mรครคrittรครค useampia kertoja.</translation> + </message> + <message> <source>-maxmempool must be at least %d MB</source> <translation>-maxmempool on oltava vรคhintรครคn %d MB</translation> </message> @@ -3088,18 +3124,22 @@ <translation>Lompakon valinnat:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Varoitus: Tรคmรค versio on vanhentunut; pรคivittรคmistรค vaaditaan!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Sinun tulee uudelleenrakentaa tietokanta kรคyttรคen -reindex vaihtaen -txindex</translation> </message> <message> + <source>Allow JSON-RPC connections from specified source. Valid for <ip> are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified multiple times</source> + <translation>Salli JSON-RPC-yhteydet mรครคritetystรค lรคhteestรค. Kelvolliset arvot <ip> ovat yksittรคinen IP (esim. 1.2.3.4), verkko/verkkomaski (esim. 1.2.3.4/255.255.255.0) tai verkko/luokaton reititys (esim. 1.2.3.4/24). Tรคtรค valintatapaa voidaan kรคyttรครค useita kertoja</translation> + </message> + <message> <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> <translation>Ei voida lukita data-hakemistoa %s. Bitcoin Core on luultavasti jo kรคynnissรค.</translation> </message> <message> + <source>Discover own IP addresses (default: 1 when listening and no -externalip or -proxy)</source> + <translation>Paljasta omat IP-osoitteet (oletus: 1 kun kuunnellaan ja -externalip tai -proxy ei ole kรคytรถssรค)</translation> + </message> + <message> <source>Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)</source> <translation>Aja komento kun olennainen hรคlytys vastaanotetaan tai nรคhdรครคn todella pitkรค haara (%s komennossa korvataan viestillรค)</translation> </message> @@ -3164,6 +3204,10 @@ <translation>Virheellinen mรครคrรค -mintxfee=<amount>: '%s'</translation> </message> <message> + <source>Keep at most <n> unconnectable transactions in memory (default: %u)</source> + <translation>Pidรค enimmillรครคn <n> yhdistรคmiskelvotonta rahansiirtoa muistissa (oletus: %u)</translation> + </message> + <message> <source>Node relay options:</source> <translation>Vรคlityssolmukohdan asetukset:</translation> </message> @@ -3284,10 +3328,22 @@ <translation>Virhe ladattaessa wallet.dat-tiedostoa: Lompakko vioittunut</translation> </message> <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee on asetettu erittรคin suureksi! Tรคmรคnkokoisia kuluja saatetaan maksaa yhdessรค rahansiirrossa.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee on asetettu erittรคin suureksi! Tรคmรค on rahansiirtokulu, jonka maksat, mikรคli lรคhetรคt rahansiirron.</translation> + </message> + <message> <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> <translation>รlรค pidรค rahansiirtoja muistivarannoissa kauemmin kuin <n> tuntia (oletus: %u)</translation> </message> <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>Virhe lukiessa wallet.dat-tiedostoa! Kaikki avaimet luettiin onnistuneesti, mutta rahansiirtotiedot tai osoitekirjan sisรคltรถ saattavat olla muuttuneita tai vรครคriรค.</translation> + </message> + <message> <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> <translation>Kuinka lรคpikรคyvรค lohkojen -checkblocks -todennus on (0-4, oletus: %u)</translation> </message> @@ -3300,6 +3356,10 @@ <translation>(oletus: %s)</translation> </message> <message> + <source>Always query for peer addresses via DNS lookup (default: %u)</source> + <translation>Pyydรค vertaisten osoitteita aina DNS-kyselyjen avulla (oletus: %u)</translation> + </message> + <message> <source>Error loading wallet.dat</source> <translation>Virhe ladattaessa wallet.dat-tiedostoa</translation> </message> @@ -3328,6 +3388,10 @@ <translation>Kuuntele yhteyksiรค portissa <port> (oletus: %u tai testnet: %u)</translation> </message> <message> + <source>Maintain at most <n> connections to peers (default: %u)</source> + <translation>Yllรคpidรค enimmillรครคn <n> yhteyttรค vertaisiin (oletus: %u)</translation> + </message> + <message> <source>Make the wallet broadcast transactions</source> <translation>Aseta lompakko kuuluttamaan rahansiirtoja</translation> </message> @@ -3340,6 +3404,10 @@ <translation>Maksimi yhteyttรค kohden kรคytettรคvรค lรคhetyspuskurin koko, <n>*1000 tavua (oletus: %u)</translation> </message> <message> + <source>Prepend debug output with timestamp (default: %u)</source> + <translation>Lisรครค debug-tietojen alkuun aikaleimat (oletus: %u)</translation> + </message> + <message> <source>Relay and mine data carrier transactions (default: %u)</source> <translation>Vรคlitรค ja louhi dataa kantavia rahansiirtoja (oletus: %u)</translation> </message> @@ -3364,6 +3432,10 @@ <translation>Mรครคritรค asetustiedosto (oletus: %s)</translation> </message> <message> + <source>Specify connection timeout in milliseconds (minimum: 1, default: %d)</source> + <translation>Mรครคritรค yhteyden aikakatkaisu millisekunneissa (minimi: 1, oletus: %d)</translation> + </message> + <message> <source>Specify pid file (default: %s)</source> <translation>Mรครคritรค pid-tiedosto (oletus: %s)</translation> </message> @@ -3372,6 +3444,10 @@ <translation>Kรคytรค vahvistamattomia vaihtorahoja lรคhetettรคessรค rahansiirtoja (oletus: %u)</translation> </message> <message> + <source>Threshold for disconnecting misbehaving peers (default: %u)</source> + <translation>Aikavรคli sopimattomien vertaisten yhteyksien katkaisuun (oletus: %u)</translation> + </message> + <message> <source>Unknown network specified in -onlynet: '%s'</source> <translation>Tuntematon verkko -onlynet parametrina: '%s'</translation> </message> diff --git a/src/qt/locale/bitcoin_fil.ts b/src/qt/locale/bitcoin_fil.ts new file mode 100644 index 0000000000..fba8238371 --- /dev/null +++ b/src/qt/locale/bitcoin_fil.ts @@ -0,0 +1,157 @@ +<TS language="fil" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Create a new address</source> + <translation>Gumawa ng bagong address</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Kopyahin ang napiling tahanan sa clipboard</translation> + </message> + <message> + <source>&Copy</source> + <translation>Kumopya</translation> + </message> + <message> + <source>C&lose</source> + <translation>Isarado</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>Tumulad ng kinatatahanan</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Alisin ang napiling address sa pagpipilian</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Pumili ng pagpapadalahang address</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Piliin ang address ng nagpadala</translation> + </message> + <message> + <source>C&hoose</source> + <translation>Piliin</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Address pagpapadala</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Address bilang pagtanggap</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + </context> +<context> + <name>AskPassphraseDialog</name> + </context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + </context> +<context> + <name>RecentRequestsTableModel</name> + </context> +<context> + <name>SendCoinsDialog</name> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + </context> +<context> + <name>TransactionView</name> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_fr.ts b/src/qt/locale/bitcoin_fr.ts index a0b9feb9ad..65808c7740 100644 --- a/src/qt/locale/bitcoin_fr.ts +++ b/src/qt/locale/bitcoin_fr.ts @@ -1244,7 +1244,7 @@ </message> <message> <source>Mined balance that has not yet matured</source> - <translation>Le solde gรฉnรฉrรฉ n'est pas encore mรปr</translation> + <translation>Le solde minรฉ n'est pas encore mรปr</translation> </message> <message> <source>Balances</source> @@ -1474,10 +1474,6 @@ <translation>Gรฉnรฉral</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Version d'OpenSSL utilisรฉe</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Version BerkeleyDB utilisรฉe</translation> </message> @@ -2980,6 +2976,18 @@ <translation>Accepter les connexions entrantes (par dรฉfautย : 1 si aucun -proxy ou -connect )</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>La valeur -fallbackfee est trรจs รฉlevรฉe ! Elle reprรฉsente les frais de transaction que vous pourriez acquitter si aucune estimation de frais n'est proposรฉe.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Un taux de frais (en %s/Ko) qui sera utilisรฉ si l'estimation de frais ne possรจde pas suffisamment de donnรฉes (par dรฉfaut : %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Accepter les transactions relayรฉes reรงues de pairs de la liste blanche mรชme si le nลud ne relaie pas les transactions (par dรฉfaut : %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Se lier ร l'adresse donnรฉe et toujours l'รฉcouter. Utilisez la notation [host]:port pour l'IPv6</translation> </message> @@ -3012,6 +3020,10 @@ <translation>Impossible de se lier ร %s sur cet ordinateur. Bitcoin Core fonctionne probablement dรฉjร .</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Argument non pris charge -whitelistalwaysrelay ignorรฉ, utiliser -whitelistrelay et/ou -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Utiliser l'UPnP pour mapper le port d'รฉcoute (par dรฉfautย : 1 lors de l'รฉcoute et pas de mandataire -proxy)</translation> </message> @@ -3028,6 +3040,10 @@ <translation>Avertissement : le rรฉseau ne semble pas totalement d'accord ! Quelques mineurs semblent รฉprouver des difficultรฉs.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Avertissement : des versions de blocs inconnues sont minรฉes ! Il est possible que des rรจgles inconnues soient en vigeur</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Avertissement : nous ne semblons pas รชtre en accord complet avec nos pairs ! Vous pourriez avoir besoin d'effectuer une mise ร niveau, ou d'autres nลuds du rรฉseau pourraient avoir besoin d'effectuer une mise ร niveau.</translation> </message> @@ -3048,6 +3064,10 @@ <translation><category> peut รชtre :</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Ajouter un commentaire ร la chaรฎne d'agent utilisateur</translation> + </message> + <message> <source>Block creation options:</source> <translation>Options de crรฉation de bloc :</translation> </message> @@ -3128,10 +3148,22 @@ <translation>Adresse -onion invalide : ยซ %s ยป</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Montant invalide pour -fallbackfee=<amount> : ยซ %s ยป</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Garder la rรฉserve de mรฉmoire transactionnelle sous <n> mรฉgaoctets (par dรฉfaut : %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Emplacement du fichier tรฉmoin auth (par dรฉfaut : data dir)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Octets minimaux par sigop dans les transactions que nous relayons et minons (par dรฉfaut : %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Pas assez de descripteurs de fichiers proposรฉs.</translation> </message> @@ -3140,6 +3172,10 @@ <translation>Seulement se connecter aux nลuds du rรฉseau <net> (IPv4, IPv6 ou oignon)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Imprimer la version et quitter</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>L'รฉlagage ne peut pas รชtre configurรฉ avec une valeur nรฉgative.</translation> </message> @@ -3196,10 +3232,6 @@ <translation>Options du portefeuille :</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Avertissement : cette version est obsolรจte. Une mise ร niveau est exigรฉe !</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Vous devez reconstruire la base de donnรฉes en utilisant -reindex afin de modifier -txindex</translation> </message> @@ -3296,10 +3328,6 @@ <translation>Activation de la meilleure chaรฎne...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Toujours relayer les transactions reรงues des pairs de la liste blanche (par dรฉfaut : %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Tenter de rรฉcupรฉrer les clefs privรฉes d'un wallet.dat corrompu lors du dรฉmarrage</translation> </message> @@ -3381,7 +3409,7 @@ </message> <message> <source>Receive and display P2P network alerts (default: %u)</source> - <translation>Recevoir et afficher les alertes du rรฉseau poste ร poste (%u par dรฉfaut)</translation> + <translation>Recevoir et afficher les alertes du rรฉseau poste ร poste (par dรฉfaut : %u)</translation> </message> <message> <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> @@ -3464,6 +3492,10 @@ <translation>Avertissement</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Avertissement : nouvelles rรจgles inconnues activรฉes (bit de version %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Faut-il fonctionner en mode blocs seulement (par dรฉfaut : %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_fr_FR.ts b/src/qt/locale/bitcoin_fr_FR.ts index df63243353..9a2ac551c6 100644 --- a/src/qt/locale/bitcoin_fr_FR.ts +++ b/src/qt/locale/bitcoin_fr_FR.ts @@ -2,26 +2,103 @@ <context> <name>AddressBookPage</name> <message> + <source>Right-click to edit address or label</source> + <translation>Double cliquez afin de modifier l'adresse ou l'รฉtiquette</translation> + </message> + <message> <source>Create a new address</source> <translation>Crรฉer une nouvelle adresse</translation> </message> <message> + <source>&New</source> + <translation>&Nouveau</translation> + </message> + <message> <source>Copy the currently selected address to the system clipboard</source> <translation>Copier l'adresse surlignรฉe dans votre presse-papiers</translation> </message> <message> + <source>&Copy</source> + <translation>&Copie</translation> + </message> + <message> + <source>C&lose</source> + <translation>F&ermer</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Adresse de copie</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Supprimer l'adresse sรฉlectionnรฉe de la liste</translation> + </message> + <message> <source>Export the data in the current tab to a file</source> <translation>Exporter les donnรฉes de l'onglet courant vers un fichier</translation> </message> <message> + <source>&Export</source> + <translation>&Exporter...</translation> + </message> + <message> <source>&Delete</source> <translation>&Supprimer</translation> </message> <message> + <source>Choose the address to send coins to</source> + <translation>Choisissez une adresse oรน envoyer les bitcoins</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Choisissez une adresse oรน recevoir les bitcoins</translation> + </message> + <message> + <source>C&hoose</source> + <translation>C&oisir</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Adresses d'envoi</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Adresses de rรฉception</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Voici vos adresses Bitcoin qui vous permettent d'envoyer des paiements. Vรฉrifiez toujours le montant et l'adresse de rรฉception avant d'envoyer des piรจces.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Voici vos adresses Bitcoin qui vous permettent de recevoir des paiements. Il est recommandรฉ d'utiliser une nouvelle adresse de rรฉception pour chaque transaction</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>Copier &รtiquette </translation> + </message> + <message> + <source>&Edit</source> + <translation>&รditer </translation> + </message> + <message> + <source>Export Address List</source> + <translation>Exporter la liste d'adresses</translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>Valeurs sรฉparรฉes par des virgules (*.csv)</translation> </message> - </context> + <message> + <source>Exporting Failed</source> + <translation>รchec de l'export</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Il y a eu une erreur durant la tentative de sauvegarde de la liste dโadresse vers %1. +Rรฉessayez.</translation> + </message> +</context> <context> <name>AddressTableModel</name> <message> @@ -40,6 +117,10 @@ <context> <name>AskPassphraseDialog</name> <message> + <source>Passphrase Dialog</source> + <translation>Dialogue mot de passe</translation> + </message> + <message> <source>Enter passphrase</source> <translation>Entrez la phrase de passe</translation> </message> @@ -80,10 +161,30 @@ <translation>Confirmer le chiffrement du porte-monnaie</translation> </message> <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>Attention: Si vous cryptez votre portefeuille et que vous perdez votre mot de passe vous <b> PERDREZ TOUS VOS BITCOINS</b>!</translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>รtes-vous sรปr de de vouloir crypter votre portefeuille ? </translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core fermera maintenant pour finir le processus de chiffrement. Rappelez-vous que crypter votre portefeuille ne protรฉge pas totalement vos bitcoins d'รชtre volรฉ par un malware ayant infectรฉ votre ordinateur. </translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>Attention : La touche majuscule est enfoncรฉ.</translation> + </message> + <message> <source>Wallet encrypted</source> <translation>Porte-monnaie chiffrรฉ</translation> </message> <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Entrez l'ancien mot de passe et le nouveau mot de passe pour le portefeuille</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>Le chiffrement du porte-monnaie a รฉchouรฉ</translation> </message> @@ -107,13 +208,29 @@ <source>Wallet decryption failed</source> <translation>Le dรฉcryptage du porte-monnaie a รฉchouรฉ</translation> </message> - </context> + <message> + <source>Wallet passphrase was successfully changed.</source> + <translation>Le changement du mot de passe du portefeuille ร รฉtรฉ effectuรฉ avec succรจs.</translation> + </message> +</context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP/Masque de sous rรฉseau</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Banni jusque </translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> + <source>Sign &message...</source> + <translation>Signer &message...</translation> + </message> + <message> <source>Synchronizing with network...</source> <translation>Synchronisation avec le rรฉseau...</translation> </message> @@ -122,6 +239,10 @@ <translation>&Vue d'ensemble</translation> </message> <message> + <source>Node</source> + <translation>Nลud</translation> + </message> + <message> <source>Show general overview of wallet</source> <translation>Affiche une vue d'ensemble du porte-monnaie</translation> </message> @@ -154,6 +275,46 @@ <translation>&Options...</translation> </message> <message> + <source>&Encrypt Wallet...</source> + <translation>&Chiffrer le portefeuille </translation> + </message> + <message> + <source>&Backup Wallet...</source> + <translation>&Sauvegarder le portefeuille</translation> + </message> + <message> + <source>&Change Passphrase...</source> + <translation>&Modifier le mot de passe</translation> + </message> + <message> + <source>&Sending addresses...</source> + <translation>&Adresses d'envoi</translation> + </message> + <message> + <source>&Receiving addresses...</source> + <translation>&Adresses de rรฉception</translation> + </message> + <message> + <source>Open &URI...</source> + <translation>Ouvrir &URI</translation> + </message> + <message> + <source>Bitcoin Core client</source> + <translation>Client Bitcoin Core</translation> + </message> + <message> + <source>Importing blocks from disk...</source> + <translation>Importer les blocs depuis le disque...</translation> + </message> + <message> + <source>Reindexing blocks on disk...</source> + <translation>Rรฉindexer les blocs sur le disque...</translation> + </message> + <message> + <source>Send coins to a Bitcoin address</source> + <translation>Envoyer des piรจces ร une adresse Bitcoin</translation> + </message> + <message> <source>Backup wallet to another location</source> <translation>Sauvegarder le porte-monnaie ร un autre emplacement</translation> </message> @@ -162,14 +323,54 @@ <translation>Modifier la phrase de passe utilisรฉe pour le cryptage du porte-monnaie</translation> </message> <message> + <source>&Debug window</source> + <translation>&Fenรชtre de dรฉbogage</translation> + </message> + <message> + <source>Open debugging and diagnostic console</source> + <translation>Ouvrir la console de dรฉbogage et de diagnostic</translation> + </message> + <message> + <source>&Verify message...</source> + <translation>&Vรฉrification du message</translation> + </message> + <message> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> + <source>Wallet</source> + <translation>Portefeuille</translation> + </message> + <message> <source>&Send</source> <translation>&Envoyer</translation> </message> <message> + <source>&Receive</source> + <translation>&Rรฉception</translation> + </message> + <message> + <source>Show information about Bitcoin Core</source> + <translation>Montrer les informations ร propos de Bitcoin Core</translation> + </message> + <message> + <source>&Show / Hide</source> + <translation>&Montrer / Cacher</translation> + </message> + <message> + <source>Show or hide the main Window</source> + <translation>Montrer ou cacher la fenรชtre principale</translation> + </message> + <message> + <source>Encrypt the private keys that belong to your wallet</source> + <translation>Crypter les clรฉ privรฉes qui appartiennent votre portefeuille</translation> + </message> + <message> + <source>Sign messages with your Bitcoin addresses to prove you own them</source> + <translation>Signer vos messages avec vos adresses Bitcoin pour prouver que vous les dรฉtenez</translation> + </message> + <message> <source>&File</source> <translation>&Fichier</translation> </message> @@ -186,6 +387,86 @@ <translation>Barre d'outils des onglets</translation> </message> <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Request payments (generates QR codes and bitcoin: URIs)</source> + <translation>Demander des paiements (gรฉnรฉrer QR codes et bitcoin: URIs)</translation> + </message> + <message> + <source>&About Bitcoin Core</source> + <translation>&ร propos de Bitcoin</translation> + </message> + <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>Modifier les options de configuration de Bitcoin Core</translation> + </message> + <message> + <source>Show the list of used sending addresses and labels</source> + <translation>Montrer la liste des adresses d'envois utilisรฉes et les รฉtiquettes</translation> + </message> + <message> + <source>Open a bitcoin: URI or payment request</source> + <translation>Ouvrir un bitcoin: URI ou demande de paiement</translation> + </message> + <message> + <source>&Command-line options</source> + <translation>&Options de ligne de commande</translation> + </message> + <message numerus="yes"> + <source>%n active connection(s) to Bitcoin network</source> + <translation><numerusform>%n connexion active au rรฉseau Bitcoin</numerusform><numerusform>%n connexions actives au rรฉseau Bitcoin</numerusform></translation> + </message> + <message> + <source>No block source available...</source> + <translation>Aucun bloc source disponible</translation> + </message> + <message numerus="yes"> + <source>%n hour(s)</source> + <translation><numerusform>%n heure</numerusform><numerusform>%n heures</numerusform></translation> + </message> + <message numerus="yes"> + <source>%n day(s)</source> + <translation><numerusform>%n jour</numerusform><numerusform>%n jours</numerusform></translation> + </message> + <message numerus="yes"> + <source>%n week(s)</source> + <translation><numerusform>%n semaine</numerusform><numerusform>%n semaines</numerusform></translation> + </message> + <message> + <source>%1 and %2</source> + <translation>%1 et %2</translation> + </message> + <message numerus="yes"> + <source>%n year(s)</source> + <translation><numerusform>%n an</numerusform><numerusform>%n annรฉes</numerusform></translation> + </message> + <message> + <source>%1 behind</source> + <translation>en retard de %1</translation> + </message> + <message> + <source>Last received block was generated %1 ago.</source> + <translation>Le dernier bloc reรงu a รฉtรฉ gรฉnรฉrรฉ %1.</translation> + </message> + <message> + <source>Transactions after this will not yet be visible.</source> + <translation>Les transactions ne seront plus visible aprรจs ceci.</translation> + </message> + <message> + <source>Error</source> + <translation>Erreur</translation> + </message> + <message> + <source>Warning</source> + <translation>Attention</translation> + </message> + <message> + <source>Information</source> + <translation>Information</translation> + </message> + <message> <source>Up to date</source> <translation>ร jour</translation> </message> @@ -194,6 +475,36 @@ <translation>Rattrapage...</translation> </message> <message> + <source>Date: %1 +</source> + <translation>Date: %1 +</translation> + </message> + <message> + <source>Amount: %1 +</source> + <translation>Montant:%1 +</translation> + </message> + <message> + <source>Type: %1 +</source> + <translation>Type: %1 +</translation> + </message> + <message> + <source>Label: %1 +</source> + <translation>รtiquette: %1 +</translation> + </message> + <message> + <source>Address: %1 +</source> + <translation>Adresse: %1 +</translation> + </message> + <message> <source>Sent transaction</source> <translation>Transaction envoyรฉe</translation> </message> @@ -212,26 +523,90 @@ </context> <context> <name>ClientModel</name> - </context> + <message> + <source>Network Alert</source> + <translation>Alerte rรฉseau</translation> + </message> +</context> <context> <name>CoinControlDialog</name> <message> + <source>Coin Selection</source> + <translation>Sรฉlection de piรจce </translation> + </message> + <message> + <source>Quantity:</source> + <translation>Quantitรฉ:</translation> + </message> + <message> + <source>Bytes:</source> + <translation>Octets:</translation> + </message> + <message> <source>Amount:</source> <translation>Montant :</translation> </message> <message> + <source>Priority:</source> + <translation>Prioritรฉ:</translation> + </message> + <message> + <source>Fee:</source> + <translation>Frais:</translation> + </message> + <message> + <source>Dust:</source> + <translation>Poussiรจre: </translation> + </message> + <message> + <source>After Fee:</source> + <translation>Aprรจs frais:</translation> + </message> + <message> + <source>Change:</source> + <translation>Change:</translation> + </message> + <message> + <source>(un)select all</source> + <translation>(dรฉ)sรฉlectionnรฉ tout:</translation> + </message> + <message> + <source>Tree mode</source> + <translation>Mode arbre</translation> + </message> + <message> + <source>List mode</source> + <translation>Mode list</translation> + </message> + <message> <source>Amount</source> <translation>Montant</translation> </message> <message> + <source>Received with label</source> + <translation>Reรงu avec : </translation> + </message> + <message> + <source>Received with address</source> + <translation>Reรงue avec l'adresse</translation> + </message> + <message> <source>Date</source> <translation>Date</translation> </message> <message> + <source>Confirmations</source> + <translation>Confirmations</translation> + </message> + <message> <source>Confirmed</source> <translation>Confirmรฉe</translation> </message> <message> + <source>Priority</source> + <translation>Prioritรฉ</translation> + </message> + <message> <source>Copy address</source> <translation>Copier l'adresse</translation> </message> @@ -244,10 +619,130 @@ <translation>Copier le montant</translation> </message> <message> + <source>Copy transaction ID</source> + <translation>Copie ID transaction</translation> + </message> + <message> + <source>Lock unspent</source> + <translation>Verrouiller les non dรฉpensรฉs</translation> + </message> + <message> + <source>Unlock unspent</source> + <translation>Dรฉverrouiller les non dรฉpensรฉs</translation> + </message> + <message> + <source>Copy quantity</source> + <translation>Copier la quantitรฉ</translation> + </message> + <message> + <source>Copy fee</source> + <translation>Copier les frais</translation> + </message> + <message> + <source>Copy after fee</source> + <translation>Copier aprรจs les frais</translation> + </message> + <message> + <source>Copy bytes</source> + <translation>Copier les octets</translation> + </message> + <message> + <source>Copy priority</source> + <translation>Copier la prioritรฉ </translation> + </message> + <message> + <source>Copy dust</source> + <translation>Copier la poussiรจre </translation> + </message> + <message> + <source>Copy change</source> + <translation>Copier changement </translation> + </message> + <message> + <source>highest</source> + <translation>le plus รฉlevรฉ</translation> + </message> + <message> + <source>higher</source> + <translation>plus haute</translation> + </message> + <message> + <source>high</source> + <translation>haut</translation> + </message> + <message> + <source>medium-high</source> + <translation>moyen-รฉlevรฉ</translation> + </message> + <message> + <source>medium</source> + <translation>moyen</translation> + </message> + <message> + <source>low-medium</source> + <translation>bas-moyen</translation> + </message> + <message> + <source>low</source> + <translation>bas</translation> + </message> + <message> + <source>lower</source> + <translation>infรฉrieur</translation> + </message> + <message> + <source>lowest</source> + <translation>le plus bas </translation> + </message> + <message> + <source>(%1 locked)</source> + <translation>(%1 verrouillรฉ)</translation> + </message> + <message> + <source>none</source> + <translation>aucun</translation> + </message> + <message> + <source>This label turns red if the transaction size is greater than 1000 bytes.</source> + <translation>Cette รฉtiquette devient rouge si la taille de la transaction est plus grande que 1000 octets</translation> + </message> + <message> + <source>This label turns red if the priority is smaller than "medium".</source> + <translation>Cette รฉtiquette devient rouge si la prioritรฉ est plus petite que "moyen"</translation> + </message> + <message> + <source>Can vary +/- %1 satoshi(s) per input.</source> + <translation>Peut varier de +/- %1 satoshi(s) par entrรฉe.</translation> + </message> + <message> + <source>yes</source> + <translation>oui</translation> + </message> + <message> + <source>no</source> + <translation>non</translation> + </message> + <message> + <source>This means a fee of at least %1 per kB is required.</source> + <translation>Cela signifie que des frais d'au moins %1 par kO sont requis.</translation> + </message> + <message> + <source>Can vary +/- 1 byte per input.</source> + <translation>Peut varier de +/- 1 octet par entrรฉe.</translation> + </message> + <message> <source>(no label)</source> <translation>(aucune รฉtiquette)</translation> </message> - </context> + <message> + <source>change from %1 (%2)</source> + <translation>changement de %1 (%2)</translation> + </message> + <message> + <source>(change)</source> + <translation>(changement)</translation> + </message> +</context> <context> <name>EditAddressDialog</name> <message> @@ -283,6 +778,10 @@ <translation>L'adresse fournie ยซ %1 ยป est dรฉjร prรฉsente dans le carnet d'adresses.</translation> </message> <message> + <source>The entered address "%1" is not a valid Bitcoin address.</source> + <translation>L'adresse entrรฉe "%1" n'est pas une adresse Bitcoin valide.</translation> + </message> + <message> <source>Could not unlock wallet.</source> <translation>Impossible de dรฉverrouiller le porte-monnaie.</translation> </message> @@ -293,20 +792,124 @@ </context> <context> <name>FreespaceChecker</name> - </context> + <message> + <source>A new data directory will be created.</source> + <translation>Un nouveau rรฉpertoire de donnรฉes sera crรฉรฉ. </translation> + </message> + <message> + <source>name</source> + <translation>nom</translation> + </message> + <message> + <source>Path already exists, and is not a directory.</source> + <translation>Le chemin existe dรฉjร et ce n'est pas un rรฉpertoire. </translation> + </message> + <message> + <source>Cannot create data directory here.</source> + <translation>Impossible de crรฉer un rรฉpertoire ici.</translation> + </message> +</context> <context> <name>HelpMessageDialog</name> <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>version</source> + <translation>version</translation> + </message> + <message> + <source>(%1-bit)</source> + <translation>(%1-bit)</translation> + </message> + <message> + <source>About Bitcoin Core</source> + <translation>ร propos de Bitcoin Core</translation> + </message> + <message> + <source>Command-line options</source> + <translation>Options de ligne de commande</translation> + </message> + <message> <source>Usage:</source> <translation>Utilisation :</translation> </message> + <message> + <source>command-line options</source> + <translation>Options de ligne de commande</translation> + </message> + <message> + <source>UI Options:</source> + <translation>Options interface graphique:</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Dรฉmarrer sous forme minimisรฉe</translation> + </message> </context> <context> <name>Intro</name> - </context> + <message> + <source>Welcome</source> + <translation>Bienvenue </translation> + </message> + <message> + <source>Welcome to Bitcoin Core.</source> + <translation>Bienvenue sur Bitcoin Core.</translation> + </message> + <message> + <source>Use the default data directory</source> + <translation>Utiliser le rรฉpertoire par dรฉfaut </translation> + </message> + <message> + <source>Use a custom data directory:</source> + <translation>Utiliser votre propre rรฉpertoire</translation> + </message> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Error: Specified data directory "%1" cannot be created.</source> + <translation>Erreur: Le rรฉpertoire de donnรฉes "%1" n'a pas pu รชtre crรฉรฉ. </translation> + </message> + <message> + <source>Error</source> + <translation>Erreur</translation> + </message> + <message numerus="yes"> + <source>%n GB of free space available</source> + <translation><numerusform>%n GO d'espace libre disponible</numerusform><numerusform>%n GO d'espace libre disponible</numerusform></translation> + </message> + <message numerus="yes"> + <source>(of %n GB needed)</source> + <translation><numerusform>(%n GB nรฉcessaire)</numerusform><numerusform>(%n GB nรฉcessaire)</numerusform></translation> + </message> +</context> <context> <name>OpenURIDialog</name> - </context> + <message> + <source>Open URI</source> + <translation>Ouvrir URI</translation> + </message> + <message> + <source>Open payment request from URI or file</source> + <translation>Ouvrir une demande de paiement depuis une URI ou un fichier</translation> + </message> + <message> + <source>URI:</source> + <translation>URI:</translation> + </message> + <message> + <source>Select payment request file</source> + <translation>Sรฉlectionner un fichier de demande de paiement</translation> + </message> + <message> + <source>Select payment request file to open</source> + <translation>Sรฉlectionnez le fichier de demande de paiement ร ouvrir</translation> + </message> +</context> <context> <name>OptionsDialog</name> <message> @@ -314,6 +917,50 @@ <translation>Options</translation> </message> <message> + <source>&Main</source> + <translation>&Principal</translation> + </message> + <message> + <source>Size of &database cache</source> + <translation>Taille du cache de la base de donnรฉes.</translation> + </message> + <message> + <source>MB</source> + <translation>MO</translation> + </message> + <message> + <source>Accept connections from outside</source> + <translation>Accepter les connexions venant de l'extรฉrieur</translation> + </message> + <message> + <source>Allow incoming connections</source> + <translation>Autoriser les connexions entrantes</translation> + </message> + <message> + <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> + <translation>Adresse IP du proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</translation> + </message> + <message> + <source>Reset all client options to default.</source> + <translation>Rรฉinitialiser toutes les options du client par dรฉfaut.</translation> + </message> + <message> + <source>&Reset Options</source> + <translation>&Options de rรฉinitialisation </translation> + </message> + <message> + <source>&Network</source> + <translation>&Rรฉseau</translation> + </message> + <message> + <source>Automatically start Bitcoin Core after logging in to the system.</source> + <translation>Dรฉmarrer automatiquement Bitcoin Core aprรจs s'รชtre connectรฉ au systรจme. </translation> + </message> + <message> + <source>Expert</source> + <translation>Expert</translation> + </message> + <message> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Ouvrir le port du client Bitcoin automatiquement sur le routeur. Cela ne fonctionne que si votre routeur supporte l'UPnP et si la fonctionnalitรฉ est activรฉe.</translation> </message> @@ -322,6 +969,38 @@ <translation>Ouvrir le port avec l'&UPnP</translation> </message> <message> + <source>Proxy &IP:</source> + <translation>Proxy &IP:</translation> + </message> + <message> + <source>&Port:</source> + <translation>&Port:</translation> + </message> + <message> + <source>Port of the proxy (e.g. 9050)</source> + <translation>Port du proxy (e.g. 9050)</translation> + </message> + <message> + <source>Used for reaching peers via:</source> + <translation>Utilisรฉ pour contacter des pairs via:</translation> + </message> + <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>&Window</source> + <translation>&Fenรชtre</translation> + </message> + <message> <source>&Minimize to the tray instead of the taskbar</source> <translation>&Minimiser dans la barre systรจme au lieu de la barre des tรขches</translation> </message> @@ -329,37 +1008,429 @@ <source>M&inimize on close</source> <translation>Mi&nimiser lors de la fermeture</translation> </message> - </context> + <message> + <source>&Display</source> + <translation>&Afficher</translation> + </message> + <message> + <source>User Interface &language:</source> + <translation>Interface utilisateur &langage:</translation> + </message> + <message> + <source>&OK</source> + <translation>&OK</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&Annuler </translation> + </message> + <message> + <source>default</source> + <translation>defaut</translation> + </message> + <message> + <source>none</source> + <translation>aucun</translation> + </message> + <message> + <source>Confirm options reset</source> + <translation>Confirmer les options de rรฉinitialisation </translation> + </message> + <message> + <source>Client restart required to activate changes.</source> + <translation>Redรฉmarrage du client nรฉcessaire pour activer les changements.</translation> + </message> + <message> + <source>This change would require a client restart.</source> + <translation>Ce changement nรฉcessiterait un redรฉmarrage du client.</translation> + </message> + <message> + <source>The supplied proxy address is invalid.</source> + <translation>L'adresse du proxy est invalide.</translation> + </message> +</context> <context> <name>OverviewPage</name> <message> <source>Form</source> <translation>Formulaire</translation> </message> + <message> + <source>Watch-only:</source> + <translation>Regarder seulement:</translation> + </message> + <message> + <source>Available:</source> + <translation>Disponible: </translation> + </message> + <message> + <source>Pending:</source> + <translation>En attente:</translation> + </message> + <message> + <source>Immature:</source> + <translation>Immature:</translation> + </message> + <message> + <source>Balances</source> + <translation>Balances</translation> + </message> + <message> + <source>Total:</source> + <translation>Total:</translation> + </message> + <message> + <source>Your current total balance</source> + <translation>Votre balance totale courante</translation> + </message> + <message> + <source>Spendable:</source> + <translation>Dรฉpensable: </translation> + </message> + <message> + <source>Recent transactions</source> + <translation>Transactions rรฉcentes </translation> + </message> </context> <context> <name>PaymentServer</name> - </context> + <message> + <source>Invalid payment address %1</source> + <translation>Adresse de paiement invalide %1</translation> + </message> + <message> + <source>Payment request rejected</source> + <translation>Requรชte de paiement rejetรฉe </translation> + </message> + <message> + <source>Payment request is not initialized.</source> + <translation>La demande de paiement n'a pas รฉtรฉ initialisรฉe.</translation> + </message> + <message> + <source>Payment request error</source> + <translation>Erreur lors de la requรชte de paiement</translation> + </message> + <message> + <source>Payment request expired.</source> + <translation>Demande de paiement expirรฉe.</translation> + </message> + <message> + <source>Invalid payment request.</source> + <translation>Demande de paiement invalide.</translation> + </message> + <message> + <source>Refund from %1</source> + <translation>Remboursement de %1</translation> + </message> + <message> + <source>Bad response from server %1</source> + <translation>Mauvaise rรฉponse du serveur %1</translation> + </message> + <message> + <source>Network request error</source> + <translation>Erreur de demande de rรฉseau</translation> + </message> +</context> <context> <name>PeerTableModel</name> - </context> + <message> + <source>User Agent</source> + <translation>Agent Utilisateur</translation> + </message> + <message> + <source>Node/Service</source> + <translation>Nลud/Service </translation> + </message> + <message> + <source>Ping Time</source> + <translation>Temps du ping</translation> + </message> +</context> <context> <name>QObject</name> <message> <source>Amount</source> <translation>Montant</translation> </message> - </context> + <message> + <source>Enter a Bitcoin address (e.g. %1)</source> + <translation>Entrer une adresse Bitcoin (e.g. %1)</translation> + </message> + <message> + <source>%1 d</source> + <translation>%1 j</translation> + </message> + <message> + <source>%1 h</source> + <translation>%1 h</translation> + </message> + <message> + <source>%1 m</source> + <translation>%1 m</translation> + </message> + <message> + <source>%1 s</source> + <translation>%1 s</translation> + </message> + <message> + <source>None</source> + <translation>Aucun</translation> + </message> + <message> + <source>N/A</source> + <translation>N/A</translation> + </message> + <message> + <source>%1 ms</source> + <translation>%1 ms</translation> + </message> +</context> <context> <name>QRImageWidget</name> - </context> + <message> + <source>&Save Image...</source> + <translation>&Sauvegarder image</translation> + </message> + <message> + <source>&Copy Image</source> + <translation>&Copier image</translation> + </message> + <message> + <source>Save QR Code</source> + <translation>Sauvegarder QR code</translation> + </message> + <message> + <source>PNG Image (*.png)</source> + <translation>Image PNG (*.png)</translation> + </message> +</context> <context> <name>RPCConsole</name> <message> + <source>Client name</source> + <translation>Nom du client</translation> + </message> + <message> + <source>N/A</source> + <translation>N/A </translation> + </message> + <message> + <source>Client version</source> + <translation>Version du client</translation> + </message> + <message> + <source>&Information</source> + <translation>&Information</translation> + </message> + <message> + <source>Debug window</source> + <translation>Fenรชtre de dรฉbogage </translation> + </message> + <message> + <source>General</source> + <translation>Gรฉnรฉral</translation> + </message> + <message> + <source>Using BerkeleyDB version</source> + <translation>Version BerkeleyDButilisรฉe </translation> + </message> + <message> + <source>Startup time</source> + <translation>Le temps de dรฉmarrage</translation> + </message> + <message> + <source>Network</source> + <translation>Rรฉseau</translation> + </message> + <message> <source>Name</source> <translation>Nom</translation> </message> - </context> + <message> + <source>Number of connections</source> + <translation>Nombre de connexions</translation> + </message> + <message> + <source>Block chain</source> + <translation>Chaรฎne de bloc </translation> + </message> + <message> + <source>Current number of blocks</source> + <translation>Nombre courant de blocs</translation> + </message> + <message> + <source>Memory Pool</source> + <translation>Mรฉmoire du pool</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Nombre courant de transactions</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Usage de la mรฉmoire</translation> + </message> + <message> + <source>Received</source> + <translation>Reรงu </translation> + </message> + <message> + <source>Sent</source> + <translation>Envoyรฉ</translation> + </message> + <message> + <source>&Peers</source> + <translation>&Pairs</translation> + </message> + <message> + <source>Banned peers</source> + <translation>Pairs bannis</translation> + </message> + <message> + <source>Whitelisted</source> + <translation>Autorisรฉ par la liste</translation> + </message> + <message> + <source>Direction</source> + <translation>Direction</translation> + </message> + <message> + <source>Version</source> + <translation>Version</translation> + </message> + <message> + <source>Starting Block</source> + <translation>Bloc de dรฉpart</translation> + </message> + <message> + <source>Synced Blocks</source> + <translation>Blocs Synchronisรฉs </translation> + </message> + <message> + <source>User Agent</source> + <translation>Agent Utilisateur</translation> + </message> + <message> + <source>Services</source> + <translation>Services</translation> + </message> + <message> + <source>Ban Score</source> + <translation>Score de ban</translation> + </message> + <message> + <source>Connection Time</source> + <translation>Temps de connexion</translation> + </message> + <message> + <source>Last Send</source> + <translation>Dernier envoyรฉ</translation> + </message> + <message> + <source>Last Receive</source> + <translation>Dernier reรงu</translation> + </message> + <message> + <source>Ping Time</source> + <translation>Temps du ping</translation> + </message> + <message> + <source>Ping Wait</source> + <translation>Attente du ping</translation> + </message> + <message> + <source>&Open</source> + <translation>&Ouvert</translation> + </message> + <message> + <source>&Console</source> + <translation>&Console</translation> + </message> + <message> + <source>&Network Traffic</source> + <translation>&Trafic rรฉseau</translation> + </message> + <message> + <source>&Clear</source> + <translation>&Nettoyer</translation> + </message> + <message> + <source>Totals</source> + <translation>Totaux</translation> + </message> + <message> + <source>In:</source> + <translation>Entrรฉe:</translation> + </message> + <message> + <source>Out:</source> + <translation>Sortie:</translation> + </message> + <message> + <source>Build date</source> + <translation>Date de crรฉation</translation> + </message> + <message> + <source>Debug log file</source> + <translation>Fichier du journal de dรฉbogage</translation> + </message> + <message> + <source>Clear console</source> + <translation>Nettoyer la console</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &heure</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &jour</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &semaine</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &an</translation> + </message> + <message> + <source>%1 B</source> + <translation>%1 O</translation> + </message> + <message> + <source>%1 KB</source> + <translation>%1 KO</translation> + </message> + <message> + <source>%1 MB</source> + <translation>%1 MO</translation> + </message> + <message> + <source>%1 GB</source> + <translation>%1 GO</translation> + </message> + <message> + <source>via %1</source> + <translation>via %1</translation> + </message> + <message> + <source>never</source> + <translation>jamais</translation> + </message> + <message> + <source>Yes</source> + <translation>Oui</translation> + </message> + <message> + <source>No</source> + <translation>Non</translation> + </message> + <message> + <source>Unknown</source> + <translation>Inconnu</translation> + </message> +</context> <context> <name>ReceiveCoinsDialog</name> <message> @@ -375,10 +1446,38 @@ <translation>Message :</translation> </message> <message> + <source>Clear all fields of the form.</source> + <translation>Nettoyer tous les champs du formulaire.</translation> + </message> + <message> + <source>Clear</source> + <translation>Nettoyer</translation> + </message> + <message> + <source>Requested payments history</source> + <translation>Historique des demandes de paiements.</translation> + </message> + <message> + <source>&Request payment</source> + <translation>&Demande de paiement</translation> + </message> + <message> + <source>Show</source> + <translation>Montrer</translation> + </message> + <message> + <source>Remove</source> + <translation>Retirer</translation> + </message> + <message> <source>Copy label</source> <translation>Copier l'รฉtiquette</translation> </message> <message> + <source>Copy message</source> + <translation>Copier message</translation> + </message> + <message> <source>Copy amount</source> <translation>Copier le montant</translation> </message> @@ -390,6 +1489,30 @@ <translation>QR Code</translation> </message> <message> + <source>Copy &URI</source> + <translation>Copier &URI</translation> + </message> + <message> + <source>Copy &Address</source> + <translation>Copier &Adresse</translation> + </message> + <message> + <source>&Save Image...</source> + <translation>&Sauvegarder image</translation> + </message> + <message> + <source>Request payment to %1</source> + <translation>Demande de paiement ร %1</translation> + </message> + <message> + <source>Payment information</source> + <translation>Informations de paiement</translation> + </message> + <message> + <source>URI</source> + <translation>URI</translation> + </message> + <message> <source>Address</source> <translation>Adresse</translation> </message> @@ -428,7 +1551,15 @@ <source>(no label)</source> <translation>(aucune รฉtiquette)</translation> </message> - </context> + <message> + <source>(no message)</source> + <translation>(pas de message)</translation> + </message> + <message> + <source>(no amount)</source> + <translation>(pas de montant)</translation> + </message> +</context> <context> <name>SendCoinsDialog</name> <message> @@ -436,18 +1567,98 @@ <translation>Envoyer des piรจces</translation> </message> <message> + <source>Inputs...</source> + <translation>Sorties...</translation> + </message> + <message> + <source>automatically selected</source> + <translation>Automatiquement sรฉlectionnรฉ </translation> + </message> + <message> <source>Insufficient funds!</source> <translation>Fonds insuffisants</translation> </message> <message> + <source>Quantity:</source> + <translation>Quantitรฉ:</translation> + </message> + <message> + <source>Bytes:</source> + <translation>Octets:</translation> + </message> + <message> <source>Amount:</source> <translation>Montant :</translation> </message> <message> + <source>Priority:</source> + <translation>Prioritรฉ:</translation> + </message> + <message> + <source>Fee:</source> + <translation>Frais:</translation> + </message> + <message> + <source>After Fee:</source> + <translation>Aprรจs frais:</translation> + </message> + <message> + <source>Change:</source> + <translation>Change:</translation> + </message> + <message> + <source>Transaction Fee:</source> + <translation>Frais de transaction</translation> + </message> + <message> + <source>Choose...</source> + <translation>Choisir...</translation> + </message> + <message> + <source>per kilobyte</source> + <translation>par kilo octet</translation> + </message> + <message> + <source>Hide</source> + <translation>Cacher</translation> + </message> + <message> + <source>total at least</source> + <translation>Au total au moins</translation> + </message> + <message> + <source>Recommended:</source> + <translation>Recommandรฉ: </translation> + </message> + <message> + <source>Confirmation time:</source> + <translation>Temps de confirmation:</translation> + </message> + <message> + <source>normal</source> + <translation>normal</translation> + </message> + <message> + <source>fast</source> + <translation>rapide</translation> + </message> + <message> <source>Send to multiple recipients at once</source> <translation>Envoyer des piรจces ร plusieurs destinataires ร la fois</translation> </message> <message> + <source>Clear all fields of the form.</source> + <translation>Nettoyer tous les champs du formulaire.</translation> + </message> + <message> + <source>Dust:</source> + <translation>Poussiรจre: </translation> + </message> + <message> + <source>Clear &All</source> + <translation>Nettoyer &Tout</translation> + </message> + <message> <source>Balance:</source> <translation>Solde :</translation> </message> @@ -460,18 +1671,86 @@ <translation>Confirmer l'envoi des piรจces</translation> </message> <message> + <source>%1 to %2</source> + <translation>%1 ร %2</translation> + </message> + <message> + <source>Copy quantity</source> + <translation>Copier la quantitรฉ</translation> + </message> + <message> <source>Copy amount</source> <translation>Copier le montant</translation> </message> <message> + <source>Copy fee</source> + <translation>Copier les frais</translation> + </message> + <message> + <source>Copy after fee</source> + <translation>Copier aprรจs les frais</translation> + </message> + <message> + <source>Copy bytes</source> + <translation>Copier les octets</translation> + </message> + <message> + <source>Copy priority</source> + <translation>Copier la prioritรฉ </translation> + </message> + <message> + <source>Copy change</source> + <translation>Copier changement </translation> + </message> + <message> + <source>Total Amount %1</source> + <translation>Montant Total %1</translation> + </message> + <message> + <source>or</source> + <translation>ou</translation> + </message> + <message> <source>The amount to pay must be larger than 0.</source> <translation>Le montant ร payer doit รชtre supรฉrieur ร 0.</translation> </message> <message> + <source>The amount exceeds your balance.</source> + <translation>Le montant excรจde votre balance. </translation> + </message> + <message> + <source>Transaction creation failed!</source> + <translation>รchec de la crรฉation de la transaction </translation> + </message> + <message> + <source>Payment request expired.</source> + <translation>Demande de paiement expirรฉe. </translation> + </message> + <message> + <source>Pay only the required fee of %1</source> + <translation>Payer seulement les frais obligatoire de %1</translation> + </message> + <message> + <source>Warning: Invalid Bitcoin address</source> + <translation>Attention: Adresse Bitcoin Invalide</translation> + </message> + <message> <source>(no label)</source> <translation>(aucune รฉtiquette)</translation> </message> - </context> + <message> + <source>Copy dust</source> + <translation>Copier la poussiรจre </translation> + </message> + <message> + <source>Are you sure you want to send?</source> + <translation>รtes-vous sรปr de vouloir envoyer ?</translation> + </message> + <message> + <source>added as transaction fee</source> + <translation>Ajoute en tant que frais de transaction</translation> + </message> +</context> <context> <name>SendCoinsEntry</name> <message> @@ -491,6 +1770,14 @@ <translation>&รtiquette :</translation> </message> <message> + <source>Choose previously used address</source> + <translation>Choisir une adresse prรฉcรฉdemment utilisรฉe </translation> + </message> + <message> + <source>This is a normal payment.</source> + <translation>C'est un paiement normal.</translation> + </message> + <message> <source>Alt+A</source> <translation>Alt+A</translation> </message> @@ -503,6 +1790,10 @@ <translation>Alt+P</translation> </message> <message> + <source>Remove this entry</source> + <translation>Retirer cette entrรฉe</translation> + </message> + <message> <source>Message:</source> <translation>Message :</translation> </message> @@ -510,7 +1801,11 @@ <source>Pay To:</source> <translation>Payer ร :</translation> </message> - </context> + <message> + <source>Memo:</source> + <translation>Memo:</translation> + </message> +</context> <context> <name>ShutdownWindow</name> </context> @@ -521,6 +1816,10 @@ <translation>&Signer le message</translation> </message> <message> + <source>Choose previously used address</source> + <translation>Choisir une adresse prรฉcรฉdemment utilisรฉe </translation> + </message> + <message> <source>Alt+A</source> <translation>Alt+A</translation> </message> @@ -537,20 +1836,76 @@ <translation>Entrez ici le message que vous dรฉsirez signer</translation> </message> <message> + <source>Signature</source> + <translation>Signature</translation> + </message> + <message> + <source>Copy the current signature to the system clipboard</source> + <translation>Copier l'adresse courante dans le presse papier</translation> + </message> + <message> <source>Sign &Message</source> <translation>&Signer le message</translation> </message> - </context> + <message> + <source>Clear &All</source> + <translation>Nettoyer &Tout</translation> + </message> + <message> + <source>&Verify Message</source> + <translation>&Vรฉrifier message</translation> + </message> + <message> + <source>Verify &Message</source> + <translation>Vรฉrifier &Message</translation> + </message> + <message> + <source>The entered address is invalid.</source> + <translation>L'adresse entrรฉe est invalide. </translation> + </message> + <message> + <source>Please check the address and try again.</source> + <translation>Vรฉrifiez l'adresse et rรฉessayer. </translation> + </message> + <message> + <source>Message signed.</source> + <translation>Message signรฉ. </translation> + </message> + <message> + <source>Please check the signature and try again.</source> + <translation>Vรฉrifiez la signature et rรฉessayer.</translation> + </message> + <message> + <source>Message verification failed.</source> + <translation>Vรฉrification du message รฉchouรฉe.</translation> + </message> + <message> + <source>Message verified.</source> + <translation>Message vรฉrifiรฉ. </translation> + </message> +</context> <context> <name>SplashScreen</name> <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>The Bitcoin Core developers</source> + <translation>Les dรฉveloppeurs de Bitcoin Core</translation> + </message> + <message> <source>[testnet]</source> <translation>[testnet]</translation> </message> </context> <context> <name>TrafficGraphWidget</name> - </context> + <message> + <source>KB/s</source> + <translation>KO/s</translation> + </message> +</context> <context> <name>TransactionDesc</name> <message> @@ -574,29 +1929,109 @@ <translation>Date</translation> </message> <message> + <source>Source</source> + <translation>Source</translation> + </message> + <message> <source>Generated</source> <translation>Gรฉnรฉrรฉ</translation> </message> <message> + <source>From</source> + <translation>De</translation> + </message> + <message> + <source>To</source> + <translation>ร</translation> + </message> + <message> + <source>own address</source> + <translation>Votre adresse</translation> + </message> + <message> + <source>watch-only</source> + <translation>Lecture uniquement</translation> + </message> + <message> + <source>label</source> + <translation>รtiquette </translation> + </message> + <message> <source>Credit</source> <translation>Crรฉdit</translation> </message> <message> + <source>not accepted</source> + <translation>Pas acceptรฉ</translation> + </message> + <message> <source>Debit</source> <translation>Dรฉbit</translation> </message> <message> + <source>Total debit</source> + <translation>Dรฉbit total</translation> + </message> + <message> + <source>Total credit</source> + <translation>Crรฉdit total </translation> + </message> + <message> + <source>Transaction fee</source> + <translation>Frais de transaction</translation> + </message> + <message> + <source>Net amount</source> + <translation>Montant net</translation> + </message> + <message> <source>Message</source> <translation>Message</translation> </message> <message> + <source>Comment</source> + <translation>Commentaire </translation> + </message> + <message> + <source>Transaction ID</source> + <translation>ID de transaction</translation> + </message> + <message> + <source>Merchant</source> + <translation>Marchant</translation> + </message> + <message> + <source>Debug information</source> + <translation>Information de dรฉbogage </translation> + </message> + <message> + <source>Transaction</source> + <translation>Transaction</translation> + </message> + <message> + <source>Inputs</source> + <translation>Entrรฉes </translation> + </message> + <message> <source>Amount</source> <translation>Montant</translation> </message> <message> + <source>true</source> + <translation>vrai</translation> + </message> + <message> + <source>false</source> + <translation>faux</translation> + </message> + <message> <source>, has not been successfully broadcast yet</source> <translation>, n'a pas encore รฉtรฉ diffusรฉe avec succรจs</translation> </message> + <message numerus="yes"> + <source>Open for %n more block(s)</source> + <translation><numerusform>Ouvert pour %n bloc de plus</numerusform><numerusform>Ouvert pour %n blocs de plus</numerusform></translation> + </message> <message> <source>unknown</source> <translation>inconnue</translation> @@ -623,6 +2058,10 @@ <source>Type</source> <translation>Type</translation> </message> + <message numerus="yes"> + <source>Open for %n more block(s)</source> + <translation><numerusform>Ouvert pour %n bloc de plus</numerusform><numerusform>Ouvert pour %n blocs de plus</numerusform></translation> + </message> <message> <source>Open until %1</source> <translation>Ouvert jusqu'ร %1</translation> @@ -640,10 +2079,18 @@ <translation>Gรฉnรฉrรฉ mais pas acceptรฉ</translation> </message> <message> + <source>Offline</source> + <translation>Hors ligne</translation> + </message> + <message> <source>Label</source> <translation>รtiquette</translation> </message> <message> + <source>Unconfirmed</source> + <translation>Non Confirmรฉ</translation> + </message> + <message> <source>Received with</source> <translation>Reรงues avec</translation> </message> @@ -664,6 +2111,10 @@ <translation>Extraction</translation> </message> <message> + <source>watch-only</source> + <translation>Lecture uniquement</translation> + </message> + <message> <source>(n/a)</source> <translation>(indisponible)</translation> </message> @@ -755,10 +2206,30 @@ <translation>Copier le montant</translation> </message> <message> + <source>Copy transaction ID</source> + <translation>Copie ID transaction</translation> + </message> + <message> <source>Edit label</source> <translation>รditer l'รฉtiquette</translation> </message> <message> + <source>Show transaction details</source> + <translation>Afficher les dรฉtails de la transaction</translation> + </message> + <message> + <source>Export Transaction History</source> + <translation>Exporter l'historique des transactions</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>รchec de l'export</translation> + </message> + <message> + <source>Exporting Successful</source> + <translation>Export rรฉalisรฉ avec sucรฉs </translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>Valeurs sรฉparรฉes par des virgules (*.csv)</translation> </message> @@ -800,7 +2271,11 @@ </context> <context> <name>WalletFrame</name> - </context> + <message> + <source>No wallet has been loaded.</source> + <translation>Aucun portefeuille a รฉtรฉ chargรฉ.</translation> + </message> +</context> <context> <name>WalletModel</name> <message> @@ -811,6 +2286,10 @@ <context> <name>WalletView</name> <message> + <source>&Export</source> + <translation>&Exporter...</translation> + </message> + <message> <source>Export the data in the current tab to a file</source> <translation>Exporter les donnรฉes de l'onglet courant vers un fichier</translation> </message> @@ -826,7 +2305,11 @@ <source>Backup Failed</source> <translation>La sauvegarde a รฉchouรฉ</translation> </message> - </context> + <message> + <source>Backup Successful</source> + <translation>Sauvegarde rรฉussie</translation> + </message> +</context> <context> <name>bitcoin-core</name> <message> @@ -838,6 +2321,10 @@ <translation>Spรฉcifier le rรฉpertoire de donnรฉes</translation> </message> <message> + <source>Specify your own public address</source> + <translation>Spรฉcifier votre adresse publique </translation> + </message> + <message> <source>Accept command line and JSON-RPC commands</source> <translation>Accepter les commandes de JSON-RPC et de la ligne de commande</translation> </message> @@ -846,14 +2333,95 @@ <translation>Fonctionner en arriรจre-plan en tant que dรฉmon et accepter les commandes</translation> </message> <message> + <source><category> can be:</source> + <translation><category> peut รชtre:</translation> + </message> + <message> + <source>Block creation options:</source> + <translation>Options de crรฉation de bloc:</translation> + </message> + <message> + <source>Connection options:</source> + <translation>Options de connexion:</translation> + </message> + <message> + <source>Debugging/Testing options:</source> + <translation>Options de dรฉbogage/test </translation> + </message> + <message> + <source>Importing...</source> + <translation> +Importation ...</translation> + </message> + <message> + <source>Verifying blocks...</source> + <translation>Vรฉrifications des blocs...</translation> + </message> + <message> + <source>Verifying wallet...</source> + <translation>Vรฉrification du portefeuille...</translation> + </message> + <message> + <source>Wallet options:</source> + <translation>Options du portefeuille:</translation> + </message> + <message> + <source>(default: %u)</source> + <translation>(dรฉfaut: %u)</translation> + </message> + <message> + <source>Connect through SOCKS5 proxy</source> + <translation>Connectรฉ au travers du proxy SOCKS5</translation> + </message> + <message> + <source>Information</source> + <translation>Information</translation> + </message> + <message> + <source>Node relay options:</source> + <translation>Options du relais de nลud: </translation> + </message> + <message> + <source>RPC server options:</source> + <translation>Options de serveur RPC:</translation> + </message> + <message> <source>Send trace/debug info to console instead of debug.log file</source> <translation>Envoyer les informations de dรฉbogage/trace ร la console au lieu du fichier debug.log</translation> </message> <message> + <source>Signing transaction failed</source> + <translation>Transaction signรฉe รฉchouรฉe</translation> + </message> + <message> + <source>This is experimental software.</source> + <translation>C'est un logiciel expรฉrimental.</translation> + </message> + <message> + <source>Transaction amount too small</source> + <translation>Montant de la transaction trop bas</translation> + </message> + <message> + <source>Transaction amounts must be positive</source> + <translation>Les montants de la transaction doivent รชtre positif</translation> + </message> + <message> + <source>Transaction too large for fee policy</source> + <translation>Montant de la transaction trop รฉlevรฉ pour la politique de frais</translation> + </message> + <message> + <source>Transaction too large</source> + <translation>Transaction trop grande</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>Nom d'utilisateur pour les connexions JSON-RPC</translation> </message> <message> + <source>Warning</source> + <translation>Attention</translation> + </message> + <message> <source>Password for JSON-RPC connections</source> <translation>Mot de passe pour les connexions JSON-RPC</translation> </message> @@ -870,10 +2438,26 @@ <translation>Erreur lors du chargement de wallet.dat : porte-monnaie corrompu</translation> </message> <message> + <source>(default: %s)</source> + <translation>(dรฉfaut: %s)</translation> + </message> + <message> <source>Error loading wallet.dat</source> <translation>Erreur lors du chargement de wallet.dat</translation> </message> <message> + <source>Generate coins (default: %u)</source> + <translation>Gรฉnรฉrer des piรจces (dรฉfaut: %u)</translation> + </message> + <message> + <source>Invalid -proxy address: '%s'</source> + <translation>Adresse -proxy invalide: '%s'</translation> + </message> + <message> + <source>Specify pid file (default: %s)</source> + <translation>Spรฉcifier le pid du fichier (dรฉfaut: %s)</translation> + </message> + <message> <source>Insufficient funds</source> <translation>Fonds insuffisants</translation> </message> @@ -886,6 +2470,14 @@ <translation>Chargement du porte-monnaie...</translation> </message> <message> + <source>Cannot downgrade wallet</source> + <translation>Vous ne pouvez pas rรฉtrograder votre portefeuille</translation> + </message> + <message> + <source>Cannot write default address</source> + <translation>Impossible d'รฉcrire l'adresse par dรฉfaut</translation> + </message> + <message> <source>Rescanning...</source> <translation>Nouvelle analyse...</translation> </message> @@ -893,5 +2485,9 @@ <source>Done loading</source> <translation>Chargement terminรฉ</translation> </message> - </context> + <message> + <source>Error</source> + <translation>Erreur</translation> + </message> +</context> </TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_gl.ts b/src/qt/locale/bitcoin_gl.ts index 96d4adeba9..50b081d205 100644 --- a/src/qt/locale/bitcoin_gl.ts +++ b/src/qt/locale/bitcoin_gl.ts @@ -984,10 +984,6 @@ <translation>Ventana de Depuraciรณn</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Usar versiรณn OpenSSL</translation> - </message> - <message> <source>Startup time</source> <translation>Tempo de arranque</translation> </message> diff --git a/src/qt/locale/bitcoin_he.ts b/src/qt/locale/bitcoin_he.ts index 926d206206..d937e211b0 100644 --- a/src/qt/locale/bitcoin_he.ts +++ b/src/qt/locale/bitcoin_he.ts @@ -2,6 +2,10 @@ <context> <name>AddressBookPage</name> <message> + <source>Right-click to edit address or label</source> + <translation>ืืืฅ ืืฉืง ืืื ื ืืื ืืขืจืื ืืชืืืช ืื ืืืจื</translation> + </message> + <message> <source>Create a new address</source> <translation>ืืฆืืจืช ืืชืืืช ืืืฉื</translation> </message> @@ -164,6 +168,10 @@ <translation>ืืื ืืื ืืืฆืคืื ืืช ืืืจื ืง?</translation> </message> <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>ืืืืช ืืืืงืืื ืชืืกืืจ ืขืืฉืื ืืื ืืกืืื ืืช ืชืืื ืืืฆืคื ื. ืืืืจ ืื ืืฆืคื ื ืืื ื ืืืืื ืืืื ืขืืืื ืืืืคื ืืื ืืื ืืื ืฉืืงืืจื ืืชืืื ืืช ืืืื ืืืช ืืืฆืืืืช ืืืืฉื ืฉืื.</translation> + </message> + <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> <translation>ืืชืฉืืืช ืืื: ืื ืืืืื ืงืืื ืฉืืืฆืขืช ืืืจื ืง ืฉืื ืืฉ ืืืืืืฃ ืืงืืืฅ ืืืจื ืง ืืืืฆืคื ืฉืื ืขืชื ื ืืฆืจ. ืืืขืื ืืืืื, ืืืืืืื ืงืืืืื ืฉื ืงืืืฅ ืืืจื ืง ืืืืชื-ืืืฆืคื ืืืคืื ืืืกืจื ืชืืขืืช ืขื ืืชืืืช ืืฉืืืืฉ ืืืจื ืง ืืืืฉ ืืืืฆืคื.</translation> </message> @@ -180,6 +188,10 @@ <translation>ื ื ืืืืื ืืช ืืืืช ืืฆืืคื ืืืืฉื ืืืจื ืง.<br/>ืืืื ืืืฉืชืืฉ ืืืืืช ืฆืืคื ืืืืจืืืช ื<b>ืขืฉืจื ืชืืืื ืืงืจืืืื ืืืขืื</b>, ืื <b>ืฉืืื ื ืืืืื ืืืขืื</b>.</translation> </message> <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>ืืื ืก ืืช ืืืืช ืืฆืืคื ืืืฉื ื ืืืืืช ืฆืืคื ืืืฉื ืืืจื ืง ืฉืื.</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>ืืฆืคื ืช ืืืจื ืง ื ืืฉืื</translation> </message> @@ -1260,10 +1272,6 @@ <translation>ืืืื</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ืฉืืืืฉ ืึพOpenSSL ืืจืกื</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ืฉืืืืฉ ืึพBerkeleyDB ืืจืกื</translation> </message> diff --git a/src/qt/locale/bitcoin_hr.ts b/src/qt/locale/bitcoin_hr.ts index 413dc21857..f9d744aa3e 100644 --- a/src/qt/locale/bitcoin_hr.ts +++ b/src/qt/locale/bitcoin_hr.ts @@ -1018,10 +1018,6 @@ <translation>Konzola za dijagnostiku</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>OpenSSL verzija u upotrebi</translation> - </message> - <message> <source>Network</source> <translation>Mreลพa</translation> </message> diff --git a/src/qt/locale/bitcoin_hu.ts b/src/qt/locale/bitcoin_hu.ts index ab4517ccfa..839ee883bd 100644 --- a/src/qt/locale/bitcoin_hu.ts +++ b/src/qt/locale/bitcoin_hu.ts @@ -964,6 +964,10 @@ <translation>Itt beรกllรญthatod a kezelลfelรผlet nyelvรฉt. A beรกllรญtรกs a Bitcoin รบjraindรญtรกsa utรกn lรฉp รฉrvรฉnybe.</translation> </message> <message> + <source>Third party transaction URLs</source> + <translation>Harmadik fรฉl tranzakciรณ URL-ek</translation> + </message> + <message> <source>Reset all client options to default.</source> <translation>Minden kliensbeรกllรญtรกs alapรฉrtelmezettre รกllรญtรกsa.</translation> </message> @@ -1258,10 +1262,6 @@ <translation>รltalรกnos</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Hasznรกlt OpenSSL verziรณ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Hasznรกlt BerkeleyDB verziรณ</translation> </message> diff --git a/src/qt/locale/bitcoin_id_ID.ts b/src/qt/locale/bitcoin_id_ID.ts index 1b626fbf23..e1ec7ae7fa 100644 --- a/src/qt/locale/bitcoin_id_ID.ts +++ b/src/qt/locale/bitcoin_id_ID.ts @@ -59,19 +59,19 @@ </message> <message> <source>Sending addresses</source> - <translation>Alamat-alamat mengirim</translation> + <translation>Alamat pengirim</translation> </message> <message> <source>Receiving addresses</source> - <translation>Alamat-alamat menerima</translation> + <translation>Alamat penerima</translation> </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> - <translation>Alamat-alamat Anda supaya mengirim pembayaran. Periksalah jumlah dan alamat penerima setiap kali Anda mengirim Bitcoin.</translation> + <translation>Alamat-alamat Anda untuk mengirim pembayaran. Periksalah jumlah dan alamat penerima setiap kali Anda mengirim Bitcoin.</translation> </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> - <translation>Alamat-alamat Anda supaya menerima pembayaran. Dianjurkan agar Anda menggunakan alamat menerima yang baru untuk setiap transaksi.</translation> + <translation>Alamat-alamat Anda untuk menerima pembayaran. Dianjurkan agar Anda menggunakan alamat yang baru untuk setiap transaksi.</translation> </message> <message> <source>Copy &Label</source> @@ -93,7 +93,11 @@ <source>Exporting Failed</source> <translation>Proses Ekspor Gagal</translation> </message> - </context> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Terjadi kesalahan saat menyimpan daftar alamat ke %1. Silakan coba lagi.</translation> + </message> +</context> <context> <name>AddressTableModel</name> <message> @@ -133,7 +137,7 @@ </message> <message> <source>This operation needs your wallet passphrase to unlock the wallet.</source> - <translation>Operasi ini memerlukan kata kunci dompet Anda untuk membuka dompet ini.</translation> + <translation>Operasi ini memerlukan kata kunci dompet Anda untuk membuka dompet.</translation> </message> <message> <source>Unlock wallet</source> @@ -141,7 +145,7 @@ </message> <message> <source>This operation needs your wallet passphrase to decrypt the wallet.</source> - <translation>Operasi ini memerlukan kata kunci dompet Anda untuk mendekripsi dompet ini.</translation> + <translation>Operasi ini memerlukan kata kunci dompet Anda untuk mendekripsi dompet.</translation> </message> <message> <source>Decrypt wallet</source> @@ -157,11 +161,19 @@ </message> <message> <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> - <translation>Perhatian: Jika anda mengenkripsi dompet anda dan lupa kata kuncinya, anda pasti <b>KEHILANGAN SELURUH BITCOIN ANDA</B>!</translation> + <translation>Perhatian: Jika anda mengenkripsi dompet anda dan lupa kata kuncinya, anda akan <b>KEHILANGAN SELURUH BITCOIN ANDA</b>!</translation> </message> <message> <source>Are you sure you wish to encrypt your wallet?</source> - <translation>Apakah kamu yakin ingin mengenkripsi dompet anda?</translation> + <translation>Apakah Anda yakin ingin mengenkripsi dompet Anda?</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core akan ditutup untuk menyelesaikan proses enkripsi. Mohon diingat bahwa mengenkripsi dompet Anda tidak akan sepenuhnya melindungi bitcoin Anda dari virus atau malware yang menginfeksi komputer Anda.</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>PENTING: Setiap back up yang sudah Anda buat sebaiknya diganti dengan data dompet Anda yang baru dan terenkripsi. Untuk alasan keamanan, data back up tidak terenkripsi yang sudah Anda buat sebelumnya tidak akan dapat digunakan setelah Anda mulai menggunakan dompet yang baru dan terenkripsi.</translation> </message> <message> <source>Warning: The Caps Lock key is on!</source> @@ -172,6 +184,14 @@ <translation>Dompet terenkripsi</translation> </message> <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>Masukkan kata kunci untuk dompet Anda.<br/>Mohon gunakan kata kunci <b>yang terdiri dari 10 karakter acak</b>, atau <b>delapan atau beberapa kata lagi</b>.</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Masukkan kata kunci lama dan kata kunci baru dompet Anda.</translation> + </message> + <message> <source>Wallet encryption failed</source> <translation>Enkripsi dompet gagal</translation> </message> @@ -197,12 +217,20 @@ </message> <message> <source>Wallet passphrase was successfully changed.</source> - <translation>Kata kunci untuk dompet berubah berhasil.</translation> + <translation>Kata kunci dompet Anda berhasil diubah.</translation> </message> </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP/Netmask</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Di banned sampai</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -223,7 +251,7 @@ </message> <message> <source>Show general overview of wallet</source> - <translation>Tampilkan kilasan umum dari dompet</translation> + <translation>Tampilkan gambaran umum dompet Anda</translation> </message> <message> <source>&Transactions</source> @@ -231,7 +259,7 @@ </message> <message> <source>Browse transaction history</source> - <translation>Jelajah sejarah transaksi</translation> + <translation>Lihat riwayat transaksi</translation> </message> <message> <source>E&xit</source> @@ -267,11 +295,11 @@ </message> <message> <source>&Sending addresses...</source> - <translation>Alamat-alamat &Mengirim</translation> + <translation>&Alamat-alamat untuk mengirim...</translation> </message> <message> <source>&Receiving addresses...</source> - <translation>Alamat-alamat &Menerima</translation> + <translation>&Alamat-alamat untuk menerima...</translation> </message> <message> <source>Open &URI...</source> @@ -279,15 +307,15 @@ </message> <message> <source>Bitcoin Core client</source> - <translation>Client Bitcoin Inti</translation> + <translation>Klien Bitcoin Core</translation> </message> <message> <source>Importing blocks from disk...</source> - <translation>Blok-blok sedang di-impor dari disk</translation> + <translation>Mengimpor blok dari disk...</translation> </message> <message> <source>Reindexing blocks on disk...</source> - <translation>Mengindex ulang block di harddisk...</translation> + <translation>Mengindex ulang blok di dalam disk...</translation> </message> <message> <source>Send coins to a Bitcoin address</source> @@ -331,11 +359,11 @@ </message> <message> <source>Show information about Bitcoin Core</source> - <translation>Tampilkan informasi tentang Bitcoin Inti</translation> + <translation>Tampilkan informasi tentang Bitcoin Core</translation> </message> <message> <source>&Show / Hide</source> - <translation>&Sunjukkan / Menyembungi</translation> + <translation>&Tampilkan / Sembunyikan</translation> </message> <message> <source>Show or hide the main Window</source> @@ -343,15 +371,15 @@ </message> <message> <source>Encrypt the private keys that belong to your wallet</source> - <translation>Mengenkripsi kunci-kunci pribadi yang dipunyai dompetmu</translation> + <translation>Enkripsi private key yang dimiliki dompet Anda</translation> </message> <message> <source>Sign messages with your Bitcoin addresses to prove you own them</source> - <translation>Tandalah pesanan dengan alamat-alamat Bitcoin Anda supaya membuktikan pesanan itu dikirim oleh Anda</translation> + <translation>Tanda tangani sebuah pesan menggunakan alamat Bitcoin Anda untuk membuktikan bahwa Anda adalah pemilik alamat tersebut</translation> </message> <message> <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source> - <translation>Periksakan pesan-pesan supaya menjaminkan ditandatangani oleh alamat Bitcoin yang terperinci</translation> + <translation>Verifikasi pesan untuk memastikan bahwa pesan tersebut ditanda tangani oleh suatu alamat Bitcoin tertentu</translation> </message> <message> <source>&File</source> @@ -375,13 +403,17 @@ </message> <message> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation>Permintaan pembayaran (membangkitkan kode QR dan bitcoin: URIs)</translation> + <translation>Permintaan pembayaran (membuat kode QR dan bitcoin: URIs)</translation> </message> <message> <source>&About Bitcoin Core</source> <translation>&Mengenai Bitcoin Core</translation> </message> <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>Modifikasi pengaturan konfigurasi untuk Bitcoin Core</translation> + </message> + <message> <source>Show the list of used sending addresses and labels</source> <translation>Tampilkan daftar alamat dan label yang terkirim</translation> </message> @@ -395,21 +427,25 @@ </message> <message> <source>&Command-line options</source> - <translation>&pilihan Perintah-baris</translation> + <translation>&pilihan Command-line</translation> </message> <message> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> - <translation>Tampilkan pesan bantuan Bitcoin Core untuk memberikan daftar pilihan perintah-baris yang memungkinkan dalam aplikasi Bitcoin</translation> + <translation>Tampilkan pesan bantuan Bitcoin Core untuk mendapatkan daftar pilihan Command-line</translation> </message> <message numerus="yes"> <source>%n active connection(s) to Bitcoin network</source> - <translation><numerusform>%n hubungan aktif ke jaringan Bitcoin</numerusform></translation> + <translation><numerusform>%n koneksi aktif ke jaringan Bitcoin</numerusform></translation> </message> <message> <source>No block source available...</source> <translation>Sumber blok tidak tersedia...</translation> </message> <message numerus="yes"> + <source>Processed %n block(s) of transaction history.</source> + <translation><numerusform>%n blok dari riwayat transaksi diproses.</numerusform></translation> + </message> + <message numerus="yes"> <source>%n hour(s)</source> <translation><numerusform>%n jam</numerusform></translation> </message> @@ -435,15 +471,15 @@ </message> <message> <source>Last received block was generated %1 ago.</source> - <translation>Blok terakhir dibuat %1 lalu.</translation> + <translation>Blok terakhir yang diterima %1 lalu.</translation> </message> <message> <source>Transactions after this will not yet be visible.</source> - <translation>Transaksi setelah ini tidak akan ditampilkan</translation> + <translation>Transaksi setelah ini belum akan terlihat.</translation> </message> <message> <source>Error</source> - <translation>Gagal</translation> + <translation>Terjadi sebuah kesalahan</translation> </message> <message> <source>Warning</source> @@ -531,7 +567,7 @@ </message> <message> <source>Amount:</source> - <translation>Nilai:</translation> + <translation>Jumlah:</translation> </message> <message> <source>Priority:</source> @@ -542,12 +578,16 @@ <translation>Biaya:</translation> </message> <message> + <source>Dust:</source> + <translation>Dust:</translation> + </message> + <message> <source>After Fee:</source> <translation>Dengan Biaya:</translation> </message> <message> <source>Change:</source> - <translation>Uang Kembali:</translation> + <translation>Kembalian:</translation> </message> <message> <source>(un)select all</source> @@ -555,7 +595,7 @@ </message> <message> <source>Tree mode</source> - <translation>mode pohon</translation> + <translation>Tree mode</translation> </message> <message> <source>List mode</source> @@ -563,7 +603,15 @@ </message> <message> <source>Amount</source> - <translation>Nilai</translation> + <translation>Jumlah</translation> + </message> + <message> + <source>Received with label</source> + <translation>Diterima dengan label</translation> + </message> + <message> + <source>Received with address</source> + <translation>Diterima dengan alamat</translation> </message> <message> <source>Date</source> @@ -571,7 +619,7 @@ </message> <message> <source>Confirmations</source> - <translation>Konfirmasi-konfirmasi</translation> + <translation>Konfirmasi</translation> </message> <message> <source>Confirmed</source> @@ -591,19 +639,19 @@ </message> <message> <source>Copy amount</source> - <translation>Salin nilai</translation> + <translation>Salin jumlah</translation> </message> <message> <source>Copy transaction ID</source> - <translation>Menyalinkan ID transaksi</translation> + <translation>Salin ID transaksi</translation> </message> <message> <source>Lock unspent</source> - <translation>Kunci terpakai.</translation> + <translation>Kunci unspent.</translation> </message> <message> <source>Unlock unspent</source> - <translation>Membuka kunci terpakai</translation> + <translation>Buka unspent</translation> </message> <message> <source>Copy quantity</source> @@ -626,8 +674,12 @@ <translation>Salin prioritas</translation> </message> <message> + <source>Copy dust</source> + <translation>Salin dust</translation> + </message> + <message> <source>Copy change</source> - <translation>Salin uang kembali</translation> + <translation>Salin kembalian</translation> </message> <message> <source>highest</source> @@ -674,6 +726,22 @@ <translation>tidak satupun</translation> </message> <message> + <source>This label turns red if the transaction size is greater than 1000 bytes.</source> + <translation>Label ini akan menjadi merah apabila ukuran transaksi melebihi 1000 bytes.</translation> + </message> + <message> + <source>This label turns red if the priority is smaller than "medium".</source> + <translation>Label ini akan menjadi merah apabila prioritasnya lebih kecil dari "sedang"</translation> + </message> + <message> + <source>This label turns red if any recipient receives an amount smaller than %1.</source> + <translation>Label ini akan menjadi merah apabila penerima menerima jumlah yang lebih kecil dari %1.</translation> + </message> + <message> + <source>Can vary +/- %1 satoshi(s) per input.</source> + <translation>Dapat beragam +/- %1 satoshi per input.</translation> + </message> + <message> <source>yes</source> <translation>ya</translation> </message> @@ -683,15 +751,15 @@ </message> <message> <source>This means a fee of at least %1 per kB is required.</source> - <translation>Berarti perlu biaya lebih dari %1 untuk setiap kB.</translation> + <translation>Perlu biaya lebih dari %1 untuk setiap kB.</translation> </message> <message> <source>Can vary +/- 1 byte per input.</source> - <translation>Boleh berbeda +/- 1 byte setiap masukan.</translation> + <translation>Dapat beragam +/- 1 byte per input.</translation> </message> <message> <source>Transactions with higher priority are more likely to get included into a block.</source> - <translation>Makin penting transaksinya, makin kemungkinan akan termasuk dalam blok.</translation> + <translation>Transaksi dengan prioritas lebih tinggi akan lebih cepat dimasukkan kedalam blok.</translation> </message> <message> <source>(no label)</source> @@ -699,11 +767,11 @@ </message> <message> <source>change from %1 (%2)</source> - <translation>uang kembali dari %1 (%2)</translation> + <translation>kembalian dari %1 (%2)</translation> </message> <message> <source>(change)</source> - <translation>(uang kembali)</translation> + <translation>(kembalian)</translation> </message> </context> <context> @@ -718,11 +786,11 @@ </message> <message> <source>The label associated with this address list entry</source> - <translation>Label yang terkait dengan daftar alamat yang dimasukkan ini</translation> + <translation>Label yang terkait dengan daftar alamat</translation> </message> <message> <source>The address associated with this address list entry. This can only be modified for sending addresses.</source> - <translation>Alamat yang terkait dengan entri buku alamat ini. Hanya dapat diubah untuk alamat pengirim.</translation> + <translation>Alamat yang terkait dengan daftar alamat. Hanya dapat diubah untuk alamat pengirim.</translation> </message> <message> <source>&Address</source> @@ -773,15 +841,15 @@ </message> <message> <source>Directory already exists. Add %1 if you intend to create a new directory here.</source> - <translation>Direktori masih ada. Tambahlah %1 kalau ingin membuat direktori baru disini.</translation> + <translation>Direktori masih ada. Tambahlah %1 apabila Anda ingin membuat direktori baru disini.</translation> </message> <message> <source>Path already exists, and is not a directory.</source> - <translation>Masih ada Path, dan path itu bukan direktori.</translation> + <translation>Sudah ada path, dan itu bukan direktori.</translation> </message> <message> <source>Cannot create data directory here.</source> - <translation>Tidak busa membuat direktori untuk data disini.</translation> + <translation>Tidak bisa membuat direktori data disini.</translation> </message> </context> <context> @@ -795,12 +863,16 @@ <translation>versi</translation> </message> <message> + <source>(%1-bit)</source> + <translation>(%1-bit)</translation> + </message> + <message> <source>About Bitcoin Core</source> <translation>Mengenai Bitcoin Core</translation> </message> <message> <source>Command-line options</source> - <translation>pilihan Perintah-baris</translation> + <translation>Pilihan Command-line</translation> </message> <message> <source>Usage:</source> @@ -808,9 +880,37 @@ </message> <message> <source>command-line options</source> - <translation>pilihan perintah-baris</translation> + <translation>pilihan command-line</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>Pilihan UI:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>Pilih direktori data saat memulai (default: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>Pilih bahasa, contoh "id_ID" (default: system locale)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Start minimized</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>Pilih sertifikat root SSL untuk permintaan pembayaran {default: -system-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>Tampilkan layar kilat saat memulai (default: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Reset semua pengaturan yang dibuat dari GUI</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -822,26 +922,42 @@ <translation>Selamat Datang ke Bitcoin Core</translation> </message> <message> + <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> + <translation>Ini adalah pertama kali program ini dijalankan, Anda dapat memilih dimana Bitcoin Core menyimpan data.</translation> + </message> + <message> + <source>Bitcoin Core will download and store a copy of the Bitcoin block chain. At least %1GB of data will be stored in this directory, and it will grow over time. The wallet will also be stored in this directory.</source> + <translation>Bitcoin Core akan mengunduh dan menyimpan salinan dari block chain Bitcoin. Setidaknya %1GB data akan disimpan di direktori ini, dan akan terus bertambah. Dompet Anda juga akan disimpan di direktori ini.</translation> + </message> + <message> <source>Use the default data directory</source> - <translation>Menggunakan direktori untuk data yang biasa.</translation> + <translation>Gunakan direktori data default.</translation> </message> <message> <source>Use a custom data directory:</source> - <translation>Menggunakan direktori data yang dipilih Anda:</translation> + <translation>Gunakan direktori pilihan Anda:</translation> </message> <message> <source>Bitcoin Core</source> <translation>Bitcoin Core</translation> </message> <message> + <source>Error: Specified data directory "%1" cannot be created.</source> + <translation>Kesalahan: Direktori data "%1" tidak dapat dibuat.</translation> + </message> + <message> <source>Error</source> - <translation>Gagal</translation> + <translation>Kesalahan</translation> </message> <message numerus="yes"> <source>%n GB of free space available</source> - <translation><numerusform>%n GB dari ruang yang tersedia</numerusform></translation> + <translation><numerusform>%n GB ruang kosong tersedia.</numerusform></translation> </message> - </context> + <message numerus="yes"> + <source>(of %n GB needed)</source> + <translation><numerusform>(dari %n GB yang dibutuhkan)</numerusform></translation> + </message> +</context> <context> <name>OpenURIDialog</name> <message> @@ -850,7 +966,7 @@ </message> <message> <source>Open payment request from URI or file</source> - <translation>Buka permintaan pembayaran dari URI atau arsip</translation> + <translation>Buka permintaan pembayaran dari URI atau data</translation> </message> <message> <source>URI:</source> @@ -858,11 +974,11 @@ </message> <message> <source>Select payment request file</source> - <translation>Pilihlah arsip permintaan pembayaran</translation> + <translation>Pilih data permintaan pembayaran</translation> </message> <message> <source>Select payment request file to open</source> - <translation>Pilihlah arsip permintaan pembayaran yang Anda ingin membuka</translation> + <translation>Pilih data permintaan pembayaran yang akan dibuka</translation> </message> </context> <context> @@ -876,24 +992,52 @@ <translation>&Utama</translation> </message> <message> + <source>Size of &database cache</source> + <translation>Ukuran cache &database</translation> + </message> + <message> <source>MB</source> <translation>MB</translation> </message> <message> + <source>Number of script &verification threads</source> + <translation>Jumlah script &verification threads</translation> + </message> + <message> + <source>Accept connections from outside</source> + <translation>Terima koneksi dari luar</translation> + </message> + <message> + <source>Allow incoming connections</source> + <translation>Perbolehkan koneksi masuk</translation> + </message> + <message> <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> <translation>Alamat IP proxy (cth. IPv4: 127.0.0.1 / IPv6: ::1)</translation> </message> <message> + <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source> + <translation>Minimalisasi aplikasi ketika jendela ditutup. Ketika pilihan ini dipilih, aplikasi akan menutup seluruhnya jika anda memilih Keluar di menu yang tersedia.</translation> + </message> + <message> + <source>The user interface language can be set here. This setting will take effect after restarting Bitcoin Core.</source> + <translation>Bahasa interface pengguna bisa diubah disini. Pengaturan ini akan memberikan efek setelah Bitcoin Core di-restart.</translation> + </message> + <message> + <source>Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source> + <translation>URL pihak ketika (misalnya sebuah block explorer) yang mumcul dalam tab transaksi sebagai konteks menu. %s dalam URL diganti dengan kode transaksi. URL dipisahkan dengan tanda vertikal |.</translation> + </message> + <message> <source>Third party transaction URLs</source> - <translation>Transaksi URLs pihak ketiga</translation> + <translation>URL transaksi pihak ketiga</translation> </message> <message> <source>Active command-line options that override above options:</source> - <translation>pilihan perintah-baris aktif menimpa atas pilihan-pilihan: </translation> + <translation>Pilihan command-line yang aktif menimpa diatas opsi: </translation> </message> <message> <source>Reset all client options to default.</source> - <translation>Reset setiap pilihan untuk pilihan biasa</translation> + <translation>Kembalikan semua pengaturan ke awal.</translation> </message> <message> <source>&Reset Options</source> @@ -904,6 +1048,18 @@ <translation>&Jaringan</translation> </message> <message> + <source>Automatically start Bitcoin Core after logging in to the system.</source> + <translation>Buka Bitcoin Core secara otomatis setelah Anda log-in ke sistem Anda.</translation> + </message> + <message> + <source>&Start Bitcoin Core on system login</source> + <translation>&Mulai Bitcoin Core saat log-in sistem</translation> + </message> + <message> + <source>(0 = auto, <0 = leave that many cores free)</source> + <translation>(0 = auto, <0 = leave that many cores free)</translation> + </message> + <message> <source>W&allet</source> <translation>D&ompet</translation> </message> @@ -913,7 +1069,7 @@ </message> <message> <source>Enable coin &control features</source> - <translation>Nyalain cara &pengaturan koin</translation> + <translation>Perbolehkan fitur &pengaturan koin</translation> </message> <message> <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source> @@ -932,6 +1088,10 @@ <translation>Petakan port dengan &UPnP</translation> </message> <message> + <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source> + <translation>Hubungkan ke jaringan Bitcoin melalui SOCKS5 proxy.</translation> + </message> + <message> <source>Proxy &IP:</source> <translation>IP Proxy:</translation> </message> @@ -1198,10 +1358,6 @@ <translation>Umum</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Menggunakan versi OpenSSL</translation> - </message> - <message> <source>Startup time</source> <translation>Waktu nyala</translation> </message> @@ -1596,6 +1752,10 @@ <translation>Hapus informasi dari form.</translation> </message> <message> + <source>Dust:</source> + <translation>Dust:</translation> + </message> + <message> <source>Clear &All</source> <translation>Hapus &Semua</translation> </message> @@ -1692,6 +1852,10 @@ <translation>(tidak ada label)</translation> </message> <message> + <source>Copy dust</source> + <translation>Salin dust</translation> + </message> + <message> <source>Are you sure you want to send?</source> <translation>Apakah Anda yakin ingin kirim?</translation> </message> diff --git a/src/qt/locale/bitcoin_it.ts b/src/qt/locale/bitcoin_it.ts index d510b1063b..2f14c42014 100644 --- a/src/qt/locale/bitcoin_it.ts +++ b/src/qt/locale/bitcoin_it.ts @@ -950,6 +950,10 @@ <translation>Errore</translation> </message> <message numerus="yes"> + <source>%n GB of free space available</source> + <translation><numerusform>GB di spazio libero disponibile</numerusform><numerusform>%n GB di spazio disponibile</numerusform></translation> + </message> + <message numerus="yes"> <source>(of %n GB needed)</source> <translation><numerusform>(di %nGB richiesti)</numerusform><numerusform>(%n GB richiesti)</numerusform></translation> </message> @@ -1471,10 +1475,6 @@ Per specificare piรน URL separarli con una barra verticale "|".</translation> <translation>Generale</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Versione OpenSSL in uso</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Versione BerkeleyDB in uso</translation> </message> @@ -2850,7 +2850,7 @@ Per specificare piรน URL separarli con una barra verticale "|".</translation> <name>UnitDisplayStatusBarControl</name> <message> <source>Unit to show amounts in. Click to select another unit.</source> - <translation>Unitร con cui visualizzare gli importi. Clicca per selezionare un altra unitร .</translation> + <translation>Unitร con cui visualizzare gli importi. Clicca per selezionare un'altra unitร .</translation> </message> </context> <context> @@ -3193,10 +3193,6 @@ Per specificare piรน URL separarli con una barra verticale "|".</translation> <translation>Opzioni portamonete:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Attenzione: questa versione รจ obsoleta. Aggiornamento necessario!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ร necessario ricostruire il database usando -reindex per cambiare -txindex</translation> </message> @@ -3293,10 +3289,6 @@ Per specificare piรน URL separarli con una barra verticale "|".</translation> <translation>Attivazione della blockchain migliore...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Trasmetti sempre le transazioni ricevute da peers whitelisted (default: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Prova a recuperare le chiavi private da un wallet corrotto all'avvio</translation> </message> diff --git a/src/qt/locale/bitcoin_it_IT.ts b/src/qt/locale/bitcoin_it_IT.ts new file mode 100644 index 0000000000..46ad0e9339 --- /dev/null +++ b/src/qt/locale/bitcoin_it_IT.ts @@ -0,0 +1,325 @@ +<TS language="it_IT" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Click destro per modificare indirizzo o etichetta</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Crea un nuovo indirizzo</translation> + </message> + <message> + <source>&New</source> + <translation>nuovo</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>copia l'indirizzo selezionato correntemente nella clipboard di sistema</translation> + </message> + <message> + <source>&Copy</source> + <translation>copia</translation> + </message> + <message> + <source>C&lose</source> + <translation>chiudi </translation> + </message> + <message> + <source>&Copy Address</source> + <translation>copia indirizzo </translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Cancella l'indirizzo attualmente selezionato dalla lista.</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Esportare i dati nella scheda corrente in un file</translation> + </message> + <message> + <source>&Export</source> + <translation>Esporta</translation> + </message> + <message> + <source>&Delete</source> + <translation>Cancella</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Scegli l'indirizzo a cui inviare denaro</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Scegli l'indirizzo con cui ricevere i coin</translation> + </message> + <message> + <source>C&hoose</source> + <translation>Scegli</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Indirizzi mittenti</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Indirizzi destinatari</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Questi sono gli indirizzi Bitcoin per l'invio di pagamenti. Controlla sempre la quantitร e l'indirizzo di ricezione prima di inviare monete.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Questi sono i tuoi indirizzi Bitcoin per ricevere pagamenti. Si raccomanda di generare un nuovo indirizzo per ogni transazione</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>copia etichetta</translation> + </message> + <message> + <source>&Edit</source> + <translation>Modifica</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Esporta lista degli indirizzi</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Contenuto del file separato da virgole (*.csv)</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Esportazione fallita</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>Etichetta</translation> + </message> + <message> + <source>Address</source> + <translation>Indirizzo</translation> + </message> + <message> + <source>(no label)</source> + <translation>(nessuna etichetta) +</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Enter passphrase</source> + <translation>Invia passphrase</translation> + </message> + <message> + <source>New passphrase</source> + <translation>Nuova passphrase</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>Ripeti nuova passphrase</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>Cifra portagoflio</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>Questa operazione richiede la passphrase del tuo portafoglio per sbloccare il portafoglio.</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>Sblocca portafoglio</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>decifra portafoglio</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>cambia passphrase</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>conferma cifrazione del portagoglio</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>portafoglio cifrato</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>sblocco portafoglio fallito</translation> + </message> + </context> +<context> + <name>BanTableModel</name> + <message> + <source>Banned Until</source> + <translation>bannato fino </translation> + </message> +</context> +<context> + <name>BitcoinGUI</name> + <message> + <source>&Transactions</source> + <translation>Transazioni</translation> + </message> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>(no label)</source> + <translation>(nessuna etichetta) +</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Indirizzo</translation> + </message> + <message> + <source>Label</source> + <translation>Etichetta</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Label</source> + <translation>Etichetta</translation> + </message> + <message> + <source>(no label)</source> + <translation>(nessuna etichetta) +</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(nessuna etichetta) +</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Label</source> + <translation>Etichetta</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Exporting Failed</source> + <translation>Esportazione fallita</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Contenuto del file separato da virgole (*.csv)</translation> + </message> + <message> + <source>Label</source> + <translation>Etichetta</translation> + </message> + <message> + <source>Address</source> + <translation>Indirizzo</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>Esporta</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Esportare i dati nella scheda corrente in un file</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_ja.ts b/src/qt/locale/bitcoin_ja.ts index 4344fd0436..06fd27fa16 100644 --- a/src/qt/locale/bitcoin_ja.ts +++ b/src/qt/locale/bitcoin_ja.ts @@ -1474,10 +1474,6 @@ <translation>ไธ่ฌ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ไฝฟ็จไธญใฎ OpenSSL ใฎใใผใธใงใณ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ไฝฟ็จไธญใฎBerkleyDBใใผใธใงใณ</translation> </message> @@ -2980,6 +2976,18 @@ <translation>ๅค้จใใใฎๆฅ็ถใ่จฑๅฏ (ๅๆๅค: -proxy ใพใใฏ -connect ใไฝฟ็จใใฆใใชใๅ ดๅใฏ1)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee ใ้ซใใใพใ๏ผใใใฏๆๆฐๆใฎๆจๅฎๆฉ่ฝใๅฉ็จใงใใชใๅ ดๅใซๆฏๆใใใฉใณใถใฏใทใงใณๆๆฐๆใงใใ</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>ๅๅใชใใผใฟใ่็ฉใใใฆใใชใๅ ดๅใซๆๆฐๆๆจๅฎๆฉ่ฝใๅฉ็จใใๆๆฐๆใฌใผใ (%s/kB) (ใใใฉใซใ: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>ใใฉใณใถใฏใทใงใณใฎไธญ็ถใ่กใฃใฆใใชใๅ ดๅใงใใใใฏใคใใชในใใฎใใขใใๅใๅใฃใไธญ็ถใใฉใณใถใฏใทใงใณใฏๅใๅใใใใซใใ (ใใใฉใซใ: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>ๆๅฎใฎใขใใฌในใธใใคใณใใใใใฎไธใงๅธธใซใชในใณใใพใใIPv6 ใฏ [ใในใๅ]:ใใผใ็ชๅท ใจ่กจ่จใใพใ</translation> </message> @@ -2996,6 +3004,10 @@ <translation>ใฆใฉใฌใใใฎๅๅผใๅคๆดใใ้ใซใณใใณใใๅฎ่ก (cmd ใฎ %s ใฏ TxID ใซ็ฝฎๆใใใ)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>ใใฏใคใใชในใใฎใใขใใๅใๅใฃใใใฉใณใถใฏใทใงใณใซ้ขใใฆใฏใใใจใใญใผใซใซใฎไธญ็ถใใชใทใผใซ้ๅใใฆใใใจใใฆใไธญ็ถใ่กใใใใซใใ (ใใใฉใซใ: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>ในใฏใชใใๆค่จผในใฌใใใ่จญๅฎ (%uใใ%dใฎ้, 0 = ่ชๅ, <0 = ใใใใใฎใณใขใ่ช็ฑใซใใฆใใ, ๅๆๅค: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>ใใฎใณใณใใฅใผใฟใฎ %s ใซใใคใณใใใใใจใใงใใพใใใใใใใ Bitcoin Core ใฏๆขใซๅฎ่กใใใฆใใพใใ</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>ใตใใผใใใใฆใใชใๅผๆฐ -whitelistalwaysrelay ใฏ็ก่ฆใใใพใใใ-whitelistrelay ใพใใฏ -whitelistforcerelay ใๅฉ็จใใฆใใ ใใ</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>ใชในใณ ใใผใใฎๅฒๅฝใซ UPnP ใไฝฟ็จ (ๅๆๅค: ใชในใณไธญใใใณ-proxyใๆๅฎใใใฆใใชใๅ ดๅใฏ1)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>่ญฆๅ๏ผ ใใใใฏใผใฏใฏๅฎๅ
จใซๅๆใใชใใฟใใใงใใใใคใใผใฏไฝใใฎๅ้กใ็ต้จใใฆใใฟใใใชใใงใใ</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>่ญฆๅ: ๆช็ฅใฎใใผใธใงใณใฎใใญใใฏใๆกๆใใใพใใใๆช็ฅใฎใซใผใซใๅฐๅ
ฅใใใๅฏ่ฝๆงใใใใพใ</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>่ญฆๅ๏ผ ใใขใผใจๅฎๅ
จใซๅๆใใชใใฟใใใงใ๏ผใขใใใฐใฌใผใใฏๅฟ
่ฆใใใใใพใใใใใใจใไปใฎใใผใใฏใขใใใฐใฌใผใใฏๅฟ
่ฆใใใใใพใใใ</translation> </message> @@ -3048,6 +3068,10 @@ <translation><category>ใฏไปฅไธใฎๅคใๆๅฎใงใใพใ๏ผ</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>ใฆใผใถใจใผใธใงใณใๆๅญๅใซใณใกใณใใ</translation> + </message> + <message> <source>Block creation options:</source> <translation>ใใญใใฏไฝๆใชใใทใงใณ:</translation> </message> @@ -3093,6 +3117,10 @@ <translation><address> ใซๅฏพใใ็ใใฉใณใถใฏใทใงใณใฎๅ
ฌ้ใๆๅนใซใใ</translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>ใกใขใชใใผใซๅ
ใฎใใฉใณใถใฏใทใงใณใฎ็ฝฎๆใๆๅนๅใใ (ใใใฉใซใ: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>ใใญใใฏ ใใผใฟใใผในใฎๅๆๅไธญใซใจใฉใผ</translation> </message> @@ -3129,10 +3157,22 @@ <translation>็กๅนใช -onion ใขใใฌใน๏ผ'%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>ไธๆญฃใช้ก -fallbackfee=<amount>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>ใใฉใณใถใฏใทใงใณใฎใกใขใชใปใใผใซใฎ็ท้ใ <n> ใกใฌใใคใไปฅไธใซ็ถญๆใใ (ๅๆๅค: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>่ช่จผใฏใใญใผใฎๅ ดๆ (ใใใฉใซใ: )</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>ไธญ็ถใๆกๆใ่กใฃใฆใใใใsigopใใใใฎๆๅฐใใคใๆฐ (ใใใฉใซใ: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>ไฝฟ็จๅฏ่ฝใชใใกใคใซใใฃในใฏใชใใฟใไธ่ถณใใฆใใพใใ</translation> </message> @@ -3141,6 +3181,10 @@ <translation><net> (ipv4, ipv6 ใพใใฏ onion) ใใใใฏใผใฏๅ
ใฎใใผใใ ใใซๆฅ็ถใใ</translation> </message> <message> + <source>Print version and exit</source> + <translation>ใใผใธใงใณใ่กจ็คบใ็ตไบ</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>ๅชๅฎๅคใฏ่ฒ ใฎๅคใซ่จญๅฎใงใใพใใใ</translation> </message> @@ -3197,10 +3241,6 @@ <translation>ใฆใฉใฌใใใชใใทใงใณ๏ผ</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>่ญฆๅ: ใใฎใใผใธใงใณใฏใตใใผใใใใพใใใใขใใใฐใฌใผใใๅฟ
่ฆใงใ๏ผ</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>-txindex ใๅคๆดใใใซใฏ -reindex ใไฝฟ็จใใฆใใผใฟใใผในใๅๆง็ฏใใๅฟ
่ฆใใใใพใ</translation> </message> @@ -3297,10 +3337,6 @@ <translation>ๆๅช่ฏใฎใใงใคใณใๆๅนๅใใฆใใพใ...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>ใใฏใคใใชในใใซใใใใขใใๅใๅใฃใใใฉใณใถใฏใทใงใณใๅธธใซใชใฌใผใใ (ๅๆๅค: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>่ตทๅๆใซๅฃใใ wallet.dat ใใ็งๅฏ้ตใๅพฉๆงใใใใจใ่ฉฆใ</translation> </message> @@ -3465,6 +3501,10 @@ <translation>่ญฆๅ</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>่ญฆๅ: ๆช็ฅใฎๆฐใใใซใผใซใๆๅนๅใใใพใใ (ใใผใธใงใณใใใ %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>ใใญใใฏ้ๅฎใขใผใใซใใใฆๅไฝใ่กใใใฉใใ (ๅๆๅค: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_ka.ts b/src/qt/locale/bitcoin_ka.ts index 11c73ec767..1a072d1df1 100644 --- a/src/qt/locale/bitcoin_ka.ts +++ b/src/qt/locale/bitcoin_ka.ts @@ -1112,10 +1112,6 @@ <translation>แกแแแ แแ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>OpenSSL-แแก แแแ แกแแ</translation> - </message> - <message> <source>Startup time</source> <translation>แกแขแแ แขแแก แแ แ</translation> </message> diff --git a/src/qt/locale/bitcoin_ko_KR.ts b/src/qt/locale/bitcoin_ko_KR.ts index ce48ce249f..34aeafcd5c 100644 --- a/src/qt/locale/bitcoin_ko_KR.ts +++ b/src/qt/locale/bitcoin_ko_KR.ts @@ -11,7 +11,7 @@ </message> <message> <source>&New</source> - <translation>์ ํญ๋ชฉ(N)</translation> + <translation>์ ํญ๋ชฉ(&N)</translation> </message> <message> <source>Copy the currently selected address to the system clipboard</source> @@ -19,11 +19,11 @@ </message> <message> <source>&Copy</source> - <translation>๋ณต์ฌ</translation> + <translation>๋ณต์ฌ(&C)</translation> </message> <message> <source>C&lose</source> - <translation>๋ซ๊ธฐ (L)</translation> + <translation>๋ซ๊ธฐ(&L)</translation> </message> <message> <source>&Copy Address</source> @@ -39,11 +39,11 @@ </message> <message> <source>&Export</source> - <translation>&๋ด๋ณด๋ด๊ธฐ</translation> + <translation>๋ด๋ณด๋ด๊ธฐ(&E)</translation> </message> <message> <source>&Delete</source> - <translation>&์ญ์ </translation> + <translation>์ญ์ (&D)</translation> </message> <message> <source>Choose the address to send coins to</source> @@ -55,7 +55,7 @@ </message> <message> <source>C&hoose</source> - <translation>์ ํํ๊ธฐ (H)</translation> + <translation>์ ํํ๊ธฐ(&H)</translation> </message> <message> <source>Sending addresses</source> @@ -67,7 +67,7 @@ </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> - <translation>๋นํธ์ฝ์ธ์ ๋ฐ๋ ๊ณ์ข ์ฃผ์์
๋๋ค. ์ฝ์ธ์ ๋ณด๋ด๊ธฐ ์ ์ ์๊ณ ์ ๋ฐ๋ ์ฃผ์๋ฅผ ํญ์ ํ์ธํ์ธ์.</translation> + <translation>๋นํธ์ฝ์ธ์ ๋ณด๋ด๋ ๊ณ์ข ์ฃผ์์
๋๋ค. ์ฝ์ธ์ ๋ณด๋ด๊ธฐ ์ ์ ์๊ณ ์ ๋ฐ๋ ์ฃผ์๋ฅผ ํญ์ ํ์ธํ์ธ์.</translation> </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> @@ -75,11 +75,11 @@ </message> <message> <source>Copy &Label</source> - <translation>๋ผ๋ฒจ ๋ณต์ฌ</translation> + <translation>๋ผ๋ฒจ ๋ณต์ฌ(&L)</translation> </message> <message> <source>&Edit</source> - <translation>ํธ์ง&</translation> + <translation>ํธ์ง(&E)</translation> </message> <message> <source>Export Address List</source> @@ -168,6 +168,10 @@ <translation>์ง๊ฐ ์ํธํ๋ฅผ ํ์ฉํ์๊ฒ ์ต๋๊น?</translation> </message> <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>๋นํธ์ฝ์ธ ์ฝ์ด๋ ์ํธํ ๊ณผ์ ์ ๋ง๋ฌด๋ฆฌ ํ๊ธฐ ์ํด ์ข
๋ฃ๋ฉ๋๋ค. ๋น์ ์ ์ง๊ฐ์ ์ํธํํ๋ ๊ฒ์ด ์ฌ๋ฌ๋ถ์ ์ปดํจํฐ์ ํด๋ฅผ ๋ผ์น๋ ํ๋ก๊ทธ๋จ์ผ๋ก๋ถํฐ ์ฌ๋ฌ๋ถ์ ๋นํธ์ฝ์ธ์ ์์ ํ ๋ณดํธํด์ฃผ์ง๋ ๋ชปํ๋ค๋ ์ฌ์ค์ ๊ธฐ์ตํ์ญ์์ค.</translation> + </message> + <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> <translation>์ค์: ๋ณธ์ธ ์ง๊ฐํ์ผ์์ ๋ง๋ ์์ ๋ฐฑ์
๋ค์ ์๋ก ์์ฑํ ์ํธํ ๋ ์ง๊ฐ ํ์ผ๋ก ๊ต์ฒด๋ฉ๋๋ค. ๋ณด์์ ์ด์ ๋ก ์ด์ ์ ์ํธํ ํ์ง ์์ ์ง๊ฐ ํ์ผ ๋ฐฑ์
์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ ๋น ๋ฅธ ์์ผ ๋ด๋ก ์๋ก ์ํธํ ๋ ์ง๊ฐ์ ์ฌ์ฉํ์๊ธฐ ๋ฐ๋๋๋ค.</translation> </message> @@ -180,6 +184,10 @@ <translation>์ง๊ฐ ์ํธํ ์๋ฃ</translation> </message> <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>์ง๊ฐ์ ์๋ก์ด ๋น๋ฐ๋ฌธ๊ตฌ๋ฅผ ์
๋ ฅํ์ธ์.<br/>๋น๋ฐ๋ฌธ๊ตฌ๋ฅผ <b>์ด ๊ฐ ์ด์์ ๋ฌด์์ ๊ธ์</b> ํน์ <b>์ฌ๋๊ฐ ์ด์์ ๋จ์ด๋ก<b> ์ ํ์ธ์.</translation> + </message> + <message> <source>Enter the old passphrase and new passphrase to the wallet.</source> <translation>์ง๊ฐ์ ๊ธฐ์กด ์ํธ์ ์๋ก์ด ์ํธ๋ฅผ ์
๋ ฅํด์ฃผ์ธ์.</translation> </message> @@ -189,7 +197,7 @@ </message> <message> <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> - <translation>์ง๊ฐ ์ํธํ๋ ๋ด๋ถ ์๋ฌ๋ก ์ธํด ์คํจํ์ต๋๋ค. ๋น์ ์ ์ง๊ฐ์ ์ํธํ ๋์ง ์์์ต๋๋ค.</translation> + <translation>์ง๊ฐ ์ํธํ๋ ๋ด๋ถ ์ค๋ฅ๋ก ์ธํด ์คํจํ์ต๋๋ค. ๋น์ ์ ์ง๊ฐ์ ์ํธํ ๋์ง ์์์ต๋๋ค.</translation> </message> <message> <source>The supplied passphrases do not match.</source> @@ -214,12 +222,20 @@ </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP์ฃผ์/๋ท๋ง์คํฌ</translation> + </message> + <message> + <source>Banned Until</source> + <translation>๋ค์๊ณผ ๊ฐ์ ์ํฉ์ด ๋ ๋๊น์ง ๊ณ์ ์ ์ง๋ฉ๋๋ค.</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> <source>Sign &message...</source> - <translation>๋ฉ์์ง ์๋ช
&...</translation> + <translation>๋ฉ์์ง ์๋ช
(&M)...</translation> </message> <message> <source>Synchronizing with network...</source> @@ -227,7 +243,7 @@ </message> <message> <source>&Overview</source> - <translation>&๊ฐ์</translation> + <translation>๊ฐ์(&O)</translation> </message> <message> <source>Node</source> @@ -239,7 +255,7 @@ </message> <message> <source>&Transactions</source> - <translation>&๊ฑฐ๋</translation> + <translation>๊ฑฐ๋(&T)</translation> </message> <message> <source>Browse transaction history</source> @@ -251,11 +267,11 @@ </message> <message> <source>Quit application</source> - <translation>์ ์ฉ ์ค๋จ</translation> + <translation>์ดํ๋ฆฌ์ผ์ด์
์ข
๋ฃ</translation> </message> <message> <source>About &Qt</source> - <translation>Qt ์ ๋ณด(&Q)</translation> + <translation>&Qt ์ ๋ณด</translation> </message> <message> <source>Show information about Qt</source> @@ -263,31 +279,31 @@ </message> <message> <source>&Options...</source> - <translation>&์ต์
</translation> + <translation>์ต์
(&O)</translation> </message> <message> <source>&Encrypt Wallet...</source> - <translation>์ง๊ฐ ์ํธํ&...</translation> + <translation>์ง๊ฐ ์ํธํ(&E)...</translation> </message> <message> <source>&Backup Wallet...</source> - <translation>์ง๊ฐ ๋ฐฑ์
&...</translation> + <translation>์ง๊ฐ ๋ฐฑ์
(&B)...</translation> </message> <message> <source>&Change Passphrase...</source> - <translation>์ํธ๋ฌธ ๋ณ๊ฒฝ&...</translation> + <translation>์ํธ๋ฌธ ๋ณ๊ฒฝ(&C)...</translation> </message> <message> <source>&Sending addresses...</source> - <translation>&์ฃผ์ ๋ณด๋ด๋ ์ค</translation> + <translation>๋ณด๋ด๋ ์ฃผ์(&S)</translation> </message> <message> <source>&Receiving addresses...</source> - <translation>& ์ฃผ์ ๋ฐ๋ ์ค</translation> + <translation>๋ฐ๋ ์ฃผ์(&R)</translation> </message> <message> <source>Open &URI...</source> - <translation>URI&์ด๊ธฐ...</translation> + <translation>&URI ์ด๊ธฐ...</translation> </message> <message> <source>Bitcoin Core client</source> @@ -315,7 +331,7 @@ </message> <message> <source>&Debug window</source> - <translation>๋๋ฒ๊ทธ ์ฐฝ&</translation> + <translation>๋๋ฒ๊ทธ ์ฐฝ(&D)</translation> </message> <message> <source>Open debugging and diagnostic console</source> @@ -323,7 +339,7 @@ </message> <message> <source>&Verify message...</source> - <translation>๋ฉ์์ง ํ์ธ&...</translation> + <translation>๋ฉ์์ง ํ์ธ(&V)...</translation> </message> <message> <source>Bitcoin</source> @@ -367,15 +383,15 @@ </message> <message> <source>&File</source> - <translation>&ํ์ผ</translation> + <translation>ํ์ผ(&F)</translation> </message> <message> <source>&Settings</source> - <translation>&์ค์ </translation> + <translation>์ค์ (&S)</translation> </message> <message> <source>&Help</source> - <translation>&๋์๋ง</translation> + <translation>๋์๋ง(&H)</translation> </message> <message> <source>Tabs toolbar</source> @@ -391,7 +407,11 @@ </message> <message> <source>&About Bitcoin Core</source> - <translation>&๋นํธ์ฝ์ธ ์ฝ์ด ์๊ฐ</translation> + <translation>๋นํธ์ฝ์ธ ์ฝ์ด ์๊ฐ(&A)</translation> + </message> + <message> + <source>Modify configuration options for Bitcoin Core</source> + <translation>๋นํธ์ฝ์ธ ์ฝ์ด์ ๋ํ ์ค์ ์ ์์ ํฉ๋๋ค.</translation> </message> <message> <source>Show the list of used sending addresses and labels</source> @@ -407,17 +427,25 @@ </message> <message> <source>&Command-line options</source> - <translation>๋ช
๋ น์ด-๋ผ์ธ ์ต์
</translation> + <translation>๋ช
๋ น์ค ์ต์
(&C)</translation> </message> <message> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> - <translation>์ฌ์ฉํ ์ ์๋ ๋นํธ์ฝ์ธ ๋ช
๋ น์ด ์ต์
๋ชฉ๋ก์ ๊ฐ์ ธ์ค๊ธฐ ์ํด Bitcoin-Qt ๋์๋ง ๋ฉ์์ง๋ฅผ ํ์ํฉ๋๋ค.</translation> + <translation>์ฌ์ฉํ ์ ์๋ ๋นํธ์ฝ์ธ ๋ช
๋ น์ค ์ต์
๋ชฉ๋ก์ ๊ฐ์ ธ์ค๊ธฐ ์ํด Bitcoin-Qt ๋์๋ง ๋ฉ์์ง๋ฅผ ํ์ํฉ๋๋ค.</translation> + </message> + <message numerus="yes"> + <source>%n active connection(s) to Bitcoin network</source> + <translation><numerusform>๋นํธ์ฝ์ธ ๋คํธ์ํฌ์ %n๊ฐ์ ์ฐ๊ฒฐ์ด ํ์ฑํ๋์ด ์์ต๋๋ค.</numerusform></translation> </message> <message> <source>No block source available...</source> <translation>์ฌ์ฉ ๊ฐ๋ฅํ ๋ธ๋ก์ด ์์ต๋๋ค...</translation> </message> <message numerus="yes"> + <source>Processed %n block(s) of transaction history.</source> + <translation><numerusform>%n ๋ธ๋ญ ๋งํผ์ ๊ฑฐ๋ ๊ธฐ๋ก์ด ์ฒ๋ฆฌ๋จ.</numerusform></translation> + </message> + <message numerus="yes"> <source>%n hour(s)</source> <translation><numerusform>%n์๊ฐ</numerusform></translation> </message> @@ -575,7 +603,15 @@ </message> <message> <source>Amount</source> - <translation>๊ฑฐ๋๋</translation> + <translation>๊ฑฐ๋์ก</translation> + </message> + <message> + <source>Received with label</source> + <translation>์
๊ธ๊ณผ ํจ๊ป ์์ ๋ ๋ผ๋ฒจ</translation> + </message> + <message> + <source>Received with address</source> + <translation>์
๊ธ๊ณผ ํจ๊ป ์์ ๋ ์ฃผ์</translation> </message> <message> <source>Date</source> @@ -599,11 +635,11 @@ </message> <message> <source>Copy label</source> - <translation>ํ ๋ณต์ฌํ๊ธฐ</translation> + <translation>๋ผ๋ฒจ ๋ณต์ฌํ๊ธฐ</translation> </message> <message> <source>Copy amount</source> - <translation>๊ฑฐ๋๋ ๋ณต์ฌ</translation> + <translation>๊ฑฐ๋์ก ๋ณต์ฌ</translation> </message> <message> <source>Copy transaction ID</source> @@ -638,6 +674,14 @@ <translation>์ฐ์ ๋ ๋ณต์ฌ</translation> </message> <message> + <source>Copy dust</source> + <translation>๋์คํธ ๋ณต์ฌ</translation> + </message> + <message> + <source>Copy change</source> + <translation>์๋ ๋ณต์ฌ</translation> + </message> + <message> <source>highest</source> <translation>์์ฃผ ๋์</translation> </message> @@ -682,6 +726,22 @@ <translation>์์</translation> </message> <message> + <source>This label turns red if the transaction size is greater than 1000 bytes.</source> + <translation>์ด ๋ผ๋ฒจ์ 1000๋ฐ์ดํธ ์ด์์ ๊ฑฐ๋๊ฐ ์ด๋ฃจ์ด์ง๋ฉด ๋ถ๊ฒ ๋ณํฉ๋๋ค.</translation> + </message> + <message> + <source>This label turns red if the priority is smaller than "medium".</source> + <translation>์ด ๋ผ๋ฒจ์ ์ฐ์ ์์๊ฐ "๋ณดํต" ์ดํ์ธ ๊ฒฝ์ฐ ๋ถ๊ฒ ๋ณํฉ๋๋ค.</translation> + </message> + <message> + <source>This label turns red if any recipient receives an amount smaller than %1.</source> + <translation>์ด ๋ผ๋ฒจ์ ์๋ น์ธ์ด ๋ฐ์ ์ก์๊ฐ ์๊ณ ์ %1๋ณด๋ค ์์ผ๋ฉด ๋ถ๊ฒ ๋ณํฉ๋๋ค.</translation> + </message> + <message> + <source>Can vary +/- %1 satoshi(s) per input.</source> + <translation>์
๋ ฅ๋ง๋ค +/- %1 ์ฌํ ์๊ฐ ๋ณํ ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>yes</source> <translation>์</translation> </message> @@ -691,7 +751,11 @@ </message> <message> <source>This means a fee of at least %1 per kB is required.</source> - <translation>์ด ์๋ฏธ๋ ์์๋ฃ๊ฐ ์ต์ํ %1 per ํค๋ก๋ฐ์ดํธ ํ์ํฉ๋๋ค</translation> + <translation>์ด ๋ป์ ์ต์ํ 1kB ๋น %1์ ์์๋ฃ๊ฐ ํ์ํ๋ค๋ ์๋ฏธ์
๋๋ค.</translation> + </message> + <message> + <source>Can vary +/- 1 byte per input.</source> + <translation>์
๋ ฅ๋ง๋ค +/- 1 ๋ฐ์ดํธ๊ฐ ๋ณํ ์ ์์ต๋๋ค.</translation> </message> <message> <source>Transactions with higher priority are more likely to get included into a block.</source> @@ -699,13 +763,17 @@ </message> <message> <source>(no label)</source> - <translation>(ํ ์์)</translation> + <translation>(๋ผ๋ฒจ ์์)</translation> </message> <message> <source>change from %1 (%2)</source> <translation>~๋ก๋ถํฐ ๋ณ๊ฒฝ %1 (%2)</translation> </message> - </context> + <message> + <source>(change)</source> + <translation>(์๋)</translation> + </message> +</context> <context> <name>EditAddressDialog</name> <message> @@ -714,15 +782,19 @@ </message> <message> <source>&Label</source> - <translation>&ํ</translation> + <translation>๋ผ๋ฒจ(&L)</translation> </message> <message> <source>The label associated with this address list entry</source> <translation>ํ์ฌ ์ ํ๋ ์ฃผ์ ํ๋์ ์ ๋ชฉ์
๋๋ค. </translation> </message> <message> + <source>The address associated with this address list entry. This can only be modified for sending addresses.</source> + <translation>๋ณธ ์ฃผ์๋ก ์
๋ ฅ์ ์ฃผ์์ ์ฐ๊ณ๋์์ต๋๋ค. ์ด๊ฒ์ ๋ณด๋ด๋ ์ฃผ์๋ค์์๋ง ๋ณ๊ฒฝ๋ ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>&Address</source> - <translation>&์ฃผ์</translation> + <translation>์ฃผ์(&A)</translation> </message> <message> <source>New receiving address</source> @@ -754,7 +826,7 @@ </message> <message> <source>New key generation failed.</source> - <translation>์๋ก์ด ํค ์์ฑ์ด ์คํจํ์์ต๋๋ค</translation> + <translation>์๋ก์ด ํค ์์ฑ์ด ์คํจํ์์ต๋๋ค.</translation> </message> </context> <context> @@ -810,7 +882,35 @@ <source>command-line options</source> <translation>๋ช
๋ น์ค ์ต์
</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>UI ์ต์
:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>์คํ์ ๋ฐ์ดํฐ ํด๋ ์ ํํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>"ko_KR"์ ๊ฐ์ด ์ธ์ด๋ฅผ ์ค์ ํ์ญ์์ค (๊ธฐ๋ณธ๊ฐ: ์์คํ
๋ก์บ)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>์ต์ํ๋ ์ํ์์ ์์</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>์ง๋ถ ์์ฒญ์ ์ํ SSL ๋ฃจํธ ์ธ์ฆ์ ์ค์ (๊ธฐ๋ณธ๊ฐ: -system-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>์คํ์ ์์ํ๋ฉด ๋ณด๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>GUI๋ฅผ ํตํด ์์ ๋ ๋ชจ๋ ์ค์ ์ ์ด๊ธฐํ</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -819,7 +919,7 @@ </message> <message> <source>Welcome to Bitcoin Core.</source> - <translation>๋นํธ์ฝ์ธ ์ฝ์ด์ ์ค์ ๊ฒ์ ํ์ํฉ๋.</translation> + <translation>๋นํธ์ฝ์ธ ์ฝ์ด์ ์ค์ ๊ฒ์ ํ์ํฉ๋๋ค.</translation> </message> <message> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> @@ -842,10 +942,22 @@ <translation>๋นํธ์ฝ์ธ ์ฝ์ด</translation> </message> <message> + <source>Error: Specified data directory "%1" cannot be created.</source> + <translation>์ค๋ฅ: "%1" ์ง์ ํ ๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ๋ฅผ ์์ฑํ ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>Error</source> <translation>์ค๋ฅ</translation> </message> - </context> + <message numerus="yes"> + <source>%n GB of free space available</source> + <translation><numerusform>%n GB ์ฌ์ฉ๊ฐ๋ฅ</numerusform></translation> + </message> + <message numerus="yes"> + <source>(of %n GB needed)</source> + <translation><numerusform>(%n GB๊ฐ ํ์)</numerusform></translation> + </message> +</context> <context> <name>OpenURIDialog</name> <message> @@ -873,7 +985,7 @@ <name>OptionsDialog</name> <message> <source>Options</source> - <translation>์ ํ๋ค</translation> + <translation>ํ๊ฒฝ์ค์ </translation> </message> <message> <source>&Main</source> @@ -881,7 +993,7 @@ </message> <message> <source>Size of &database cache</source> - <translation>๋ฐ์ดํฐ๋ฒ ์ด์ค ์บ์ ํฌ๊ธฐ</translation> + <translation>๋ฐ์ดํฐ๋ฒ ์ด์ค ์บ์ ํฌ๊ธฐ(&D)</translation> </message> <message> <source>MB</source> @@ -889,7 +1001,7 @@ </message> <message> <source>Number of script &verification threads</source> - <translation>์คํฌ๋ฆฝํธ ์ธ์ฆ ์ฐ๋ ๋์ ๊ฐ์</translation> + <translation>์คํฌ๋ฆฝํธ ์ธ์ฆ ์ฐ๋ ๋์ ๊ฐ์(&V)</translation> </message> <message> <source>Accept connections from outside</source> @@ -901,7 +1013,19 @@ </message> <message> <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> - <translation>ํ๋ก์ ์์ดํผ ์ฃผ์(์. IPv4:127.0.0.1 / IPv6: ::1)</translation> + <translation>ํ๋ก์ ์์ดํผ ์ฃผ์ (์. IPv4:127.0.0.1 / IPv6: ::1)</translation> + </message> + <message> + <source>Minimize instead of exit the application when the window is closed. When this option is enabled, the application will be closed only after selecting Exit in the menu.</source> + <translation>์ฐฝ์ ๋ซ์ผ๋ฉด ์ข
๋ฃ ๋์ ํธ๋ ์ด๋ก ๋ณด๋ด๊ธฐ. ์ด ์ต์
์ ํ์ฑํํ๋ฉด ๋ฉ๋ด์์ ์ข
๋ฃ๋ฅผ ์ ํํ ํ์๋ง ์ดํ๋ฆฌ์ผ์ด์
์ด ์ข
๋ฃ๋ฉ๋๋ค.</translation> + </message> + <message> + <source>The user interface language can be set here. This setting will take effect after restarting Bitcoin Core.</source> + <translation>์ฌ์ฉ์ ์ธํฐํ์ด์ค ์ธ์ด๋ฅผ ์ฌ๊ธฐ์ ์ค์ ํ ์ ์์ต๋๋ค. ์ด ์ค์ ์ Bitcoin Core๋ฅผ ๋ค์ ์์ํ ๋ ์ ์ฉ๋ฉ๋๋ค.</translation> + </message> + <message> + <source>Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source> + <translation>์๋-ํํฐ URLs (์. ๋ธ๋ก ํ์๊ธฐ)๋ ๊ฑฐ๋ ํญ์ ์ปจํ
์คํธ ๋ฉ๋ด์ ๋ํ๋ฉ๋๋ค. URL์ %s๋ ํธ๋์ญ์
ํด์๊ฐ์ผ๋ก ๋์ฒด๋ฉ๋๋ค. ์ฌ๋ฌ URLs๋ ์์ง ๋ฐ | ์์ ๋๋์ด ์ง๋๋ค.</translation> </message> <message> <source>Third party transaction URLs</source> @@ -909,7 +1033,7 @@ </message> <message> <source>Active command-line options that override above options:</source> - <translation>๋ช
๋ น์ด ๋ผ์ธ ์ต์
์ ํ์ฑํํด์ ์ต์
์ ์ฐํํ์์ค</translation> + <translation>๋ช
๋ น์ค ์ต์
ํ์ฑํ๋ ์์ ์ต์
๋ค์ ๋์ฒดํฉ๋๋ค:</translation> </message> <message> <source>Reset all client options to default.</source> @@ -924,8 +1048,20 @@ <translation>๋คํธ์ํฌ(&N)</translation> </message> <message> + <source>Automatically start Bitcoin Core after logging in to the system.</source> + <translation>์์คํ
๋ก๊ทธ์ธ ํ ์๋์ผ๋ก Bitcoin Core๋ฅผ ์คํํฉ๋๋ค.</translation> + </message> + <message> + <source>&Start Bitcoin Core on system login</source> + <translation>์์คํ
๋ก๊ทธ์ธ ํ Bitcoin Core ์์(&S)</translation> + </message> + <message> + <source>(0 = auto, <0 = leave that many cores free)</source> + <translation>(0 = ์๋, <0 = ์ง์ ๋ ์ฝ์ด ๊ฐ์๋งํผ ์ฌ์ฉ ์ํจ)</translation> + </message> + <message> <source>W&allet</source> - <translation>์ง๊ฐ</translation> + <translation>์ง๊ฐ(&A)</translation> </message> <message> <source>Expert</source> @@ -933,19 +1069,23 @@ </message> <message> <source>Enable coin &control features</source> - <translation>์ฝ์ธ ์์ธ ์ ์ด๊ธฐ๋ฅ์ ํ์ฑํํฉ๋๋ค - &C</translation> + <translation>์ฝ์ธ ์์ธ ์ ์ด๊ธฐ๋ฅ์ ํ์ฑํํฉ๋๋ค (&C)</translation> + </message> + <message> + <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source> + <translation>๊ฒ์ฆ๋์ง ์์ ์๋ ์ฐ๊ธฐ๋ฅผ ๋นํ์ฑํํ๋ฉด ํธ๋์ญ์
์ด ์ ์ด๋ 1ํ ์ด์ ๊ฒ์ฆ๋๊ธฐ ์ ๊น์ง ๊ทธ ํธ๋์ญ์
์ ๊ฑฐ์ค๋ฆ๋์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๋ ์์ก ๊ณ์ฐ ๋ฐฉ๋ฒ์๋ ์ํฅ์ ๋ฏธ์นฉ๋๋ค.</translation> </message> <message> <source>&Spend unconfirmed change</source> - <translation>&ํ์ธ๋์ง ์์ ๋์ ์ฐ๋ค</translation> + <translation>๊ฒ์ฆ๋์ง ์์ ์๋ ์ฐ๊ธฐ (&S)</translation> </message> <message> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> - <translation>๋ผ์ฐํฐ์ ๋นํธ์ฝ์ธ ํด๋ผ์ด์ธํธ ํฌํธ๋ฅผ ์๋์ผ๋ก ์ฝ๋๋ค. ๋ผ์ฐํฐ์์ UPnP๋ฅผ ์ง์ํ๊ณ ํ์ฑํ ํ์ ๊ฒฝ์ฐ์๋ง ๋์ํฉ๋๋ค.</translation> + <translation>๋ผ์ฐํฐ์์ Bitcoin ํด๋ผ์ด์ธํธ ํฌํธ๋ฅผ ์๋์ ์ผ๋ก ์ฝ๋๋ค. ๋ผ์ฐํฐ์์ UPnP๋ฅผ ์ง์ํ๊ณ ํ์ฑํ ํ์ ๊ฒฝ์ฐ์๋ง ๋์ํฉ๋๋ค.</translation> </message> <message> <source>Map port using &UPnP</source> - <translation>์ฌ์ฉ์ค์ธ UPnP ํฌํธ ๋งคํ(&U)</translation> + <translation>์ฌ์ฉ์ค์ธ &UPnP ํฌํธ ๋งคํ</translation> </message> <message> <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source> @@ -953,11 +1093,11 @@ </message> <message> <source>&Connect through SOCKS5 proxy (default proxy):</source> - <translation>SOCKS5 ํ๋ก์๋ฅผ ๊ฑฐ์ณ ์ฐ๊ฒฐํฉ๋๋ค (๊ธฐ๋ณธ๊ฐ ํ๋ก์):</translation> + <translation>SOCKS5 ํ๋ก์๋ฅผ ๊ฑฐ์ณ ์ฐ๊ฒฐํฉ๋๋ค(&C) (๊ธฐ๋ณธ ํ๋ก์):</translation> </message> <message> <source>Proxy &IP:</source> - <translation>ํ๋ก์ IP(&I):</translation> + <translation>ํ๋ก์ &IP:</translation> </message> <message> <source>&Port:</source> @@ -968,6 +1108,14 @@ <translation>ํ๋ก์์ ํฌํธ๋ฒํธ์
๋๋ค(์: 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>ํผ์ด์ ์ฐ๊ฒฐํ๊ธฐ ์ํด ์ฌ์ฉ๋ ๋ฐฉ๋ฒ:</translation> + </message> + <message> + <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> + <translation>์ด SOCK5 ํ๋ก์๋ฅผ ํต๊ณผํด ํผ์ด์ ์ ์ํ ๋คํธ์ํฌ ์ ํ์ด ํ์๋ฉ๋๋ค.</translation> + </message> + <message> <source>IPv4</source> <translation>IPv4</translation> </message> @@ -980,6 +1128,14 @@ <translation>Tor</translation> </message> <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Tor ์๋น์ค๋ฅผ ๊ฒฝ์ ํ์ฌ ๋นํธ์ฝ์ธ ๋คํธ์ํฌ์ ์ฐ๊ฒฐํ๊ธฐ ์ํด ๋ถ๋ฆฌ๋ SOCKS5 ํ๋ก์๋ฅผ ์ฌ์ฉ.</translation> + </message> + <message> + <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> + <translation>Tor ์๋น์ค๋ฅผ ์ด์ฉํ์ฌ ํผ์ด์๊ฒ ์ฐ๊ฒฐํ๊ธฐ ์ํด ๋ถ๋ฆฌ๋ SOCKS5 ํ๋ก์ ์ฌ์ฉ</translation> + </message> + <message> <source>&Window</source> <translation>์ฐฝ(&W)</translation> </message> @@ -1040,6 +1196,10 @@ <translation>๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉํ๊ธฐ ์ํด์๋ ํ๋ก๊ทธ๋จ์ด ์ข
๋ฃ ํ ์ฌ์์๋์ด์ผ ํฉ๋๋ค.</translation> </message> <message> + <source>Client will be shut down. Do you want to proceed?</source> + <translation>ํด๋ผ์ด์ธํธ๊ฐ ์ข
๋ฃ๋ฉ๋๋ค, ๊ณ์ ์งํํ์๊ฒ ์ต๋๊น?</translation> + </message> + <message> <source>This change would require a client restart.</source> <translation>์ด ๋ณ๊ฒฝ ์ฌํญ ์ ์ฉ์ ์ํด ํ๋ก๊ทธ๋จ ์ฌ์์์ด ํ์ํฉ๋๋ค. </translation> </message> @@ -1056,7 +1216,7 @@ </message> <message> <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source> - <translation>ํ์ํ ์ ๋ณด๊ฐ ์ค๋๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋นํธ์ฝ์ธ ๋คํธ์ํฌ์ ์ฐ๊ฒฐํ๊ณ ๋ ๋ค์์ ์ง๊ฐ์ ์๋์ผ๋ก ๋๊ธฐํ ํ์ง๋ง, ์์ง ๊ณผ์ ์ด ๋๋์ง๋ ์์์ต๋๋ค.</translation> + <translation>ํ์๋ ์ ๋ณด๊ฐ ์ค๋๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋นํธ์ฝ์ธ ๋คํธ์ํฌ์ ์ฐ๊ฒฐํ๊ณ ๋ ๋ค์์ ์ง๊ฐ์ ์๋์ผ๋ก ๋๊ธฐํ ํ์ง๋ง, ์์ง ๊ณผ์ ์ด ๋๋์ง๋ ์์์ต๋๋ค.</translation> </message> <message> <source>Watch-only:</source> @@ -1103,10 +1263,26 @@ <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ์ ํ์ฌ ์์ก</translation> </message> <message> + <source>Spendable:</source> + <translation>์ฌ์ฉ๊ฐ๋ฅ:</translation> + </message> + <message> <source>Recent transactions</source> <translation>์ต๊ทผ ๊ฑฐ๋</translation> </message> - </context> + <message> + <source>Unconfirmed transactions to watch-only addresses</source> + <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ์ ๊ฒ์ฆ๋์ง ์์ ํธ๋์ญ์
</translation> + </message> + <message> + <source>Mined balance in watch-only addresses that has not yet matured</source> + <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ์ ์ฑ๊ตด๋ ์์ก ์ค ์์ฑ๋์ง ์์ ๊ฒ</translation> + </message> + <message> + <source>Current total balance in watch-only addresses</source> + <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ์ ํ์ฌ ์์ก</translation> + </message> +</context> <context> <name>PaymentServer</name> <message> @@ -1118,12 +1294,24 @@ <translation>์๋ชป๋ ์ง๋ถ ์ฃผ์์
๋๋ค %1</translation> </message> <message> + <source>Payment request rejected</source> + <translation>์ง๋ถ ์์ฒญ์ด ๊ฑฐ๋ถ๋จ</translation> + </message> + <message> + <source>Payment request network doesn't match client network.</source> + <translation>์ง๊ธ ์์ฒญ ๋คํธ์ํฌ๊ฐ ํด๋ผ์ด์ธํธ ๋คํธ์ํฌ์ ์ผ์น๋์ง ์์ต๋๋ค.</translation> + </message> + <message> + <source>Payment request is not initialized.</source> + <translation>์ง๋ถ ์์ฒญ์ด ์ด๊ธฐํ ๋์ง ์์์ต๋๋ค.</translation> + </message> + <message> <source>Requested payment amount of %1 is too small (considered dust).</source> <translation>์์ฒญํ ๊ธ์ก %1์ ์์ด ๋๋ฌด ์ ์ต๋๋ค. (์คํธ์ฑ ๊ฑฐ๋๋ก ๊ฐ์ฃผ)</translation> </message> <message> <source>Payment request error</source> - <translation>์ง๋ถ ์์ฒญ ์ ๋ฌ</translation> + <translation>์ง๋ถ ์์ฒญ ์ค๋ฅ</translation> </message> <message> <source>Cannot start bitcoin: click-to-pay handler</source> @@ -1134,20 +1322,44 @@ <translation>๋๊ธ ์ฒญ๊ตฌ์์ URL์ด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค: %1</translation> </message> <message> + <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source> + <translation>URI์ ํ์ฑ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์๋ชป๋ ๋นํธ์ฝ์ธ ์ฃผ์๋ URI ํ๋ผ๋ฏธํฐ ๊ตฌ์ฑ์ ์ค๋ฅ๊ฐ ์กด์ฌํ ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>Payment request file handling</source> <translation>์ง๋ถ์ด ํ์ผ ์ฒ๋ฆฌ๋ฅผ ์์ฒญํฉ๋๋ค</translation> </message> <message> + <source>Payment request file cannot be read! This can be caused by an invalid payment request file.</source> + <translation>์ง๋ถ ์์ฒญ ํ์ผ์ ์ฝ์ ์ ์์ต๋๋ค. ์ด๊ฒ์ ์๋ชป๋ ์ง๋ถ ์์ฒญ ํ์ผ์ ์ํด ๋ฐ์ํ๋ ์ค๋ฅ์ผ ์ ์์ต๋๋ค.</translation> + </message> + <message> + <source>Payment request expired.</source> + <translation>์ง๋ถ ์์ฒญ์ด ๋ง๋ฃ๋จ.</translation> + </message> + <message> <source>Unverified payment requests to custom payment scripts are unsupported.</source> <translation>์์๋ก ๋ณ๊ฒฝํ ๊ฒฐ์ ์คํฌ๋ฆฝํธ ๊ธฐ๋ฐ์ ๋๊ธ ์ฒญ๊ตฌ์ ์์์ ๊ฒ์ฆ๋๊ธฐ ์ ๊น์ง๋ ์ง์๋์ง ์์ต๋๋ค.</translation> </message> <message> + <source>Invalid payment request.</source> + <translation>์๋ชป๋ ์ง๋ถ ์์ฒญ.</translation> + </message> + <message> <source>Refund from %1</source> <translation>%1 ์ผ๋ก๋ถํฐ์ ํ๋ถ</translation> </message> <message> + <source>Payment request %1 is too large (%2 bytes, allowed %3 bytes).</source> + <translation>์ง๋ถ ์์ฒญ %1์ ๋๋ฌด ํฝ๋๋ค (%2 ๋ฐ์ดํธ, %3 ๋ฐ์ดํธ๊น์ง ํ์ฉ๋ฉ๋๋ค).</translation> + </message> + <message> <source>Error communicating with %1: %2</source> - <translation>%1๊ณผ ์ํตํ๋๋ฐ ์ ๋ฌ: %2</translation> + <translation>%1๊ณผ ์ํตํ๋๋ฐ ์ค๋ฅ: %2</translation> + </message> + <message> + <source>Payment request cannot be parsed!</source> + <translation>์ง๋ถ์์ฒญ์ ์ฒ๋ฆฌํ ์ ์์ต๋๋ค.</translation> </message> <message> <source>Bad response from server %1</source> @@ -1159,23 +1371,39 @@ </message> <message> <source>Network request error</source> - <translation>๋คํธ์ํฌ ์์ฒญ ์ ๋ฌ</translation> + <translation>๋คํธ์ํฌ ์์ฒญ ์ค๋ฅ</translation> </message> </context> <context> <name>PeerTableModel</name> - </context> + <message> + <source>User Agent</source> + <translation>์ ์ ์์ด์ ํธ</translation> + </message> + <message> + <source>Node/Service</source> + <translation>๋
ธ๋/์๋น์ค</translation> + </message> + <message> + <source>Ping Time</source> + <translation>Ping ์๊ฐ</translation> + </message> +</context> <context> <name>QObject</name> <message> <source>Amount</source> - <translation>๊ฑฐ๋๋</translation> + <translation>๊ฑฐ๋์ก</translation> </message> <message> <source>Enter a Bitcoin address (e.g. %1)</source> <translation>๋นํธ์ฝ์ธ ์ฃผ์๋ฅผ ์
๋ ฅํ๊ธฐ (์. %1)</translation> </message> <message> + <source>%1 d</source> + <translation>%1 ์ผ</translation> + </message> + <message> <source>%1 h</source> <translation>%1 ์๊ฐ</translation> </message> @@ -1188,6 +1416,10 @@ <translation>%1 ์ด</translation> </message> <message> + <source>None</source> + <translation>์์</translation> + </message> + <message> <source>N/A</source> <translation>์์</translation> </message> @@ -1212,7 +1444,7 @@ </message> <message> <source>PNG Image (*.png)</source> - <translation>PNG ์ด๋ฏธ์ง(*.png)</translation> + <translation>PNG ์ด๋ฏธ์ง (*.png)</translation> </message> </context> <context> @@ -1231,7 +1463,7 @@ </message> <message> <source>&Information</source> - <translation>์ ๋ณด</translation> + <translation>์ ๋ณด(&I)</translation> </message> <message> <source>Debug window</source> @@ -1242,12 +1474,8 @@ <translation>์ผ๋ฐ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>์ฌ์ฉ์ค์ธ OpenSSL ๋ฒ์ </translation> - </message> - <message> <source>Using BerkeleyDB version</source> - <translation>์ฌ์ฉ์ค์ธ BerkeleyDB ๋ฒ์ </translation> + <translation>์ฌ์ฉ ์ค์ธ BerkeleyDB ๋ฒ์ </translation> </message> <message> <source>Startup time</source> @@ -1274,6 +1502,22 @@ <translation>ํ์ฌ ๋ธ๋ญ ์</translation> </message> <message> + <source>Memory Pool</source> + <translation>๋ฉ๋ชจ๋ฆฌ ํ</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>ํ์ฌ ํธ๋์ญ์
์</translation> + </message> + <message> + <source>Memory usage</source> + <translation>๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋</translation> + </message> + <message> + <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> + <translation>ํ์ฌ์ ๋ฐ์ดํฐํด๋์์ ๋นํธ์ฝ์ธ ๋๋ฒ๊ทธ ํ์ผ์ ์ฝ๋๋ค. ์ฉ๋์ด ํฐ ๋ก๊ทธ ํ์ผ์ ๋ช ์ด๊ฐ ๊ฑธ๋ฆด ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>Received</source> <translation>๋ฐ์</translation> </message> @@ -1283,13 +1527,81 @@ </message> <message> <source>&Peers</source> - <translation>&ํผ์ด</translation> + <translation>ํผ์ด(&P)</translation> + </message> + <message> + <source>Banned peers</source> + <translation>์ฐจ๋จ๋ ํผ์ด</translation> + </message> + <message> + <source>Select a peer to view detailed information.</source> + <translation>์์ธํ ์ ๋ณด๋ฅผ ๋ณด๋ ค๋ฉด ํผ์ด๋ฅผ ์ ํํ์ธ์.</translation> + </message> + <message> + <source>Whitelisted</source> + <translation>ํ์ดํธ๋ฆฌ์คํธ์ ํฌํจ</translation> + </message> + <message> + <source>Direction</source> + <translation>๋ฐฉํฅ</translation> </message> <message> <source>Version</source> <translation>๋ฒ์ </translation> </message> <message> + <source>Starting Block</source> + <translation>์์๋ ๋ธ๋ก</translation> + </message> + <message> + <source>Synced Headers</source> + <translation>๋๊ธฐํ๋ ํค๋</translation> + </message> + <message> + <source>Synced Blocks</source> + <translation>๋๊ธฐํ๋ ๋ธ๋ก</translation> + </message> + <message> + <source>User Agent</source> + <translation>์ ์ ์์ด์ ํธ</translation> + </message> + <message> + <source>Services</source> + <translation>์๋น์ค</translation> + </message> + <message> + <source>Ban Score</source> + <translation>๋ฐด ์ค์ฝ์ด</translation> + </message> + <message> + <source>Connection Time</source> + <translation>์ ์ ์๊ฐ</translation> + </message> + <message> + <source>Last Send</source> + <translation>๋ง์ง๋ง์ผ๋ก ๋ณด๋ธ ์๊ฐ</translation> + </message> + <message> + <source>Last Receive</source> + <translation>๋ง์ง๋ง์ผ๋ก ๋ฐ์ ์๊ฐ</translation> + </message> + <message> + <source>Ping Time</source> + <translation>Ping ์๊ฐ</translation> + </message> + <message> + <source>The duration of a currently outstanding ping.</source> + <translation>ํ์ฌ ์งํ์ค์ธ PING์ ๊ฑธ๋ฆฐ ์๊ฐ.</translation> + </message> + <message> + <source>Ping Wait</source> + <translation>Ping ๋๊ธฐ</translation> + </message> + <message> + <source>Time Offset</source> + <translation>์๊ฐ ์คํ์
</translation> + </message> + <message> <source>Last block time</source> <translation>์ต์ข
๋ธ๋ญ ์๊ฐ</translation> </message> @@ -1303,11 +1615,11 @@ </message> <message> <source>&Network Traffic</source> - <translation>&๋คํธ์ํฌ ํธ๋ํฝ</translation> + <translation>๋คํธ์ํฌ ํธ๋ํฝ(&N)</translation> </message> <message> <source>&Clear</source> - <translation>&์ง์ฐ๊ธฐ</translation> + <translation>์ง์ฐ๊ธฐ(&C)</translation> </message> <message> <source>Totals</source> @@ -1334,6 +1646,38 @@ <translation>์ฝ์ ์ด๊ธฐํ</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>๋๊ธด ๋
ธ๋(&D)</translation> + </message> + <message> + <source>Ban Node for</source> + <translation>์ถ๋ฐฉ๋ ๋
ธ๋:</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1์๊ฐ(&H)</translation> + </message> + <message> + <source>1 &day</source> + <translation>1์ผ(&D)</translation> + </message> + <message> + <source>1 &week</source> + <translation>1์ฃผ(&W)</translation> + </message> + <message> + <source>1 &year</source> + <translation>1๋
(&Y)</translation> + </message> + <message> + <source>&Unban Node</source> + <translation>๋
ธ๋ ์ถ๋ฐฉ ์ทจ์(&U)</translation> + </message> + <message> + <source>Welcome to the Bitcoin Core RPC console.</source> + <translation>๋นํธ์ฝ์ธ RPC ์ฝ์์ ์ค์ ๊ฑธ ํ์ํฉ๋๋ค</translation> + </message> + <message> <source>Use up and down arrows to navigate history, and <b>Ctrl-L</b> to clear screen.</source> <translation>๊ธฐ๋ก์ ์ฐพ์๋ณด๋ ค๋ฉด ์ ์๋ ํ์ดํ ํค๋ฅผ, ํ๋ฉด์ ์ง์ฐ๋ ค๋ฉด <b>Ctrl-L</b>ํค๋ฅผ ์ฌ์ฉํ์ญ์์ค.</translation> </message> @@ -1357,20 +1701,52 @@ <source>%1 GB</source> <translation>%1 ๊ธฐ๊ฐ๋ฐ์ดํธ</translation> </message> - </context> + <message> + <source>(node id: %1)</source> + <translation>(๋
ธ๋ ID: %1)</translation> + </message> + <message> + <source>via %1</source> + <translation>%1 ๊ฒฝ์ </translation> + </message> + <message> + <source>never</source> + <translation>์์</translation> + </message> + <message> + <source>Inbound</source> + <translation>์ธ๋ฐ์ด๋</translation> + </message> + <message> + <source>Outbound</source> + <translation>์์๋ฐ์ด๋</translation> + </message> + <message> + <source>Yes</source> + <translation>์</translation> + </message> + <message> + <source>No</source> + <translation>์๋์ค</translation> + </message> + <message> + <source>Unknown</source> + <translation>์์์์</translation> + </message> +</context> <context> <name>ReceiveCoinsDialog</name> <message> <source>&Amount:</source> - <translation>&๊ฑฐ๋๋:</translation> + <translation>๊ฑฐ๋์ก(&A):</translation> </message> <message> <source>&Label:</source> - <translation>๋ผ๋ฒจ:</translation> + <translation>๋ผ๋ฒจ(&L):</translation> </message> <message> <source>&Message:</source> - <translation>&๋ฉ์์ง:</translation> + <translation>๋ฉ์์ง(&M):</translation> </message> <message> <source>Reuse one of the previously used receiving addresses. Reusing addresses has security and privacy issues. Do not use this unless re-generating a payment request made before.</source> @@ -1378,7 +1754,11 @@ </message> <message> <source>R&euse an existing receiving address (not recommended)</source> - <translation>ํ์ฌ์ ์์ทจ์ฉ ์ฃผ์๋ฅผ ์ฌ์ฌ์ฉํฉ๋๋ค๋ง ๊ถ์ฅํ์ง๋ ์์ต๋๋ค. (R&)</translation> + <translation>ํ์ฌ์ ์์ทจ์ฉ ์ฃผ์๋ฅผ ์ฌ์ฌ์ฉํ๊ธฐ(&E) (๊ถ์ฅํ์ง ์์ต๋๋ค)</translation> + </message> + <message> + <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source> + <translation>์ง๋ถ ์์ฒญ์ ์ฒจ๋ถ๋๋ ์ ํ๊ฐ๋ฅํ ๋ฉ์์ง ์
๋๋ค. ์ด ๋ฉ์ธ์ง๋ ์์ฒญ์ด ์ด๋ฆด ๋ ํ์๋ ๊ฒ ์
๋๋ค. ๋ฉ๋ชจ: ์ด ๋ฉ์์ง๋ ๋นํธ์ฝ์ธ ๋คํธ์ํฌ๋ก ์ ์ก๋์ง ์์ต๋๋ค.</translation> </message> <message> <source>An optional label to associate with the new receiving address.</source> @@ -1409,6 +1789,10 @@ <translation>์ง๋ถ ์์ฒญ(&R)</translation> </message> <message> + <source>Show the selected request (does the same as double clicking an entry)</source> + <translation>์ ํ๋ ์์ฒญ์ ํ์ํ๊ธฐ (๋๋ธ ํด๋ฆญ์ผ๋ก ํญ๋ชฉ์ ํ์ํ ์ ์์ต๋๋ค)</translation> + </message> + <message> <source>Show</source> <translation>๋ณด๊ธฐ</translation> </message> @@ -1422,7 +1806,7 @@ </message> <message> <source>Copy label</source> - <translation>ํ ๋ณต์ฌํ๊ธฐ</translation> + <translation>๋ผ๋ฒจ ๋ณต์ฌํ๊ธฐ</translation> </message> <message> <source>Copy message</source> @@ -1430,7 +1814,7 @@ </message> <message> <source>Copy amount</source> - <translation>๊ฑฐ๋๋ ๋ณต์ฌ</translation> + <translation>๊ฑฐ๋์ก ๋ณต์ฌ</translation> </message> </context> <context> @@ -1469,11 +1853,11 @@ </message> <message> <source>Amount</source> - <translation>๊ฑฐ๋๋</translation> + <translation>๊ฑฐ๋์ก</translation> </message> <message> <source>Label</source> - <translation>ํ</translation> + <translation>๋ผ๋ฒจ</translation> </message> <message> <source>Message</source> @@ -1481,7 +1865,7 @@ </message> <message> <source>Resulting URI too long, try to reduce the text for label / message.</source> - <translation>URI ๊ฒฐ๊ณผ๊ฐ ๋๋ฌด ๊ธธ์, ํ/๋ฉ์ธ์ง์ ๊ธ์ ์ค์ด๋๋ก ํ์ธ์.</translation> + <translation>URI ๊ฒฐ๊ณผ๊ฐ ๋๋ฌด ๊ธธ์, ๋ผ๋ฒจ/๋ฉ์ธ์ง์ ๊ธ์ ์ค์ด๋๋ก ํ์ธ์.</translation> </message> <message> <source>Error encoding URI into QR Code.</source> @@ -1496,7 +1880,7 @@ </message> <message> <source>Label</source> - <translation>ํ</translation> + <translation>๋ผ๋ฒจ</translation> </message> <message> <source>Message</source> @@ -1504,7 +1888,7 @@ </message> <message> <source>Amount</source> - <translation>๊ฑฐ๋๋</translation> + <translation>๊ฑฐ๋์ก</translation> </message> <message> <source>(no label)</source> @@ -1516,7 +1900,7 @@ </message> <message> <source>(no amount)</source> - <translation>(๊ฑฐ๋๋ ์์)</translation> + <translation>(๊ฑฐ๋์ก ์์)</translation> </message> </context> <context> @@ -1551,7 +1935,7 @@ </message> <message> <source>Amount:</source> - <translation>๊ฑฐ๋๋:</translation> + <translation>๊ฑฐ๋์ก:</translation> </message> <message> <source>Priority:</source> @@ -1570,6 +1954,10 @@ <translation>์ฒด์ธ์ง:</translation> </message> <message> + <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source> + <translation>์ด ๊ธฐ๋ฅ์ด ํ์ฑํ๋๋ฉด ๊ฑฐ์ค๋ฆ๋ ์ฃผ์๊ฐ ๊ณต๋์ด๊ฑฐ๋ ๋ฌดํจ์ธ ๊ฒฝ์ฐ, ๊ฑฐ์ค๋ฆ๋์ ์๋กญ๊ฒ ์์ฑ๋ ์ฃผ์๋ก ์ก๊ธ๋ฉ๋๋ค.</translation> + </message> + <message> <source>Custom change address</source> <translation>์ฃผ์๋ณ๊ฒฝ</translation> </message> @@ -1578,16 +1966,76 @@ <translation>๊ฑฐ๋ ์์๋ฃ:</translation> </message> <message> + <source>Choose...</source> + <translation>์ ํ ํ๊ธฐ...</translation> + </message> + <message> + <source>collapse fee-settings</source> + <translation>์์๋ฃ ์ค์ ์ ๊ธฐ</translation> + </message> + <message> + <source>per kilobyte</source> + <translation>ํฌ๋ก๋ฐ์ดํธ ๋น</translation> + </message> + <message> + <source>If the custom fee is set to 1000 satoshis and the transaction is only 250 bytes, then "per kilobyte" only pays 250 satoshis in fee, while "total at least" pays 1000 satoshis. For transactions bigger than a kilobyte both pay by kilobyte.</source> + <translation>์ฌ์ฉ์ ์ ์ ์์๋ฃ๊ฐ 1000์ฌํ ์๋ก ์ง์ ๋ ๊ฒฝ์ฐ ํธ๋์ญ์
์ ํฌ๊ธฐ๊ฐ 250๋ฐ์ดํธ ์ผ ๊ฒฝ์ฐ 1ํฌ๋ก๋ฐ์ดํธ๋น 250์ฌํ ์๋ง ์ง๋ถ๋์ง๋ง "์ต์ ์์๋ฃ"์์ 1000์ฌํ ์๊ฐ ์ง๋ถ๋ฉ๋๋ค. 1ํฌ๋ก๋ฐ์ดํธ๊ฐ ๋๋ ํธ๋์ญ์
์ธ ๊ฒฝ์ฐ ์ด๋ ํ ๊ฒฝ์ฐ์๋ 1ํฌ๋ก๋ฐ์ดํธ ๊ธฐ์ค์ผ๋ก ์ง๋ถ๋ฉ๋๋ค.</translation> + </message> + <message> + <source>Hide</source> + <translation>์จ๊ธฐ๊ธฐ</translation> + </message> + <message> + <source>total at least</source> + <translation>์ต์ ์์๋ฃ</translation> + </message> + <message> + <source>Paying only the minimum fee is just fine as long as there is less transaction volume than space in the blocks. But be aware that this can end up in a never confirming transaction once there is more demand for bitcoin transactions than the network can process.</source> + <translation>๋ธ๋ก์ ์ฉ๋๋ณด๋ค ํธ๋์ญ์
์ ์ฉ๋์ด ์์ ๊ฒฝ์ฐ์๋ ์ต์ํ์ ์์๋ฃ๋ง์ผ๋ก๋ ์ถฉ๋ถํฉ๋๋ค. ๊ทธ๋ฌ๋ ๋นํธ์ฝ์ธ ๋คํธ์ํฌ์ ์ฒ๋ฆฌ๋๋ณด๋ค ๋ ๋ง์ ํธ๋์ญ์
์๊ตฌ๋ ์์ํ ๊ฒ์ฆ์ด ์ ๋ ์๋ ์์ต๋๋ค.</translation> + </message> + <message> + <source>(read the tooltip)</source> + <translation>(ํดํ์ ์ฝ์ด๋ณด์ธ์)</translation> + </message> + <message> <source>Recommended:</source> <translation>๊ถ์ฅ:</translation> </message> <message> + <source>Custom:</source> + <translation>์ฌ์ฉ์ ์ ์:</translation> + </message> + <message> + <source>(Smart fee not initialized yet. This usually takes a few blocks...)</source> + <translation>(Smart fee๊ฐ ์์ง ์ด๊ธฐํ๋์ง ์์์ต๋๋ค. ๋ธ๋ก ๋ถ์์ด ์๋ฃ๋ ๋ ๊น์ง ๊ธฐ๋ค๋ ค์ฃผ์ญ์์ค...)</translation> + </message> + <message> + <source>Confirmation time:</source> + <translation>์น์ธ ์๊ฐ:</translation> + </message> + <message> + <source>normal</source> + <translation>์ผ๋ฐ</translation> + </message> + <message> + <source>fast</source> + <translation>๋น ๋ฆ</translation> + </message> + <message> + <source>Send as zero-fee transaction if possible</source> + <translation>๊ฐ๋ฅํ ๊ฒฝ์ฐ ์์๋ฃ ์์ด ๋ณด๋ด๊ธฐ</translation> + </message> + <message> + <source>(confirmation may take longer)</source> + <translation>(๊ฑฐ๋ ๊ฒ์ฆ์ด ์ค๋ ๊ฑธ๋ฆด ์ ์์ต๋๋ค)</translation> + </message> + <message> <source>Send to multiple recipients at once</source> <translation>๋ค์์ ์๋ น์ธ๋ค์๊ฒ ํ๋ฒ์ ๋ณด๋ด๊ธฐ</translation> </message> <message> <source>Add &Recipient</source> - <translation>์๋ น์ธ ์ถ๊ฐํ๊ธฐ</translation> + <translation>์๋ น์ธ ์ถ๊ฐํ๊ธฐ(&R)</translation> </message> <message> <source>Clear all fields of the form.</source> @@ -1627,7 +2075,7 @@ </message> <message> <source>Copy amount</source> - <translation>๊ฑฐ๋๋ ๋ณต์ฌ</translation> + <translation>๊ฑฐ๋์ก ๋ณต์ฌ</translation> </message> <message> <source>Copy fee</source> @@ -1646,6 +2094,14 @@ <translation>์ฐ์ ๋ ๋ณต์ฌ</translation> </message> <message> + <source>Copy change</source> + <translation>์๋ ๋ณต์ฌ</translation> + </message> + <message> + <source>Total Amount %1</source> + <translation>์ด ์ก์ %1</translation> + </message> + <message> <source>or</source> <translation>๋๋</translation> </message> @@ -1670,18 +2126,46 @@ <translation>๊ฑฐ๋๊ฐ ๊ฑฐ๋ถ๋์์ต๋๋ค. ๋ช๋ช ์ฝ์ธ๋ค์ด ์ง๊ฐ์์ ์ด๋ฏธ ์ฌ์ฉ๋ ๊ฒฝ์ฐ, ์๋ฅผ ๋ค์ด ์ฝ์ธ์ ์ด๋ฏธ ์ฌ์ฉํ wallet.dat๋ฅผ ๋ณต์ฌํด์ ์ฌ์ฉํ ๊ฒฝ์ฐ ์ง๊ธ ์ง๊ฐ์ ๊ธฐ๋ก์ด ์๋์์ด ์ด๋ฐ ์ผ์ด ์๊ธธ ์ ์์ต๋๋ค.</translation> </message> <message> + <source>A fee higher than %1 is considered an absurdly high fee.</source> + <translation>%1 ๋ณด๋ค ๋์ ์์๋ฃ๋ ๋๋ฌด ๋์ ์์๋ฃ ์
๋๋ค.</translation> + </message> + <message> + <source>Payment request expired.</source> + <translation>์ง๋ถ ์์ฒญ์ด ๋ง๋ฃ๋จ.</translation> + </message> + <message> + <source>Pay only the required fee of %1</source> + <translation>์ค์ง %1 ๋ง์ ์์๋ฃ๋ฅผ ์ง๋ถํ๊ธฐ</translation> + </message> + <message numerus="yes"> + <source>Estimated to begin confirmation within %n block(s).</source> + <translation><numerusform>%n ๋ธ๋ก ์์ ๊ฑฐ๋๊ฒ์ฆ์ด ์์ ๋ ๊ฒ์ผ๋ก ์์ํฉ๋๋ค.</numerusform></translation> + </message> + <message> + <source>The recipient address is not valid. Please recheck.</source> + <translation>์๋ น์ธ ์ฃผ์๊ฐ ์ ํํ์ง ์์ต๋๋ค. ์ฌํ์ธ ๋ฐ๋๋๋ค</translation> + </message> + <message> + <source>Duplicate address found: addresses should only be used once each.</source> + <translation>๋๊ฐ ์ด์์ ์ฃผ์์
๋๋ค: ํ๋ฒ์ ํ๋์ ์ฃผ์์๋ง ์์
ํ ์ ์์ต๋๋ค.</translation> + </message> + <message> <source>Warning: Invalid Bitcoin address</source> <translation>๊ฒฝ๊ณ : ์๋ชป๋ ๋นํธ์ฝ์ธ์ฃผ์์
๋๋ค</translation> </message> <message> <source>(no label)</source> - <translation>(ํ ์์)</translation> + <translation>(๋ผ๋ฒจ ์์)</translation> </message> <message> <source>Warning: Unknown change address</source> <translation>๊ฒฝ๊ณ : ์๋ ค์ง์ง ์์ ์ฃผ์๋ณ๊ฒฝ์
๋๋ค</translation> </message> <message> + <source>Copy dust</source> + <translation>๋์คํธ ๋ณต์ฌ</translation> + </message> + <message> <source>Are you sure you want to send?</source> <translation>์ ๋ง๋ก ๋ณด๋ด์๊ฒ ์ต๋๊น?</translation> </message> @@ -1694,19 +2178,19 @@ <name>SendCoinsEntry</name> <message> <source>A&mount:</source> - <translation>๊ธ์ก:</translation> + <translation>๊ธ์ก(&M):</translation> </message> <message> <source>Pay &To:</source> - <translation>์ง๊ธ&์์ :</translation> + <translation>์ก๊ธํ ๋์(&T) : </translation> </message> <message> <source>Enter a label for this address to add it to your address book</source> - <translation>๋น์ ์ ์ฃผ์๋ก์ ์ด ์ฃผ์๋ฅผ ์ถ๊ฐํ๊ธฐ ์ํ์ฌ ํ๋ฅผ ์
์ญํ์ธ์ </translation> + <translation>์ฃผ์๋ก์ ์ถ๊ฐํ๋ ค๋ฉด ๋ผ๋ฒจ์ ์
๋ ฅํ์ธ์</translation> </message> <message> <source>&Label:</source> - <translation>ํ:</translation> + <translation>๋ผ๋ฒจ(&L)</translation> </message> <message> <source>Choose previously used address</source> @@ -1714,7 +2198,11 @@ </message> <message> <source>This is a normal payment.</source> - <translation>ํ๊ท ์ง๊ธ์
๋๋ค</translation> + <translation>์ด๊ฒ์ ์ ์์ ์ธ ์ง๋ถ์
๋๋ค.</translation> + </message> + <message> + <source>The Bitcoin address to send the payment to</source> + <translation>์ด ๋นํธ์ฝ์ธ ์ฃผ์๋ก ์ก๊ธ๋ฉ๋๋ค</translation> </message> <message> <source>Alt+A</source> @@ -1722,7 +2210,7 @@ </message> <message> <source>Paste address from clipboard</source> - <translation>ํด๋ฆฝ๋ณด๋๋ก ๋ถํฐ ์ฃผ์๋ฅผ ๋ถ์ด์ธ์</translation> + <translation>ํด๋ฆฝ๋ณด๋๋ก ๋ถํฐ ์ฃผ์ ๋ถ์ฌ๋ฃ๊ธฐ</translation> </message> <message> <source>Alt+P</source> @@ -1730,15 +2218,31 @@ </message> <message> <source>Remove this entry</source> - <translation>ํญ๋ชฉ์ ์ง์ฐ์์ค</translation> + <translation>ํญ๋ชฉ์ ์ง์๋๋ค</translation> + </message> + <message> + <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source> + <translation>์์๋ฃ๊ฐ ์ก๊ธ๋๋ ๊ธ์ก์์ ๊ณต์ ๋ฉ๋๋ค. ์๋ น์๋ ๊ธ์ก ํ๋์์ ์
๋ ฅํ ๊ธ์ก๋ณด๋ค ์ ์ ๊ธ์ก์ ์ ์ก๋ฐ๊ฒ ๋ฉ๋๋ค. ๋ฐ๋ ์ฌ๋์ด ์ฌ๋ฌ ๋ช
์ธ ๊ฒฝ์ฐ ์์๋ฃ๋ ๊ท ๋ฑํ๊ฒ ๋๋์ด์ง๋๋ค.</translation> + </message> + <message> + <source>S&ubtract fee from amount</source> + <translation>์ก๊ธ์ก์์ ์์๋ฃ ๊ณต์ (&U)</translation> </message> <message> <source>Message:</source> <translation>๋ฉ์์ง:</translation> </message> <message> + <source>This is an unauthenticated payment request.</source> + <translation>์ธ์ฆ ๋์ง ์์ ์ง๊ธ ์์ฒญ์
๋๋ค.</translation> + </message> + <message> + <source>This is an authenticated payment request.</source> + <translation>์ธ์ฆ ๋ ์ง๊ธ ์์ฒญ ์
๋๋ค.</translation> + </message> + <message> <source>Enter a label for this address to add it to the list of used addresses</source> - <translation>์ฌ์ฉ๋ ์ฃผ์ ๋ชฉ๋ก์ ์ ์ฃผ์๋ฅผ ์ถ๊ฐํ๊ธฐ ์ํด ์ ๋ชฉ์ ์
๋ ฅํฉ๋๋ค. </translation> + <translation>์ฌ์ฉ๋ ์ฃผ์ ๋ชฉ๋ก์ ์ ์ฃผ์๋ฅผ ์ถ๊ฐํ๊ธฐ ์ํด ๋ผ๋ฒจ ์ด๋ฆ์ ์
๋ ฅํด ์ฃผ์ธ์. </translation> </message> <message> <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source> @@ -1757,7 +2261,7 @@ <name>ShutdownWindow</name> <message> <source>Bitcoin Core is shutting down...</source> - <translation>๋นํธ์ฝ์ธ์ฝ์ด๊ฐ ๋ซ์์ง๊ณ ์์ต๋๋ค</translation> + <translation>Bitcoin Core์ด ์ข
๋ฃ ์ค์
๋๋ค...</translation> </message> <message> <source>Do not shut down the computer until this window disappears.</source> @@ -1775,6 +2279,14 @@ <translation>๋ฉ์์ง ์๋ช
(&S)</translation> </message> <message> + <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source> + <translation>์ฌ๋ฌ๋ถ ์์ ์ ์ฆ๋ช
ํ๊ธฐ ์ํด ์ฃผ์๋ฅผ ์ฒจ๊ฐํ๊ณ ์๋ช
ํ ์ ์์ต๋๋ค. ํผ์ฑ ๊ณต๊ฒฉ์ผ๋ก ๋ง๋ฏธ์์ ์ฌ๋ฌ๋ถ์ ์๋ช
์ ํตํด ์์ ๋์ด๊ฐ๊ฒ ํ ์ ์์ผ๋ฏ๋ก, ์๋ช
ํ์ง ์์ ๋ชจ๋ ๋ชจํธํ ์์๋ฅผ ์ฃผ์ํ์ญ์์ค. ์กฐํญ๋ค์ด ์์ ๋ฌด๊ฒฐํ์ง ํ์ธ ํ ๋์ํ๋ ๊ฒฝ์ฐ์๋ง ์๋ช
ํ์ญ์์ค.</translation> + </message> + <message> + <source>The Bitcoin address to sign the message with</source> + <translation>๋ฉ์ธ์ง๋ฅผ ์๋ช
ํ ๋นํธ์ฝ์ธ ์ฃผ์</translation> + </message> + <message> <source>Choose previously used address</source> <translation>์ด์ ์ ์ฌ์ฉํ ์ฃผ์๋ฅผ ์ ํํ์ญ์์ค</translation> </message> @@ -1784,7 +2296,7 @@ </message> <message> <source>Paste address from clipboard</source> - <translation>ํด๋ฆฝ๋ณด๋๋ก ๋ถํฐ ์ฃผ์๋ฅผ ๋ถ์ด์ธ์</translation> + <translation>ํด๋ฆฝ๋ณด๋๋ก ๋ถํฐ ์ฃผ์๋ฅผ ๋ณต์ฌํ๊ธฐ</translation> </message> <message> <source>Alt+P</source> @@ -1823,6 +2335,14 @@ <translation>๋ฉ์์ง ๊ฒ์ฆ(&V)</translation> </message> <message> + <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source> + <translation>๋ฉ์์ง๋ฅผ ๊ฒ์ฆํ๊ธฐ ์ํด ์๋ ์นธ์ ๊ฐ๊ฐ ์ง๊ฐ ์ฃผ์์ ๋ฉ์์ง, ์ ์์๋ช
์ ์
๋ ฅํ์ธ์. (๋ฉ์์ง ์๋ณธ์ ๋์ด์ฐ๊ธฐ, ๋ค์ฌ์ฐ๊ธฐ, ํ ๋๋ ๋ฑ์ด ์ ํํ๊ฒ ์
๋ ฅ๋์ด์ผ ํ๋ฏ๋ก ์๋ณธ์ ๋ณต์ฌํด์ ์
๋ ฅํ์ธ์) ์ด ๊ธฐ๋ฅ์ ๋ฉ์์ง ๊ฒ์ฆ์ด ์ฃผ ๋ชฉ์ ์ด๋ฉฐ, ๋คํธ์ํฌ ์นจ์
์์ ์ํด ๋ณ์กฐ๋์ง ์๋๋ก ์ ์์๋ช
ํด๋
์ ๋ถํ์ํ ์๊ฐ์ ์๋ชจํ์ง ๋ง์ธ์. </translation> + </message> + <message> + <source>The Bitcoin address the message was signed with</source> + <translation>๋ฉ์ธ์ง์ ์๋ช
์ ์ฌ์ฉ๋ ๋นํธ์ฝ์ธ ์ฃผ์</translation> + </message> + <message> <source>Verify the message to ensure it was signed with the specified Bitcoin address</source> <translation>์ ํํ ๋นํธ์ฝ์ธ์ฃผ์๊ฐ ์
๋ ฅ๋ฌ๋์ง ๋ฉ์์ง๋ฅผ ํ์ธํ์์ค</translation> </message> @@ -1935,6 +2455,10 @@ <source>Status</source> <translation>์ํ</translation> </message> + <message numerus="yes"> + <source>, broadcast through %n node(s)</source> + <translation><numerusform>%n ๋
ธ๋๋ฅผ ๊ฑฐ์ณ ์ ํํฉ๋๋ค.</numerusform></translation> + </message> <message> <source>Date</source> <translation>๋ ์ง</translation> @@ -1960,6 +2484,10 @@ <translation>์์ ์ ์ฃผ์</translation> </message> <message> + <source>watch-only</source> + <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ</translation> + </message> + <message> <source>label</source> <translation>๋ผ๋ฒจ</translation> </message> @@ -1967,6 +2495,10 @@ <source>Credit</source> <translation>์๊ธ</translation> </message> + <message numerus="yes"> + <source>matures in %n more block(s)</source> + <translation><numerusform>%n๊ฐ ๋ธ๋ญ ํ์ ์ฝ์ธ ์์ฑ์ด ์๋ฃ๋ฉ๋๋ค.</numerusform></translation> + </message> <message> <source>not accepted</source> <translation>ํ์ฉ๋์ง ์๋๋ค</translation> @@ -1976,12 +2508,20 @@ <translation>์ฐจ๋ณ</translation> </message> <message> + <source>Total debit</source> + <translation>์ด ์ถ๊ธ์ก</translation> + </message> + <message> + <source>Total credit</source> + <translation>์ด ์
๊ธ์ก</translation> + </message> + <message> <source>Transaction fee</source> <translation>์ก๊ธ ์์๋ฃ</translation> </message> <message> <source>Net amount</source> - <translation>์ด์ก</translation> + <translation>์ด ๊ฑฐ๋์ก</translation> </message> <message> <source>Message</source> @@ -2017,7 +2557,7 @@ </message> <message> <source>Amount</source> - <translation>๊ฑฐ๋๋</translation> + <translation>๊ฑฐ๋์ก</translation> </message> <message> <source>true</source> @@ -2031,6 +2571,10 @@ <source>, has not been successfully broadcast yet</source> <translation>. ์์ง ์ฑ๊ณต์ ์ผ๋ก ํต๋ณดํ์ง ์์</translation> </message> + <message numerus="yes"> + <source>Open for %n more block(s)</source> + <translation><numerusform>%n ๊ฐ์ ์ถ๊ฐ ๋ธ๋ก์ ์ฝ์ต๋๋ค.</numerusform></translation> + </message> <message> <source>unknown</source> <translation>์์์์</translation> @@ -2061,13 +2605,17 @@ <source>Immature (%1 confirmations, will be available after %2)</source> <translation>์ถฉ๋ถํ ์์ฑ๋์ง ์์ ์ํ (%1 ์น์ธ, %2 ํ์ ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค)</translation> </message> + <message numerus="yes"> + <source>Open for %n more block(s)</source> + <translation><numerusform>%n ๊ฐ์ ์ถ๊ฐ ๋ธ๋ก์ ์ฝ์ต๋๋ค.</numerusform></translation> + </message> <message> <source>Open until %1</source> <translation>%1 ๊น์ง ์ด๋ฆผ</translation> </message> <message> <source>Confirmed (%1 confirmations)</source> - <translation>ํ์ธ๋จ(%1 ํ์ธ๋จ)</translation> + <translation>ํ์ธ๋จ (%1 ํ์ธ๋จ)</translation> </message> <message> <source>This block was not received by any other nodes and will probably not be accepted!</source> @@ -2083,7 +2631,7 @@ </message> <message> <source>Label</source> - <translation>ํ</translation> + <translation>๋ผ๋ฒจ</translation> </message> <message> <source>Unconfirmed</source> @@ -2118,12 +2666,16 @@ <translation>์ฑ๊ตด</translation> </message> <message> + <source>watch-only</source> + <translation>๋ชจ๋ํฐ๋ง ์ง๊ฐ</translation> + </message> + <message> <source>(n/a)</source> <translation>(์์)</translation> </message> <message> <source>Transaction status. Hover over this field to show number of confirmations.</source> - <translation>๊ฑฐ๋์ํฉ. ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๋ฉด ์น์ธํ์๊ฐ ํ์๋ฉ๋๋ค.</translation> + <translation>๊ฑฐ๋์ํฉ. ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๋ฉด ๊ฒ์ฆํ์๊ฐ ํ์๋ฉ๋๋ค.</translation> </message> <message> <source>Date and time that the transaction was received.</source> @@ -2134,6 +2686,14 @@ <translation>๊ฑฐ๋์ ์ข
๋ฅ.</translation> </message> <message> + <source>Whether or not a watch-only address is involved in this transaction.</source> + <translation>์ด ํธ๋์ญ์
์ ๋ชจ๋ํฐ๋ง ์ง๊ฐ๋ฅผ ํฌํจํ ์ง์ ์ฌ๋ถ์
๋๋ค.</translation> + </message> + <message> + <source>User-defined intent/purpose of the transaction.</source> + <translation>ํธ๋์ญ์
์ ๋ํ ์ฌ์ฉ์ ์ ์ intent/purpose</translation> + </message> + <message> <source>Amount removed from or added to balance.</source> <translation>๋ณ๊ฒฝ๋ ์๊ณ .</translation> </message> @@ -2194,7 +2754,7 @@ </message> <message> <source>Min amount</source> - <translation>์ต์ ๊ฑฐ๋๋</translation> + <translation>์ต์ ๊ฑฐ๋์ก</translation> </message> <message> <source>Copy address</source> @@ -2202,19 +2762,23 @@ </message> <message> <source>Copy label</source> - <translation>ํ ๋ณต์ฌํ๊ธฐ</translation> + <translation>๋ผ๋ฒจ ๋ณต์ฌํ๊ธฐ</translation> </message> <message> <source>Copy amount</source> - <translation>๊ฑฐ๋๋ ๋ณต์ฌ</translation> + <translation>๊ฑฐ๋์ก ๋ณต์ฌ</translation> </message> <message> <source>Copy transaction ID</source> <translation>๊ฑฐ๋ ์์ด๋ ๋ณต์ฌ</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>๋ก์ฐ ํธ๋์ญ์
๋ณต์ฌ</translation> + </message> + <message> <source>Edit label</source> - <translation>ํ ์์ ํ๊ธฐ</translation> + <translation>๋ผ๋ฒจ ์์ ํ๊ธฐ</translation> </message> <message> <source>Show transaction details</source> @@ -2234,7 +2798,7 @@ </message> <message> <source>There was an error trying to save the transaction history to %1.</source> - <translation>%1์ผ๋ก ๊ฑฐ๋ ๊ธฐ๋ก์ ์ ์ฅํ๋๋ฐ ์ ๋ฌ๊ฐ ์์์ต๋๋ค.</translation> + <translation>%1์ผ๋ก ๊ฑฐ๋ ๊ธฐ๋ก์ ์ ์ฅํ๋๋ฐ ์ค๋ฅ๊ฐ ์์์ต๋๋ค.</translation> </message> <message> <source>Exporting Successful</source> @@ -2262,7 +2826,7 @@ </message> <message> <source>Label</source> - <translation>ํ</translation> + <translation>๋ผ๋ฒจ</translation> </message> <message> <source>Address</source> @@ -2283,7 +2847,11 @@ </context> <context> <name>UnitDisplayStatusBarControl</name> - </context> + <message> + <source>Unit to show amounts in. Click to select another unit.</source> + <translation>๊ฑฐ๋์ก์ ํ์ํ๋ ๋จ์. ํด๋ฆญํด์ ๋ค๋ฅธ ๋จ์๋ฅผ ์ ํํ ์ ์์ต๋๋ค.</translation> + </message> +</context> <context> <name>WalletFrame</name> <message> @@ -2302,7 +2870,7 @@ <name>WalletView</name> <message> <source>&Export</source> - <translation>&๋ด๋ณด๋ด๊ธฐ</translation> + <translation>๋ด๋ณด๋ด๊ธฐ(&E)</translation> </message> <message> <source>Export the data in the current tab to a file</source> @@ -2356,30 +2924,130 @@ <translation>๋ช
๋ น์ค๊ณผ JSON-RPC ๋ช
๋ น ์๋ฝ</translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation><category>๊ฐ ์ ๊ณต๋์ง ์๊ฑฐ๋ <category> = 1 ์ธ ๊ฒฝ์ฐ, ๋ชจ๋ ๋๋ฒ๊น
์ ๋ณด๋ฅผ ์ถ๋ ฅ</translation> + </message> + <message> + <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> + <translation>ํ๋์ ์ง๊ฐ ํธ๋์ญ์
์์์ ์ด ์์๋ฃ(%s)์ ์ต๋์น; ๋๋ฌด ๋ฎ๊ฒ ์ค์ ํ๋ฉด ํฐ ํธ๋์ญ์
์ด ์ค์ง ๋ฉ๋๋ค (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>์ปดํจํฐ์ ๋ ์ง์ ์๊ฐ์ด ์ฌ๋ฐ๋ฅธ์ง ํ์ธํ์ญ์์ค! ์๊ฐ์ด ์๋ชป๋๋ฉด ๋นํธ์ฝ์ธ์ ์ ๋๋ก ๋์ํ์ง ์์ต๋๋ค.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>๋ธ๋ก ์ถ์๊ฐ ์ต์์น์ %d MiB ๋ฐ์ผ๋ก ์ค์ ๋์ด ์์ต๋๋ค. ๋ ๋์ ๊ฐ์ ์ฌ์ฉํด ๋ณด์ธ์.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>๋ธ๋ก ์ถ์: ๋ง์ง๋ง ์ง๊ฐ ๋๊ธฐํ ์ง์ ์ด ์ถ์๋ ๋ฐ์ดํฐ๋ณด๋ค ๊ณผ๊ฑฐ์ ๊ฒ ์
๋๋ค. -reindex๊ฐ ํ์ํฉ๋๋ค (์ ์ง๋ ๋
ธ๋์ ๊ฒฝ์ฐ ๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ์ฌ๋ค์ด๋ก๋ํฉ๋๋ค)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>์ค๋๋ ๋ธ๋ก์ ์ ๊ฑฐ(์ถ์)ํ์ฌ ๋์คํฌ ์ฉ๋์ ์ค์
๋๋ค. ์ด ๋ชจ๋๋ -txindex ์ -rescan ๊ณผ ํธํ๋์ง ์์ต๋๋ค. ๊ฒฝ๊ณ : ์ด ๋ชจ๋๋ฅผ ์ทจ์ํ๋ฉด ๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ๋ค์ ๋ค์ด๋ก๋ ๋ฐ์์ผ ํฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ:0 = ๋ธ๋ก ์ถ์ ๋นํ์ฑํ, >%u = ๋ธ๋กํ์ผ์ ์ฌ์ฉํ ์ฉ๋์ MiB๋จ์๋ก ์ง์ )</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>๋ธ๋ก ์ถ์ ๋ชจ๋์์๋ ์ฌ๊ฒ์์ด ๋ถ๊ฐ๋ฅ ํฉ๋๋ค. -reindex ๋ช
๋ น์ ์ฌ์ฉํด์ ๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ๋ค์ ๋ค์ด๋ก๋ ํด์ผ ํฉ๋๋ค.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>์๋ฌ: ์น๋ช
์ ์ธ ๋ด๋ถ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค, ์์ธํ ๋ด์ฉ์ debug.log ๋ฅผ ํ์ธํด์ฃผ์ธ์.</translation> + </message> + <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>์ก๊ธ ๊ฑฐ๋์ ์ถ๊ฐ๋๋ ์์๋ฃ (%s/kB) (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Pruning blockstore...</source> + <translation>๋ธ๋ก ๋ฐ์ดํฐ๋ฅผ ์ถ์ ์ค์
๋๋ค..</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>๋ฐ๋ชฌ์ผ๋ก ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์คํํ๊ณ ๋ช
๋ น์ ํ์ฉ</translation> </message> <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>HTTP ์๋ฒ๋ฅผ ์์ํ ์ ์์ต๋๋ค. ์์ธํ ์ฌํญ์ ๋๋ฒ๊ทธ ๋ก๊ทธ๋ฅผ ํ์ธ ํ์ธ์.</translation> + </message> + <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>์ธ๋ถ ์ ์์ ์น์ธํฉ๋๋ค</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee์ ๋๋ฌด ๋์ต๋๋ค! ์ด๊ฒ์ ์์๋ฃ ์์ธก์ ์ด์ฉํ ์ ์์ ๋ ์ง๋ถ๋๋ ํธ๋์ญ์
์์๋ฃ์
๋๋ค.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>์ถฉ๋ถํ ๋ฐ์ดํฐ๊ฐ ์ถ์ ๋์ง ์์ ์ํ์์์ ์์๋ฃ ์ถ์ ๊ธฐ๋ฅ์ด ์ฌ์ฉํ๋ ์์๋ฃ ๋น์จ(%s/kB) (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>ํธ๋์ญ์
์ ์ค๊ณ๋ฅผ ํ์ง ์๋๋ผ๋ ํ์ดํธ ๋ฆฌ์คํธ์ ํฌํจ๋ ํผ์ด์์ ๋ฐ์ ํธ๋์ญ์
์ ์ค๊ณํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>์ ํ๋ ์ฃผ์๋ก ๊ณ ์ ํ๋ฉฐ ํญ์ ๋ฆฌ์จ(Listen)ํฉ๋๋ค. IPv6 ํ๋กํ ์ฝ์ธ ๊ฒฝ์ฐ [host]:port ๋ฐฉ์์ ๋ช
๋ น์ด ํ๊ธฐ๋ฒ์ ์ฌ์ฉํฉ๋๋ค.</translation> </message> <message> + <source>Delete all wallet transactions and only recover those parts of the blockchain through -rescan on startup</source> + <translation>์์์ ๋ชจ๋ ์ง๊ฐ ํธ๋์ญ์
์ ์ญ์ ํ๊ณ -rescan์ ํตํ์ฌ ๋ธ๋ก์ฒด์ธ๋ง ๋ณต๊ตฌํฉ๋๋ค.</translation> + </message> + <message> + <source>Distributed under the MIT software license, see the accompanying file COPYING or <http://www.opensource.org/licenses/mit-license.php>.</source> + <translation>MIT ์ํํธ์จ์ด ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค. ๋๋ด๋ ํ์ผ ํน์ <http://www.opensource.org/licenses/mit-license.php>๋ฅผ ์ฐธ์กฐํ์ธ์.</translation> + </message> + <message> <source>Execute command when a wallet transaction changes (%s in cmd is replaced by TxID)</source> <translation>์ง๊ฐ ๊ฑฐ๋๊ฐ ๋ฐ๋๋ฉด ๋ช
๋ น์ ์คํํฉ๋๋ค.(%s ์์ ๋ช
๋ น์ด๊ฐ TxID๋ก ๋ฐ๋๋๋ค)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>ํผ์ด๋ค์ด ๋ก์ปฌ ์ค๊ณ ์ ์ฑ
์ ์๋ฐํ๋๋ผ๋ ํ์ดํธ ๋ฆฌ์คํธ์ ํฌํจ๋ ํผ์ด์ธ๊ฒฝ์ฐ ๊ฐ์ ๋ก ์ค๊ณํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> + <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> + <translation>์คํฌ๋ฆฝํธ ์ธ์ฆ ์ค๋ ๋์ ๊ฐฏ์ ์ค์ (%u-%d, 0 = ์๋, <0 = ์ง์ ๋ ์ฝ์ด ๊ฐ์๋งํผ ์ฌ์ฉ ์ํจ, ๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> + <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source> + <translation>๋ธ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฏธ๋์ ๋ธ๋ก์ด ํฌํจ๋์ด ์์ต๋๋ค. ์ด๊ฒ์ ์ฌ์ฉ์์ ์ปดํจํฐ์ ๋ ์ง์ ์๊ฐ์ด ์ฌ๋ฐ๋ฅด๊ฒ ์ค์ ๋์ด ์์ง ์์๋ ๋ํ๋ ์ ์์ต๋๋ค. ๋ง์ฝ ์ฌ์ฉ์์ ์ปดํจํฐ์ ๋ ์ง์ ์๊ฐ์ด ์ฌ๋ฐ๋ฅด๋ค๊ณ ํ์ ํ ๋์๋ง ๋ธ๋ก ๋ฐ์ดํฐ ๋ฒ ์ด์ค์ ์ฌ๊ตฌ์ฑ์ ํ์ญ์์ค</translation> + </message> + <message> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>์ด ๋น๋ ๋ฒ์ ์ ์ ์ ์ถ์ ์ ํ
์คํธ์ ๋ชฉ์ ์ด๋ฉฐ, ์๊ธฐ์น ์์ ์ํ๊ณผ ์ค๋ฅ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค. ์ฑ๊ตด๊ณผ ์์ ์ฉ ์ํํธ์จ์ด๋ก ์ฌ์ฉํ๋ ๊ฒ์ ๊ถํ์ง ์์ต๋๋ค.</translation> </message> <message> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation>์ด ์ปดํจํฐ์ %s์ ๋ฐ์ธ๋ฉ ํ ์ ์์ต๋๋ค. ์๋ง๋ ๋นํธ์ฝ์ธ์ด ์คํ์ค์ธ ๊ฒ ๊ฐ์ต๋๋ค.</translation> + </message> + <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>์ง์ํ์ง ์๋ ์ธ์ -whitelistalwaysrelay ๋ ๋ฌด์๋ฉ๋๋ค, -whitelistrelay ๋ -whitelistforcerelay ๋ฅผ ์ฌ์ฉํด ์ฃผ์ธ์.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>๋ฆฌ์จ(Listen) ํฌํธ๋ฅผ ํ ๋นํ๊ธฐ ์ํด UPnP ์ฌ์ฉ (๊ธฐ๋ณธ๊ฐ: ์ด๋ ค์๊ฑฐ๋ -proxy ์ต์
์ ์ฌ์ฉํ์ง ์์ ์ 1)</translation> + </message> + <message> + <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> + <translation>๊ฒฝ๊ณ : ๋น์ ์์ ์ผ๋ก ๋ง์ ๋ธ๋ก์ด ์์ฑ๋๊ณ ์์ต๋๋ค. %d ๋ธ๋ก์ ๋ง์ง๋ง %d์ ์์ ๋์์ต๋๋ค (%d ์์ธก๋จ)</translation> + </message> + <message> + <source>WARNING: check your network connection, %d blocks received in the last %d hours (%d expected)</source> + <translation>๊ฒฝ๊ณ : ๋คํธ์ํฌ ์ฐ๊ฒฐ์ ํ์ธํด ์ฃผ์ธ์. %d ๋ธ๋ก์ ๋ง์ง๋ง %d์ ์์ ๋์์ต๋๋ค (%d ์์ธก๋จ)</translation> + </message> + <message> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> <translation>๊ฒฝ๊ณ : ๋ชจ๋ ๋คํธ์ํฌ๊ฐ ๋์ํด์ผ ํ๋, ์ผ๋ถ ์ฑ๊ตด์๋ค์๊ฒ ๋ฌธ์ ๊ฐ ์๋ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค. </translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>๊ฒฝ๊ณ : ์๋ ค์ง์ง ์์ ๋ฒ์ ์ ๋ธ๋ก์ด ์ฑ๊ตด๋์์ต๋๋ค. ์๋ ค์ง์ง ์์ ๊ท์น์ด ์ ์ฉ๋์์ ๊ฐ๋ฅ์ฑ์ด ์์ต๋๋ค.</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>๊ฒฝ๊ณ : ํ์ฌ ๋นํธ์ฝ์ธ ๋ฒ์ ์ด ๋ค๋ฅธ ๋คํธ์ํฌ ์ฐธ์ฌ์๋ค๊ณผ ๋์ผํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋น์ ๋๋ ๋ค๋ฅธ ์ฐธ์ฌ์๋ค์ด ๋์ผํ ๋นํธ์ฝ์ธ ๋ฒ์ ์ผ๋ก ์
๊ทธ๋ ์ด๋ ํ ํ์๊ฐ ์์ต๋๋ค.</translation> </message> @@ -2388,6 +3056,22 @@ <translation>๊ฒฝ๊ณ : wallet.dat๊ฐ ์์๋์ด ๋ฐ์ดํฐ๊ฐ ๋ณต๊ตฌ๋์์ต๋๋ค. ์๋์ wallet.dat ํ์ผ์ %s ํ์ wallet.{timestamp}.bak ์ด๋ฆ์ผ๋ก ์ ์ฅ๋ฉ๋๋ค. ์์ก๊ณผ ๊ฑฐ๋ ๋ด์ญ์ด ์ ํํ์ง ์๋ค๋ฉด ๋ฐฑ์
ํ์ผ๋ก ๋ถํฐ ๋ณต์ํด์ผ ํฉ๋๋ค. </translation> </message> <message> + <source>Whitelist peers connecting from the given netmask or IP address. Can be specified multiple times.</source> + <translation>์ค์ ๋ ๋ท๋ง์คํฌ ํน์ IP ์ฃผ์๋ก ํ์ดํธ๋ฆฌ์คํธ์ ํฌํจ๋ ํผ์ด์ ์ ์ํฉ๋๋ค. ์ด ์ค์ ์ ๋ณต์๋ก ์ง์ ํ ์ ์์ต๋๋ค.</translation> + </message> + <message> + <source>-maxmempool must be at least %d MB</source> + <translation>-maxmempool์ ์ต์ํ %d MB๊ฐ ํ์ํฉ๋๋ค</translation> + </message> + <message> + <source><category> can be:</source> + <translation><category> ์ง์ ๊ฐ๋ฅ:</translation> + </message> + <message> + <source>Append comment to the user agent string</source> + <translation>์ฌ์ฉ์ ์์ด์ ํธ ๋ฌธ์์ด์ ์ฝ๋ฉํธ ์ฒจ๋ถ</translation> + </message> + <message> <source>Block creation options:</source> <translation>๋ธ๋ก ์์ฑ ์ต์
:</translation> </message> @@ -2416,6 +3100,26 @@ <translation>๋ธ๋ฝ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ค์ ์์ฑํ์๊ฒ ์ต๋๊น?</translation> </message> <message> + <source>Enable publish hash block in <address></source> + <translation><address>์ ๋ํ ํด์ ๋ธ๋ก ๊ณต๊ฐ ํ์ฑํ</translation> + </message> + <message> + <source>Enable publish hash transaction in <address></source> + <translation><address>์ ๋ํ ํด์ ํธ๋์ญ์
๊ณต๊ฐ ํ์ฑํ</translation> + </message> + <message> + <source>Enable publish raw block in <address></source> + <translation><address>์ ๋ํ ๋ก์ฐ ๋ธ๋ก ๊ณต๊ฐ ํ์ฑํ</translation> + </message> + <message> + <source>Enable publish raw transaction in <address></source> + <translation><address>์ ๋ํ ๋ก์ฐ ํธ๋์ญ์
๊ณต๊ฐ ํ์ฑํ</translation> + </message> + <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>๋ฉ๋ชจ๋ฆฌ ํ(pool) ๋ด์ ํธ๋์ญ์
์นํ(replacement) ํ์ฑํ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>๋ธ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ด๊ธฐํํ๋๋ฐ ์ค๋ฅ</translation> </message> @@ -2452,10 +3156,42 @@ <translation>์๋ชป๋ -onion ์ฃผ์์
๋๋ค: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>์ ํจํ์ง ์์ ๊ธ์ก -fallbackfee=<amount>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>ํธ๋์ญ์
๋ฉ๋ชจ๋ฆฌ ํ์ ์ฉ๋์ <n>๋ฉ๊ฐ๋ฐ์ดํธ ์๋๋ก ์ ์งํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>์ธ์ฆ ์ฟ ํค์ ์์น (๊ธฐ๋ณธ๊ฐ: data dir)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>์ค๊ณ ๋ฐ ์ฑ๊ตด์ ํ ๋ ํธ๋์ญ์
์์์ sigop ๋น ๋ฐ์ดํฐ์ ์ต์ ํฌ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>์ฌ์ฉ ๊ฐ๋ฅํ ํ์ผ ๋์คํฌ๋ฆฝํฐ-File Descriptor-๊ฐ ๋ถ์กฑํฉ๋๋ค. </translation> </message> <message> + <source>Only connect to nodes in network <net> (ipv4, ipv6 or onion)</source> + <translation>์ค์ง <net> ๋คํธ์ํฌ๋ก ๋ก๋ง ์ ์ (IPv4, IPv6 ํน์ onion)</translation> + </message> + <message> + <source>Print version and exit</source> + <translation>๋ฒ์ ์ถ๋ ฅํ ์ข
๋ฃ</translation> + </message> + <message> + <source>Prune cannot be configured with a negative value.</source> + <translation>๋ธ๋ก ์ถ์๋ ์์๋ก ์ค์ ํ ์ ์์ต๋๋ค.</translation> + </message> + <message> + <source>Prune mode is incompatible with -txindex.</source> + <translation>๋ธ๋ก ์ถ์ ๋ชจ๋๋ -txindex์ ํธํ๋์ง ์์ต๋๋ค.</translation> + </message> + <message> <source>Set database cache size in megabytes (%d to %d, default: %d)</source> <translation>๋ฐ์ดํฐ๋ฒ ์ด์ค ์ผ์ ํฌ๊ธฐ๋ฅผ ๋ฉ๊ฐ๋ฐ์ดํธ๋ก ์ค์ (%d ๋ถํฐ %d, ๊ธฐ๋ณธ๊ฐ: %d)</translation> </message> @@ -2468,6 +3204,26 @@ <translation>๋ฐ์ดํฐ ํด๋ ์์ ์ง๊ฐ ํ์ผ์ ์ ํํ์ธ์.</translation> </message> <message> + <source>Unsupported argument -benchmark ignored, use -debug=bench.</source> + <translation>์ง์ํ์ง ์๋ ์ธ์ -benchmark ์ ๋ฌด์๋ฉ๋๋ค, -debug=bench ํํ๋ก ์ฌ์ฉํ์ธ์.</translation> + </message> + <message> + <source>Unsupported argument -debugnet ignored, use -debug=net.</source> + <translation>์ง์ํ์ง ์๋ ์ธ์ -debugnet ์ ๋ฌด์๋ฉ๋๋ค, -debug=net ํํ๋ก ์ฌ์ฉํ์ธ์.</translation> + </message> + <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>์ง์ํ์ง ์๋ ์ธ์ -tor๋ฅผ ์ฐพ์์ต๋๋ค. -onion๋ฅผ ์ฌ์ฉํด์ฃผ์ธ์.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: %u)</source> + <translation>๋ฆฌ์จ(Listen) ํฌํธ๋ฅผ ํ ๋นํ๊ธฐ ์ํด UPnP ์ฌ์ฉ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>์ฌ์ฉ์ ์ ์ ์ฝ๋ฉํธ (%s)์ ์์ ํ์ง ๋ชปํ ๊ธ์๊ฐ ํฌํจ๋์ด ์์ต๋๋ค.</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>๋ธ๋ก ๊ฒ์ฆ์ค...</translation> </message> @@ -2488,26 +3244,138 @@ <translation>-txindex๋ฅผ ๋ฐ๊พธ๊ธฐ ์ํด์๋ -reindex๋ฅผ ์ฌ์ฉํด์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ๊ตฌ์ฑํด์ผ ํฉ๋๋ค. </translation> </message> <message> + <source>Allow JSON-RPC connections from specified source. Valid for <ip> are a single IP (e.g. 1.2.3.4), a network/netmask (e.g. 1.2.3.4/255.255.255.0) or a network/CIDR (e.g. 1.2.3.4/24). This option can be specified multiple times</source> + <translation>ํน์ ์์ค์์์ JSON-RPC ์ฐ๊ฒฐ ํ๊ฐ. ์ ํจํ <ip> ๊ฐ์ ํ๋์ IP์ฃผ์ (์ 1.2.3.4), ๋คํธ์ํฌ/๋ท๋ง์คํฌ (์ 1.2.3.4/255.255.255.0) ํน์ ๋คํธ์ํฌ/CIDR (์ 1.2.3.4/24). ์ด ์ต์
์ ๋ณต์๋ก ์ค์ ํ ์ ์์ต๋๋ค.</translation> + </message> + <message> + <source>Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6</source> + <translation>์ ํ๋ ์ฃผ์๋ก ๊ณ ์ ํ์ฌ ํ์ดํธ๋ฆฌ์คํธ์ ํฌํจ๋ ํผ์ด์ ์ ์ํฉ๋๋ค. IPv6 ํ๋กํ ์ฝ์ธ ๊ฒฝ์ฐ [host]:port ๋ฐฉ์์ ๋ช
๋ น์ด ํ๊ธฐ๋ฒ์ ์ฌ์ฉํฉ๋๋ค.</translation> + </message> + <message> + <source>Bind to given address to listen for JSON-RPC connections. Use [host]:port notation for IPv6. This option can be specified multiple times (default: bind to all interfaces)</source> + <translation>์ ํ๋ ์ฃผ์๋ก ๊ณ ์ ํ์ฌ JSON-RPC ์ฐ๊ฒฐ์ ๋ฆฌ์จ(Listen)ํฉ๋๋ค. IPv6 ํ๋กํ ์ฝ์ธ ๊ฒฝ์ฐ [host]:port ๋ฐฉ์์ ๋ช
๋ น์ด ํ๊ธฐ๋ฒ์ ์ฌ์ฉํฉ๋๋ค. ์ด ์ต์
์ ๋ณต์๋ก ์ง์ ํ ์ ์์ต๋๋ค. (๊ธฐ๋ณธ๊ฐ: ๋ชจ๋ ์ธํฐํ์ด์ค์ ๊ณ ์ )</translation> + </message> + <message> <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> <translation>๋ฐ์ดํฐ ๋๋ ํ ๋ฆฌ %s์ ๋ฝ์ ๊ฑธ ์ ์์์ต๋๋ค. ๋นํธ์ฝ์ธ ์ฝ์ด๊ฐ ์ด๋ฏธ ์คํ ์ค์ธ ๊ฒ์ผ๋ก ๋ณด์
๋๋ค.</translation> </message> <message> + <source>Create new files with system default permissions, instead of umask 077 (only effective with disabled wallet functionality)</source> + <translation>umask 077 ๋์ ์์คํ
๊ธฐ๋ณธ ํผ๋ฏธ์
์ผ๋ก ์ ํ์ผ์ ๋ง๋ญ๋๋ค (์ง๊ฐ ๊ธฐ๋ฅ์ด ๋นํ์ฑํ ์ํ์์๋ง ์ ํจํฉ๋๋ค)</translation> + </message> + <message> + <source>Discover own IP addresses (default: 1 when listening and no -externalip or -proxy)</source> + <translation>์์ ์ ์ฃผ์๋ฅผ ํ์ (๊ธฐ๋ณธ๊ฐ: ์ด๋ ค์๊ฑฐ๋ -externalip ๋ -proxy ์ต์
์ด ์์ผ๋ฉด 1)</translation> + </message> + <message> + <source>Error: Listening for incoming connections failed (listen returned error %s)</source> + <translation>์ค๋ฅ: ๋ค์ด์ค๋ ์ฐ๊ฒฐ์ ๋ฆฌ์จ(Listen)ํ๋๋ฐ ์คํจํ์ต๋๋ค (์ค๋ฅ ๋ฆฌํด %s)</translation> + </message> + <message> <source>Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)</source> <translation>์ด ์ฌํญ๊ณผ ๊ด๋ จ์๋ ๊ฒฝ๊ณ ๊ฐ ๋ฐ์ํ๊ฑฐ๋ ์์ฃผ ๊ธด ํฌํฌ๊ฐ ๋ฐ์ํ์ ๋ ๋ช
๋ น์ด๋ฅผ ์คํํด ์ฃผ์ธ์. (cmd ๋ช
๋ น์ด ๋ชฉ๋ก์์ %s๋ ๋ฉ์์ง๋ก ๋์ฒด๋ฉ๋๋ค) </translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>ํด๋น ๊ธ์ก(%s/kB) ๋ณด๋ค ์ ์ ์์๋ฃ๋ ์ค๊ณ, ์ฑ๊ตด, ํธ๋์ญ์
์์ฑ์์ ์์๋ฃ ๋ฉด์ ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> + <translation>paytxfee๊ฐ ์ค์ ๋์ด ์์ง ์๋ค๋ฉด ํ๊ท n ๋ธ๋ก์์ ์น์ธ์ด ์ด๋ฃจ์ด์ง๋๋ก ์ถฉ๋ถํ ์์๋ฃ๊ฐ ํฌํจ๋ฉ๋๋ค (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source> + <translation>์ ํจํ์ง ์์ ๊ธ์ก -maxtxfee=<amount>: '%s' (ํธ๋์ญ์
์ด ๋งํ๋ ์ํฉ์ ๋ฐฉ์งํ๊ฒ ์ํด ์ ์ด๋ %s ์ ์ค๊ณ ์์๋ฃ๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค)</translation> + </message> + <message> + <source>Maximum size of data in data carrier transactions we relay and mine (default: %u)</source> + <translation>์ค๊ณ ๋ฐ ์ฑ๊ตด์ ํ ๋ ๋ฐ์ดํฐ ์ด์ก ํธ๋์ญ์
์์ ๋ฐ์ดํฐ์ ์ต๋ ํฌ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Query for peer addresses via DNS lookup, if low on addresses (default: 1 unless -connect)</source> + <translation>DNS lookup๋ฅผ ํตํด ํผ์ด ์ฃผ์์ ๋ํ ์ฟผ๋ฆฌ ๋ณด๋ด๊ธฐ (๊ธฐ๋ณธ๊ฐ: 1 -connect ์์ธ)</translation> + </message> + <message> + <source>Randomize credentials for every proxy connection. This enables Tor stream isolation (default: %u)</source> + <translation>์ธ์ฆ์ ๋ณด๋ฅผ ํ๋ก์ ์ฐ๊ฒฐ๋ง๋ค ๋ฌด์์๋ก ํฉ๋๋ค. ์ด๋ Tor ์คํธ๋ฆผ์ ๊ฒฉ๋ฆฌ์ํฌ ์ ์์ต๋๋ค (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Set maximum size of high-priority/low-fee transactions in bytes (default: %d)</source> <translation>์ต๋ ํฌ๊ธฐ๋ฅผ ์ต์ฐ์ ์ผ๋ก ์ค์ / ๋ฐ์ดํธ๋น ์ต์ ์์๋ฃ๋ก ๊ฑฐ๋(๊ธฐ๋ณธ๊ฐ: %d)</translation> </message> <message> + <source>Set the number of threads for coin generation if enabled (-1 = all cores, default: %d)</source> + <translation>์ฝ์ธ ์์ฑ์ ๋ํ ์ค๋ ๋ ๊ฐฏ์ ์ค์ (-1 = ๋ชจ๋ ์ฝ์ด, ๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> + <source>The transaction amount is too small to send after the fee has been deducted</source> + <translation>๊ฑฐ๋์ก์ด ์์๋ฃ๋ฅผ ์ง๋ถํ๊ธฐ์ ๋๋ฌด ์์ต๋๋ค</translation> + </message> + <message> + <source>This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written by Eric Young and UPnP software written by Thomas Bernard.</source> + <translation>์ด ํ๋ก๊ทธ๋จ์๋ OpenSSL ํดํท<https://www.openssl.org/> ์ฌ์ฉ ๋ชฉ์ ์ผ๋ก ๊ฐ๋ฐํ OpenSSL ํ๋ก์ ํธ๋ฅผ ํฌํจํ๊ณ ์์ผ๋ฉฐ, ์ํธํ ํ๋ก๊ทธ๋จ์ Eric Young์ด, UPnP ํ๋ก๊ทธ๋จ์ Thomas Bernard๊ฐ ์์ฑํ์ต๋๋ค.</translation> + </message> + <message> + <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> + <translation>ํ์ดํธ๋ฆฌ์คํธ์ ํฌํจ๋ ํผ์ด๋ ์ด๋ฏธ ๋ฉ๋ชจ๋ฆฌํ์ ํฌํจ๋์ด ์์ด๋ DoS ์ถ๋ฐฉ์ด ๋์ง ์์ผ๋ฉฐ ๊ทธ๋ค์ ํธ๋์ญ์
์ด ํญ์ ์ค๊ณ๋ฉ๋๋ค, ์ด๋ ์๋ฅผ ๋ค๋ฉด ๊ฒ์ดํธ์จ์ด์์ ์ ์ฉํฉ๋๋ค.</translation> + </message> + <message> + <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source> + <translation>์ถ์ ๋ชจ๋๋ฅผ ํด์ ํ๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ๊ตฌ์ฑ ํ๊ธฐ ์ํด -reindex๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ์ด ๋ช
๋ น์ ๋ชจ๋ ๋ธ๋ก์ฒด์ธ์ ๋ค์ ๋ค์ด๋ก๋ ํ ๊ฒ ์
๋๋ค.</translation> + </message> + <message> + <source>(default: %u)</source> + <translation>(๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Accept public REST requests (default: %u)</source> + <translation>๊ณต๊ฐ REST ์์ฒญ์ ํ๊ฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Activating best chain...</source> + <translation>์ต์ ๋ธ๋ก ์ฒด์ธ์ ํ์ฑํํ๋์ค...</translation> + </message> + <message> + <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> + <translation>์์์ ๋ง๊ฐ์ง wallet.dat์์ ๊ฐ์ธํค ๋ณต์์ ์๋</translation> + </message> + <message> + <source>Automatically create Tor hidden service (default: %d)</source> + <translation>Tor์๋น์ค๋ฅผ ์๋์ ์ผ๋ก ์์ฑ (๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> <source>Cannot resolve -whitebind address: '%s'</source> <translation>-whitebind ์ฃผ์๋ฅผ ํ์ธํ ์ ์์ต๋๋ค: '%s'</translation> </message> <message> + <source>Connect through SOCKS5 proxy</source> + <translation>SOCK5 ํ๋ก์๋ฅผ ํตํด ์ฐ๊ฒฐ</translation> + </message> + <message> + <source>Copyright (C) 2009-%i The Bitcoin Core Developers</source> + <translation>Copyright (C) 2009-%i The Bitcoin Core Developers</translation> + </message> + <message> + <source>Error loading wallet.dat: Wallet requires newer version of Bitcoin Core</source> + <translation>wallet.dat ๋ถ๋ฌ์ค๊ธฐ ์ค๋ฅ: ์ต์ ๋ฒ์ ์ Bitcoin Core์ด ํ์ํฉ๋๋ค.</translation> + </message> + <message> + <source>Error reading from database, shutting down.</source> + <translation>๋ธ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ถ๋ฌ์ค๋๋ฐ ์ค๋ฅ๊ฐ ๋ฐ์ํ์์ต๋๋ค, ์ข
๋ฃ๋ฉ๋๋ค.</translation> + </message> + <message> + <source>Imports blocks from external blk000??.dat file on startup</source> + <translation>์ธ๋ถ blk000??.dat ํ์ผ์์ ๋ธ๋ก์ ๊ฐ์ ธ์ค๊ธฐ</translation> + </message> + <message> <source>Information</source> <translation>์ ๋ณด</translation> </message> <message> + <source>Initialization sanity check failed. Bitcoin Core is shutting down.</source> + <translation>๋ฌด๊ฒฐ์ฑ ํ์ธ ์ด๊ธฐํ๊ฐ ์คํจํ์ต๋๋ค. Bitcoin Core๊ฐ ์ข
๋ฃ๋ฉ๋๋ค.</translation> + </message> + <message> <source>Invalid amount for -maxtxfee=<amount>: '%s'</source> <translation>-maxtxfee=<amount>์ ๋ํ ์์ด ์๋ชป๋์์ต๋๋ค: '%s'</translation> </message> @@ -2520,14 +3388,54 @@ <translation>์ต์ ๊ฑฐ๋ ์์๋ฃ๊ฐ ๋ถ์กฑํฉ๋๋ค. -mintxfee=<amount>: '%s'</translation> </message> <message> + <source>Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s)</source> + <translation>์ ํจํ์ง ์์ ๊ธ์ก -paytxfee=<amount>: "%s" (์ต์ %s ์ด์์ด์ด์ผ ๋จ)</translation> + </message> + <message> + <source>Invalid netmask specified in -whitelist: '%s'</source> + <translation>์ ํจํ์ง ์์ ๋ท๋ง์คํฌ๊ฐ -whitelist: '%s" ๋ฅผ ํตํด ์ง์ ๋จ</translation> + </message> + <message> + <source>Keep at most <n> unconnectable transactions in memory (default: %u)</source> + <translation>์ต๋ <n>๊ฐ์ ์ฐ๊ฒฐํ ์ ์๋ ํธ๋์ญ์
์ ๋ฉ๋ชจ๋ฆฌ์ ์ ์ฅ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Need to specify a port with -whitebind: '%s'</source> + <translation>-whitebind๋ฅผ ์ด์ฉํ์ฌ ํฌํธ๋ฅผ ์ง์ ํด์ผ ํฉ๋๋ค: '%s"</translation> + </message> + <message> + <source>Node relay options:</source> + <translation>Node ์ค๊ณ ์ต์
:</translation> + </message> + <message> <source>RPC server options:</source> <translation>RPC ์๋ฒ ์ค์ </translation> </message> <message> + <source>Rebuild block chain index from current blk000??.dat files on startup</source> + <translation>ํ์ฌ์ blk000??.dat ํ์ผ๋ค๋ก๋ถํฐ ๋ธ๋ก์ฒด์ธ ์์ธ์ ์ฌ๊ตฌ์ฑํฉ๋๋ค.</translation> + </message> + <message> + <source>Receive and display P2P network alerts (default: %u)</source> + <translation>P2P ๋คํธ์ํฌ ์๋ฆผ์ ์์ ํ ํ์ํฉ๋๋ค (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>์์คํ
ํ๊ณ๋ก ์ธํ์ฌ -maxconnections๋ฅผ %d ์์ %d๋ก ์ค์์ต๋๋ค.</translation> + </message> + <message> + <source>Rescan the block chain for missing wallet transactions on startup</source> + <translation>์์์ ๋๋ฝ๋ ์ง๊ฐ ํธ๋์ญ์
์ ๋ํด ๋ธ๋ก ์ฒด์ธ์ ๋ค์ ๊ฒ์ ํฉ๋๋ค</translation> + </message> + <message> <source>Send trace/debug info to console instead of debug.log file</source> <translation>์ถ์ ์ค๋ฅ ์ ๋ณด๋ฅผ degug.log ์๋ฃ๋ก ๋ณด๋ด๋ ๋์ ์ฝ์๋ก ๋ณด๋ด๊ธฐ</translation> </message> <message> + <source>Send transactions as zero-fee transactions if possible (default: %u)</source> + <translation>๊ฐ๋ฅํ ๊ฒฝ์ฐ ์์๋ฃ ์์ด ํธ๋์ญ์
๋ณด๋ด๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Show all debugging options (usage: --help -help-debug)</source> <translation>๋ชจ๋ ๋๋ฒ๊ทธ ์ค์ ๋ณด๊ธฐ(์ค์ : --help -help-debug)</translation> </message> @@ -2540,30 +3448,70 @@ <translation>๊ฑฐ๋๋ฅผ ์๋ช
ํ๋๊ฒ์ ์คํจํ์์ต๋๋ค.</translation> </message> <message> + <source>The transaction amount is too small to pay the fee</source> + <translation>๊ฑฐ๋์ก์ด ์์๋ฃ๋ฅผ ์ง๋ถํ๊ธฐ์ ๋๋ฌด ์์ต๋๋ค</translation> + </message> + <message> + <source>This is experimental software.</source> + <translation>์ด ์ํํธ์จ์ด๋ ์ํ์ ์
๋๋ค.</translation> + </message> + <message> + <source>Tor control port password (default: empty)</source> + <translation>Tor ๊ด๋ฆฌ ํฌํธ ์ํธ (๊ธฐ๋ณธ๊ฐ: ๊ณต๋)</translation> + </message> + <message> + <source>Tor control port to use if onion listening enabled (default: %s)</source> + <translation>onion ์ด๋ฆผ์ด ํ์ฑํ์ Tor ๊ด๋ฆฌ ํฌํธ ์ฌ์ฉ (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> <source>Transaction amount too small</source> - <translation>๊ฑฐ๋๋์ด ๋๋ฌด ์ ์ต๋๋ค</translation> + <translation>๊ฑฐ๋์ก์ด ๋๋ฌด ์ ์ต๋๋ค</translation> </message> <message> <source>Transaction amounts must be positive</source> - <translation>๊ฑฐ๋๋์ ๋ฐ๋์ ์ ์์ฌ์ผํฉ๋๋ค.</translation> + <translation>๊ฑฐ๋์ก์ ๋ฐ๋์ ์ ์์ฌ์ผํฉ๋๋ค.</translation> + </message> + <message> + <source>Transaction too large for fee policy</source> + <translation>์์๋ฃ ์ ์ฑ
์ ๋นํด ํธ๋์ญ์
์ด ๋๋ฌด ํฝ๋๋ค</translation> </message> <message> <source>Transaction too large</source> <translation>๋๋ฌด ํฐ ๊ฑฐ๋</translation> </message> <message> + <source>Upgrade wallet to latest format on startup</source> + <translation>์์์ ์ง๊ฐ ํฌ๋ฉง์ ์ต์ ์ผ๋ก ์
๊ทธ๋ ์ด๋ ํฉ๋๋ค</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>JSON-RPC ์ฐ๊ฒฐ์ ์ฌ์ฉํ ์ฌ์ฉ์ ์ด๋ฆ</translation> </message> <message> + <source>Wallet needed to be rewritten: restart Bitcoin Core to complete</source> + <translation>์ง๊ฐ์ ์๋ก ์จ์ผ ํฉ๋๋ค: ์๋ฃํ๊ธฐ ์ํ์ฌ Bitcoin Core์ ๋ค์ ์์ํ์ญ์์ค.</translation> + </message> + <message> <source>Warning</source> <translation>๊ฒฝ๊ณ </translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>๊ฒฝ๊ณ : ์๋ ค์ง์ง ์์ ์๋ก์ด ๊ท์น์ด ํ์ฑํ๋์์ต๋๋ค. (๋ฒ์ ๋นํธ %i)</translation> + </message> + <message> + <source>Whether to operate in a blocks only mode (default: %u)</source> + <translation>๋ธ๋ก ์ ์ฉ ๋ชจ๋๋ก ๋์ํ ์ง ์ฌ๋ถ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Zapping all transactions from wallet...</source> <translation>์ง๊ฐ์ ๋ชจ๋ ๊ฑฐ๋๋ด์ญ ๊ฑด๋๋ฐ๊ธฐ...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>ZeroMQ ์๋ฆผ ์ต์
:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>wallet.dat ํ์ผ์ด ์์๋์๊ณ ๋ณต๊ตฌ๊ฐ ์คํจํ์์ต๋๋ค.</translation> </message> @@ -2589,17 +3537,161 @@ </message> <message> <source>Error loading wallet.dat: Wallet corrupted</source> - <translation>wallet.dat ๋ถ๋ฌ์ค๊ธฐ ์๋ฌ: ์ง๊ฐ ์ค๋ฅ</translation> + <translation>wallet.dat ๋ถ๋ฌ์ค๊ธฐ ์ค๋ฅ: ์ง๊ฐ ์ค๋ฅ</translation> + </message> + <message> + <source>(1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)</source> + <translation>(1 = ํธ๋์ญ์
์ ๋ฉํ ๋ฐ์ดํฐ๋ฅผ ์ ์งํจ ์. ๊ณ์ข์ ๋ณด ์ ์ง๋ถ ์๊ตฌ ์ ๋ณด, 2 = ํธ๋์ญ์
๋ฉํ ๋ฐ์ดํฐ ํ๊ธฐ)</translation> + </message> + <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee๊ฐ์ด ๋๋ฌด ํฝ๋๋ค! ํ๋์ ํธ๋์ญ์
์ ๋๋ฌด ํฐ ์์๋ฃ๊ฐ ์ง๋ถ ๋ฉ๋๋ค.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee๊ฐ์ด ๋๋ฌด ํฝ๋๋ค! ์ด ๊ฐ์ ์ก๊ธํ ๋ ์ง๋ถํ ์ก๊ธ ์์๋ฃ์
๋๋ค.</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>๋ฉ๋ชจ๋ฆฌ ํ์ ์๋ ํธ๋์ญ์
๊ธฐ๋ก์ <n>์๊ฐ ํ ๋ถํฐ๋ ์ ์งํ์ง ์๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>๊ฒฝ๊ณ : wallet.dat ํ์ผ์ ์ฝ๋ ์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์ฃผ์ ํค๋ ๋ชจ๋ ์ ํํ๊ฒ ๋ก๋ฉ๋์์ผ๋ ๊ฑฐ๋ ๋ฐ์ดํฐ์ ์ฃผ์๋ก ํ๋์์ ๋๋ฝ์ด๋ ์ค๋ฅ๊ฐ ์กด์ฌํ ์ ์์ต๋๋ค. </translation> + </message> + <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>ํด๋น ๊ธ์ก(%s/kB) ๋ณด๋ค ์ ์ ์์๋ฃ๋ ์์๋ฃ ๋ฉด์ ๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.(๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> + <translation>-checkblocks์ ํตํ ๋ธ๋ก ์ ๊ฒ (0-4, ๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Maintain a full transaction index, used by the getrawtransaction rpc call (default: %u)</source> + <translation>getrawtransaction๋ฅผ RPC CALL๋ฅผ ํตํด ์์ ํ ํธ๋์ญ์
์ธ๋ฑ์ค ์ ์ง (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Number of seconds to keep misbehaving peers from reconnecting (default: %u)</source> + <translation>์ด์ํ๋์ ํ๋ ๋คํธ์ํฌ ์ฐธ์ฌ์๋ค์ ๋ค์ ์ฐ๊ฒฐ์ํค๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Output debugging information (default: %u, supplying <category> is optional)</source> + <translation>๋๋ฒ๊ทธ ์ ๋ณด ์ถ๋ ฅ (๊ธฐ๋ณธ๊ฐ: %u, <category> ์ ๊ณต์ ์ ํ์
๋๋ค)</translation> + </message> + <message> + <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> + <translation>๋ธ๋ฃธํํฐ๋ฅผ ํตํด ๋ธ๋ก๊ณผ ํธ๋์ญ์
ํํฐ๋ง ์ง์ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>๋คํธ์ํฌ ๋ฒ์ ๋ฌธ์ (%i)์ ๊ธธ์ด๊ฐ ์ต๋๊ธธ์ด (%i)๋ฅผ ์ด๊ณผํฉ๋๋ค. UA์ฝ๋ฉํธ์ ๊ฐฏ์๋ ๊ธธ์ด๋ฅผ ์ค์ด์ธ์.</translation> + </message> + <message> + <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> + <translation>์์๋ฐ์ด๋ ํธ๋ํฝ์ ์ค์ ๋ ๋ชฉํ์น ์ดํ๋ก ์ ์งํ๊ธฐ (24์๊ฐ๋น MiB๊ธฐ์ค), 0 = ๋ฌด์ ํ (๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> + <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> + <translation>์ง์ํ์ง ์๋ ์ธ์ -socks๋ฅผ ์ฐพ์์ต๋๋ค. ์ค์ ๋ SOCKS์ ๋ฒ์ ์ ๋์ด์ ์ฌ์ฉํ ์ ์์ผ๋ฉฐ, SOCK5 ํ๋ก์๋ง์ ์ง์ํฉ๋๋ค.</translation> + </message> + <message> + <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> + <translation>Tor ์๋น์ค๋ฅผ ์ด์ฉํ์ฌ ํผ์ด์๊ฒ ์ฐ๊ฒฐํ๊ธฐ ์ํด ๋ถ๋ฆฌ๋ SOCKS5 ํ๋ก์๋ฅผ ์ฌ์ฉ (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>JSON-RPC ์ฐ๊ฒฐ์ ์ฌ์ฉ์ ์ด๋ฆ๊ณผ ํด์ํ๋ ์ํธ๋ฌธ. <userpw> ํ๋๋ <USERNAME>:<SALT>$<HASH> ํฌ๋ฉง์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค. ์ ํ์ ํ์ด์ฌ ์คํฌ๋ฆฝํธ์์ share/rpcuser๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ์ด ์ต์
์ ์ฌ๋ฌ๋ฒ ์ง์ ํ ์ ์์ต๋๋ค.</translation> + </message> + <message> + <source>Always query for peer addresses via DNS lookup (default: %u)</source> + <translation>DNS lookup์ ํตํด ํญ์ ํผ์ด์ฃผ์์ ๋ํ ์ฟผ๋ฆฌ ๋ณด๋ด๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> </message> <message> <source>Error loading wallet.dat</source> - <translation>wallet.dat ๋ถ๋ฌ์ค๊ธฐ ์๋ฌ</translation> + <translation>wallet.dat ๋ถ๋ฌ์ค๊ธฐ ์ค๋ฅ</translation> + </message> + <message> + <source>Generate coins (default: %u)</source> + <translation>์ฝ์ธ ์์ฑ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>How many blocks to check at startup (default: %u, 0 = all)</source> + <translation>์์์ ์ ๊ฒํ ๋ธ๋ก ๊ฐฏ์ (๊ธฐ๋ณธ๊ฐ: %u, 0 = ๋ชจ๋)</translation> + </message> + <message> + <source>Include IP addresses in debug output (default: %u)</source> + <translation>๋๋ฒ๊ทธ ์ถ๋ ฅ์ IP์ฃผ์ ํฌํจํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> </message> <message> <source>Invalid -proxy address: '%s'</source> <translation>์๋ชป๋ -proxy ์ฃผ์์
๋๋ค: '%s'</translation> </message> <message> + <source>Listen for JSON-RPC connections on <port> (default: %u or testnet: %u)</source> + <translation>JSON-RPC ์ฐ๊ฒฐ์ <port>ํฌํธ๋ก ๋ฐ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u ํน์ ํ
์คํธ๋ท: %u)</translation> + </message> + <message> + <source>Listen for connections on <port> (default: %u or testnet: %u)</source> + <translation><port>ํฌํธ๋ก ์ฐ๊ฒฐ ๋ฐ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u ํน์ ํ
์คํธ๋ท: %u)</translation> + </message> + <message> + <source>Maintain at most <n> connections to peers (default: %u)</source> + <translation>ํผ์ด ์ฐ๊ฒฐ์๋ฅผ <n>๊ฐ๋ก ์ ์ง (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Make the wallet broadcast transactions</source> + <translation>์ง๊ฐ ๋ธ๋ก๋์บ์คํธ ํธ๋์ญ์
์ ๋ง๋ค๊ธฐ</translation> + </message> + <message> + <source>Maximum per-connection receive buffer, <n>*1000 bytes (default: %u)</source> + <translation>์ ์๋ณ ์ต๋ ์์ ๋ฒํผ. <n> ร 1000๋ฐ์ดํธ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Maximum per-connection send buffer, <n>*1000 bytes (default: %u)</source> + <translation>์ ์๋ณ ์ต๋ ์ ์ก ๋ฒํผ. <n> ร 1000๋ฐ์ดํธ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Prepend debug output with timestamp (default: %u)</source> + <translation>๋๋ฒ๊ทธ ์ถ๋ ฅ์ ํ์ ์คํฌํ ํฌํจํ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Relay and mine data carrier transactions (default: %u)</source> + <translation>๋ฐ์ดํฐ ์ด์ก ํธ๋์ญ์
์ ์ค๊ณ ๋ฐ ์ฑ๊ตด (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Relay non-P2SH multisig (default: %u)</source> + <translation>๋น P2SH ๋ค์ค์๋ช
์ ์ค๊ณ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Set key pool size to <n> (default: %u)</source> + <translation>ํค ํ ์ฌ์ด์ฆ๋ฅผ <n> ๋ก ์ค์ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Set the number of threads to service RPC calls (default: %d)</source> + <translation>์๊ฒฉ ํ๋ก์์ ธ ํธ์ถ ์๋น์ค๋ฅผ ์ํ ์ฐ๋ ๋ ๊ฐ์๋ฅผ ์ค์ (๊ธฐ๋ณธ๊ฐ : %d)</translation> + </message> + <message> + <source>Specify configuration file (default: %s)</source> + <translation>์ค์ ํ์ผ ์ง์ (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Specify connection timeout in milliseconds (minimum: 1, default: %d)</source> + <translation>๋ฐ๋ฆฌ์ด ๋จ์๋ก ์ฐ๊ฒฐ ์ ํ์๊ฐ์ ์ค์ (์ต์๊ฐ: 1, ๊ธฐ๋ณธ๊ฐ: %d)</translation> + </message> + <message> + <source>Specify pid file (default: %s)</source> + <translation>pid ํ์ผ ์ง์ (๊ธฐ๋ณธ๊ฐ: %s)</translation> + </message> + <message> + <source>Spend unconfirmed change when sending transactions (default: %u)</source> + <translation>ํธ๋์ญ์
์ ๋ณด๋ผ ๋ ๊ฒ์ฆ๋์ง ์์ ์๋ ์ฐ๊ธฐ (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> + <source>Threshold for disconnecting misbehaving peers (default: %u)</source> + <translation>์ด์ํ๋ ๋คํธ์ํฌ ์ฐธ์ฌ์์ ์ฐ๊ฒฐ์ ์ฐจ๋จ์ํค๊ธฐ ์ํ ํ๊ณ์น (๊ธฐ๋ณธ๊ฐ: %u)</translation> + </message> + <message> <source>Unknown network specified in -onlynet: '%s'</source> <translation>-onlynet์ ์ง์ ํ ๋คํธ์ํฌ๋ฅผ ์ ์ ์์ต๋๋ค: '%s'</translation> </message> diff --git a/src/qt/locale/bitcoin_la.ts b/src/qt/locale/bitcoin_la.ts index e3dcd505fe..b11027d1ee 100644 --- a/src/qt/locale/bitcoin_la.ts +++ b/src/qt/locale/bitcoin_la.ts @@ -668,10 +668,6 @@ <translation>Fenestra Debug</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Utens OpenSSL versione</translation> - </message> - <message> <source>Startup time</source> <translation>Tempus initiandi</translation> </message> diff --git a/src/qt/locale/bitcoin_lt.ts b/src/qt/locale/bitcoin_lt.ts index b98976dfea..873a6939b7 100644 --- a/src/qt/locale/bitcoin_lt.ts +++ b/src/qt/locale/bitcoin_lt.ts @@ -34,6 +34,10 @@ <translation>Iลกtrinti pasirinktฤ
adresฤ
iลก sฤ
raลกo</translation> </message> <message> + <source>Export the data in the current tab to a file</source> + <translation>Eksportuoti informacijฤ
iลก dabartinฤs lentelฤs ฤฏ failฤ
</translation> + </message> + <message> <source>&Export</source> <translation>&Eksportuoti</translation> </message> @@ -46,6 +50,10 @@ <translation>Pasirinkite adresฤ
kuriam siลซsite monetas</translation> </message> <message> + <source>Choose the address to receive coins with</source> + <translation>Pasirinkite adresฤ
su kuriuo gauti monetas</translation> + </message> + <message> <source>C&hoose</source> <translation>P&asirinkti</translation> </message> @@ -58,6 +66,14 @@ <translation>Gaunami adresai</translation> </message> <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Tai yra jลซsลณ Bitcoin adresai mokฤjimลณ siuntimui. Visada patikrinkite siunฤiamฤ
sumฤ
ir gavฤjo adresฤ
prieลก siลณsdami monetas.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Tai yra jลซsลณ Bitcoin adresai mokฤjimลณ gavimui. Rekomenduojame naudoti naujus gavimo adresus kiekvienai tranzakcijai.</translation> + </message> + <message> <source>Copy &Label</source> <translation>Kopijuoti ลพ&ymฤ</translation> </message> @@ -908,10 +924,6 @@ <translation>Derinimo langas</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Naudojama OpenSSL versija</translation> - </message> - <message> <source>Startup time</source> <translation>Paleidimo laikas</translation> </message> @@ -1691,6 +1703,10 @@ <translation>&Eksportuoti</translation> </message> <message> + <source>Export the data in the current tab to a file</source> + <translation>Eksportuoti informacijฤ
iลก dabartinฤs lentelฤs ฤฏ failฤ
</translation> + </message> + <message> <source>Backup Wallet</source> <translation>Backup piniginฤ</translation> </message> diff --git a/src/qt/locale/bitcoin_lv_LV.ts b/src/qt/locale/bitcoin_lv_LV.ts index e01d4c812c..5a59184b0c 100644 --- a/src/qt/locale/bitcoin_lv_LV.ts +++ b/src/qt/locale/bitcoin_lv_LV.ts @@ -1080,10 +1080,6 @@ <translation>Vispฤrฤjs</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Izmantotฤ OpenSSL versija</translation> - </message> - <message> <source>Startup time</source> <translation>Sฤkuma laiks</translation> </message> diff --git a/src/qt/locale/bitcoin_nb.ts b/src/qt/locale/bitcoin_nb.ts index 9236ac86fe..94e02f8900 100644 --- a/src/qt/locale/bitcoin_nb.ts +++ b/src/qt/locale/bitcoin_nb.ts @@ -1474,10 +1474,6 @@ <translation>Generelt</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Bruker OpenSSL versjon</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Bruker BerkeleyDB versjon</translation> </message> @@ -3196,10 +3192,6 @@ <translation>Valg for lommebok:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Advarsel: Denne versjonen er utdatert; oppgradering er pรฅkrevd!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Du mรฅ gjenoppbygge databasen med รฅ bruke -reindex for รฅ endre -txindex</translation> </message> @@ -3296,10 +3288,6 @@ <translation>Aktiverer beste kjede...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Alltid videresend transaksjoner mottatt fra hvitlistede noder (standardverdi: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Forsรธk รฅ berge private nรธkler fra en korrupt wallet.dat ved oppstart</translation> </message> diff --git a/src/qt/locale/bitcoin_nl.ts b/src/qt/locale/bitcoin_nl.ts index 8457a9ab50..fe29959abf 100644 --- a/src/qt/locale/bitcoin_nl.ts +++ b/src/qt/locale/bitcoin_nl.ts @@ -7,7 +7,7 @@ </message> <message> <source>Create a new address</source> - <translation>Maak een nieuw adres</translation> + <translation>Maak een nieuw adres aan</translation> </message> <message> <source>&New</source> @@ -169,7 +169,7 @@ </message> <message> <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> - <translation>Bitcoin Core zal nu afsluiten om het versleutelingsproces te voltooien. Hou er rekening mee dat versleuteling van je portemonnee je niet volledig beschermt tegen diefstal van jouw bitcoins door malware op je computer.</translation> + <translation>Bitcoin Core zal nu afsluiten om het versleutelingsproces te voltooien. Hou er rekening mee dat versleuteling van uw portemonnee u niet volledig beschermt tegen diefstal van jouw bitcoins door malware op je computer.</translation> </message> <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> @@ -1474,10 +1474,6 @@ <translation>Algemeen</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Gebruikt OpenSSL versie</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Gebruikt BerkeleyDB versie</translation> </message> @@ -2980,6 +2976,18 @@ <translation>Accepteer verbindingen van buitenaf (standaard: 1 als geen -proxy of -connect is opgegeven)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee is zeer hoog ingesteld! Dit zijn de transactie kosten die u mogelijk betaald wanneer de schattingen niet beschikbaar zijn.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Een transactietarief (in %s/kB) dat gebruikt wordt als de transactiekosten schatting niet genoeg data heeft. (normaal: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Accepteer doorgestuurde transacties ontvangen van goedgekeurde peers, ook wanneer je zelf geen transacties doorstuurt (standaard: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Bind aan opgegeven adres en luister er altijd op. Gebruik [host]:port notatie voor IPv6</translation> </message> @@ -2996,6 +3004,10 @@ <translation>Voer opdracht uit zodra een portemonneetransactie verandert (%s in cmd wordt vervangen door TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Forceer het doorsturen van transacties van goedgekeurde peers, zelfs wanneer deze niet voldoen aan de lokale doorstuur regels (standaard: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Kies het aantal scriptverificatie processen (%u tot %d, 0 = auto, <0 = laat dit aantal kernen vrij, standaard: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>Niet in staat om %s te verbinden op deze computer. Bitcoin Core draait waarschijnlijk al.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Niet ondersteund argument -whitelistalwaysrelay genegeerd, gebruik -whitelistrelay en/of -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Gebruik UPnP om de luisterende poort te mappen (standaard: 1 als er geluisterd worden en geen -proxy is meegegeven)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>Waarschuwing: Het lijkt erop dat het netwerk geen consensus kan vinden! Sommige delvers lijken problemen te ondervinden.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Waarschuwing: Onbekende blok versies worden gemined! Er zijn mogelijk onbekende regels in werking getreden</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Waarschuwing: Het lijkt erop dat we geen consensus kunnen vinden met onze peers! Mogelijk dient u te upgraden, of andere nodes moeten wellicht upgraden.</translation> </message> @@ -3048,6 +3068,10 @@ <translation><categorie> kan zijn:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Voeg commentaar toe aan de user agent string</translation> + </message> + <message> <source>Block creation options:</source> <translation>Blokcreatie-opties:</translation> </message> @@ -3092,6 +3116,10 @@ <translation>Sta toe ruwe transacties te publiceren in <adres></translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Transactie vervanging inschakelen in het geheugen (standaard: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Fout bij intialisatie blokkendatabase</translation> </message> @@ -3128,10 +3156,22 @@ <translation>Ongeldig -onion adres '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Ongeldig bedrag voor -fallbackfee=<bedrag>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>De transactiegeheugenpool moet onder de <n> megabytes blijven (standaard: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Locatie van de auth cookie (standaard: data dir)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Minimum aantal bytes dat er per sigop in een transactie gerelayed en gemined worden (standaard: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Niet genoeg file descriptors beschikbaar.</translation> </message> @@ -3140,6 +3180,10 @@ <translation>Verbind alleen met nodes in netwerk <net> (ipv4, ipv6 of onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Laat versie zien en sluit af</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Snoeien kan niet worden geconfigureerd met een negatieve waarde.</translation> </message> @@ -3196,10 +3240,6 @@ <translation>Portemonnee instellingen:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Waarschuwing: Deze versie is verouderd; upgraden verplicht!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Om -txindex te kunnen veranderen dient u de database herbouwen met gebruik van -reindex.</translation> </message> @@ -3296,10 +3336,6 @@ <translation>Beste reeks activeren...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Geef transacties altijd door aan goedgekeurde peers (standaard: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Probeer privรฉsleutels te herstellen van een corrupte wallet.dat bij opstarten</translation> </message> @@ -3464,6 +3500,10 @@ <translation>Waarschuwing</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Waarschuwing: onbekende nieuwe regels geactiveerd (versionbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Om in alleen een blokmodus te opereren (standaard: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_pam.ts b/src/qt/locale/bitcoin_pam.ts index 233918ff2b..c5a0b17e80 100644 --- a/src/qt/locale/bitcoin_pam.ts +++ b/src/qt/locale/bitcoin_pam.ts @@ -656,10 +656,6 @@ <translation>I-Debug ing awang</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Gagamit bersion na ning OpenSSL</translation> - </message> - <message> <source>Startup time</source> <translation>Oras ning umpisa</translation> </message> diff --git a/src/qt/locale/bitcoin_pl.ts b/src/qt/locale/bitcoin_pl.ts index 8a8c377480..ffbacfd492 100644 --- a/src/qt/locale/bitcoin_pl.ts +++ b/src/qt/locale/bitcoin_pl.ts @@ -87,11 +87,11 @@ </message> <message> <source>Comma separated file (*.csv)</source> - <translation>CSV (rozdzielany przecinkami)</translation> + <translation>Pliki (*.csv) rozdzielone przecinkami</translation> </message> <message> <source>Exporting Failed</source> - <translation>Bลฤ
d przy prรณbie eksportu</translation> + <translation>Bลฤ
d przy prรณbie eksportowania</translation> </message> <message> <source>There was an error trying to save the address list to %1. Please try again.</source> @@ -137,7 +137,7 @@ </message> <message> <source>This operation needs your wallet passphrase to unlock the wallet.</source> - <translation>Ta operacja wymaga hasลa do portfela aลผeby odblokowaฤ portfel.</translation> + <translation>Operacja wymaga hasลa portfela, aby go odblokowaฤ.</translation> </message> <message> <source>Unlock wallet</source> @@ -145,7 +145,7 @@ </message> <message> <source>This operation needs your wallet passphrase to decrypt the wallet.</source> - <translation>Ta operacja wymaga hasลa do portfela aลผeby odszyfrowaฤ portfel.</translation> + <translation>Operacja wymaga hasลa portfela, aby go odszyfrowaฤ.</translation> </message> <message> <source>Decrypt wallet</source> @@ -161,7 +161,7 @@ </message> <message> <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> - <translation>Uwaga: Jeลli zaszyfrujesz swรณj portfel i zgubisz hasลo to <b>STRACISZ WSZYSTKIE SWOJE BITCOIN'Y</b>!</translation> + <translation>Uwaga: jeลli zaszyfrujesz swรณj portfel i zgubisz hasลo <b>STRACISZ WSZYSTKIE SWOJE BITCOINY</b>!</translation> </message> <message> <source>Are you sure you wish to encrypt your wallet?</source> @@ -169,15 +169,15 @@ </message> <message> <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> - <translation>Program Bitcoin Core zamknie siฤ, aby dokoลczyฤ proces szyfrowania. Pamiฤtaj, ลผe szyfrowanie portfela nie zabezpiecza w peลni Twoich bitcoinรณw przed kradzieลผฤ
przez wirusy lub trojany mogฤ
ce zainfekowaฤ Twรณj komputer.</translation> + <translation>Program Bitcoin Core zamknie siฤ, aby dokoลczyฤ proces szyfrowania. Pamiฤtaj, ลผe szyfrowanie portfela nie zabezpiecza w peลni twoich bitcoinรณw przed kradzieลผฤ
przez zลoลliwe oprogramowanie mogฤ
ce zainfekowaฤ twรณj komputer.</translation> </message> <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> - <translation>WAลปNE: Wszystkie wykonane wczeลniej kopie pliku portfela powinny byฤ zamienione na nowe, szyfrowane pliki. Z powodรณw bezpieczeลstwa, poprzednie kopie nieszyfrowanych plikรณw portfela stanฤ
siฤ bezuลผyteczne jak tylko zaczniesz korzystaฤ z nowego, szyfrowanego portfela.</translation> + <translation>WAลปNE: Wszystkie wczeลniejsze kopie pliku portfela powinny byฤ zamienione na nowe, szyfrowane pliki. Z powodรณw bezpieczeลstwa, poprzednie kopie nieszyfrowanych plikรณw portfela stanฤ
siฤ bezuลผyteczne jak tylko zaczniesz korzystaฤ z nowego, szyfrowanego portfela.</translation> </message> <message> <source>Warning: The Caps Lock key is on!</source> - <translation>Uwaga: Klawisz Caps Lock jest wลฤ
czony!</translation> + <translation>Uwaga: klawisz Caps Lock jest wลฤ
czony!</translation> </message> <message> <source>Wallet encrypted</source> @@ -185,7 +185,7 @@ </message> <message> <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> - <translation>Wprowadลบ nowe hasลo do portfela.<br/>Proszฤ uลผywaฤ hasลa zลoลผonego z <b>10 lub wiฤcej losowych znakรณw</b> lub <b>oลmiu lub wiฤcej sลรณw.</b></translation> + <translation>Wprowadลบ nowe hasลo do portfela.<br/>Proszฤ uลผywaฤ hasลa zลoลผonego z <b>10 lub wiฤcej losowych znakรณw</b> albo <b>8 lub wiฤcej sลรณw.</b></translation> </message> <message> <source>Enter the old passphrase and new passphrase to the wallet.</source> @@ -224,7 +224,7 @@ <name>BanTableModel</name> <message> <source>IP/Netmask</source> - <translation>IP/Maska Sieci</translation> + <translation>IP / maska podsieci</translation> </message> <message> <source>Banned Until</source> @@ -307,7 +307,7 @@ </message> <message> <source>Bitcoin Core client</source> - <translation>Rdzeล klienta Bitcoin</translation> + <translation>Klient Rdzenia Bitcoina</translation> </message> <message> <source>Importing blocks from disk...</source> @@ -319,7 +319,7 @@ </message> <message> <source>Send coins to a Bitcoin address</source> - <translation>Wyลlij monety na adres Bitcoin</translation> + <translation>Wyลlij monety na adres bitcoinowy</translation> </message> <message> <source>Backup wallet to another location</source> @@ -359,7 +359,7 @@ </message> <message> <source>Show information about Bitcoin Core</source> - <translation>Pokaลผ informacje o Rdzeniu Bitcoin</translation> + <translation>Pokaลผ informacje o Rdzeniu Bitcoina</translation> </message> <message> <source>&Show / Hide</source> @@ -371,7 +371,7 @@ </message> <message> <source>Encrypt the private keys that belong to your wallet</source> - <translation>Szyfruj klucze prywatne, ktรณre sฤ
w Twoim portfelu</translation> + <translation>Szyfruj klucze prywatne, ktรณre sฤ
w twoim portfelu</translation> </message> <message> <source>Sign messages with your Bitcoin addresses to prove you own them</source> @@ -379,7 +379,7 @@ </message> <message> <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source> - <translation>Zweryfikuj wiadomoลฤ, aby upewniฤ siฤ, ลผe zostaลa podpisana podanym adresem Bitcoin.</translation> + <translation>Zweryfikuj wiadomoลฤ, aby upewniฤ siฤ, ลผe zostaลa podpisana podanym adresem bitcoinowym.</translation> </message> <message> <source>&File</source> @@ -399,11 +399,11 @@ </message> <message> <source>Bitcoin Core</source> - <translation>Rdzeล Bitcoin</translation> + <translation>Rdzeล Bitcoina</translation> </message> <message> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation>ลปฤ
daj pลatnoลci (generuje kod QR oraz bitcoin URI)</translation> + <translation>ลปฤ
daj pลatnoลci (generuje kod QR oraz bitcoinowe URI)</translation> </message> <message> <source>&About Bitcoin Core</source> @@ -450,6 +450,10 @@ <translation><numerusform>%n godzin</numerusform><numerusform>%n godzin</numerusform><numerusform>%n godzin</numerusform></translation> </message> <message numerus="yes"> + <source>%n day(s)</source> + <translation><numerusform>dzieล</numerusform><numerusform>%n dni</numerusform><numerusform>%n dni</numerusform></translation> + </message> + <message numerus="yes"> <source>%n week(s)</source> <translation><numerusform>%n tygodni</numerusform><numerusform>%n tygodni</numerusform><numerusform>%n tygodni</numerusform></translation> </message> @@ -491,7 +495,7 @@ </message> <message> <source>Catching up...</source> - <translation>Synchronizujฤ siฤ...</translation> + <translation>Trwa synchronizacjaโฆ</translation> </message> <message> <source>Date: %1 @@ -810,11 +814,11 @@ </message> <message> <source>The entered address "%1" is already in the address book.</source> - <translation>Wprowadzony adres "%1" juลผ istnieje w ksiฤ
ลผce adresowej.</translation> + <translation>Wprowadzony adres ยซ%1ยป juลผ istnieje w ksiฤ
ลผce adresowej.</translation> </message> <message> <source>The entered address "%1" is not a valid Bitcoin address.</source> - <translation>Wprowadzony adres "%1" nie jest poprawnym adresem Bitcoin.</translation> + <translation>Wprowadzony adres ยซ%1"ยป nie jest poprawnym adresem bitcoinowym.</translation> </message> <message> <source>Could not unlock wallet.</source> @@ -852,7 +856,7 @@ <name>HelpMessageDialog</name> <message> <source>Bitcoin Core</source> - <translation>Rdzeล Bitcoin</translation> + <translation>Rdzeล Bitcoina</translation> </message> <message> <source>version</source> @@ -888,7 +892,7 @@ </message> <message> <source>Set language, for example "de_DE" (default: system locale)</source> - <translation>Wybierz jฤzyk, na przykลad "de_DE" (domyลlnie: jฤzyk systemowy)</translation> + <translation>Wybierz jฤzyk, na przykลad ยซde_DEยป (domyลlnie: jฤzyk systemowy)</translation> </message> <message> <source>Start minimized</source> @@ -915,7 +919,7 @@ </message> <message> <source>Welcome to Bitcoin Core.</source> - <translation>Witam w Bitcoin Core</translation> + <translation>Witaj w Bitcoin Core</translation> </message> <message> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> @@ -923,7 +927,7 @@ </message> <message> <source>Bitcoin Core will download and store a copy of the Bitcoin block chain. At least %1GB of data will be stored in this directory, and it will grow over time. The wallet will also be stored in this directory.</source> - <translation>Program pobierze i bฤdzie przechowywaล kopiฤ ลaลcucha blokรณw Bitcoin. W wybranym katalogu musi byฤ przynajmniej %1GB miejsca, a z czasem iloลฤ danych bฤdzie rosลa. Portfel bฤdzie przechowywany w tym samym katalogu.</translation> + <translation>Program pobierze i bฤdzie przechowywaล kopiฤ ลaลcucha blokรณw bitcoinowych. W wybranym katalogu musi byฤ przynajmniej %1ย GB miejsca, a z czasem iloลฤ danych bฤdzie rosลa. Portfel bฤdzie przechowywany w tym samym katalogu.</translation> </message> <message> <source>Use the default data directory</source> @@ -935,11 +939,11 @@ </message> <message> <source>Bitcoin Core</source> - <translation>Rdzeล Bitcoin</translation> + <translation>Rdzeล Bitcoina</translation> </message> <message> <source>Error: Specified data directory "%1" cannot be created.</source> - <translation>Bลฤ
d: Okreลlony folder danych "%1" nie mรณgล zostaฤ utworzony.</translation> + <translation>Bลฤ
d: podany folder danych ยซ%1ยป nie mรณgล zostaฤ utworzony.</translation> </message> <message> <source>Error</source> @@ -1037,7 +1041,7 @@ </message> <message> <source>&Reset Options</source> - <translation>Z&resetuj Ustawienia</translation> + <translation>Z&resetuj ustawienia</translation> </message> <message> <source>&Network</source> @@ -1049,7 +1053,7 @@ </message> <message> <source>&Start Bitcoin Core on system login</source> - <translation>Uruchamiaj Bitcoin wraz z zalogowaniem do &systemu</translation> + <translation>Uruchamiaj Bitcoin Core wraz z zalogowaniem do &systemu</translation> </message> <message> <source>(0 = auto, <0 = leave that many cores free)</source> @@ -1093,7 +1097,7 @@ </message> <message> <source>Proxy &IP:</source> - <translation>Proxy &IP: </translation> + <translation>&IP proxy: </translation> </message> <message> <source>&Port:</source> @@ -1104,6 +1108,10 @@ <translation>Port proxy (np. 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>Uลผyto do poลฤ
czenia z peerami przy pomocy:</translation> + </message> + <message> <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> <translation>Pokazuje, czy wspierane domyลlnie proxy SOCKS5 jest uลผywane do ลฤ
czenia siฤ z peerami w tej sieci</translation> </message> @@ -1120,8 +1128,12 @@ <translation>Tor</translation> </message> <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Poลฤ
cz siฤ z sieciฤ
Bitcoin przy pomocy oddzielnego SOCKS5 proxy dla sieci TOR</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> - <translation>Uลผyj oddzielnego prozy SOCKS5 aby osiฤ
gnฤ
ฤ wฤzลy w ukrytych usลugach Tor:</translation> + <translation>Uลผyj oddzielnego proxy SOCKS5 aby osiฤ
gnฤ
ฤ wฤzลy w ukrytych usลugach Tor:</translation> </message> <message> <source>&Window</source> @@ -1133,7 +1145,7 @@ </message> <message> <source>&Minimize to the tray instead of the taskbar</source> - <translation>&Minimalizuj do paska przy zegarku zamiast do paska zadaล</translation> + <translation>&Minimalizuj do zasobnika systemowego zamiast do paska zadaล</translation> </message> <message> <source>M&inimize on close</source> @@ -1145,7 +1157,7 @@ </message> <message> <source>User Interface &language:</source> - <translation>Jฤzyk &Uลผytkownika:</translation> + <translation>Jฤzyk &uลผytkownika:</translation> </message> <message> <source>&Unit to show amounts in:</source> @@ -1240,7 +1252,7 @@ </message> <message> <source>Total:</source> - <translation>Wynosi ogรณลem:</translation> + <translation>Ogรณลem:</translation> </message> <message> <source>Your current total balance</source> @@ -1385,7 +1397,7 @@ </message> <message> <source>Enter a Bitcoin address (e.g. %1)</source> - <translation>Wprowadลบ adres Bitcoin (np. %1)</translation> + <translation>Wprowadลบ adres bitcoinowy (np. %1)</translation> </message> <message> <source>%1 d</source> @@ -1428,7 +1440,7 @@ </message> <message> <source>Save QR Code</source> - <translation>Zapisz Kod QR</translation> + <translation>Zapisz kod QR</translation> </message> <message> <source>PNG Image (*.png)</source> @@ -1462,10 +1474,6 @@ <translation>Ogรณlne</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Uลผywana wersja OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Uลผywana wersja BerkeleyDB </translation> </message> @@ -1494,6 +1502,10 @@ <translation>Aktualna liczba blokรณw</translation> </message> <message> + <source>Memory Pool</source> + <translation>Memory Pool (obszar pamiฤci)</translation> + </message> + <message> <source>Current number of transactions</source> <translation>Obecna liczba transakcji</translation> </message> @@ -1630,10 +1642,30 @@ <translation>Wyczyลฤ konsolฤ</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>Odลฤ
cz Nod</translation> + </message> + <message> <source>Ban Node for</source> <translation>Blokuj wฤzeล na okres</translation> </message> <message> + <source>1 &hour</source> + <translation>1 &godzina</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &dzieล</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &tydzieล</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &rok</translation> + </message> + <message> <source>&Unban Node</source> <translation>Odblokuj wฤzeล</translation> </message> @@ -2299,6 +2331,11 @@ <translation>&Zweryfikuj wiadomoลฤ</translation> </message> <message> + <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source> + <translation>Wpisz adres, wiadomoลฤ oraz sygnaturฤ (podpis) odbiorcy (upewnij siฤ, ลผe dokลadnie skopiujesz wszystkie zakoลczenia linii, spacje, tabulacje itp.). Uwaลผaj by nie dodaฤ wiฤcej do podpisu niลผ do samej podpisywanej wiadomoลci by uniknฤ
ฤ ataku man-in-the-middle. +Zwrรณฤ uwagฤ, ลผe poprawnie zweryfikowana wiadomoลฤ potwierdza to, ลผe nadawca posiada klucz do adresu, natomiast nie potwierdza to, ลผe poprawne wysลanie jakiejkolwiek transakcji! </translation> + </message> + <message> <source>The Bitcoin address the message was signed with</source> <translation>Adres Bitcoin, ktรณrym zostaลa podpisana wiadomoลฤ</translation> </message> @@ -2371,7 +2408,7 @@ <name>SplashScreen</name> <message> <source>Bitcoin Core</source> - <translation>Rdzeล Bitcoin</translation> + <translation>Rdzeล Bitcoina</translation> </message> <message> <source>The Bitcoin Core developers</source> @@ -2838,11 +2875,11 @@ </message> <message> <source>Backup Wallet</source> - <translation>Kopia Zapasowa Portfela</translation> + <translation>Kopia zapasowa portfela</translation> </message> <message> <source>Wallet Data (*.dat)</source> - <translation>Dane Portfela (*.dat)</translation> + <translation>Dane portfela (*.dat)</translation> </message> <message> <source>Backup Failed</source> @@ -2858,7 +2895,7 @@ </message> <message> <source>Backup Successful</source> - <translation>Wykonano Kopiฤ Zapasowฤ
</translation> + <translation>Wykonano kopiฤ zapasowฤ
</translation> </message> </context> <context> @@ -2884,6 +2921,18 @@ <translation>Akceptuj liniฤ poleceล oraz polecenia JSON-RPC</translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Jeลผeli <category> nie zostanie okreลlona lub <category> = 1, wyลwietl wszystkie informacje debugowania.</translation> + </message> + <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Proszฤ sprawdziฤ czy data i czas na Twoim komputerze sฤ
poprawne! Jeลผeli ustawienia zegara bฤdฤ
zลe, Bitcoin Core nie bฤdzie dziaลaล prawidลowo.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Przycinanie skonfigurowano poniลผej minimalnych %d MiB. Proszฤ uลผyฤ wyลผszej liczby.</translation> + </message> + <message> <source>Error: A fatal internal error occurred, see debug.log for details</source> <translation>Bลฤ
d: Wystฤ
piล fatalny bลฤ
d wewnฤtrzny, sprawdลบ szczegรณลy w debug.log</translation> </message> @@ -2908,6 +2957,10 @@ <translation>Akceptuj poลฤ
czenia z zewnฤ
trz (domyลlnie: 1 jeลli nie ustawiono -proxy lub -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee ma ustawionฤ
bardzo duลผฤ
wartoลฤ! Jest to prowizja za transakcje, ktรณrฤ
moลผesz zapลaciฤ gdy oszacowanie opลaty jest niemoลผliwe.</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Skojarz z podanym adresem i nasลuchuj na nim. Uลผyj formatu [host]:port dla IPv6</translation> </message> @@ -2924,6 +2977,10 @@ <translation>Wykonaj polecenie, kiedy transakcja portfela ulegnie zmianie (%s w poleceniu zostanie zastฤ
pione przez TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Wymuล przekazywanie transakcji od osรณb z biaลej listy, nawet jeลli narusza to lokalnฤ
politykฤ przekazywania (default: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Ustaw liczbฤ wฤ
tkรณw skryptu weryfikacyjnego (%u do %d, 0 = auto, <0 = zostaw tyle rdzeni wolnych, domyลlnie: %d)</translation> </message> @@ -2936,6 +2993,14 @@ <translation>Nie moลผna przywiฤ
zaฤ z portem %s na tym komputerze. Bitcoin Core prawdopodobnie juลผ dziaลa.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Niewspierany argument -whitelistalwaysrelay zignorowany, uลผyj -whitelistrelay i/lub -whitelistforcerelay.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>Uลผywaj UPnP do mapowania portu nasลuchu (domyลlnie: 1 gdy nasลuchuje i brak -proxy)</translation> + </message> + <message> <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> <translation>UWAGA: nienaturalnie duลผa liczba wygenerowanych blokรณw, %d blokรณw otrzymano w ostatnich %d godzinach (%d oczekiwanych)</translation> </message> @@ -2960,6 +3025,10 @@ <translation>Dodawaj do biaลej listy wฤzลy ลฤ
czฤ
ce siฤ z podanej maski sieciowej lub adresu IP. Moลผe byฤ okreลlona kilka razy.</translation> </message> <message> + <source>-maxmempool must be at least %d MB</source> + <translation>-maxmempool musi byฤ przynajmniej %d MB</translation> + </message> + <message> <source><category> can be:</source> <translation><category> mogฤ
byฤ:</translation> </message> @@ -2992,6 +3061,10 @@ <translation>Czy chcesz teraz przebudowaฤ bazฤ blokรณw?</translation> </message> <message> + <source>Enable publish hash block in <address></source> + <translation>Wลฤ
cz wyลwietlanie hasha bloku w <address></translation> + </message> + <message> <source>Error initializing block database</source> <translation>Bลฤ
d inicjowania bazy danych blokรณw</translation> </message> @@ -3028,6 +3101,14 @@ <translation>Nieprawidลowy adres -onion: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Nieprawidลowa kwota dla -fallbackfee=<amount>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>Utrzymuj obszar pamiฤci dla transakcji poniลผej <n> MB (default: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Brak wystarczajฤ
cej liczby deskryptorรณw plikรณw. </translation> </message> @@ -3036,6 +3117,10 @@ <translation>ลฤ
cz z wฤzลami tylko w sieci <net> (ipv4, piv6 lub onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Wyลwietl wersjฤ i wyjdลบ</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Przycinanie nie moลผe byฤ skonfigurowane z negatywnฤ
wartoลciฤ
.</translation> </message> @@ -3064,10 +3149,18 @@ <translation>Niewspierany argument -debugnet zignorowany, uลผyj -debug=net.</translation> </message> <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>Znaleziono nieprawidลowy argument -tor, uลผyj -onion.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: %u)</source> <translation>Uลผyj UPnP do przekazania portu nasลuchu (domyลlnie : %u)</translation> </message> <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>Komentarz User Agent (%s) zawiera niebezpieczne znaki.</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>Weryfikacja blokรณw...</translation> </message> @@ -3084,10 +3177,6 @@ <translation>Opcje portfela:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Uwaga: Ta wersja jest przestarzaลa, wymagana jest aktualizacja!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Musisz przebudowaฤ bazฤ uลผywajฤ
c parametru -reindex aby zmieniฤ -txindex</translation> </message> @@ -3172,10 +3261,6 @@ <translation>Aktywuje najlepszy ลaลcuch</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Zawsze przekazuj informacje o transakcjach otrzymanych od osรณb z biaลej listy (domyลlnie: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Prรณbuj podczas uruchamiania programu odzyskaฤ klucze prywatne z uszkodzonego pliku wallet.dat</translation> </message> @@ -3260,6 +3345,10 @@ <translation>Odbieranie i wyลwietlanie alertรณw sieci P2P (domyลlnie: %u)</translation> </message> <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Zmniejszanie -maxconnections z %d do %d z powodu ograniczeล systemu.</translation> + </message> + <message> <source>Rescan the block chain for missing wallet transactions on startup</source> <translation>Przeskanuj podczas ลadowania programu ลaลcuch blokรณw w poszukiwaniu zaginionych transakcji portfela</translation> </message> @@ -3336,6 +3425,10 @@ <translation>Usuwam wszystkie transakcje z portfela...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>Opcje powiadomieล ZeroMQ:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>wallet.dat uszkodzony, odtworzenie siฤ nie powiodลo</translation> </message> @@ -3368,14 +3461,26 @@ <translation>(1 = zachowaj wysลane metadane np. wลaลciciel konta i informacje o ลผฤ
daniach pลatnoลci, 2 = porzuฤ wysลane metadane)</translation> </message> <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-matxfee jest ustawione bardzo wysokie! Tak wysokie opลaty mogฤ
byฤ zapลacone w jednej transakcji.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee ma ustawionฤ
bardzo duลผฤ
wartoลฤ! Jest to prowizja za transakcje, ktรณrฤ
pลacisz, gdy wysyลasz monety.</translation> + </message> + <message> <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> - <translation>Nie trzymaj w pamiฤci transakcji starszych niลผ <n> godzin (domyลlnie: %u)</translation> + <translation>Nie trzymaj w pamiฤci transakcji starszych niลผ <n> godz. (domyลlnie: %u)</translation> </message> <message> <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> <translation>Ostrzeลผenie: bลฤ
d odczytu wallet.dat! Wszystkie klucze zostaลy odczytane, ale moลผe brakowaฤ pewnych danych transakcji lub wpisรณw w ksiฤ
ลผce adresowej lub mogฤ
one byฤ nieprawidลowe.</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>Opลaty (w %s/Kb) mniejsze niลผ ta bฤdฤ
traktowane jako bez opลaty przy tworzeniu transakcji (domyลlnie: %s)</translation> + </message> + <message> <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> <translation>Jak dokลadna jest weryfikacja blokรณw przy -checkblocks (0-4, domyลlnie: %u)</translation> </message> @@ -3392,6 +3497,18 @@ <translation>Wypuลฤ informacje debugowania (domyลlnie: %u, podanie <category> jest opcjonalne)</translation> </message> <message> + <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> + <translation>Wspieraj filtrowanie blokรณw i transakcji uลผywajฤ
c Filtrรณw Blooma (domyลlnie: %u)</translation> + </message> + <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>Caลkowita dลugoลฤ ลaลcucha wersji (%i) przekracza maksymalnฤ
dopuszczalnฤ
dลugoลฤ (%i). Zmniejsz iloลฤ lub rozmiar parametru uacomment.</translation> + </message> + <message> + <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> + <translation>Prรณbuje utrzymaฤ ruch wychodzฤ
cy poniลผej zadanego (w MiB na dobฤ), 0 = bez limitu (domyลlnie: %d)</translation> + </message> + <message> <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> <translation>Znaleziono niewspierany argument -socks. Wybieranie wersji SOCKS nie jest juลผ moลผliwe, wsparcie programu obejmuje tylko proxy SOCKS5</translation> </message> diff --git a/src/qt/locale/bitcoin_pt_BR.ts b/src/qt/locale/bitcoin_pt_BR.ts index 5cea349fbc..1b92395c79 100644 --- a/src/qt/locale/bitcoin_pt_BR.ts +++ b/src/qt/locale/bitcoin_pt_BR.ts @@ -387,7 +387,7 @@ </message> <message> <source>&Settings</source> - <translation>&definiรงรตes</translation> + <translation>&Definiรงรตes</translation> </message> <message> <source>&Help</source> @@ -723,7 +723,7 @@ </message> <message> <source>none</source> - <translation>nenhum</translation> + <translation>Nenhum</translation> </message> <message> <source>This label turns red if the transaction size is greater than 1000 bytes.</source> @@ -1033,7 +1033,7 @@ </message> <message> <source>Active command-line options that override above options:</source> - <translation>Ativa as opรงรตes de linha de comando que sobrescreve as opรงรตes acima:</translation> + <translation>Opรงรตes de linha de comando ativas que sobrescreve as opรงรตes acima:</translation> </message> <message> <source>Reset all client options to default.</source> @@ -1185,7 +1185,7 @@ </message> <message> <source>none</source> - <translation>nenhum</translation> + <translation>Nenhum</translation> </message> <message> <source>Confirm options reset</source> @@ -1474,10 +1474,6 @@ <translation>Geral</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Versรฃo do OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Versรฃo do BerkeleyDB</translation> </message> @@ -1975,7 +1971,7 @@ </message> <message> <source>collapse fee-settings</source> - <translation>colapso Taxa de definiรงรตes</translation> + <translation>Ocultar painel</translation> </message> <message> <source>per kilobyte</source> @@ -2340,7 +2336,7 @@ </message> <message> <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source> - <translation>Coloque o endereรงo do destinatรกrio, a mensagem (certifique-se de copiar toda a mensagem, incluindo quebras de linha, espaรงos, tabulaรงรตes, etc.) e a assinatura embaixo para verificar a mensagem. Cuidado para nรฃo ler mais da assinatura do que estรก assinado na mensagem, para evitar ser enganado pelo ataque man-in-the-middle. Note que isso somente prova a propriedade de um endereรงo, e nรฃo o remetende de qualquer transaรงรฃo.</translation> + <translation>Coloque o endereรงo do autor, a mensagem (certifique-se de copiar toda a mensagem, incluindo quebras de linha, espaรงos, tabulaรงรตes, etc.) e a assinatura embaixo para verificar a mensagem. Cuidado para nรฃo ler mais da assinatura do que estรก assinado na mensagem, para evitar ser enganado pelo ataque man-in-the-middle. Note que isso somente prova a propriedade de um endereรงo, e nรฃo o remetende de qualquer transaรงรฃo.</translation> </message> <message> <source>The Bitcoin address the message was signed with</source> @@ -2980,6 +2976,18 @@ <translation>Aceitar conexรตes externas (padrรฃo: 1 se opรงรตes -proxy ou -connect nรฃo estiverem presentes)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee estรก muito alta! Essa รฉ a taxa de transaรงรฃo que vocรช vai pagar quando a taxa estimada nรฃo estiver disponรญvel.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>A variaรงรฃo da taxa (em %s/kB) que serรก usada quando nรฃo houver dados suficientes para se estimar a taxa (default: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Aceita transaรงรตes retransmitidas advindas de pares em lista branca, mesmo quando nรฃo estiver retransmitindo transaรงรตes (padrรฃo: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Vincular ao endereรงo fornecido e sempre escutar nele. Use a notaรงรฃo [host]:port para IPv6</translation> </message> @@ -2996,6 +3004,10 @@ <translation>Executa um comando quando uma transaรงรฃo da carteira mudar (%s no comando serรก substituรญdo por TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Forรงa a retransmissรฃo de transaรงรตes de pares da lista branca, mesmo quando violam a polรญtica local de retransmissรฃo (default: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Define o nรบmero de threads de verificaรงรฃo de script (%u a %d, 0 = automรกtico, <0 = nรบmero de cores deixados livres, padrรฃo: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>Impossรญvel ouvir em %s neste computador. Provavelmente o Bitcoin jรก estรก sendo executado.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Argumento nรฃo suportado -whitelistalwaysrelay foi ignorado, utilize -whitelistrelay e/ou -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Use UPnP para mapear a porta escutada (padrรฃo: 1 quando escutando e sem -proxy)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>Atenรงรฃo: A rede nรฃo parecem concordar plenamente! Alguns mineiros parecem estar enfrentando problemas.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Aviso: Versรตes de bloco desconhecidas sendo mineradas! ร possรญvel que regras estranhas estejam ativas</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Atenรงรฃo: Nรณs nรฃo parecemos concordar plenamente com nossos colegas! Vocรช pode precisar atualizar ou outros nรณs podem precisar atualizar.</translation> </message> @@ -3048,6 +3068,10 @@ <translation><category> pode ser:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Adiciona comentรกrio ao user-agent do navegador</translation> + </message> + <message> <source>Block creation options:</source> <translation>Opรงรตes de criaรงรฃo de blocos:</translation> </message> @@ -3092,6 +3116,10 @@ <translation>Abilitar a publicaรงรฃo dos dados brutos da transaรงรฃo em <endereรงo></translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Habilita substituiรงรฃo de transaรงรฃo em memรณria (padrรฃo: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Erro ao inicializar banco de dados de blocos</translation> </message> @@ -3128,10 +3156,22 @@ <translation>Endereรงo -onion invรกlido: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Valor invรกlido para -fallbackfee=<amount>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Mantenha a mempool de transaรงรตes abaixo de <n> megabytes (padrรฃo: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Localizaรงรฃo do cookie de autenticaรงรฃo (padrรฃo: diretรณrio de dados)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Nรบmero mรญnimo de bytes por sigop em transaรงรตes que transmitimos e mineramos (default: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Decriptadores de arquivos disponรญveis insuficientes.</translation> </message> @@ -3140,6 +3180,10 @@ <translation>Somente conectar a clientes na rede <net> (ipv4, ipv6 ou onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Mostra a versรฃo e sai</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>O modo Prune nรฃo pode ser configurado com um valor negativo.</translation> </message> @@ -3196,10 +3240,6 @@ <translation>Opรงรตes da carteira:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Atenรงรฃo: Essa versรฃo estรก obsoleta, atualizaรงรฃo necessรกria!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Vocรช precisa reconstruir o banco de dados utilizando -reindex</translation> </message> @@ -3273,7 +3313,7 @@ </message> <message> <source>This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written by Eric Young and UPnP software written by Thomas Bernard.</source> - <translation>Esse produto inclui software desenvolvido pelo Open SSL Project para uso na OpenSSL Toolkit<https://www.openssl.org/> e software criptogrรกfico escrito por Eric Young e software UPnP escrito por Thomas Bernard. </translation> + <translation>Esse produto inclui software desenvolvido pelo Open SSL Project para uso na OpenSSL Toolkit <https://www.openssl.org> e software criptogrรกfico escrito por Eric Young e software UPnP escrito por Thomas Bernard. </translation> </message> <message> <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> @@ -3296,10 +3336,6 @@ <translation>Ativando a melhor sequรชncia...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Sempre transmitir transaรงรตes recebidas de peers confiรกveis (padrรฃo: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Tentar recuperar na inicializaรงรฃo chaves privadas de um arquivo wallet.dat corrompido</translation> </message> @@ -3384,6 +3420,14 @@ <translation>Receba e mostre P2P alerta de rede (padrรฃo: %u)</translation> </message> <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Reduzindo -maxconnections de %d para %d, devido a limitaรงรตes do sistema</translation> + </message> + <message> + <source>Rescan the block chain for missing wallet transactions on startup</source> + <translation>Re-escanear a block-chain por transaรงรตes faltantes na carteira durante a inicializaรงรฃo</translation> + </message> + <message> <source>Send trace/debug info to console instead of debug.log file</source> <translation>Mandar informaรงรฃo de trace/debug para o console em vez de para o arquivo debug.log</translation> </message> @@ -3412,6 +3456,14 @@ <translation>Este รฉ um software experimental.</translation> </message> <message> + <source>Tor control port password (default: empty)</source> + <translation>Senha da porta de controle do Tor (padrรฃo: vazio)</translation> + </message> + <message> + <source>Tor control port to use if onion listening enabled (default: %s)</source> + <translation>Porta de controle a ser usada se o monitoramento onion estiver habilitado (padrรฃo: %s)</translation> + </message> + <message> <source>Transaction amount too small</source> <translation>Quantidade da transaรงรฃo muito pequena.</translation> </message> @@ -3432,6 +3484,10 @@ <translation>Impossรญvel se ligar a %s neste computador (bind retornou erro %s)</translation> </message> <message> + <source>Upgrade wallet to latest format on startup</source> + <translation>Atualizar a carteira para o รบltimo formato na inicializaรงรฃo</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>Nome de usuรกrio para conexรตes JSON-RPC</translation> </message> @@ -3444,10 +3500,22 @@ <translation>Atenรงรฃo</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Aviso: Novas regras estranhas foram ativadas (versionbit %i)</translation> + </message> + <message> + <source>Whether to operate in a blocks only mode (default: %u)</source> + <translation>Quando operar em modo de blocos somente (padrรฃp: %u)</translation> + </message> + <message> <source>Zapping all transactions from wallet...</source> <translation>Aniquilando todas as transaรงรตes da carteira...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>Opรงรตes de notificaรงรฃo ZeroMQ:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>wallet.dat corrompido, recuperaรงรฃo falhou</translation> </message> @@ -3476,14 +3544,70 @@ <translation>Erro ao carregar wallet.dat: Carteira corrompida</translation> </message> <message> + <source>(1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)</source> + <translation>(1 = manter metadados tx e.g. informaรงรฃo do dono da conta e requisiรงรฃo de pagamente, 2 = descartar metadados tx)</translation> + </message> + <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee รฉ muito alto! Essa quantia poderia ser paga em uma รบnica transaรงรฃo.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee รฉ muito alto! Este รฉ o valor da taxa de transaรงรฃo que vocรช irรก pagar se enviar a transaรงรฃo.</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>Nรฃo manter transaรงรตes na mempool por mais que <n> horas (padrรฃo: %u)</translation> + </message> + <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>Erro ao ler o arquivo wallet.dat! Todas as chaves foram lidas corretamente, mas os dados de transaรงรตes ou o livro de endereรงos podem estar faltando ou ser incorretos.</translation> + </message> + <message> <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> <translation>Comissรตes (em %s/kB) menores serรฃo consideradas como zero para criaรงรฃo de transaรงรฃo (padrรฃo %s)</translation> </message> <message> + <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> + <translation>Quรฃo completa a verificaรงรฃo de blocos do -checkblocks รฉ (0-4, padrรฃo: %u)</translation> + </message> + <message> + <source>Maintain a full transaction index, used by the getrawtransaction rpc call (default: %u)</source> + <translation>Mantรฉm um รญndice completo de transaรงรตes, usado pela chamada rpc getrawtransaction (padrรฃo: %u)</translation> + </message> + <message> + <source>Number of seconds to keep misbehaving peers from reconnecting (default: %u)</source> + <translation>Nรบmero de segundos para impedir que peers mal comportados reconectem (padrรฃo %u)</translation> + </message> + <message> + <source>Output debugging information (default: %u, supplying <category> is optional)</source> + <translation>Informaรงรฃo de saรญda de debug (padrรฃo: %u, definir <category> รฉ opcional)</translation> + </message> + <message> + <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> + <translation>Suportar filtragem de blocos e transaรงรตes com filtros bloom (padrรฃo: %u)</translation> + </message> + <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>O tamanho total da string de versรฃo da rede (%i) excede o tamanho mรกximo (%i). Reduza o numero ou tamanho de uacomments.</translation> + </message> + <message> + <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> + <translation>Tenta manter trรกfego fora dos limites dentro do alvo especificado (em MiB por 24h), 0 = sem limite (padrรฃo: %d)</translation> + </message> + <message> + <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> + <translation>Argumento invรกlido -socks encontrado. Definir a versรฃo do SOCKS nรฃo รฉ mais possรญvel, somente proxys SOCK5 sรฃo suportados.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> <translation>Use um proxy SOCKS5 separado para alcanรงar participantes da rede via serviรงos ocultos Tor (padrรฃo: %s)</translation> </message> <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>Nome de usuรกrio e senha hash para conexรตes JSON-RPC. O campo <userpw> vem com o formato: <USERNAME>:<SALT>$<HASH>. Um script python canรดnico รฉ incluรญdo em share/rpcuser. Essa opรงรฃo pode ser especificada mรบltiplas vezes.</translation> + </message> + <message> <source>(default: %s)</source> <translation>(padrรฃo: %s)</translation> </message> @@ -3532,10 +3656,18 @@ <translation>Buffer mรกximo de recebimento por conexรฃo, <n>*1000 bytes (padrรฃo: %u)</translation> </message> <message> + <source>Maximum per-connection send buffer, <n>*1000 bytes (default: %u)</source> + <translation>Buffer mรกximo de envio por conexรฃo, <n>*1000 bytes (padrรฃo: %u)</translation> + </message> + <message> <source>Prepend debug output with timestamp (default: %u)</source> <translation>Adiciona timestamp como prefixo no debug (padrรฃo: %u)</translation> </message> <message> + <source>Relay and mine data carrier transactions (default: %u)</source> + <translation>Transaรงรตes de dados de operadora (padrรฃo: %u)</translation> + </message> + <message> <source>Relay non-P2SH multisig (default: %u)</source> <translation>Retransmitir P2SH nรฃo multisig (padrรฃo: %u)</translation> </message> @@ -3568,6 +3700,10 @@ <translation>Gastar troco nรฃo confirmado quando enviar transaรงรตes (padrรฃo: %u)</translation> </message> <message> + <source>Threshold for disconnecting misbehaving peers (default: %u)</source> + <translation>Limite para desconectar peers mal comportados (padrรฃo: %u)</translation> + </message> + <message> <source>Unknown network specified in -onlynet: '%s'</source> <translation>Rede desconhecida especificada em -onlynet: '%s'</translation> </message> diff --git a/src/qt/locale/bitcoin_pt_PT.ts b/src/qt/locale/bitcoin_pt_PT.ts index ffed44a61c..362769138a 100644 --- a/src/qt/locale/bitcoin_pt_PT.ts +++ b/src/qt/locale/bitcoin_pt_PT.ts @@ -3,7 +3,7 @@ <name>AddressBookPage</name> <message> <source>Right-click to edit address or label</source> - <translation>Clique รก direita para editar endereรงo ou rรณtulo</translation> + <translation>Clique com o botรฃo direito para editar o endereรงo ou rรณtulo</translation> </message> <message> <source>Create a new address</source> @@ -31,11 +31,11 @@ </message> <message> <source>Delete the currently selected address from the list</source> - <translation>Apagar o endereรงo selecionado da lista</translation> + <translation>Eliminar o endereรงo selecionado da lista</translation> </message> <message> <source>Export the data in the current tab to a file</source> - <translation>Exportar os dados no separador actual para um ficheiro</translation> + <translation>Exportar os dados no separador atual para um ficheiro</translation> </message> <message> <source>&Export</source> @@ -43,15 +43,15 @@ </message> <message> <source>&Delete</source> - <translation>&Eliminar\</translation> + <translation>&Eliminar</translation> </message> <message> <source>Choose the address to send coins to</source> - <translation>Escolha o endereรงo para o qual pretende enviar moedas</translation> + <translation>Escolha o endereรงo para enviar as moedas</translation> </message> <message> <source>Choose the address to receive coins with</source> - <translation>Escolha o endereรงo com o qual pretende receber moedas</translation> + <translation>Escolha o endereรงo para receber as moedas com</translation> </message> <message> <source>C&hoose</source> @@ -63,7 +63,7 @@ </message> <message> <source>Receiving addresses</source> - <translation>Endereรงos de depรณsito</translation> + <translation>Endereรงos de a receber</translation> </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> @@ -71,7 +71,7 @@ </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> - <translation>Estes sรฃo os seus endereรงos Bitcoin para receber pagamentos. ร recomendado que utilize um endereรงo novo para cada transacรงรฃo.</translation> + <translation>Estes sรฃo os seus endereรงos do Bitcoin para receber pagamentos. ร recomendado que utilize um novo endereรงo para cada transaรงรฃo.</translation> </message> <message> <source>Copy &Label</source> @@ -91,7 +91,7 @@ </message> <message> <source>Exporting Failed</source> - <translation>A Exportaรงรฃo Falhou</translation> + <translation>Exportaรงรฃo Falhou</translation> </message> <message> <source>There was an error trying to save the address list to %1. Please try again.</source> @@ -102,7 +102,7 @@ <name>AddressTableModel</name> <message> <source>Label</source> - <translation>Rรณtulo</translation> + <translation>Etiqueta</translation> </message> <message> <source>Address</source> @@ -110,26 +110,26 @@ </message> <message> <source>(no label)</source> - <translation>(sem rรณtulo)</translation> + <translation>(sem etiqueta)</translation> </message> </context> <context> <name>AskPassphraseDialog</name> <message> <source>Passphrase Dialog</source> - <translation>Diรกlogo de frase de seguranรงa</translation> + <translation>Janela da frase de palavra-passe</translation> </message> <message> <source>Enter passphrase</source> - <translation>Insira a frase de seguranรงa</translation> + <translation>Insira a frase de palavra-passe</translation> </message> <message> <source>New passphrase</source> - <translation>Nova frase de seguranรงa</translation> + <translation>Nova frase de palavra-passe</translation> </message> <message> <source>Repeat new passphrase</source> - <translation>Repita a nova frase de seguranรงa</translation> + <translation>Repita a nova frase de palavra-passe</translation> </message> <message> <source>Encrypt wallet</source> @@ -137,7 +137,7 @@ </message> <message> <source>This operation needs your wallet passphrase to unlock the wallet.</source> - <translation>A sua frase de seguranรงa รฉ necessรกria para desbloquear a carteira.</translation> + <translation>Esta operaรงรฃo precisa da sua frase de palavra-passe da carteira para desbloquear a mesma.</translation> </message> <message> <source>Unlock wallet</source> @@ -145,7 +145,7 @@ </message> <message> <source>This operation needs your wallet passphrase to decrypt the wallet.</source> - <translation>A sua frase de seguranรงa รฉ necessรกria para desencriptar a carteira.</translation> + <translation>Esta operaรงรฃo precisa da sua frase de palavra-passe da carteira para desencriptar a mesma.</translation> </message> <message> <source>Decrypt wallet</source> @@ -153,7 +153,7 @@ </message> <message> <source>Change passphrase</source> - <translation>Alterar frase de seguranรงa</translation> + <translation>Alterar frase de palavra-passe</translation> </message> <message> <source>Confirm wallet encryption</source> @@ -161,7 +161,7 @@ </message> <message> <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> - <translation>Atenรงรฃo: Se encriptar a carteira e perder a sua senha irรก <b>PERDER TODOS OS SEUS BITCOINS</b>!</translation> + <translation>Aviso: se encriptar a sua carteira e perder a sua frase de de palavra-passe, irรก <b>PERDER TODOS OS SEUS BITCOINS</b>!</translation> </message> <message> <source>Are you sure you wish to encrypt your wallet?</source> @@ -177,7 +177,7 @@ </message> <message> <source>Warning: The Caps Lock key is on!</source> - <translation>Atenรงรฃo: A tecla Caps Lock estรก activa!</translation> + <translation>Atenรงรฃo: a tecla Caps Lock estรก ativada!</translation> </message> <message> <source>Wallet encrypted</source> @@ -185,11 +185,11 @@ </message> <message> <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> - <translation>Escreva a nova frase de seguraรงa da sua carteira. <br/> Por favor, use uma frase de <b>10 ou mais caracteres aleatรณrios,</b> ou <b>oito ou mais palavras</b>.</translation> + <translation>Insira a nova frase de palavra-passe da sua carteira. <br/> Por favor, utilize uma frase de palavra-passe com <b>mais de 10 ou mais carateres aleatรณrios,</b> ou <b>oito ou mais palavras</b>.</translation> </message> <message> <source>Enter the old passphrase and new passphrase to the wallet.</source> - <translation>Escreva a antiga frase de seguranรงa da carteira, seguida da nova.</translation> + <translation>Insira a frase de palavra-passe antiga e a nova frase de palavra-passe para carteira.</translation> </message> <message> <source>Wallet encryption failed</source> @@ -201,7 +201,7 @@ </message> <message> <source>The supplied passphrases do not match.</source> - <translation>As frases de seguranรงa fornecidas nรฃo coincidem.</translation> + <translation>As frases de palavra-passe inseridas nรฃo coincidem.</translation> </message> <message> <source>Wallet unlock failed</source> @@ -209,7 +209,7 @@ </message> <message> <source>The passphrase entered for the wallet decryption was incorrect.</source> - <translation>A frase de seguranรงa introduzida para a desencriptaรงรฃo da carteira estava incorreta.</translation> + <translation>A frase de palavra-passe inserida para a desencriptaรงรฃo da carteira estava incorreta.</translation> </message> <message> <source>Wallet decryption failed</source> @@ -217,12 +217,20 @@ </message> <message> <source>Wallet passphrase was successfully changed.</source> - <translation>A frase de seguranรงa da carteira foi alterada com รชxito.</translation> + <translation>A frase de palavra-passe da carteira foi alterada com sucesso.</translation> </message> </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP/Mรกscara de Rede</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Banido Atรฉ</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -235,7 +243,7 @@ </message> <message> <source>&Overview</source> - <translation>Visรฃ&o geral</translation> + <translation>&Sinopse</translation> </message> <message> <source>Node</source> @@ -243,7 +251,7 @@ </message> <message> <source>Show general overview of wallet</source> - <translation>Mostrar visรฃo geral da carteira</translation> + <translation>Mostrar sinopse geral da carteira</translation> </message> <message> <source>&Transactions</source> @@ -251,7 +259,7 @@ </message> <message> <source>Browse transaction history</source> - <translation>Navegar pelo histรณrico de transaรงรตes</translation> + <translation>Explorar histรณrico das transaรงรตes</translation> </message> <message> <source>E&xit</source> @@ -283,15 +291,15 @@ </message> <message> <source>&Change Passphrase...</source> - <translation>Mudar &Palavra-passe...</translation> + <translation>Alterar &Frase de Palavra-passe...</translation> </message> <message> <source>&Sending addresses...</source> - <translation>A &enviar endereรงos...</translation> + <translation>A &enviar os endereรงos...</translation> </message> <message> <source>&Receiving addresses...</source> - <translation>A &receber endereรงos...</translation> + <translation>A &receber os endereรงos...</translation> </message> <message> <source>Open &URI...</source> @@ -299,15 +307,15 @@ </message> <message> <source>Bitcoin Core client</source> - <translation>Cliente Bitcoin Core</translation> + <translation>Cliente do Bitcoin Core</translation> </message> <message> <source>Importing blocks from disk...</source> - <translation>A importar blocos do disco...</translation> + <translation>A importar os blocos do disco...</translation> </message> <message> <source>Reindexing blocks on disk...</source> - <translation>A reindexar blocos no disco...</translation> + <translation>A reindexar os blocos no disco...</translation> </message> <message> <source>Send coins to a Bitcoin address</source> @@ -315,11 +323,11 @@ </message> <message> <source>Backup wallet to another location</source> - <translation>Faรงa uma cรณpia de seguranรงa da carteira para outra localizaรงรฃo</translation> + <translation>Efetue uma cรณpia de seguranรงa da carteira para outra localizaรงรฃo</translation> </message> <message> <source>Change the passphrase used for wallet encryption</source> - <translation>Mudar a frase de seguranรงa utilizada na encriptaรงรฃo da carteira</translation> + <translation>Alterar a frase de palavra-passe utilizada na encriptaรงรฃo da carteira</translation> </message> <message> <source>&Debug window</source> @@ -351,7 +359,7 @@ </message> <message> <source>Show information about Bitcoin Core</source> - <translation>Mostrar informaรงรฃo sobre Bitcoin Core</translation> + <translation>Mostrar informaรงรฃo sobre o Bitcoin Core</translation> </message> <message> <source>&Show / Hide</source> @@ -359,7 +367,7 @@ </message> <message> <source>Show or hide the main Window</source> - <translation>Mostrar ou esconder a janela principal</translation> + <translation>Mostrar ou ocultar a janela principal</translation> </message> <message> <source>Encrypt the private keys that belong to your wallet</source> @@ -387,7 +395,7 @@ </message> <message> <source>Tabs toolbar</source> - <translation>Barra de separadores</translation> + <translation>Barra de ferramentas dos separadores</translation> </message> <message> <source>Bitcoin Core</source> @@ -395,7 +403,7 @@ </message> <message> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation>Solicitar pagamentos (gera cรณdigos QR e URIs bitcoin:)</translation> + <translation>Solicitar pagamentos (gera cรณdigos QR e bitcoin: URIs)</translation> </message> <message> <source>&About Bitcoin Core</source> @@ -403,7 +411,7 @@ </message> <message> <source>Modify configuration options for Bitcoin Core</source> - <translation>Modificar opรงรตes de configuraรงรฃo de Bitcoin Core</translation> + <translation>Modificar as opรงรตes de configuraรงรฃo do Bitcoin Core</translation> </message> <message> <source>Show the list of used sending addresses and labels</source> @@ -419,11 +427,11 @@ </message> <message> <source>&Command-line options</source> - <translation>&Opรงรตes da linha de &comandos</translation> + <translation>&Opรงรตes da linha de &comando</translation> </message> <message> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> - <translation>Mostrar a mensagem de ajuda do Bitcoin Core para obter uma lista com possรญveis opรงรตes de linha de comandos</translation> + <translation>Mostrar a mensagem de ajuda do Bitcoin Core para obter uma lista com possรญveis opรงรตes de linha de comando do Bitcoin</translation> </message> <message numerus="yes"> <source>%n active connection(s) to Bitcoin network</source> @@ -463,11 +471,11 @@ </message> <message> <source>Last received block was generated %1 ago.</source> - <translation>O รบltimo bloco recebido foi gerado %1 atrรกs.</translation> + <translation>O รบltimo bloco recebido foi gerado hรก %1.</translation> </message> <message> <source>Transactions after this will not yet be visible.</source> - <translation>Transaรงรตes posteriores nรฃo serรฃo visรญveis por enquanto.</translation> + <translation>As transaรงรตes depois de isto ainda nรฃo serรฃo visรญveis.</translation> </message> <message> <source>Error</source> @@ -498,7 +506,7 @@ <message> <source>Amount: %1 </source> - <translation>Quantia: %1 + <translation>Valor: %1 </translation> </message> <message> @@ -510,7 +518,7 @@ <message> <source>Label: %1 </source> - <translation>Rรณtulo: %1 + <translation>Etiqueta: %1 </translation> </message> <message> @@ -547,7 +555,7 @@ <name>CoinControlDialog</name> <message> <source>Coin Selection</source> - <translation>Seleรงรฃo de moeda</translation> + <translation>Seleรงรฃo de Moeda</translation> </message> <message> <source>Quantity:</source> @@ -559,7 +567,7 @@ </message> <message> <source>Amount:</source> - <translation>Quantia:</translation> + <translation>Valor:</translation> </message> <message> <source>Priority:</source> @@ -575,7 +583,7 @@ </message> <message> <source>After Fee:</source> - <translation>Depois da Taxa:</translation> + <translation>Depois da taxa:</translation> </message> <message> <source>Change:</source> @@ -583,23 +591,23 @@ </message> <message> <source>(un)select all</source> - <translation>(des)seleccionar todos</translation> + <translation>(des)selecionar todos</translation> </message> <message> <source>Tree mode</source> - <translation>Modo รกrvore</translation> + <translation>Modo de รกrvore</translation> </message> <message> <source>List mode</source> - <translation>Modo lista</translation> + <translation>Modo de lista</translation> </message> <message> <source>Amount</source> - <translation>Quantia</translation> + <translation>Valor</translation> </message> <message> <source>Received with label</source> - <translation>Recebido com rรณtulo</translation> + <translation>Recebido com etiqueta</translation> </message> <message> <source>Received with address</source> @@ -611,7 +619,7 @@ </message> <message> <source>Confirmations</source> - <translation>Confirmados</translation> + <translation>Confirmaรงรตes</translation> </message> <message> <source>Confirmed</source> @@ -627,23 +635,23 @@ </message> <message> <source>Copy label</source> - <translation>Copiar rรณtulo</translation> + <translation>Copiar etiqueta</translation> </message> <message> <source>Copy amount</source> - <translation>Copiar quantia</translation> + <translation>Copiar valor</translation> </message> <message> <source>Copy transaction ID</source> - <translation>Copiar ID da transaรงรฃo</translation> + <translation>Copiar id. da transaรงรฃo</translation> </message> <message> <source>Lock unspent</source> - <translation>Bloquear nรฃo gastos</translation> + <translation>Bloquear nรฃo gastas</translation> </message> <message> <source>Unlock unspent</source> - <translation>Desbloquear nรฃo gastos</translation> + <translation>Desbloquear nรฃo gastas</translation> </message> <message> <source>Copy quantity</source> @@ -655,7 +663,7 @@ </message> <message> <source>Copy after fee</source> - <translation>Copiar valor apรณs taxa</translation> + <translation>Copiar depois da taxa</translation> </message> <message> <source>Copy bytes</source> @@ -687,7 +695,7 @@ </message> <message> <source>medium-high</source> - <translation>mรฉdia-alta</translation> + <translation>mรฉdia alta</translation> </message> <message> <source>medium</source> @@ -695,7 +703,7 @@ </message> <message> <source>low-medium</source> - <translation>mรฉdia-baixa</translation> + <translation>mรฉdia baixa</translation> </message> <message> <source>low</source> @@ -707,7 +715,7 @@ </message> <message> <source>lowest</source> - <translation>muito alta</translation> + <translation>muito baixa</translation> </message> <message> <source>(%1 locked)</source> @@ -719,15 +727,15 @@ </message> <message> <source>This label turns red if the transaction size is greater than 1000 bytes.</source> - <translation>Este rรณtulo fica vermelho se o tamanho da transacรงรฃo exceder os 1000 bytes.</translation> + <translation>Esta etiqueta fica vermelha se o tamanho da transaรงรฃo exceder os 1000 bytes.</translation> </message> <message> <source>This label turns red if the priority is smaller than "medium".</source> - <translation>Esta legenda fica vermelha se a prioridade for menor que "mรฉdia".</translation> + <translation>Esta etiqueta fica vermelha se a prioridade for menor que "mรฉdia".</translation> </message> <message> <source>This label turns red if any recipient receives an amount smaller than %1.</source> - <translation>Este rรณtulo fica vermelho se algum recipiente receber uma quantia menor que %1.</translation> + <translation>Esta etiqueta fica vermelha se qualquer recipiente receber uma quantia menor que %1.</translation> </message> <message> <source>Can vary +/- %1 satoshi(s) per input.</source> @@ -755,7 +763,7 @@ </message> <message> <source>(no label)</source> - <translation>(sem rรณtulo)</translation> + <translation>(sem etiqueta)</translation> </message> <message> <source>change from %1 (%2)</source> @@ -774,15 +782,15 @@ </message> <message> <source>&Label</source> - <translation>&Rรณtulo</translation> + <translation>&Etiqueta</translation> </message> <message> <source>The label associated with this address list entry</source> - <translation>O rรณtulo associado com esta entrada no livro de endereรงos</translation> + <translation>A etiqueta associada com esta entrada da lista de endereรงos</translation> </message> <message> <source>The address associated with this address list entry. This can only be modified for sending addresses.</source> - <translation>O endereรงo associado com o esta entrada no livro de endereรงos. Isto sรณ pode ser modificado para endereรงos de saรญda.</translation> + <translation>O endereรงo associado com o esta entrada da lista de endereรงos. Isto sรณ pode ser modificado para os endereรงos de envio.</translation> </message> <message> <source>&Address</source> @@ -825,7 +833,7 @@ <name>FreespaceChecker</name> <message> <source>A new data directory will be created.</source> - <translation>Uma nova pasta de dados serรก criada.</translation> + <translation>Irรก ser criada uma nova diretoria de dados.</translation> </message> <message> <source>name</source> @@ -841,7 +849,7 @@ </message> <message> <source>Cannot create data directory here.</source> - <translation>Nรฃo pode ser criada uma pasta de dados aqui.</translation> + <translation>Nรฃo รฉ possรญvel criar aqui uma diretoria de dados.</translation> </message> </context> <context> @@ -864,7 +872,7 @@ </message> <message> <source>Command-line options</source> - <translation>Opรงรตes de linha de comandos</translation> + <translation>Opรงรตes da linha de comando</translation> </message> <message> <source>Usage:</source> @@ -872,9 +880,37 @@ </message> <message> <source>command-line options</source> - <translation>opรงรตes da linha de comandos</translation> + <translation>opรงรตes da linha de comando</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>Opรงรตes da IU:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>Escolha a diretoria dos dados no arranque (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>Definir linguagem, por exemplo "pt_PT" (por defeito: linguagem do sistema)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Iniciar minimizado</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>Configurar certificados SSL root para pedido de pagamento (default: -system-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>Mostrar o ecrรฃ de abertura no arranque (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Reiniciar as alteraรงรตes das configuraรงรตes efetuadas na GUI</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -887,19 +923,19 @@ </message> <message> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> - <translation>Sendo esta a primeira vez que o programa รฉ iniciado, poderรก escolher onde o Bitcoin Core irรก guardar os seus dados.</translation> + <translation>Como esta รฉ a primeira vez que o programa รฉ iniciado, pode escolher onde guardar os seus dados do Bitcoin Core.</translation> </message> <message> <source>Bitcoin Core will download and store a copy of the Bitcoin block chain. At least %1GB of data will be stored in this directory, and it will grow over time. The wallet will also be stored in this directory.</source> - <translation>O Bitcoin Core vai transferir e armazenar uma cรณpia do "block chain" (cadeia de blocos). Pelo menos %1GB de dados serรฃo armazenados nesta pasta, e vรฃo crescer ao longo do tempo. A sua carteira tambรฉm irรก ser armazenada nesta pasta.</translation> + <translation>O Bitcoin Core irรก transferir e guardar uma cรณpia da cadeia de bloco do Bitcoin. Pelo menos %1GB de dados serรฃo guardados nesta diretoria, e estes irรฃo crescer ao longo do tempo. A sua carteira tambรฉm serรก guardada nesta diretoria.</translation> </message> <message> <source>Use the default data directory</source> - <translation>Utilizar a pasta de dados padrรฃo</translation> + <translation>Utilizar a diretoria de dados predefinida</translation> </message> <message> <source>Use a custom data directory:</source> - <translation>Utilizar uma pasta de dados personalizada:</translation> + <translation>Utilizar uma diretoria de dados personalizada:</translation> </message> <message> <source>Bitcoin Core</source> @@ -907,7 +943,7 @@ </message> <message> <source>Error: Specified data directory "%1" cannot be created.</source> - <translation>Erro: Pasta de dados especificada como "%1, nรฃo pode ser criada.</translation> + <translation>Erro: nรฃo pode ser criada a diretoria de dados especificada como "%1.</translation> </message> <message> <source>Error</source> @@ -915,7 +951,7 @@ </message> <message numerus="yes"> <source>%n GB of free space available</source> - <translation><numerusform>%n GB de espaรงo livre disponรญvel </numerusform><numerusform>%n GB de espaรงo livre disponรญvel </numerusform></translation> + <translation><numerusform>%n GB de espaรงo livre disponรญvel</numerusform><numerusform>%n GB de espaรงo livre disponรญvel</numerusform></translation> </message> <message numerus="yes"> <source>(of %n GB needed)</source> @@ -969,11 +1005,11 @@ </message> <message> <source>Accept connections from outside</source> - <translation>Aceitar conceรงรตes externas</translation> + <translation>Aceitar ligaรงรตes externas</translation> </message> <message> <source>Allow incoming connections</source> - <translation>Permitir conexรฃo</translation> + <translation>Permitir ligaรงรฃo a receber</translation> </message> <message> <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> @@ -985,7 +1021,7 @@ </message> <message> <source>The user interface language can be set here. This setting will take effect after restarting Bitcoin Core.</source> - <translation>A linguagem da interface do utilizador pode ser definida aqui. Esta definiรงรฃo entrarรก em efeito apรณs reiniciar o Bitcoin Core.</translation> + <translation>O idioma da da interface do utilizador pode ser definida aqui. Esta definiรงรฃo serรก aplicada depois de reiniciar o Bitcoin Core.</translation> </message> <message> <source>Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source> @@ -994,15 +1030,15 @@ </message> <message> <source>Third party transaction URLs</source> - <translation>URLs de transaรงรฃo de outrem</translation> + <translation>URLs de transaรงรฃo de terceiros</translation> </message> <message> <source>Active command-line options that override above options:</source> - <translation>Opรงรตes de linha de comandos ativas que se sobrepรตem รกs opรงรตes anteriores:</translation> + <translation>Ativar as opรงรตes da linha de comando que se sobrepรตem ร s opรงรตes acima:</translation> </message> <message> <source>Reset all client options to default.</source> - <translation>Repor todas as opรงรตes do cliente.</translation> + <translation>Repor todas as opรงรตes de cliente para a predefiniรงรฃo.</translation> </message> <message> <source>&Reset Options</source> @@ -1014,15 +1050,15 @@ </message> <message> <source>Automatically start Bitcoin Core after logging in to the system.</source> - <translation>Comeรงar o Bitcoin Core automaticamente ao iniciar sessรฃo no sistema.</translation> + <translation>Iniciar automaticamente o Bitcoin Core depois de iniciar a sessรฃo no sistema.</translation> </message> <message> <source>&Start Bitcoin Core on system login</source> - <translation>&Comeรงar o Bitcoin Core ao iniciar o sistema</translation> + <translation>&Iniciar o Bitcoin Core ao iniciar a sessรฃo no sistema</translation> </message> <message> <source>(0 = auto, <0 = leave that many cores free)</source> - <translation>(0 = auto, <0 = Deixar essa quantidade de nรบcleos livre)</translation> + <translation>(0 = automรกtico, <0 = deixar essa quantidade de nรบcleos livre)</translation> </message> <message> <source>W&allet</source> @@ -1030,11 +1066,11 @@ </message> <message> <source>Expert</source> - <translation>Especialista</translation> + <translation> Especialistas </translation> </message> <message> <source>Enable coin &control features</source> - <translation>Ativar funcionalidades de controlo de transaรงรฃo.</translation> + <translation>Ativar as funcionalidades de controlo de moedas</translation> </message> <message> <source>If you disable the spending of unconfirmed change, the change from a transaction cannot be used until that transaction has at least one confirmation. This also affects how your balance is computed.</source> @@ -1050,7 +1086,7 @@ </message> <message> <source>Map port using &UPnP</source> - <translation>Mapear porta usando &UPnP</translation> + <translation>Mapear porta, utilizando &UPnP</translation> </message> <message> <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source> @@ -1073,6 +1109,34 @@ <translation>Porto do proxy (p.ex. 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>Usado para alcanรงar nรณs via:</translation> + </message> + <message> + <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> + <translation>Mostra, caso o proxy SOCKS5 predefinido submetido seja usado para alcanรงar nรณs atravรฉs deste tipo de rede.</translation> + </message> + <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Ligar ร rede Bitcoin atravรฉs de um proxy SOCKS5 separado para utilizar os serviรงos ocultos do Tor.</translation> + </message> + <message> + <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> + <translation>Utilizar um proxy SOCKS5 separado para alcanรงar nรณs via serviรงos ocultos do Tor:</translation> + </message> + <message> <source>&Window</source> <translation>&Janela</translation> </message> @@ -1102,11 +1166,11 @@ </message> <message> <source>Choose the default subdivision unit to show in the interface and when sending coins.</source> - <translation>Escolha a subdivisรฃo unitรกria a ser mostrada por defeito na aplicaรงรฃo e ao enviar moedas.</translation> + <translation>Escolha a unidade da subdivisรฃo predefinida para ser mostrada na interface e quando enviar as moedas.</translation> </message> <message> <source>Whether to show coin control features or not.</source> - <translation>Escolha para mostrar funcionalidades de Coin Control ou nรฃo.</translation> + <translation>Escolha se deve mostrar as funcionalidades de controlo de moedas ou nรฃo.</translation> </message> <message> <source>&OK</source> @@ -1118,7 +1182,7 @@ </message> <message> <source>default</source> - <translation>padrรฃo</translation> + <translation>predefiniรงรฃo</translation> </message> <message> <source>none</source> @@ -1126,7 +1190,7 @@ </message> <message> <source>Confirm options reset</source> - <translation>Confirme a reposiรงรฃo de opรงรตes</translation> + <translation>Confirme a reposiรงรฃo das opรงรตes</translation> </message> <message> <source>Client restart required to activate changes.</source> @@ -1252,7 +1316,7 @@ </message> <message> <source>Cannot start bitcoin: click-to-pay handler</source> - <translation>Impossรญvel iniciar o controlador de bitcoin: click-to-pay</translation> + <translation>Nรฃo รฉ possรญvel iniciar o Bitcoin: utilizador clique-para-pagar</translation> </message> <message> <source>Payment request fetch URL is invalid: %1</source> @@ -1411,16 +1475,12 @@ <translation>Geral</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Usando versรฃo OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Versรฃo BerkeleyDB em uso</translation> </message> <message> <source>Startup time</source> - <translation>Hora de inicializaรงรฃo</translation> + <translation>Hora de Arranque</translation> </message> <message> <source>Network</source> @@ -1443,6 +1503,22 @@ <translation>Nรบmero actual de blocos</translation> </message> <message> + <source>Memory Pool</source> + <translation>Banco de Memรณria</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Nรบmero actual de transacรงรตes</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Utilizaรงรฃo de memรณria</translation> + </message> + <message> + <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> + <translation>Abrir o ficheiro de registo de depuraรงรฃo da pasta de dados actual. Isto pode demorar alguns segundos para ficheiros de registo grandes.</translation> + </message> + <message> <source>Received</source> <translation>Recebido</translation> </message> @@ -1452,13 +1528,21 @@ </message> <message> <source>&Peers</source> - <translation>&Conexรงรฃo</translation> + <translation>&Conexรฃo</translation> + </message> + <message> + <source>Banned peers</source> + <translation>Nรณs banidos</translation> </message> <message> <source>Select a peer to view detailed information.</source> <translation>Selecione uma conexaรงรฃo para ver informaรงรฃo em detalhe.</translation> </message> <message> + <source>Whitelisted</source> + <translation>Permitido por si</translation> + </message> + <message> <source>Direction</source> <translation>Direcรงรฃo</translation> </message> @@ -1467,6 +1551,18 @@ <translation>Versรฃo</translation> </message> <message> + <source>Starting Block</source> + <translation>Bloco Inicial</translation> + </message> + <message> + <source>Synced Headers</source> + <translation>Cabeรงalhos Sincronizados</translation> + </message> + <message> + <source>Synced Blocks</source> + <translation>Blocos Sincronizados</translation> + </message> + <message> <source>User Agent</source> <translation>Agente Usuรกrio</translation> </message> @@ -1480,7 +1576,7 @@ </message> <message> <source>Connection Time</source> - <translation>Tempo de Conexรงรฃo</translation> + <translation>Tempo de Ligaรงรฃo</translation> </message> <message> <source>Last Send</source> @@ -1495,6 +1591,18 @@ <translation>Tempo de Latรชncia</translation> </message> <message> + <source>The duration of a currently outstanding ping.</source> + <translation>A duraรงรฃo de um ping atualmente pendente.</translation> + </message> + <message> + <source>Ping Wait</source> + <translation>Espera do Ping</translation> + </message> + <message> + <source>Time Offset</source> + <translation>Fuso Horรกrio</translation> + </message> + <message> <source>Last block time</source> <translation>Data do รบltimo bloco</translation> </message> @@ -1539,6 +1647,34 @@ <translation>Limpar consola</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>&Desligar Nรณ</translation> + </message> + <message> + <source>Ban Node for</source> + <translation>Banir Nรณ por</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &hora</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &dia</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &semana</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &ano</translation> + </message> + <message> + <source>&Unban Node</source> + <translation>&Desbloquear Nรณ</translation> + </message> + <message> <source>Welcome to the Bitcoin Core RPC console.</source> <translation>Bem-vindo ร consola RPC do Bitcoin Core.</translation> </message> @@ -1567,6 +1703,10 @@ <translation>%1 GB</translation> </message> <message> + <source>(node id: %1)</source> + <translation>(id nรณ: %1)</translation> + </message> + <message> <source>via %1</source> <translation>via %1</translation> </message> @@ -1583,6 +1723,14 @@ <translation>Saรญda</translation> </message> <message> + <source>Yes</source> + <translation>Sim</translation> + </message> + <message> + <source>No</source> + <translation>Nรฃo</translation> + </message> + <message> <source>Unknown</source> <translation>Desconhecido</translation> </message> @@ -1764,7 +1912,7 @@ </message> <message> <source>Coin Control Features</source> - <translation>Funcionalidades de Coin Control:</translation> + <translation>Funcionalidades do Controlo de Moedas:</translation> </message> <message> <source>Inputs...</source> @@ -1820,7 +1968,7 @@ </message> <message> <source>Choose...</source> - <translation>Escolha...</translation> + <translation>Escolher...</translation> </message> <message> <source>collapse fee-settings</source> @@ -1951,6 +2099,10 @@ <translation>Copiar alteraรงรฃo</translation> </message> <message> + <source>Total Amount %1</source> + <translation>Quantia Total %1</translation> + </message> + <message> <source>or</source> <translation>ou</translation> </message> @@ -1975,10 +2127,26 @@ <translation>A transaรงรฃo foi rejeitada! Isto poderรก acontecer se algumas das moedas na sua carteira jรก tiverem sido gastas, se por exemplo tiver usado uma cรณpia do ficheiro wallet.dat e as moedas tiverem sido gastas na cรณpia mas nรฃo tiverem sido marcadas como gastas aqui.</translation> </message> <message> + <source>A fee higher than %1 is considered an absurdly high fee.</source> + <translation>Uma taxa superior a %1 รฉ considerada muito alta.</translation> + </message> + <message> <source>Payment request expired.</source> <translation>Pedido de pagamento expirou.</translation> </message> <message> + <source>Pay only the required fee of %1</source> + <translation>Pagar somente a taxa mรญnima de %1</translation> + </message> + <message> + <source>The recipient address is not valid. Please recheck.</source> + <translation>O endereรงo de destino nรฃo รฉ vรกlido. Por favor, verifique novamente.</translation> + </message> + <message> + <source>Duplicate address found: addresses should only be used once each.</source> + <translation>Endereรงo duplicado encontrado: cada endereรงo sรณ poderรก ser usado uma vez.</translation> + </message> + <message> <source>Warning: Invalid Bitcoin address</source> <translation>Aviso: Endereรงo Bitcoin invรกlido</translation> </message> @@ -2023,7 +2191,7 @@ </message> <message> <source>Choose previously used address</source> - <translation>Escolher endereรงo usado previamente</translation> + <translation>Escolha o endereรงo utilizado anteriormente</translation> </message> <message> <source>This is a normal payment.</source> @@ -2050,10 +2218,26 @@ <translation>Remover esta entrada</translation> </message> <message> + <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source> + <translation>A taxa serรก deduzida ao montante enviado. O destinatรกrio irรก receber menos bitcoins do que as que introduziu no campo montante. Caso sejam seleccionados mรบltiplos destinatรกrios, a taxa serรก repartida equitativamente.</translation> + </message> + <message> + <source>S&ubtract fee from amount</source> + <translation>S&ubtrair taxa ao montante</translation> + </message> + <message> <source>Message:</source> <translation>Mensagem:</translation> </message> <message> + <source>This is an unauthenticated payment request.</source> + <translation>Pedido de pagamento nรฃo autenticado.</translation> + </message> + <message> + <source>This is an authenticated payment request.</source> + <translation>Pedido de pagamento autenticado.</translation> + </message> + <message> <source>Enter a label for this address to add it to the list of used addresses</source> <translation>Introduza um rรณtulo para este endereรงo para o adicionar ร sua lista de endereรงos usados</translation> </message> @@ -2092,12 +2276,16 @@ <translation>&Assinar Mensagem</translation> </message> <message> + <source>You can sign messages/agreements with your addresses to prove you can receive bitcoins sent to them. Be careful not to sign anything vague or random, as phishing attacks may try to trick you into signing your identity over to them. Only sign fully-detailed statements you agree to.</source> + <translation>Pode assinar mensagens com os seus endereรงos para provar que sรฃo seus. Tenha atenรงรฃo ao assinar mensagens ambรญguas, pois ataques de phishing podem tentar enganรก-lo de modo a assinar a sua identidade para os atacantes. Apenas assine declaraรงรตes detalhadas com as quais concorde.</translation> + </message> + <message> <source>The Bitcoin address to sign the message with</source> <translation>O endereรงo Bitcoin para designar a mensagem</translation> </message> <message> <source>Choose previously used address</source> - <translation>Escolher endereรงo usado previamente</translation> + <translation>Escolha o endereรงo utilizado anteriormente</translation> </message> <message> <source>Alt+A</source> @@ -2144,6 +2332,10 @@ <translation>&Verificar Mensagem</translation> </message> <message> + <source>Enter the receiver's address, message (ensure you copy line breaks, spaces, tabs, etc. exactly) and signature below to verify the message. Be careful not to read more into the signature than what is in the signed message itself, to avoid being tricked by a man-in-the-middle attack. Note that this only proves the signing party receives with the address, it cannot prove sendership of any transaction!</source> + <translation>Introduza o endereรงo de assinatura, mensagem (assegure-se que copia quebras de linha, espaรงos, tabulaรงรตes, etc. exactamente) e assinatura abaixo para verificar a mensagem. Tenha atenรงรฃo para nรฃo ler mais na assinatura do que o que estiver na mensagem assinada, para evitar ser enganado por um atacante que se encontre entre si e quem assinou a mensagem.</translation> + </message> + <message> <source>The Bitcoin address the message was signed with</source> <translation>O endereรงo Bitcoin com que a mensagem foi designada</translation> </message> @@ -2495,6 +2687,10 @@ <translation>Desde que um endereรงo de modo-verificaรงรฃo faรงa parte ou nรฃo desta transaรงรฃo</translation> </message> <message> + <source>User-defined intent/purpose of the transaction.</source> + <translation>Motivo da transacรงรฃo definido pelo utilizador.</translation> + </message> + <message> <source>Amount removed from or added to balance.</source> <translation>Quantia retirada ou adicionada ao saldo.</translation> </message> @@ -2574,6 +2770,10 @@ <translation>Copiar ID da Transaรงรฃo</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Copiar dados brutos da transacรงรฃo</translation> + </message> + <message> <source>Edit label</source> <translation>Editar rรณtulo</translation> </message> @@ -2653,7 +2853,7 @@ <name>WalletFrame</name> <message> <source>No wallet has been loaded.</source> - <translation>Nenhuma carteira foi carregada.</translation> + <translation>Nรฃo foi carregada nenhuma carteira.</translation> </message> </context> <context> @@ -2721,14 +2921,70 @@ <translation>Aceitar comandos de linha de comandos e JSON-RPC</translation> </message> <message> + <source>If <category> is not supplied or if <category> = 1, output all debugging information.</source> + <translation>Se <category> nรฃo รฉ fornecida ou <category> = 1, imprimir toda a informaรงรฃo de depuraรงรฃo.</translation> + </message> + <message> + <source>Maximum total fees (in %s) to use in a single wallet transaction; setting this too low may abort large transactions (default: %s)</source> + <translation>Total mรกximo de taxas (em %s) a utilizar numa รบnica transacรงรฃo; definir este valor demasiado baixo pode abortar transacรงรตes grandes (padrรฃo: %s)</translation> + </message> + <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Por favor verifique que a data e hora do seu computador estรฃo correctas! Se o seu relรณgio nรฃo estiver certo o Bitcoin Core nรฃo irรก funcionar correctamente.</translation> + </message> + <message> + <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> + <translation>Poda configurada abaixo do mรญnimo de %d MiB. Por favor, utilize um valor mais elevado.</translation> + </message> + <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>Suprimir: a รบltima sincronizaรงรฃo da carteira vai alรฉm dos dados suprimidos. O que precisa para -reindex (transferir novamente toda a cadeia de blocos, no caso de nรณ suprimido)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>Reduza os requisitos de armazenamento podando (eliminando) blocos antigos. Este modo รฉ incompatรญvel com -txindex e -rescan. Aviso: Reverter esta opรงรฃo requer um novo descarregamento da cadeia de blocos completa. (padrรฃo: 0 = desactivar poda de blocos, >%u = tamanho desejado em MiB para utilizar em ficheiros de blocos)</translation> + </message> + <message> + <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> + <translation>Reanรกlises nรฃo sรฃo possรญveis no modo de suprimir. Para isso terรก de utilizar -reindex que irรก transferir novamente toda a cadeia de blocos.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>Erro: Um erro fatal interno ocorreu, verificar debug.log para mais informaรงรฃo</translation> + </message> + <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>Taxa (em %s/kB) a adicionar ร s transacรงรตes que envia (padrรฃo: %s)</translation> + </message> + <message> + <source>Pruning blockstore...</source> + <translation>A podar a blockstore...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>Correr o processo em segundo plano e aceitar comandos</translation> </message> <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>Nรฃo รฉ possรญvel iniciar o servidor HTTP. Verifique o debug.log para detalhes.</translation> + </message> + <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Aceitar ligaรงรตes externas (padrรฃo: 1 sem -proxy ou -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee estรก definida muito elevada! Esta รฉ a taxa de transaรงรฃo pode poderรก pagar quando as estimativas de taxas nรฃo estรฃo disponรญveis.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>Uma percentagem da taxa (em %s/kB) que serรก utilizada quando a estimativa da taxa tiver dados insuficientes (predefiniรงรฃo: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Aceitar as transaรงรตes retransmitidas recebidas dos pares na lista branca, mesmo quando nรฃo retransmitir as transaรงรตes (predefiniรงรฃo: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Associar a endereรงo especรญfico e escutar sempre nele. Use a notaรงรฃo [anfitriรฃo]:porta para IPv6</translation> </message> @@ -2745,10 +3001,18 @@ <translation>Executar comando quando uma das transaรงรตes na carteira mudar (no comando, %s รฉ substituรญdo pelo ID da Transaรงรฃo)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Forรงar retransmissรฃo das transaรงรตes a partir dos pares da lista branca, mesmo que estes violem a polรญtica de retransmissรฃo local (predefiniรงรฃo: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Defina o nรบmero de processos de verificaรงรฃo (%u atรฉ %d, 0 = automรกtico, <0 = ldisponibiliza esse nรบmero de nรบcleos livres, por defeito: %d)</translation> </message> <message> + <source>The block database contains a block which appears to be from the future. This may be due to your computer's date and time being set incorrectly. Only rebuild the block database if you are sure that your computer's date and time are correct</source> + <translation>A base de dados de blocos contรฉm um bloco que aparenta ser do futuro. Isto pode ser causado por uma data incorrecta definida no seu computador. Reconstrua apenas a base de dados de blocos caso tenha a certeza de que a data e hora do seu computador estรฃo correctos.</translation> + </message> + <message> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>Esta รฉ uma versรฃo de testes prรฉ-lanรงamento - use ร sua responsabilidade - nรฃo usar para minar ou aplicaรงรตes comerciais</translation> </message> @@ -2757,10 +3021,30 @@ <translation>Incapaz de vincular ร porta %s neste computador. O Bitcoin Core provavelmente jรก estรก a correr.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Argumento nรฃo suportado -whitelistalwaysrelay ignorado, utilize -whitelistrelay e/ou -whitelistforcerelay.</translation> + </message> + <message> + <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> + <translation>Utilizar UPnP para mapear a porta de escuta (predefiniรงรฃo: 1 quando escutar e sem -proxy)</translation> + </message> + <message> + <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> + <translation>AVISO: gerado um nรบmero anormalmente elevado de blocos, %d blocos recebidos nas รบltimas %d horas (%d esperados)</translation> + </message> + <message> + <source>WARNING: check your network connection, %d blocks received in the last %d hours (%d expected)</source> + <translation>AVISO: verifique a sua conexรฃo ร rede, %d blocos recebidos nas รบltimas %d horas (%d esperados)</translation> + </message> + <message> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> <translation>Aviso: A rede nรฃo parece estar completamente de acordo! Parece que alguns mineiros estรฃo com dificuldades tรฉcnicas.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Atenรงรฃo: Versรตes desconhecidas de blocos estรฃo a ser mineradas! ร possรญvel que regras desconhecias estรฃo a ser efetuadas</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Atenรงรฃo: Parecemos nรฃo estar de acordo com os nossos pares! Poderรก ter que atualizar o seu cliente, ou outros nรณs poderรฃo ter que atualizar os seus clientes.</translation> </message> @@ -2773,12 +3057,20 @@ <translation>Ligaรงรตes na lista branca conectam desde a seguinte netmask ou endereรงo IP. Posse ser especificado varias vezes.</translation> </message> <message> + <source>-maxmempool must be at least %d MB</source> + <translation>- mรกximo do banco de memรณria deverรก ser pelo menos %d MB</translation> + </message> + <message> <source><category> can be:</source> <translation><categoria> pode ser:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Anexar um comentรกrio para a entrada de agente do utilizador</translation> + </message> + <message> <source>Block creation options:</source> - <translation>Opรงรตes de criaรงรฃo de bloco:</translation> + <translation>Opรงรตes da criaรงรฃo de bloco:</translation> </message> <message> <source>Connect only to the specified node(s)</source> @@ -2786,7 +3078,7 @@ </message> <message> <source>Connection options:</source> - <translation>Opcรตes de conexรงรฃo:</translation> + <translation>Opรงรตes de ligaรงรฃo:</translation> </message> <message> <source>Corrupted block database detected</source> @@ -2794,17 +3086,37 @@ </message> <message> <source>Debugging/Testing options:</source> - <translation>Depuraรงรฃo/Opรงรตes teste:</translation> + <translation>Opรงรตes de Depuraรงรฃo/Teste:</translation> </message> <message> <source>Do not load the wallet and disable wallet RPC calls</source> - <translation>Nรฃo carregar a carteira e desativar chamadas RPC de carteira.</translation> + <translation>Nรฃo carregar a carteira e desativar as chamadas de RPC da carteira.</translation> </message> <message> <source>Do you want to rebuild the block database now?</source> <translation>Deseja reconstruir agora a base de dados de blocos.</translation> </message> <message> + <source>Enable publish hash block in <address></source> + <translation>Activar publicaรงรฃo do hash do bloco em <address></translation> + </message> + <message> + <source>Enable publish hash transaction in <address></source> + <translation>Activar publicaรงรฃo do hash da transacรงรฃo em <address></translation> + </message> + <message> + <source>Enable publish raw block in <address></source> + <translation>Activar publicaรงรฃo de dados brutos do bloco em <address></translation> + </message> + <message> + <source>Enable publish raw transaction in <address></source> + <translation>Activar publicaรงรฃo de dados brutos da transacรงรฃo em <address></translation> + </message> + <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Ativar substituiรงรฃo da transaรงรฃo no banco de memรณria (predefiniรงรฃo: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Erro ao inicializar a cadeia de blocos</translation> </message> @@ -2841,6 +3153,22 @@ <translation>Endereรงo -onion invรกlido: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Valor invรกlido para -fallbackfee=<amount>: '%s'</translation> + </message> + <message> + <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> + <translation>Manter o banco de memรณria da transaรงรฃo abaixo de <n> megabytes (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Localizaรงรฃo de cookie de autorizaรงรฃo (predefiniรงรฃo: diretoria de dados)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Mรญnimo de bytes por sigop nas transaรงรตes que nรณs transmitimos e mine (predefiniรงรฃo: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Os descritores de ficheiros disponรญveis sรฃo insuficientes.</translation> </message> @@ -2849,6 +3177,18 @@ <translation>Somente conectar aos nodes na rede <net> (ipv4, ipv6 ou onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Imprimir versรฃo e sair</translation> + </message> + <message> + <source>Prune cannot be configured with a negative value.</source> + <translation>Poda nรฃo pode ser configurada com um valor negativo.</translation> + </message> + <message> + <source>Prune mode is incompatible with -txindex.</source> + <translation>Modo poda รฉ incompatรญvel com -txindex.</translation> + </message> + <message> <source>Set database cache size in megabytes (%d to %d, default: %d)</source> <translation>Definir o tamanho da cache de base de dados em megabytes (%d a %d, padrรฃo: %d)</translation> </message> @@ -2861,8 +3201,24 @@ <translation>Especifique ficheiro de carteira (dentro da pasta de dados)</translation> </message> <message> + <source>Unsupported argument -benchmark ignored, use -debug=bench.</source> + <translation>Argumento nรฃo suportado -benchmark ignorado, use -debug=bench.</translation> + </message> + <message> + <source>Unsupported argument -debugnet ignored, use -debug=net.</source> + <translation>Argumento nรฃo suportado -debugnet ignorado, use -debug=net.</translation> + </message> + <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>Argumento nรฃo suportado -tor encontrado, use -onion.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: %u)</source> - <translation>Use UPnP para mapear a porto de escuta (default: %u)</translation> + <translation>Utilizar UPnP para mapear a porta de escuta (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>Comentรกrio no User Agent (%s) contรฉm caracteres inseguros.</translation> </message> <message> <source>Verifying blocks...</source> @@ -2881,10 +3237,6 @@ <translation>Opรงรตes da carteira:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Aviso: Esta versรฃo estรก desatualizada; atualizaรงรฃo necessรกria!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ร necessรกrio reconstruir as bases de dados usando -reindex para mudar o -txindex</translation> </message> @@ -2905,34 +3257,122 @@ <translation>Impossรญvel trancar a pasta de dados %s. Provavelmente o Bitcoin Core jรก estรก a ser executado.</translation> </message> <message> + <source>Create new files with system default permissions, instead of umask 077 (only effective with disabled wallet functionality)</source> + <translation>Crie ficheiros novos com as permisรตes predefinidas do sistema, em vez de umask 077 (apenas eficaz caso a funcionalidade carteira esteja desactivada)</translation> + </message> + <message> + <source>Discover own IP addresses (default: 1 when listening and no -externalip or -proxy)</source> + <translation>Descobrir o prรณprio endereรงo IP (padrรฃo: 1 ao escutar e sem -externalip ou -proxy)</translation> + </message> + <message> + <source>Error: Listening for incoming connections failed (listen returned error %s)</source> + <translation>Erro: A escuta de ligaรงรตes de entrada falhou (escuta devolveu erro %s)</translation> + </message> + <message> <source>Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)</source> <translation>Executar comando quando um alerta relevante for recebido ou em caso de uma divisรฃo longa da cadeia de blocos (no comando, %s รฉ substituรญdo pela mensagem)</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>Taxas (em %s/kB) abaixo deste valor sรฃo consideradas nulas para propagaรงรฃo, mineraรงรฃo e criaรงรฃo de transacรงรตes (padrรฃo: %s)</translation> + </message> + <message> + <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> + <translation>Caso o paytxfee nรฃo seja definido, inclua uma taxa suficiente para que as transacรงรตes comecem a ser confirmadas, em mรฉdia, dentro de n blocos (padrรฃo: %u)</translation> + </message> + <message> + <source>Invalid amount for -maxtxfee=<amount>: '%s' (must be at least the minrelay fee of %s to prevent stuck transactions)</source> + <translation>Montante invรกlido para -maxtxfee=<amount>: '%s' (deverรก ser, no mรญnimo , a taxa mรญnima de propagaรงรฃo de %s, de modo a evitar transaรงรตes bloqueadas)</translation> + </message> + <message> + <source>Maximum size of data in data carrier transactions we relay and mine (default: %u)</source> + <translation>Tamanho mรกximo dos dados em transacรงรตes que incluem dados que propagamos e mineramos (padrรฃo: %u)</translation> + </message> + <message> + <source>Query for peer addresses via DNS lookup, if low on addresses (default: 1 unless -connect)</source> + <translation>Encontrar pares usando DNS lookup, caso o nรบmero de endereรงos seja reduzido (padrรฃo: 1 excepto -connect)</translation> + </message> + <message> + <source>Randomize credentials for every proxy connection. This enables Tor stream isolation (default: %u)</source> + <translation>Usar credenciais aleatรณrias por cada ligaรงรฃo proxy. Permite que o Tor use stream isolation (padrรฃo: %u)</translation> + </message> + <message> <source>Set maximum size of high-priority/low-fee transactions in bytes (default: %d)</source> <translation>Definir tamanho mรกximo de transaรงรตes com alta-prioridade/baixa-taxa em bytes (por defeito: %d)</translation> </message> <message> + <source>Set the number of threads for coin generation if enabled (-1 = all cores, default: %d)</source> + <translation>Definir o nรบmero threads para a geraรงรฃo de moedas, caso activo (-1 = todos os cores, padrรฃo: %d)</translation> + </message> + <message> + <source>The transaction amount is too small to send after the fee has been deducted</source> + <translation>O montante da transacรงรฃo รฉ demasiado baixo apรณs a deduรงรฃo da taxa</translation> + </message> + <message> + <source>This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written by Eric Young and UPnP software written by Thomas Bernard.</source> + <translation>Este produto inclui software desenvolvido pelo OpenSSL Project para utilizaรงรฃo no OpenSSL Toolkit <https://www.openssl.org/> e software criptogrรกfico escrito por Eric Young e software UPnP escrito por Thomas Bernard.</translation> + </message> + <message> + <source>Whitelisted peers cannot be DoS banned and their transactions are always relayed, even if they are already in the mempool, useful e.g. for a gateway</source> + <translation>Os pares enviados para a lista branca nรฃo podem ser DoS banidos e as suas transaรงรตes sรฃo sempre retransmitidas, mesmo que jรก estejam no banco de memรณria, รบtil, por exemplo, para um acesso</translation> + </message> + <message> + <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source> + <translation>ร necessรกrio reconstruir a base de dados, utilizando -reindex para voltar ao modo de suprimir. Isto irรก transferir novamente a cadeia de blocos completa</translation> + </message> + <message> <source>(default: %u)</source> - <translation>(por defeito: %u)</translation> + <translation>(predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Accept public REST requests (default: %u)</source> + <translation>Aceitar pedidos REST pรบblicos (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Activating best chain...</source> + <translation>A activar a melhor cadeia...</translation> + </message> + <message> + <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> + <translation>Tentar recuperar chaves privadas de um wallet.dat corrompido ao iniciar</translation> + </message> + <message> + <source>Automatically create Tor hidden service (default: %d)</source> + <translation>Criar automaticamente o serviรงo Tor oculto (predefiniรงรฃo: %d)</translation> </message> <message> <source>Cannot resolve -whitebind address: '%s'</source> <translation>Nรฃo foi possรญvel resolver o endereรงo -whitebind: '%s'</translation> </message> <message> + <source>Connect through SOCKS5 proxy</source> + <translation>Ligar atravรฉs de um proxy SOCKS5</translation> + </message> + <message> <source>Copyright (C) 2009-%i The Bitcoin Core Developers</source> <translation>Copyright (C) 2009-%i Os Programadores do Bitcoin Core</translation> </message> <message> <source>Error loading wallet.dat: Wallet requires newer version of Bitcoin Core</source> - <translation>Erro ao carregar wallet.dat: A Carteira requer uma versรฃo mais recente do Bitcoin Core</translation> + <translation>Erro ao carregar wallet.dat: A carteira requer uma versรฃo mais recente do Bitcoin Core</translation> + </message> + <message> + <source>Error reading from database, shutting down.</source> + <translation>Erro ao ler da base de dados, encerrando.</translation> + </message> + <message> + <source>Imports blocks from external blk000??.dat file on startup</source> + <translation>Importar blocos de um ficheiro blk000??.dat externo ao iniciar</translation> </message> <message> <source>Information</source> <translation>Informaรงรฃo</translation> </message> <message> + <source>Initialization sanity check failed. Bitcoin Core is shutting down.</source> + <translation>Falha na prova real inicial. Bitcoin Core estรก a desligar.</translation> + </message> + <message> <source>Invalid amount for -maxtxfee=<amount>: '%s'</source> <translation>Quantia invรกlida para -maxtxfee=<quantidade>: '%s'</translation> </message> @@ -2945,10 +3385,58 @@ <translation>Quantia invรกlida para -mintxfee=<quantidade>: '%s'</translation> </message> <message> + <source>Invalid amount for -paytxfee=<amount>: '%s' (must be at least %s)</source> + <translation>Montante invรกlido para -paytxfee=<amount>: '%s' (deverรก ser no mรญnimo %s)</translation> + </message> + <message> + <source>Invalid netmask specified in -whitelist: '%s'</source> + <translation>Mรกscara de rede invรกlida especificada em -whitelist: '%s'</translation> + </message> + <message> + <source>Keep at most <n> unconnectable transactions in memory (default: %u)</source> + <translation>Manter no mรกximo <n> transacรงรตes รณrfรฃs em memรณria (padrรฃo: %u)</translation> + </message> + <message> + <source>Need to specify a port with -whitebind: '%s'</source> + <translation>Necessรกrio especificar uma porta com -whitebind: '%s'</translation> + </message> + <message> + <source>Node relay options:</source> + <translation>Opรงรตes da transmissรฃo de nรณs:</translation> + </message> + <message> + <source>RPC server options:</source> + <translation>Opรงรตes do servidor RPC:</translation> + </message> + <message> + <source>Rebuild block chain index from current blk000??.dat files on startup</source> + <translation>Reconstruir a cadeia de blocos a partir dos ficheiros blk000??.dat actuais ao iniciar</translation> + </message> + <message> + <source>Receive and display P2P network alerts (default: %u)</source> + <translation>Receber e mostrar alertas da rede P2P (padrรฃo: %u)</translation> + </message> + <message> + <source>Reducing -maxconnections from %d to %d, because of system limitations.</source> + <translation>Reduzindo -maxconnections de %d para %d, devido a limitaรงรตes no sistema.</translation> + </message> + <message> + <source>Rescan the block chain for missing wallet transactions on startup</source> + <translation>Procurar transacรงรตes em falta na cadeia de blocos ao iniciar</translation> + </message> + <message> <source>Send trace/debug info to console instead of debug.log file</source> <translation>Enviar informaรงรฃo de rastreio/depuraรงรฃo para a consola e nรฃo para o ficheiro debug.log</translation> </message> <message> + <source>Send transactions as zero-fee transactions if possible (default: %u)</source> + <translation>Enviar como uma transacรงรฃo a custo zero se possรญvel (padrรฃo: %u)</translation> + </message> + <message> + <source>Show all debugging options (usage: --help -help-debug)</source> + <translation>Mostrar todas as opรงรตes de depuraรงรฃo (utilizaรงรฃo: --help -help-debug)</translation> + </message> + <message> <source>Shrink debug.log file on client startup (default: 1 when no -debug)</source> <translation>Encolher ficheiro debug.log ao iniciar o cliente (por defeito: 1 sem -debug definido)</translation> </message> @@ -2957,6 +3445,22 @@ <translation>Falhou assinatura da transaรงรฃo</translation> </message> <message> + <source>The transaction amount is too small to pay the fee</source> + <translation>O montante da transacรงรฃo รฉ demasiado baixo para pagar a taxa</translation> + </message> + <message> + <source>This is experimental software.</source> + <translation>Isto รฉ software experimental.</translation> + </message> + <message> + <source>Tor control port password (default: empty)</source> + <translation>Palavra-passe da porta de controlo Tor (predefiniรงรฃo: vazio)</translation> + </message> + <message> + <source>Tor control port to use if onion listening enabled (default: %s)</source> + <translation>Porta de controlo Tor a utilizar se a escuta cebola estiver ativada (predefiniรงรฃo: %s)</translation> + </message> + <message> <source>Transaction amount too small</source> <translation>Quantia da transaรงรฃo รฉ muito baixa</translation> </message> @@ -2965,10 +3469,22 @@ <translation>Quantia da transaรงรฃo deverรก ser positiva</translation> </message> <message> + <source>Transaction too large for fee policy</source> + <translation>Transacรงรฃo demasiado grande para a polรญtica de taxas</translation> + </message> + <message> <source>Transaction too large</source> <translation>Transaรงรฃo grande demais</translation> </message> <message> + <source>Unable to bind to %s on this computer (bind returned error %s)</source> + <translation>Incapaz de vincular ร porta %s neste computador (vรญnculo retornou erro %s)</translation> + </message> + <message> + <source>Upgrade wallet to latest format on startup</source> + <translation>Actualizar carteira para o formato mais recente ao iniciar</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>Nome de utilizador para ligaรงรตes JSON-RPC</translation> </message> @@ -2981,10 +3497,22 @@ <translation>Aviso</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Aviso: ativadas novas regras desconhecidas (versionbit %i)</translation> + </message> + <message> + <source>Whether to operate in a blocks only mode (default: %u)</source> + <translation>Se operar apenas num modo de blocos (predefiniรงรฃo: %u)</translation> + </message> + <message> <source>Zapping all transactions from wallet...</source> <translation>A limpar todas as transaรงรตes da carteira...</translation> </message> <message> + <source>ZeroMQ notification options:</source> + <translation>Opรงรตes de notificaรงรฃo ZeroMQ:</translation> + </message> + <message> <source>wallet.dat corrupt, salvage failed</source> <translation>wallet.dat corrompido, recuperaรงรฃo falhou</translation> </message> @@ -3006,27 +3534,107 @@ </message> <message> <source>Loading addresses...</source> - <translation>A carregar endereรงos...</translation> + <translation>A carregar os endereรงos...</translation> </message> <message> <source>Error loading wallet.dat: Wallet corrupted</source> <translation>Erro ao carregar wallet.dat: Carteira danificada</translation> </message> <message> + <source>(1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)</source> + <translation>(1 = guardar metadados da transacรงรฃo ex: proprietรกrio da conta e informaรงรฃo do pedido de pagamento, 2 = descartar metadados da transacรงรฃo)</translation> + </message> + <message> + <source>-maxtxfee is set very high! Fees this large could be paid on a single transaction.</source> + <translation>-maxtxfee estรก definido com um valor muito alto! Taxas desta magnitude podem ser pagas numa รบnica transacรงรฃo.</translation> + </message> + <message> + <source>-paytxfee is set very high! This is the transaction fee you will pay if you send a transaction.</source> + <translation>-paytxfee estรก definido com um valor muito alto! Esta รฉ a taxa que irรก pagar se enviar uma transacรงรฃo.</translation> + </message> + <message> + <source>Do not keep transactions in the mempool longer than <n> hours (default: %u)</source> + <translation>Nรฃo guardar transaรงรตes no banco de memรณria por mais de <n> horas (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>Error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> + <translation>Erro ao ler wallet.dat! Todas as chaves foram lidas correctamente, mas os dados das transacรงรตes ou do livro de endereรงos podem estar em falta ou incorrectos.</translation> + </message> + <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for transaction creation (default: %s)</source> + <translation>Taxas (em %s/kB) abaixo deste valor sรฃo consideradas nulas para a criaรงรฃo de transacรงรตes (padrรฃo: %s)</translation> + </message> + <message> + <source>How thorough the block verification of -checkblocks is (0-4, default: %u)</source> + <translation>Minuciosidade da verificaรงรฃo de blocos para -checkblocks รฉ (0-4, padrรฃo: %u)</translation> + </message> + <message> + <source>Maintain a full transaction index, used by the getrawtransaction rpc call (default: %u)</source> + <translation>Manter um รญndice de transacรงรตes completo, usado pela chamada RPC getrawtransaction (padrรฃo: %u)</translation> + </message> + <message> + <source>Number of seconds to keep misbehaving peers from reconnecting (default: %u)</source> + <translation>Nรบmero de segundos a impedir que pares com comportamento indesejado se liguem de novo (padrรฃo: %u)</translation> + </message> + <message> + <source>Output debugging information (default: %u, supplying <category> is optional)</source> + <translation>Informaรงรฃo de depuraรงรฃo (padrรฃo: %u, fornecer uma <category> รฉ opcional)</translation> + </message> + <message> + <source>Support filtering of blocks and transaction with bloom filters (default: %u)</source> + <translation>Suportar filtragem de blocos e transacรงรตes com fitros bloom (padrรฃo: %u)</translation> + </message> + <message> + <source>Total length of network version string (%i) exceeds maximum length (%i). Reduce the number or size of uacomments.</source> + <translation>Comprimento total da entrada da versรฃo de rede (%i) excede o comprimento mรกximo (%i). Reduzir o nรบmero ou o tamanho de uacomments.</translation> + </message> + <message> + <source>Tries to keep outbound traffic under the given target (in MiB per 24h), 0 = no limit (default: %d)</source> + <translation>Tenta manter o trรกfego externo abaixo do limite especificado (em MiB por 24h), 0 = sem limite (padrรฃo: %d)</translation> + </message> + <message> + <source>Unsupported argument -socks found. Setting SOCKS version isn't possible anymore, only SOCKS5 proxies are supported.</source> + <translation>Encontrado um argumento nรฃo suportado -socks. Definir a versรฃo do SOCKS jรก nรฃo รฉ possรญvel, apenas proxies SOCKS5 sรฃo suportados.</translation> + </message> + <message> + <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: %s)</source> + <translation>Use um proxy SOCKS5 separado para alcanรงar pares via serviรงos ocultos do Tor (padrรฃo: %s)</translation> + </message> + <message> + <source>Username and hashed password for JSON-RPC connections. The field <userpw> comes in the format: <USERNAME>:<SALT>$<HASH>. A canonical python script is included in share/rpcuser. This option can be specified multiple times</source> + <translation>Username e hash da password para ligaรงรตes JSON-RPC. O campo <userpw> estรก no formato: <USERNAME>:<SALT>$<HASH>. Um script python estรก incluido em share/rpcuser. Esta opรงรฃo pode ser especificada mรบltiplas vezes.</translation> + </message> + <message> <source>(default: %s)</source> - <translation>(por defeito: %s)</translation> + <translation>(predefiniรงรฃo: %s)</translation> + </message> + <message> + <source>Always query for peer addresses via DNS lookup (default: %u)</source> + <translation>Utilizar sempre a consulta de DNS para endereรงos de pares (predefiniรงรฃo: %u)</translation> </message> <message> <source>Error loading wallet.dat</source> <translation>Erro ao carregar wallet.dat</translation> </message> <message> + <source>Generate coins (default: %u)</source> + <translation>Gerar moedas (predefiniรงรฃo: %u)</translation> + </message> + <message> + <source>How many blocks to check at startup (default: %u, 0 = all)</source> + <translation>Quantos blocos para verificar no arranque (predefiniรงรฃo: %u, 0 = todos)</translation> + </message> + <message> + <source>Include IP addresses in debug output (default: %u)</source> + <translation>Incluir endereรงos de IP na informaรงรฃo de depuraรงรฃo (predefiniรงรฃo: %u)</translation> + </message> + <message> <source>Invalid -proxy address: '%s'</source> <translation>Endereรงo -proxy invรกlido: '%s'</translation> </message> <message> <source>Listen for JSON-RPC connections on <port> (default: %u or testnet: %u)</source> - <translation>Escutar por ligaรงรตes JSON-RPC na porta <port> (por defeito: %u ou rede de testes: %u)</translation> + <translation>Escutar por ligaรงรตes JSON-RPC na porta <port> (predefiniรงรฃo: %u ou rede de testes: %u)</translation> </message> <message> <source>Listen for connections on <port> (default: %u or testnet: %u)</source> @@ -3037,6 +3645,10 @@ <translation>Manter no mรกximo <n> ligaรงรตes a outros nรณs da rede (por defeito: %u)</translation> </message> <message> + <source>Make the wallet broadcast transactions</source> + <translation>Colocar a carteira a transmitir transacรงรตes</translation> + </message> + <message> <source>Maximum per-connection receive buffer, <n>*1000 bytes (default: %u)</source> <translation>Maximo armazenamento intermรฉdio de recepรงรฃo por ligaรงรฃo, <n>*1000 bytes (por defeito: %u)</translation> </message> @@ -3049,8 +3661,16 @@ <translation>Adicionar data e hora ร informaรงรฃo de depuraรงรฃo (por defeito: %u)</translation> </message> <message> + <source>Relay and mine data carrier transactions (default: %u)</source> + <translation>Propagar e minerar transacรงรตes que incluem dados (padrรฃo: %u)</translation> + </message> + <message> + <source>Relay non-P2SH multisig (default: %u)</source> + <translation>Propagar nรฃo P2SH multisig (predefiniรงรฃo: %u)</translation> + </message> + <message> <source>Set key pool size to <n> (default: %u)</source> - <translation>Definir o tamanho da memรณria de chaves para <n> (por defeito: %u)</translation> + <translation>Definir tamanho do banco de memรณria da chave para <n> (predefiniรงรฃo: %u)</translation> </message> <message> <source>Set minimum block size in bytes (default: %u)</source> @@ -3069,6 +3689,18 @@ <translation>Especificar tempo de espera da ligaรงรฃo em milissegundos (mรญnimo 1, por defeito: %d)</translation> </message> <message> + <source>Specify pid file (default: %s)</source> + <translation>Especificar ficheiro pid (padrรฃo: %s)</translation> + </message> + <message> + <source>Spend unconfirmed change when sending transactions (default: %u)</source> + <translation>Gastar troco nรฃo confirmado ao enviar transacรงรตes (padrรฃo: %u)</translation> + </message> + <message> + <source>Threshold for disconnecting misbehaving peers (default: %u)</source> + <translation>Tolerรขncia para desligar nรณs com comportamento indesejรกvel (padrรฃo: %u)</translation> + </message> + <message> <source>Unknown network specified in -onlynet: '%s'</source> <translation>Rede desconhecida especificada em -onlynet: '%s'</translation> </message> @@ -3090,7 +3722,7 @@ </message> <message> <source>Loading block index...</source> - <translation>A carregar รญndice de blocos...</translation> + <translation>A carregar o รญndice de blocos...</translation> </message> <message> <source>Add a node to connect to and attempt to keep the connection open</source> @@ -3098,7 +3730,7 @@ </message> <message> <source>Loading wallet...</source> - <translation>A carregar carteira...</translation> + <translation>A carregar a carteira...</translation> </message> <message> <source>Cannot downgrade wallet</source> @@ -3114,7 +3746,7 @@ </message> <message> <source>Done loading</source> - <translation>Carregamento completo</translation> + <translation>Carregamento concluรญdo</translation> </message> <message> <source>Error</source> diff --git a/src/qt/locale/bitcoin_ro.ts b/src/qt/locale/bitcoin_ro.ts new file mode 100644 index 0000000000..11ac69f0f2 --- /dev/null +++ b/src/qt/locale/bitcoin_ro.ts @@ -0,0 +1,169 @@ +<TS language="ro" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Click dreapta pentru a modifica adresa o eticheta</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Creazฤ o nouฤ adresฤ</translation> + </message> + <message> + <source>&New</source> + <translation>&Nou</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Copiazฤ รฎn notiศe adresa selectatฤ รฎn prezent</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Copiazฤ</translation> + </message> + <message> + <source>C&lose</source> + <translation>ร&nchide</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Copiazฤ Adresa</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>ศterge adresa curentฤ selectata din listฤ</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportฤ datele din tabul curent in fisier</translation> + </message> + <message> + <source>&Export</source> + <translation>&Exportฤ</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Indicฤ adresa de expediere a monedelor</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Indicฤ adresa de a primi monedele</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + </context> +<context> + <name>AskPassphraseDialog</name> + </context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + </context> +<context> + <name>RecentRequestsTableModel</name> + </context> +<context> + <name>SendCoinsDialog</name> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + </context> +<context> + <name>TransactionView</name> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Exportฤ</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Exportฤ datele din tabul curent in fisier</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_ro_RO.ts b/src/qt/locale/bitcoin_ro_RO.ts index 8bccf037a7..502052dffb 100644 --- a/src/qt/locale/bitcoin_ro_RO.ts +++ b/src/qt/locale/bitcoin_ro_RO.ts @@ -27,7 +27,7 @@ </message> <message> <source>&Copy Address</source> - <translation>&Copiazฤ adresa</translation> + <translation>&Copiazฤ Adresa</translation> </message> <message> <source>Delete the currently selected address from the list</source> @@ -43,15 +43,15 @@ </message> <message> <source>&Delete</source> - <translation>ลterge</translation> + <translation>&ลterge</translation> </message> <message> <source>Choose the address to send coins to</source> - <translation>Alegeลฃi adresa unde vreลฃi sฤ trimiteลฃi monezile</translation> + <translation>Alegeลฃi adresa unde vreลฃi sฤ trimiteลฃi monedele</translation> </message> <message> <source>Choose the address to receive coins with</source> - <translation>Alegeลฃi adresa unde vreลฃi sฤ primiลฃi monezile</translation> + <translation>Alegeลฃi adresa unde vreลฃi sฤ primiลฃi monedele</translation> </message> <message> <source>C&hoose</source> @@ -67,7 +67,7 @@ </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> - <translation>Acestea sรฎnt adresele dumneavoastrฤ Bitcoin pentru efectuarea plฤลฃilor. Verificaลฃi รฎntotdeauna cantitatea ลi adresa de primire รฎnainte de a trimite monezi.</translation> + <translation>Acestea sรฎnt adresele dumneavoastrฤ Bitcoin pentru efectuarea plฤลฃilor. Verificaลฃi รฎntotdeauna cantitatea ลi adresa de primire รฎnainte de a trimite monede.</translation> </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> @@ -222,7 +222,15 @@ </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP/Netmask</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Banat pรขnฤ la</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -547,7 +555,7 @@ <name>CoinControlDialog</name> <message> <source>Coin Selection</source> - <translation>Selectarea monezii</translation> + <translation>Selectarea monedei</translation> </message> <message> <source>Quantity:</source> @@ -874,7 +882,35 @@ <source>command-line options</source> <translation>Opลฃiuni linie de comandฤ</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>Opลฃiuni UI:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>Alege dosarul de date la pornire (implicit: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>Seteazฤ limba, de exemplu: "ro_RO" (implicit: sistem local)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Porniลฃi minimizat</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>Setare rฤdฤcinฤ certificat SSL pentru cerere de platฤ (implicit: -sistem- )</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>Afiลeazฤ ecran splash la pornire (implicit: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Reseteazฤ toate schimbฤrile fฤcute รฎn GUI</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -1012,6 +1048,10 @@ <translation>Reลฃea</translation> </message> <message> + <source>Automatically start Bitcoin Core after logging in to the system.</source> + <translation>Porneลte automat Bitcoin Core dupฤ logarea รฎn sistem.</translation> + </message> + <message> <source>&Start Bitcoin Core on system login</source> <translation>Porneลte Nucleul Bitcoin la pornirea sistemului</translation> </message> @@ -1068,6 +1108,18 @@ <translation>Portul proxy (de exemplu: 9050)</translation> </message> <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> <source>&Window</source> <translation>&Fereastrฤ</translation> </message> @@ -1313,6 +1365,10 @@ <translation>Agent utilizator</translation> </message> <message> + <source>Node/Service</source> + <translation>Nod/Serviciu</translation> + </message> + <message> <source>Ping Time</source> <translation>Timp ping</translation> </message> @@ -1402,10 +1458,6 @@ <translation>General</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Foloseลte OpenSSL versiunea</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Foloseลte BerkeleyDB versiunea</translation> </message> @@ -1434,6 +1486,14 @@ <translation>Numฤrul curent de blocuri</translation> </message> <message> + <source>Current number of transactions</source> + <translation>Numฤrul curent de tranzacลฃii</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Memorie folositฤ</translation> + </message> + <message> <source>Received</source> <translation>Recepลฃionat</translation> </message> @@ -1450,6 +1510,10 @@ <translation>Selectaลฃi un partener pentru a vedea informaลฃiile detaliate.</translation> </message> <message> + <source>Whitelisted</source> + <translation>Whitelisted</translation> + </message> + <message> <source>Direction</source> <translation>Direcลฃie</translation> </message> @@ -1458,6 +1522,18 @@ <translation>Versiune</translation> </message> <message> + <source>Starting Block</source> + <translation>Bloc de รฎnceput</translation> + </message> + <message> + <source>Synced Headers</source> + <translation>Headere Sincronizate</translation> + </message> + <message> + <source>Synced Blocks</source> + <translation>Blocuri Sincronizate</translation> + </message> + <message> <source>User Agent</source> <translation>Agent utilizator</translation> </message> @@ -1526,6 +1602,26 @@ <translation>Curฤลฃฤ consola</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>&Deconectare nod</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &orฤ</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &zi</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &sฤptฤmรขnฤ</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &an</translation> + </message> + <message> <source>Welcome to the Bitcoin Core RPC console.</source> <translation>Bun venit la consola Nucleului Bitcoin RPC.</translation> </message> @@ -1570,6 +1666,14 @@ <translation>Ieลire</translation> </message> <message> + <source>Yes</source> + <translation>Da</translation> + </message> + <message> + <source>No</source> + <translation>Nu</translation> + </message> + <message> <source>Unknown</source> <translation>Necunoscut</translation> </message> @@ -1918,6 +2022,10 @@ <translation>Copiazฤ rest</translation> </message> <message> + <source>Total Amount %1</source> + <translation>Suma totalฤ %1</translation> + </message> + <message> <source>or</source> <translation>sau</translation> </message> @@ -1950,6 +2058,10 @@ <translation>Adresa destinatarului nu este validฤ, vฤ rugฤm sฤ o verificaลฃi.</translation> </message> <message> + <source>Duplicate address found: addresses should only be used once each.</source> + <translation>Adresฤ duplicat gฤsitฤ: fiecare adresฤ ar trebui folositฤ o singurฤ datฤ.</translation> + </message> + <message> <source>Warning: Invalid Bitcoin address</source> <translation>Atenลฃie: Adresa bitcoin nevalidฤ!</translation> </message> @@ -2317,7 +2429,7 @@ </message> <message> <source>Generated coins must mature %1 blocks before they can be spent. When you generated this block, it was broadcast to the network to be added to the block chain. If it fails to get into the chain, its state will change to "not accepted" and it won't be spendable. This may occasionally happen if another node generates a block within a few seconds of yours.</source> - <translation>Monezile generate trebuie sฤ creascฤ %1 blocuri รฎnainte sฤ poatฤ fi cheltuite. Cรฎnd aลฃi generat acest bloc, a fost transmis reลฃelei pentru a fi adaugat la lanลฃul de blocuri. Aceasta se poate รฎntรฎmpla ocazional dacฤ alt nod genereazฤ un bloc la numai cรฎteva secunde de al dvs.</translation> + <translation>Monedele generate trebuie sฤ creascฤ %1 blocuri รฎnainte sฤ poatฤ fi cheltuite. Cรฎnd aลฃi generat acest bloc, a fost transmis reลฃelei pentru a fi adaugat la lanลฃul de blocuri. Aceasta se poate รฎntรฎmpla ocazional dacฤ alt nod genereazฤ un bloc la numai cรฎteva secunde de al dvs.</translation> </message> <message> <source>Debug information</source> diff --git a/src/qt/locale/bitcoin_ru.ts b/src/qt/locale/bitcoin_ru.ts index 00dfd833ab..b4546a2157 100644 --- a/src/qt/locale/bitcoin_ru.ts +++ b/src/qt/locale/bitcoin_ru.ts @@ -1474,10 +1474,6 @@ <translation>ะะฑัะธะต</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ะัะฟะพะปัะทัะตััั ะฒะตััะธั OpenSSL</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ะัะฟะพะปัะทัะตััั ะฒะตััะธั BerkeleyDB</translation> </message> @@ -2996,6 +2992,10 @@ <translation>ะัะฟะพะปะฝะธัั ะบะพะผะฐะฝะดั, ะบะพะณะดะฐ ะผะตะฝัะตััั ััะฐะฝะทะฐะบัะธั ะฒ ะฑัะผะฐะถะฝะธะบะต (%s ะฒ ะบะพะผะฐะฝะดะต ะทะฐะผะตะฝัะตััั ะฝะฐ TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>ะัะตะณะดะฐ ัะฐะทัะตัะฐัั ััะฐะฝะทะฐะบัะธะธ, ะฟะพะปััะตะฝะฝัะต ะพั ััะฐััะฝะธะบะพะฒ ะธะท ะฑะตะปะพะณะพ ัะฟะธัะบะฐ (ะฟะพ ัะผะพะปัะฐะฝะธั: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>ะะฐะดะฐัั ัะธัะปะพ ะฟะพัะพะบะพะฒ ะฟัะพะฒะตัะบะธ ัะบัะธะฟัะฐ (ะพั %u ะดะพ %d, 0=ะฐะฒัะพ, <0 = ะพััะฐะฒะธัั ััะพะปัะบะพ ัะดะตั ัะฒะพะฑะพะดะฝัะผะธ, ะฟะพ ัะผะพะปัะฐะฝะธั: %d)</translation> </message> @@ -3028,6 +3028,10 @@ <translation>ะะฝะธะผะฐะฝะธะต: ะฟะพั
ะพะถะต, ะฒ ัะตัะธ ะฝะตั ะฟะพะปะฝะพะณะพ ัะพะณะปะฐัะธั! ะะตะบะพัะพััะน ะผะฐะนะฝะตัั, ะฒะพะทะผะพะถะฝะพ, ะธัะฟัััะฒะฐัั ะฟัะพะฑะปะตะผั.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>ะะฝะธะผะฐะฝะธะต: ะะพะปััะตะฝะฐ ะฝะตะธะทะฒะตััะฝะฐั ะฒะตััะธั ะฑะปะพะบะฐ! ะะพะทะผะพะถะฝะพ ะฝะตะธะทะฒะตััะฝัะต ะฟัะฐะฒะธะปะฐ ะฒัััะฟะธะปะธ ะฒ ัะธะปั.</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>ะะฝะธะผะฐะฝะธะต: ะผั ะฝะต ะฟะพะปะฝะพัััั ัะพะณะปะฐัะฝั ั ะฟะพะดะบะปััะตะฝะฝัะผะธ ััะฐััะฝะธะบะฐะผะธ! ะะฐะผ ะธะปะธ ะดััะณะธะผ ััะฐััะฝะธะบะฐะผ, ะฒะพะทะผะพะถะฝะพ, ัะปะตะดัะตั ะพะฑะฝะพะฒะธัััั.</translation> </message> @@ -3048,6 +3052,10 @@ <translation><category> ะผะพะถะตั ะฑััั:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>ะะพะฑะฐะฒะธัั ะบะพะผะผะตะฝัะฐัะธะน ะบ ัััะพะบะต ะฟะพะปัะทะพะฒะฐัะตะปััะบะพะณะพ ะฐะณะตะฝัะฐ</translation> + </message> + <message> <source>Block creation options:</source> <translation>ะะฐัะฐะผะตััั ัะพะทะดะฐะฝะธั ะฑะปะพะบะพะฒ:</translation> </message> @@ -3132,6 +3140,10 @@ <translation>ะกะฑัะฐััะฒะฐัั ััะฐะฝะทะฐะบัะธะธ ะธะท ะฟะฐะผััะธ ะฝะฐ ะดะธัะบ ะบะฐะถะดัะต <n> ะผะตะณะฐะฑะฐะนั (ะฟะพ ัะผะพะปัะฐะฝะธั: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>ะ ะฐัะฟะพะปะพะถะตะฝะธะต ะบัะบะธ ะฒั
ะพะดั(ะฟะพ ัะผะพะปัะฐะฝะธั: data dir)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>ะะตะดะพััะฐัะพัะฝะพ ัะฐะนะปะพะฒัั
ะดะตัะบัะธะฟัะพัะพะฒ.</translation> </message> @@ -3140,6 +3152,10 @@ <translation>ะกะพะตะดะธะฝััััั ัะพะปัะบะพ ะฟะพ ัะตัะธ <net> (ipv4, ipv6 ะธะปะธ onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>ะะฐะฟะธัะฐัั ะฒะตััะธั ะธ ะฒัะนัะธ</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>ะฃะดะฐะปะตะฝะธะต ะฑะปะพะบะพะฒ ะฝะต ะผะพะถะตั ะธัะฟะพะปัะทะพะฒะฐัั ะพััะธัะฐัะตะปัะฝะพะต ะทะฝะฐัะตะฝะธะต.</translation> </message> @@ -3196,10 +3212,6 @@ <translation>ะะฐัััะพะนะบะธ ะฑัะผะฐะถะฝะธะบะฐ:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>ะะฝะธะผะฐะฝะธะต: ััะฐ ะฒะตััะธั ัััะฐัะตะปะฐ; ััะตะฑัะตััั ะพะฑะฝะพะฒะปะตะฝะธะต!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ะะฐะผ ะฝะตะพะฑั
ะพะดะธะผะพ ะฟะตัะตัะพะฑัะฐัั ะฑะฐะทั ะดะฐะฝะฝัั
ั ะฟะพะผะพััั -reindex, ััะพะฑั ะธะทะผะตะฝะธัั -txindex</translation> </message> @@ -3296,10 +3308,6 @@ <translation>ะะบัะธะฒะธััะตััั ะปัััะฐั ัะตะฟั...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>ะัะตะณะดะฐ ััะฐะฝัะปะธัะพะฒะฐัั ััะฐะฝะทะฐะบัะธะธ, ะฟะพะปััะตะฝะฝัะต ะธะท ะฑะตะปะพะณะพ ัะฟะธัะบะฐ ััะฐััะฝะธะบะพะฒ (ะฟะพ ัะผะพะปัะฐะฝะธั: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>ะะพะฟััะฐัััั ะฒะพัััะฐะฝะพะฒะธัั ะฟัะธะฒะฐัะฝัะต ะบะปััะธ ะธะท ะฟะพะฒัะตะถะดัะฝะฝะพะณะพ wallet.dat ะฟัะธ ะทะฐะฟััะบะต</translation> </message> @@ -3464,6 +3472,10 @@ <translation>ะะฝะธะผะฐะฝะธะต</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>ะะฝะธะผะฐะฝะธะต: ะฝะตะธะทะฒะตััะฝัะต ะฟัะฐะฒะธะปะฐ ะฒัััะฟะธะปะธ ะฒ ัะธะปั(versionbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>ะัะดะตั ัะฐะฑะพัะฐัั ะฒ ัะตะถะธะผะต ัะพะปัะบะพ ะฑะปะพะบะพะฒ (ะฟะพ ัะผะพะปัะฐะฝะธั: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_ru_RU.ts b/src/qt/locale/bitcoin_ru_RU.ts index 53a1c1d8a4..41e467e496 100644 --- a/src/qt/locale/bitcoin_ru_RU.ts +++ b/src/qt/locale/bitcoin_ru_RU.ts @@ -1,6 +1,50 @@ <TS language="ru_RU" version="2.1"> <context> <name>AddressBookPage</name> + <message> + <source>Create a new address</source> + <translation>ะกะพะทะดะฐัั ะฝะพะฒัะน ะฐะดัะตั</translation> + </message> + <message> + <source>&New</source> + <translation>ะะพะฒัะน</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Copy the currently selected address to the system clipboardัะน ะฐะดัะตั ะฒ ะฑััะตั</translation> + </message> + <message> + <source>&Copy</source> + <translation>ะะพะฟะธัะพะฒะฐัั</translation> + </message> + <message> + <source>C&lose</source> + <translation>ะะฐะบัััั</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>ะะพะฟะธัะพะฒะฐัั ะฐะดัะตั</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>ะฃะดะฐะปะธัั ะฒัะฑัะฐะฝะฝัะน ะฐะดัะตั ะธะท ัะฟะธัะบะฐ</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>ะญะบัะฟะพััะธัะพะฒะฐัั ะดะฐะฝะฝัะต ัะตะบััะตะน ะฒะบะปะฐะดะบะธ ะฒ ัะฐะนะป</translation> + </message> + <message> + <source>&Export</source> + <translation>ะญะบัะฟะพััะธัะพะฒะฐัั</translation> + </message> + <message> + <source>&Delete</source> + <translation>ะฃะดะฐะปะธัั</translation> + </message> + <message> + <source>C&hoose</source> + <translation>ะัะฑัะฐัั</translation> + </message> </context> <context> <name>AddressTableModel</name> @@ -226,6 +270,14 @@ </context> <context> <name>WalletView</name> + <message> + <source>&Export</source> + <translation>ะญะบัะฟะพัั</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>ะญะบัะฟะพััะธัะพะฒะฐัั ะดะฐะฝะฝัะต ัะตะบััะตะน ะฒะบะปะฐะดะบะธ ะฒ ัะฐะนะป</translation> + </message> </context> <context> <name>bitcoin-core</name> diff --git a/src/qt/locale/bitcoin_sk.ts b/src/qt/locale/bitcoin_sk.ts index 8c779cbe98..9addbdaa8a 100644 --- a/src/qt/locale/bitcoin_sk.ts +++ b/src/qt/locale/bitcoin_sk.ts @@ -63,7 +63,7 @@ </message> <message> <source>Receiving addresses</source> - <translation>Adresa prijatia</translation> + <translation>Prijรญmacia adresa</translation> </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> @@ -222,7 +222,15 @@ </context> <context> <name>BanTableModel</name> - </context> + <message> + <source>IP/Netmask</source> + <translation>IP/Maska stiete</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Blokovanรฝ do</translation> + </message> +</context> <context> <name>BitcoinGUI</name> <message> @@ -874,7 +882,35 @@ <source>command-line options</source> <translation>voฤพby prรญkazovรฉho riadku</translation> </message> - </context> + <message> + <source>UI Options:</source> + <translation>Moลพnosti pouลพรญvateฤพskรฉho rozhrania:</translation> + </message> + <message> + <source>Choose data directory on startup (default: %u)</source> + <translation>Vyberte dรกtovรฝ prieฤinok pri ลกtarte (predvolenรฉ: %u)</translation> + </message> + <message> + <source>Set language, for example "de_DE" (default: system locale)</source> + <translation>Nastavte jazyk, naprรญklad "de_DE" (predvolenรฉ: podฤพa systรฉmu)</translation> + </message> + <message> + <source>Start minimized</source> + <translation>Spustiลฅ minimalizovanรฉ</translation> + </message> + <message> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation>Nastaviลฅ SSL root certifikรกty pre vyลพiadanie platby (predvolenรฉ: -system-)</translation> + </message> + <message> + <source>Show splash screen on startup (default: %u)</source> + <translation>Zobraziลฅ uvรญtaciu obrazovku pri ลกtarte (predvolenรฉ: %u)</translation> + </message> + <message> + <source>Reset all settings changes made over the GUI</source> + <translation>Reลกtartovaลฅ vลกetky nastavenia urobenรฉ v pouลพรญvateฤพskom rozhranรญ.</translation> + </message> +</context> <context> <name>Intro</name> <message> @@ -1009,7 +1045,7 @@ </message> <message> <source>&Network</source> - <translation>Sieลฅ</translation> + <translation>&Sieลฅ</translation> </message> <message> <source>Automatically start Bitcoin Core after logging in to the system.</source> @@ -1025,7 +1061,7 @@ </message> <message> <source>W&allet</source> - <translation>Peลaลพenka</translation> + <translation>&Peลaลพenka</translation> </message> <message> <source>Expert</source> @@ -1072,12 +1108,36 @@ <translation>Port proxy (napr. 9050)</translation> </message> <message> + <source>Used for reaching peers via:</source> + <translation>Pouลพitรฉ pre zรญskavanie peerov cez:</translation> + </message> + <message> + <source>Shows, if the supplied default SOCKS5 proxy is used to reach peers via this network type.</source> + <translation>Zobrazuje, ฤi je poskytovanรฉ predvolenรฉ SOCKS5 proxy pouลพรญvanรฉ pre zรญskavanie peerov cez tento typ siete.</translation> + </message> + <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> + <translation>Pripojiลฅ k Bitcoinovej sieti cez separovanรฉ SOCKS5 proxy pre skrytรบ sluลพbu Tor.</translation> + </message> + <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> <translation>Pouลพiลฅ samostatnรฝ SOCKS5 proxy server na dosiahnutie poฤรญtaฤov cez skrytรฉ sluลพby Tor:</translation> </message> <message> <source>&Window</source> - <translation>Okno</translation> + <translation>&Okno</translation> </message> <message> <source>Show only a tray icon after minimizing the window.</source> @@ -1093,7 +1153,7 @@ </message> <message> <source>&Display</source> - <translation>&Displej</translation> + <translation>&Zobrazenie</translation> </message> <message> <source>User Interface &language:</source> @@ -1414,10 +1474,6 @@ <translation>Vลกeobecnรฉ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Pouลพรญva OpenSSL verziu</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Pouลพรญva BerkeleyDB verziu</translation> </message> @@ -1446,6 +1502,18 @@ <translation>Aktuรกlny poฤet blokov</translation> </message> <message> + <source>Memory Pool</source> + <translation>Pamรคลฅ Poolu</translation> + </message> + <message> + <source>Current number of transactions</source> + <translation>Aktuรกlny poฤet tranzakciรญ</translation> + </message> + <message> + <source>Memory usage</source> + <translation>Vyuลพitie pamรคte</translation> + </message> + <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> <translation>Otvoriลฅ Bitcoin log sรบbor pre ladenie z aktuรกlneho dรกtovรฉho adresรกra. Toto mรดลพe trvaลฅ niekoฤพko sekรบnd pre veฤพkรฉ sรบbory.</translation> </message> @@ -1462,10 +1530,18 @@ <translation>&Partneri</translation> </message> <message> + <source>Banned peers</source> + <translation>Zablokovanรฉ spojenia</translation> + </message> + <message> <source>Select a peer to view detailed information.</source> <translation>Vyberte poฤรญtaฤ pre zobrazenie podrobnostรญ.</translation> </message> <message> + <source>Whitelisted</source> + <translation>Povolenรฉ</translation> + </message> + <message> <source>Direction</source> <translation>Smer</translation> </message> @@ -1474,6 +1550,19 @@ <translation>Verzia</translation> </message> <message> + <source>Starting Block</source> + <translation>Poฤiatoฤnรฝ Blok</translation> + </message> + <message> + <source>Synced Headers</source> + <translation>Synchronizovanรฉ hlaviฤky +</translation> + </message> + <message> + <source>Synced Blocks</source> + <translation>Synchronizovanรฉ bloky</translation> + </message> + <message> <source>User Agent</source> <translation>Aplikรกcia</translation> </message> @@ -1502,6 +1591,10 @@ <translation>ฤas odozvy</translation> </message> <message> + <source>Ping Wait</source> + <translation>ฤakanie na ping</translation> + </message> + <message> <source>Time Offset</source> <translation>ฤasovรฝ posun</translation> </message> @@ -1550,6 +1643,34 @@ <translation>Vymazaลฅ konzolu</translation> </message> <message> + <source>&Disconnect Node</source> + <translation>&Odpojenรฉ uzly</translation> + </message> + <message> + <source>Ban Node for</source> + <translation>Blokovaลฅ uzol na</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &hodinu</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &deล</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &tรฝลพdeล</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &rok</translation> + </message> + <message> + <source>&Unban Node</source> + <translation>&odblokovaลฅ uzol</translation> + </message> + <message> <source>Welcome to the Bitcoin Core RPC console.</source> <translation>Vitajte v RPC konzole pre Jadro Bitcoin.</translation> </message> @@ -1578,6 +1699,10 @@ <translation>%1 GB</translation> </message> <message> + <source>(node id: %1)</source> + <translation>(ID uzlu: %1)</translation> + </message> + <message> <source>via %1</source> <translation>cez %1</translation> </message> @@ -1594,6 +1719,14 @@ <translation>Odchรกdzajรบce</translation> </message> <message> + <source>Yes</source> + <translation>รno</translation> + </message> + <message> + <source>No</source> + <translation>Nie</translation> + </message> + <message> <source>Unknown</source> <translation>neznรกmy</translation> </message> @@ -1962,6 +2095,10 @@ <translation>Kopรญrovaลฅ zmenu</translation> </message> <message> + <source>Total Amount %1</source> + <translation>Celkovรฉ mnoลพstvo %1</translation> + </message> + <message> <source>or</source> <translation>alebo</translation> </message> @@ -1994,6 +2131,10 @@ <translation>Vyprลกala platnosลฅ poลพiadavky na platbu.</translation> </message> <message> + <source>Pay only the required fee of %1</source> + <translation>Zaplatiลฅ len vyลพadovanรฝ poplatok z %1</translation> + </message> + <message> <source>The recipient address is not valid. Please recheck.</source> <translation>Adresa prรญjemcu je neplatnรก. Prosรญm, overte ju.</translation> </message> @@ -2073,6 +2214,10 @@ <translation>Odstrรกniลฅ tรบto poloลพku</translation> </message> <message> + <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source> + <translation>Poplatok sa odpoฤรญta od ฤiastky, ktorรบ odosielate. Prรญjemca dostane menej bitcoinov ako zadรกte. Ak je vybranรฝch viacero prรญjemcov, poplatok je rozdelenรฝ rovnรฝm dielom.</translation> + </message> + <message> <source>S&ubtract fee from amount</source> <translation>Odpoฤรญtaลฅ poplatok od s&umy</translation> </message> @@ -2127,6 +2272,10 @@ <translation>&Podpรญsaลฅ Sprรกvu</translation> </message> <message> + <source>The Bitcoin address to sign the message with</source> + <translation>Bitcoin adresa pre podpรญsanie sprรกvy s</translation> + </message> + <message> <source>Choose previously used address</source> <translation>Vybraลฅ predtรฝm pouลพitรบ adresu</translation> </message> @@ -2601,6 +2750,10 @@ <translation>Kopรญrovaลฅ ID transakcie</translation> </message> <message> + <source>Copy raw transaction</source> + <translation>Kopรญrovaลฅ celรบ tranzakciu</translation> + </message> + <message> <source>Edit label</source> <translation>Editovaลฅ popis</translation> </message> @@ -2748,10 +2901,30 @@ <translation>Prijรญmaลฅ prรญkazy z prรญkazovรฉho riadku a JSON-RPC</translation> </message> <message> + <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> + <translation>Skontrolujte sprรกvnosลฅ nastavenia dรกtumu a ฤasu na vaลกom poฤรญtaฤi! Ak je ฤas nesprรกvny Jadro Bitcoin nebude sprรกvne fungovaลฅ.</translation> + </message> + <message> + <source>Error: A fatal internal error occurred, see debug.log for details</source> + <translation>Chyba: Vyskytla sa internรก chyba, pre viac informรกciรญ zobrazte debug.log</translation> + </message> + <message> + <source>Fee (in %s/kB) to add to transactions you send (default: %s)</source> + <translation>Poplatok (za %s/kB) pridanรฝ do tranzakcie, ktorรบ posielate (predvolenรฉ: %s)</translation> + </message> + <message> + <source>Pruning blockstore...</source> + <translation>Redukovanie blockstore...</translation> + </message> + <message> <source>Run in the background as a daemon and accept commands</source> <translation>Beลพaลฅ na pozadรญ ako dรฉmon a prijรญmaลฅ prรญkazy</translation> </message> <message> + <source>Unable to start HTTP server. See debug log for details.</source> + <translation>Nepodarilo sa spustiลฅ HTTP server. Pre viac detailov zobrazte debug log.</translation> + </message> + <message> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Prijaลฅ spojenia zvonku (predvolenรฉ: 1 ak ลพiadne -proxy alebo -connect)</translation> </message> @@ -2784,6 +2957,14 @@ <translation>Nepodarilo sa pripojiลฅ na %s na tomto poฤรญtaฤi. Bitcoin Jadro je uลพ pravdepodobne spustenรฉ.</translation> </message> <message> + <source>WARNING: abnormally high number of blocks generated, %d blocks received in the last %d hours (%d expected)</source> + <translation>VAROVANIE: prรญliลก veฤพa vygenerovanรฝch blokov; %d prijatรฝch blokov v poslednรฝch %d hodinรกch (oฤakรกvanรฝch %d)</translation> + </message> + <message> + <source>WARNING: check your network connection, %d blocks received in the last %d hours (%d expected)</source> + <translation>VAROVANIE: skontrolujte sieลฅovรฉ pripojenie, %d prijatรฝch blokov za poslednรฝch %d hodรญn (oฤakรกvanรฉ %d)</translation> + </message> + <message> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> <translation>Varovanie: Javรญ sa ลพe sieลฅ sieลฅ รบplne nesรบhlasรญ! Niektorรญ mineri zjavne majรบ ลฅaลพkosti. @@ -2802,6 +2983,10 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Uzle na zoznam povolenรฝch, ktorรฉ sa pripรกjajรบ z danej netmask alebo IP adresy. Mรดลพe byลฅ zadanรฉ viac krรกt.</translation> </message> <message> + <source>-maxmempool must be at least %d MB</source> + <translation>-maxmempool musรญ byลฅ najmenej %d MB</translation> + </message> + <message> <source><category> can be:</source> <translation><category> mรดลพe byลฅ:</translation> </message> @@ -2834,6 +3019,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Chcete znovu zostaviลฅ databรกzu blokov?</translation> </message> <message> + <source>Enable publish hash block in <address></source> + <translation>Povoliลฅ zverejneneie hash blokov pre <address></translation> + </message> + <message> + <source>Enable publish hash transaction in <address></source> + <translation>Povoliลฅ zverejnenie hash tranzakciรญ pre <address></translation> + </message> + <message> + <source>Enable publish raw block in <address></source> + <translation>Povoliลฅ zverejnenie raw bloku pre <address></translation> + </message> + <message> <source>Error initializing block database</source> <translation>Chyba inicializรกcie databรกzy blokov</translation> </message> @@ -2870,6 +3067,10 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Neplatnรก -onion adresa: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Neplatnรก suma pre -fallbackfee=<amount>: '%s'</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Nedostatok kฤพรบฤovรฝch slov sรบboru.</translation> </message> @@ -2878,6 +3079,14 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Pripojiลฅ iba k uzlom v sieti <net> (ipv4, ipv6, alebo onion)</translation> </message> <message> + <source>Prune cannot be configured with a negative value.</source> + <translation>Redukovanie nemรดลพe byลฅ nastavenรฉ na zรกpornรบ hodnotu.</translation> + </message> + <message> + <source>Prune mode is incompatible with -txindex.</source> + <translation>Redukovanie je nekompatibilnรฉ s -txindex.</translation> + </message> + <message> <source>Set database cache size in megabytes (%d to %d, default: %d)</source> <translation>Nastaviลฅ veฤพkosลฅ pomocnej pamรคti databรกzy v megabajtoch (%d do %d, prednastavenรฉ: %d)</translation> </message> @@ -2890,6 +3099,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Oznaฤ sรบbor peลaลพenky (v prieฤinku s dรกtami)</translation> </message> <message> + <source>Unsupported argument -benchmark ignored, use -debug=bench.</source> + <translation>Nepodporovanรฝ parameter -benchmark bol ignorovanรฝ, pouลพite -debug=bench.</translation> + </message> + <message> + <source>Unsupported argument -debugnet ignored, use -debug=net.</source> + <translation>Nepodporovanรฝ argument -debugnet bol ignorovanรฝ, pouลพite -debug=net.</translation> + </message> + <message> + <source>Unsupported argument -tor found, use -onion.</source> + <translation>Nepodporovanรฝ argument -tor, pouลพite -onion.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: %u)</source> <translation>Pouลพiลฅ UPnP pre mapovanie poฤรบvajรบceho portu (predvolenรฉ: %u)</translation> </message> @@ -2934,6 +3155,10 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Vytvoriลฅ novรฉ sรบbory z predvolenรฝmi systรฉmovรฝmi prรกvami, namiesto umask 077 (funguje iba z vypnutou funkcionalitou peลaลพenky)</translation> </message> <message> + <source>Discover own IP addresses (default: 1 when listening and no -externalip or -proxy)</source> + <translation>Zisti vlastnรบ IP adresu (predvolenรฉ: 1 pre listen a -externalip alebo -proxy)</translation> + </message> + <message> <source>Error: Listening for incoming connections failed (listen returned error %s)</source> <translation>Chyba: Poฤรบvanie prichรกdzajรบcich spojenรญ zlyhalo (vrรกtenรก chyba je %s)</translation> </message> @@ -2966,6 +3191,10 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Nastaviลฅ poฤet vlรกkien pre generรกciu mincรญ (-1 = vลกetky jadrรก, predvolenรฉ: %d)</translation> </message> <message> + <source>The transaction amount is too small to send after the fee has been deducted</source> + <translation>Suma je prรญliลก malรก pre odoslanie tranzakcie</translation> + </message> + <message> <source>This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit <https://www.openssl.org/> and cryptographic software written by Eric Young and UPnP software written by Thomas Bernard.</source> <translation>Tento produkt obsahuje softvรฉr vyvinutรฝ projektom OpenSSL pre pouลพitie sady nรกstrojov OpenSSL <https://www.openssl.org/> a kryptografickรฉho softvรฉru napรญsanรฉho Eric Young a UPnP softvรฉr napรญsanรฝ Thomas Bernard.</translation> </message> @@ -2982,6 +3211,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Akceptovaลฅ verejnรฉ REST ลพiadosti (predvolenรฉ: %u)</translation> </message> <message> + <source>Activating best chain...</source> + <translation>Aktivรกcia najlepลกej reลฅaze...</translation> + </message> + <message> + <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> + <translation>Pokus o obnovenie privรกtnych kฤพรบฤov z poลกkodenej wallet.dat pri spustenรญ</translation> + </message> + <message> + <source>Automatically create Tor hidden service (default: %d)</source> + <translation>Automaticky vytvoriลฅ skrytรบ sluลพbu Tor (predvolenรฉ: %d)</translation> + </message> + <message> <source>Cannot resolve -whitebind address: '%s'</source> <translation>Nedรก sa vyrieลกiลฅ -whitebind adresa: '%s'</translation> </message> @@ -3002,10 +3243,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Chyba pri naฤรญtanรญ z databรกzy, ukonฤuje sa.</translation> </message> <message> + <source>Imports blocks from external blk000??.dat file on startup</source> + <translation>Importovaลฅ bloky z externรฉho sรบboru blk000??.dat pri ลกtarte</translation> + </message> + <message> <source>Information</source> <translation>Informรกcia</translation> </message> <message> + <source>Initialization sanity check failed. Bitcoin Core is shutting down.</source> + <translation>Inicializaฤnรก kontrola zlyhala. Jadro Bitcoin sa ukonฤuje.</translation> + </message> + <message> <source>Invalid amount for -maxtxfee=<amount>: '%s'</source> <translation>Neplatnรก suma pre -maxtxfee=<amount>: '%s'</translation> </message> @@ -3066,10 +3315,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Podpรญsanie sprรกvy zlyhalo</translation> </message> <message> + <source>The transaction amount is too small to pay the fee</source> + <translation>Suma tranzakcie je prรญliลก malรก na zaplatenie poplatku</translation> + </message> + <message> <source>This is experimental software.</source> <translation>Toto je experimentรกlny softvรฉr.</translation> </message> <message> + <source>Tor control port password (default: empty)</source> + <translation>Heslo na kontrolu portu pre Tor (predvolenรฉ: ลพiadne)</translation> + </message> + <message> <source>Transaction amount too small</source> <translation>Suma transakcie prรญliลก malรก</translation> </message> @@ -3090,10 +3347,18 @@ The network does not appear to fully agree! Some miners appear to be experiencin <translation>Na tomto poฤรญtaฤi sa nedรก vytvoriลฅ vรคzba %s (vytvorenie vรคzby vrรกtilo chybu %s)</translation> </message> <message> + <source>Upgrade wallet to latest format on startup</source> + <translation>Aktualizovaลฅ peลaลพenku na poslednรฝ formรกt pri ลกtarte</translation> + </message> + <message> <source>Username for JSON-RPC connections</source> <translation>Uลพรญvateฤพskรฉ meno pre JSON-RPC spojenia</translation> </message> <message> + <source>Wallet needed to be rewritten: restart Bitcoin Core to complete</source> + <translation>Peลaลพenka musรญ byลฅ prepรญsanรก: pre dokonฤenie reลกtartujte Jadro Bitcoin</translation> + </message> + <message> <source>Warning</source> <translation>Upozornenie</translation> </message> diff --git a/src/qt/locale/bitcoin_sl_SI.ts b/src/qt/locale/bitcoin_sl_SI.ts index c62c8cf273..1b540a7310 100644 --- a/src/qt/locale/bitcoin_sl_SI.ts +++ b/src/qt/locale/bitcoin_sl_SI.ts @@ -427,7 +427,7 @@ </message> <message numerus="yes"> <source>%n active connection(s) to Bitcoin network</source> - <translation><numerusform>%n aktivna povezava v bitcoin omreลพje</numerusform><numerusform>%n aktivni povezavi v bitcoin omreลพje</numerusform><numerusform>%n aktivne povezave v bitcoin omreลพje</numerusform><numerusform>%n aktivnih povezav v bitcoin omreลพje</numerusform></translation> + <translation><numerusform>%n aktivna povezava v omreลพje Bitcoin</numerusform><numerusform>%n aktivni povezavi v omreลพje Bitcoin</numerusform><numerusform>%n aktivne povezave v omreลพje Bitcoin</numerusform><numerusform>%n aktivnih povezav v omreลพje Bitcoin</numerusform></translation> </message> <message> <source>No block source available...</source> @@ -463,7 +463,7 @@ </message> <message> <source>Last received block was generated %1 ago.</source> - <translation>Zadnji prejeti blok je bil ustvarjen %1 nazaj.</translation> + <translation>Zadnji prejeti blok je star %1.</translation> </message> <message> <source>Transactions after this will not yet be visible.</source> @@ -1322,7 +1322,7 @@ </message> <message> <source>Node/Service</source> - <translation>Vozliลกฤe/Storitev</translation> + <translation>Naslov</translation> </message> <message> <source>Ping Time</source> @@ -1414,10 +1414,6 @@ <translation>Sploลกno</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>OpenSSL razliฤica v rabi</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>BerkeleyDB razliฤica v rabi</translation> </message> @@ -2437,7 +2433,7 @@ </message> <message numerus="yes"> <source>Open for %n more block(s)</source> - <translation><numerusform>Odprto ลกe %n blok</numerusform><numerusform>Odprto ลกe %n bloka</numerusform><numerusform>Odprto ลกe %n bloke</numerusform><numerusform>Odprto ลกe %n blokov</numerusform></translation> + <translation><numerusform>ล e %n blok do potrditve</numerusform><numerusform>ล e %n bloka do potrditve</numerusform><numerusform>ล e %n bloki do potrditve</numerusform><numerusform>ล e %n blokov do potrditve</numerusform></translation> </message> <message> <source>unknown</source> @@ -2471,7 +2467,7 @@ </message> <message numerus="yes"> <source>Open for %n more block(s)</source> - <translation><numerusform>Odprto ลกe %n blok</numerusform><numerusform>Odprto ลกe %n bloka</numerusform><numerusform>Odprto ลกe %n bloke</numerusform><numerusform>Odprto ลกe %n blokov</numerusform></translation> + <translation><numerusform>ล e %n blok do potrditve</numerusform><numerusform>ล e %n bloka do potrditve</numerusform><numerusform>ล e %n bloki do potrditve</numerusform><numerusform>ล e %n blokov do potrditve</numerusform></translation> </message> <message> <source>Open until %1</source> @@ -2956,10 +2952,6 @@ <translation>Izbire denarnice:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Opozorilo: Razliฤica vaลกega odjemalca je zastarela. Potrebna je nadgradnja!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Ob spremembi vrednosti opcije -txindex boste morali obnoviti bazo podatkov z uporabo opcije -reindex</translation> </message> @@ -3009,7 +3001,7 @@ </message> <message> <source>Activating best chain...</source> - <translation>Preklapljam na najboljลกo verigo ...</translation> + <translation>Prehajam na najboljลกo verigo ...</translation> </message> <message> <source>Cannot resolve -whitebind address: '%s'</source> diff --git a/src/qt/locale/bitcoin_sq.ts b/src/qt/locale/bitcoin_sq.ts index 994b065994..d87bd9db58 100644 --- a/src/qt/locale/bitcoin_sq.ts +++ b/src/qt/locale/bitcoin_sq.ts @@ -30,6 +30,10 @@ <translation>Fshi adresen e selektuar nga lista</translation> </message> <message> + <source>Export the data in the current tab to a file</source> + <translation>Eksporto tรซ dhรซnat e skedรซs korrente nรซ njรซ skedar</translation> + </message> + <message> <source>&Delete</source> <translation>&Fshi</translation> </message> @@ -790,6 +794,10 @@ </context> <context> <name>WalletView</name> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Eksporto tรซ dhรซnat e skedรซs korrente nรซ njรซ skedar</translation> + </message> </context> <context> <name>bitcoin-core</name> diff --git a/src/qt/locale/bitcoin_sr@latin.ts b/src/qt/locale/bitcoin_sr@latin.ts new file mode 100644 index 0000000000..c836c8ddba --- /dev/null +++ b/src/qt/locale/bitcoin_sr@latin.ts @@ -0,0 +1,653 @@ +<TS language="sr@latin" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>Klikni desnim tasterom za ureฤivanje adrese ili oznake</translation> + </message> + <message> + <source>Create a new address</source> + <translation>Kreiraj novu adresu</translation> + </message> + <message> + <source>&New</source> + <translation>&Novi</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>Kopiraj selektovanu adresu u sistemski klipbord</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Kopiraj</translation> + </message> + <message> + <source>C&lose</source> + <translation>Zatvori</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>Kopiraj adresu</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>Briลกe trenutno izabranu adresu sa liste</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Izvoz podataka iz trenutne kartice u datoteku</translation> + </message> + <message> + <source>&Export</source> + <translation>&Izvoz</translation> + </message> + <message> + <source>&Delete</source> + <translation>&Izbrisati</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>Izaberi adresu za slanje bitkoina</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>Izaberi adresu za primanje bitkoina</translation> + </message> + <message> + <source>C&hoose</source> + <translation>I&zaberi</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>Adrese za slanje</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>Adrese za primanje</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>Ovo su vase Bitkoin adrese za slanje bitkoina. Uvek proverite unetu kolicinu bitkoina i adresu za slanje bitkoin pre slanja.</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>Ovo su vase Bitkoin adrese za primanje bitkoina. Preporuceno je da koristite drugaciju adresu za primanje kod svake transakcije.</translation> + </message> + <message> + <source>&Edit</source> + <translation>&Izmeni</translation> + </message> + <message> + <source>Export Address List</source> + <translation>Izvezi listu adresa</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Zapetom odvojene ('.csv) datoteke</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Izvoz nije uspeo</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>Dogodila se greska prilikom cuvanja adrese u %1. Molimo pokusajte ponovo.</translation> + </message> +</context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>Etiketa</translation> + </message> + <message> + <source>Address</source> + <translation>Adresa</translation> + </message> + <message> + <source>(no label)</source> + <translation>(bez etikete)</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Passphrase Dialog</source> + <translation>Dialog pristupne fraze</translation> + </message> + <message> + <source>Enter passphrase</source> + <translation>Unesi pristupnu frazu</translation> + </message> + <message> + <source>New passphrase</source> + <translation>Nova pristupna fraza</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>Ponovo unesite pristupnu frazu</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>Enkriptuj/Sifruj novcanik</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>Da bi ste otkljucali novcanik potrebno je da unesete pristupnu frazu</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>Otkljucaj novcanik</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to decrypt the wallet.</source> + <translation>Da bi ste dekriptovali/desifrovali novcanik potrebno je da unesete pristupnu frazu</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>Dekriptuj/Desifruj novcanik</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>Izmeni pristupnu frazu</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>Potvrdite enkripciju/sifrovanje novcanika</translation> + </message> + <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>Upozorenje: Ako ekriptujete/sifrujete novcanik, a izgubite pristupnu frazu <b>IZGUBICETE SVE VASE BITKOINE</b>!</translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>Da li ste sigurni da zelite da enkriptujete/sifrujete novcanik?</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core ce se sada zatvoriti radi zavrsavanje procesa enkripcije/sifrovanja novcanika. Zapamtite da enkriptovanje/sifrovanje novcanika ne moze u potpunosti da zastiti vase bitkoine od kradje od strane virusa koji su zarazili vas racunar.</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>VAZNO : Bilo koja prethodne rezervne kopije koje ste nacinili od svoje datoteke novcanika treba da se zamene sa novogenerisanom, sifrovanom datotekom novcanika. Iz bezbednosnih razloga, prethodne rezervne kopije su nezasifrovanih datoteka novcanika ce postati beskorisne cim pocnete da koristite novi, sifrovani novฤanik.</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>Upozorenje: Dugme Caps Lock je upaljeno</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>Novcanik je enkriptovan/sifrovan</translation> + </message> + <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>Unesite novu pristupnu frazu u novcanik.<br/>Molimo koristite pristupnu frazu od <br/>deset ili vise nasumicnih karaktera <br/>, ili <b>osm ili vise reci </b>.</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>Unesite staru pristupnu frazu i novu pristupnu frazu u novcanik.</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>Ekripcija/Sifrovanje novcanika nije uspelo</translation> + </message> + <message> + <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> + <translation>Enkriptovanje/Sifrovanje novcanika nije uspelo zbog greske. Vas novcanik nije enkriptovan/sifrovan.</translation> + </message> + <message> + <source>The supplied passphrases do not match.</source> + <translation>Uneta pristupne fraze se ne podudaraju</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>Otkljucavanje novcanika nije uspelo</translation> + </message> + <message> + <source>The passphrase entered for the wallet decryption was incorrect.</source> + <translation>Pristupna fraza za dekriptovanje/desifrovanje novcanika nije tacna.</translation> + </message> + <message> + <source>Wallet decryption failed</source> + <translation>Dekriptovanje/desifrovanje novcanika nije uspelo</translation> + </message> + <message> + <source>Wallet passphrase was successfully changed.</source> + <translation>Pristupna fraza novcanika je uspesno promenjena.</translation> + </message> +</context> +<context> + <name>BanTableModel</name> + <message> + <source>IP/Netmask</source> + <translation>IP/Netmask</translation> + </message> + <message> + <source>Banned Until</source> + <translation>Banovani ste do</translation> + </message> +</context> +<context> + <name>BitcoinGUI</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Error</source> + <translation>Greska</translation> + </message> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>Amount</source> + <translation>Kolicina</translation> + </message> + <message> + <source>Date</source> + <translation>Datum</translation> + </message> + <message> + <source>(no label)</source> + <translation>(bez etikete)</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + </context> +<context> + <name>Intro</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>Error</source> + <translation>Greska</translation> + </message> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + <message> + <source>Amount</source> + <translation>Kolicina</translation> + </message> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Adresa</translation> + </message> + <message> + <source>Amount</source> + <translation>Kolicina</translation> + </message> + <message> + <source>Label</source> + <translation>Etiketa</translation> + </message> + <message> + <source>Message</source> + <translation>Poruka</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Date</source> + <translation>Datum</translation> + </message> + <message> + <source>Label</source> + <translation>Etiketa</translation> + </message> + <message> + <source>Message</source> + <translation>Poruka</translation> + </message> + <message> + <source>Amount</source> + <translation>Kolicina</translation> + </message> + <message> + <source>(no label)</source> + <translation>(bez etikete)</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(bez etikete)</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin Core</translation> + </message> + <message> + <source>The Bitcoin Core developers</source> + <translation>Razvojni tim Bitcoin Core</translation> + </message> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + <message> + <source>%1/offline</source> + <translation>%1/van mreze</translation> + </message> + <message> + <source>%1/unconfirmed</source> + <translation>%1/nepotvrdjeno</translation> + </message> + <message> + <source>%1 confirmations</source> + <translation>%1 potvrdjeno/ih</translation> + </message> + <message> + <source>Status</source> + <translation>Stanje/Status</translation> + </message> + <message> + <source>Date</source> + <translation>Datum</translation> + </message> + <message> + <source>Source</source> + <translation>Izvor</translation> + </message> + <message> + <source>Generated</source> + <translation>Generisano</translation> + </message> + <message> + <source>From</source> + <translation>Od</translation> + </message> + <message> + <source>To</source> + <translation>Kome</translation> + </message> + <message> + <source>own address</source> + <translation>sopstvena adresa</translation> + </message> + <message> + <source>watch-only</source> + <translation>samo za gledanje</translation> + </message> + <message> + <source>label</source> + <translation>etiketa</translation> + </message> + <message> + <source>Credit</source> + <translation>Kredit</translation> + </message> + <message> + <source>not accepted</source> + <translation>nije prihvaceno</translation> + </message> + <message> + <source>Debit</source> + <translation>Zaduzenje</translation> + </message> + <message> + <source>Total debit</source> + <translation>Ukupno zaduzenje</translation> + </message> + <message> + <source>Total credit</source> + <translation>Totalni kredit</translation> + </message> + <message> + <source>Transaction fee</source> + <translation>Taksa transakcije</translation> + </message> + <message> + <source>Net amount</source> + <translation>Neto iznos</translation> + </message> + <message> + <source>Message</source> + <translation>Poruka</translation> + </message> + <message> + <source>Comment</source> + <translation>Komentar</translation> + </message> + <message> + <source>Transaction ID</source> + <translation>ID Transakcije</translation> + </message> + <message> + <source>Merchant</source> + <translation>Trgovac</translation> + </message> + <message> + <source>Debug information</source> + <translation>Informacije debugovanja</translation> + </message> + <message> + <source>Transaction</source> + <translation>Transakcije</translation> + </message> + <message> + <source>Inputs</source> + <translation>Unosi</translation> + </message> + <message> + <source>Amount</source> + <translation>Kolicina</translation> + </message> + <message> + <source>true</source> + <translation>tacno</translation> + </message> + <message> + <source>false</source> + <translation>netacno</translation> + </message> + <message> + <source>, has not been successfully broadcast yet</source> + <translation>, nisu uspesno jos emitovano</translation> + </message> + <message> + <source>unknown</source> + <translation>nepoznato</translation> + </message> +</context> +<context> + <name>TransactionDescDialog</name> + <message> + <source>Transaction details</source> + <translation>Detalji transakcije</translation> + </message> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Date</source> + <translation>Datum</translation> + </message> + <message> + <source>Type</source> + <translation>Tip</translation> + </message> + <message> + <source>Label</source> + <translation>Etiketa</translation> + </message> + <message> + <source>Received with</source> + <translation>Primljeno uz</translation> + </message> + <message> + <source>Received from</source> + <translation>Primljeno od</translation> + </message> + <message> + <source>Sent to</source> + <translation>Poslat</translation> + </message> + <message> + <source>Payment to yourself</source> + <translation>Placanje samom sebi</translation> + </message> + <message> + <source>Mined</source> + <translation>Iskopano</translation> + </message> + <message> + <source>watch-only</source> + <translation>samo za gledanje</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Received with</source> + <translation>Primljeno uz</translation> + </message> + <message> + <source>Sent to</source> + <translation>Poslat</translation> + </message> + <message> + <source>Mined</source> + <translation>Iskopano</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>Izvoz nije uspeo</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>Zarezom odvojene ('.csv) datoteke</translation> + </message> + <message> + <source>Date</source> + <translation>Datum</translation> + </message> + <message> + <source>Type</source> + <translation>Tip</translation> + </message> + <message> + <source>Label</source> + <translation>Etiketa</translation> + </message> + <message> + <source>Address</source> + <translation>Adresa</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&Izvoz</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>Izvoz podataka iz trenutne kartice u datoteku</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + <message> + <source>Insufficient funds</source> + <translation>Nedovoljno sredstava</translation> + </message> + <message> + <source>Loading block index...</source> + <translation>Ucitavanje indeksa bloka...</translation> + </message> + <message> + <source>Add a node to connect to and attempt to keep the connection open</source> + <translation>Dodajte cvor za povezivanje, da bi pokusali da odrzite vezu otvorenom</translation> + </message> + <message> + <source>Loading wallet...</source> + <translation>Ucitavanje novcanika...</translation> + </message> + <message> + <source>Cannot write default address</source> + <translation>Nije moguce ispisivanje podrazumevane adrese</translation> + </message> + <message> + <source>Rescanning...</source> + <translation>Ponovno skeniranje...</translation> + </message> + <message> + <source>Done loading</source> + <translation>Zavrseno ucitavanje</translation> + </message> + <message> + <source>Error</source> + <translation>Greska</translation> + </message> +</context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_sv.ts b/src/qt/locale/bitcoin_sv.ts index 756114351f..acf37bd1d4 100644 --- a/src/qt/locale/bitcoin_sv.ts +++ b/src/qt/locale/bitcoin_sv.ts @@ -1475,10 +1475,6 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Generell</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Anvรคnder OpenSSL version</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Anvรคnder BerkeleyDB versionen</translation> </message> @@ -2981,6 +2977,18 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Acceptera anslutningar utifrรฅn (fรถrvalt: 1 om ingen -proxy eller -connect)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee รคr satt vรคldigt hรถgt! Detta รคr avgiften du kan komma att betala om uppskattad avgift inte finns tillgรคnglig.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>En avgiftskurs (i %s/kB) som anvรคnds nรคr det inte finns tillrรคcklig data fรถr att uppskatta avgiften (fรถrvalt: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Acceptera vidarebefodrade transaktioner frรฅn vitlistade noder รคven nรคr transaktioner inte vidarebefodras (fรถrvalt: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Bind till given adress och lyssna alltid pรฅ den. Anvรคnd [vรคrd]:port notation fรถr IPv6</translation> </message> @@ -2997,6 +3005,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Exekvera kommando nรคr en plรฅnbokstransaktion รคndras (%s i cmd รคr ersatt av TxID)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Vidarebefodra alltid transaktioner frรฅn vitlistade noder รคven om de bryter mot lokala relรคpolicyn (fรถrvalt: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Ange antalet skriptkontrolltrรฅdar (%u till %d, 0 = auto, <0 = lรคmna sรฅ mรฅnga kรคrnor lediga, fรถrval: %d)</translation> </message> @@ -3013,6 +3025,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Det gรฅr inte att binda till %s pรฅ den hรคr datorn. Bitcoin Core รคr fรถrmodligen redan igรฅng.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Argumentet -whitelistalwaysrelay stรถds inte utan ignoreras, anvรคnd -whitelistrelay och/eller -whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Anvรคnd UPnP fรถr att mappa den lyssnande porten (fรถrvalt: 1 nรคr lyssning aktiverat och utan -proxy)</translation> </message> @@ -3029,6 +3045,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Varning: Nรคtverket verkar inte vara helt รถverens! Nรฅgra miners verkar ha problem.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>Varning: Okรคnda blockversioner bryts! Det รคr mรถjligt att okรคnda regler anvรคnds</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Varning: Vi verkar inte helt รถverens med vรฅra peers! Du kan behรถva uppgradera, eller andra noder kan behรถva uppgradera.</translation> </message> @@ -3049,6 +3069,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation><category> Kan vara:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Lรคgg till kommentar till user-agent-strรคngen</translation> + </message> + <message> <source>Block creation options:</source> <translation>Block skapande instรคllningar:</translation> </message> @@ -3093,6 +3117,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Aktivera publicering av rรฅa transaktioner i <adress></translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Aktivera byte av transaktioner i minnespoolen (fรถrvalt: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Fel vid initiering av blockdatabasen</translation> </message> @@ -3129,10 +3157,22 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Ogiltig -onion adress:'%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>Ogiltigt belopp fรถr -fallbackfee=<belopp>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Hรฅll minnespoolen รถver transaktioner under <n> megabyte (fรถrvalt: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>Plats fรถr authcookie (fรถrvalt: datamapp)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Minimum antal byte per sigop i transaktioner som vi relรคar och bryter (fรถrvalt: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Inte tillrรคckligt med filbeskrivningar tillgรคngliga.</translation> </message> @@ -3141,6 +3181,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Anslut enbart till noder i nรคtverket <net> (IPv4, IPv6 eller onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Visa version och avsluta</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>Beskรคrning kan inte konfigureras med ett negativt vรคrde.</translation> </message> @@ -3197,10 +3241,6 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Plรฅnboksinstรคllningar:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Varning: Denna version รคr fรถrรฅldrad; uppgradering krรคvs!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>Du mรฅste รฅterskapa databasen med -reindex fรถr att รคndra -txindex</translation> </message> @@ -3297,10 +3337,6 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Aktiverar bรคsta kedjan...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Vidarebefordra alltid transaktioner frรฅn vitlistade noder (fรถrval: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Fรถrsรถk att rรคdda privata nycklar frรฅn en korrupt wallet.dat vid uppstart</translation> </message> @@ -3465,6 +3501,10 @@ Var vรคnlig och fรถrsรถk igen.</translation> <translation>Varning</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>Varning: okรคnda nya regler aktiverade (versionsbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Ska allt gรถras i endast block-lรคge (fรถrval: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_ta.ts b/src/qt/locale/bitcoin_ta.ts new file mode 100644 index 0000000000..c93524cdac --- /dev/null +++ b/src/qt/locale/bitcoin_ta.ts @@ -0,0 +1,1029 @@ +<TS language="ta" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Create a new address</source> + <translation>เฎเฎฐเฏ เฎชเฏเฎคเฎฟเฎฏ เฎฎเฏเฎเฎตเฎฐเฎฟเฎฏเฏ เฎเฎฐเฏเฎตเฎพเฎเฏเฎเฏ</translation> + </message> + <message> + <source>&New</source> + <translation>&เฎชเฏเฎคเฎฟเฎฏ</translation> + </message> + <message> + <source>&Copy</source> + <translation>&เฎจเฎเฎฒเฏ</translation> + </message> + <message> + <source>C&lose</source> + <translation>&เฎฎเฏเฎเฏ</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&เฎฎเฏเฎเฎตเฎฐเฎฟเฎฏเฏ เฎจเฎเฎฒเฏเฎเฏ</translation> + </message> + <message> + <source>&Export</source> + <translation>&เฎเฎฑเฏเฎฑเฏเฎฎเฎคเฎฟ</translation> + </message> + <message> + <source>&Delete</source> + <translation>&เฎ
เฎดเฎฟ</translation> + </message> + <message> + <source>C&hoose</source> + <translation>&เฎคเฏเฎฐเฏเฎจเฏเฎคเฏเฎเฏ</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>เฎ
เฎฉเฏเฎชเฏเฎชเฏเฎฎเฏ เฎฎเฏเฎเฎตเฎฐเฎฟเฎเฎณเฏ</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>เฎชเฏเฎฑเฏเฎฎเฏ เฎฎเฏเฎเฎตเฎฐเฎฟเฎเฎณเฏ</translation> + </message> + <message> + <source>&Edit</source> + <translation>&เฎคเฏเฎพเฎเฏ</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>เฎฒเฏเฎชเฎฟเฎณเฏ</translation> + </message> + <message> + <source>Address</source> + <translation>เฎตเฎฟเฎฒเฎพเฎเฎฎเฏ</translation> + </message> + </context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Encrypt wallet</source> + <translation>เฎเฎฉเฏเฎเฏเฎฐเฎฟเฎชเฏเฎเฏ เฎชเฎฃเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>เฎเฎฟเฎเฏเฎฐเฎฟเฎชเฏเฎเฏ เฎชเฎฃเฎชเฏเฎชเฏ</translation> + </message> + </context> +<context> + <name>BanTableModel</name> + <message> + <source>IP/Netmask</source> + <translation>IP/Netmask</translation> + </message> + </context> +<context> + <name>BitcoinGUI</name> + <message> + <source>&Overview</source> + <translation>&เฎเฎฃเฏเฎฃเฏเฎพเฎเฏเฎเฎฎเฏ</translation> + </message> + <message> + <source>&Transactions</source> + <translation>&เฎชเฎฐเฎฟเฎตเฎฐเฏเฎคเฏเฎคเฎฉเฏเฎเฎณเฏ</translation> + </message> + <message> + <source>E&xit</source> + <translation>&เฎตเฏเฎณเฎฟเฎฏเฏเฎฑเฏ</translation> + </message> + <message> + <source>Quit application</source> + <translation>เฎตเฎฟเฎฒเฎเฏ</translation> + </message> + <message> + <source>About &Qt</source> + <translation>&Qt-เฎ เฎชเฎฑเฏเฎฑเฎฟ</translation> + </message> + <message> + <source>&Options...</source> + <translation>&เฎตเฎฟเฎฐเฏเฎชเฏเฎชเฎเฏเฎเฎณเฏ...</translation> + </message> + <message> + <source>&Encrypt Wallet...</source> + <translation>&เฎเฎฉเฏเฎเฏเฎฐเฎฟเฎชเฏเฎเฏ เฎชเฎฃเฎชเฏเฎชเฏ...</translation> + </message> + <message> + <source>Open &URI...</source> + <translation>&URI-เฎ เฎคเฎฟเฎฑ</translation> + </message> + <message> + <source>&Verify message...</source> + <translation>&เฎเฏเฎฏเฏเฎคเฎฟเฎฏเฏ เฎเฎฐเฎฟเฎเฏเฎฏเฏ...</translation> + </message> + <message> + <source>Bitcoin</source> + <translation>Bitcoin</translation> + </message> + <message> + <source>Wallet</source> + <translation>เฎชเฎฃเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>&Send</source> + <translation>&เฎ
เฎฉเฏเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>&Receive</source> + <translation>&เฎชเฏเฎฑเฏ</translation> + </message> + <message> + <source>&Show / Hide</source> + <translation>&เฎเฎพเฎเฏเฎเฏ/เฎฎเฎฑเฏ</translation> + </message> + <message> + <source>&File</source> + <translation>&เฎเฏเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>&Settings</source> + <translation>&เฎ
เฎฎเฏเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>&Help</source> + <translation>&เฎเฎคเฎตเฎฟ</translation> + </message> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin เฎฎเฏเฎฏเฎฎเฏ</translation> + </message> + <message numerus="yes"> + <source>%n hour(s)</source> + <translation><numerusform>%n เฎฎเฎฃเฎฟ</numerusform><numerusform>%n เฎฎเฎฃเฎฟ</numerusform></translation> + </message> + <message> + <source>%1 and %2</source> + <translation>%1 เฎฎเฎฑเฏเฎฑเฏเฎฎเฏ %2</translation> + </message> + <message> + <source>%1 behind</source> + <translation>%1 เฎชเฎฟเฎฉเฏเฎฉเฎพเฎฒเฏ</translation> + </message> + <message> + <source>Error</source> + <translation>เฎคเฎตเฎฑเฏ</translation> + </message> + <message> + <source>Warning</source> + <translation>เฎเฎเฏเฎเฎฐเฎฟเฎเฏเฎเฏ</translation> + </message> + <message> + <source>Information</source> + <translation>เฎคเฎเฎตเฎฒเฏ</translation> + </message> + <message> + <source>Date: %1 +</source> + <translation>เฎคเฏเฎคเฎฟ: %1 +</translation> + </message> + <message> + <source>Amount: %1 +</source> + <translation>เฎคเฏเฎเฏ: %1 +</translation> + </message> + <message> + <source>Type: %1 +</source> + <translation>เฎตเฎเฏ: %1 +</translation> + </message> + <message> + <source>Address: %1 +</source> + <translation>เฎฎเฏเฎเฎตเฎฐเฎฟ: %1 +</translation> + </message> + <message> + <source>Sent transaction</source> + <translation>เฎ
เฎฉเฏเฎชเฏเฎชเฎฟเฎฏ เฎชเฎฐเฎฟเฎตเฎฐเฏเฎคเฏเฎคเฎฉเฏ</translation> + </message> + </context> +<context> + <name>ClientModel</name> + <message> + <source>Network Alert</source> + <translation>เฎชเฎฟเฎฃเฏเฎฏ เฎเฎเฏเฎเฎฐเฎฟเฎเฏเฎเฏ</translation> + </message> +</context> +<context> + <name>CoinControlDialog</name> + <message> + <source>Quantity:</source> + <translation>เฎ
เฎณเฎตเฏ</translation> + </message> + <message> + <source>Amount:</source> + <translation>เฎตเฎฟเฎฒเฏ:</translation> + </message> + <message> + <source>Priority:</source> + <translation>เฎฎเฏเฎฉเฏเฎฉเฏเฎฐเฎฟเฎฎเฏ</translation> + </message> + <message> + <source>Fee:</source> + <translation>เฎเฎเฏเฎเฎฃเฎฎเฏ:</translation> + </message> + <message> + <source>After Fee:</source> + <translation>เฎเฎเฏเฎเฎฃเฎคเฏเฎคเฎฟเฎฑเฎเฏเฎชเฏ เฎชเฎฟเฎฉเฏ:</translation> + </message> + <message> + <source>Change:</source> + <translation>เฎฎเฎพเฎฑเฏเฎฑเฏ:</translation> + </message> + <message> + <source>Amount</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>Date</source> + <translation>เฎคเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Confirmations</source> + <translation>เฎเฎฑเฏเฎคเฎฟเฎชเฏเฎชเฎเฏเฎคเฏเฎคเฎฒเฏเฎเฎณเฏ</translation> + </message> + <message> + <source>Confirmed</source> + <translation>เฎเฎฑเฏเฎคเฎฟเฎฏเฎพเฎ</translation> + </message> + <message> + <source>Priority</source> + <translation>เฎฎเฏเฎฉเฏเฎฉเฏเฎฐเฎฟเฎฎเฏ</translation> + </message> + <message> + <source>Copy address</source> + <translation>เฎชเฎฟเฎฐเฎคเฎฟเฎฏเฏ เฎฎเฏเฎเฎตเฎฐเฎฟเฎฏเฏ</translation> + </message> + <message> + <source>Copy amount</source> + <translation>เฎจเฎเฎฒเฏ เฎคเฏเฎเฏ</translation> + </message> + <message> + <source>none</source> + <translation>none</translation> + </message> + <message> + <source>yes</source> + <translation>เฎเฎฎเฏ</translation> + </message> + <message> + <source>no</source> + <translation>เฎเฎฒเฏเฎฒเฏ</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + <message> + <source>name</source> + <translation>เฎชเฏเฎฏเฎฐเฏ</translation> + </message> + </context> +<context> + <name>HelpMessageDialog</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin เฎฎเฏเฎฏเฎฎเฏ</translation> + </message> + <message> + <source>About Bitcoin Core</source> + <translation>Bitcoin เฎฎเฏเฎฏเฎฎเฏ เฎชเฎฑเฏเฎฑเฎฟ</translation> + </message> + </context> +<context> + <name>Intro</name> + <message> + <source>Welcome</source> + <translation>เฎจเฎฒเฏเฎตเฎฐเฎตเฏ</translation> + </message> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin เฎฎเฏเฎฏเฎฎเฏ</translation> + </message> + <message> + <source>Error</source> + <translation>เฎคเฎตเฎฑเฏ</translation> + </message> + </context> +<context> + <name>OpenURIDialog</name> + <message> + <source>Open URI</source> + <translation>URI-เฎ เฎคเฎฟเฎฑ</translation> + </message> + <message> + <source>URI:</source> + <translation>URI:</translation> + </message> + </context> +<context> + <name>OptionsDialog</name> + <message> + <source>Options</source> + <translation>เฎตเฎฟเฎฐเฏเฎชเฏเฎชเฎคเฏเฎคเฏเฎฐเฏเฎตเฏ</translation> + </message> + <message> + <source>&Main</source> + <translation>&เฎคเฎฒเฏเฎฎเฏ</translation> + </message> + <message> + <source>MB</source> + <translation>MB</translation> + </message> + <message> + <source>&Network</source> + <translation>&เฎชเฎฟเฎฃเฏเฎฏเฎฎเฏ</translation> + </message> + <message> + <source>W&allet</source> + <translation>&เฎชเฎฃเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>Expert</source> + <translation>เฎตเฎฒเฏเฎฒเฏเฎจเฎฐเฏ</translation> + </message> + <message> + <source>IPv4</source> + <translation>IPv4</translation> + </message> + <message> + <source>IPv6</source> + <translation>IPv6</translation> + </message> + <message> + <source>Tor</source> + <translation>Tor</translation> + </message> + <message> + <source>&Window</source> + <translation>&เฎเฎพเฎณเฎฐเฎฎเฏ</translation> + </message> + <message> + <source>&Display</source> + <translation>&เฎเฎพเฎเฏเฎเฏ</translation> + </message> + <message> + <source>&OK</source> + <translation>&เฎเฎฐเฎฟ</translation> + </message> + <message> + <source>&Cancel</source> + <translation>&เฎฐเฎคเฏเฎคเฏ</translation> + </message> + <message> + <source>default</source> + <translation>เฎเฎฏเฎฒเฏเฎชเฏเฎจเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>none</source> + <translation>none</translation> + </message> + </context> +<context> + <name>OverviewPage</name> + <message> + <source>Form</source> + <translation>เฎชเฎเฎฟเฎตเฎฎเฏ</translation> + </message> + <message> + <source>Available:</source> + <translation>เฎเฎฟเฎเฏเฎเฏเฎเฎเฏเฎเฎฟเฎฏ:</translation> + </message> + <message> + <source>Pending:</source> + <translation>เฎจเฎฟเฎฒเฏเฎตเฏเฎฏเฎฟเฎฒเฏ:</translation> + </message> + <message> + <source>Immature:</source> + <translation>เฎฎเฏเฎคเฎฟเฎฐเฎพเฎค:</translation> + </message> + <message> + <source>Balances</source> + <translation>เฎฎเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Total:</source> + <translation>เฎฎเฏเฎคเฏเฎคเฎฎเฏ:</translation> + </message> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + <message> + <source>User Agent</source> + <translation>เฎชเฎฏเฎฉเฎฐเฏ เฎฎเฏเฎเฎตเฎฐเฏ</translation> + </message> + <message> + <source>Ping Time</source> + <translation>เฎชเฎฟเฎเฏ เฎจเฏเฎฐเฎฎเฏ</translation> + </message> +</context> +<context> + <name>QObject</name> + <message> + <source>Amount</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>%1 d</source> + <translation>%1 d</translation> + </message> + <message> + <source>%1 h</source> + <translation>%1 h</translation> + </message> + <message> + <source>%1 s</source> + <translation>%1 s</translation> + </message> + <message> + <source>N/A</source> + <translation>N/A</translation> + </message> + <message> + <source>%1 ms</source> + <translation>%1 ms</translation> + </message> +</context> +<context> + <name>QRImageWidget</name> + <message> + <source>&Save Image...</source> + <translation>&เฎชเฎเฎคเฏเฎคเฏ เฎเฏเฎฎเฎฟ...</translation> + </message> + <message> + <source>&Copy Image</source> + <translation>&เฎชเฎเฎคเฏเฎคเฏ</translation> + </message> + <message> + <source>Save QR Code</source> + <translation>QR เฎเฏเฎฑเฎฟเฎฏเฏเฎเฏ เฎเฎพเฎชเฏเฎชเฎพเฎฑเฏเฎฑ</translation> + </message> + <message> + <source>PNG Image (*.png)</source> + <translation>PNG เฎชเฎเฎคเฏเฎคเฏ (*.png)</translation> + </message> +</context> +<context> + <name>RPCConsole</name> + <message> + <source>Client name</source> + <translation>เฎตเฎพเฎเฎฟเฎเฏเฎเฏเฎฏเฎพเฎณเฎฐเฏ เฎชเฏเฎฏเฎฐเฏ</translation> + </message> + <message> + <source>N/A</source> + <translation>N/A</translation> + </message> + <message> + <source>Client version</source> + <translation>เฎตเฎพเฎเฎฟเฎเฏเฎเฏเฎฏเฎพเฎณเฎฐเฏ เฎชเฎคเฎฟเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>&Information</source> + <translation>&เฎคเฎเฎตเฎฒเฏ</translation> + </message> + <message> + <source>Network</source> + <translation>เฎชเฎฟเฎฃเฏเฎฏเฎฎเฏ</translation> + </message> + <message> + <source>Name</source> + <translation>เฎชเฏเฎฏเฎฐเฏ</translation> + </message> + <message> + <source>Memory Pool</source> + <translation>เฎจเฎฟเฎฉเฏเฎตเฎ เฎเฏเฎณเฎฎเฏ</translation> + </message> + <message> + <source>Memory usage</source> + <translation>เฎจเฎฟเฎฉเฏเฎตเฎ เฎชเฎฏเฎฉเฏเฎชเฎพเฎเฏ</translation> + </message> + <message> + <source>Sent</source> + <translation>เฎ
เฎฉเฏเฎชเฏเฎชเฎฟเฎฏ</translation> + </message> + <message> + <source>Direction</source> + <translation>เฎคเฎฟเฎเฏ</translation> + </message> + <message> + <source>Version</source> + <translation>เฎชเฎคเฎฟเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>User Agent</source> + <translation>เฎชเฎฏเฎฉเฎฐเฏ เฎฎเฏเฎเฎตเฎฐเฏ</translation> + </message> + <message> + <source>Ping Time</source> + <translation>เฎชเฎฟเฎเฏ เฎจเฏเฎฐเฎฎเฏ</translation> + </message> + <message> + <source>&Open</source> + <translation>&เฎคเฎฟเฎฑ</translation> + </message> + <message> + <source>&Console</source> + <translation>&เฎชเฎฃเฎฟเฎฏเฎเฎฎเฏ</translation> + </message> + <message> + <source>&Clear</source> + <translation>&เฎตเฎดเฏเฎจเฏเฎเฏเฎเฏ</translation> + </message> + <message> + <source>Totals</source> + <translation>เฎฎเฏเฎคเฏเฎคเฎฎเฏ</translation> + </message> + <message> + <source>In:</source> + <translation>เฎเฎณเฏเฎณเฏ:</translation> + </message> + <message> + <source>Out:</source> + <translation>เฎตเฏเฎณเฎฟเฎฏเฏ:</translation> + </message> + <message> + <source>1 &hour</source> + <translation>1 &เฎฎเฎฃเฎฟ</translation> + </message> + <message> + <source>1 &day</source> + <translation>1 &เฎจเฎพเฎณเฏ</translation> + </message> + <message> + <source>1 &week</source> + <translation>1 &เฎตเฎพเฎฐเฎฎเฏ</translation> + </message> + <message> + <source>1 &year</source> + <translation>1 &เฎเฎฃเฏเฎเฏ</translation> + </message> + <message> + <source>%1 B</source> + <translation>%1 B</translation> + </message> + <message> + <source>%1 KB</source> + <translation>%1 KB</translation> + </message> + <message> + <source>%1 MB</source> + <translation>%1 MB</translation> + </message> + <message> + <source>%1 GB</source> + <translation>%1 GB</translation> + </message> + <message> + <source>via %1</source> + <translation>via %1</translation> + </message> + <message> + <source>never</source> + <translation>เฎเฎฐเฏเฎชเฏเฎพเฎคเฏเฎฎเฏ</translation> + </message> + <message> + <source>Inbound</source> + <translation>เฎเฎณเฏเฎตเฎฐเฏเฎฎเฏ</translation> + </message> + <message> + <source>Outbound</source> + <translation>เฎตเฏเฎณเฎฟ เฎเฏเฎฒเฏเฎฒเฏเฎฎเฏ</translation> + </message> + <message> + <source>Yes</source> + <translation>เฎเฎฎเฏ</translation> + </message> + <message> + <source>No</source> + <translation>เฎฎเฎฑเฏ</translation> + </message> + <message> + <source>Unknown</source> + <translation>เฎ
เฎฑเฎฟเฎฏเฎชเฏเฎชเฎเฎพเฎค</translation> + </message> +</context> +<context> + <name>ReceiveCoinsDialog</name> + <message> + <source>&Amount:</source> + <translation>&เฎคเฏเฎเฏ:</translation> + </message> + <message> + <source>&Label:</source> + <translation>&เฎเฎฟเฎเฏเฎเฏ:</translation> + </message> + <message> + <source>&Message:</source> + <translation>&เฎเฏเฎฏเฏเฎคเฎฟ:</translation> + </message> + <message> + <source>Clear</source> + <translation>เฎจเฏเฎเฏเฎเฏ</translation> + </message> + <message> + <source>Show</source> + <translation>เฎเฎพเฎฃเฏเฎชเฎฟ</translation> + </message> + <message> + <source>Remove</source> + <translation>เฎจเฏเฎเฏเฎเฏ</translation> + </message> + <message> + <source>Copy message</source> + <translation>เฎจเฎเฎฒเฏ เฎเฏเฎฏเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Copy amount</source> + <translation>เฎจเฎเฎฒเฏ เฎคเฏเฎเฏ</translation> + </message> +</context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>QR Code</source> + <translation>QR เฎเฏเฎฑเฎฟเฎฏเฏเฎเฏ</translation> + </message> + <message> + <source>Copy &URI</source> + <translation>เฎจเฎเฎฒเฏ &URI</translation> + </message> + <message> + <source>Copy &Address</source> + <translation>เฎจเฎเฎฒเฏ เฎตเฎฟเฎฒเฎพเฎเฎฎเฏ</translation> + </message> + <message> + <source>&Save Image...</source> + <translation>&เฎชเฎเฎคเฏเฎคเฏ เฎเฏเฎฎเฎฟ...</translation> + </message> + <message> + <source>URI</source> + <translation>URI</translation> + </message> + <message> + <source>Address</source> + <translation>เฎตเฎฟเฎฒเฎพเฎเฎฎเฏ</translation> + </message> + <message> + <source>Amount</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>Label</source> + <translation>เฎฒเฏเฎชเฎฟเฎณเฏ</translation> + </message> + <message> + <source>Message</source> + <translation>เฎเฏเฎฏเฏเฎคเฎฟ</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Date</source> + <translation>เฎคเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Label</source> + <translation>เฎฒเฏเฎชเฎฟเฎณเฏ</translation> + </message> + <message> + <source>Message</source> + <translation>เฎเฏเฎฏเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Amount</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>Quantity:</source> + <translation>เฎ
เฎณเฎตเฏ</translation> + </message> + <message> + <source>Amount:</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>Priority:</source> + <translation>เฎฎเฏเฎฉเฏเฎฉเฏเฎฐเฎฟเฎฎเฏ</translation> + </message> + <message> + <source>Fee:</source> + <translation>เฎเฎเฏเฎเฎฃเฎฎเฏ:</translation> + </message> + <message> + <source>After Fee:</source> + <translation>เฎเฎเฏเฎเฎฃเฎคเฏเฎคเฎฟเฎฑเฎเฏเฎชเฏ เฎชเฎฟเฎฉเฏ:</translation> + </message> + <message> + <source>Change:</source> + <translation>เฎฎเฎพเฎฑเฏเฎฑเฏ:</translation> + </message> + <message> + <source>Choose...</source> + <translation>เฎคเฏเฎฐเฏเฎจเฏเฎคเฏเฎเฏ...</translation> + </message> + <message> + <source>Hide</source> + <translation>เฎฎเฎฑเฏ</translation> + </message> + <message> + <source>normal</source> + <translation>เฎเฎฏเฎฒเฏเฎชเฎพเฎฉ</translation> + </message> + <message> + <source>fast</source> + <translation>เฎตเฏเฎเฎฎเฎพเฎ</translation> + </message> + <message> + <source>Balance:</source> + <translation>เฎฎเฏเฎคเฎฟ:</translation> + </message> + <message> + <source>S&end</source> + <translation>&เฎ
เฎฉเฏเฎชเฏเฎชเฏ</translation> + </message> + <message> + <source>%1 to %2</source> + <translation>%1 to %2</translation> + </message> + <message> + <source>Copy amount</source> + <translation>เฎจเฎเฎฒเฏ เฎคเฏเฎเฏ</translation> + </message> + <message> + <source>or</source> + <translation>เฎ
เฎฒเฏเฎฒเฎคเฏ</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + <message> + <source>A&mount:</source> + <translation>&เฎคเฏเฎเฏ:</translation> + </message> + <message> + <source>&Label:</source> + <translation>&เฎเฎฟเฎเฏเฎเฏ:</translation> + </message> + <message> + <source>Alt+A</source> + <translation>Alt+A</translation> + </message> + <message> + <source>Alt+P</source> + <translation>Alt+P</translation> + </message> + <message> + <source>Message:</source> + <translation>เฎเฏเฎฏเฏเฎคเฎฟ:</translation> + </message> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + <message> + <source>Alt+A</source> + <translation>Alt+A</translation> + </message> + <message> + <source>Alt+P</source> + <translation>Alt+P</translation> + </message> + <message> + <source>Signature</source> + <translation>เฎเฏเฎฏเฏเฎพเฎชเฏเฎชเฎฎเฏ</translation> + </message> + </context> +<context> + <name>SplashScreen</name> + <message> + <source>Bitcoin Core</source> + <translation>Bitcoin เฎฎเฏเฎฏเฎฎเฏ</translation> + </message> + </context> +<context> + <name>TrafficGraphWidget</name> + <message> + <source>KB/s</source> + <translation>KB/s</translation> + </message> +</context> +<context> + <name>TransactionDesc</name> + <message> + <source>Status</source> + <translation>เฎจเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>Date</source> + <translation>เฎคเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Source</source> + <translation>เฎฎเฏเฎฒเฎฎเฏ</translation> + </message> + <message> + <source>Credit</source> + <translation>เฎเฎเฎฉเฏ</translation> + </message> + <message> + <source>Debit</source> + <translation>เฎชเฎฑเฏเฎฑเฏ</translation> + </message> + <message> + <source>Total debit</source> + <translation>เฎฎเฏเฎพเฎคเฏเฎค เฎชเฎฑเฏเฎฑเฏ</translation> + </message> + <message> + <source>Total credit</source> + <translation>เฎฎเฏเฎพเฎคเฏเฎค เฎเฎเฎฉเฏ</translation> + </message> + <message> + <source>Net amount</source> + <translation>เฎจเฎฟเฎเฎฐ เฎคเฏเฎเฏ</translation> + </message> + <message> + <source>Message</source> + <translation>เฎเฏเฎฏเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Comment</source> + <translation>เฎเฎฐเฏเฎคเฏเฎคเฏ</translation> + </message> + <message> + <source>Transaction ID</source> + <translation>เฎชเฎฐเฎฟเฎตเฎฐเฏเฎคเฏเฎคเฎฉเฏ ID</translation> + </message> + <message> + <source>Merchant</source> + <translation>เฎตเฎฃเฎฟเฎเฎฐเฏ</translation> + </message> + <message> + <source>Debug information</source> + <translation>เฎเฎฐเฎฟเฎเฏเฎฏเฏเฎตเฎคเฎฑเฏเฎเฎพเฎฉ เฎคเฎเฎตเฎฒเฏ</translation> + </message> + <message> + <source>Transaction</source> + <translation>เฎชเฎฐเฎฟเฎตเฎฐเฏเฎคเฏเฎคเฎฉเฏ</translation> + </message> + <message> + <source>Inputs</source> + <translation>เฎเฎณเฏเฎณเฏเฎเฏเฎเฎณเฏ</translation> + </message> + <message> + <source>Amount</source> + <translation>เฎตเฎฟเฎฒเฏ</translation> + </message> + <message> + <source>true</source> + <translation>เฎเฎฃเฏเฎฎเฏ</translation> + </message> + <message> + <source>false</source> + <translation>เฎคเฎตเฎฑเฎพเฎฉ</translation> + </message> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Date</source> + <translation>เฎคเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Offline</source> + <translation>เฎเฎเฎชเฏเฎฒเฏเฎฉเฏ</translation> + </message> + <message> + <source>Label</source> + <translation>เฎฒเฏเฎชเฎฟเฎณเฏ</translation> + </message> + <message> + <source>(n/a)</source> + <translation>(n/a)</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>All</source> + <translation>เฎฎเฏเฎดเฏเฎตเฎคเฏเฎฎเฏ</translation> + </message> + <message> + <source>Today</source> + <translation>เฎเฎฉเฏเฎฑเฏ</translation> + </message> + <message> + <source>This week</source> + <translation>เฎเฎจเฏเฎค เฎตเฎพเฎฐเฎฎเฏ</translation> + </message> + <message> + <source>This month</source> + <translation>เฎเฎจเฏเฎค เฎฎเฎพเฎคเฎฎเฏ</translation> + </message> + <message> + <source>Last month</source> + <translation>เฎเฎเฎจเฏเฎค เฎฎเฎพเฎคเฎฎเฏ</translation> + </message> + <message> + <source>This year</source> + <translation>เฎเฎจเฏเฎค เฎตเฎฐเฏเฎเฎฎเฏ</translation> + </message> + <message> + <source>Range...</source> + <translation>เฎเฎฒเฏเฎฒเฏ...</translation> + </message> + <message> + <source>Other</source> + <translation>เฎตเฏเฎฑเฏ</translation> + </message> + <message> + <source>Copy address</source> + <translation>เฎชเฎฟเฎฐเฎคเฎฟเฎฏเฏ เฎฎเฏเฎเฎตเฎฐเฎฟเฎฏเฏ</translation> + </message> + <message> + <source>Copy amount</source> + <translation>เฎจเฎเฎฒเฏ เฎคเฏเฎเฏ</translation> + </message> + <message> + <source>Confirmed</source> + <translation>เฎเฎฑเฏเฎคเฎฟเฎฏเฎพเฎ</translation> + </message> + <message> + <source>Date</source> + <translation>เฎคเฏเฎคเฎฟ</translation> + </message> + <message> + <source>Label</source> + <translation>เฎฒเฏเฎชเฎฟเฎณเฏ</translation> + </message> + <message> + <source>Address</source> + <translation>เฎตเฎฟเฎฒเฎพเฎเฎฎเฏ</translation> + </message> + <message> + <source>ID</source> + <translation>ID</translation> + </message> + <message> + <source>Range:</source> + <translation>เฎเฎฒเฏเฎฒเฏ:</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&เฎเฎฑเฏเฎฑเฏเฎฎเฎคเฎฟ</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + <message> + <source>(default: %u)</source> + <translation>(default: %u)</translation> + </message> + <message> + <source>Information</source> + <translation>เฎคเฎเฎตเฎฒเฏ</translation> + </message> + <message> + <source>Warning</source> + <translation>เฎเฎเฏเฎเฎฐเฎฟเฎเฏเฎเฏ</translation> + </message> + <message> + <source>(default: %s)</source> + <translation>(default: %s)</translation> + </message> + <message> + <source>Error</source> + <translation>เฎคเฎตเฎฑเฏ</translation> + </message> +</context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_th_TH.ts b/src/qt/locale/bitcoin_th_TH.ts index 79a55cdd51..ba3b1e8741 100644 --- a/src/qt/locale/bitcoin_th_TH.ts +++ b/src/qt/locale/bitcoin_th_TH.ts @@ -2,22 +2,98 @@ <context> <name>AddressBookPage</name> <message> + <source>Right-click to edit address or label</source> + <translation>เธเธฅเธดเธเธเธงเธฒเนเธเธทเนเธญเนเธเนเนเธเธเธตเนเธญเธขเธนเน เธซเธฃเธทเธญเธเนเธฒเธขเธเธทเนเธญ</translation> + </message> + <message> <source>Create a new address</source> <translation>เธชเธฃเนเธฒเธเธเธตเนเธญเธขเธนเนเนเธซเธกเน</translation> </message> <message> + <source>&New</source> + <translation>&เธชเธฃเนเธฒเธเนเธซเธกเน</translation> + </message> + <message> <source>Copy the currently selected address to the system clipboard</source> <translation>เธเธฑเธเธฅเธญเธเธเธตเนเธญเธขเธนเนเธเธตเนเธเธนเธเนเธฅเธทเธญเธเนเธเธขเธฑเธ เธเธฅเธดเธเธเธญเธฃเนเธเธเธญเธเธฃเธฐเธเธ</translation> </message> <message> + <source>&Copy</source> + <translation>&เธเธฑเธเธฅเธญเธ</translation> + </message> + <message> + <source>C&lose</source> + <translation>&เธเธดเธ</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&เธเธฑเธเธฅเธญเธเธเธตเนเธญเธขเธนเน</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>เธฅเธเธเธตเนเธญเธขเธนเนเธเธตเนเนเธฅเธทเธญเธเนเธงเนเนเธเธเธเธฐเธเธตเนเธเธฒเธเธฃเธฒเธขเธเธฒเธฃ</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>เธชเนเธเธญเธญเธเธเนเธญเธกเธนเธฅเธเธตเนเธญเธขเธนเนเนเธเนเธเนเธเนเธเธเธตเนเนเธเธฅเน</translation> + </message> + <message> + <source>&Export</source> + <translation>&เธชเนเธเธญเธญเธ</translation> + </message> + <message> <source>&Delete</source> <translation>&เธฅเธ</translation> </message> <message> + <source>Choose the address to send coins to</source> + <translation>เนเธฅเธทเธญเธเธเธตเนเธญเธขเธนเนเนเธเธทเนเธญเธชเนเธเนเธซเธฃเธตเธขเธเนเธเนเธงเน</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>เนเธฅเธทเธญเธเธเธตเนเธญเธขเธนเนเนเธเธทเนเธญเธฃเธฑเธเนเธซเธฃเธตเธขเธเนเธงเน</translation> + </message> + <message> + <source>C&hoose</source> + <translation>&เนเธฅเธทเธญเธ</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>เธชเนเธเธเธตเนเธญเธขเธนเน</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>เธเธณเธฅเธฑเธเธฃเธฑเธเธเธตเนเธญเธขเธนเน</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>เธเธตเนเธญเธขเธนเนเนเธซเธฅเนเธฒเธเธตเนเนเธเนเธเธเธตเนเธญเธขเธนเน Bitcoin เธเธญเธเธเธธเธ เธชเธณเธซเธฃเธฑเธเนเธเนเนเธเธทเนเธญเธชเนเธเนเธเธดเธ เธเธฃเธธเธเธฒเธเธฃเธงเธเธชเธญเธเธเธณเธเธงเธเนเธเธดเธเนเธฅเธฐเธเธตเนเธญเธขเธนเนเธชเธณเธซเธฃเธฑเธเธฃเธฑเธเนเธเธดเธเธเนเธญเธเธชเนเธเนเธซเธฃเธตเธขเธเนเธ</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>เธเธฑเธเธฅเธญเธ &เธเนเธฒเธขเธเธทเนเธญ</translation> + </message> + <message> + <source>&Edit</source> + <translation>&เนเธเนเนเธ</translation> + </message> + <message> + <source>Export Address List</source> + <translation>เธชเนเธเธญเธญเธเธฃเธฒเธขเธเธฒเธฃเธเธตเนเธญเธขเธนเน</translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>เธเธฑเนเธเนเธเธฅเนเธเนเธงเธขเนเธเธฃเธทเนเธญเธเธซเธกเธฒเธขเธเธธเธฅเธ เธฒเธ (*.csv)</translation> </message> - </context> + <message> + <source>Exporting Failed</source> + <translation>เธชเนเธเธญเธญเธเธเนเธญเธกเธนเธฅเธฅเนเธกเนเธซเธฅเธง</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>เธเธเธเนเธญเธเธดเธเธเธฅเธฒเธเธเธฒเธเธเธฃเธฐเธเธฒเธฃเนเธเธเธฒเธฃเธเธขเธฒเธขเธฒเธกเธเธฑเธเธเธถเธเธฃเธฒเธขเธเธทเนเธญเธเธตเนเธญเธขเธนเนเนเธเธขเธฑเธ %1. เธเธฃเธธเธเธฒเธฅเธญเธเนเธซเธกเนเธญเธตเธเธเธฃเธฑเนเธ</translation> + </message> +</context> <context> <name>AddressTableModel</name> <message> @@ -76,6 +152,10 @@ <translation>เธขเธทเธเธขเธฑเธเธเธฒเธฃเนเธเนเธฒเธฃเธซเธฑเธชเธเธฃเธฐเนเธเนเธฒเธชเธเธฒเธเธเน</translation> </message> <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>เธเธธเธเนเธเนเนเธเนเธฅเนเธงเธซเธฃเธทเธญเธงเนเธฒเธเนเธญเธเธเธฒเธฃเนเธเนเธฒเธฃเธซเธฑเธชเธเธฃเธฐเนเธเนเธฒเธชเธเธฒเธเธเนเธเธญเธเธเธธเธ?</translation> + </message> + <message> <source>Wallet encrypted</source> <translation>เธเธฃเธฐเนเธเนเธฒเธชเธเธฒเธเธเนเธเธนเธเนเธเนเธฒเธฃเธซเธฑเธชเนเธฃเธตเธขเธเธฃเนเธญเธขเนเธฅเนเธง</translation> </message> @@ -130,10 +210,18 @@ <translation>เนเธฃเธตเธขเธเธเธนเธเธฃเธฐเธงเธฑเธเธดเธเธฒเธฃเธเธณเธเธธเธฃเธเธฃเธฃเธก</translation> </message> <message> + <source>E&xit</source> + <translation>E&เธญเธญเธ</translation> + </message> + <message> <source>Quit application</source> <translation>เธญเธญเธเธเธฒเธเนเธเธฃเนเธเธฃเธก</translation> </message> <message> + <source>About &Qt</source> + <translation>เนเธเธตเนเธขเธงเธเธฑเธ &Qt</translation> + </message> + <message> <source>&Options...</source> <translation>&เธเธฑเธงเนเธฅเธทเธญเธ...</translation> </message> @@ -142,6 +230,30 @@ <translation>เนเธเธฅเธตเนเธขเธเธฃเธซเธฑเธชเธเนเธฒเธเธเธตเนเนเธเนเธชเธณเธซเธฃเธฑเธเธเธฒเธฃเนเธเนเธฒเธฃเธซเธฑเธชเธเธฃเธฐเนเธเนเธฒเนเธเธดเธ</translation> </message> <message> + <source>&Debug window</source> + <translation>&เธซเธเนเธฒเธเนเธฒเธเธเธฃเธงเธเธชเธญเธเธเนเธญเธเธดเธเธเธฅเธฒเธ</translation> + </message> + <message> + <source>&Verify message...</source> + <translation>&เธขเธทเธเธขเธฑเธเธเนเธญเธเธงเธฒเธก...</translation> + </message> + <message> + <source>Bitcoin</source> + <translation>Bitcoin</translation> + </message> + <message> + <source>Wallet</source> + <translation>เธเธฃเธฐเนเธเนเธฒเธชเธเธฒเธเธเน</translation> + </message> + <message> + <source>&Send</source> + <translation>&เธชเนเธ</translation> + </message> + <message> + <source>&Receive</source> + <translation>&เธฃเธฑเธ</translation> + </message> + <message> <source>&File</source> <translation>&เนเธเธฅเน</translation> </message> @@ -192,6 +304,26 @@ <context> <name>CoinControlDialog</name> <message> + <source>Amount</source> + <translation>เธเธณเธเธงเธ</translation> + </message> + <message> + <source>Date</source> + <translation>เธงเธฑเธเธเธตเน</translation> + </message> + <message> + <source>Confirmations</source> + <translation>เธเธฒเธฃเธขเธทเธเธขเธฑเธ</translation> + </message> + <message> + <source>Confirmed</source> + <translation>เธขเธทเธเธขเธฑเธเนเธฅเนเธง</translation> + </message> + <message> + <source>Priority</source> + <translation>เธฃเธฐเธเธฑเธเธเธงเธฒเธกเธชเธณเธเธฑเธ</translation> + </message> + <message> <source>(no label)</source> <translation>(เนเธกเนเธกเธตเธเธทเนเธญ)</translation> </message> @@ -273,6 +405,10 @@ </context> <context> <name>QObject</name> + <message> + <source>Amount</source> + <translation>เธเธณเธเธงเธ</translation> + </message> </context> <context> <name>QRImageWidget</name> @@ -294,6 +430,10 @@ <translation>เธเธตเนเธญเธขเธนเน</translation> </message> <message> + <source>Amount</source> + <translation>เธเธณเธเธงเธ</translation> + </message> + <message> <source>Label</source> <translation>เธเธทเนเธญ</translation> </message> @@ -301,10 +441,18 @@ <context> <name>RecentRequestsTableModel</name> <message> + <source>Date</source> + <translation>เธงเธฑเธเธเธตเน</translation> + </message> + <message> <source>Label</source> <translation>เธเธทเนเธญ</translation> </message> <message> + <source>Amount</source> + <translation>เธเธณเธเธงเธ</translation> + </message> + <message> <source>(no label)</source> <translation>(เนเธกเนเธกเธตเธเธทเนเธญ)</translation> </message> @@ -345,6 +493,14 @@ </context> <context> <name>TransactionDesc</name> + <message> + <source>Date</source> + <translation>เธงเธฑเธเธเธตเน</translation> + </message> + <message> + <source>Amount</source> + <translation>เธเธณเธเธงเธ</translation> + </message> </context> <context> <name>TransactionDescDialog</name> @@ -352,6 +508,10 @@ <context> <name>TransactionTableModel</name> <message> + <source>Date</source> + <translation>เธงเธฑเธเธเธตเน</translation> + </message> + <message> <source>Label</source> <translation>เธเธทเนเธญ</translation> </message> @@ -363,10 +523,22 @@ <translation>เธงเธฑเธเธเธตเน</translation> </message> <message> + <source>Exporting Failed</source> + <translation>เธชเนเธเธญเธญเธเธเนเธญเธกเธนเธฅเธฅเนเธกเนเธซเธฅเธง</translation> + </message> + <message> <source>Comma separated file (*.csv)</source> <translation>เธเธฑเนเธเนเธเธฅเนเธเนเธงเธขเนเธเธฃเธทเนเธญเธเธซเธกเธฒเธขเธเธธเธฅเธ เธฒเธ (*.csv)</translation> </message> <message> + <source>Confirmed</source> + <translation>เธขเธทเธเธขเธฑเธเนเธฅเนเธง</translation> + </message> + <message> + <source>Date</source> + <translation>เธงเธฑเธเธเธตเน</translation> + </message> + <message> <source>Label</source> <translation>เธเธทเนเธญ</translation> </message> @@ -390,6 +562,14 @@ </context> <context> <name>WalletView</name> + <message> + <source>&Export</source> + <translation>&เธชเนเธเธญเธญเธ</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>เธชเนเธเธญเธญเธเธเนเธญเธกเธนเธฅเธเธตเนเธญเธขเธนเนเนเธเนเธเนเธเนเธเธเธตเนเนเธเธฅเน</translation> + </message> </context> <context> <name>bitcoin-core</name> diff --git a/src/qt/locale/bitcoin_tr.ts b/src/qt/locale/bitcoin_tr.ts index 96fca8bb24..2406776773 100644 --- a/src/qt/locale/bitcoin_tr.ts +++ b/src/qt/locale/bitcoin_tr.ts @@ -1474,10 +1474,6 @@ <translation>Genel</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>Kullanฤฑlan OpenSSL sรผrรผmรผ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>Kullanฤฑlan BerkeleyDB sรผrรผmรผ</translation> </message> @@ -2941,7 +2937,7 @@ </message> <message> <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> - <translation>Prune, asgari deฤer olan %d MiB'den dรผลรผk olarak ayarlanmฤฑลtฤฑr. Lรผtfen daha yรผksek bir sayฤฑ kullanฤฑnฤฑz.</translation> + <translation>Budama, asgari deฤer olan %d MiB'den dรผลรผk olarak ayarlanmฤฑลtฤฑr. Lรผtfen daha yรผksek bir sayฤฑ kullanฤฑnฤฑz.</translation> </message> <message> <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> @@ -2980,6 +2976,18 @@ <translation>Dฤฑลarฤฑdan gelen baฤlantฤฑlarฤฑ kabul et (varsayฤฑlan: -proxy veya -connect yoksa 1)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfee รงok yรผksek bir deฤere ayarlanmฤฑล! รcret tahminleri mevcut deฤilken รถdeyebileceฤiniz muamele รผcretidir bu.</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>รcret tahmini iรงin yetersiz veri bulunduฤunda kullanฤฑlacak รผcret oranฤฑ (%s/kB olarak) (varsayฤฑlan: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>Muameleler aktarฤฑlmadฤฑฤฤฑnda dahi beyaz listedeki eลlerden aktarฤฑlan muameleleri kabul et (varsayฤฑlan: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>Belirtilen adrese baฤlan ve daima ondan dinle. IPv6 iรงin [makine]:port yazฤฑmฤฑnฤฑ kullanฤฑnฤฑz</translation> </message> @@ -2996,6 +3004,10 @@ <translation>Bir cรผzdan muamelesi deฤiลtiฤinde komutu รงalฤฑลtฤฑr (komuttaki %s muamele kimliฤi ile deฤiลtirilecektir)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>Yerel aktarma politikasฤฑnฤฑ ihlal ettiklerinde bile beyaz listedeki eลlerden gelen muamelelerin aktarฤฑlmasฤฑnฤฑ zorla (varsayฤฑlan: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>Betik kontrolรผ iล parรงacฤฑklarฤฑnฤฑn sayฤฑsฤฑnฤฑ belirler (%u ilรข %d, 0 = otomatik, <0 = bu sayฤฑda รงekirdeฤi kullanma, varsayฤฑlan: %d)</translation> </message> @@ -3012,6 +3024,10 @@ <translation>Bu bilgisayarda %s unsuruna baฤlanฤฑlamadฤฑ. Bitcoin รekirdeฤi muhtemelen hรขlihazฤฑrda รงalฤฑลmaktadฤฑr.</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>Desteklenmeyen argรผman -whitelistalwaysrelay gรถrmezden gelindi, -whitelistrelay ve/veya -whitelistforcerelay kullanฤฑn.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>Dinlenecek portu haritalamak iรงin UPnP kullan (varsayฤฑlan: dinlenildiฤinde ve -proxy olmadฤฑฤฤฑnda 1)</translation> </message> @@ -3028,6 +3044,10 @@ <translation>Uyarฤฑ: ลebeke tamamen mutabฤฑk deฤil gibi gรถrรผnรผyor! Bazฤฑ madenciler sorun yaลฤฑyor gibi gรถrรผnรผyor.</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>ฤฐkaz: bilinmeyen blok sรผrรผmรผ oluลturulmaya รงalฤฑลฤฑlฤฑyor. Bilinmeyen kurallarฤฑn iลlemesi mรผmkรผndรผr.</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>Uyarฤฑ: eลlerimizle tamamen mutabฤฑk deฤiliz gibi gรถrรผnรผyor! Gรผncelleme yapmanฤฑz gerekebilir ya da diฤer dรผฤรผmlerin gรผncelleme yapmalarฤฑ gerekebilir.</translation> </message> @@ -3048,6 +3068,10 @@ <translation><kategori> ลunlar olabilir:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>Kullanฤฑcฤฑ aracฤฑ zincirine yorumu ekle</translation> + </message> + <message> <source>Block creation options:</source> <translation>Blok oluลturma seรงenekleri:</translation> </message> @@ -3092,6 +3116,10 @@ <translation>Ham muamelenin <adres>te yayฤฑnlanmasฤฑnฤฑ etkinleลtir</translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>Bellek alanฤฑnda muamele deฤiลtirmeyi etkinleลtir (varsayฤฑlan: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>Blok veritabanฤฑnฤฑ baลlatฤฑlฤฑrken bir hata meydana geldi</translation> </message> @@ -3128,10 +3156,22 @@ <translation>Geรงersiz -onion adresi: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation> -fallbackfee=<meblaฤ> iรงin geรงersiz meblaฤ: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>Muamele bellek alanฤฑnฤฑ <n> megabayttan dรผลรผk tut (varsayฤฑlan: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>auth รงerezinin konumu (varsayฤฑlan: veri klasรถrรผ)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>Aktardฤฑฤฤฑmฤฑz ve oluลturduฤumuz muamelelerdeki sigop baลฤฑna asgari bayt (varsayฤฑlan: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>Kafi derecede dosya tanฤฑmlayฤฑcฤฑlarฤฑ mevcut deฤil.</translation> </message> @@ -3140,12 +3180,16 @@ <translation>Sadece <net> ลebekesindeki dรผฤรผmlere baฤlan (ipv4, ipv6 veya onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>Sรผrรผmรผ yaz ve รงฤฑk</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> - <translation>Prune negatif bir deฤerle yapฤฑlandฤฑrฤฑlamaz.</translation> + <translation>Budama negatif bir deฤerle yapฤฑlandฤฑrฤฑlamaz.</translation> </message> <message> <source>Prune mode is incompatible with -txindex.</source> - <translation>Prune kipi -txindex ile uyumsuzdur.</translation> + <translation>Budama kipi -txindex ile uyumsuzdur.</translation> </message> <message> <source>Set database cache size in megabytes (%d to %d, default: %d)</source> @@ -3196,10 +3240,6 @@ <translation>Cรผzdan seรงenekleri:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>Uyarฤฑ: Bu sรผrรผm รงok eskidir; gรผncellemeniz gerekir!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>-txindex'i deฤiลtirmek iรงin veritabanฤฑnฤฑ -reindex kullanarak tekrar inลa etmeniz gerekmektedir</translation> </message> @@ -3281,7 +3321,7 @@ </message> <message> <source>You need to rebuild the database using -reindex to go back to unpruned mode. This will redownload the entire blockchain</source> - <translation>Prune olmayan kipe dรถnmek iรงin veritabanฤฑnฤฑ -reindex ile tekrar derlemeniz gerekir. Bu, tรผm blok zincirini tekrar indirecektir</translation> + <translation>Budama olmayan kipe dรถnmek iรงin veritabanฤฑnฤฑ -reindex ile tekrar derlemeniz gerekir. Bu, tรผm blok zincirini tekrar indirecektir</translation> </message> <message> <source>(default: %u)</source> @@ -3296,10 +3336,6 @@ <translation>En iyi zincir etkinleลtiriliyor...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>Beyaz listedeki eลlerden gelen muameleleri daima aktar (varsayฤฑlan: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>Baลlangฤฑรงta bozuk bir wallet.dat dosyasฤฑndan รถzel anahtarlarฤฑ geri kazanmayฤฑ dene</translation> </message> @@ -3464,6 +3500,10 @@ <translation>Uyarฤฑ</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>ฤฐkaz: bilinmeyen yeni kurallar etkinleลtirilmiลtir (versionbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>Salt blok kipinde รงalฤฑลฤฑlฤฑp รงalฤฑลฤฑlmayacaฤฤฑ (varsayฤฑlan: %u)</translation> </message> diff --git a/src/qt/locale/bitcoin_tr_TR.ts b/src/qt/locale/bitcoin_tr_TR.ts index 10866b011b..979aeea038 100644 --- a/src/qt/locale/bitcoin_tr_TR.ts +++ b/src/qt/locale/bitcoin_tr_TR.ts @@ -86,6 +86,10 @@ <translation>Adres Listesini Dฤฑลa Aktar</translation> </message> <message> + <source>Comma separated file (*.csv)</source> + <translation>Virgรผl ile ayrฤฑlmฤฑล dosya (*.csv)</translation> + </message> + <message> <source>Exporting Failed</source> <translation>Dฤฑลa Aktarma Baลarฤฑsฤฑz Oldu</translation> </message> @@ -247,6 +251,10 @@ <translation>Dฤฑลa Aktarma Baลarฤฑsฤฑz Oldu</translation> </message> <message> + <source>Comma separated file (*.csv)</source> + <translation>Virgรผl ile ayrฤฑlmฤฑล dosya (*.csv)</translation> + </message> + <message> <source>Label</source> <translation>Etiket</translation> </message> diff --git a/src/qt/locale/bitcoin_uk.ts b/src/qt/locale/bitcoin_uk.ts index ea783aa856..64df7b5ba5 100644 --- a/src/qt/locale/bitcoin_uk.ts +++ b/src/qt/locale/bitcoin_uk.ts @@ -1474,10 +1474,6 @@ <translation>ะะฐะณะฐะปัะฝะฐ</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ะะธะบะพัะธััะพะฒัััััั OpenSSL ะฒะตัััั</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ะะธะบะพัะธััะพะฒัััััั BerkeleyDB ะฒะตัััั</translation> </message> @@ -3140,6 +3136,10 @@ <translation>ะัะดะบะปััะฐัะธัั ััะปัะบะธ ะดะพ ะฒัะทะปัะฒ ะฒ ะผะตัะตะถั <net> (ipv4, ipv6 ะฐะฑะพ onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>ะะตัััั ะดะปั ะดััะบั ั ะฒะธั
ะพะดั</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>ะ ะพะทะผัั ัะบะพัะพัะตะฝะพะณะพ ะปะฐะฝััะถะบะฐ ะฑะปะพะบัะฒ ะฝะต ะผะพะถะต ะฑััะธ ะฒัะด'ัะผะฝะธะผ. </translation> </message> @@ -3196,10 +3196,6 @@ <translation>ะะฐัะฐะผะตััะธ ะณะฐะผะฐะฝัั:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>ะฃะฒะฐะณะฐ: ะะพัะพัะฝะฐ ะฒะตัััั ะทะฐััะฐััะปะฐ, ะฝะตะพะฑั
ัะดะฝะต ะพะฝะพะฒะปะตะฝะฝั!</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ะะฐะผ ะฝะตะพะฑั
ัะดะฝะพ ะฟะตัะตะฑัะดัะฒะฐัะธ ะฑะฐะทั ะดะฐะฝะธั
ะท ะฒะธะบะพัะธััะฐะฝะฝัะผ -reindex ะดะปั ัะพะณะพ, ัะพะฑ ะทะผัะฝะธัะธ -txindex</translation> </message> @@ -3296,10 +3292,6 @@ <translation>ะะบัะธะฒะฐััั ะฝะฐะนะบัะฐัะพะณะพ ะปะฐะฝััะถะบะฐ...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>ะะฐะฒะถะดะธ ะฟะตัะตะดะฐะฒะฐะนัะต ััะฐะฝะทะฐะบััั ะพััะธะผะฐะฝั ะฒัะด ะฟัััะฒ ะท ะฑัะปะพะณะพ ัะฟะธัะบั (ัะธะฟะพะฒะพ: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>ะกะฟะพัะฐัะบั ัะฟัะพะฑัะนัะต ะฒัะดะฝะพะฒะธัะธ ะฟัะธะฒะฐัะฝั ะบะปััั ะฒ ะฟะพัะบะพะดะถะตะฝะพะผั wallet.dat </translation> </message> diff --git a/src/qt/locale/bitcoin_uz@Cyrl.ts b/src/qt/locale/bitcoin_uz@Cyrl.ts index 86724564ff..a9f9af6683 100644 --- a/src/qt/locale/bitcoin_uz@Cyrl.ts +++ b/src/qt/locale/bitcoin_uz@Cyrl.ts @@ -1168,10 +1168,6 @@ <translation>ะัะพัะธะน</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ะคะพะนะดะฐะปะฐะฝะธะปะฐััะณะฐะฝ OpenSSL ะฒะตััะธััะธ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ะคะพะนะดะฐะปะฐะฝะธะปะฐััะณะฐะฝ BerkeleyDB ะฒะตััะธััะธ</translation> </message> diff --git a/src/qt/locale/bitcoin_uz@Latn.ts b/src/qt/locale/bitcoin_uz@Latn.ts new file mode 100644 index 0000000000..2e4dabb59f --- /dev/null +++ b/src/qt/locale/bitcoin_uz@Latn.ts @@ -0,0 +1,169 @@ +<TS language="uz@Latn" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Create a new address</source> + <translation>Yangi manzil yaratish</translation> + </message> + <message> + <source>&New</source> + <translation>&Yangi</translation> + </message> + <message> + <source>&Copy</source> + <translation>&Nusxalash</translation> + </message> + <message> + <source>C&lose</source> + <translation>Yo&pish</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>&Manzillarni nusxalash</translation> + </message> + <message> + <source>&Delete</source> + <translation>&O'chirish</translation> + </message> + </context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>Yorliq</translation> + </message> + <message> + <source>Address</source> + <translation>Manzil</translation> + </message> + </context> +<context> + <name>AskPassphraseDialog</name> + </context> +<context> + <name>BanTableModel</name> + </context> +<context> + <name>BitcoinGUI</name> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>Manzil</translation> + </message> + <message> + <source>Label</source> + <translation>Yorliq</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Label</source> + <translation>Yorliq</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Label</source> + <translation>Yorliq</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Label</source> + <translation>Yorliq</translation> + </message> + <message> + <source>Address</source> + <translation>Manzil</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_zh_CN.ts b/src/qt/locale/bitcoin_zh_CN.ts index 0ae2c95c62..cc1b033564 100644 --- a/src/qt/locale/bitcoin_zh_CN.ts +++ b/src/qt/locale/bitcoin_zh_CN.ts @@ -1474,10 +1474,6 @@ <translation>ๅธธ่ง</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ไฝฟ็จ OpenSSL ็ๆฌ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ไฝฟ็จ็ BerkeleyDB ็ๆฌ</translation> </message> @@ -2943,6 +2939,14 @@ <translation>ไฟฎๅชๅผ่ขซ่ฎพ็ฝฎไธบไฝไบๆๅฐๅผ%d MiB๏ผ่ฏทไฝฟ็จๆดๅคง็ๆฐๅผใ</translation> </message> <message> + <source>Prune: last wallet synchronisation goes beyond pruned data. You need to -reindex (download the whole blockchain again in case of pruned node)</source> + <translation>ไฟฎๅช๏ผๆๅ็้ฑๅ
ๅๆญฅ่ถ
่ฟไบไฟฎๅช็ๆฐๆฎใไฝ ้่ฆ้่ฟ -reindex (้ๆฐไธ่ฝฝๆดไธชๅบๅ้พไปฅ้ฒไฟฎๅช่็น)</translation> + </message> + <message> + <source>Reduce storage requirements by pruning (deleting) old blocks. This mode is incompatible with -txindex and -rescan. Warning: Reverting this setting requires re-downloading the entire blockchain. (default: 0 = disable pruning blocks, >%u = target size in MiB to use for block files)</source> + <translation>้่ฟไฟฎๅช(ๅ ้ค)ๆงๆฐๆฎๅๅๅฐๅญๅจ้ๆฑใๆญคๆจกๅผไธ -txindex ๅ -rescanไธๅ
ผๅฎนใ่ญฆๅ๏ผ่ฟๅๆญค่ฎพ็ฝฎ้่ฆ้ๆฐไธ่ฝฝๆดไธชๅบๅ้พใ(้ป่ฎค: 0 = ็ฆ็จไฟฎๅชๆฐๆฎๅ๏ผ >%u = ๆฐๆฎๅๆไปถ็ฎๆ ๅคงๅฐ๏ผๅไฝ MiB)</translation> + </message> + <message> <source>Rescans are not possible in pruned mode. You will need to use -reindex which will download the whole blockchain again.</source> <translation>ๆ ๆณๅจๅผๅฏไฟฎๅช็็ถๆไธ้ๆซๆ๏ผ่ฏทไฝฟ็จ -reindex้ๆฐไธ่ฝฝๅฎๆด็ๅบๅ้พใ</translation> </message> @@ -2973,6 +2977,18 @@ <translation>ๆฅๅๆฅ่ชๅค้จ็่ฟๆฅ (็ผบ็: ๅฆๆไธๅธฆ -proxy or -connect ๅๆฐ่ฎพ็ฝฎไธบ1)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>-fallbackfree ไบคๆ่ดน่ฎพ็ฝฎๅพๅพ้ซ๏ผ่ฟๆฏๅจ่ดน็จไผฐ่ฎกไธๅฏ็จๆถไฝ ๅฏ่ฝไผๆฏไป็ไบคๆ่ดนใ</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>ๅฝ่ดน็จไผฐ่ฎกๆฐๆฎ(default: %s)ไธ่ถณๆถๅฐไผๅฏ็จ็่ดน็ (in %s/kB) </translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>ๅณไฝฟๅจๆ ๅ
ณ่ไบคๆ(้ป่ฎค: %d)ๆถไนๆฅๅๆฅ่ช็ฝๅๅๅ่ก็ๅ
ณ่ไบคๆ</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>็ปๅฎๆๅฎ็IPๅฐๅๅผๅง็ๅฌใIPv6ๅฐๅ่ฏทไฝฟ็จ[host]:port ๆ ผๅผ</translation> </message> @@ -2989,6 +3005,10 @@ <translation>ๅฝๆไฝณๅบๅๅๅๆถๆง่กๅฝไปค (ๅฝไปค่กไธญ็ %s ไผ่ขซๆฟๆขๆๅบๅๅๅธๅผ)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>ๅผบๅถๅ
ณ่ๆฅ่ช็ฝๅๅๅ่ก็ไบคๆๅณไฝฟไปไปฌ่ฟๅๆฌๅฐๅ
ณ่ๆฟ็ญ(้ป่ฎค: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>่ฎพ็ฝฎ่ๆฌ้ช่ฏ็็จๅบ (%u ๅฐ %d, 0 = ่ชๅจ, <0 = ไฟ็่ช็ฑ็ๆ ธๅฟ, ้ป่ฎคๅผ: %d)</translation> </message> @@ -3005,6 +3025,10 @@ <translation>ๆ ๆณ %s็็ปๅฎๅฐ็ต่ไธ๏ผๆฏ็นๅธๆ ธๅฟ้ฑๅ
ๅฏ่ฝๅทฒ็ปๅจ่ฟ่กใ</translation> </message> <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>ไธไธชไธ่ขซๆฏๆ็ๅๆฐ -whitelistalwaysrelay ่ขซๅฟฝ็ฅไบใ่ฏทไฝฟ็จ -whitelistrelay ๆ่
-whitelistforcerelay.</translation> + </message> + <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> <translation>ไฝฟ็จUPnPๆด้ฒๆฌๆบ็ๅฌ็ซฏๅฃ๏ผ้ป่ฎค๏ผ1 ๅฝๆญฃๅจ็ๅฌไธไธไฝฟ็จไปฃ็๏ผ</translation> </message> @@ -3021,6 +3045,10 @@ <translation>่ญฆๅ๏ผ็ฝ็ปไผผไนๅนถไธๅฎๅ
จๅๆ๏ผๆไบ็ฟๅทฅไผผไน้ๅฐไบ้ฎ้ขใ</translation> </message> <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>่ญฆๅ: ๆช็ฅ็ๅบๅ็ๆฌ่ขซๆๆ๏ผๆช็ฅ่งๅๅฏ่ฝๅทฒ็ๆ</translation> + </message> + <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> <translation>่ญฆๅ๏ผๆไปฌ็ๅ่กไผผไนไธๅฎๅ
จๅๆ๏ผๆจๅฏ่ฝ้่ฆๅ็บง๏ผๆ่
ๅ
ถไป่็นๅฏ่ฝ้่ฆๅ็บงใ</translation> </message> @@ -3041,6 +3069,10 @@ <translation><category> ๅฏ่ฝๆฏ๏ผ</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>ไธบ็จๆทไปฃ็ๅญ็ฌฆไธฒ้ๅ ่ฏดๆ</translation> + </message> + <message> <source>Block creation options:</source> <translation>ๆฐๆฎๅๅๅปบ้้กน๏ผ</translation> </message> @@ -3085,6 +3117,10 @@ <translation>ๅ
่ฎธๅจ<address>ๅนฟๆญๅๅงไบคๆ</translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>ไฟ่ฏๅ
ๅญๆฑ ไธญ็ไบคๆๆดๆข(้ป่ฎค๏ผ%u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>ๅๅงๅๆฐๆฎๅๆฐๆฎๅบๅบ้</translation> </message> @@ -3121,10 +3157,22 @@ <translation>ๆ ๆ็ -onion ๅฐๅ๏ผโ%sโ</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>-fallbackfee ็ๆ ๆๆฐ้ข=<amount>: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>ไฟๆไบคๆๅ
ๅญๆฑ ๅคงๅฐไฝไบ<n>MB๏ผ้ป่ฎค๏ผ%u๏ผ</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>่ฎค่ฏCookie็ไฝ็ฝฎ (้ป่ฎค: data็ฎๅฝ)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>ๆไปฌๅ
ณ่ๅๆๆ็ๆฏsigop็ๆไฝไบคๆๅญ่(้ป่ฎค: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>ๆฒกๆ่ถณๅค็ๆไปถๆ่ฟฐ็ฌฆๅฏ็จใ</translation> </message> @@ -3133,6 +3181,10 @@ <translation>ๅช่ฟๆฅ <net>็ฝ็ปไธญ็่็น (ipv4, ipv6 ๆ onion) </translation> </message> <message> + <source>Print version and exit</source> + <translation>ๆๅฐ็ๆฌไฟกๆฏๅนถ้ๅบ</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>ไฟฎๅชไธ่ฝ้
็ฝฎไธไธช่ดๆฐใ</translation> </message> @@ -3169,6 +3221,10 @@ <translation>ไฝฟ็จUPnpๆ ๅฐ็ๅฌ็ซฏๅฃ (้ป่ฎค: %u) </translation> </message> <message> + <source>User Agent comment (%s) contains unsafe characters.</source> + <translation>็จๆทไปฃ็่ฏ่ฎบ(%s)ๅ
ๅซไธๅฎๅ
จ็ๅญ็ฌฆใ</translation> + </message> + <message> <source>Verifying blocks...</source> <translation>ๆญฃๅจ้ช่ฏๆฐๆฎๅบ็ๅฎๆดๆง...</translation> </message> @@ -3185,10 +3241,6 @@ <translation>้ฑๅ
้้กน:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>่ญฆๅ๏ผๆญค็ๆฌๅทฒ่ฟๆถ๏ผๅฟ
้กปๅ็บง๏ผ</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ๆจ้่ฆๅฐ -reindex ๆนไธบ -txindex ไปฅ้ๅปบๆฐๆฎๅบ</translation> </message> @@ -3225,6 +3277,10 @@ <translation>ๅฝๆถๅฐ็ธๅ
ณๆ้ๆ่
ๆไปฌ็ๅฐไธไธช้ฟๅๅๆถๆง่กๅฝไปค๏ผ%s ๅฐๆฟๆขไธบๆถๆฏ๏ผ</translation> </message> <message> + <source>Fees (in %s/kB) smaller than this are considered zero fee for relaying, mining and transaction creation (default: %s)</source> + <translation>ไบคๆ่ดน(in %s/kB)ๆฏ่ฟๆดๅฐ็ๅจๅ
ณ่ใๆๆๅ็ๆไบคๆๆถๅฐ่ขซ่งไธบ้ถ่ดนไบคๆ (้ป่ฎค: %s)</translation> + </message> + <message> <source>If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)</source> <translation>ๅฆๆๆช่ฎพ็ฝฎไบคๆ่ดน็จ๏ผ่ชๅจๆทปๅ ่ถณๅค็ไบคๆ่ดนไปฅ็กฎไฟไบคๆๅจๅนณๅnไธชๆฐๆฎๅๅ
่ขซ็กฎ่ฎค (้ป่ฎค: %u) </translation> </message> @@ -3281,6 +3337,14 @@ <translation>ๆญฃๅจๆฟๆดปๆไฝณๆฐๆฎ้พ...</translation> </message> <message> + <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> + <translation>ๅฐ่ฏไปๅฏๅจ้กตไธ็ๆๅ้ฑๅ
ๆไปถไธญๆขๅค็ง้ฅ</translation> + </message> + <message> + <source>Automatically create Tor hidden service (default: %d)</source> + <translation>่ชๅจๅปบ็ซTor้่ๆๅก (้ป่ฎค:%d)</translation> + </message> + <message> <source>Cannot resolve -whitebind address: '%s'</source> <translation>ๆ ๆณ่งฃๆ -whitebind ๅฐๅ: '%s'</translation> </message> diff --git a/src/qt/locale/bitcoin_zh_HK.ts b/src/qt/locale/bitcoin_zh_HK.ts new file mode 100644 index 0000000000..740a86e117 --- /dev/null +++ b/src/qt/locale/bitcoin_zh_HK.ts @@ -0,0 +1,521 @@ +<TS language="zh_HK" version="2.1"> +<context> + <name>AddressBookPage</name> + <message> + <source>Right-click to edit address or label</source> + <translation>ๆๅณๆไฟฎๆนไฝๅๆๆจ่จ</translation> + </message> + <message> + <source>Create a new address</source> + <translation>ๆฐๅขไธๅไฝๅ</translation> + </message> + <message> + <source>&New</source> + <translation>ๆฐๅข &N</translation> + </message> + <message> + <source>Copy the currently selected address to the system clipboard</source> + <translation>่ค่ฃฝ็ฎๅ้ธๆ็ไฝๅๅฐ็ณป็ตฑๅช่ฒผ็ฐฟ</translation> + </message> + <message> + <source>&Copy</source> + <translation>่ค่ฃฝ &C</translation> + </message> + <message> + <source>C&lose</source> + <translation>้้ &l</translation> + </message> + <message> + <source>&Copy Address</source> + <translation>่ค่ฃฝไฝๅ &C</translation> + </message> + <message> + <source>Delete the currently selected address from the list</source> + <translation>ๆ็ฎๅ้ธๆ็ไฝๅๅพๅ่กจไธญๅช้ค</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>ๆ็ฎๅๅ้ ็่ณๆๅฏๅบ่ณๆชๆก</translation> + </message> + <message> + <source>&Export</source> + <translation>ๅฏๅบ &E</translation> + </message> + <message> + <source>&Delete</source> + <translation>ๅช้ค &D</translation> + </message> + <message> + <source>Choose the address to send coins to</source> + <translation>้ธๆ่ฆไป้ข้ๅป็ไฝๅ</translation> + </message> + <message> + <source>Choose the address to receive coins with</source> + <translation>้ธๆ่ฆๆถ้ข็ไฝๅ</translation> + </message> + <message> + <source>C&hoose</source> + <translation>้ธๅ &h</translation> + </message> + <message> + <source>Sending addresses</source> + <translation>ไปๆฌพไฝๅ</translation> + </message> + <message> + <source>Receiving addresses</source> + <translation>ๆถๆฌพไฝๅ</translation> + </message> + <message> + <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> + <translation>้ไบๆฏไฝ ่ฆไปๆฌพ้ๅป็ Bitcoin ไฝๅใๅจไปๆฌพไนๅ๏ผๅๅฟ
่ฆๆชขๆฅ้้กๅๆถๆฌพไฝๅๆฏๅฆๆญฃ็ขบใ</translation> + </message> + <message> + <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> + <translation>้ไบๆฏไฝ ็จไพๆถๆฌพ็ Bitcoin ไฝๅใๅปบ่ญฐๅจๆฏๆฌกไบคๆๆ๏ผ้ฝไฝฟ็จไธๅๆฐ็ๆถๆฌพไฝๅใ</translation> + </message> + <message> + <source>Copy &Label</source> + <translation>่ค่ฃฝๆจ่จ &L</translation> + </message> + <message> + <source>&Edit</source> + <translation>็ทจ่ผฏ &E</translation> + </message> + <message> + <source>Export Address List</source> + <translation>ๅฏๅบไฝๅๆธ
ๅฎ</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>้่ๅ้ๆช(*.csv)</translation> + </message> + <message> + <source>Exporting Failed</source> + <translation>ๅฏๅบๅคฑๆ</translation> + </message> + <message> + <source>There was an error trying to save the address list to %1. Please try again.</source> + <translation>ๅฒๅญไฝๅๅ่กจๅฐ %1 ๆ็ผ็้ฏ่ชคใ่ซๅ่ฉฆไธๆฌกใ</translation> + </message> +</context> +<context> + <name>AddressTableModel</name> + <message> + <source>Label</source> + <translation>ๆจ่จ</translation> + </message> + <message> + <source>Address</source> + <translation>ไฝๅ</translation> + </message> + <message> + <source>(no label)</source> + <translation>(็กๆจ่จ)</translation> + </message> +</context> +<context> + <name>AskPassphraseDialog</name> + <message> + <source>Passphrase Dialog</source> + <translation>่ค้ๅฏ็ขผๅฐ่ฉฑๆนๅก</translation> + </message> + <message> + <source>Enter passphrase</source> + <translation>่ซ่ผธๅ
ฅๅฏ็ขผ</translation> + </message> + <message> + <source>New passphrase</source> + <translation>ๆฐๅฏ็ขผ</translation> + </message> + <message> + <source>Repeat new passphrase</source> + <translation>้่คๆฐๅฏ็ขผ</translation> + </message> + <message> + <source>Encrypt wallet</source> + <translation>ๅ ๅฏ้ขๅ
</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to unlock the wallet.</source> + <translation>้ๅๅไฝ้่ฆไฝ ็้ขๅ
ๅฏ็ขผไพๅฐ้ขๅ
่งฃ้ใ</translation> + </message> + <message> + <source>Unlock wallet</source> + <translation>่งฃ้้ขๅ
</translation> + </message> + <message> + <source>This operation needs your wallet passphrase to decrypt the wallet.</source> + <translation>้ๅๅไฝ้่ฆไฝ ็้ขๅ
ๅฏ็ขผไพๅฐ้ขๅ
่งฃๅฏใ</translation> + </message> + <message> + <source>Decrypt wallet</source> + <translation>่งฃๅฏ้ขๅ
</translation> + </message> + <message> + <source>Change passphrase</source> + <translation>ๆน่ฎๅฏ็ขผ</translation> + </message> + <message> + <source>Confirm wallet encryption</source> + <translation>็ขบ่ช้ขๅ
ๅ ๅฏ</translation> + </message> + <message> + <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> + <translation>่ญฆๅ: ๅฆๆๆ้ขๅ
ๅ ๅฏๅพๅๅฟ่จๅฏ็ขผ๏ผไฝ ๅฐฑๆ<b>ๅคฑๅปๆๆ Bitcoin ไบ</b>๏ผ</translation> + </message> + <message> + <source>Are you sure you wish to encrypt your wallet?</source> + <translation>ไฝ ็ขบๅฎ่ฆๆ้ขๅ
ๅ ๅฏๅ๏ผ</translation> + </message> + <message> + <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> + <translation>Bitcoin Core ็พๅจ่ฆ้้ไปฅๅฎๆๅ ๅฏ็จๅบใ่ซ่จๅพๅฐ้ขๅ
ๅ ๅฏไธ่ฝๅฎๅ
จ้ฒๆญขไฝ ็ Bitcoin ็ถ่ขซๅ
ฅไพต้ป่
ฆ็ๆกๆ็จๅผๅทๅใ</translation> + </message> + <message> + <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> + <translation>้่ฆ: ่ซๆน็จๆฐ็ข็็ๅ ๅฏ้ขๅ
ๆช๏ผไพๅไปฃๆไปฅ่้ขๅ
ๆช็ๅไปฝใ็บๅฎๅ
จ่จ๏ผ็ถไฝ ้ๅงไฝฟ็จๆฐ็ๅ ๅฏ้ขๅ
ๆชๅพ๏ผ่้ขๅ
ๆช็ๅไปฝๅฐฑไธ่ฝๅไฝฟ็จไบใ</translation> + </message> + <message> + <source>Warning: The Caps Lock key is on!</source> + <translation>่ญฆๅ: Caps Lock ๅทฒๅ็จ๏ผ</translation> + </message> + <message> + <source>Wallet encrypted</source> + <translation>้ขๅ
ๅทฒๅ ๅฏ</translation> + </message> + <message> + <source>Enter the new passphrase to the wallet.<br/>Please use a passphrase of <b>ten or more random characters</b>, or <b>eight or more words</b>.</source> + <translation>่ผธๅ
ฅ้ขๅ
็ๆฐๅฏ็ขผใ<br/>ๅฏ็ขผ่ซ็จ<b>10 ๅๆไปฅไธ็้จๆฉๅญๅ
</b>๏ผๆๆฏ<b>8 ๅๆไปฅไธ็ๅญ่ฉ</b>ใ</translation> + </message> + <message> + <source>Enter the old passphrase and new passphrase to the wallet.</source> + <translation>่ซ่ผธๅ
ฅ่ๅฏ็ขผๅๆฐๅฏ็ขผ่ณ้ขๅ
ใ</translation> + </message> + <message> + <source>Wallet encryption failed</source> + <translation>้ขๅ
ๅ ๅฏๅคฑๆ</translation> + </message> + <message> + <source>Wallet encryption failed due to an internal error. Your wallet was not encrypted.</source> + <translation>ๅ ๅ
ง้จ้ฏ่ชคๅฐ่ด้ขๅ
ๅ ๅฏๅคฑๆใไฝ ็้ขๅ
ๅฐๆชๅ ๅฏใ</translation> + </message> + <message> + <source>The supplied passphrases do not match.</source> + <translation>ๆไพ็ๅฏ็ขผไธไธๆจฃใ</translation> + </message> + <message> + <source>Wallet unlock failed</source> + <translation>้ขๅ
่งฃ้ๅคฑๆ</translation> + </message> + <message> + <source>The passphrase entered for the wallet decryption was incorrect.</source> + <translation>็จไพ่งฃๅฏ้ขๅ
็ๅฏ็ขผไธๅฐใ</translation> + </message> + <message> + <source>Wallet decryption failed</source> + <translation>้ขๅ
่งฃๅฏๅคฑๆ</translation> + </message> + <message> + <source>Wallet passphrase was successfully changed.</source> + <translation>้ขๅ
ๅฏ็ขผๅทฒๆๅๆดๆนใ</translation> + </message> +</context> +<context> + <name>BanTableModel</name> + <message> + <source>IP/Netmask</source> + <translation>IPไฝๅ/้ฎ็ฝฉ</translation> + </message> + <message> + <source>Banned Until</source> + <translation>ๅฐ้่ณ</translation> + </message> +</context> +<context> + <name>BitcoinGUI</name> + <message> + <source>Sign &message...</source> + <translation>็ฐฝ็ฝฒ่จๆฏ... &m</translation> + </message> + <message> + <source>Synchronizing with network...</source> + <translation>่็ถฒ็ตกๅๆญฅไธญ...</translation> + </message> + <message> + <source>&Overview</source> + <translation>็ธฝ่ฆฝ &O</translation> + </message> + <message> + <source>Node</source> + <translation>็ฏ้ป</translation> + </message> + <message> + <source>Show general overview of wallet</source> + <translation>้กฏ็คบ้ขๅ
ไธ่ฌ็ธฝ่ฆฝ</translation> + </message> + <message> + <source>&Transactions</source> + <translation>ไบคๆ &T</translation> + </message> + <message> + <source>Browse transaction history</source> + <translation>็่ฆฝไบคๆ็ด้</translation> + </message> + <message> + <source>E&xit</source> + <translation>็ตๆ &x</translation> + </message> + <message> + <source>Quit application</source> + <translation>็ตๆๆ็จ็จๅผ</translation> + </message> + <message> + <source>About &Qt</source> + <translation>้ๆผ Qt &Q</translation> + </message> + <message> + <source>Show information about Qt</source> + <translation>้กฏ็คบ Qt ็ธ้่ณ่จ</translation> + </message> + <message> + <source>&Options...</source> + <translation>้ธ้
... &O</translation> + </message> + <message> + <source>&Encrypt Wallet...</source> + <translation>ๅ ๅฏ้ขๅ
... &E</translation> + </message> + <message> + <source>&Backup Wallet...</source> + <translation>ๅไปฝ้ขๅ
... &B</translation> + </message> + <message> + <source>&Change Passphrase...</source> + <translation>ๆน่ฎๅฏ็ขผ... &C</translation> + </message> + <message> + <source>&Sending addresses...</source> + <translation>ไปๆฌพไฝๅ... &S</translation> + </message> + <message> + <source>&Receiving addresses...</source> + <translation>ๆถๆฌพไฝๅ... &R</translation> + </message> + <message> + <source>Open &URI...</source> + <translation>้ๅ็ถฒๅ... &U</translation> + </message> + <message> + <source>Bitcoin Core client</source> + <translation>Bitcoin Core ๅฎขๆถ็ซฏ</translation> + </message> + <message> + <source>Importing blocks from disk...</source> + <translation>ๆญฃๅจๅพ็ฃ็ขๅฏๅ
ฅๅๅก่ณๆ...</translation> + </message> + <message> + <source>Reindexing blocks on disk...</source> + <translation>ๆญฃๅจ็บ็ฃ็ขๅๅก้ๅปบ็ดขๅผ...</translation> + </message> + <message> + <source>Send coins to a Bitcoin address</source> + <translation>ไปๆฌพ่ณไธๅ Bitcoin ไฝๅ</translation> + </message> + <message> + <source>Backup wallet to another location</source> + <translation>ๆ้ขๅ
ๅไปฝๅฐๅ
ถๅฎๅฐๆน</translation> + </message> + <message> + <source>Change the passphrase used for wallet encryption</source> + <translation>ๆน่ฎ้ขๅ
ๅ ๅฏ็จ็ๅฏ็ขผ</translation> + </message> + <message> + <source>&Debug window</source> + <translation>้ค้ฏ่ฆ็ช &D</translation> + </message> + <message> + <source>Open debugging and diagnostic console</source> + <translation>้ๅ้ค้ฏๅ่จบๆทไธปๆงๅฐ</translation> + </message> + <message> + <source>&Verify message...</source> + <translation>้ฉ่ญ่จๆฏ... &V</translation> + </message> + <message> + <source>Bitcoin</source> + <translation>Bitcoin</translation> + </message> + <message> + <source>Wallet</source> + <translation>้ขๅ
</translation> + </message> + <message> + <source>&Send</source> + <translation>ไปๆฌพ &S</translation> + </message> + <message> + <source>&Receive</source> + <translation>ๆถๆฌพ &R</translation> + </message> + <message> + <source>Show information about Bitcoin Core</source> + <translation>้กฏ็คบ Bitcoin Core ็็ธ้่ณ่จ</translation> + </message> + <message> + <source>&Show / Hide</source> + <translation>้กฏ็คบ / ้ฑ่ &S</translation> + </message> + <message> + <source>Show or hide the main Window</source> + <translation>้กฏ็คบๆ้ฑ่ไธป่ฆ็ช</translation> + </message> + </context> +<context> + <name>ClientModel</name> + </context> +<context> + <name>CoinControlDialog</name> + <message> + <source>(no label)</source> + <translation>(็กๆจ่จ)</translation> + </message> + </context> +<context> + <name>EditAddressDialog</name> + </context> +<context> + <name>FreespaceChecker</name> + </context> +<context> + <name>HelpMessageDialog</name> + </context> +<context> + <name>Intro</name> + </context> +<context> + <name>OpenURIDialog</name> + </context> +<context> + <name>OptionsDialog</name> + </context> +<context> + <name>OverviewPage</name> + </context> +<context> + <name>PaymentServer</name> + </context> +<context> + <name>PeerTableModel</name> + </context> +<context> + <name>QObject</name> + </context> +<context> + <name>QRImageWidget</name> + </context> +<context> + <name>RPCConsole</name> + </context> +<context> + <name>ReceiveCoinsDialog</name> + </context> +<context> + <name>ReceiveRequestDialog</name> + <message> + <source>Address</source> + <translation>ไฝๅ</translation> + </message> + <message> + <source>Label</source> + <translation>ๆจ่จ</translation> + </message> + </context> +<context> + <name>RecentRequestsTableModel</name> + <message> + <source>Label</source> + <translation>ๆจ่จ</translation> + </message> + <message> + <source>(no label)</source> + <translation>(็กๆจ่จ)</translation> + </message> + </context> +<context> + <name>SendCoinsDialog</name> + <message> + <source>(no label)</source> + <translation>(็กๆจ่จ)</translation> + </message> + </context> +<context> + <name>SendCoinsEntry</name> + </context> +<context> + <name>ShutdownWindow</name> + </context> +<context> + <name>SignVerifyMessageDialog</name> + </context> +<context> + <name>SplashScreen</name> + </context> +<context> + <name>TrafficGraphWidget</name> + </context> +<context> + <name>TransactionDesc</name> + </context> +<context> + <name>TransactionDescDialog</name> + </context> +<context> + <name>TransactionTableModel</name> + <message> + <source>Label</source> + <translation>ๆจ่จ</translation> + </message> + </context> +<context> + <name>TransactionView</name> + <message> + <source>Exporting Failed</source> + <translation>ๅฏๅบๅคฑๆ</translation> + </message> + <message> + <source>Comma separated file (*.csv)</source> + <translation>้่ๅ้ๆช(*.csv)</translation> + </message> + <message> + <source>Label</source> + <translation>ๆจ่จ</translation> + </message> + <message> + <source>Address</source> + <translation>ไฝๅ</translation> + </message> + </context> +<context> + <name>UnitDisplayStatusBarControl</name> + </context> +<context> + <name>WalletFrame</name> + </context> +<context> + <name>WalletModel</name> + </context> +<context> + <name>WalletView</name> + <message> + <source>&Export</source> + <translation>ๅฏๅบ &E</translation> + </message> + <message> + <source>Export the data in the current tab to a file</source> + <translation>ๆ็ฎๅๅ้ ็่ณๆๅฏๅบ่ณๆชๆก</translation> + </message> + </context> +<context> + <name>bitcoin-core</name> + </context> +</TS>
\ No newline at end of file diff --git a/src/qt/locale/bitcoin_zh_TW.ts b/src/qt/locale/bitcoin_zh_TW.ts index 4026095928..107e7034e5 100644 --- a/src/qt/locale/bitcoin_zh_TW.ts +++ b/src/qt/locale/bitcoin_zh_TW.ts @@ -7,7 +7,7 @@ </message> <message> <source>Create a new address</source> - <translation>ๆฐๅขๆฐ็ไฝๅ</translation> + <translation>็ข็ไธๅๆฐไฝๅ</translation> </message> <message> <source>&New</source> @@ -67,11 +67,11 @@ </message> <message> <source>These are your Bitcoin addresses for sending payments. Always check the amount and the receiving address before sending coins.</source> - <translation>้ไบๆฏไฝ ่ฆไปๆฌพ้ๅป็ไฝๅ
ๅนฃไฝๅใๅจไป้ขไนๅ๏ผๅๅฟ
่ฆๆชขๆฅ้้กๅๆถๆฌพไฝๅๆฏๅฆๆญฃ็ขบใ</translation> + <translation>้ไบๆฏไฝ ่ฆไปๆฌพ้ๅป็ Bitcoin ไฝๅใๅจไป้ขไนๅ๏ผๅๅฟ
่ฆๆชขๆฅ้้กๅๆถๆฌพไฝๅๆฏๅฆๆญฃ็ขบใ</translation> </message> <message> <source>These are your Bitcoin addresses for receiving payments. It is recommended to use a new receiving address for each transaction.</source> - <translation>้ไบๆฏไฝ ็จไพๆถๆฌพ็ไฝๅ
ๅนฃไฝๅใๅปบ่ญฐๅจๆฏๆฌกไบคๆๆ๏ผ้ฝไฝฟ็จไธๅๆฐ็ๆถๆฌพไฝๅใ</translation> + <translation>้ไบๆฏไฝ ็จไพๆถๆฌพ็ Bitcoin ไฝๅใๅปบ่ญฐๅจๆฏๆฌกไบคๆๆ๏ผ้ฝไฝฟ็จไธๅๆฐ็ๆถๆฌพไฝๅใ</translation> </message> <message> <source>Copy &Label</source> @@ -161,7 +161,7 @@ </message> <message> <source>Warning: If you encrypt your wallet and lose your passphrase, you will <b>LOSE ALL OF YOUR BITCOINS</b>!</source> - <translation>่ญฆๅ: ๅฆๆๆ้ขๅ
ๅ ๅฏๅพๅๅฟ่จๅฏ็ขผ๏ผไฝ ๅฐฑๆๅพๆญค<b>ๅคฑๅปๅ
ถไธญๆๆ็ไฝๅ
ๅนฃไบ</b>๏ผ</translation> + <translation>่ญฆๅ: ๅฆๆๆ้ขๅ
ๅ ๅฏๅพๅๅฟ่จๅฏ็ขผ๏ผไฝ ๅฐฑๆๅพๆญค<b>ๅคฑๅปๅ
ถไธญๆๆ็ Bitcoin ไบ</b>๏ผ</translation> </message> <message> <source>Are you sure you wish to encrypt your wallet?</source> @@ -169,7 +169,7 @@ </message> <message> <source>Bitcoin Core will close now to finish the encryption process. Remember that encrypting your wallet cannot fully protect your bitcoins from being stolen by malware infecting your computer.</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ็พๅจ่ฆ้้๏ผๅฅฝๅฎๆๅ ๅฏ็จๅบใ่ซๆณจๆ๏ผๅ ๅฏ้ขๅ
ไธ่ฝๅฎๅ
จ้ฒๆญขๅ
ฅไพตไฝ ็้ป่
ฆ็ๆกๆ็จๅผๅทๅไฝๅ
ๅนฃใ</translation> + <translation>Bitcoin Core ็พๅจ่ฆ้้๏ผๅฅฝๅฎๆๅ ๅฏ็จๅบใ่ซๆณจๆ๏ผๅ ๅฏ้ขๅ
ไธ่ฝๅฎๅ
จ้ฒๆญขๅ
ฅไพตไฝ ็้ป่
ฆ็ๆกๆ็จๅผๅทๅ้ขๅนฃใ</translation> </message> <message> <source>IMPORTANT: Any previous backups you have made of your wallet file should be replaced with the newly generated, encrypted wallet file. For security reasons, previous backups of the unencrypted wallet file will become useless as soon as you start using the new, encrypted wallet.</source> @@ -307,7 +307,7 @@ </message> <message> <source>Bitcoin Core client</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟๅฎขๆถ็ซฏ่ป้ซ</translation> + <translation>Bitcoin Core ๅฎขๆถ็ซฏ่ป้ซ</translation> </message> <message> <source>Importing blocks from disk...</source> @@ -319,7 +319,7 @@ </message> <message> <source>Send coins to a Bitcoin address</source> - <translation>ไป้ข็ตฆไธๅไฝๅ
ๅนฃไฝๅ</translation> + <translation>ไป้ข็ตฆไธๅ Bitcoin ไฝๅ</translation> </message> <message> <source>Backup wallet to another location</source> @@ -343,7 +343,7 @@ </message> <message> <source>Bitcoin</source> - <translation>ไฝๅ
ๅนฃ</translation> + <translation>Bitcoin</translation> </message> <message> <source>Wallet</source> @@ -359,7 +359,7 @@ </message> <message> <source>Show information about Bitcoin Core</source> - <translation>้กฏ็คบไฝๅ
ๅนฃๆ ธๅฟ็็ธ้่ณ่จ</translation> + <translation>้กฏ็คบ Bitcoin Core ็็ธ้่ณ่จ</translation> </message> <message> <source>&Show / Hide</source> @@ -375,11 +375,11 @@ </message> <message> <source>Sign messages with your Bitcoin addresses to prove you own them</source> - <translation>็จไฝๅ
ๅนฃไฝๅ็ฐฝ็ฝฒ่จๆฏไพ่ญๆไฝๅๆฏไฝ ็</translation> + <translation>็จ Bitcoin ไฝๅ็ฐฝ็ฝฒ่จๆฏไพ่ญๆไฝๅๆฏไฝ ็</translation> </message> <message> <source>Verify messages to ensure they were signed with specified Bitcoin addresses</source> - <translation>้ฉ่ญ่จๆฏๆฏ็จไพ็ขบๅฎ่จๆฏๆฏ็จๆๅฎ็ไฝๅ
ๅนฃไฝๅ็ฐฝ็ฝฒ็</translation> + <translation>้ฉ่ญ่จๆฏๆฏ็จไพ็ขบๅฎ่จๆฏๆฏ็จๆๅฎ็ Bitcoin ไฝๅ็ฐฝ็ฝฒ็</translation> </message> <message> <source>&File</source> @@ -399,19 +399,19 @@ </message> <message> <source>Bitcoin Core</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>Bitcoin Core</translation> </message> <message> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation>่ฆๆฑไปๆฌพ(็ข็ QR Code ๅไฝๅ
ๅนฃไปๆฌพๅ่ญฐ็่ณๆบ่ญๅฅ็ขผ: URI)</translation> + <translation>่ฆๆฑไปๆฌพ(็ข็ QR Code ๅ bitcoin ไปๆฌพๅ่ญฐ็่ณๆบ่ญๅฅ็ขผ: URI)</translation> </message> <message> <source>&About Bitcoin Core</source> - <translation>้ๆผไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>้ๆผ Bitcoin Core</translation> </message> <message> <source>Modify configuration options for Bitcoin Core</source> - <translation>ไฟฎๆนไฝๅ
ๅนฃๆ ธๅฟ็่จญๅฎ้ธ้
</translation> + <translation>ไฟฎๆน Bitcoin Core ็่จญๅฎ้ธ้
</translation> </message> <message> <source>Show the list of used sending addresses and labels</source> @@ -431,11 +431,11 @@ </message> <message> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> - <translation>้กฏ็คบไฝๅ
ๅนฃๆ ธๅฟ็่ชชๆ่จๆฏ๏ผไพๅๅพๅฏ็จๅฝไปคๅ้ธ้
็ๅ่กจ</translation> + <translation>้กฏ็คบ Bitcoin Core ็่ชชๆ่จๆฏ๏ผไพๅๅพๅฏ็จๅฝไปคๅ้ธ้
็ๅ่กจ</translation> </message> <message numerus="yes"> <source>%n active connection(s) to Bitcoin network</source> - <translation><numerusform>%n ๅ้ไฝไธญ็ไฝๅ
ๅนฃ็ถฒ่ทฏ้ฃ็ท</numerusform></translation> + <translation><numerusform>%n ๅ้ไฝไธญ็ Bitcoin ็ถฒ่ทฏ้ฃ็ท</numerusform></translation> </message> <message> <source>No block source available...</source> @@ -818,7 +818,7 @@ </message> <message> <source>The entered address "%1" is not a valid Bitcoin address.</source> - <translation>่ผธๅ
ฅ็ไฝๅ %1 ไธฆไธๆฏๆๆ็ไฝๅ
ๅนฃไฝๅใ</translation> + <translation>่ผธๅ
ฅ็ไฝๅ %1 ไธฆไธๆฏๆๆ็ Bitcoin ไฝๅใ</translation> </message> <message> <source>Could not unlock wallet.</source> @@ -856,7 +856,7 @@ <name>HelpMessageDialog</name> <message> <source>Bitcoin Core</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>Bitcoin Core</translation> </message> <message> <source>version</source> @@ -868,7 +868,7 @@ </message> <message> <source>About Bitcoin Core</source> - <translation>้ๆผไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>้ๆผ Bitcoin Core</translation> </message> <message> <source>Command-line options</source> @@ -919,15 +919,15 @@ </message> <message> <source>Welcome to Bitcoin Core.</source> - <translation>ๆญก่ฟไฝฟ็จไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>ๆญก่ฟไฝฟ็จ Bitcoin Core</translation> </message> <message> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> - <translation>ๅ ็บ้ๆฏ็จๅผ็ฌฌไธๆฌกๅๅ๏ผไฝ ๅฏไปฅ้ธๆไฝๅ
ๅนฃๆ ธๅฟๅฒๅญ่ณๆ็ๅฐๆนใ</translation> + <translation>ๅ ็บ้ๆฏ็จๅผ็ฌฌไธๆฌกๅๅ๏ผไฝ ๅฏไปฅ้ธๆ Bitcoin Core ๅฒๅญ่ณๆ็ๅฐๆนใ</translation> </message> <message> <source>Bitcoin Core will download and store a copy of the Bitcoin block chain. At least %1GB of data will be stored in this directory, and it will grow over time. The wallet will also be stored in this directory.</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟๆไธ่ผไธฆๅฒๅญไธไปฝไฝๅ
ๅนฃๅๅก้็ๆท่ฒใ่ณๅฐๆ %1GB ็่ณๆๆๅฒๅญๅฐ้ๅ็ฎ้ไธญ๏ผไธฆไธ้ๆๆ็บๅข้ทใๅฆๅค้ขๅ
่ณๆไนๆๅฒๅญๅจ้ๅ็ฎ้ใ</translation> + <translation>Bitcoin Core ๆไธ่ผไธฆๅฒๅญไธไปฝ Bitcoin ๅๅก้็ๆท่ฒใ่ณๅฐๆ %1GB ็่ณๆๆๅฒๅญๅฐ้ๅ็ฎ้ไธญ๏ผไธฆไธ้ๆๆ็บๅข้ทใๅฆๅค้ขๅ
่ณๆไนๆๅฒๅญๅจ้ๅ็ฎ้ใ</translation> </message> <message> <source>Use the default data directory</source> @@ -939,7 +939,7 @@ </message> <message> <source>Bitcoin Core</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>Bitcoin Core</translation> </message> <message> <source>Error: Specified data directory "%1" cannot be created.</source> @@ -1021,7 +1021,7 @@ </message> <message> <source>The user interface language can be set here. This setting will take effect after restarting Bitcoin Core.</source> - <translation>ๅฏไปฅๅจ้่ฃก่จญๅฎไฝฟ็จ่
ไป้ข็่ช่จใ้ๅ่จญๅฎๅจ้ๅไฝๅ
ๅนฃๆ ธๅฟๅพๆๆ็ๆใ</translation> + <translation>ๅฏไปฅๅจ้่ฃก่จญๅฎไฝฟ็จ่
ไป้ข็่ช่จใ้ๅ่จญๅฎๅจ้ๅ Bitcoin Core ๅพๆๆ็ๆใ</translation> </message> <message> <source>Third party URLs (e.g. a block explorer) that appear in the transactions tab as context menu items. %s in the URL is replaced by transaction hash. Multiple URLs are separated by vertical bar |.</source> @@ -1049,11 +1049,11 @@ </message> <message> <source>Automatically start Bitcoin Core after logging in to the system.</source> - <translation>ๅจ็ปๅ
ฅ็ณป็ตฑๅพ่ชๅๅๅไฝๅ
ๅนฃๆ ธๅฟใ</translation> + <translation>ๅจ็ปๅ
ฅ็ณป็ตฑๅพ่ชๅๅๅ Bitcoin Coreใ</translation> </message> <message> <source>&Start Bitcoin Core on system login</source> - <translation>็ณป็ตฑ็ปๅ
ฅๆๅๅไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>็ณป็ตฑ็ปๅ
ฅๆๅๅ Bitcoin Core</translation> </message> <message> <source>(0 = auto, <0 = leave that many cores free)</source> @@ -1081,7 +1081,7 @@ </message> <message> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> - <translation>่ชๅๅจ่ทฏ็ฑๅจไธ้ๆพไฝๅ
ๅนฃ็ๅฎขๆถ็ซฏ้่จๅ ใๅชๆๅจไฝ ็่ทฏ็ฑๅจๆฏๆดไธ้ๅใ้็จๅณๆๅณ็จใๅๅฎ(UPnP)ๆๆๆไฝ็จใ</translation> + <translation>่ชๅๅจ่ทฏ็ฑๅจไธ้ๆพ Bitcoin ็ๅฎขๆถ็ซฏ้่จๅ ใๅชๆๅจไฝ ็่ทฏ็ฑๅจๆฏๆดไธ้ๅใ้็จๅณๆๅณ็จใๅๅฎ(UPnP)ๆๆๆไฝ็จใ</translation> </message> <message> <source>Map port using &UPnP</source> @@ -1089,7 +1089,7 @@ </message> <message> <source>Connect to the Bitcoin network through a SOCKS5 proxy.</source> - <translation>้้ SOCKS5 ไปฃ็ไผบๆๅจไพ้ฃ็ทๅฐไฝๅ
ๅนฃ็ถฒ่ทฏใ</translation> + <translation>้้ SOCKS5 ไปฃ็ไผบๆๅจไพ้ฃ็ทๅฐ Bitcoin ็ถฒ่ทฏใ</translation> </message> <message> <source>&Connect through SOCKS5 proxy (default proxy):</source> @@ -1129,7 +1129,7 @@ </message> <message> <source>Connect to the Bitcoin network through a separate SOCKS5 proxy for Tor hidden services.</source> - <translation>้้ๅฆๅค็ SOCKS5 ไปฃ็ไผบๆๅจไพ้ฃ็ทๅฐไฝๅ
ๅนฃ็ถฒ่ทฏไธญ็ Tor ้ฑ่ๆๅใ</translation> + <translation>้้ๅฆๅค็ SOCKS5 ไปฃ็ไผบๆๅจไพ้ฃ็ทๅฐ Bitcoin ็ถฒ่ทฏไธญ็ Tor ้ฑ่ๆๅใ</translation> </message> <message> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services:</source> @@ -1216,7 +1216,7 @@ </message> <message> <source>The displayed information may be out of date. Your wallet automatically synchronizes with the Bitcoin network after a connection is established, but this process has not completed yet.</source> - <translation>้กฏ็คบ็่ณ่จๅฏ่ฝๆฏ้ๆ็ใ่ทไฝๅ
ๅนฃ็ถฒ่ทฏ็้ฃ็ทๅปบ็ซๅพ๏ผไฝ ็้ขๅ
ๆ่ชๅๅ็ถฒ่ทฏๅๆญฅ๏ผไฝๆฏ้ๅๆญฅ้ฉ้ๆฒๅฎๆใ</translation> + <translation>้กฏ็คบ็่ณ่จๅฏ่ฝๆฏ้ๆ็ใ่ท Bitcoin ็ถฒ่ทฏ็้ฃ็ทๅปบ็ซๅพ๏ผไฝ ็้ขๅ
ๆ่ชๅๅ็ถฒ่ทฏๅๆญฅ๏ผไฝๆฏ้ๅๆญฅ้ฉ้ๆฒๅฎๆใ</translation> </message> <message> <source>Watch-only:</source> @@ -1323,7 +1323,7 @@ </message> <message> <source>URI cannot be parsed! This can be caused by an invalid Bitcoin address or malformed URI parameters.</source> - <translation>ๆฒ่พฆๆณ่งฃๆ่ณๆบ่ญๅฅ็ขผ(URI)๏ผๅฏ่ฝๆฏๅ ็บไฝๅ
ๅนฃไฝๅ็กๆ๏ผๆๆฏ URI ๅๆธๆ ผๅผ้ฏ่ชคใ</translation> + <translation>ๆฒ่พฆๆณ่งฃๆ่ณๆบ่ญๅฅ็ขผ(URI)๏ผๅฏ่ฝๆฏๅ ็บ Bitcoin ไฝๅ็กๆ๏ผๆๆฏ URI ๅๆธๆ ผๅผ้ฏ่ชคใ</translation> </message> <message> <source>Payment request file handling</source> @@ -1397,7 +1397,7 @@ </message> <message> <source>Enter a Bitcoin address (e.g. %1)</source> - <translation>่ผธๅ
ฅไฝๅ
ๅนฃไฝๅ (ๆฏๅฆ่ชช %1)</translation> + <translation>่ผธๅ
ฅ Bitcoin ไฝๅ (ๆฏๅฆ่ชช %1)</translation> </message> <message> <source>%1 d</source> @@ -1474,10 +1474,6 @@ <translation>ๆฎ้</translation> </message> <message> - <source>Using OpenSSL version</source> - <translation>ไฝฟ็จ็ OpenSSL ็ๆฌ</translation> - </message> - <message> <source>Using BerkeleyDB version</source> <translation>ไฝฟ็จ BerkeleyDB ็ๆฌ</translation> </message> @@ -1519,7 +1515,7 @@ </message> <message> <source>Open the Bitcoin Core debug log file from the current data directory. This can take a few seconds for large log files.</source> - <translation>ๅพ็ฎๅ็่ณๆ็ฎ้ไธ้ๅไฝๅ
ๅนฃๆ ธๅฟ็้ค้ฏ็ด้ๆชใ็ถ็ด้ๆชๅพๅคงๆ๏ผๅฏ่ฝๆ่ฑๅฅฝๅนพ็ง็ๆ้ใ</translation> + <translation>ๅพ็ฎๅ็่ณๆ็ฎ้ไธ้ๅ Bitcoin Core ็้ค้ฏ็ด้ๆชใ็ถ็ด้ๆชๅพๅคงๆ๏ผๅฏ่ฝๆ่ฑๅฅฝๅนพ็ง็ๆ้ใ</translation> </message> <message> <source>Received</source> @@ -1679,7 +1675,7 @@ </message> <message> <source>Welcome to the Bitcoin Core RPC console.</source> - <translation>ๆญก่ฟไฝฟ็จไฝๅ
ๅนฃๆ ธๅฟ RPC ไธปๆงๅฐใ</translation> + <translation>ๆญก่ฟไฝฟ็จ Bitcoin Core ็ RPC ไธปๆงๅฐใ</translation> </message> <message> <source>Use up and down arrows to navigate history, and <b>Ctrl-L</b> to clear screen.</source> @@ -1762,7 +1758,7 @@ </message> <message> <source>An optional message to attach to the payment request, which will be displayed when the request is opened. Note: The message will not be sent with the payment over the Bitcoin network.</source> - <translation>้ๅ ๅจไปๆฌพ่ฆๆฑไธญ็่จๆฏ๏ผๅฏไปฅไธๅกซ๏ผๆ้่ฆๆฑๅ
งๅฎนๆๆ้กฏ็คบใๆณจๆ: ้ๅ่จๆฏไธๆ้จ่ไปๆฌพ้ๅฐไฝๅ
ๅนฃ็ถฒ่ทฏไธใ</translation> + <translation>้ๅ ๅจไปๆฌพ่ฆๆฑไธญ็่จๆฏ๏ผๅฏไปฅไธๅกซ๏ผๆ้่ฆๆฑๅ
งๅฎนๆๆ้กฏ็คบใๆณจๆ: ้ๅ่จๆฏไธๆ้จ่ไปๆฌพ้ๅฐ Bitcoin ็ถฒ่ทฏไธใ</translation> </message> <message> <source>An optional label to associate with the new receiving address.</source> @@ -2155,7 +2151,7 @@ </message> <message> <source>Warning: Invalid Bitcoin address</source> - <translation>่ญฆๅ: ไฝๅ
ๅนฃไฝๅ็กๆ</translation> + <translation>่ญฆๅ: Bitcoin ไฝๅ็กๆ</translation> </message> <message> <source>(no label)</source> @@ -2206,7 +2202,7 @@ </message> <message> <source>The Bitcoin address to send the payment to</source> - <translation>ๆฅๆถไปๆฌพ็ไฝๅ
ๅนฃไฝๅ</translation> + <translation>ๆฅๆถไปๆฌพ็ Bitcoin ไฝๅ</translation> </message> <message> <source>Alt+A</source> @@ -2226,7 +2222,7 @@ </message> <message> <source>The fee will be deducted from the amount being sent. The recipient will receive less bitcoins than you enter in the amount field. If multiple recipients are selected, the fee is split equally.</source> - <translation>ๆ็บ่ฒปๆๅพ่ฆไปๆฌพๅบๅป็้้กไธญๆฃๆใๅ ๆญคๆถๆฌพไบบๆๆถๅฐๆฏ่ผธๅ
ฅ็้้ก้่ฆๅฐ็ไฝๅ
ๅนฃใๅฆๆๆๅคๅๆถๆฌพไบบ็่ฉฑ๏ผๆ็บ่ฒปๆๅนณๅๅ้
ไพๆฃ้คใ</translation> + <translation>ๆ็บ่ฒปๆๅพ่ฆไปๆฌพๅบๅป็้้กไธญๆฃๆใๅ ๆญคๆถๆฌพไบบๆๆถๅฐๆฏ่ผธๅ
ฅ็้้ก้่ฆๅฐ็ bitcoinใๅฆๆๆๅคๅๆถๆฌพไบบ็่ฉฑ๏ผๆ็บ่ฒปๆๅนณๅๅ้
ไพๆฃ้คใ</translation> </message> <message> <source>S&ubtract fee from amount</source> @@ -2250,7 +2246,7 @@ </message> <message> <source>A message that was attached to the bitcoin: URI which will be stored with the transaction for your reference. Note: This message will not be sent over the Bitcoin network.</source> - <translation>้ๅ ๅจไฝๅ
ๅนฃไปๆฌพๅ่ญฐ็่ณๆบ่ญๅฅ็ขผ(URI)ไธญ็่จๆฏ๏ผๆๅไบคๆๅ
งๅฎนไธ่ตทๅญ่ตทไพ๏ผ็ตฆไฝ ่ชๅทฑๅๅ่ใๆณจๆ: ้ๅ่จๆฏไธๆ้ๅฐไฝๅ
ๅนฃ็ถฒ่ทฏไธใ</translation> + <translation>้ๅ ๅจ Bitcoin ไปๆฌพๅ่ญฐ็่ณๆบ่ญๅฅ็ขผ(URI)ไธญ็่จๆฏ๏ผๆๅไบคๆๅ
งๅฎนไธ่ตทๅญ่ตทไพ๏ผ็ตฆไฝ ่ชๅทฑๅๅ่ใๆณจๆ: ้ๅ่จๆฏไธๆ้ๅฐ Bitcoin ็ถฒ่ทฏไธใ</translation> </message> <message> <source>Pay To:</source> @@ -2265,7 +2261,7 @@ <name>ShutdownWindow</name> <message> <source>Bitcoin Core is shutting down...</source> - <translation>ๆญฃๅจ้้ไฝๅ
ๅนฃๆ ธๅฟไธญ...</translation> + <translation>ๆญฃๅจ้้ Bitcoin Core ไธญ...</translation> </message> <message> <source>Do not shut down the computer until this window disappears.</source> @@ -2288,7 +2284,7 @@ </message> <message> <source>The Bitcoin address to sign the message with</source> - <translation>็จไพ็ฐฝ็ฝฒ่จๆฏ็ไฝๅ
ๅนฃไฝๅ</translation> + <translation>็จไพ็ฐฝ็ฝฒ่จๆฏ็ Bitcoin ไฝๅ</translation> </message> <message> <source>Choose previously used address</source> @@ -2320,7 +2316,7 @@ </message> <message> <source>Sign the message to prove you own this Bitcoin address</source> - <translation>็ฐฝ็ฝฒ้ๅ่จๆฏไพ่ญๆ้ๅไฝๅ
ๅนฃไฝๅๆฏไฝ ็</translation> + <translation>็ฐฝ็ฝฒ้ๅ่จๆฏไพ่ญๆ้ๅ Bitcoin ไฝๅๆฏไฝ ็</translation> </message> <message> <source>Sign &Message</source> @@ -2344,11 +2340,11 @@ </message> <message> <source>The Bitcoin address the message was signed with</source> - <translation>็ฐฝ็ฝฒ้ๅ่จๆฏ็ไฝๅ
ๅนฃไฝๅ</translation> + <translation>็ฐฝ็ฝฒ้ๅ่จๆฏ็ Bitcoin ไฝๅ</translation> </message> <message> <source>Verify the message to ensure it was signed with the specified Bitcoin address</source> - <translation>้ฉ่ญ้ๅ่จๆฏไพ็ขบๅฎๆฏ็จๆๅฎ็ไฝๅ
ๅนฃไฝๅ็ฐฝ็ฝฒ็</translation> + <translation>้ฉ่ญ้ๅ่จๆฏไพ็ขบๅฎๆฏ็จๆๅฎ็ Bitcoin ไฝๅ็ฐฝ็ฝฒ็</translation> </message> <message> <source>Verify &Message</source> @@ -2415,11 +2411,11 @@ <name>SplashScreen</name> <message> <source>Bitcoin Core</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>Bitcoin Core</translation> </message> <message> <source>The Bitcoin Core developers</source> - <translation>ไฝๅ
ๅนฃๆ ธๅฟ้็ผไบบๅก</translation> + <translation>Bitcoin Core ้็ผไบบๅก</translation> </message> <message> <source>[testnet]</source> @@ -2938,7 +2934,7 @@ </message> <message> <source>Please check that your computer's date and time are correct! If your clock is wrong Bitcoin Core will not work properly.</source> - <translation>่ซๆชขๆฅ้ป่
ฆๆฅๆๅๆ้ๆฏๅฆๆญฃ็ขบ๏ผไฝๅ
ๅนฃๆ ธๅฟๆฒ่พฆๆณๅจๆ้ไธๆบ็ๆ
ๆณไธๆญฃๅธธ้ไฝใ</translation> + <translation>่ซๆชขๆฅ้ป่
ฆๆฅๆๅๆ้ๆฏๅฆๆญฃ็ขบ๏ผBitcoin Core ๆฒ่พฆๆณๅจๆ้ไธๆบ็ๆ
ๆณไธๆญฃๅธธ้ไฝใ</translation> </message> <message> <source>Prune configured below the minimum of %d MiB. Please use a higher number.</source> @@ -2970,7 +2966,7 @@ </message> <message> <source>Run in the background as a daemon and accept commands</source> - <translation>็จ่ญท้ๆจกๅผๅจ่ๅพๅท่กไธฆๆฅๅๆไปค</translation> + <translation>็จ่ญท้ๆจกๅผๅจ่ๆฏๅท่กไธฆๆฅๅๆไปค</translation> </message> <message> <source>Unable to start HTTP server. See debug log for details.</source> @@ -2981,6 +2977,18 @@ <translation>ๆฏๅฆๆฅๅๅคไพ้ฃ็ท(้ ่จญๅผ: ็ถๆฒๆ -proxy ๆ -connect ๆ็บ 1)</translation> </message> <message> + <source>-fallbackfee is set very high! This is the transaction fee you may pay when fee estimates are not available.</source> + <translation>่ญฆๅ: -fallbackfee ่จญๅฎไบๅพ้ซ็้้ก๏ผ้ๆฏ็ถ้ ไผฐๆ็บ่ฒป้ๆฒ่จ็ฎๅบไพๆ๏ผไบคๆไปๆฌพ้ ่จญๆไป็ๆ็บ่ฒปใ</translation> + </message> + <message> + <source>A fee rate (in %s/kB) that will be used when fee estimation has insufficient data (default: %s)</source> + <translation>็ถๆฒๆ่ถณๅค ็่ณๆ่จ็ฎ้ ไผฐๆ็บ่ฒปๆ๏ผๆไฝฟ็จ็ๆ็บ่ฒป่ฒป็(ๅฎไฝๆฏ %s/kB, ้ ่จญๅผ: %s)</translation> + </message> + <message> + <source>Accept relayed transactions received from whitelisted peers even when not relaying transactions (default: %d)</source> + <translation>ๆฅๅๅพ็ฝๅ้ป็ฏ้ปๆถๅฐ็่ฝ็ผไบคๆ๏ผๅณไฝฟๆฒๆ(็ฌฆๅๆบๅ)่ฝ็ผๅบๅป(้ ่จญๅผ: %d)</translation> + </message> + <message> <source>Bind to given address and always listen on it. Use [host]:port notation for IPv6</source> <translation>ๅๆๅฎ็ไฝๅ็นซ็ต๏ผไธฆไธไธ็ดๅจๆๅฎไฝๅ่ฝๅ้ฃ็ทใIPv6 ่ซ็จ [ไธปๆฉ]:้่จๅ ้็จฎๆ ผๅผ</translation> </message> @@ -2997,6 +3005,10 @@ <translation>็ถ้ขๅ
ๆไบคๆๆน่ฎๆ่ฆๅท่ก็ๆไปค(ๆไปคไธญ็ %s ๆ่ขซๅไปฃๆไบคๆ่ญๅฅ็ขผ)</translation> </message> <message> + <source>Force relay of transactions from whitelisted peers even they violate local relay policy (default: %d)</source> + <translation>ๅผทๅถ่ฝ็ผๅพ็ฝๅ้ป็ฏ้ปๆถๅฐ็ไบคๆ๏ผๅณไฝฟๅฎๅ้ๅไบๆฌๆฉ็่ฝ็ผๆบๅ(้ ่จญๅผ: %d)</translation> + </message> + <message> <source>Set the number of script verification threads (%u to %d, 0 = auto, <0 = leave that many cores free, default: %d)</source> <translation>่จญๅฎๆไปค็ขผ้ฉ่ญ็ๅท่ก็ทๆธ็ฎ (%u ๅฐ %d๏ผ0 ่กจ็คบ็จๅผ่ชๅๆฑบๅฎ๏ผๅฐๆผ 0 ่กจ็คบไฟ็่็ๅจๆ ธๅฟไธ็จ็ๆธ็ฎ๏ผ้ ่จญๅผ: %d)</translation> </message> @@ -3010,7 +3022,11 @@ </message> <message> <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> - <translation>ๆฒ่พฆๆณ็นซ็ตๅจ้ๅฐ้ป่
ฆไธ็ %s ใไฝๅ
ๅนฃๆ ธๅฟๅฏ่ฝๅทฒ็ถๅจๅท่กไบใ</translation> + <translation>ๆฒ่พฆๆณ็นซ็ตๅจ้ๅฐ้ป่
ฆไธ็ %s ใBitcoin Core ๅฏ่ฝๅทฒ็ถๅจๅท่กไบใ</translation> + </message> + <message> + <source>Unsupported argument -whitelistalwaysrelay ignored, use -whitelistrelay and/or -whitelistforcerelay.</source> + <translation>ๅฟฝ็ฅไธๆฏๆด็ๅๆธ -whitelistalwaysrelay๏ผ่ซๆน็จ -whitelistrelay ๅ -whitelistforcerelayโ ็็ตๅใ</translation> </message> <message> <source>Use UPnP to map the listening port (default: 1 when listening and no -proxy)</source> @@ -3026,7 +3042,11 @@ </message> <message> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> - <translation>่ญฆๅ: ไฝๅ
ๅนฃ็ถฒ่ทฏๅฐๆผๅๅก้็ต็ๆฑบๅฎ็ฎๅๆๅๆญง๏ผ็ไพๆไบ็คฆๅทฅๆๆๅ้กใ</translation> + <translation>่ญฆๅ: ็ฏ้ป็ถฒ่ทฏๅฐๆผๅๅก้็ต็ๆฑบๅฎ็ฎๅๆๅๆญง๏ผ็ไพๆไบ็คฆๅทฅๆๆๅ้กใ</translation> + </message> + <message> + <source>Warning: Unknown block versions being mined! It's possible unknown rules are in effect</source> + <translation>่ญฆๅ: ๆ็คฆๅทฅๆญฃๅจ้ๆกไธๆ็ๆฌ็ๅๅก๏ผ้่กจ็คบๆไธๆ็ไบคๆ่ฆๅๆญฃๅจไฝ็จไธญ</translation> </message> <message> <source>Warning: We do not appear to fully agree with our peers! You may need to upgrade, or other nodes may need to upgrade.</source> @@ -3049,6 +3069,10 @@ <translation><category> ๅฏไปฅๆฏ:</translation> </message> <message> + <source>Append comment to the user agent string</source> + <translation>ๅฐไฝฟ็จ่
ไปฃ็ๅญไธฒๆทปๅ ่จป่งฃ</translation> + </message> + <message> <source>Block creation options:</source> <translation>ๅๅก่ฃฝ้ ้ธ้
:</translation> </message> @@ -3093,6 +3117,10 @@ <translation>้ๅๅณ้ไบคๆๅๅง่ณๆๅฐ็ฎๆจ ZeroMQ ไฝๅ <address> ๅป</translation> </message> <message> + <source>Enable transaction replacement in the memory pool (default: %u)</source> + <translation>ๅฐไบคๆๆซๅญๆฑ ๅ็จๆฟไปฃไบคๆ(้ ่จญๅผ: %u)</translation> + </message> + <message> <source>Error initializing block database</source> <translation>ๅๅงๅๅๅก่ณๆๅบซๆ็ผ็้ฏ่ชค</translation> </message> @@ -3129,10 +3157,22 @@ <translation>็กๆ็ -onion ไฝๅ: '%s'</translation> </message> <message> + <source>Invalid amount for -fallbackfee=<amount>: '%s'</source> + <translation>่จญๅฎ -fallbackfee=<้้ก> ็้้ก็กๆ: '%s'</translation> + </message> + <message> <source>Keep the transaction memory pool below <n> megabytes (default: %u)</source> <translation>ๅจ่จๆถ้ซๆซๅญๆฑ ไธญไฟๆๆๅค <n> ๅ็พ่ฌไฝๅ
็ต็ไบคๆ(้ ่จญๅผ: %u)</translation> </message> <message> + <source>Location of the auth cookie (default: data dir)</source> + <translation>่ช่ญ cookie ่ณๆ็ไฝ็ฝฎ(้ ่จญๅผ: ๅ่ณๆ็ฎ้)</translation> + </message> + <message> + <source>Minimum bytes per sigop in transactions we relay and mine (default: %u)</source> + <translation>่ฝ็ผๅ้ๆกๆ๏ผๅฐไบคๆ่ณๆ็ sigop ๅนณๅไฝๅ
็ตๆธไธ้(้ ่จญๅผ: %u)</translation> + </message> + <message> <source>Not enough file descriptors available.</source> <translation>ๆชๆกๆ่ฟฐๅ
ไธ่ถณใ</translation> </message> @@ -3141,6 +3181,10 @@ <translation>ๅชๅ <net> ็ถฒ่ทฏไธ็็ฏ้ป้ฃ็ท(ipv4, ipv6, ๆ onion)</translation> </message> <message> + <source>Print version and exit</source> + <translation>้กฏ็คบ็ๆฌๅพ็ตๆ</translation> + </message> + <message> <source>Prune cannot be configured with a negative value.</source> <translation>ไฟฎๅชๅผไธ่ฝ่จญๅฎ็บ่ฒ ็ใ</translation> </message> @@ -3197,10 +3241,6 @@ <translation>้ขๅ
้ธ้
:</translation> </message> <message> - <source>Warning: This version is obsolete; upgrade required!</source> - <translation>่ญฆๅ: ้ๅ็ๆฌๅทฒ็ถ่ขซๆทๆฑฐไบ๏ผๅฟ
้ ่ฆๅ็ด๏ผ</translation> - </message> - <message> <source>You need to rebuild the database using -reindex to change -txindex</source> <translation>ๆน่ฎ -txindex ๅๆธๅพ๏ผๅฟ
้ ่ฆ็จ -reindex ๅๆธไพ้ๅปบ่ณๆๅบซ</translation> </message> @@ -3218,7 +3258,7 @@ </message> <message> <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> - <translation>ๆฒ่พฆๆณ้ๅฎ่ณๆ็ฎ้ %sใไฝๅ
ๅนฃๆ ธๅฟๅฏ่ฝๅทฒ็ถๅจๅท่กไบใ</translation> + <translation>ๆฒ่พฆๆณ้ๅฎ่ณๆ็ฎ้ %sใBitcoin Core ๅฏ่ฝๅทฒ็ถๅจๅท่กไบใ</translation> </message> <message> <source>Create new files with system default permissions, instead of umask 077 (only effective with disabled wallet functionality)</source> @@ -3297,10 +3337,6 @@ <translation>ๅ็จๆไฝณ้็ต...</translation> </message> <message> - <source>Always relay transactions received from whitelisted peers (default: %d)</source> - <translation>็กๆขไปถ่ฝ็ผๅพ็ฝๅ้ป็ฏ้ปๆถๅฐ็ไบคๆ(้ ่จญๅผ: %d)</translation> - </message> - <message> <source>Attempt to recover private keys from a corrupt wallet.dat on startup</source> <translation>ๅๅๆๅ่ฉฆๅพๅฃๆ็้ขๅ
ๆช wallet.dat ๅพฉๅๅฏ้ฐ</translation> </message> @@ -3318,11 +3354,11 @@ </message> <message> <source>Copyright (C) 2009-%i The Bitcoin Core Developers</source> - <translation>็ๆฌ็บไฝๅ
ๅนฃๆ ธๅฟ้็ผไบบๅก่ช่ฅฟๅ
2009 ่ณ %i ๅนด่ตทๆๆ</translation> + <translation>็ๆฌ็บ Bitcoin Core ้็ผไบบๅก่ช่ฅฟๅ
2009 ่ณ %i ๅนด่ตทๆๆ</translation> </message> <message> <source>Error loading wallet.dat: Wallet requires newer version of Bitcoin Core</source> - <translation>่ผๅ
ฅ wallet.dat ๆชๆกๆ็ผ็้ฏ่ชค: ้ๅ้ขๅ
้่ฆๆฐ็็ไฝๅ
ๅนฃๆ ธๅฟ</translation> + <translation>่ผๅ
ฅ wallet.dat ๆชๆกๆ็ผ็้ฏ่ชค: ้ๅ้ขๅ
้่ฆๆฐ็็ Bitcoin Core</translation> </message> <message> <source>Error reading from database, shutting down.</source> @@ -3338,7 +3374,7 @@ </message> <message> <source>Initialization sanity check failed. Bitcoin Core is shutting down.</source> - <translation>ๅๅงๅๆ็ๅบๆฌๆชขๆฅๅคฑๆไบใไฝๅ
ๅนฃๆ ธๅฟๅฐฑ่ฆ้้ไบใ</translation> + <translation>ๅๅงๅๆ็ๅบๆฌๆชขๆฅๅคฑๆไบใBitcoin Core ๅฐฑ่ฆ้้ไบใ</translation> </message> <message> <source>Invalid amount for -maxtxfee=<amount>: '%s'</source> @@ -3458,13 +3494,17 @@ </message> <message> <source>Wallet needed to be rewritten: restart Bitcoin Core to complete</source> - <translation>้ขๅ
้่ฆ้ๅฏซ: ่ซ้ๆฐๅๅไฝๅ
ๅนฃๆ ธๅฟไพๅฎๆ</translation> + <translation>้ขๅ
้่ฆ้ๅฏซ: ่ซ้ๆฐๅๅ Bitcoin Core ไพๅฎๆ</translation> </message> <message> <source>Warning</source> <translation>่ญฆๅ</translation> </message> <message> + <source>Warning: unknown new rules activated (versionbit %i)</source> + <translation>่ญฆๅ: ไธๆ็ไบคๆ่ฆๅ่ขซๅ็จไบ(versionbit %i)</translation> + </message> + <message> <source>Whether to operate in a blocks only mode (default: %u)</source> <translation>ๆฏๅฆ่ฆ็จๅช่ฆๅๅกๆจกๅผ้ไฝ(้ ่จญๅผ: %u)</translation> </message> @@ -3582,7 +3622,7 @@ </message> <message> <source>Generate coins (default: %u)</source> - <translation>็็ขไฝๅ
ๅนฃ(้ ่จญๅผ: %u)</translation> + <translation>็็ข้ขๅนฃ(้ ่จญๅผ: %u)</translation> </message> <message> <source>How many blocks to check at startup (default: %u, 0 = all)</source> diff --git a/src/qt/splashscreen.cpp b/src/qt/splashscreen.cpp index b46321fa86..e36d86fddd 100644 --- a/src/qt/splashscreen.cpp +++ b/src/qt/splashscreen.cpp @@ -141,6 +141,11 @@ SplashScreen::~SplashScreen() void SplashScreen::slotFinish(QWidget *mainWin) { Q_UNUSED(mainWin); + + /* If the window is minimized, hide() will be ignored. */ + /* Make sure we de-minimize the splashscreen window before hiding */ + if (isMinimized()) + showNormal(); hide(); } diff --git a/src/qt/winshutdownmonitor.cpp b/src/qt/winshutdownmonitor.cpp index 1bc4f77959..a11da50588 100644 --- a/src/qt/winshutdownmonitor.cpp +++ b/src/qt/winshutdownmonitor.cpp @@ -27,7 +27,7 @@ bool WinShutdownMonitor::nativeEventFilter(const QByteArray &eventType, void *pM // Warn only once as this is performance-critical static bool warned = false; if (!warned) { - LogPrint("%s: OpenSSL RAND_event() failed to seed OpenSSL PRNG with enough data.\n", __func__); + LogPrintf("%s: OpenSSL RAND_event() failed to seed OpenSSL PRNG with enough data.\n", __func__); warned = true; } } diff --git a/src/rpc/net.cpp b/src/rpc/net.cpp index cae964e46d..b85c7b2e1a 100644 --- a/src/rpc/net.cpp +++ b/src/rpc/net.cpp @@ -271,25 +271,22 @@ UniValue getaddednodeinfo(const UniValue& params, bool fHelp) { if (fHelp || params.size() < 1 || params.size() > 2) throw runtime_error( - "getaddednodeinfo dns ( \"node\" )\n" + "getaddednodeinfo dummy ( \"node\" )\n" "\nReturns information about the given added node, or all added nodes\n" "(note that onetry addnodes are not listed here)\n" - "If dns is false, only a list of added nodes will be provided,\n" - "otherwise connected information will also be available.\n" "\nArguments:\n" - "1. dns (boolean, required) If false, only a list of added nodes will be provided, otherwise connected information will also be available.\n" + "1. dummy (boolean, required) Kept for historical purposes but ignored\n" "2. \"node\" (string, optional) If provided, return information about this specific node, otherwise all nodes are returned.\n" "\nResult:\n" "[\n" " {\n" - " \"addednode\" : \"192.168.0.201\", (string) The node ip address\n" + " \"addednode\" : \"192.168.0.201\", (string) The node ip address or name (as provided to addnode)\n" " \"connected\" : true|false, (boolean) If connected\n" - " \"addresses\" : [\n" + " \"addresses\" : [ (list of objects) Only when connected = true\n" " {\n" - " \"address\" : \"192.168.0.201:8333\", (string) The bitcoin server host and port\n" + " \"address\" : \"192.168.0.201:8333\", (string) The bitcoin server IP and port we're connected to\n" " \"connected\" : \"outbound\" (string) connection, inbound or outbound\n" " }\n" - " ,...\n" " ]\n" " }\n" " ,...\n" @@ -300,83 +297,35 @@ UniValue getaddednodeinfo(const UniValue& params, bool fHelp) + HelpExampleRpc("getaddednodeinfo", "true, \"192.168.0.201\"") ); - bool fDns = params[0].get_bool(); + std::vector<AddedNodeInfo> vInfo = GetAddedNodeInfo(); - list<string> laddedNodes(0); - if (params.size() == 1) - { - LOCK(cs_vAddedNodes); - BOOST_FOREACH(const std::string& strAddNode, vAddedNodes) - laddedNodes.push_back(strAddNode); - } - else - { - string strNode = params[1].get_str(); - LOCK(cs_vAddedNodes); - BOOST_FOREACH(const std::string& strAddNode, vAddedNodes) { - if (strAddNode == strNode) - { - laddedNodes.push_back(strAddNode); + if (params.size() == 2) { + bool found = false; + for (const AddedNodeInfo& info : vInfo) { + if (info.strAddedNode == params[1].get_str()) { + vInfo.assign(1, info); + found = true; break; } } - if (laddedNodes.size() == 0) + if (!found) { throw JSONRPCError(RPC_CLIENT_NODE_NOT_ADDED, "Error: Node has not been added."); - } - - UniValue ret(UniValue::VARR); - if (!fDns) - { - BOOST_FOREACH (const std::string& strAddNode, laddedNodes) { - UniValue obj(UniValue::VOBJ); - obj.push_back(Pair("addednode", strAddNode)); - ret.push_back(obj); } - return ret; } - list<pair<string, vector<CService> > > laddedAddreses(0); - BOOST_FOREACH(const std::string& strAddNode, laddedNodes) { - vector<CService> vservNode(0); - if(Lookup(strAddNode.c_str(), vservNode, Params().GetDefaultPort(), fNameLookup, 0)) - laddedAddreses.push_back(make_pair(strAddNode, vservNode)); - else - { - UniValue obj(UniValue::VOBJ); - obj.push_back(Pair("addednode", strAddNode)); - obj.push_back(Pair("connected", false)); - UniValue addresses(UniValue::VARR); - obj.push_back(Pair("addresses", addresses)); - ret.push_back(obj); - } - } + UniValue ret(UniValue::VARR); - LOCK(cs_vNodes); - for (list<pair<string, vector<CService> > >::iterator it = laddedAddreses.begin(); it != laddedAddreses.end(); it++) - { + for (const AddedNodeInfo& info : vInfo) { UniValue obj(UniValue::VOBJ); - obj.push_back(Pair("addednode", it->first)); - + obj.push_back(Pair("addednode", info.strAddedNode)); + obj.push_back(Pair("connected", info.fConnected)); UniValue addresses(UniValue::VARR); - bool fConnected = false; - BOOST_FOREACH(const CService& addrNode, it->second) { - bool fFound = false; - UniValue node(UniValue::VOBJ); - node.push_back(Pair("address", addrNode.ToString())); - BOOST_FOREACH(CNode* pnode, vNodes) { - if (pnode->addr == addrNode) - { - fFound = true; - fConnected = true; - node.push_back(Pair("connected", pnode->fInbound ? "inbound" : "outbound")); - break; - } - } - if (!fFound) - node.push_back(Pair("connected", "false")); - addresses.push_back(node); + if (info.fConnected) { + UniValue address(UniValue::VOBJ); + address.push_back(Pair("address", info.resolvedAddress.ToString())); + address.push_back(Pair("connected", info.fInbound ? "inbound" : "outbound")); + addresses.push_back(address); } - obj.push_back(Pair("connected", fConnected)); obj.push_back(Pair("addresses", addresses)); ret.push_back(obj); } diff --git a/src/rpc/rawtransaction.cpp b/src/rpc/rawtransaction.cpp index 992914f88c..9723e394d6 100644 --- a/src/rpc/rawtransaction.cpp +++ b/src/rpc/rawtransaction.cpp @@ -388,8 +388,13 @@ UniValue createrawtransaction(const UniValue& params, bool fHelp) // set the sequence number if passed in the parameters object const UniValue& sequenceObj = find_value(o, "sequence"); - if (sequenceObj.isNum()) - nSequence = sequenceObj.get_int(); + if (sequenceObj.isNum()) { + int64_t seqNr64 = sequenceObj.get_int64(); + if (seqNr64 < 0 || seqNr64 > std::numeric_limits<uint32_t>::max()) + throw JSONRPCError(RPC_INVALID_PARAMETER, "Invalid parameter, sequence number is out of range"); + else + nSequence = (uint32_t)seqNr64; + } CTxIn in(COutPoint(txid, nOutput), CScript(), nSequence); diff --git a/src/serialize.h b/src/serialize.h index 5c2db9d332..378ed39074 100644 --- a/src/serialize.h +++ b/src/serialize.h @@ -373,6 +373,7 @@ I ReadVarInt(Stream& is) #define FLATDATA(obj) REF(CFlatData((char*)&(obj), (char*)&(obj) + sizeof(obj))) #define VARINT(obj) REF(WrapVarInt(REF(obj))) +#define COMPACTSIZE(obj) REF(CCompactSize(REF(obj))) #define LIMITED_STRING(obj,n) REF(LimitedString< n >(REF(obj))) /** @@ -443,6 +444,28 @@ public: } }; +class CCompactSize +{ +protected: + uint64_t &n; +public: + CCompactSize(uint64_t& nIn) : n(nIn) { } + + unsigned int GetSerializeSize(int, int) const { + return GetSizeOfCompactSize(n); + } + + template<typename Stream> + void Serialize(Stream &s, int, int) const { + WriteCompactSize<Stream>(s, n); + } + + template<typename Stream> + void Unserialize(Stream& s, int, int) { + n = ReadCompactSize<Stream>(s); + } +}; + template<size_t Limit> class LimitedString { diff --git a/src/test/DoS_tests.cpp b/src/test/DoS_tests.cpp index 4a373fc60b..93f7ae09da 100644 --- a/src/test/DoS_tests.cpp +++ b/src/test/DoS_tests.cpp @@ -162,7 +162,7 @@ BOOST_AUTO_TEST_CASE(DoS_mapOrphans) tx.vout.resize(1); tx.vout[0].nValue = 1*CENT; tx.vout[0].scriptPubKey = GetScriptForDestination(key.GetPubKey().GetID()); - tx.vin.resize(500); + tx.vin.resize(2777); for (unsigned int j = 0; j < tx.vin.size(); j++) { tx.vin[j].prevout.n = j; diff --git a/src/test/blockencodings_tests.cpp b/src/test/blockencodings_tests.cpp new file mode 100644 index 0000000000..3884bf3fe3 --- /dev/null +++ b/src/test/blockencodings_tests.cpp @@ -0,0 +1,315 @@ +// Copyright (c) 2011-2015 The Bitcoin Core developers +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include "blockencodings.h" +#include "consensus/merkle.h" +#include "chainparams.h" +#include "random.h" + +#include "test/test_bitcoin.h" + +#include <boost/test/unit_test.hpp> + +struct RegtestingSetup : public TestingSetup { + RegtestingSetup() : TestingSetup(CBaseChainParams::REGTEST) {} +}; + +BOOST_FIXTURE_TEST_SUITE(blockencodings_tests, RegtestingSetup) + +static CBlock BuildBlockTestCase() { + CBlock block; + CMutableTransaction tx; + tx.vin.resize(1); + tx.vin[0].scriptSig.resize(10); + tx.vout.resize(1); + tx.vout[0].nValue = 42; + + block.vtx.resize(3); + block.vtx[0] = tx; + block.nVersion = 42; + block.hashPrevBlock = GetRandHash(); + block.nBits = 0x207fffff; + + tx.vin[0].prevout.hash = GetRandHash(); + tx.vin[0].prevout.n = 0; + block.vtx[1] = tx; + + tx.vin.resize(10); + for (size_t i = 0; i < tx.vin.size(); i++) { + tx.vin[i].prevout.hash = GetRandHash(); + tx.vin[i].prevout.n = 0; + } + block.vtx[2] = tx; + + bool mutated; + block.hashMerkleRoot = BlockMerkleRoot(block, &mutated); + assert(!mutated); + while (!CheckProofOfWork(block.GetHash(), block.nBits, Params().GetConsensus())) ++block.nNonce; + return block; +} + +// Number of shared use_counts we expect for a tx we havent touched +// == 2 (mempool + our copy from the GetSharedTx call) +#define SHARED_TX_OFFSET 2 + +BOOST_AUTO_TEST_CASE(SimpleRoundTripTest) +{ + CTxMemPool pool(CFeeRate(0)); + TestMemPoolEntryHelper entry; + CBlock block(BuildBlockTestCase()); + + pool.addUnchecked(block.vtx[2].GetHash(), entry.FromTx(block.vtx[2])); + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 0); + + // Do a simple ShortTxIDs RT + { + CBlockHeaderAndShortTxIDs shortIDs(block); + + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << shortIDs; + + CBlockHeaderAndShortTxIDs shortIDs2; + stream >> shortIDs2; + + PartiallyDownloadedBlock partialBlock(&pool); + BOOST_CHECK(partialBlock.InitData(shortIDs2) == READ_STATUS_OK); + BOOST_CHECK( partialBlock.IsTxAvailable(0)); + BOOST_CHECK(!partialBlock.IsTxAvailable(1)); + BOOST_CHECK( partialBlock.IsTxAvailable(2)); + + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 1); + + std::list<CTransaction> removed; + pool.removeRecursive(block.vtx[2], removed); + BOOST_CHECK_EQUAL(removed.size(), 1); + + CBlock block2; + std::vector<CTransaction> vtx_missing; + BOOST_CHECK(partialBlock.FillBlock(block2, vtx_missing) == READ_STATUS_INVALID); // No transactions + + vtx_missing.push_back(block.vtx[2]); // Wrong transaction + partialBlock.FillBlock(block2, vtx_missing); // Current implementation doesn't check txn here, but don't require that + bool mutated; + BOOST_CHECK(block.hashMerkleRoot != BlockMerkleRoot(block2, &mutated)); + + vtx_missing[0] = block.vtx[1]; + CBlock block3; + BOOST_CHECK(partialBlock.FillBlock(block3, vtx_missing) == READ_STATUS_OK); + BOOST_CHECK_EQUAL(block.GetHash().ToString(), block3.GetHash().ToString()); + BOOST_CHECK_EQUAL(block.hashMerkleRoot.ToString(), BlockMerkleRoot(block3, &mutated).ToString()); + BOOST_CHECK(!mutated); + } +} + +class TestHeaderAndShortIDs { + // Utility to encode custom CBlockHeaderAndShortTxIDs +public: + CBlockHeader header; + uint64_t nonce; + std::vector<uint64_t> shorttxids; + std::vector<PrefilledTransaction> prefilledtxn; + + TestHeaderAndShortIDs(const CBlockHeaderAndShortTxIDs& orig) { + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << orig; + stream >> *this; + } + TestHeaderAndShortIDs(const CBlock& block) : + TestHeaderAndShortIDs(CBlockHeaderAndShortTxIDs(block)) {} + + uint64_t GetShortID(const uint256& txhash) const { + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << *this; + CBlockHeaderAndShortTxIDs base; + stream >> base; + return base.GetShortID(txhash); + } + + ADD_SERIALIZE_METHODS; + + template <typename Stream, typename Operation> + inline void SerializationOp(Stream& s, Operation ser_action, int nType, int nVersion) { + READWRITE(header); + READWRITE(nonce); + size_t shorttxids_size = shorttxids.size(); + READWRITE(VARINT(shorttxids_size)); + shorttxids.resize(shorttxids_size); + for (size_t i = 0; i < shorttxids.size(); i++) { + uint32_t lsb = shorttxids[i] & 0xffffffff; + uint16_t msb = (shorttxids[i] >> 32) & 0xffff; + READWRITE(lsb); + READWRITE(msb); + shorttxids[i] = (uint64_t(msb) << 32) | uint64_t(lsb); + } + READWRITE(prefilledtxn); + } +}; + +BOOST_AUTO_TEST_CASE(NonCoinbasePreforwardRTTest) +{ + CTxMemPool pool(CFeeRate(0)); + TestMemPoolEntryHelper entry; + CBlock block(BuildBlockTestCase()); + + pool.addUnchecked(block.vtx[2].GetHash(), entry.FromTx(block.vtx[2])); + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 0); + + // Test with pre-forwarding tx 1, but not coinbase + { + TestHeaderAndShortIDs shortIDs(block); + shortIDs.prefilledtxn.resize(1); + shortIDs.prefilledtxn[0] = {1, block.vtx[1]}; + shortIDs.shorttxids.resize(2); + shortIDs.shorttxids[0] = shortIDs.GetShortID(block.vtx[0].GetHash()); + shortIDs.shorttxids[1] = shortIDs.GetShortID(block.vtx[2].GetHash()); + + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << shortIDs; + + CBlockHeaderAndShortTxIDs shortIDs2; + stream >> shortIDs2; + + PartiallyDownloadedBlock partialBlock(&pool); + BOOST_CHECK(partialBlock.InitData(shortIDs2) == READ_STATUS_OK); + BOOST_CHECK(!partialBlock.IsTxAvailable(0)); + BOOST_CHECK( partialBlock.IsTxAvailable(1)); + BOOST_CHECK( partialBlock.IsTxAvailable(2)); + + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 1); + + CBlock block2; + std::vector<CTransaction> vtx_missing; + BOOST_CHECK(partialBlock.FillBlock(block2, vtx_missing) == READ_STATUS_INVALID); // No transactions + + vtx_missing.push_back(block.vtx[1]); // Wrong transaction + partialBlock.FillBlock(block2, vtx_missing); // Current implementation doesn't check txn here, but don't require that + bool mutated; + BOOST_CHECK(block.hashMerkleRoot != BlockMerkleRoot(block2, &mutated)); + + vtx_missing[0] = block.vtx[0]; + CBlock block3; + BOOST_CHECK(partialBlock.FillBlock(block3, vtx_missing) == READ_STATUS_OK); + BOOST_CHECK_EQUAL(block.GetHash().ToString(), block3.GetHash().ToString()); + BOOST_CHECK_EQUAL(block.hashMerkleRoot.ToString(), BlockMerkleRoot(block3, &mutated).ToString()); + BOOST_CHECK(!mutated); + + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 1); + } + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[2].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 0); +} + +BOOST_AUTO_TEST_CASE(SufficientPreforwardRTTest) +{ + CTxMemPool pool(CFeeRate(0)); + TestMemPoolEntryHelper entry; + CBlock block(BuildBlockTestCase()); + + pool.addUnchecked(block.vtx[1].GetHash(), entry.FromTx(block.vtx[1])); + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[1].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 0); + + // Test with pre-forwarding coinbase + tx 2 with tx 1 in mempool + { + TestHeaderAndShortIDs shortIDs(block); + shortIDs.prefilledtxn.resize(2); + shortIDs.prefilledtxn[0] = {0, block.vtx[0]}; + shortIDs.prefilledtxn[1] = {1, block.vtx[2]}; // id == 1 as it is 1 after index 1 + shortIDs.shorttxids.resize(1); + shortIDs.shorttxids[0] = shortIDs.GetShortID(block.vtx[1].GetHash()); + + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << shortIDs; + + CBlockHeaderAndShortTxIDs shortIDs2; + stream >> shortIDs2; + + PartiallyDownloadedBlock partialBlock(&pool); + BOOST_CHECK(partialBlock.InitData(shortIDs2) == READ_STATUS_OK); + BOOST_CHECK( partialBlock.IsTxAvailable(0)); + BOOST_CHECK( partialBlock.IsTxAvailable(1)); + BOOST_CHECK( partialBlock.IsTxAvailable(2)); + + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[1].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 1); + + CBlock block2; + std::vector<CTransaction> vtx_missing; + BOOST_CHECK(partialBlock.FillBlock(block2, vtx_missing) == READ_STATUS_OK); + BOOST_CHECK_EQUAL(block.GetHash().ToString(), block2.GetHash().ToString()); + bool mutated; + BOOST_CHECK_EQUAL(block.hashMerkleRoot.ToString(), BlockMerkleRoot(block2, &mutated).ToString()); + BOOST_CHECK(!mutated); + + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[1].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 1); + } + BOOST_CHECK_EQUAL(pool.mapTx.find(block.vtx[1].GetHash())->GetSharedTx().use_count(), SHARED_TX_OFFSET + 0); +} + +BOOST_AUTO_TEST_CASE(EmptyBlockRoundTripTest) +{ + CTxMemPool pool(CFeeRate(0)); + CMutableTransaction coinbase; + coinbase.vin.resize(1); + coinbase.vin[0].scriptSig.resize(10); + coinbase.vout.resize(1); + coinbase.vout[0].nValue = 42; + + CBlock block; + block.vtx.resize(1); + block.vtx[0] = coinbase; + block.nVersion = 42; + block.hashPrevBlock = GetRandHash(); + block.nBits = 0x207fffff; + + bool mutated; + block.hashMerkleRoot = BlockMerkleRoot(block, &mutated); + assert(!mutated); + while (!CheckProofOfWork(block.GetHash(), block.nBits, Params().GetConsensus())) ++block.nNonce; + + // Test simple header round-trip with only coinbase + { + CBlockHeaderAndShortTxIDs shortIDs(block); + + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << shortIDs; + + CBlockHeaderAndShortTxIDs shortIDs2; + stream >> shortIDs2; + + PartiallyDownloadedBlock partialBlock(&pool); + BOOST_CHECK(partialBlock.InitData(shortIDs2) == READ_STATUS_OK); + BOOST_CHECK(partialBlock.IsTxAvailable(0)); + + CBlock block2; + std::vector<CTransaction> vtx_missing; + BOOST_CHECK(partialBlock.FillBlock(block2, vtx_missing) == READ_STATUS_OK); + BOOST_CHECK_EQUAL(block.GetHash().ToString(), block2.GetHash().ToString()); + bool mutated; + BOOST_CHECK_EQUAL(block.hashMerkleRoot.ToString(), BlockMerkleRoot(block2, &mutated).ToString()); + BOOST_CHECK(!mutated); + } +} + +BOOST_AUTO_TEST_CASE(TransactionsRequestSerializationTest) { + BlockTransactionsRequest req1; + req1.blockhash = GetRandHash(); + req1.indexes.resize(4); + req1.indexes[0] = 0; + req1.indexes[1] = 1; + req1.indexes[2] = 3; + req1.indexes[3] = 4; + + CDataStream stream(SER_NETWORK, PROTOCOL_VERSION); + stream << req1; + + BlockTransactionsRequest req2; + stream >> req2; + + BOOST_CHECK_EQUAL(req1.blockhash.ToString(), req2.blockhash.ToString()); + BOOST_CHECK_EQUAL(req1.indexes.size(), req2.indexes.size()); + BOOST_CHECK_EQUAL(req1.indexes[0], req2.indexes[0]); + BOOST_CHECK_EQUAL(req1.indexes[1], req2.indexes[1]); + BOOST_CHECK_EQUAL(req1.indexes[2], req2.indexes[2]); + BOOST_CHECK_EQUAL(req1.indexes[3], req2.indexes[3]); +} + +BOOST_AUTO_TEST_SUITE_END() diff --git a/src/test/miner_tests.cpp b/src/test/miner_tests.cpp index 3fb7967881..ca8d6d2e05 100644 --- a/src/test/miner_tests.cpp +++ b/src/test/miner_tests.cpp @@ -71,6 +71,113 @@ bool TestSequenceLocks(const CTransaction &tx, int flags) return CheckSequenceLocks(tx, flags); } +// Test suite for ancestor feerate transaction selection. +// Implemented as an additional function, rather than a separate test case, +// to allow reusing the blockchain created in CreateNewBlock_validity. +// Note that this test assumes blockprioritysize is 0. +void TestPackageSelection(const CChainParams& chainparams, CScript scriptPubKey, std::vector<CTransaction *>& txFirst) +{ + // Test the ancestor feerate transaction selection. + TestMemPoolEntryHelper entry; + + // Test that a medium fee transaction will be selected after a higher fee + // rate package with a low fee rate parent. + CMutableTransaction tx; + tx.vin.resize(1); + tx.vin[0].scriptSig = CScript() << OP_1; + tx.vin[0].prevout.hash = txFirst[0]->GetHash(); + tx.vin[0].prevout.n = 0; + tx.vout.resize(1); + tx.vout[0].nValue = 5000000000LL - 1000; + // This tx has a low fee: 1000 satoshis + uint256 hashParentTx = tx.GetHash(); // save this txid for later use + mempool.addUnchecked(hashParentTx, entry.Fee(1000).Time(GetTime()).SpendsCoinbase(true).FromTx(tx)); + + // This tx has a medium fee: 10000 satoshis + tx.vin[0].prevout.hash = txFirst[1]->GetHash(); + tx.vout[0].nValue = 5000000000LL - 10000; + uint256 hashMediumFeeTx = tx.GetHash(); + mempool.addUnchecked(hashMediumFeeTx, entry.Fee(10000).Time(GetTime()).SpendsCoinbase(true).FromTx(tx)); + + // This tx has a high fee, but depends on the first transaction + tx.vin[0].prevout.hash = hashParentTx; + tx.vout[0].nValue = 5000000000LL - 1000 - 50000; // 50k satoshi fee + uint256 hashHighFeeTx = tx.GetHash(); + mempool.addUnchecked(hashHighFeeTx, entry.Fee(50000).Time(GetTime()).SpendsCoinbase(false).FromTx(tx)); + + CBlockTemplate *pblocktemplate = BlockAssembler(chainparams).CreateNewBlock(scriptPubKey); + BOOST_CHECK(pblocktemplate->block.vtx[1].GetHash() == hashParentTx); + BOOST_CHECK(pblocktemplate->block.vtx[2].GetHash() == hashHighFeeTx); + BOOST_CHECK(pblocktemplate->block.vtx[3].GetHash() == hashMediumFeeTx); + + // Test that a package below the min relay fee doesn't get included + tx.vin[0].prevout.hash = hashHighFeeTx; + tx.vout[0].nValue = 5000000000LL - 1000 - 50000; // 0 fee + uint256 hashFreeTx = tx.GetHash(); + mempool.addUnchecked(hashFreeTx, entry.Fee(0).FromTx(tx)); + size_t freeTxSize = ::GetSerializeSize(tx, SER_NETWORK, PROTOCOL_VERSION); + + // Calculate a fee on child transaction that will put the package just + // below the min relay fee (assuming 1 child tx of the same size). + CAmount feeToUse = minRelayTxFee.GetFee(2*freeTxSize) - 1; + + tx.vin[0].prevout.hash = hashFreeTx; + tx.vout[0].nValue = 5000000000LL - 1000 - 50000 - feeToUse; + uint256 hashLowFeeTx = tx.GetHash(); + mempool.addUnchecked(hashLowFeeTx, entry.Fee(feeToUse).FromTx(tx)); + pblocktemplate = BlockAssembler(chainparams).CreateNewBlock(scriptPubKey); + // Verify that the free tx and the low fee tx didn't get selected + for (size_t i=0; i<pblocktemplate->block.vtx.size(); ++i) { + BOOST_CHECK(pblocktemplate->block.vtx[i].GetHash() != hashFreeTx); + BOOST_CHECK(pblocktemplate->block.vtx[i].GetHash() != hashLowFeeTx); + } + + // Test that packages above the min relay fee do get included, even if one + // of the transactions is below the min relay fee + // Remove the low fee transaction and replace with a higher fee transaction + std::list<CTransaction> dummy; + mempool.removeRecursive(tx, dummy); + tx.vout[0].nValue -= 2; // Now we should be just over the min relay fee + hashLowFeeTx = tx.GetHash(); + mempool.addUnchecked(hashLowFeeTx, entry.Fee(feeToUse+2).FromTx(tx)); + pblocktemplate = BlockAssembler(chainparams).CreateNewBlock(scriptPubKey); + BOOST_CHECK(pblocktemplate->block.vtx[4].GetHash() == hashFreeTx); + BOOST_CHECK(pblocktemplate->block.vtx[5].GetHash() == hashLowFeeTx); + + // Test that transaction selection properly updates ancestor fee + // calculations as ancestor transactions get included in a block. + // Add a 0-fee transaction that has 2 outputs. + tx.vin[0].prevout.hash = txFirst[2]->GetHash(); + tx.vout.resize(2); + tx.vout[0].nValue = 5000000000LL - 100000000; + tx.vout[1].nValue = 100000000; // 1BTC output + uint256 hashFreeTx2 = tx.GetHash(); + mempool.addUnchecked(hashFreeTx2, entry.Fee(0).SpendsCoinbase(true).FromTx(tx)); + + // This tx can't be mined by itself + tx.vin[0].prevout.hash = hashFreeTx2; + tx.vout.resize(1); + feeToUse = minRelayTxFee.GetFee(freeTxSize); + tx.vout[0].nValue = 5000000000LL - 100000000 - feeToUse; + uint256 hashLowFeeTx2 = tx.GetHash(); + mempool.addUnchecked(hashLowFeeTx2, entry.Fee(feeToUse).SpendsCoinbase(false).FromTx(tx)); + pblocktemplate = BlockAssembler(chainparams).CreateNewBlock(scriptPubKey); + + // Verify that this tx isn't selected. + for (size_t i=0; i<pblocktemplate->block.vtx.size(); ++i) { + BOOST_CHECK(pblocktemplate->block.vtx[i].GetHash() != hashFreeTx2); + BOOST_CHECK(pblocktemplate->block.vtx[i].GetHash() != hashLowFeeTx2); + } + + // This tx will be mineable, and should cause hashLowFeeTx2 to be selected + // as well. + tx.vin[0].prevout.n = 1; + tx.vout[0].nValue = 100000000 - 10000; // 10k satoshi fee + mempool.addUnchecked(tx.GetHash(), entry.Fee(10000).FromTx(tx)); + pblocktemplate = BlockAssembler(chainparams).CreateNewBlock(scriptPubKey); + BOOST_CHECK(pblocktemplate->block.vtx[8].GetHash() == hashLowFeeTx2); +} + // NOTE: These tests rely on CreateNewBlock doing its own self-validation! BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) { @@ -385,6 +492,8 @@ BOOST_AUTO_TEST_CASE(CreateNewBlock_validity) SetMockTime(0); mempool.clear(); + TestPackageSelection(chainparams, scriptPubKey, txFirst); + BOOST_FOREACH(CTransaction *_tx, txFirst) delete _tx; diff --git a/src/test/test_bitcoin.cpp b/src/test/test_bitcoin.cpp index c68320ba8b..1f3b198800 100644 --- a/src/test/test_bitcoin.cpp +++ b/src/test/test_bitcoin.cpp @@ -55,6 +55,7 @@ TestingSetup::TestingSetup(const std::string& chainName) : BasicTestingSetup(cha pathTemp = GetTempPath() / strprintf("test_bitcoin_%lu_%i", (unsigned long)GetTime(), (int)(GetRand(100000))); boost::filesystem::create_directories(pathTemp); mapArgs["-datadir"] = pathTemp.string(); + mempool.setSanityCheck(1.0); pblocktree = new CBlockTreeDB(1 << 20, true); pcoinsdbview = new CCoinsViewDB(1 << 23, true); pcoinsTip = new CCoinsViewCache(pcoinsdbview); @@ -126,7 +127,11 @@ TestChain100Setup::~TestChain100Setup() CTxMemPoolEntry TestMemPoolEntryHelper::FromTx(CMutableTransaction &tx, CTxMemPool *pool) { CTransaction txn(tx); - bool hasNoDependencies = pool ? pool->HasNoInputsOf(tx) : hadNoDependencies; + return FromTx(txn, pool); +} + +CTxMemPoolEntry TestMemPoolEntryHelper::FromTx(CTransaction &txn, CTxMemPool *pool) { + bool hasNoDependencies = pool ? pool->HasNoInputsOf(txn) : hadNoDependencies; // Hack to assume either its completely dependent on other mempool txs or not at all CAmount inChainValue = hasNoDependencies ? txn.GetValueOut() : 0; diff --git a/src/test/test_bitcoin.h b/src/test/test_bitcoin.h index 57f66f6c6d..78b87e7109 100644 --- a/src/test/test_bitcoin.h +++ b/src/test/test_bitcoin.h @@ -78,6 +78,7 @@ struct TestMemPoolEntryHelper hadNoDependencies(false), spendsCoinbase(false), sigOpCount(1) { } CTxMemPoolEntry FromTx(CMutableTransaction &tx, CTxMemPool *pool = NULL); + CTxMemPoolEntry FromTx(CTransaction &tx, CTxMemPool *pool = NULL); // Change the default value TestMemPoolEntryHelper &Fee(CAmount _fee) { nFee = _fee; return *this; } diff --git a/src/txmempool.cpp b/src/txmempool.cpp index 205ffd6379..ead28546de 100644 --- a/src/txmempool.cpp +++ b/src/txmempool.cpp @@ -438,6 +438,9 @@ bool CTxMemPool::addUnchecked(const uint256& hash, const CTxMemPoolEntry &entry, totalTxSize += entry.GetTxSize(); minerPolicyEstimator->processTransaction(entry, fCurrentEstimate); + vTxHashes.emplace_back(hash, newit); + newit->vTxHashesIdx = vTxHashes.size() - 1; + return true; } @@ -447,6 +450,15 @@ void CTxMemPool::removeUnchecked(txiter it) BOOST_FOREACH(const CTxIn& txin, it->GetTx().vin) mapNextTx.erase(txin.prevout); + if (vTxHashes.size() > 1) { + vTxHashes[it->vTxHashesIdx] = std::move(vTxHashes.back()); + vTxHashes[it->vTxHashesIdx].second->vTxHashesIdx = it->vTxHashesIdx; + vTxHashes.pop_back(); + if (vTxHashes.size() * 2 < vTxHashes.capacity()) + vTxHashes.shrink_to_fit(); + } else + vTxHashes.clear(); + totalTxSize -= it->GetTxSize(); cachedInnerUsage -= it->DynamicMemoryUsage(); cachedInnerUsage -= memusage::DynamicUsage(mapLinks[it].parents) + memusage::DynamicUsage(mapLinks[it].children); @@ -965,7 +977,7 @@ bool CCoinsViewMemPool::HaveCoins(const uint256 &txid) const { size_t CTxMemPool::DynamicMemoryUsage() const { LOCK(cs); // Estimate the overhead of mapTx to be 15 pointers + an allocation, as no exact formula for boost::multi_index_contained is implemented. - return memusage::MallocUsage(sizeof(CTxMemPoolEntry) + 15 * sizeof(void*)) * mapTx.size() + memusage::DynamicUsage(mapNextTx) + memusage::DynamicUsage(mapDeltas) + memusage::DynamicUsage(mapLinks) + cachedInnerUsage; + return memusage::MallocUsage(sizeof(CTxMemPoolEntry) + 15 * sizeof(void*)) * mapTx.size() + memusage::DynamicUsage(mapNextTx) + memusage::DynamicUsage(mapDeltas) + memusage::DynamicUsage(mapLinks) + memusage::DynamicUsage(vTxHashes) + cachedInnerUsage; } void CTxMemPool::RemoveStaged(setEntries &stage, bool updateDescendants) { @@ -1075,7 +1087,7 @@ void CTxMemPool::TrimToSize(size_t sizelimit, std::vector<uint256>* pvNoSpendsRe unsigned nTxnRemoved = 0; CFeeRate maxFeeRateRemoved(0); - while (DynamicMemoryUsage() > sizelimit) { + while (!mapTx.empty() && DynamicMemoryUsage() > sizelimit) { indexed_transaction_set::index<descendant_score>::type::iterator it = mapTx.get<descendant_score>().begin(); // We set the new mempool min fee to the feerate of the removed set, plus the diff --git a/src/txmempool.h b/src/txmempool.h index f0e9b2e2c6..d6d0d72ff5 100644 --- a/src/txmempool.h +++ b/src/txmempool.h @@ -150,6 +150,8 @@ public: uint64_t GetSizeWithAncestors() const { return nSizeWithAncestors; } CAmount GetModFeesWithAncestors() const { return nModFeesWithAncestors; } unsigned int GetSigOpCountWithAncestors() const { return nSigOpCountWithAncestors; } + + mutable size_t vTxHashesIdx; //!< Index in mempool's vTxHashes }; // Helpers for modifying CTxMemPool::mapTx, which is a boost multi_index. @@ -457,7 +459,10 @@ public: mutable CCriticalSection cs; indexed_transaction_set mapTx; + typedef indexed_transaction_set::nth_index<0>::type::iterator txiter; + std::vector<std::pair<uint256, txiter> > vTxHashes; //!< All tx hashes/entries in mapTx, in random order + struct CompareIteratorByHash { bool operator()(const txiter &a, const txiter &b) const { return a->GetTx().GetHash() < b->GetTx().GetHash(); diff --git a/src/univalue/Makefile.am b/src/univalue/Makefile.am index 34fe9e3f13..6c1ec81e63 100644 --- a/src/univalue/Makefile.am +++ b/src/univalue/Makefile.am @@ -3,7 +3,7 @@ ACLOCAL_AMFLAGS = -I build-aux/m4 .INTERMEDIATE: $(GENBIN) include_HEADERS = include/univalue.h -noinst_HEADERS = lib/univalue_escapes.h +noinst_HEADERS = lib/univalue_escapes.h lib/univalue_utffilter.h lib_LTLIBRARIES = libunivalue.la @@ -73,6 +73,10 @@ TEST_FILES = \ $(TEST_DATA_DIR)/fail35.json \ $(TEST_DATA_DIR)/fail36.json \ $(TEST_DATA_DIR)/fail37.json \ + $(TEST_DATA_DIR)/fail38.json \ + $(TEST_DATA_DIR)/fail39.json \ + $(TEST_DATA_DIR)/fail40.json \ + $(TEST_DATA_DIR)/fail41.json \ $(TEST_DATA_DIR)/fail3.json \ $(TEST_DATA_DIR)/fail4.json \ $(TEST_DATA_DIR)/fail5.json \ @@ -83,6 +87,7 @@ TEST_FILES = \ $(TEST_DATA_DIR)/pass1.json \ $(TEST_DATA_DIR)/pass2.json \ $(TEST_DATA_DIR)/pass3.json \ - $(TEST_DATA_DIR)/round1.json + $(TEST_DATA_DIR)/round1.json \ + $(TEST_DATA_DIR)/round2.json EXTRA_DIST=$(TEST_FILES) $(GEN_SRCS) diff --git a/src/univalue/configure.ac b/src/univalue/configure.ac index 0515b632bd..93d3ba945d 100644 --- a/src/univalue/configure.ac +++ b/src/univalue/configure.ac @@ -1,7 +1,7 @@ m4_define([libunivalue_major_version], [1]) m4_define([libunivalue_minor_version], [1]) -m4_define([libunivalue_micro_version], [1]) -m4_define([libunivalue_interface_age], [1]) +m4_define([libunivalue_micro_version], [2]) +m4_define([libunivalue_interface_age], [2]) # If you need a modifier for the version number. # Normally empty, but can be used to make "fixup" releases. m4_define([libunivalue_extraversion], []) @@ -14,7 +14,7 @@ m4_define([libunivalue_age], [m4_eval(libunivalue_binary_age - libunivalue_inter m4_define([libunivalue_version], [libunivalue_major_version().libunivalue_minor_version().libunivalue_micro_version()libunivalue_extraversion()]) -AC_INIT([univalue], [1.0.1], +AC_INIT([univalue], [1.0.2], [http://github.com/jgarzik/univalue/]) dnl make the compilation flags quiet unless V=1 is used diff --git a/src/univalue/lib/univalue_read.cpp b/src/univalue/lib/univalue_read.cpp index c7516b9628..95bac6958d 100644 --- a/src/univalue/lib/univalue_read.cpp +++ b/src/univalue/lib/univalue_read.cpp @@ -6,6 +6,7 @@ #include <vector> #include <stdio.h> #include "univalue.h" +#include "univalue_utffilter.h" using namespace std; @@ -174,41 +175,31 @@ enum jtokentype getJsonToken(string& tokenVal, unsigned int& consumed, raw++; // skip " string valStr; + JSONUTF8StringFilter writer(valStr); while (*raw) { - if (*raw < 0x20) + if ((unsigned char)*raw < 0x20) return JTOK_ERR; else if (*raw == '\\') { raw++; // skip backslash switch (*raw) { - case '"': valStr += "\""; break; - case '\\': valStr += "\\"; break; - case '/': valStr += "/"; break; - case 'b': valStr += "\b"; break; - case 'f': valStr += "\f"; break; - case 'n': valStr += "\n"; break; - case 'r': valStr += "\r"; break; - case 't': valStr += "\t"; break; + case '"': writer.push_back('\"'); break; + case '\\': writer.push_back('\\'); break; + case '/': writer.push_back('/'); break; + case 'b': writer.push_back('\b'); break; + case 'f': writer.push_back('\f'); break; + case 'n': writer.push_back('\n'); break; + case 'r': writer.push_back('\r'); break; + case 't': writer.push_back('\t'); break; case 'u': { unsigned int codepoint; if (hatoui(raw + 1, raw + 1 + 4, codepoint) != raw + 1 + 4) return JTOK_ERR; - - if (codepoint <= 0x7f) - valStr.push_back((char)codepoint); - else if (codepoint <= 0x7FF) { - valStr.push_back((char)(0xC0 | (codepoint >> 6))); - valStr.push_back((char)(0x80 | (codepoint & 0x3F))); - } else if (codepoint <= 0xFFFF) { - valStr.push_back((char)(0xE0 | (codepoint >> 12))); - valStr.push_back((char)(0x80 | ((codepoint >> 6) & 0x3F))); - valStr.push_back((char)(0x80 | (codepoint & 0x3F))); - } - + writer.push_back_u(codepoint); raw += 4; break; } @@ -226,11 +217,13 @@ enum jtokentype getJsonToken(string& tokenVal, unsigned int& consumed, } else { - valStr += *raw; + writer.push_back(*raw); raw++; } } + if (!writer.finalize()) + return JTOK_ERR; tokenVal = valStr; consumed = (raw - rawStart); return JTOK_STRING; diff --git a/src/univalue/lib/univalue_utffilter.h b/src/univalue/lib/univalue_utffilter.h new file mode 100644 index 0000000000..0e330dce9c --- /dev/null +++ b/src/univalue/lib/univalue_utffilter.h @@ -0,0 +1,119 @@ +// Copyright 2016 Wladimir J. van der Laan +// Distributed under the MIT software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. +#ifndef UNIVALUE_UTFFILTER_H +#define UNIVALUE_UTFFILTER_H + +#include <string> + +/** + * Filter that generates and validates UTF-8, as well as collates UTF-16 + * surrogate pairs as specified in RFC4627. + */ +class JSONUTF8StringFilter +{ +public: + JSONUTF8StringFilter(std::string &s): + str(s), is_valid(true), codepoint(0), state(0), surpair(0) + { + } + // Write single 8-bit char (may be part of UTF-8 sequence) + void push_back(unsigned char ch) + { + if (state == 0) { + if (ch < 0x80) // 7-bit ASCII, fast direct pass-through + str.push_back(ch); + else if (ch < 0xc0) // Mid-sequence character, invalid in this state + is_valid = false; + else if (ch < 0xe0) { // Start of 2-byte sequence + codepoint = (ch & 0x1f) << 6; + state = 6; + } else if (ch < 0xf0) { // Start of 3-byte sequence + codepoint = (ch & 0x0f) << 12; + state = 12; + } else if (ch < 0xf8) { // Start of 4-byte sequence + codepoint = (ch & 0x07) << 18; + state = 18; + } else // Reserved, invalid + is_valid = false; + } else { + if ((ch & 0xc0) != 0x80) // Not a continuation, invalid + is_valid = false; + state -= 6; + codepoint |= (ch & 0x3f) << state; + if (state == 0) + push_back_u(codepoint); + } + } + // Write codepoint directly, possibly collating surrogate pairs + void push_back_u(unsigned int codepoint) + { + if (state) // Only accept full codepoints in open state + is_valid = false; + if (codepoint >= 0xD800 && codepoint < 0xDC00) { // First half of surrogate pair + if (surpair) // Two subsequent surrogate pair openers - fail + is_valid = false; + else + surpair = codepoint; + } else if (codepoint >= 0xDC00 && codepoint < 0xE000) { // Second half of surrogate pair + if (surpair) { // Open surrogate pair, expect second half + // Compute code point from UTF-16 surrogate pair + append_codepoint(0x10000 | ((surpair - 0xD800)<<10) | (codepoint - 0xDC00)); + surpair = 0; + } else // Second half doesn't follow a first half - fail + is_valid = false; + } else { + if (surpair) // First half of surrogate pair not followed by second - fail + is_valid = false; + else + append_codepoint(codepoint); + } + } + // Check that we're in a state where the string can be ended + // No open sequences, no open surrogate pairs, etc + bool finalize() + { + if (state || surpair) + is_valid = false; + return is_valid; + } +private: + std::string &str; + bool is_valid; + // Current UTF-8 decoding state + unsigned int codepoint; + int state; // Top bit to be filled in for next UTF-8 byte, or 0 + + // Keep track of the following state to handle the following section of + // RFC4627: + // + // To escape an extended character that is not in the Basic Multilingual + // Plane, the character is represented as a twelve-character sequence, + // encoding the UTF-16 surrogate pair. So, for example, a string + // containing only the G clef character (U+1D11E) may be represented as + // "\uD834\uDD1E". + // + // Two subsequent \u.... may have to be replaced with one actual codepoint. + unsigned int surpair; // First half of open UTF-16 surrogate pair, or 0 + + void append_codepoint(unsigned int codepoint) + { + if (codepoint <= 0x7f) + str.push_back((char)codepoint); + else if (codepoint <= 0x7FF) { + str.push_back((char)(0xC0 | (codepoint >> 6))); + str.push_back((char)(0x80 | (codepoint & 0x3F))); + } else if (codepoint <= 0xFFFF) { + str.push_back((char)(0xE0 | (codepoint >> 12))); + str.push_back((char)(0x80 | ((codepoint >> 6) & 0x3F))); + str.push_back((char)(0x80 | (codepoint & 0x3F))); + } else if (codepoint <= 0x1FFFFF) { + str.push_back((char)(0xF0 | (codepoint >> 18))); + str.push_back((char)(0x80 | ((codepoint >> 12) & 0x3F))); + str.push_back((char)(0x80 | ((codepoint >> 6) & 0x3F))); + str.push_back((char)(0x80 | (codepoint & 0x3F))); + } + } +}; + +#endif diff --git a/src/univalue/lib/univalue_write.cpp b/src/univalue/lib/univalue_write.cpp index ceb4cc9166..cfbdad3284 100644 --- a/src/univalue/lib/univalue_write.cpp +++ b/src/univalue/lib/univalue_write.cpp @@ -8,8 +8,6 @@ #include "univalue.h" #include "univalue_escapes.h" -// TODO: Using UTF8 - using namespace std; static string json_escape(const string& inS) @@ -23,15 +21,8 @@ static string json_escape(const string& inS) if (escStr) outS += escStr; - - else if (ch < 0x80) + else outS += ch; - - else { // TODO handle UTF-8 properly - char tmpesc[16]; - sprintf(tmpesc, "\\u%04x", ch); - outS += tmpesc; - } } return outS; diff --git a/src/univalue/test/fail38.json b/src/univalue/test/fail38.json new file mode 100644 index 0000000000..b245e2e46c --- /dev/null +++ b/src/univalue/test/fail38.json @@ -0,0 +1 @@ +["\ud834"] diff --git a/src/univalue/test/fail39.json b/src/univalue/test/fail39.json new file mode 100644 index 0000000000..7c9e263f27 --- /dev/null +++ b/src/univalue/test/fail39.json @@ -0,0 +1 @@ +["\udd61"] diff --git a/src/univalue/test/fail40.json b/src/univalue/test/fail40.json new file mode 100644 index 0000000000..664dc9e245 --- /dev/null +++ b/src/univalue/test/fail40.json @@ -0,0 +1 @@ +["
ก"]
\ No newline at end of file diff --git a/src/univalue/test/fail41.json b/src/univalue/test/fail41.json new file mode 100644 index 0000000000..0de342a2b5 --- /dev/null +++ b/src/univalue/test/fail41.json @@ -0,0 +1 @@ +["๐
"]
\ No newline at end of file diff --git a/src/univalue/test/round2.json b/src/univalue/test/round2.json new file mode 100644 index 0000000000..b766cccc68 --- /dev/null +++ b/src/univalue/test/round2.json @@ -0,0 +1 @@ +["aยงโ ๐๐
ก"] diff --git a/src/univalue/test/unitester.cpp b/src/univalue/test/unitester.cpp index 5a052fe92c..05f3842cd1 100644 --- a/src/univalue/test/unitester.cpp +++ b/src/univalue/test/unitester.cpp @@ -22,6 +22,7 @@ string srcdir(JSON_TEST_SRC); static bool test_failed = false; #define d_assert(expr) { if (!(expr)) { test_failed = true; fprintf(stderr, "%s failed\n", filename.c_str()); } } +#define f_assert(expr) { if (!(expr)) { test_failed = true; fprintf(stderr, "%s failed\n", __func__); } } static std::string rtrim(std::string s) { @@ -108,6 +109,10 @@ static const char *filenames[] = { "fail35.json", "fail36.json", "fail37.json", + "fail38.json", // invalid unicode: only first half of surrogate pair + "fail39.json", // invalid unicode: only second half of surrogate pair + "fail40.json", // invalid unicode: broken UTF-8 + "fail41.json", // invalid unicode: unfinished UTF-8 "fail3.json", "fail4.json", // extra comma "fail5.json", @@ -119,14 +124,40 @@ static const char *filenames[] = { "pass2.json", "pass3.json", "round1.json", // round-trip test + "round2.json", // unicode }; +// Test \u handling +void unescape_unicode_test() +{ + UniValue val; + bool testResult; + // Escaped ASCII (quote) + testResult = val.read("[\"\\u0022\"]"); + f_assert(testResult); + f_assert(val[0].get_str() == "\""); + // Escaped Basic Plane character, two-byte UTF-8 + testResult = val.read("[\"\\u0191\"]"); + f_assert(testResult); + f_assert(val[0].get_str() == "\xc6\x91"); + // Escaped Basic Plane character, three-byte UTF-8 + testResult = val.read("[\"\\u2191\"]"); + f_assert(testResult); + f_assert(val[0].get_str() == "\xe2\x86\x91"); + // Escaped Supplementary Plane character U+1d161 + testResult = val.read("[\"\\ud834\\udd61\"]"); + f_assert(testResult); + f_assert(val[0].get_str() == "\xf0\x9d\x85\xa1"); +} + int main (int argc, char *argv[]) { for (unsigned int fidx = 0; fidx < ARRAY_SIZE(filenames); fidx++) { runtest_file(filenames[fidx]); } + unescape_unicode_test(); + return test_failed ? 1 : 0; } diff --git a/src/version.h b/src/version.h index 0e1d8a63ce..68ccd6d378 100644 --- a/src/version.h +++ b/src/version.h @@ -9,7 +9,7 @@ * network protocol versioning */ -static const int PROTOCOL_VERSION = 70013; +static const int PROTOCOL_VERSION = 70014; //! initial proto version, to be increased after version/verack negotiation static const int INIT_PROTO_VERSION = 209; @@ -39,4 +39,7 @@ static const int SENDHEADERS_VERSION = 70012; //! "feefilter" tells peers to filter invs to you by fee starts with this version static const int FEEFILTER_VERSION = 70013; +//! shord-id-based block download starts with this version +static const int SHORT_IDS_BLOCKS_VERSION = 70014; + #endif // BITCOIN_VERSION_H diff --git a/src/wallet/rpcdump.cpp b/src/wallet/rpcdump.cpp index 14c2e31d95..d55cc68dc0 100644 --- a/src/wallet/rpcdump.cpp +++ b/src/wallet/rpcdump.cpp @@ -167,6 +167,11 @@ void ImportScript(const CScript& script, const string& strLabel, bool isRedeemSc if (!pwalletMain->HaveCScript(script) && !pwalletMain->AddCScript(script)) throw JSONRPCError(RPC_WALLET_ERROR, "Error adding p2sh redeemScript to wallet"); ImportAddress(CBitcoinAddress(CScriptID(script)), strLabel); + } else { + CTxDestination destination; + if (ExtractDestination(script, destination)) { + pwalletMain->SetAddressBook(destination, strLabel, "receive"); + } } } @@ -195,6 +200,8 @@ UniValue importaddress(const UniValue& params, bool fHelp) "4. p2sh (boolean, optional, default=false) Add the P2SH version of the script as well\n" "\nNote: This call can take minutes to complete if rescan is true.\n" "If you have the full public key, you should call importpubkey instead of this.\n" + "\nNote: If you import a non-standard raw script in hex form, outputs sending to it will be treated\n" + "as change, and not show up in many RPCs.\n" "\nExamples:\n" "\nImport a script with rescan\n" + HelpExampleCli("importaddress", "\"myscript\"") + diff --git a/src/wallet/test/wallet_tests.cpp b/src/wallet/test/wallet_tests.cpp index 387b223589..0a4f06ba88 100644 --- a/src/wallet/test/wallet_tests.cpp +++ b/src/wallet/test/wallet_tests.cpp @@ -27,7 +27,7 @@ typedef set<pair<const CWalletTx*,unsigned int> > CoinSet; BOOST_FIXTURE_TEST_SUITE(wallet_tests, WalletTestingSetup) -static CWallet wallet; +static const CWallet wallet; static vector<COutput> vCoins; static void add_coin(const CAmount& nValue, int nAge = 6*24, bool fIsFromMe = false, int nInput=0) @@ -188,11 +188,11 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) // empty the wallet and start again, now with fractions of a cent, to test small change avoidance empty_wallet(); - add_coin(0.1*MIN_CHANGE); - add_coin(0.2*MIN_CHANGE); - add_coin(0.3*MIN_CHANGE); - add_coin(0.4*MIN_CHANGE); - add_coin(0.5*MIN_CHANGE); + add_coin(MIN_CHANGE * 1 / 10); + add_coin(MIN_CHANGE * 2 / 10); + add_coin(MIN_CHANGE * 3 / 10); + add_coin(MIN_CHANGE * 4 / 10); + add_coin(MIN_CHANGE * 5 / 10); // try making 1 * MIN_CHANGE from the 1.5 * MIN_CHANGE // we'll get change smaller than MIN_CHANGE whatever happens, so can expect MIN_CHANGE exactly @@ -207,8 +207,8 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) BOOST_CHECK_EQUAL(nValueRet, 1 * MIN_CHANGE); // we should get the exact amount // if we add more small coins: - add_coin(0.6*MIN_CHANGE); - add_coin(0.7*MIN_CHANGE); + add_coin(MIN_CHANGE * 6 / 10); + add_coin(MIN_CHANGE * 7 / 10); // and try again to make 1.0 * MIN_CHANGE BOOST_CHECK( wallet.SelectCoinsMinConf(1 * MIN_CHANGE, 1, 1, vCoins, setCoinsRet, nValueRet)); @@ -229,9 +229,9 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) // sometimes it will fail, and so we use the next biggest coin: empty_wallet(); - add_coin(0.5 * MIN_CHANGE); - add_coin(0.6 * MIN_CHANGE); - add_coin(0.7 * MIN_CHANGE); + add_coin(MIN_CHANGE * 5 / 10); + add_coin(MIN_CHANGE * 6 / 10); + add_coin(MIN_CHANGE * 7 / 10); add_coin(1111 * MIN_CHANGE); BOOST_CHECK( wallet.SelectCoinsMinConf(1 * MIN_CHANGE, 1, 1, vCoins, setCoinsRet, nValueRet)); BOOST_CHECK_EQUAL(nValueRet, 1111 * MIN_CHANGE); // we get the bigger coin @@ -239,9 +239,9 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) // but sometimes it's possible, and we use an exact subset (0.4 + 0.6 = 1.0) empty_wallet(); - add_coin(0.4 * MIN_CHANGE); - add_coin(0.6 * MIN_CHANGE); - add_coin(0.8 * MIN_CHANGE); + add_coin(MIN_CHANGE * 4 / 10); + add_coin(MIN_CHANGE * 6 / 10); + add_coin(MIN_CHANGE * 8 / 10); add_coin(1111 * MIN_CHANGE); BOOST_CHECK( wallet.SelectCoinsMinConf(MIN_CHANGE, 1, 1, vCoins, setCoinsRet, nValueRet)); BOOST_CHECK_EQUAL(nValueRet, MIN_CHANGE); // we should get the exact amount @@ -249,17 +249,17 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) // test avoiding small change empty_wallet(); - add_coin(0.05 * MIN_CHANGE); - add_coin(1 * MIN_CHANGE); - add_coin(100 * MIN_CHANGE); + add_coin(MIN_CHANGE * 5 / 100); + add_coin(MIN_CHANGE * 1); + add_coin(MIN_CHANGE * 100); // trying to make 100.01 from these three coins - BOOST_CHECK( wallet.SelectCoinsMinConf(100.01 * MIN_CHANGE, 1, 1, vCoins, setCoinsRet, nValueRet)); - BOOST_CHECK_EQUAL(nValueRet, 101.05 * MIN_CHANGE); // we should get all coins + BOOST_CHECK(wallet.SelectCoinsMinConf(MIN_CHANGE * 10001 / 100, 1, 1, vCoins, setCoinsRet, nValueRet)); + BOOST_CHECK_EQUAL(nValueRet, MIN_CHANGE * 10105 / 100); // we should get all coins BOOST_CHECK_EQUAL(setCoinsRet.size(), 3U); // but if we try to make 99.9, we should take the bigger of the two small coins to avoid small change - BOOST_CHECK( wallet.SelectCoinsMinConf(99.9 * MIN_CHANGE, 1, 1, vCoins, setCoinsRet, nValueRet)); + BOOST_CHECK(wallet.SelectCoinsMinConf(MIN_CHANGE * 9990 / 100, 1, 1, vCoins, setCoinsRet, nValueRet)); BOOST_CHECK_EQUAL(nValueRet, 101 * MIN_CHANGE); BOOST_CHECK_EQUAL(setCoinsRet.size(), 2U); @@ -310,7 +310,11 @@ BOOST_AUTO_TEST_CASE(coin_selection_tests) // add 75 cents in small change. not enough to make 90 cents, // then try making 90 cents. there are multiple competing "smallest bigger" coins, // one of which should be picked at random - add_coin( 5*CENT); add_coin(10*CENT); add_coin(15*CENT); add_coin(20*CENT); add_coin(25*CENT); + add_coin(5 * CENT); + add_coin(10 * CENT); + add_coin(15 * CENT); + add_coin(20 * CENT); + add_coin(25 * CENT); fails = 0; for (int i = 0; i < RANDOM_REPEATS; i++) diff --git a/src/wallet/wallet.cpp b/src/wallet/wallet.cpp index 723b2eceff..ba5f92a987 100644 --- a/src/wallet/wallet.cpp +++ b/src/wallet/wallet.cpp @@ -3209,7 +3209,7 @@ std::string CWallet::GetWalletHelpString(bool showDebug) strUsage += HelpMessageOpt("-sendfreetransactions", strprintf(_("Send transactions as zero-fee transactions if possible (default: %u)"), DEFAULT_SEND_FREE_TRANSACTIONS)); strUsage += HelpMessageOpt("-spendzeroconfchange", strprintf(_("Spend unconfirmed change when sending transactions (default: %u)"), DEFAULT_SPEND_ZEROCONF_CHANGE)); strUsage += HelpMessageOpt("-txconfirmtarget=<n>", strprintf(_("If paytxfee is not set, include enough fee so transactions begin confirmation on average within n blocks (default: %u)"), DEFAULT_TX_CONFIRM_TARGET)); - strUsage += HelpMessageOpt("-usehd", _("Use hierarchical deterministic key generation (HD) after bip32. Only has effect during wallet creation/first start") + " " + strprintf(_("(default: %u)"), DEFAULT_USE_HD_WALLET)); + strUsage += HelpMessageOpt("-usehd", _("Use hierarchical deterministic key generation (HD) after BIP32. Only has effect during wallet creation/first start") + " " + strprintf(_("(default: %u)"), DEFAULT_USE_HD_WALLET)); strUsage += HelpMessageOpt("-upgradewallet", _("Upgrade wallet to latest format on startup")); strUsage += HelpMessageOpt("-wallet=<file>", _("Specify wallet file (within data directory)") + " " + strprintf(_("(default: %s)"), DEFAULT_WALLET_DAT)); strUsage += HelpMessageOpt("-walletbroadcast", _("Make the wallet broadcast transactions") + " " + strprintf(_("(default: %u)"), DEFAULT_WALLETBROADCAST)); |