diff options
47 files changed, 2198 insertions, 1504 deletions
diff --git a/configure.ac b/configure.ac index 45cd023bb1..3e508571e9 100644 --- a/configure.ac +++ b/configure.ac @@ -108,6 +108,12 @@ AC_ARG_ENABLE([lcov], [use_lcov=yes], [use_lcov=no]) +AC_ARG_ENABLE([glibc-back-compat], + [AS_HELP_STRING([--enable-glibc-back-compat], + [enable backwards compatibility with glibc and libstdc++])], + [use_glibc_compat=$enableval], + [use_glibc_compat=no]) + AC_ARG_WITH([protoc-bindir],[AS_HELP_STRING([--with-protoc-bindir=BIN_DIR],[specify protoc bin path])], [protoc_bin_path=$withval], []) @@ -319,6 +325,21 @@ fi AX_CHECK_LINK_FLAG([[-Wl,--large-address-aware]], [LDFLAGS="$LDFLAGS -Wl,--large-address-aware"]) +if test x$use_glibc_compat != xno; then + + #__fdelt_chk's params and return type have changed from long unsigned int to long int. + # See which one is present here. + AC_MSG_CHECKING(__fdelt_chk type) + AC_TRY_COMPILE([#define __USE_FORTIFY_LEVEL 2 + #include <sys/select.h> + extern "C" long unsigned int __fdelt_warn(long unsigned int);],[], + [ fdelt_type="long unsigned int"], + [ fdelt_type="long int"]) + AC_MSG_RESULT($fdelt_type) + AC_DEFINE_UNQUOTED(FDELT_TYPE, $fdelt_type,[parameter and return value type for __fdelt_chk]) + +fi + if test x$use_hardening != xno; then AX_CHECK_COMPILE_FLAG([-Wstack-protector],[HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -Wstack-protector"]) AX_CHECK_COMPILE_FLAG([-fstack-protector-all],[HARDENED_CXXFLAGS="$HARDENED_CXXFLAGS -fstack-protector-all"]) @@ -691,6 +712,7 @@ AM_CONDITIONAL([USE_QRCODE], [test x$use_qr = xyes]) AM_CONDITIONAL([USE_LCOV],[test x$use_lcov == xyes]) AM_CONDITIONAL([USE_COMPARISON_TOOL],[test x$use_comparison_tool != xno]) AM_CONDITIONAL([USE_COMPARISON_TOOL_REORG_TESTS],[test x$use_comparison_tool_reorg_test != xno]) +AM_CONDITIONAL([GLIBC_BACK_COMPAT],[test x$use_glibc_compat = xyes]) AC_DEFINE(CLIENT_VERSION_MAJOR, _CLIENT_VERSION_MAJOR, [Major version]) AC_DEFINE(CLIENT_VERSION_MINOR, _CLIENT_VERSION_MINOR, [Minor version]) diff --git a/contrib/README.md b/contrib/README.md index cd0dd3b023..92d0a343db 100644 --- a/contrib/README.md +++ b/contrib/README.md @@ -1,22 +1,36 @@ -Python Tools +Wallet Tools --------------------- ### [BitRPC](/contrib/bitrpc) ### Allows for sending of all standard Bitcoin commands via RPC rather than as command line args. +### [SpendFrom](/contrib/spendfrom) ### + +Use the raw transactions API to send coins received on a particular +address (or addresses). + +Repository Tools +--------------------- + +### [Developer tools](/contrib/devtools) ### +Specific tools for developers working on this repository. +Contains the script `github-merge.sh` for merging github pull requests securely and signing them using GPG. + +### [Linearize](/contrib/linearize) ### +Construct a linear, no-fork, best version of the blockchain. + ### [PyMiner](/contrib/pyminer) ### This is a 'getwork' CPU mining client for Bitcoin. It is pure-python, and therefore very, very slow. The purpose is to provide a reference implementation of a miner, for study. -### [SpendFrom](/contrib/spendfrom) ### +### [Qos](/contrib/qos) ### -Use the raw transactions API to send coins received on a particular -address (or addresses). +A Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Bitcoin network. This means one can have an always-on bitcoind instance running, and another local bitcoind/bitcoin-qt instance which connects to this node and receives blocks from it. -### WalletTools -Removed. Please see [/contrib/bitrpc](/contrib/bitrpc). +### [Seeds](/contrib/seeds) ### +Utility to generate the pnSeed[] array that is compiled into the client. -Repository Tools +Build Tools and Keys --------------------- ### [Debian](/contrib/debian) ### @@ -29,18 +43,11 @@ Gavin's notes on getting gitian builds up and running using KVM. ### [Gitian-downloader](/contrib/gitian-downloader) Various PGP files of core developers. -### [Linearize](/contrib/linearize) ### -Construct a linear, no-fork, best version of the blockchain. - ### [MacDeploy](/contrib/macdeploy) ### Scripts and notes for Mac builds. -### [Qos](/contrib/qos) ### - -A Linux bash script that will set up tc to limit the outgoing bandwidth for connections to the Bitcoin network. This means one can have an always-on bitcoind instance running, and another local bitcoind/bitcoin-qt instance which connects to this node and receives blocks from it. - -### [Seeds](/contrib/seeds) ### -Utility to generate the pnSeed[] array that is compiled into the client. +Test and Verify Tools +--------------------- ### [TestGen](/contrib/testgen) ### Utilities to generate test vectors for the data-driven Bitcoin tests. @@ -51,8 +58,3 @@ tests each pull and when master is tested using jenkins. ### [Verify SF Binaries](/contrib/verifysfbinaries) ### This script attempts to download and verify the signature file SHA256SUMS.asc from SourceForge. - -### [Developer tools](/contrib/devtools) ### -Specific tools for developers working on this repository. -Contains the script `github-merge.sh` for merging github pull requests securely and signing them using GPG. - diff --git a/contrib/bitrpc/bitrpc.py b/contrib/bitrpc/bitrpc.py index a840bc2020..a84d7e34dd 100644 --- a/contrib/bitrpc/bitrpc.py +++ b/contrib/bitrpc/bitrpc.py @@ -1,6 +1,7 @@ from jsonrpc import ServiceProxy import sys import string +import getpass # ===== BEGIN USER SETTINGS ===== # if you do not set these you will be prompted for a password for every command @@ -302,7 +303,7 @@ elif cmd == "validateaddress": elif cmd == "walletpassphrase": try: - pwd = raw_input("Enter wallet passphrase: ") + pwd = getpass.getpass(prompt="Enter wallet passphrase: ") access.walletpassphrase(pwd, 60) print "\n---Wallet unlocked---\n" except: @@ -310,8 +311,8 @@ elif cmd == "walletpassphrase": elif cmd == "walletpassphrasechange": try: - pwd = raw_input("Enter old wallet passphrase: ") - pwd2 = raw_input("Enter new wallet passphrase: ") + pwd = getpass.getpass(prompt="Enter old wallet passphrase: ") + pwd2 = getpass.getpass(prompt="Enter new wallet passphrase: ") access.walletpassphrasechange(pwd, pwd2) print print "\n---Passphrase changed---\n" diff --git a/contrib/debian/bitcoin-qt.install b/contrib/debian/bitcoin-qt.install index 59cacb0e96..e0b32373be 100644 --- a/contrib/debian/bitcoin-qt.install +++ b/contrib/debian/bitcoin-qt.install @@ -1,4 +1,4 @@ -bitcoin-qt usr/bin +usr/local/bin/bitcoin-qt usr/bin share/pixmaps/bitcoin32.xpm usr/share/pixmaps share/pixmaps/bitcoin16.xpm usr/share/pixmaps share/pixmaps/bitcoin128.png usr/share/pixmaps diff --git a/contrib/debian/bitcoind.install b/contrib/debian/bitcoind.install index 7bf746006c..798ea851f6 100644 --- a/contrib/debian/bitcoind.install +++ b/contrib/debian/bitcoind.install @@ -1 +1,2 @@ -src/bitcoind usr/bin +usr/local/bin/bitcoind usr/bin +usr/local/bin/bitcoin-cli usr/bin diff --git a/contrib/debian/changelog b/contrib/debian/changelog index 95b9ad31a3..4f22567f85 100644 --- a/contrib/debian/changelog +++ b/contrib/debian/changelog @@ -1,3 +1,16 @@ +bitcoin (0.9.1-precise1) precise; urgency=medium + + * New upstream release. + * Backport pull #4019 + + -- Matt Corallo <matt@bluematt.me> Sat, 19 Apr 2014 17:29:00 -0400 + +bitcoin (0.9.0-precise1) precise; urgency=medium + + * New upstream release. + + -- Matt Corallo <matt@bluematt.me> Thu, 20 Mar 2014 13:10:00 -0400 + bitcoin (0.8.6-precise1) precise; urgency=medium * New upstream release. diff --git a/contrib/debian/control b/contrib/debian/control index dd167ef53d..9e006a7070 100644 --- a/contrib/debian/control +++ b/contrib/debian/control @@ -5,6 +5,7 @@ Maintainer: Jonas Smedegaard <dr@jones.dk> Uploaders: Micah Anderson <micah@debian.org> Build-Depends: debhelper, devscripts, + automake, bash-completion, libboost-system-dev (>> 1.35) | libboost-system1.35-dev, libdb4.8++-dev, @@ -17,7 +18,8 @@ Build-Depends: debhelper, libboost-test-dev (>> 1.35) | libboost-test1.35-dev, qt4-qmake, libqt4-dev, - libqrencode-dev + libqrencode-dev, + libprotobuf-dev, protobuf-compiler Standards-Version: 3.9.2 Homepage: http://www.bitcoin.org/ Vcs-Git: git://github.com/bitcoin/bitcoin.git @@ -34,7 +36,7 @@ Description: peer-to-peer network based digital currency - daemon check for double-spending. . Full transaction history is stored locally at each client. This - requires 2+ GB of space, slowly growing. + requires 20+ GB of space, slowly growing. . This package provides bitcoind, a combined daemon and CLI tool to interact with the daemon. @@ -50,6 +52,6 @@ Description: peer-to-peer network based digital currency - Qt GUI check for double-spending. . Full transaction history is stored locally at each client. This - requires 2+ GB of space, slowly growing. + requires 20+ GB of space, slowly growing. . This package provides Bitcoin-Qt, a GUI for Bitcoin based on Qt. diff --git a/contrib/debian/rules b/contrib/debian/rules index 98bb2bba1c..52b357cf01 100755 --- a/contrib/debian/rules +++ b/contrib/debian/rules @@ -11,23 +11,14 @@ DEB_INSTALL_MANPAGES_bitcoind += debian/manpages/* %: dh --with bash-completion $@ -override_dh_auto_build: - cd src; $(MAKE) -f makefile.unix bitcoind - $(MAKE) - override_dh_auto_clean: - if [ -f Makefile ]; then $(MAKE) clean; else rm -rf build/; rm -f bitcoin-qt; fi - cd src; $(MAKE) -f makefile.unix clean + if [ -f Makefile ]; then $(MAKE) distclean; fi + rm -rf Makefile.in aclocal.m4 configure src/Makefile.in src/bitcoin-config.h.in src/build-aux src/qt/Makefile.in src/qt/test/Makefile.in src/test/Makefile.in +# Yea, autogen should be run on the source archive, but I like doing git archive override_dh_auto_configure: - qmake bitcoin-qt.pro USE_QRCODE=1 + ./autogen.sh + ./configure override_dh_auto_test: - cd src; $(MAKE) -f makefile.unix test_bitcoin - src/test_bitcoin - -# Ensure wrapper is set executable -binary-post-install/bitcoind: - chmod +x $(cdbs_curdestdir)usr/bin/bitcoind -binary-post-install/bitcoin-qt: - chmod +x $(cdbs_curdestdir)usr/bin/bitcoin-qt + make check diff --git a/contrib/devtools/README.md b/contrib/devtools/README.md index f0d25fd7a2..697a714a47 100644 --- a/contrib/devtools/README.md +++ b/contrib/devtools/README.md @@ -3,7 +3,7 @@ Contents This directory contains tools for developers working on this repository. github-merge.sh ----------------- +================== A small script to automate merging pull-requests securely and sign them with GPG. @@ -36,7 +36,8 @@ Configuring the github-merge tool for the bitcoin repository is done in the foll git config githubmerge.testcmd "make -j4 check" (adapt to whatever you want to use for testing) git config --global user.signingkey mykeyid (if you want to GPG sign) -## fix-copyright-headers.py +fix-copyright-headers.py +=========================== Every year newly updated files need to have its copyright headers updated to reflect the current year. If you run this script from src/ it will automatically update the year on the copyright header for all @@ -46,4 +47,25 @@ For example a file changed in 2014 (with 2014 being the current year): ```// Copyright (c) 2009-2013 The Bitcoin developers``` would be changed to: -```// Copyright (c) 2009-2014 The Bitcoin developers```
\ No newline at end of file +```// Copyright (c) 2009-2014 The Bitcoin developers``` + +symbol-check.py +================== + +A script to check that the (Linux) executables produced by gitian only contain +allowed gcc, glibc and libstdc++ version symbols. This makes sure they are +still compatible with the minimum supported Linux distribution versions. + +Example usage after a gitian build: + + find ../gitian-builder/build -type f -executable | xargs python contrib/devtools/symbol-check.py + +If only supported symbols are used the return value will be 0 and the output will be empty. + +If there are 'unsupported' symbols, the return value will be 1 a list like this will be printed: + + .../64/test_bitcoin: symbol memcpy from unsupported version GLIBC_2.14 + .../64/test_bitcoin: symbol __fdelt_chk from unsupported version GLIBC_2.15 + .../64/test_bitcoin: symbol std::out_of_range::~out_of_range() from unsupported version GLIBCXX_3.4.15 + .../64/test_bitcoin: symbol _ZNSt8__detail15_List_nod from unsupported version GLIBCXX_3.4.15 + diff --git a/contrib/devtools/symbol-check.py b/contrib/devtools/symbol-check.py new file mode 100755 index 0000000000..4f6a18da2d --- /dev/null +++ b/contrib/devtools/symbol-check.py @@ -0,0 +1,108 @@ +#!/usr/bin/python +# Copyright (c) 2014 Wladimir J. van der Laan +# Distributed under the MIT/X11 software license, see the accompanying +# file COPYING or http://www.opensource.org/licenses/mit-license.php. +''' +A script to check that the (Linux) executables produced by gitian only contain +allowed gcc, glibc and libstdc++ version symbols. This makes sure they are +still compatible with the minimum supported Linux distribution versions. + +Example usage: + + find ../gitian-builder/build -type f -executable | xargs python contrib/devtools/symbol-check.py +''' +from __future__ import division, print_function +import subprocess +import re +import sys + +# Debian 6.0.9 (Squeeze) has: +# +# - g++ version 4.4.5 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=g%2B%2B) +# - libc version 2.11.3 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=libc6) +# - libstdc++ version 4.4.5 (https://packages.debian.org/search?suite=default§ion=all&arch=any&searchon=names&keywords=libstdc%2B%2B6) +# +# Ubuntu 10.04.4 (Lucid Lynx) has: +# +# - g++ version 4.4.3 (http://packages.ubuntu.com/search?keywords=g%2B%2B&searchon=names&suite=lucid§ion=all) +# - libc version 2.11.1 (http://packages.ubuntu.com/search?keywords=libc6&searchon=names&suite=lucid§ion=all) +# - libstdc++ version 4.4.3 (http://packages.ubuntu.com/search?suite=lucid§ion=all&arch=any&keywords=libstdc%2B%2B&searchon=names) +# +# Taking the minimum of these as our target. +# +# According to GNU ABI document (http://gcc.gnu.org/onlinedocs/libstdc++/manual/abi.html) this corresponds to: +# GCC 4.4.0: GCC_4.4.0 +# GCC 4.4.2: GLIBCXX_3.4.13, CXXABI_1.3.3 +# (glibc) GLIBC_2_11 +# +MAX_VERSIONS = { +'GCC': (4,4,0), +'CXXABI': (1,3,3), +'GLIBCXX': (3,4,13), +'GLIBC': (2,11) +} +READELF_CMD = '/usr/bin/readelf' +CPPFILT_CMD = '/usr/bin/c++filt' + +class CPPFilt(object): + ''' + Demangle C++ symbol names. + + Use a pipe to the 'c++filt' command. + ''' + def __init__(self): + self.proc = subprocess.Popen(CPPFILT_CMD, stdin=subprocess.PIPE, stdout=subprocess.PIPE) + + def __call__(self, mangled): + self.proc.stdin.write(mangled + '\n') + return self.proc.stdout.readline().rstrip() + + def close(self): + self.proc.stdin.close() + self.proc.stdout.close() + self.proc.wait() + +def read_symbols(executable, imports=True): + ''' + Parse an ELF executable and return a list of (symbol,version) tuples + for dynamic, imported symbols. + ''' + p = subprocess.Popen([READELF_CMD, '--dyn-syms', '-W', executable], stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE) + (stdout, stderr) = p.communicate() + if p.returncode: + raise IOError('Could not read symbols for %s: %s' % (executable, stderr.strip())) + syms = [] + for line in stdout.split('\n'): + line = line.split() + if len(line)>7 and re.match('[0-9]+:$', line[0]): + (sym, _, version) = line[7].partition('@') + is_import = line[6] == 'UND' + if version.startswith('@'): + version = version[1:] + if is_import == imports: + syms.append((sym, version)) + return syms + +def check_version(max_versions, version): + if '_' in version: + (lib, _, ver) = version.rpartition('_') + else: + lib = version + ver = '0' + ver = tuple([int(x) for x in ver.split('.')]) + if not lib in max_versions: + return False + return ver <= max_versions[lib] + +if __name__ == '__main__': + cppfilt = CPPFilt() + retval = 0 + for filename in sys.argv[1:]: + for sym,version in read_symbols(filename, True): + if version and not check_version(MAX_VERSIONS, version): + print('%s: symbol %s from unsupported version %s' % (filename, cppfilt(sym), version)) + retval = 1 + + exit(retval) + + diff --git a/contrib/gitian-descriptors/gitian-linux.yml b/contrib/gitian-descriptors/gitian-linux.yml index 018b6fb26f..1747f531ea 100644 --- a/contrib/gitian-descriptors/gitian-linux.yml +++ b/contrib/gitian-descriptors/gitian-linux.yml @@ -41,7 +41,7 @@ script: | cd ../build function do_configure { - ./configure "$@" --enable-upnp-default --prefix=$STAGING --with-protoc-bindir=$STAGING/host/bin --with-boost=$STAGING --disable-maintainer-mode --disable-dependency-tracking PKG_CONFIG_PATH="$STAGING/lib/pkgconfig" CPPFLAGS="-I$STAGING/include ${OPTFLAGS}" LDFLAGS="-L$STAGING/lib ${OPTFLAGS}" CXXFLAGS="-frandom-seed=bitcoin ${OPTFLAGS}" BOOST_CHRONO_EXTRALIBS="-lrt" + ./configure "$@" --enable-upnp-default --prefix=$STAGING --with-protoc-bindir=$STAGING/host/bin --with-boost=$STAGING --disable-maintainer-mode --disable-dependency-tracking PKG_CONFIG_PATH="$STAGING/lib/pkgconfig" CPPFLAGS="-I$STAGING/include ${OPTFLAGS}" LDFLAGS="-L$STAGING/lib ${OPTFLAGS}" CXXFLAGS="-frandom-seed=bitcoin ${OPTFLAGS}" BOOST_CHRONO_EXTRALIBS="-lrt" --enable-glibc-back-compat } # cd bitcoin @@ -60,19 +60,6 @@ script: | make $MAKEOPTS install-strip make $MAKEOPTS clean - # Build fully static versions of bitcoind and bitcoin-cli for older Linux distros - STATIC_BINDIR="$HOME/bindir.static" - mkdir -p $STATIC_BINDIR - # For 32-bit, -pie cannot be used with -static, as invalid executables are generated - # For 64-bit, -pie with -static causes a link error - # Disable hardening in configure and manually pass 'static-safe' hardening flags - OPTFLAGS='-O2 -static -Wstack-protector -fstack-protector-all -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -Wl,-z,relro -Wl,-z,now' - do_configure --bindir=$STATIC_BINDIR --disable-tests --enable-upnp-default --without-gui --disable-hardening - make $MAKEOPTS - make $MAKEOPTS install-strip - cp $STATIC_BINDIR/bitcoind $BINDIR/bitcoind.static - cp $STATIC_BINDIR/bitcoin-cli $BINDIR/bitcoin-cli.static - # sort distribution tar file and normalize user/group/mtime information for deterministic output mkdir -p $OUTDIR/src rm -rf $TEMPDIR diff --git a/doc/README.md b/doc/README.md index a215824582..f5aeb34a3c 100644 --- a/doc/README.md +++ b/doc/README.md @@ -1,4 +1,4 @@ -Bitcoin 0.9.0 BETA +Bitcoin 0.9.99 BETA ===================== Copyright (c) 2009-2014 Bitcoin Developers diff --git a/doc/README_windows.txt b/doc/README_windows.txt index abca4894e2..18fd4216f9 100644 --- a/doc/README_windows.txt +++ b/doc/README_windows.txt @@ -1,4 +1,4 @@ -Bitcoin 0.9.0rc1 BETA
+Bitcoin 0.9.99 BETA
Copyright (c) 2009-2014 Bitcoin Core Developers
diff --git a/doc/build-unix.md b/doc/build-unix.md index d08c327ff9..498bfa1e0f 100644 --- a/doc/build-unix.md +++ b/doc/build-unix.md @@ -137,8 +137,12 @@ miniupnpc Berkeley DB ----------- -You need Berkeley DB 4.8. If you have to build Berkeley DB yourself: +You need Berkeley DB 4.8. If you have to build it yourself: + wget 'http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz' + echo '12edc0df75bf9abd7f82f821795bcee50f42cb2e5f76a6a281b85732798364ef db-4.8.30.NC.tar.gz' | sha256sum -c + # -> db-4.8.30.NC.tar.gz: OK + tar -xzvf db-4.8.30.NC.tar.gz cd build_unix/ ../dist/configure --enable-cxx make diff --git a/doc/gitian-building.md b/doc/gitian-building.md index 23059a0506..544bbc12c1 100644 --- a/doc/gitian-building.md +++ b/doc/gitian-building.md @@ -227,7 +227,6 @@ In this section we will be setting up the Debian installation for Gitian buildin First we need to log in as `root` to set up dependencies and make sure that our user can use the sudo command. Type/paste the following in the terminal: - ```bash apt-get install git ruby sudo apt-cacher-ng qemu-utils debootstrap lxc python-cheetah parted kpartx bridge-utils adduser debian sudo @@ -249,15 +248,16 @@ echo '#!/bin/sh -e' > /etc/rc.local echo 'brctl addbr br0' >> /etc/rc.local echo 'ifconfig br0 10.0.3.2/24 up' >> /etc/rc.local echo 'exit 0' >> /etc/rc.local -# make sure that USE_LXC is always set when logging in as debian +# make sure that USE_LXC is always set when logging in as debian, +# and configure LXC IP addresses echo 'export USE_LXC=1' >> /home/debian/.profile +echo 'export GITIAN_HOST_IP=10.0.3.2' >> /home/debian/.profile +echo 'export LXC_GUEST_IP=10.0.3.5' >> /home/debian/.profile reboot ``` -At the end the VM is rebooted to make sure that the changes take effect. - -**Note**: If you're following this guide on a physical system instead of a VirtualBox VM you could use `10.0.2.2` instead -of `10.0.3.2` in the above `ifconfig` line. This avoids having to patch gitian-builder in next section. +At the end the VM is rebooted to make sure that the changes take effect. The steps in this +section need only to be performed once. Installing gitian ------------------ @@ -286,20 +286,6 @@ git clone https://github.com/devrandom/gitian-builder.git git clone https://github.com/bitcoin/bitcoin ``` -We need to change the guest IP range for the gitian builder because otherwise it will -collide with VirtualBox its NAT IP range. Gitian does not have a way yet to configure -this, so we need to patch the IPs using `sed`. This is not nice but it will -have to do for now... (a [pull request -(#52)](https://github.com/devrandom/gitian-builder/pull/52) to make this -configurable without patching has been submitted): - -```bash -sed -i 's/10.0.2.2/10.0.3.2/g' gitian-builder/target-bin/bootstrap-fixup -sed -i 's/10.0.2.5/10.0.3.5/g' gitian-builder/etc/lxc.config.in -``` - -*note* After you update the gitian-builder repository, you may need to repeat these manual changes. - Setting up gitian images ------------------------- diff --git a/doc/release-process.md b/doc/release-process.md index bf289805ca..cd60684f42 100644 --- a/doc/release-process.md +++ b/doc/release-process.md @@ -8,8 +8,6 @@ Release Process ###update (commit) version in sources - - bitcoin-qt.pro contrib/verifysfbinaries/verify.sh doc/README* share/setup.nsi diff --git a/share/genbuild.sh b/share/genbuild.sh index afa4b4ccb9..6890a6eba0 100755 --- a/share/genbuild.sh +++ b/share/genbuild.sh @@ -14,13 +14,21 @@ else fi DESC="" +SUFFIX="" LAST_COMMIT_DATE="" if [ -e "$(which git)" -a -d ".git" ]; then # clean 'dirty' status of touched files that haven't been modified git diff >/dev/null 2>/dev/null - # get a string like "v0.6.0-66-g59887e8-dirty" - DESC="$(git describe --dirty 2>/dev/null)" + # if latest commit is tagged and not dirty, then override using the tag name + RAWDESC=$(git describe --abbrev=0 2>/dev/null) + if [ "$(git rev-parse HEAD)" = "$(git rev-list -1 $RAWDESC)" ]; then + git diff-index --quiet HEAD -- && DESC=$RAWDESC + fi + + # otherwise generate suffix from git, i.e. string like "59887e8-dirty" + SUFFIX=$(git rev-parse --short HEAD) + git diff-index --quiet HEAD -- || SUFFIX="$SUFFIX-dirty" # get a string like "2012-04-10 16:27:19 +0200" LAST_COMMIT_DATE="$(git log -n 1 --format="%ci")" @@ -28,6 +36,8 @@ fi if [ -n "$DESC" ]; then NEWINFO="#define BUILD_DESC \"$DESC\"" +elif [ -n "$SUFFIX" ]; then + NEWINFO="#define BUILD_SUFFIX $SUFFIX" else NEWINFO="// No build information available" fi diff --git a/src/Makefile.am b/src/Makefile.am index c725c4f1c2..215d0319f9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -121,6 +121,7 @@ libbitcoin_wallet_a_SOURCES = \ $(BITCOIN_CORE_H) libbitcoin_common_a_SOURCES = \ + base58.cpp \ allocators.cpp \ chainparams.cpp \ core.cpp \ @@ -135,6 +136,11 @@ libbitcoin_common_a_SOURCES = \ version.cpp \ $(BITCOIN_CORE_H) +if GLIBC_BACK_COMPAT +libbitcoin_common_a_SOURCES += compat/glibc_compat.cpp +libbitcoin_common_a_SOURCES += compat/glibcxx_compat.cpp +endif + libbitcoin_cli_a_SOURCES = \ rpcclient.cpp \ $(BITCOIN_CORE_H) diff --git a/src/base58.cpp b/src/base58.cpp new file mode 100644 index 0000000000..0b08ee3d06 --- /dev/null +++ b/src/base58.cpp @@ -0,0 +1,91 @@ +// Copyright (c) 2014 The Bitcoin developers +// Distributed under the MIT/X11 software license, see the accompanying +// file COPYING or http://www.opensource.org/licenses/mit-license.php. + +#include <assert.h> +#include <stdint.h> +#include <string.h> +#include <vector> +#include <string> + +/* All alphanumeric characters except for "0", "I", "O", and "l" */ +static const char* pszBase58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"; + +bool DecodeBase58(const char *psz, std::vector<unsigned char>& vch) { + // Skip leading spaces. + while (*psz && isspace(*psz)) + psz++; + // Skip and count leading '1's. + int zeroes = 0; + while (*psz == '1') { + zeroes++; + psz++; + } + // Allocate enough space in big-endian base256 representation. + std::vector<unsigned char> b256(strlen(psz) * 733 / 1000 + 1); // log(58) / log(256), rounded up. + // Process the characters. + while (*psz && !isspace(*psz)) { + // Decode base58 character + const char *ch = strchr(pszBase58, *psz); + if (ch == NULL) + return false; + // Apply "b256 = b256 * 58 + ch". + int carry = ch - pszBase58; + for (std::vector<unsigned char>::reverse_iterator it = b256.rbegin(); it != b256.rend(); it++) { + carry += 58 * (*it); + *it = carry % 256; + carry /= 256; + } + assert(carry == 0); + psz++; + } + // Skip trailing spaces. + while (isspace(*psz)) + psz++; + if (*psz != 0) + return false; + // Skip leading zeroes in b256. + std::vector<unsigned char>::iterator it = b256.begin(); + while (it != b256.end() && *it == 0) + it++; + // Copy result into output vector. + vch.reserve(zeroes + (b256.end() - it)); + vch.assign(zeroes, 0x00); + while (it != b256.end()) + vch.push_back(*(it++)); + return true; +} + +std::string EncodeBase58(const unsigned char* pbegin, const unsigned char* pend) { + // Skip & count leading zeroes. + int zeroes = 0; + while (pbegin != pend && *pbegin == 0) { + pbegin++; + zeroes++; + } + // Allocate enough space in big-endian base58 representation. + std::vector<unsigned char> b58((pend - pbegin) * 138 / 100 + 1); // log(256) / log(58), rounded up. + // Process the bytes. + while (pbegin != pend) { + int carry = *pbegin; + // Apply "b58 = b58 * 256 + ch". + for (std::vector<unsigned char>::reverse_iterator it = b58.rbegin(); it != b58.rend(); it++) { + carry += 256 * (*it); + *it = carry % 58; + carry /= 58; + } + assert(carry == 0); + pbegin++; + } + // Skip leading zeroes in base58 result. + std::vector<unsigned char>::iterator it = b58.begin(); + while (it != b58.end() && *it == 0) + it++; + // Translate the result into a string. + std::string str; + str.reserve(zeroes + (b58.end() - it)); + str.assign(zeroes, '1'); + while (it != b58.end()) + str += pszBase58[*(it++)]; + return str; +} diff --git a/src/base58.h b/src/base58.h index ebe5376825..4fb436c5ed 100644 --- a/src/base58.h +++ b/src/base58.h @@ -14,7 +14,6 @@ #ifndef BITCOIN_BASE58_H #define BITCOIN_BASE58_H -#include "bignum.h" #include "chainparams.h" #include "hash.h" #include "key.h" @@ -27,114 +26,39 @@ #include <boost/variant/apply_visitor.hpp> #include <boost/variant/static_visitor.hpp> -static const char* pszBase58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"; - -// Encode a byte sequence as a base58-encoded string -inline std::string EncodeBase58(const unsigned char* pbegin, const unsigned char* pend) -{ - CAutoBN_CTX pctx; - CBigNum bn58 = 58; - CBigNum bn0 = 0; - - // Convert big endian data to little endian - // Extra zero at the end make sure bignum will interpret as a positive number - std::vector<unsigned char> vchTmp(pend-pbegin+1, 0); - reverse_copy(pbegin, pend, vchTmp.begin()); - - // Convert little endian data to bignum - CBigNum bn; - bn.setvch(vchTmp); - - // Convert bignum to std::string - std::string str; - // Expected size increase from base58 conversion is approximately 137% - // use 138% to be safe - str.reserve((pend - pbegin) * 138 / 100 + 1); - CBigNum dv; - CBigNum rem; - while (bn > bn0) - { - if (!BN_div(&dv, &rem, &bn, &bn58, pctx)) - throw bignum_error("EncodeBase58 : BN_div failed"); - bn = dv; - unsigned int c = rem.getulong(); - str += pszBase58[c]; - } - - // Leading zeroes encoded as base58 zeros - for (const unsigned char* p = pbegin; p < pend && *p == 0; p++) - str += pszBase58[0]; - - // Convert little endian std::string to big endian - reverse(str.begin(), str.end()); - return str; -} +/** + * Encode a byte sequence as a base58-encoded string. + * pbegin and pend cannot be NULL, unless both are. + */ +std::string EncodeBase58(const unsigned char* pbegin, const unsigned char* pend); -// Encode a byte vector as a base58-encoded string +/** + * Encode a byte vector as a base58-encoded string + */ inline std::string EncodeBase58(const std::vector<unsigned char>& vch) { return EncodeBase58(&vch[0], &vch[0] + vch.size()); } -// Decode a base58-encoded string psz into byte vector vchRet -// returns true if decoding is successful -inline bool DecodeBase58(const char* psz, std::vector<unsigned char>& vchRet) -{ - CAutoBN_CTX pctx; - vchRet.clear(); - CBigNum bn58 = 58; - CBigNum bn = 0; - CBigNum bnChar; - while (isspace(*psz)) - psz++; - - // Convert big endian string to bignum - for (const char* p = psz; *p; p++) - { - const char* p1 = strchr(pszBase58, *p); - if (p1 == NULL) - { - while (isspace(*p)) - p++; - if (*p != '\0') - return false; - break; - } - bnChar.setulong(p1 - pszBase58); - if (!BN_mul(&bn, &bn, &bn58, pctx)) - throw bignum_error("DecodeBase58 : BN_mul failed"); - bn += bnChar; - } - - // Get bignum as little endian data - std::vector<unsigned char> vchTmp = bn.getvch(); - - // Trim off sign byte if present - if (vchTmp.size() >= 2 && vchTmp.end()[-1] == 0 && vchTmp.end()[-2] >= 0x80) - vchTmp.erase(vchTmp.end()-1); - - // Restore leading zeros - int nLeadingZeros = 0; - for (const char* p = psz; *p == pszBase58[0]; p++) - nLeadingZeros++; - vchRet.assign(nLeadingZeros + vchTmp.size(), 0); - - // Convert little endian data to big endian - reverse_copy(vchTmp.begin(), vchTmp.end(), vchRet.end() - vchTmp.size()); - return true; -} +/** + * Decode a base58-encoded string (psz) into a byte vector (vchRet). + * return true if decoding is successful. + * psz cannot be NULL. + */ +bool DecodeBase58(const char* psz, std::vector<unsigned char>& vchRet); -// Decode a base58-encoded string str into byte vector vchRet -// returns true if decoding is successful +/** + * Decode a base58-encoded string (str) into a byte vector (vchRet). + * return true if decoding is successful. + */ inline bool DecodeBase58(const std::string& str, std::vector<unsigned char>& vchRet) { return DecodeBase58(str.c_str(), vchRet); } - - - -// Encode a byte vector to a base58-encoded string, including checksum +/** + * Encode a byte vector into a base58-encoded string, including checksum + */ inline std::string EncodeBase58Check(const std::vector<unsigned char>& vchIn) { // add 4-byte hash check to the end @@ -144,8 +68,10 @@ inline std::string EncodeBase58Check(const std::vector<unsigned char>& vchIn) return EncodeBase58(vch); } -// Decode a base58-encoded string psz that includes a checksum, into byte vector vchRet -// returns true if decoding is successful +/** + * Decode a base58-encoded string (psz) that includes a checksum into a byte + * vector (vchRet), return true if decoding is successful + */ inline bool DecodeBase58Check(const char* psz, std::vector<unsigned char>& vchRet) { if (!DecodeBase58(psz, vchRet)) @@ -155,6 +81,7 @@ inline bool DecodeBase58Check(const char* psz, std::vector<unsigned char>& vchRe vchRet.clear(); return false; } + // re-calculate the checksum, insure it matches the included 4-byte checksum uint256 hash = Hash(vchRet.begin(), vchRet.end()-4); if (memcmp(&hash, &vchRet.end()[-4], 4) != 0) { @@ -165,18 +92,18 @@ inline bool DecodeBase58Check(const char* psz, std::vector<unsigned char>& vchRe return true; } -// Decode a base58-encoded string str that includes a checksum, into byte vector vchRet -// returns true if decoding is successful +/** + * Decode a base58-encoded string (str) that includes a checksum into a byte + * vector (vchRet), return true if decoding is successful + */ inline bool DecodeBase58Check(const std::string& str, std::vector<unsigned char>& vchRet) { return DecodeBase58Check(str.c_str(), vchRet); } - - - - -/** Base class for all base58-encoded data */ +/** + * Base class for all base58-encoded data + */ class CBase58Data { protected: @@ -347,7 +274,9 @@ bool inline CBitcoinAddressVisitor::operator()(const CKeyID &id) const { bool inline CBitcoinAddressVisitor::operator()(const CScriptID &id) const { return addr->Set(id); } bool inline CBitcoinAddressVisitor::operator()(const CNoDestination &id) const { return false; } -/** A base58-encoded secret key */ +/** + * A base58-encoded secret key + */ class CBitcoinSecret : public CBase58Data { public: @@ -393,7 +322,6 @@ public: } }; - template<typename K, int Size, CChainParams::Base58Type Type> class CBitcoinExtKeyBase : public CBase58Data { public: diff --git a/src/clientversion.h b/src/clientversion.h index 8d0f89c715..29b4aa3764 100644 --- a/src/clientversion.h +++ b/src/clientversion.h @@ -11,8 +11,8 @@ // These need to be macros, as version.cpp's and bitcoin-qt.rc's voodoo requires it #define CLIENT_VERSION_MAJOR 0 #define CLIENT_VERSION_MINOR 9 -#define CLIENT_VERSION_REVISION 0 -#define CLIENT_VERSION_BUILD 99 +#define CLIENT_VERSION_REVISION 99 +#define CLIENT_VERSION_BUILD 0 // Set to true for release, false for prerelease or test build #define CLIENT_VERSION_IS_RELEASE false diff --git a/src/compat/glibc_compat.cpp b/src/compat/glibc_compat.cpp new file mode 100644 index 0000000000..5b73e6051a --- /dev/null +++ b/src/compat/glibc_compat.cpp @@ -0,0 +1,19 @@ +#include "bitcoin-config.h" +#include <cstddef> +#include <sys/select.h> + +// Prior to GLIBC_2.14, memcpy was aliased to memmove. +extern "C" void* memmove(void* a, const void* b, size_t c); +extern "C" void* memcpy(void* a, const void* b, size_t c) +{ + return memmove(a, b, c); +} + +extern "C" void __chk_fail (void) __attribute__((__noreturn__)); +extern "C" FDELT_TYPE __fdelt_warn(FDELT_TYPE a) +{ + if (a >= FD_SETSIZE) + __chk_fail (); + return a / __NFDBITS; +} +extern "C" FDELT_TYPE __fdelt_chk(FDELT_TYPE) __attribute__((weak, alias("__fdelt_warn"))); diff --git a/src/compat/glibcxx_compat.cpp b/src/compat/glibcxx_compat.cpp new file mode 100644 index 0000000000..e91376f818 --- /dev/null +++ b/src/compat/glibcxx_compat.cpp @@ -0,0 +1,87 @@ +#include <cstddef> +#include <istream> +#include <stdexcept> +#include <typeinfo> + +#ifndef _GLIBCXX_USE_NOEXCEPT + #define _GLIBCXX_USE_NOEXCEPT throw() +#endif + +namespace std { + +const char* bad_exception::what() const throw() +{ + return "std::bad_exception"; +} + +const char* bad_cast::what() const throw() +{ + return "std::bad_cast"; +} + +const char* bad_alloc::what() const throw() +{ + return "std::bad_alloc"; +} + +namespace __detail +{ +struct _List_node_base +{ + void _M_hook(std::__detail::_List_node_base* const __position) throw () __attribute__((used)) + { + _M_next = __position; + _M_prev = __position->_M_prev; + __position->_M_prev->_M_next = this; + __position->_M_prev = this; + } + void _M_unhook() __attribute__((used)) + { + _List_node_base* const __next_node = _M_next; + _List_node_base* const __prev_node = _M_prev; + __prev_node->_M_next = __next_node; + __next_node->_M_prev = __prev_node; + } + _List_node_base* _M_next; + _List_node_base* _M_prev; +}; +} // namespace detail + +template ostream& ostream::_M_insert(bool); +template ostream& ostream::_M_insert(long); +template ostream& ostream::_M_insert(double); +template ostream& ostream::_M_insert(unsigned long); +template ostream& ostream::_M_insert(const void*); +template ostream& __ostream_insert(ostream&, const char*, streamsize); +template istream& istream::_M_extract(long&); +template istream& istream::_M_extract(unsigned short&); + +out_of_range::~out_of_range() _GLIBCXX_USE_NOEXCEPT { } + +// Used with permission. +// See: https://github.com/madlib/madlib/commit/c3db418c0d34d6813608f2137fef1012ce03043d + +void +ctype<char>::_M_widen_init() const { + char __tmp[sizeof(_M_widen)]; + for (unsigned __i = 0; __i < sizeof(_M_widen); ++__i) + __tmp[__i] = __i; + do_widen(__tmp, __tmp + sizeof(__tmp), _M_widen); + + _M_widen_ok = 1; + // Set _M_widen_ok to 2 if memcpy can't be used. + for (unsigned __i = 0; __i < sizeof(_M_widen); ++__i) + if (__tmp[__i] != _M_widen[__i]) { + _M_widen_ok = 2; + break; + } +} + +void __throw_out_of_range_fmt(const char*, ...) __attribute__((__noreturn__)); +void __throw_out_of_range_fmt(const char* err, ...) +{ + // Safe and over-simplified version. Ignore the format and print it as-is. + __throw_out_of_range(err); +} + +}// namespace std diff --git a/src/main.cpp b/src/main.cpp index c4d6194857..7a6d4b39de 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -474,6 +474,7 @@ unsigned int LimitOrphanTxSize(unsigned int nMaxOrphans) bool IsStandardTx(const CTransaction& tx, string& reason) { + AssertLockHeld(cs_main); if (tx.nVersion > CTransaction::CURRENT_VERSION || tx.nVersion < 1) { reason = "version"; return false; @@ -556,6 +557,7 @@ bool IsStandardTx(const CTransaction& tx, string& reason) bool IsFinalTx(const CTransaction &tx, int nBlockHeight, int64_t nBlockTime) { + AssertLockHeld(cs_main); // Time based nLockTime implemented in 0.1.6 if (tx.nLockTime == 0) return true; @@ -667,6 +669,7 @@ unsigned int GetP2SHSigOpCount(const CTransaction& tx, CCoinsViewCache& inputs) int CMerkleTx::SetMerkleBranch(const CBlock* pblock) { + AssertLockHeld(cs_main); CBlock blockTmp; if (pblock == NULL) { @@ -813,6 +816,7 @@ int64_t GetMinFee(const CTransaction& tx, unsigned int nBytes, bool fAllowFree, bool AcceptToMemoryPool(CTxMemPool& pool, CValidationState &state, const CTransaction &tx, bool fLimitFree, bool* pfMissingInputs, bool fRejectInsaneFee) { + AssertLockHeld(cs_main); if (pfMissingInputs) *pfMissingInputs = false; @@ -958,6 +962,7 @@ int CMerkleTx::GetDepthInMainChainINTERNAL(CBlockIndex* &pindexRet) const { if (hashBlock == 0 || nIndex == -1) return 0; + AssertLockHeld(cs_main); // Find the block it claims to be in map<uint256, CBlockIndex*>::iterator mi = mapBlockIndex.find(hashBlock); @@ -981,6 +986,7 @@ int CMerkleTx::GetDepthInMainChainINTERNAL(CBlockIndex* &pindexRet) const int CMerkleTx::GetDepthInMainChain(CBlockIndex* &pindexRet) const { + AssertLockHeld(cs_main); int nResult = GetDepthInMainChainINTERNAL(pindexRet); if (nResult == 0 && !mempool.exists(GetHash())) return -1; // Not in chain, not in mempool @@ -1304,6 +1310,7 @@ int GetNumBlocksOfPeers() bool IsInitialBlockDownload() { + LOCK(cs_main); if (fImporting || fReindex || chainActive.Height() < Checkpoints::GetTotalBlocksEstimate()) return true; static int64_t nLastUpdate; @@ -1323,6 +1330,7 @@ CBlockIndex *pindexBestForkTip = NULL, *pindexBestForkBase = NULL; void CheckForkWarningConditions() { + AssertLockHeld(cs_main); // Before we get past initial download, we cannot reliably alert about forks // (we assume we don't get stuck on a fork before the last checkpoint) if (IsInitialBlockDownload()) @@ -1368,6 +1376,7 @@ void CheckForkWarningConditions() void CheckForkWarningConditionsOnNewFork(CBlockIndex* pindexNewForkTip) { + AssertLockHeld(cs_main); // If we are on a fork that is sufficiently large, set a warning flag CBlockIndex* pfork = pindexNewForkTip; CBlockIndex* plonger = chainActive.Tip(); @@ -1718,6 +1727,7 @@ void ThreadScriptCheck() { bool ConnectBlock(CBlock& block, CValidationState& state, CBlockIndex* pindex, CCoinsViewCache& view, bool fJustCheck) { + AssertLockHeld(cs_main); // Check it again in case a previous version let a bad block in if (!CheckBlock(block, state, !fJustCheck, !fJustCheck)) return false; @@ -2078,6 +2088,7 @@ void static FindMostWorkChain() { // Try to activate to the most-work chain (thereby connecting it). bool ActivateBestChain(CValidationState &state) { + LOCK(cs_main); CBlockIndex *pindexOldTip = chainActive.Tip(); bool fComplete = false; while (!fComplete) { @@ -2162,6 +2173,7 @@ bool AddToBlockIndex(CBlock& block, CValidationState& state, const CDiskBlockPos if (!ActivateBestChain(state)) return false; + LOCK(cs_main); if (pindexNew == chainActive.Tip()) { // Clear fork warning if its no longer applicable @@ -2344,6 +2356,7 @@ bool CheckBlock(const CBlock& block, CValidationState& state, bool fCheckPOW, bo bool AcceptBlock(CBlock& block, CValidationState& state, CDiskBlockPos* dbp) { + AssertLockHeld(cs_main); // Check for duplicate uint256 hash = block.GetHash(); if (mapBlockIndex.count(hash)) @@ -2455,6 +2468,7 @@ bool CBlockIndex::IsSuperMajority(int minVersion, const CBlockIndex* pstart, uns int64_t CBlockIndex::GetMedianTime() const { + AssertLockHeld(cs_main); const CBlockIndex* pindex = this; for (int i = 0; i < nMedianTimeSpan/2; i++) { @@ -2467,6 +2481,7 @@ int64_t CBlockIndex::GetMedianTime() const void PushGetBlocks(CNode* pnode, CBlockIndex* pindexBegin, uint256 hashEnd) { + AssertLockHeld(cs_main); // Filter out duplicate requests if (pindexBegin == pnode->pindexLastGetBlocksBegin && hashEnd == pnode->hashLastGetBlocksEnd) return; @@ -2948,6 +2963,7 @@ bool LoadBlockIndex() bool InitBlockIndex() { + LOCK(cs_main); // Check whether we're already initialized if (chainActive.Genesis() != NULL) return true; @@ -2983,6 +2999,7 @@ bool InitBlockIndex() { void PrintBlockTree() { + AssertLockHeld(cs_main); // pre-compute tree structure map<CBlockIndex*, vector<CBlockIndex*> > mapNext; for (map<uint256, CBlockIndex*>::iterator mi = mapBlockIndex.begin(); mi != mapBlockIndex.end(); ++mi) @@ -3075,11 +3092,11 @@ bool LoadExternalBlockFile(FILE* fileIn, CDiskBlockPos *dbp) unsigned int nSize = 0; try { // locate a header - unsigned char buf[4]; + unsigned char buf[MESSAGE_START_SIZE]; blkdat.FindByte(Params().MessageStart()[0]); nRewind = blkdat.GetPos()+1; blkdat >> FLATDATA(buf); - if (memcmp(buf, Params().MessageStart(), 4)) + if (memcmp(buf, Params().MessageStart(), MESSAGE_START_SIZE)) continue; // read size blkdat >> nSize; @@ -4186,6 +4203,10 @@ bool SendMessages(CNode* pto, bool fSendTrickle) } } + TRY_LOCK(cs_main, lockMain); // Acquire cs_main for IsInitialBlockDownload() and CNodeState() + if (!lockMain) + return true; + // Address refresh broadcast static int64_t nLastRebroadcast; if (!IsInitialBlockDownload() && (GetTime() - nLastRebroadcast > 24 * 60 * 60)) @@ -4236,10 +4257,6 @@ bool SendMessages(CNode* pto, bool fSendTrickle) pto->PushMessage("addr", vAddr); } - TRY_LOCK(cs_main, lockMain); - if (!lockMain) - return true; - CNodeState &state = *State(pto->GetId()); if (state.fShouldBan) { if (pto->addr.IsLocal()) diff --git a/src/net.cpp b/src/net.cpp index 657a39bcff..a0208c9605 100644 --- a/src/net.cpp +++ b/src/net.cpp @@ -946,11 +946,7 @@ void ThreadSocketHandler() } else if (nInbound >= nMaxConnections - MAX_OUTBOUND_CONNECTIONS) { - { - LOCK(cs_setservAddNodeAddresses); - if (!setservAddNodeAddresses.count(addr)) - closesocket(hSocket); - } + closesocket(hSocket); } else if (CNode::IsBanned(addr)) { diff --git a/src/netbase.cpp b/src/netbase.cpp index d5b75d6afd..2b300e5dd3 100644 --- a/src/netbase.cpp +++ b/src/netbase.cpp @@ -293,8 +293,10 @@ bool static Socks5(string strDest, int port, SOCKET& hSocket) case 0x03: { ret = recv(hSocket, pchRet3, 1, 0) != 1; - if (ret) + if (ret) { + closesocket(hSocket); return error("Error reading from proxy"); + } int nRecv = pchRet3[0]; ret = recv(hSocket, pchRet3, nRecv, 0) != nRecv; break; @@ -501,6 +503,7 @@ bool ConnectSocket(const CService &addrDest, SOCKET& hSocketRet, int nTimeout) return false; break; default: + closesocket(hSocket); return false; } @@ -532,7 +535,9 @@ bool ConnectSocketByName(CService &addr, SOCKET& hSocketRet, const char *pszDest switch(nameproxy.second) { default: - case 4: return false; + case 4: + closesocket(hSocket); + return false; case 5: if (!Socks5(strDest, port, hSocket)) return false; diff --git a/src/qt/bitcoinstrings.cpp b/src/qt/bitcoinstrings.cpp index c01b873286..f1d5301a11 100644 --- a/src/qt/bitcoinstrings.cpp +++ b/src/qt/bitcoinstrings.cpp @@ -36,6 +36,9 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" "Cannot obtain a lock on data directory %s. Bitcoin Core is probably already " "running."), QT_TRANSLATE_NOOP("bitcoin-core", "" +"Continuously rate-limit free transactions to <n>*1000 bytes per minute " +"(default:15)"), +QT_TRANSLATE_NOOP("bitcoin-core", "" "Enter regression test mode, which uses a special chain in which blocks can " "be solved instantly. This is intended for regression testing tools and app " "development."), @@ -61,6 +64,17 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" "Execute command when the best block changes (%s in cmd is replaced by block " "hash)"), QT_TRANSLATE_NOOP("bitcoin-core", "" +"Fees smaller than this are considered zero fee (for transaction creation) " +"(default:"), +QT_TRANSLATE_NOOP("bitcoin-core", "" +"Flush database activity from memory pool to disk log every <n> megabytes " +"(default: 100)"), +QT_TRANSLATE_NOOP("bitcoin-core", "" +"How thorough the block verification of -checkblocks is (0-4, default: 3)"), +QT_TRANSLATE_NOOP("bitcoin-core", "" +"In this mode -genproclimit controls how many blocks are generated " +"immediately."), +QT_TRANSLATE_NOOP("bitcoin-core", "" "Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)"), QT_TRANSLATE_NOOP("bitcoin-core", "" "Number of seconds to keep misbehaving peers from reconnecting (default: " @@ -70,8 +84,11 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" QT_TRANSLATE_NOOP("bitcoin-core", "" "Set maximum size of high-priority/low-fee transactions in bytes (default: %d)"), QT_TRANSLATE_NOOP("bitcoin-core", "" -"Set the number of script verification threads (up to 16, 0 = auto, <0 = " -"leave that many cores free, default: 0)"), +"Set the number of script verification threads (%u to %d, 0 = auto, <0 = " +"leave that many cores free, default: %d)"), +QT_TRANSLATE_NOOP("bitcoin-core", "" +"Set the processor limit for when generation is on (-1 = unlimited, default: " +"-1)"), QT_TRANSLATE_NOOP("bitcoin-core", "" "This is a pre-release test build - use at your own risk - do not use for " "mining or merchant applications"), @@ -105,6 +122,8 @@ QT_TRANSLATE_NOOP("bitcoin-core", "" "%s\n" "If the file does not exist, create it with owner-readable-only file " "permissions."), +QT_TRANSLATE_NOOP("bitcoin-core", "(default: 1)"), +QT_TRANSLATE_NOOP("bitcoin-core", "(default: wallet.dat)"), QT_TRANSLATE_NOOP("bitcoin-core", "<category> can be:"), QT_TRANSLATE_NOOP("bitcoin-core", "Accept command line and JSON-RPC commands"), QT_TRANSLATE_NOOP("bitcoin-core", "Accept connections from outside (default: 1 if no -proxy or -connect)"), @@ -113,7 +132,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Allow DNS lookups for -addnode, -seednode and QT_TRANSLATE_NOOP("bitcoin-core", "Allow JSON-RPC connections from specified IP address"), QT_TRANSLATE_NOOP("bitcoin-core", "Attempt to recover private keys from a corrupt wallet.dat"), QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin Core Daemon"), -QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin RPC client version"), +QT_TRANSLATE_NOOP("bitcoin-core", "Bitcoin Core RPC client version"), QT_TRANSLATE_NOOP("bitcoin-core", "Block creation options:"), QT_TRANSLATE_NOOP("bitcoin-core", "Cannot downgrade wallet"), QT_TRANSLATE_NOOP("bitcoin-core", "Cannot resolve -bind address: '%s'"), @@ -124,7 +143,10 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Connect only to the specified node(s)"), QT_TRANSLATE_NOOP("bitcoin-core", "Connect through SOCKS proxy"), QT_TRANSLATE_NOOP("bitcoin-core", "Connect to JSON-RPC on <port> (default: 8332 or testnet: 18332)"), QT_TRANSLATE_NOOP("bitcoin-core", "Connect to a node to retrieve peer addresses, and disconnect"), +QT_TRANSLATE_NOOP("bitcoin-core", "Connection options:"), QT_TRANSLATE_NOOP("bitcoin-core", "Corrupted block database detected"), +QT_TRANSLATE_NOOP("bitcoin-core", "Debugging/Testing options:"), +QT_TRANSLATE_NOOP("bitcoin-core", "Disable safemode, override a real safe mode event (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Discover own IP address (default: 1 when listening and no -externalip)"), QT_TRANSLATE_NOOP("bitcoin-core", "Do not load the wallet and disable wallet RPC calls"), QT_TRANSLATE_NOOP("bitcoin-core", "Do you want to rebuild the block database now?"), @@ -152,11 +174,12 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Failed to write to coin database"), QT_TRANSLATE_NOOP("bitcoin-core", "Failed to write transaction index"), QT_TRANSLATE_NOOP("bitcoin-core", "Failed to write undo data"), QT_TRANSLATE_NOOP("bitcoin-core", "Fee per kB to add to transactions you send"), +QT_TRANSLATE_NOOP("bitcoin-core", "Fees smaller than this are considered zero fee (for relaying) (default:"), QT_TRANSLATE_NOOP("bitcoin-core", "Find peers using DNS lookup (default: 1 unless -connect)"), +QT_TRANSLATE_NOOP("bitcoin-core", "Force safe mode (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Generate coins (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Get help for a command"), QT_TRANSLATE_NOOP("bitcoin-core", "How many blocks to check at startup (default: 288, 0 = all)"), -QT_TRANSLATE_NOOP("bitcoin-core", "How thorough the block verification is (0-4, default: 3)"), QT_TRANSLATE_NOOP("bitcoin-core", "If <category> is not supplied, output all debugging information."), QT_TRANSLATE_NOOP("bitcoin-core", "Imports blocks from external blk000??.dat file"), QT_TRANSLATE_NOOP("bitcoin-core", "Incorrect or no genesis block found. Wrong datadir for network?"), @@ -168,11 +191,13 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount for -minrelaytxfee=<amount>: ' QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount for -mintxfee=<amount>: '%s'"), QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount for -paytxfee=<amount>: '%s'"), QT_TRANSLATE_NOOP("bitcoin-core", "Invalid amount"), +QT_TRANSLATE_NOOP("bitcoin-core", "Limit size of signature cache to <n> entries (default: 50000)"), QT_TRANSLATE_NOOP("bitcoin-core", "List commands"), QT_TRANSLATE_NOOP("bitcoin-core", "Listen for connections on <port> (default: 8333 or testnet: 18333)"), QT_TRANSLATE_NOOP("bitcoin-core", "Loading addresses..."), QT_TRANSLATE_NOOP("bitcoin-core", "Loading block index..."), QT_TRANSLATE_NOOP("bitcoin-core", "Loading wallet..."), +QT_TRANSLATE_NOOP("bitcoin-core", "Log transaction priority and fee per kB when mining blocks (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Maintain a full transaction index (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Maintain at most <n> connections to peers (default: 125)"), QT_TRANSLATE_NOOP("bitcoin-core", "Maximum per-connection receive buffer, <n>*1000 bytes (default: 5000)"), @@ -183,14 +208,21 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Only connect to nodes in network <net> (IPv4, QT_TRANSLATE_NOOP("bitcoin-core", "Options:"), QT_TRANSLATE_NOOP("bitcoin-core", "Password for JSON-RPC connections"), QT_TRANSLATE_NOOP("bitcoin-core", "Prepend debug output with timestamp (default: 1)"), +QT_TRANSLATE_NOOP("bitcoin-core", "Print block on startup, if found in block index"), +QT_TRANSLATE_NOOP("bitcoin-core", "Print block tree on startup (default: 0)"), +QT_TRANSLATE_NOOP("bitcoin-core", "RPC SSL options: (see the Bitcoin Wiki for SSL setup instructions)"), QT_TRANSLATE_NOOP("bitcoin-core", "RPC client options:"), +QT_TRANSLATE_NOOP("bitcoin-core", "RPC server options:"), +QT_TRANSLATE_NOOP("bitcoin-core", "Randomly drop 1 of every <n> network messages"), +QT_TRANSLATE_NOOP("bitcoin-core", "Randomly fuzz 1 of every <n> network messages"), QT_TRANSLATE_NOOP("bitcoin-core", "Rebuild block chain index from current blk000??.dat files"), QT_TRANSLATE_NOOP("bitcoin-core", "Rescan the block chain for missing wallet transactions"), QT_TRANSLATE_NOOP("bitcoin-core", "Rescanning..."), +QT_TRANSLATE_NOOP("bitcoin-core", "Run a thread to flush wallet periodically (default: 1)"), QT_TRANSLATE_NOOP("bitcoin-core", "Run in the background as a daemon and accept commands"), QT_TRANSLATE_NOOP("bitcoin-core", "SSL options: (see the Bitcoin Wiki for SSL setup instructions)"), QT_TRANSLATE_NOOP("bitcoin-core", "Select SOCKS version for -proxy (4 or 5, default: 5)"), -QT_TRANSLATE_NOOP("bitcoin-core", "Send command to Bitcoin server"), +QT_TRANSLATE_NOOP("bitcoin-core", "Send command to Bitcoin Core"), QT_TRANSLATE_NOOP("bitcoin-core", "Send commands to node running on <ip> (default: 127.0.0.1)"), QT_TRANSLATE_NOOP("bitcoin-core", "Send trace/debug info to console instead of debug.log file"), QT_TRANSLATE_NOOP("bitcoin-core", "Server certificate file (default: server.cert)"), @@ -200,6 +232,9 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Set key pool size to <n> (default: 100)"), QT_TRANSLATE_NOOP("bitcoin-core", "Set maximum block size in bytes (default: %d)"), QT_TRANSLATE_NOOP("bitcoin-core", "Set minimum block size in bytes (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Set the number of threads to service RPC calls (default: 4)"), +QT_TRANSLATE_NOOP("bitcoin-core", "Sets the DB_PRIVATE flag in the wallet db environment (default: 1)"), +QT_TRANSLATE_NOOP("bitcoin-core", "Show all debugging options (usage: --help -help-debug)"), +QT_TRANSLATE_NOOP("bitcoin-core", "Show benchmark information (default: 0)"), QT_TRANSLATE_NOOP("bitcoin-core", "Shrink debug.log file on client startup (default: 1 when no -debug)"), QT_TRANSLATE_NOOP("bitcoin-core", "Signing transaction failed"), QT_TRANSLATE_NOOP("bitcoin-core", "Specify configuration file (default: bitcoin.conf)"), @@ -209,7 +244,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Specify pid file (default: bitcoind.pid)"), 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: 1)"), -QT_TRANSLATE_NOOP("bitcoin-core", "Start Bitcoin server"), +QT_TRANSLATE_NOOP("bitcoin-core", "Start Bitcoin Core Daemon"), QT_TRANSLATE_NOOP("bitcoin-core", "System error: "), QT_TRANSLATE_NOOP("bitcoin-core", "This help message"), QT_TRANSLATE_NOOP("bitcoin-core", "This is intended for regression testing tools and app development."), @@ -240,6 +275,7 @@ QT_TRANSLATE_NOOP("bitcoin-core", "Warning: Deprecated argument -debugnet ignore QT_TRANSLATE_NOOP("bitcoin-core", "Warning: This version is obsolete, upgrade required!"), QT_TRANSLATE_NOOP("bitcoin-core", "You need to rebuild the database using -reindex to change -txindex"), QT_TRANSLATE_NOOP("bitcoin-core", "Zapping all transactions from wallet..."), +QT_TRANSLATE_NOOP("bitcoin-core", "on startup"), QT_TRANSLATE_NOOP("bitcoin-core", "version"), QT_TRANSLATE_NOOP("bitcoin-core", "wallet.dat corrupt, salvage failed"), }; diff --git a/src/qt/clientmodel.cpp b/src/qt/clientmodel.cpp index cb832fdd42..3c0564c208 100644 --- a/src/qt/clientmodel.cpp +++ b/src/qt/clientmodel.cpp @@ -55,6 +55,7 @@ int ClientModel::getNumConnections(unsigned int flags) const int ClientModel::getNumBlocks() const { + LOCK(cs_main); return chainActive.Height(); } @@ -76,6 +77,7 @@ quint64 ClientModel::getTotalBytesSent() const QDateTime ClientModel::getLastBlockDate() const { + LOCK(cs_main); if (chainActive.Tip()) return QDateTime::fromTime_t(chainActive.Tip()->GetBlockTime()); else @@ -84,11 +86,18 @@ QDateTime ClientModel::getLastBlockDate() const double ClientModel::getVerificationProgress() const { + LOCK(cs_main); return Checkpoints::GuessVerificationProgress(chainActive.Tip()); } void ClientModel::updateTimer() { + // Get required lock upfront. This avoids the GUI from getting stuck on + // periodical polls if the core is holding the locks for a longer time - + // for example, during a wallet rescan. + TRY_LOCK(cs_main, lockMain); + if(!lockMain) + return; // Some quantities (such as number of blocks) change so fast that we don't want to be notified for each change. // Periodically check and update with a timer. int newNumBlocks = getNumBlocks(); diff --git a/src/qt/locale/bitcoin_de.ts b/src/qt/locale/bitcoin_de.ts index 11bf37817a..e359b9fc09 100644 --- a/src/qt/locale/bitcoin_de.ts +++ b/src/qt/locale/bitcoin_de.ts @@ -1,4 +1,4 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="de" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="de" version="2.1"> <context> <name>AboutDialog</name> <message> @@ -36,6 +36,12 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <source>The Bitcoin Core developers</source> <translation>Die "Bitcoin Core"-Entwickler</translation> </message> + <message> + <location line="+12"/> + <location line="+2"/> + <source> (%1-bit)</source> + <translation> (%1-Bit)</translation> + </message> </context> <context> <name>AddressBookPage</name> @@ -65,7 +71,7 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>&Kopieren</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation>&Schließen</translation> </message> @@ -75,7 +81,7 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>Adresse &kopieren</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>Ausgewählte Adresse aus der Liste entfernen</translation> </message> @@ -322,7 +328,7 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>Nachricht s&ignieren...</translation> </message> @@ -337,12 +343,12 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>&Übersicht</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation>Knoten</translation> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>Allgemeine Wallet-Übersicht anzeigen</translation> </message> @@ -463,17 +469,17 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>Nachricht &verifizieren...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>Wallet</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>Überweisen</translation> </message> @@ -529,18 +535,18 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>Registerkartenleiste</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[Testnetz]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> - <translation>Bitcoin-Kern</translation> + <translation>Bitcoin Core</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> <translation>Zahlungen anfordern (erzeugt QR-Codes und bitcoin: URIs)</translation> </message> @@ -602,7 +608,7 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>%1 Blöcke des Transaktionsverlaufs verarbeitet.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n Stunde</numerusform><numerusform>%n Stunden</numerusform></translation> </message> @@ -613,10 +619,21 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n Woche</numerusform><numerusform>%n Wochen</numerusform></translation> </message> <message> + <location line="+0"/> + <source>%1 and %2</source> + <translation>%1 und %2</translation> + </message> + <message numerus="yes"> + <location line="+0"/> + <source>%n year(s)</source> + <translation><numerusform>%n Jahr</numerusform><numerusform>%n Jahre</numerusform></translation> + </message> + <message> <location line="+4"/> <source>%1 behind</source> <translation>%1 im Rückstand</translation> @@ -647,12 +664,12 @@ Dieses Produkt enthält Software, die vom OpenSSL-Projekt zur Verwendung im Open <translation>Hinweis</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>Auf aktuellem Stand</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>Hole auf...</translation> </message> @@ -689,7 +706,7 @@ Adresse: %4</translation> <translation>Wallet ist <b>verschlüsselt</b> und aktuell <b>gesperrt</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+438"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>Ein schwerer Fehler ist aufgetreten. Bitcoin kann nicht stabil weiter ausgeführt werden und wird beendet.</translation> </message> @@ -697,7 +714,7 @@ Adresse: %4</translation> <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>Netzwerkalarm</translation> </message> @@ -750,7 +767,7 @@ Adresse: %4</translation> <translation>Wechselgeld:</translation> </message> <message> - <location line="+63"/> + <location line="+56"/> <source>(un)select all</source> <translation>Alles (de)selektieren</translation> </message> @@ -765,7 +782,7 @@ Adresse: %4</translation> <translation>Listenansicht</translation> </message> <message> - <location line="+52"/> + <location line="+53"/> <source>Amount</source> <translation>Betrag</translation> </message> @@ -795,7 +812,7 @@ Adresse: %4</translation> <translation>Priorität</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>Adresse kopieren</translation> </message> @@ -861,7 +878,7 @@ Adresse: %4</translation> <translation>Wechselgeld kopieren</translation> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>am höchsten</translation> </message> @@ -916,7 +933,7 @@ Adresse: %4</translation> <translation>keine</translation> </message> <message> - <location line="+140"/> + <location line="+141"/> <source>Dust</source> <translation>Dust</translation> </message> @@ -979,7 +996,7 @@ Adresse: %4</translation> </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(keine Bezeichnung)</translation> </message> @@ -1098,9 +1115,9 @@ Adresse: %4</translation> <translation>Bitcoin Core - Kommandozeilenoptionen</translation> </message> <message> - <location filename="../utilitydialog.cpp" line="+38"/> + <location filename="../utilitydialog.cpp" line="+24"/> <source>Bitcoin Core</source> - <translation>Bitcoin-Kern</translation> + <translation>Bitcoin Core</translation> </message> <message> <location line="+0"/> @@ -1176,7 +1193,7 @@ Adresse: %4</translation> <translation>Ein benutzerdefiniertes Datenverzeichnis verwenden:</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> @@ -1242,7 +1259,7 @@ Adresse: %4</translation> <translation>&Allgemein</translation> </message> <message> - <location line="+6"/> + <location line="+122"/> <source>Optional transaction fee per kB that helps make sure your transactions are processed quickly. Most transactions are 1 kB.</source> <translation>Optionale Transaktionsgebühr pro kB, die sicherstellt, dass ihre Transaktionen schnell bearbeitet werden. Die meisten Transaktionen sind 1 kB groß.</translation> </message> @@ -1252,7 +1269,7 @@ Adresse: %4</translation> <translation>Transaktions&gebühr bezahlen</translation> </message> <message> - <location line="+31"/> + <location line="-131"/> <source>Automatically start Bitcoin after logging in to the system.</source> <translation>Bitcoin nach der Anmeldung am System automatisch ausführen.</translation> </message> @@ -1267,12 +1284,7 @@ Adresse: %4</translation> <translation>Größe des &Datenbankcaches</translation> </message> <message> - <location line="+13"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Größe des Datenbankcaches in MB festlegen (Standard: 25)</translation> - </message> - <message> - <location line="+13"/> + <location line="+16"/> <source>MB</source> <translation>MB</translation> </message> @@ -1287,7 +1299,7 @@ Adresse: %4</translation> <translation>Maximale Anzahl an Skript-Verifizierungs-Threads festlegen (bis zu 16, 0 = automatisch, <0 = so viele Kerne frei lassen, Standard: 0)</translation> </message> <message> - <location line="+58"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation>Über einen SOCKS-Proxy mit dem Bitcoin-Netzwerk verbinden.</translation> </message> @@ -1302,7 +1314,7 @@ Adresse: %4</translation> <translation>IP-Adresse des Proxies (z.B. IPv4: 127.0.0.1 / IPv6: ::1)</translation> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> <translation>Aktive Kommandozeilenoptionen, die obige Konfiguration überschreiben:</translation> </message> @@ -1317,12 +1329,37 @@ Adresse: %4</translation> <translation>Konfiguration &zurücksetzen</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>&Netzwerk</translation> </message> <message> - <location line="+6"/> + <location line="-95"/> + <source>W&allet</source> + <translation>W&allet</translation> + </message> + <message> + <location line="+65"/> + <source>Expert</source> + <translation>Erweiterte Wallet-Optionen</translation> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> + <translation>"&Coin Control"-Funktionen aktivieren</translation> + </message> + <message> + <location line="+7"/> + <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>Wenn Sie das Ausgeben von unbestätigtem Wechselgeld deaktivieren, kann das Wechselgeld einer Transaktion nicht verwendet werden, bis es mindestens eine Bestätigung erhalten hat. Dies wirkt sich auf die Berechnung des Kontostands aus.</translation> + </message> + <message> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation>&Unbestätigtes Wechselgeld darf ausgegeben werden</translation> + </message> + <message> + <location line="+17"/> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Automatisch den Bitcoin-Clientport auf dem Router öffnen. Dies funktioniert nur, wenn ihr Router UPnP unterstützt und dies aktiviert ist.</translation> </message> @@ -1384,7 +1421,7 @@ Adresse: %4</translation> <message> <location line="+21"/> <source>&Display</source> - <translation>&Anzeige</translation> + <translation>Anzei&ge</translation> </message> <message> <location line="+8"/> @@ -1417,37 +1454,32 @@ Adresse: %4</translation> <translation>Adressen in der Transaktionsliste &anzeigen</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> <translation>Legt fest, ob die "Coin Control"-Funktionen angezeigt werden.</translation> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation>"&Coin Control"-Funktionen anzeigen (nur für Experten)</translation> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>&OK</translation> </message> <message> <location line="+7"/> <source>&Cancel</source> - <translation>&Abbrechen</translation> + <translation>A&bbrechen</translation> </message> <message> - <location filename="../optionsdialog.cpp" line="+67"/> + <location filename="../optionsdialog.cpp" line="+70"/> <source>default</source> <translation>Standard</translation> </message> <message> - <location line="+57"/> + <location line="+58"/> <source>none</source> <translation>keine</translation> </message> <message> - <location line="+75"/> + <location line="+78"/> <source>Confirm options reset</source> <translation>Zurücksetzen der Konfiguration bestätigen</translation> </message> @@ -1487,19 +1519,14 @@ Adresse: %4</translation> <translation>Die angezeigten Informationen sind möglicherweise nicht mehr aktuell. Ihre Wallet wird automatisch synchronisiert, nachdem eine Verbindung zum Bitcoin-Netzwerk hergestellt wurde. Dieser Prozess ist jedoch derzeit noch nicht abgeschlossen.</translation> </message> <message> - <location line="-155"/> - <source>Unconfirmed:</source> - <translation>Unbestätigt:</translation> - </message> - <message> - <location line="-83"/> + <location line="-238"/> <source>Wallet</source> <translation>Wallet</translation> </message> <message> <location line="+51"/> - <source>Confirmed:</source> - <translation>Bestätigt:</translation> + <source>Available:</source> + <translation>Verfügbar:</translation> </message> <message> <location line="+16"/> @@ -1507,7 +1534,12 @@ Adresse: %4</translation> <translation>Ihr aktuell verfügbarer Kontostand</translation> </message> <message> - <location line="+32"/> + <location line="+16"/> + <source>Pending:</source> + <translation>Ausstehend:</translation> + </message> + <message> + <location line="+16"/> <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source> <translation>Betrag aus unbestätigten Transaktionen, der noch nicht im aktuell verfügbaren Kontostand enthalten ist</translation> </message> @@ -1640,18 +1672,18 @@ Adresse: %4</translation> <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> <translation>Fehler: Angegebenes Datenverzeichnis "%1" existiert nicht.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation>Fehler: Ungültige Kombination von -regtest und -testnet.</translation> </message> @@ -1702,7 +1734,7 @@ Adresse: %4</translation> <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>k.A.</translation> </message> @@ -1798,11 +1830,13 @@ Adresse: %4</translation> </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>eingehend:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>ausgehend:</translation> </message> @@ -1827,7 +1861,7 @@ Adresse: %4</translation> <translation>Konsole zurücksetzen</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> <translation>Willkommen in der Bitcoin-RPC-Konsole.</translation> </message> @@ -1842,7 +1876,7 @@ Adresse: %4</translation> <translation>Bitte <b>help</b> eingeben, um eine Übersicht verfügbarer Befehle zu erhalten.</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 B</translation> </message> @@ -1958,7 +1992,7 @@ Adresse: %4</translation> <translation>Anzeigen</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> <translation>Die ausgewählten Einträge aus der Liste entfernen</translation> </message> @@ -1968,7 +2002,7 @@ Adresse: %4</translation> <translation>Entfernen</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>Bezeichnung kopieren</translation> </message> @@ -2038,7 +2072,7 @@ Adresse: %4</translation> <message> <location line="+2"/> <source>Message</source> - <translation>Nachricht signieren</translation> + <translation>Nachricht</translation> </message> <message> <location line="+10"/> @@ -2066,7 +2100,7 @@ Adresse: %4</translation> <message> <location line="+0"/> <source>Message</source> - <translation>Nachricht signieren</translation> + <translation>Nachricht</translation> </message> <message> <location line="+0"/> @@ -2189,12 +2223,12 @@ Adresse: %4</translation> <translation>&Zurücksetzen</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>Kontostand:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>Überweisung bestätigen</translation> </message> @@ -2641,7 +2675,7 @@ Adresse: %4</translation> <message> <location filename="../splashscreen.cpp" line="+28"/> <source>Bitcoin Core</source> - <translation>Bitcoin-Kern</translation> + <translation>Bitcoin Core</translation> </message> <message> <location line="+2"/> @@ -2671,6 +2705,11 @@ Adresse: %4</translation> </message> <message> <location line="+6"/> + <source>conflicted</source> + <translation>in Konflikt stehend</translation> + </message> + <message> + <location line="+2"/> <source>%1/offline</source> <translation>%1/offline</translation> </message> @@ -2774,7 +2813,7 @@ Adresse: %4</translation> <location line="+6"/> <location line="+9"/> <source>Message</source> - <translation>Nachricht signieren</translation> + <translation>Nachricht</translation> </message> <message> <location line="-7"/> @@ -2832,12 +2871,12 @@ Adresse: %4</translation> <translation>, wurde noch nicht erfolgreich übertragen</translation> </message> <message numerus="yes"> - <location line="-35"/> + <location line="-37"/> <source>Open for %n more block(s)</source> <translation><numerusform>Offen für %n weiteren Block</numerusform><numerusform>Offen für %n weitere Blöcke</numerusform></translation> </message> <message> - <location line="+70"/> + <location line="+72"/> <source>unknown</source> <translation>unbekannt</translation> </message> @@ -2878,12 +2917,12 @@ Adresse: %4</translation> <translation>Betrag</translation> </message> <message> - <location line="+59"/> + <location line="+78"/> <source>Immature (%1 confirmations, will be available after %2)</source> <translation>Unreif (%1 Bestätigungen, wird verfügbar sein nach %2)</translation> </message> <message numerus="yes"> - <location line="+16"/> + <location line="-21"/> <source>Open for %n more block(s)</source> <translation><numerusform>Offen für %n weiteren Block</numerusform><numerusform>Offen für %n weitere Blöcke</numerusform></translation> </message> @@ -2893,23 +2932,12 @@ Adresse: %4</translation> <translation>Offen bis %1</translation> </message> <message> - <location line="+3"/> - <source>Offline (%1 confirmations)</source> - <translation>Offline (%1 Bestätigungen)</translation> - </message> - <message> - <location line="+3"/> - <source>Unconfirmed (%1 of %2 confirmations)</source> - <translation>Unbestätigt (%1 von %2 Bestätigungen)</translation> - </message> - <message> - <location line="-22"/> - <location line="+25"/> + <location line="+12"/> <source>Confirmed (%1 confirmations)</source> <translation>Bestätigt (%1 Bestätigungen)</translation> </message> <message> - <location line="-22"/> + <location line="+9"/> <source>This block was not received by any other nodes and will probably not be accepted!</source> <translation>Dieser Block wurde von keinem anderen Knoten empfangen und wird wahrscheinlich nicht angenommen werden!</translation> </message> @@ -2919,7 +2947,27 @@ Adresse: %4</translation> <translation>Generiert, jedoch nicht angenommen</translation> </message> <message> - <location line="+62"/> + <location line="-21"/> + <source>Offline</source> + <translation>Offline</translation> + </message> + <message> + <location line="+3"/> + <source>Unconfirmed</source> + <translation>Unbestätigt</translation> + </message> + <message> + <location line="+3"/> + <source>Confirming (%1 of %2 recommended confirmations)</source> + <translation>Bestätige (%1 von %2 empfohlenen Bestätigungen)</translation> + </message> + <message> + <location line="+6"/> + <source>Conflicted</source> + <translation>in Konflikt stehend</translation> + </message> + <message> + <location line="+51"/> <source>Received with</source> <translation>Empfangen über</translation> </message> @@ -2949,7 +2997,7 @@ Adresse: %4</translation> <translation>(k.A.)</translation> </message> <message> - <location line="+199"/> + <location line="+190"/> <source>Transaction status. Hover over this field to show number of confirmations.</source> <translation>Transaktionsstatus. Fahren Sie mit der Maus über dieses Feld, um die Anzahl der Bestätigungen zu sehen.</translation> </message> @@ -3078,7 +3126,7 @@ Adresse: %4</translation> <translation>Transaktionsdetails anzeigen</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>Transaktionsverlauf exportieren</translation> </message> @@ -3215,12 +3263,12 @@ Adresse: %4</translation> <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+221"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>Benutzung:</translation> </message> <message> - <location line="-54"/> + <location line="-55"/> <source>List commands</source> <translation>Befehle auflisten</translation> </message> @@ -3250,12 +3298,7 @@ Adresse: %4</translation> <translation>Datenverzeichnis festlegen</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Größe des Datenbankcaches in MB festlegen (Standard: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation><port> nach Verbindungen abhören (Standard: 8333 oder Testnetz: 18333)</translation> </message> @@ -3275,47 +3318,47 @@ Adresse: %4</translation> <translation>Die eigene öffentliche Adresse angeben</translation> </message> <message> - <location line="+5"/> + <location line="+6"/> <source>Threshold for disconnecting misbehaving peers (default: 100)</source> <translation>Schwellenwert, um Verbindungen zu sich nicht konform verhaltenden Gegenstellen zu beenden (Standard: 100)</translation> </message> <message> - <location line="-148"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Anzahl Sekunden, während denen sich nicht konform verhaltenden Gegenstellen die Wiederverbindung verweigert wird (Standard: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>Beim Einrichten des abzuhörenden RPC-Ports %u für IPv4 ist ein Fehler aufgetreten: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation><port> nach JSON-RPC-Verbindungen abhören (Standard: 8332 oder Testnetz: 18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>Kommandozeilenbefehle und JSON-RPC-Befehle annehmen</translation> </message> <message> - <location line="+80"/> + <location line="+81"/> <source>Run in the background as a daemon and accept commands</source> <translation>Als Hintergrunddienst starten und Befehle annehmen</translation> </message> <message> - <location line="+39"/> + <location line="+40"/> <source>Use the test network</source> <translation>Das Testnetz verwenden</translation> </message> <message> - <location line="-118"/> + <location line="-120"/> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Eingehende Verbindungen annehmen (Standard: 1, wenn nicht -proxy oder -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3355,12 +3398,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>An die angegebene Adresse binden und immer abhören. Für IPv6 [Host]:Port-Schreibweise verwenden</translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>Datenverzeichnis %s kann nicht gesperrt werden. Evtl. wurde Bitcoin bereits gestartet.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> <translation>Regressionstest-Modus aktivieren, welcher eine spezielle Kette nutzt, in der Blöcke sofort gelöst werden. Dies ist für Regressionstest-Tools und Anwendungsentwicklung gedacht.</translation> </message> @@ -3371,6 +3409,11 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation>Fehler: Abhören nach eingehenden Verbindungen fehlgeschlagen (Fehler %d)</translation> + </message> + <message> + <location line="+2"/> <source>Error: 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>Fehler: Die Transaktion wurde abgelehnt! Dies kann passieren, wenn einige Bitcoins aus ihrer Wallet bereits ausgegeben wurden. Beispielsweise weil Sie eine Kopie ihrer wallet.dat genutzt, die Bitcoins dort ausgegeben haben und dies daher in der derzeit aktiven Wallet nicht vermerkt ist.</translation> </message> @@ -3390,7 +3433,12 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Dies ist eine Vorab-Testversion - Verwendung auf eigene Gefahr - nicht für Mining- oder Handelsanwendungen nutzen!</translation> </message> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation>Kann auf diesem Computer nicht an %s binden. Evtl. wurde Bitcoin Core bereits gestartet.</translation> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation>Separaten SOCKS5-Proxy verwenden, um Gegenstellen über versteckte Tor-Dienste zu erreichen (Standard: -proxy)</translation> </message> @@ -3437,7 +3485,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <message> <location line="+1"/> <source>Bitcoin Core Daemon</source> - <translation>"Bitcoin Core"-Daemon</translation> + <translation>"Bitcoin Core"-Hintergrunddienst</translation> </message> <message> <location line="+1"/> @@ -3451,6 +3499,11 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f </message> <message> <location line="+5"/> + <source>Clear list of wallet transactions (diagnostic tool; implies -rescan)</source> + <translation>Liste der Wallet-Transaktionen zurücksetzen (Diagnosetool; beinhaltet -rescan)</translation> + </message> + <message> + <location line="+1"/> <source>Connect only to the specified node(s)</source> <translation>Nur mit dem/den angegebenen Knoten verbinden</translation> </message> @@ -3645,7 +3698,12 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Befehl an Bitcoin-Server senden</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation>Größe des Datenbankcaches in MB festlegen (%d bis %d, Standard: %d)</translation> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation>Maximale Blockgröße in Byte festlegen (Standard: %d)</translation> </message> @@ -3661,6 +3719,11 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f </message> <message> <location line="+2"/> + <source>Spend unconfirmed change when sending transactions (default: 1)</source> + <translation>Unbestätigtes Wechselgeld beim Senden von Transaktionen ausgeben (Standard: 1)</translation> + </message> + <message> + <location line="+1"/> <source>Start Bitcoin server</source> <translation>Bitcoin-Server starten</translation> </message> @@ -3710,12 +3773,17 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Sie müssen die Datenbank mit Hilfe von -reindex neu aufbauen, um -txindex zu verändern</translation> </message> <message> - <location line="-79"/> + <location line="-80"/> <source>Imports blocks from external blk000??.dat file</source> <translation>Blöcke aus externer Datei blk000??.dat importieren</translation> </message> <message> - <location line="-105"/> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> + <translation>Datenverzeichnis %s kann nicht gesperrt werden. Evtl. wurde Bitcoin Core bereits gestartet.</translation> + </message> + <message> + <location line="+19"/> <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>Kommando ausführen wenn ein relevanter Alarm empfangen wird oder wir einen wirklich langen Fork entdecken (%s im Kommando wird durch die Nachricht ersetzt)</translation> </message> @@ -3735,7 +3803,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Maximale Anzahl an Skript-Verifizierungs-Threads festlegen (bis zu 16, 0 = automatisch, <0 = so viele Kerne frei lassen, Standard: 0)</translation> </message> <message> - <location line="+89"/> + <location line="+91"/> <source>Information</source> <translation>Hinweis</translation> </message> @@ -3805,7 +3873,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Verbindungstimeout in Millisekunden festlegen (Standard: 5000)</translation> </message> <message> - <location line="+6"/> + <location line="+7"/> <source>System error: </source> <translation>Systemfehler: </translation> </message> @@ -3851,6 +3919,11 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f </message> <message> <location line="+2"/> + <source>Zapping all transactions from wallet...</source> + <translation>Lösche alle Transaktionen aus Wallet...</translation> + </message> + <message> + <location line="+1"/> <source>version</source> <translation>Version</translation> </message> @@ -3860,32 +3933,32 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>wallet.dat beschädigt, Rettung fehlgeschlagen</translation> </message> <message> - <location line="-58"/> + <location line="-60"/> <source>Password for JSON-RPC connections</source> <translation>Passwort für JSON-RPC-Verbindungen</translation> </message> <message> - <location line="-70"/> + <location line="-71"/> <source>Allow JSON-RPC connections from specified IP address</source> <translation>JSON-RPC-Verbindungen von der angegebenen IP-Adresse erlauben</translation> </message> <message> - <location line="+80"/> + <location line="+81"/> <source>Send commands to node running on <ip> (default: 127.0.0.1)</source> <translation>Sende Befehle an Knoten <ip> (Standard: 127.0.0.1)</translation> </message> <message> - <location line="-132"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>Kommando ausführen wenn der beste Block wechselt (%s im Kommando wird durch den Hash des Blocks ersetzt)</translation> </message> <message> - <location line="+161"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> <translation>Wallet auf das neueste Format aktualisieren</translation> </message> <message> - <location line="-24"/> + <location line="-25"/> <source>Set key pool size to <n> (default: 100)</source> <translation>Größe des Schlüsselpools festlegen auf <n> (Standard: 100)</translation> </message> @@ -3895,12 +3968,12 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Blockkette erneut nach fehlenden Wallet-Transaktionen durchsuchen</translation> </message> <message> - <location line="+38"/> + <location line="+39"/> <source>Use OpenSSL (https) for JSON-RPC connections</source> <translation>OpenSSL (https) für JSON-RPC-Verbindungen verwenden</translation> </message> <message> - <location line="-30"/> + <location line="-31"/> <source>Server certificate file (default: server.cert)</source> <translation>Serverzertifikat (Standard: server.cert)</translation> </message> @@ -3910,7 +3983,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Privater Serverschlüssel (Standard: server.pem)</translation> </message> <message> - <location line="+16"/> + <location line="+17"/> <source>This help message</source> <translation>Dieser Hilfetext</translation> </message> @@ -3920,12 +3993,12 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Kann auf diesem Computer nicht an %s binden (von bind zurückgegebener Fehler %d, %s)</translation> </message> <message> - <location line="-107"/> + <location line="-109"/> <source>Allow DNS lookups for -addnode, -seednode and -connect</source> <translation>Erlaube DNS-Namensauflösung für -addnode, -seednode und -connect</translation> </message> <message> - <location line="+60"/> + <location line="+61"/> <source>Loading addresses...</source> <translation>Lade Adressen...</translation> </message> @@ -3940,12 +4013,12 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Fehler beim Laden von wallet.dat: Wallet benötigt neuere Version von Bitcoin</translation> </message> <message> - <location line="+98"/> + <location line="+99"/> <source>Wallet needed to be rewritten: restart Bitcoin to complete</source> <translation>Wallet musste neu geschrieben werden: starten Sie Bitcoin zur Fertigstellung neu</translation> </message> <message> - <location line="-100"/> + <location line="-101"/> <source>Error loading wallet.dat</source> <translation>Fehler beim Laden von wallet.dat</translation> </message> @@ -3955,7 +4028,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Ungültige Adresse in -proxy: '%s'</translation> </message> <message> - <location line="+56"/> + <location line="+57"/> <source>Unknown network specified in -onlynet: '%s'</source> <translation>Unbekannter Netztyp in -onlynet angegeben: '%s'</translation> </message> @@ -3965,7 +4038,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Unbekannte Proxyversion in -socks angefordert: %i</translation> </message> <message> - <location line="-101"/> + <location line="-103"/> <source>Cannot resolve -bind address: '%s'</source> <translation>Kann Adresse in -bind nicht auflösen: '%s'</translation> </message> @@ -3975,7 +4048,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Kann Adresse in -externalip nicht auflösen: '%s'</translation> </message> <message> - <location line="+48"/> + <location line="+49"/> <source>Invalid amount for -paytxfee=<amount>: '%s'</source> <translation>Ungültiger Betrag für -paytxfee=<amount>: '%s'</translation> </message> @@ -3995,22 +4068,17 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Lade Blockindex...</translation> </message> <message> - <location line="-62"/> + <location line="-63"/> <source>Add a node to connect to and attempt to keep the connection open</source> <translation>Mit dem Knoten verbinden und versuchen die Verbindung aufrecht zu halten</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>Kann auf diesem Computer nicht an %s binden. Evtl. wurde Bitcoin bereits gestartet.</translation> - </message> - <message> - <location line="+95"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>Lade Wallet...</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Cannot downgrade wallet</source> <translation>Wallet kann nicht auf eine ältere Version herabgestuft werden</translation> </message> @@ -4020,7 +4088,7 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Standardadresse kann nicht geschrieben werden</translation> </message> <message> - <location line="+67"/> + <location line="+68"/> <source>Rescanning...</source> <translation>Durchsuche erneut...</translation> </message> @@ -4030,17 +4098,17 @@ zum Beispiel: alertnotify=echo %%s | mail -s \"Bitcoin Alert\" admin@f <translation>Laden abgeschlossen</translation> </message> <message> - <location line="+85"/> + <location line="+86"/> <source>To use the %s option</source> <translation>Zur Nutzung der %s Option</translation> </message> <message> - <location line="-77"/> + <location line="-78"/> <source>Error</source> <translation>Fehler</translation> </message> <message> - <location line="-35"/> + <location line="-36"/> <source>You must set rpcpassword=<password> in the configuration file: %s If the file does not exist, create it with owner-readable-only file permissions.</source> diff --git a/src/qt/locale/bitcoin_en.ts b/src/qt/locale/bitcoin_en.ts index 9523a38801..cbe59c553d 100644 --- a/src/qt/locale/bitcoin_en.ts +++ b/src/qt/locale/bitcoin_en.ts @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE TS> -<TS version="2.1" language="en"> +<TS version="2.0" language="en"> <context> <name>AboutDialog</name> <message> @@ -41,7 +41,7 @@ This product includes software developed by the OpenSSL Project for use in the O <message> <location line="+12"/> <location line="+2"/> - <source> (%1-bit)</source> + <source>(%1-bit)</source> <translation type="unfinished"></translation> </message> </context> @@ -724,7 +724,7 @@ Address: %4 <translation>Wallet is <b>encrypted</b> and currently <b>locked</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+441"/> + <location filename="../bitcoin.cpp" line="+443"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</translation> </message> @@ -946,7 +946,7 @@ Address: %4 <translation type="unfinished"></translation> </message> <message> - <location line="+31"/> + <location line="+32"/> <source>none</source> <translation type="unfinished"></translation> </message> @@ -1014,12 +1014,12 @@ Address: %4 </message> <message> <location line="+43"/> - <location line="+63"/> + <location line="+61"/> <source>(no label)</source> <translation type="unfinished">(no label)</translation> </message> <message> - <location line="-9"/> + <location line="-7"/> <source>change from %1 (%2)</source> <translation type="unfinished"></translation> </message> @@ -1100,7 +1100,7 @@ Address: %4 <context> <name>FreespaceChecker</name> <message> - <location filename="../intro.cpp" line="+65"/> + <location filename="../intro.cpp" line="+68"/> <source>A new data directory will be created.</source> <translation>A new data directory will be created.</translation> </message> @@ -1158,7 +1158,7 @@ Address: %4 <translation type="unfinished">UI options</translation> </message> <message> - <location line="+1"/> + <location line="+2"/> <source>Set language, for example "de_DE" (default: system locale)</source> <translation type="unfinished">Set language, for example "de_DE" (default: system locale)</translation> </message> @@ -1169,11 +1169,16 @@ Address: %4 </message> <message> <location line="+1"/> + <source>Set SSL root certificates for payment request (default: -system-)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Show splash screen on startup (default: 1)</source> <translation type="unfinished">Show splash screen on startup (default: 1)</translation> </message> <message> - <location line="+1"/> + <location line="-4"/> <source>Choose data directory on startup (default: 0)</source> <translation type="unfinished">Choose data directory on startup (default: 0)</translation> </message> @@ -1221,7 +1226,7 @@ Address: %4 <translation type="unfinished">Error: Specified data directory "%1" can not be created.</translation> </message> <message> - <location line="+19"/> + <location line="+24"/> <source>Error</source> <translation>Error</translation> </message> @@ -1277,7 +1282,7 @@ Address: %4 <translation>&Main</translation> </message> <message> - <location line="+122"/> + <location line="+116"/> <source>Optional transaction fee per kB that helps make sure your transactions are processed quickly. Most transactions are 1 kB.</source> <translation>Optional transaction fee per kB that helps make sure your transactions are processed quickly. Most transactions are 1 kB.</translation> </message> @@ -1287,7 +1292,7 @@ Address: %4 <translation>Pay transaction &fee</translation> </message> <message> - <location line="-131"/> + <location line="-125"/> <source>Automatically start Bitcoin after logging in to the system.</source> <translation>Automatically start Bitcoin after logging in to the system.</translation> </message> @@ -1312,12 +1317,7 @@ Address: %4 <translation type="unfinished"></translation> </message> <message> - <location line="+13"/> - <source>Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</source> - <translation type="unfinished">Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</translation> - </message> - <message> - <location line="+153"/> + <location line="+160"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation type="unfinished"></translation> </message> @@ -1352,7 +1352,12 @@ Address: %4 <translation>&Network</translation> </message> <message> - <location line="-95"/> + <location line="-131"/> + <source>(0 = auto, <0 = leave that many cores free)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+36"/> <source>W&allet</source> <translation type="unfinished"></translation> </message> @@ -1487,7 +1492,7 @@ Address: %4 <translation>&Cancel</translation> </message> <message> - <location filename="../optionsdialog.cpp" line="+70"/> + <location filename="../optionsdialog.cpp" line="+72"/> <source>default</source> <translation>default</translation> </message> @@ -1497,7 +1502,7 @@ Address: %4 <translation type="unfinished"></translation> </message> <message> - <location line="+78"/> + <location line="+80"/> <source>Confirm options reset</source> <translation>Confirm options reset</translation> </message> @@ -1691,22 +1696,28 @@ Address: %4 <name>QObject</name> <message> <location filename="../bitcoin.cpp" line="+63"/> - <location line="+14"/> + <location line="+7"/> + <location line="+13"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-13"/> + <location line="-19"/> <source>Error: Specified data directory "%1" does not exist.</source> <translation>Error: Specified data directory "%1" does not exist.</translation> </message> <message> - <location line="+13"/> + <location line="+7"/> + <source>Error: Cannot parse configuration file: %1. Only use key=value syntax.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+12"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="../guiutil.cpp" line="+82"/> + <location filename="../guiutil.cpp" line="+89"/> <source>Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</source> <translation type="unfinished">Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</translation> </message> @@ -2491,7 +2502,7 @@ Address: %4 <context> <name>ShutdownWindow</name> <message> - <location filename="../utilitydialog.cpp" line="+48"/> + <location filename="../utilitydialog.cpp" line="+52"/> <source>Bitcoin Core is shutting down...</source> <translation type="unfinished"></translation> </message> @@ -2691,7 +2702,7 @@ Address: %4 <context> <name>SplashScreen</name> <message> - <location filename="../splashscreen.cpp" line="+28"/> + <location filename="../splashscreen.cpp" line="+32"/> <source>Bitcoin Core</source> <translation type="unfinished">Bitcoin Core</translation> </message> @@ -3250,7 +3261,7 @@ Address: %4 <context> <name>WalletView</name> <message> - <location filename="../walletview.cpp" line="+43"/> + <location filename="../walletview.cpp" line="+44"/> <source>&Export</source> <translation>&Export</translation> </message> @@ -3260,7 +3271,7 @@ Address: %4 <translation>Export the data in the current tab to a file</translation> </message> <message> - <location line="+181"/> + <location line="+184"/> <source>Backup Wallet</source> <translation>Backup Wallet</translation> </message> @@ -3293,12 +3304,12 @@ Address: %4 <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+226"/> + <location filename="../bitcoinstrings.cpp" line="+261"/> <source>Usage:</source> <translation>Usage:</translation> </message> <message> - <location line="-55"/> + <location line="-66"/> <source>List commands</source> <translation>List commands</translation> </message> @@ -3308,12 +3319,12 @@ Address: %4 <translation>Get help for a command</translation> </message> <message> - <location line="+26"/> + <location line="+27"/> <source>Options:</source> <translation>Options:</translation> </message> <message> - <location line="+22"/> + <location line="+32"/> <source>Specify configuration file (default: bitcoin.conf)</source> <translation>Specify configuration file (default: bitcoin.conf)</translation> </message> @@ -3328,22 +3339,22 @@ Address: %4 <translation>Specify data directory</translation> </message> <message> - <location line="-35"/> + <location line="-46"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation>Listen for connections on <port> (default: 8333 or testnet: 18333)</translation> </message> <message> - <location line="+5"/> + <location line="+6"/> <source>Maintain at most <n> connections to peers (default: 125)</source> <translation>Maintain at most <n> connections to peers (default: 125)</translation> </message> <message> - <location line="-51"/> + <location line="-57"/> <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="+84"/> + <location line="+100"/> <source>Specify your own public address</source> <translation>Specify your own public address</translation> </message> @@ -3353,42 +3364,47 @@ Address: %4 <translation>Threshold for disconnecting misbehaving peers (default: 100)</translation> </message> <message> - <location line="-151"/> + <location line="-172"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</translation> </message> <message> - <location line="-38"/> + <location line="-52"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>An error occurred while setting up the RPC port %u for listening on IPv4: %s</translation> </message> <message> - <location line="+36"/> + <location line="+50"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</translation> </message> <message> - <location line="+46"/> + <location line="+51"/> <source>Accept command line and JSON-RPC commands</source> <translation>Accept command line and JSON-RPC commands</translation> </message> <message> - <location line="+81"/> + <location line="+7"/> + <source>Bitcoin Core RPC client version</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+87"/> <source>Run in the background as a daemon and accept commands</source> <translation>Run in the background as a daemon and accept commands</translation> </message> <message> - <location line="+40"/> + <location line="+43"/> <source>Use the test network</source> <translation>Use the test network</translation> </message> <message> - <location line="-120"/> + <location line="-136"/> <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="-98"/> + <location line="-117"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3429,6 +3445,11 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+6"/> + <source>Continuously rate-limit free transactions to <n>*1000 bytes per minute (default:15)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+3"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> <translation>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</translation> </message> @@ -3458,7 +3479,37 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Execute command when a wallet transaction changes (%s in cmd is replaced by TxID)</translation> </message> <message> - <location line="+18"/> + <location line="+6"/> + <source>Fees smaller than this are considered zero fee (for transaction creation) (default:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+3"/> + <source>Flush database activity from memory pool to disk log every <n> megabytes (default: 100)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+3"/> + <source>How thorough the block verification of -checkblocks is (0-4, default: 3)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+2"/> + <source>In this mode -genproclimit controls how many blocks are generated immediately.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+12"/> + <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> + </message> + <message> + <location line="+3"/> + <source>Set the processor limit for when generation is on (-1 = unlimited, default: -1)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+3"/> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> <translation>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</translation> </message> @@ -3504,6 +3555,16 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+9"/> + <source>(default: 1)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>(default: wallet.dat)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source><category> can be:</source> <translation type="unfinished"></translation> </message> @@ -3518,12 +3579,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> - <source>Bitcoin RPC client version</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+1"/> + <location line="+2"/> <source>Block creation options:</source> <translation>Block creation options:</translation> </message> @@ -3549,11 +3605,26 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+2"/> + <source>Connection options:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Corrupted block database detected</source> <translation>Corrupted block database detected</translation> </message> <message> <location line="+1"/> + <source>Debugging/Testing options:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Disable safemode, override a real safe mode event (default: 0)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Discover own IP address (default: 1 when listening and no -externalip)</source> <translation>Discover own IP address (default: 1 when listening and no -externalip)</translation> </message> @@ -3664,11 +3735,21 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+1"/> + <source>Fees smaller than this are considered zero fee (for relaying) (default:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Find peers using DNS lookup (default: 1 unless -connect)</source> <translation>Find peers using DNS lookup (default: 1 unless -connect)</translation> </message> <message> <location line="+1"/> + <source>Force safe mode (default: 0)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Generate coins (default: 0)</source> <translation>Generate coins (default: 0)</translation> </message> @@ -3679,11 +3760,6 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+1"/> - <source>How thorough the block verification is (0-4, default: 3)</source> - <translation>How thorough the block verification is (0-4, default: 3)</translation> - </message> - <message> - <location line="+1"/> <source>If <category> is not supplied, output all debugging information.</source> <translation type="unfinished"></translation> </message> @@ -3698,7 +3774,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation type="unfinished"></translation> </message> <message> - <location line="+15"/> + <location line="+17"/> <source>Not enough file descriptors available.</source> <translation>Not enough file descriptors available.</translation> </message> @@ -3708,27 +3784,22 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> + <location line="+4"/> <source>RPC client options:</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> + <location line="+4"/> <source>Rebuild block chain index from current blk000??.dat files</source> <translation>Rebuild block chain index from current blk000??.dat files</translation> </message> <message> - <location line="+5"/> + <location line="+6"/> <source>Select SOCKS version for -proxy (4 or 5, default: 5)</source> <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> - <source>Send command to Bitcoin server</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+5"/> + <location line="+6"/> <source>Set database cache size in megabytes (%d to %d, default: %d)</source> <translation type="unfinished"></translation> </message> @@ -3743,7 +3814,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Set the number of threads to service RPC calls (default: 4)</translation> </message> <message> - <location line="+7"/> + <location line="+10"/> <source>Specify wallet file (within data directory)</source> <translation>Specify wallet file (within data directory)</translation> </message> @@ -3753,12 +3824,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation type="unfinished"></translation> </message> <message> - <location line="+1"/> - <source>Start Bitcoin server</source> - <translation type="unfinished"></translation> - </message> - <message> - <location line="+3"/> + <location line="+4"/> <source>This is intended for regression testing tools and app development.</source> <translation type="unfinished"></translation> </message> @@ -3803,22 +3869,22 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>You need to rebuild the database using -reindex to change -txindex</translation> </message> <message> - <location line="-80"/> + <location line="-92"/> <source>Imports blocks from external blk000??.dat file</source> <translation>Imports blocks from external blk000??.dat file</translation> </message> <message> - <location line="-126"/> + <location line="-149"/> <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> <translation type="unfinished"></translation> </message> <message> - <location line="+19"/> + <location line="+22"/> <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>Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)</translation> </message> <message> - <location line="+14"/> + <location line="+25"/> <source>Output debugging information (default: 0, supplying <category> is optional)</source> <translation type="unfinished"></translation> </message> @@ -3828,12 +3894,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation type="unfinished"></translation> </message> <message> - <location line="+2"/> - <source>Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</source> - <translation>Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</translation> - </message> - <message> - <location line="+91"/> + <location line="+102"/> <source>Information</source> <translation>Information</translation> </message> @@ -3848,7 +3909,17 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Invalid amount for -mintxfee=<amount>: '%s'</translation> </message> <message> - <location line="+8"/> + <location line="+3"/> + <source>Limit size of signature cache to <n> entries (default: 50000)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+6"/> + <source>Log transaction priority and fee per kB when mining blocks (default: 0)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Maintain a full transaction index (default: 0)</source> <translation>Maintain a full transaction index (default: 0)</translation> </message> @@ -3873,12 +3944,52 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Only connect to nodes in network <net> (IPv4, IPv6 or Tor)</translation> </message> <message> - <location line="+9"/> + <location line="+4"/> + <source>Print block on startup, if found in block index</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Print block tree on startup (default: 0)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>RPC SSL options: (see the Bitcoin Wiki for SSL setup instructions)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+2"/> + <source>RPC server options:</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Randomly drop 1 of every <n> network messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Randomly fuzz 1 of every <n> network messages</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+4"/> + <source>Run a thread to flush wallet periodically (default: 1)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+2"/> <source>SSL options: (see the Bitcoin Wiki for SSL setup instructions)</source> <translation>SSL options: (see the Bitcoin Wiki for SSL setup instructions)</translation> </message> <message> - <location line="+4"/> + <location line="+2"/> + <source>Send command to Bitcoin Core</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+2"/> <source>Send trace/debug info to console instead of debug.log file</source> <translation>Send trace/debug info to console instead of debug.log file</translation> </message> @@ -3889,6 +4000,21 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+2"/> + <source>Sets the DB_PRIVATE flag in the wallet db environment (default: 1)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Show all debugging options (usage: --help -help-debug)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> + <source>Show benchmark information (default: 0)</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>Shrink debug.log file on client startup (default: 1 when no -debug)</source> <translation>Shrink debug.log file on client startup (default: 1 when no -debug)</translation> </message> @@ -3903,7 +4029,12 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Specify connection timeout in milliseconds (default: 5000)</translation> </message> <message> - <location line="+7"/> + <location line="+6"/> + <source>Start Bitcoin Core Daemon</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>System error: </source> <translation>System error: </translation> </message> @@ -3954,6 +4085,11 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+1"/> + <source>on startup</source> + <translation type="unfinished"></translation> + </message> + <message> + <location line="+1"/> <source>version</source> <translation type="unfinished">version</translation> </message> @@ -3963,47 +4099,47 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>wallet.dat corrupt, salvage failed</translation> </message> <message> - <location line="-60"/> + <location line="-71"/> <source>Password for JSON-RPC connections</source> <translation>Password for JSON-RPC connections</translation> </message> <message> - <location line="-71"/> + <location line="-77"/> <source>Allow JSON-RPC connections from specified IP address</source> <translation>Allow JSON-RPC connections from specified IP address</translation> </message> <message> - <location line="+81"/> + <location line="+94"/> <source>Send commands to node running on <ip> (default: 127.0.0.1)</source> <translation>Send commands to node running on <ip> (default: 127.0.0.1)</translation> </message> <message> - <location line="-134"/> + <location line="-163"/> <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="+164"/> + <location line="+196"/> <source>Upgrade wallet to latest format</source> <translation>Upgrade wallet to latest format</translation> </message> <message> - <location line="-25"/> + <location line="-28"/> <source>Set key pool size to <n> (default: 100)</source> <translation>Set key pool size to <n> (default: 100)</translation> </message> <message> - <location line="-11"/> + <location line="-12"/> <source>Rescan the block chain for missing wallet transactions</source> <translation>Rescan the block chain for missing wallet transactions</translation> </message> <message> - <location line="+39"/> + <location line="+43"/> <source>Use OpenSSL (https) for JSON-RPC connections</source> <translation>Use OpenSSL (https) for JSON-RPC connections</translation> </message> <message> - <location line="-31"/> + <location line="-34"/> <source>Server certificate file (default: server.cert)</source> <translation>Server certificate file (default: server.cert)</translation> </message> @@ -4013,7 +4149,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Server private key (default: server.pem)</translation> </message> <message> - <location line="+17"/> + <location line="+20"/> <source>This help message</source> <translation>This help message</translation> </message> @@ -4023,17 +4159,17 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Unable to bind to %s on this computer (bind returned error %d, %s)</translation> </message> <message> - <location line="-109"/> + <location line="-125"/> <source>Allow DNS lookups for -addnode, -seednode and -connect</source> <translation>Allow DNS lookups for -addnode, -seednode and -connect</translation> </message> <message> - <location line="+61"/> + <location line="+66"/> <source>Loading addresses...</source> <translation>Loading addresses...</translation> </message> <message> - <location line="-37"/> + <location line="-39"/> <source>Error loading wallet.dat: Wallet corrupted</source> <translation>Error loading wallet.dat: Wallet corrupted</translation> </message> @@ -4043,22 +4179,22 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Error loading wallet.dat: Wallet requires newer version of Bitcoin</translation> </message> <message> - <location line="+99"/> + <location line="+112"/> <source>Wallet needed to be rewritten: restart Bitcoin to complete</source> <translation>Wallet needed to be rewritten: restart Bitcoin to complete</translation> </message> <message> - <location line="-101"/> + <location line="-114"/> <source>Error loading wallet.dat</source> <translation>Error loading wallet.dat</translation> </message> <message> - <location line="+31"/> + <location line="+32"/> <source>Invalid -proxy address: '%s'</source> <translation>Invalid -proxy address: '%s'</translation> </message> <message> - <location line="+57"/> + <location line="+69"/> <source>Unknown network specified in -onlynet: '%s'</source> <translation>Unknown network specified in -onlynet: '%s'</translation> </message> @@ -4068,7 +4204,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Unknown -socks proxy version requested: %i</translation> </message> <message> - <location line="-103"/> + <location line="-119"/> <source>Cannot resolve -bind address: '%s'</source> <translation>Cannot resolve -bind address: '%s'</translation> </message> @@ -4078,7 +4214,7 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Cannot resolve -externalip address: '%s'</translation> </message> <message> - <location line="+49"/> + <location line="+53"/> <source>Invalid amount for -paytxfee=<amount>: '%s'</source> <translation>Invalid amount for -paytxfee=<amount>: '%s'</translation> </message> @@ -4093,22 +4229,22 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Insufficient funds</translation> </message> <message> - <location line="+10"/> + <location line="+11"/> <source>Loading block index...</source> <translation>Loading block index...</translation> </message> <message> - <location line="-63"/> + <location line="-68"/> <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="+64"/> + <location line="+69"/> <source>Loading wallet...</source> <translation>Loading wallet...</translation> </message> <message> - <location line="-57"/> + <location line="-62"/> <source>Cannot downgrade wallet</source> <translation>Cannot downgrade wallet</translation> </message> @@ -4118,27 +4254,27 @@ for example: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Cannot write default address</translation> </message> <message> - <location line="+68"/> + <location line="+80"/> <source>Rescanning...</source> <translation>Rescanning...</translation> </message> <message> - <location line="-58"/> + <location line="-67"/> <source>Done loading</source> <translation>Done loading</translation> </message> <message> - <location line="+86"/> + <location line="+99"/> <source>To use the %s option</source> <translation>To use the %s option</translation> </message> <message> - <location line="-78"/> + <location line="-91"/> <source>Error</source> <translation>Error</translation> </message> <message> - <location line="-36"/> + <location line="-41"/> <source>You must set rpcpassword=<password> in the configuration file: %s If the file does not exist, create it with owner-readable-only file permissions.</source> diff --git a/src/qt/locale/bitcoin_es_DO.ts b/src/qt/locale/bitcoin_es_DO.ts index 2126ff2230..c78a043113 100644 --- a/src/qt/locale/bitcoin_es_DO.ts +++ b/src/qt/locale/bitcoin_es_DO.ts @@ -1,4 +1,4 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="es_DO" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="es_DO" version="2.1"> <context> <name>AboutDialog</name> <message> @@ -39,6 +39,12 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <source>The Bitcoin Core developers</source> <translation>Los desarrolladores del Núcleo de Bitcoin</translation> </message> + <message> + <location line="+12"/> + <location line="+2"/> + <source> (%1-bit)</source> + <translation type="unfinished"/> + </message> </context> <context> <name>AddressBookPage</name> @@ -68,7 +74,7 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>&Copiar</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation>&Cerrar</translation> </message> @@ -78,7 +84,7 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>&Copiar dirección</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>Borrar de la lista la dirección seleccionada</translation> </message> @@ -325,7 +331,7 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>Firmar &mensaje...</translation> </message> @@ -340,12 +346,12 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>&Vista general</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation>Nodo</translation> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>Mostrar vista general del monedero</translation> </message> @@ -466,17 +472,17 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>&Verificar mensaje...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>Monedero</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>&Enviar</translation> </message> @@ -532,18 +538,18 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>Barra de pestañas</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[testnet]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> <translation>Núcleo de Bitcoin</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> <translation>Solicitar pagos (genera codigo QR y URL's de Bitcoin)</translation> </message> @@ -571,7 +577,7 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <message> <location line="+2"/> <source>&Command-line options</source> - <translation type="unfinished"/> + <translation>&Opciones de linea de comando</translation> </message> <message> <location line="+1"/> @@ -605,7 +611,7 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>Procesados %1 bloques del historial de transacciones.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n hora</numerusform><numerusform>%n horas</numerusform></translation> </message> @@ -616,10 +622,21 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n semana</numerusform><numerusform>%n semanas</numerusform></translation> </message> <message> + <location line="+0"/> + <source>%1 and %2</source> + <translation type="unfinished"/> + </message> + <message numerus="yes"> + <location line="+0"/> + <source>%n year(s)</source> + <translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation> + </message> + <message> <location line="+4"/> <source>%1 behind</source> <translation>%1 atrás</translation> @@ -650,12 +667,12 @@ Eric Young (eay@cryptsoft.com) y el software UPnP escrito por Thomas Bernard.</t <translation>Información</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>Actualizado</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>Actualizando...</translation> </message> @@ -693,7 +710,7 @@ Dirección: %4 <translation>El monedero está <b>cifrado</b> y actualmente <b>bloqueado</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+438"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>Ha ocurrido un error crítico. Bitcoin ya no puede continuar con seguridad y se cerrará.</translation> </message> @@ -701,7 +718,7 @@ Dirección: %4 <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>Alerta de red</translation> </message> @@ -754,7 +771,7 @@ Dirección: %4 <translation>Cambio:</translation> </message> <message> - <location line="+63"/> + <location line="+56"/> <source>(un)select all</source> <translation>(des)selecciona todos</translation> </message> @@ -769,7 +786,7 @@ Dirección: %4 <translation>Modo lista</translation> </message> <message> - <location line="+52"/> + <location line="+53"/> <source>Amount</source> <translation>Cantidad</translation> </message> @@ -799,7 +816,7 @@ Dirección: %4 <translation>Prioridad</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>Copiar dirección</translation> </message> @@ -865,7 +882,7 @@ Dirección: %4 <translation>Copiar cambio</translation> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>lo más alto</translation> </message> @@ -917,10 +934,10 @@ Dirección: %4 <message> <location line="+31"/> <source>none</source> - <translation type="unfinished"/> + <translation>ninguno</translation> </message> <message> - <location line="+140"/> + <location line="+141"/> <source>Dust</source> <translation>Basura</translation> </message> @@ -958,7 +975,7 @@ Dirección: %4 <message> <location line="+1"/> <source>This label turns red, if the priority is smaller than "medium".</source> - <translation type="unfinished"/> + <translation>Esta etiqueta se convierte en rojo, si la prioridad es menor que "medio".</translation> </message> <message> <location line="+3"/> @@ -983,7 +1000,7 @@ Dirección: %4 </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(sin etiqueta)</translation> </message> @@ -1102,7 +1119,7 @@ Dirección: %4 <translation type="unfinished"/> </message> <message> - <location filename="../utilitydialog.cpp" line="+38"/> + <location filename="../utilitydialog.cpp" line="+24"/> <source>Bitcoin Core</source> <translation>Núcleo de Bitcoin</translation> </message> @@ -1180,7 +1197,7 @@ Dirección: %4 <translation>Utilice un directorio de datos personalizado:</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> @@ -1246,7 +1263,7 @@ Dirección: %4 <translation>&Principal</translation> </message> <message> - <location line="+6"/> + <location line="+122"/> <source>Optional transaction fee per kB that helps make sure your transactions are processed quickly. Most transactions are 1 kB.</source> <translation>Tarifa de transacción opcional por kB que ayuda a asegurar que sus transacciones sean procesadas rápidamente. La mayoría de transacciones son de 1kB.</translation> </message> @@ -1256,7 +1273,7 @@ Dirección: %4 <translation>Comisión de &transacciones</translation> </message> <message> - <location line="+31"/> + <location line="-131"/> <source>Automatically start Bitcoin after logging in to the system.</source> <translation>Iniciar Bitcoin automáticamente al encender el sistema.</translation> </message> @@ -1271,14 +1288,9 @@ Dirección: %4 <translation type="unfinished"/> </message> <message> - <location line="+13"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Establecer el tamaño de caché de la base de datos en megabytes (predeterminado: 25)</translation> - </message> - <message> - <location line="+13"/> + <location line="+16"/> <source>MB</source> - <translation type="unfinished"/> + <translation>MB</translation> </message> <message> <location line="+27"/> @@ -1291,9 +1303,9 @@ Dirección: %4 <translation>Configura el número de hilos para el script de verificación (hasta 16, 0 = auto, <0 = leave that many cores free, por fecto: 0)</translation> </message> <message> - <location line="+58"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> - <translation type="unfinished"/> + <translation>Conéctese a la red Bitcoin través de un proxy SOCKS.</translation> </message> <message> <location line="+3"/> @@ -1303,10 +1315,10 @@ Dirección: %4 <message> <location line="+34"/> <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> - <translation type="unfinished"/> + <translation>Dirección IP del proxy (ej. IPv4: 127.0.0.1 / IPv6: ::1)</translation> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> <translation type="unfinished"/> </message> @@ -1321,12 +1333,37 @@ Dirección: %4 <translation>&Restablecer opciones</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>&Red</translation> </message> <message> - <location line="+6"/> + <location line="-95"/> + <source>W&allet</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+65"/> + <source>Expert</source> + <translation>Experto</translation> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+7"/> + <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 type="unfinished"/> + </message> + <message> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+17"/> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Abrir automáticamente el puerto del cliente Bitcoin en el router. Esta opción solo funciona si el router admite UPnP y está activado.</translation> </message> @@ -1421,17 +1458,12 @@ Dirección: %4 <translation>&Mostrar las direcciones en la lista de transacciones</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> <translation>Mostrar o no características de control de moneda</translation> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation>Mostrar moneda y características de control (Avanzado)</translation> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>&Aceptar</translation> </message> @@ -1441,17 +1473,17 @@ Dirección: %4 <translation>&Cancelar</translation> </message> <message> - <location filename="../optionsdialog.cpp" line="+67"/> + <location filename="../optionsdialog.cpp" line="+70"/> <source>default</source> <translation>predeterminado</translation> </message> <message> - <location line="+57"/> + <location line="+58"/> <source>none</source> - <translation type="unfinished"/> + <translation>Ninguna</translation> </message> <message> - <location line="+75"/> + <location line="+78"/> <source>Confirm options reset</source> <translation>Confirme el restablecimiento de las opciones</translation> </message> @@ -1459,7 +1491,7 @@ Dirección: %4 <location line="+1"/> <location line="+29"/> <source>Client restart required to activate changes.</source> - <translation type="unfinished"/> + <translation>Reinicio del cliente para activar cambios.</translation> </message> <message> <location line="-29"/> @@ -1469,7 +1501,7 @@ Dirección: %4 <message> <location line="+33"/> <source>This change would require a client restart.</source> - <translation type="unfinished"/> + <translation>Este cambio requiere reinicio por parte del cliente.</translation> </message> <message> <location line="+34"/> @@ -1491,19 +1523,14 @@ Dirección: %4 <translation>La información mostrada puede estar desactualizada. Su monedero se sincroniza automáticamente con la red Bitcoin después de que se haya establecido una conexión, pero este proceso aún no se ha completado.</translation> </message> <message> - <location line="-155"/> - <source>Unconfirmed:</source> - <translation>No confirmado(s):</translation> - </message> - <message> - <location line="-83"/> + <location line="-238"/> <source>Wallet</source> <translation>Monedero</translation> </message> <message> <location line="+51"/> - <source>Confirmed:</source> - <translation>Confirmado:</translation> + <source>Available:</source> + <translation type="unfinished"/> </message> <message> <location line="+16"/> @@ -1511,7 +1538,12 @@ Dirección: %4 <translation>Su balance actual gastable</translation> </message> <message> - <location line="+32"/> + <location line="+16"/> + <source>Pending:</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+16"/> <source>Total of transactions that have yet to be confirmed, and do not yet count toward the spendable balance</source> <translation>Total de transacciones que deben ser confirmadas, y que no cuentan con el balance gastable necesario</translation> </message> @@ -1644,18 +1676,18 @@ Dirección: %4 <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> <translation>Error: El directorio de datos especificado "%1" no existe.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation>Error: Combinación no válida de -regtest y -testnet.</translation> </message> @@ -1706,7 +1738,7 @@ Dirección: %4 <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>N/D</translation> </message> @@ -1728,7 +1760,7 @@ Dirección: %4 <message> <location line="+25"/> <source>General</source> - <translation type="unfinished"/> + <translation>General</translation> </message> <message> <location line="+53"/> @@ -1748,7 +1780,7 @@ Dirección: %4 <message> <location line="+7"/> <source>Name</source> - <translation type="unfinished"/> + <translation>Nombre</translation> </message> <message> <location line="+23"/> @@ -1802,11 +1834,13 @@ Dirección: %4 </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>Dentro:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>Fuera:</translation> </message> @@ -1831,7 +1865,7 @@ Dirección: %4 <translation>Borrar consola</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> <translation>Bienvenido a la consola RPC de Bitcoin</translation> </message> @@ -1846,7 +1880,7 @@ Dirección: %4 <translation>Escriba <b>help</b> para ver un resumen de los comandos disponibles.</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 B</translation> </message> @@ -1962,7 +1996,7 @@ Dirección: %4 <translation>Mostrar</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> <translation>Borrar de la lista las direcciónes actualmente seleccionadas</translation> </message> @@ -1972,7 +2006,7 @@ Dirección: %4 <translation>Eliminar</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>Copiar etiqueta</translation> </message> @@ -2193,12 +2227,12 @@ Dirección: %4 <translation>Limpiar &todo</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>Saldo:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>Confirmar el envío</translation> </message> @@ -2675,6 +2709,11 @@ Dirección: %4 </message> <message> <location line="+6"/> + <source>conflicted</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>%1/offline</source> <translation>%1/fuera de línea</translation> </message> @@ -2836,12 +2875,12 @@ Dirección: %4 <translation>, todavía no se ha sido difundido satisfactoriamente</translation> </message> <message numerus="yes"> - <location line="-35"/> + <location line="-37"/> <source>Open for %n more block(s)</source> <translation><numerusform>Abrir para %n bloque más</numerusform><numerusform>Abrir para %n bloques más</numerusform></translation> </message> <message> - <location line="+70"/> + <location line="+72"/> <source>unknown</source> <translation>desconocido</translation> </message> @@ -2882,12 +2921,12 @@ Dirección: %4 <translation>Cantidad</translation> </message> <message> - <location line="+59"/> + <location line="+78"/> <source>Immature (%1 confirmations, will be available after %2)</source> <translation type="unfinished"/> </message> <message numerus="yes"> - <location line="+16"/> + <location line="-21"/> <source>Open for %n more block(s)</source> <translation><numerusform>Abrir para %n bloque más</numerusform><numerusform>Abrir para %n bloques más</numerusform></translation> </message> @@ -2897,23 +2936,12 @@ Dirección: %4 <translation>Abierto hasta %1</translation> </message> <message> - <location line="+3"/> - <source>Offline (%1 confirmations)</source> - <translation>Fuera de línea (%1 confirmaciones)</translation> - </message> - <message> - <location line="+3"/> - <source>Unconfirmed (%1 of %2 confirmations)</source> - <translation>No confirmado (%1 de %2 confirmaciones)</translation> - </message> - <message> - <location line="-22"/> - <location line="+25"/> + <location line="+12"/> <source>Confirmed (%1 confirmations)</source> <translation>Confirmado (%1 confirmaciones)</translation> </message> <message> - <location line="-22"/> + <location line="+9"/> <source>This block was not received by any other nodes and will probably not be accepted!</source> <translation>Este bloque no ha sido recibido por otros nodos y probablemente no sea aceptado!</translation> </message> @@ -2923,7 +2951,27 @@ Dirección: %4 <translation>Generado pero no aceptado</translation> </message> <message> - <location line="+62"/> + <location line="-21"/> + <source>Offline</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> + <source>Unconfirmed</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> + <source>Confirming (%1 of %2 recommended confirmations)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+6"/> + <source>Conflicted</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+51"/> <source>Received with</source> <translation>Recibido con</translation> </message> @@ -2953,7 +3001,7 @@ Dirección: %4 <translation>(nd)</translation> </message> <message> - <location line="+199"/> + <location line="+190"/> <source>Transaction status. Hover over this field to show number of confirmations.</source> <translation>Estado de transacción. Pasa el ratón sobre este campo para ver el número de confirmaciones.</translation> </message> @@ -3082,7 +3130,7 @@ Dirección: %4 <translation>Mostrar detalles de la transacción</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>Exportar historial de transacciones</translation> </message> @@ -3219,12 +3267,12 @@ Dirección: %4 <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+221"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>Uso:</translation> </message> <message> - <location line="-54"/> + <location line="-55"/> <source>List commands</source> <translation>Muestra comandos </translation> @@ -3259,12 +3307,7 @@ Dirección: %4 <translation>Especificar directorio para los datos</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Establecer el tamaño de caché de la base de datos en megabytes (predeterminado: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation>Escuchar conexiones en <puerto> (predeterminado: 8333 o testnet: 18333)</translation> </message> @@ -3284,50 +3327,50 @@ Dirección: %4 <translation>Especifique su propia dirección pública</translation> </message> <message> - <location line="+5"/> + <location line="+6"/> <source>Threshold for disconnecting misbehaving peers (default: 100)</source> <translation>Umbral para la desconexión de pares con mal comportamiento (predeterminado: 100)</translation> </message> <message> - <location line="-148"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Número de segundos en que se evita la reconexión de pares con mal comportamiento (predeterminado: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>Ha ocurrido un error al configurar el puerto RPC %u para escucha en IPv4: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation>Escuchar conexiones JSON-RPC en <puerto> (predeterminado: 8332 o testnet:18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>Aceptar comandos consola y JSON-RPC </translation> </message> <message> - <location line="+80"/> + <location line="+81"/> <source>Run in the background as a daemon and accept commands</source> <translation>Ejecutar en segundo plano como daemon y aceptar comandos </translation> </message> <message> - <location line="+39"/> + <location line="+40"/> <source>Use the test network</source> <translation>Usar la red de pruebas </translation> </message> <message> - <location line="-118"/> + <location line="-120"/> <source>Accept connections from outside (default: 1 if no -proxy or -connect)</source> <translation>Aceptar conexiones desde el exterior (predeterminado: 1 si no -proxy o -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3367,12 +3410,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Vincular a la dirección dada y escuchar siempre en ella. Utilice la notación [host]:port para IPv6</translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>No se puede bloquear el directorio de datos %s. Probablemente Bitcoin ya se está ejecutando.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> <translation>Iniciar modo de prueba de regresión, el cuál utiliza una cadena especial en la cual los bloques pueden ser resueltos instantáneamente. Se utiliza para herramientas de prueba de regresión y desarrollo de aplicaciones.</translation> </message> @@ -3383,6 +3421,11 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Error: 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>¡Error: se ha rechazado la transacción! Esto puede ocurrir si ya se han gastado algunas de las monedas del monedero, como ocurriría si hubiera hecho una copia de wallet.dat y se hubieran gastado monedas a partir de la copia, con lo que no se habrían marcado aquí como gastadas.</translation> </message> @@ -3402,7 +3445,12 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <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> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation>Usar distintos proxys SOCKS5 para comunicarse vía Tor de forma anónima (Por defecto: -proxy)</translation> </message> @@ -3463,6 +3511,11 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+5"/> + <source>Clear list of wallet transactions (diagnostic tool; implies -rescan)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+1"/> <source>Connect only to the specified node(s)</source> <translation>Conectar sólo a los nodos (o nodo) especificados</translation> </message> @@ -3657,7 +3710,12 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Enviar comando a servidor Bitcoin</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation>Establecer tamaño máximo de bloque en bytes (por defecto: %d)</translation> </message> @@ -3673,6 +3731,11 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+2"/> + <source>Spend unconfirmed change when sending transactions (default: 1)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+1"/> <source>Start Bitcoin server</source> <translation>Iniciar servidor Bitcoin</translation> </message> @@ -3722,12 +3785,17 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Usted necesita reconstruir la base de datos utilizando -reindex para cambiar -txindex</translation> </message> <message> - <location line="-79"/> + <location line="-80"/> <source>Imports blocks from external blk000??.dat file</source> <translation>Importa los bloques desde un archivo blk000??.dat externo</translation> </message> <message> - <location line="-105"/> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+19"/> <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>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> @@ -3747,7 +3815,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Configura el número de hilos para el script de verificación (hasta 16, 0 = auto, <0 = leave that many cores free, por fecto: 0)</translation> </message> <message> - <location line="+89"/> + <location line="+91"/> <source>Information</source> <translation>Información</translation> </message> @@ -3817,7 +3885,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Especificar el tiempo máximo de conexión en milisegundos (predeterminado: 5000)</translation> </message> <message> - <location line="+6"/> + <location line="+7"/> <source>System error: </source> <translation>Error de sistema: </translation> </message> @@ -3864,6 +3932,11 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </message> <message> <location line="+2"/> + <source>Zapping all transactions from wallet...</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+1"/> <source>version</source> <translation>versión</translation> </message> @@ -3873,35 +3946,35 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>wallet.dat corrupto. Ha fallado la recuperación.</translation> </message> <message> - <location line="-58"/> + <location line="-60"/> <source>Password for JSON-RPC connections</source> <translation>Contraseña para las conexiones JSON-RPC </translation> </message> <message> - <location line="-70"/> + <location line="-71"/> <source>Allow JSON-RPC connections from specified IP address</source> <translation>Permitir conexiones JSON-RPC desde la dirección IP especificada </translation> </message> <message> - <location line="+80"/> + <location line="+81"/> <source>Send commands to node running on <ip> (default: 127.0.0.1)</source> <translation>Enviar comando al nodo situado en <ip> (predeterminado: 127.0.0.1) </translation> </message> <message> - <location line="-132"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>Ejecutar un comando cuando cambia el mejor bloque (%s en cmd se sustituye por el hash de bloque)</translation> </message> <message> - <location line="+161"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> <translation>Actualizar el monedero al último formato</translation> </message> <message> - <location line="-24"/> + <location line="-25"/> <source>Set key pool size to <n> (default: 100)</source> <translation>Ajustar el número de claves en reserva <n> (predeterminado: 100) </translation> @@ -3912,13 +3985,13 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Volver a examinar la cadena de bloques en busca de transacciones del monedero perdidas</translation> </message> <message> - <location line="+38"/> + <location line="+39"/> <source>Use OpenSSL (https) for JSON-RPC connections</source> <translation>Usar OpenSSL (https) para las conexiones JSON-RPC </translation> </message> <message> - <location line="-30"/> + <location line="-31"/> <source>Server certificate file (default: server.cert)</source> <translation>Certificado del servidor (predeterminado: server.cert) </translation> @@ -3930,7 +4003,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. </translation> </message> <message> - <location line="+16"/> + <location line="+17"/> <source>This help message</source> <translation>Este mensaje de ayuda </translation> @@ -3941,12 +4014,12 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>No es posible conectar con %s en este sistema (bind ha dado el error %d, %s)</translation> </message> <message> - <location line="-107"/> + <location line="-109"/> <source>Allow DNS lookups for -addnode, -seednode and -connect</source> <translation>Permitir búsquedas DNS para -addnode, -seednode y -connect</translation> </message> <message> - <location line="+60"/> + <location line="+61"/> <source>Loading addresses...</source> <translation>Cargando direcciones...</translation> </message> @@ -3961,12 +4034,12 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Error al cargar wallet.dat: El monedero requiere una versión más reciente de Bitcoin</translation> </message> <message> - <location line="+98"/> + <location line="+99"/> <source>Wallet needed to be rewritten: restart Bitcoin to complete</source> <translation>El monedero ha necesitado ser reescrito. Reinicie Bitcoin para completar el proceso</translation> </message> <message> - <location line="-100"/> + <location line="-101"/> <source>Error loading wallet.dat</source> <translation>Error al cargar wallet.dat</translation> </message> @@ -3976,7 +4049,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Dirección -proxy inválida: '%s'</translation> </message> <message> - <location line="+56"/> + <location line="+57"/> <source>Unknown network specified in -onlynet: '%s'</source> <translation>La red especificada en -onlynet '%s' es desconocida</translation> </message> @@ -3986,7 +4059,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Solicitada versión de proxy -socks desconocida: %i</translation> </message> <message> - <location line="-101"/> + <location line="-103"/> <source>Cannot resolve -bind address: '%s'</source> <translation>No se puede resolver la dirección de -bind: '%s'</translation> </message> @@ -3996,7 +4069,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>No se puede resolver la dirección de -externalip: '%s'</translation> </message> <message> - <location line="+48"/> + <location line="+49"/> <source>Invalid amount for -paytxfee=<amount>: '%s'</source> <translation>Cantidad inválida para -paytxfee=<amount>: '%s'</translation> </message> @@ -4016,22 +4089,17 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Cargando el índice de bloques...</translation> </message> <message> - <location line="-62"/> + <location line="-63"/> <source>Add a node to connect to and attempt to keep the connection open</source> <translation>Añadir un nodo al que conectarse y tratar de mantener la conexión abierta</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>No es posible conectar con %s en este sistema. Probablemente Bitcoin ya está ejecutándose.</translation> - </message> - <message> - <location line="+95"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>Cargando monedero...</translation> </message> <message> - <location line="-56"/> + <location line="-57"/> <source>Cannot downgrade wallet</source> <translation>No se puede rebajar el monedero</translation> </message> @@ -4041,7 +4109,7 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>No se puede escribir la dirección predeterminada</translation> </message> <message> - <location line="+67"/> + <location line="+68"/> <source>Rescanning...</source> <translation>Reexplorando...</translation> </message> @@ -4051,17 +4119,17 @@ Por ejemplo: alertnotify=echo %%s | mail -s "Bitcoin Alert" admin@foo. <translation>Generado pero no aceptado</translation> </message> <message> - <location line="+85"/> + <location line="+86"/> <source>To use the %s option</source> <translation>Para utilizar la opción %s</translation> </message> <message> - <location line="-77"/> + <location line="-78"/> <source>Error</source> <translation>Error</translation> </message> <message> - <location line="-35"/> + <location line="-36"/> <source>You must set rpcpassword=<password> in the configuration file: %s If the file does not exist, create it with owner-readable-only file permissions.</source> diff --git a/src/qt/locale/bitcoin_he.ts b/src/qt/locale/bitcoin_he.ts index 2c070d20b3..2d56efe8ae 100644 --- a/src/qt/locale/bitcoin_he.ts +++ b/src/qt/locale/bitcoin_he.ts @@ -1,10 +1,10 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="he" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="he" version="2.1"> <context> <name>AboutDialog</name> <message> <location filename="../forms/aboutdialog.ui" line="+14"/> <source>About Bitcoin Core</source> - <translation type="unfinished"/> + <translation>על אודות ליבת ביטקוין</translation> </message> <message> <location line="+39"/> @@ -71,7 +71,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation type="unfinished"/> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation type="unfinished"/> </message> @@ -81,7 +81,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>העתק כתובת</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>מחק את הכתובת שנבחרה מהרשימה</translation> </message> @@ -328,7 +328,7 @@ This product includes software developed by the OpenSSL Project for use in the O <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>חתום על הודעה</translation> </message> @@ -343,12 +343,12 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>&סקירה</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation type="unfinished"/> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>הצג סקירה כללית של הארנק</translation> </message> @@ -469,17 +469,17 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>אמת הודעה...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>ביטקוין</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>ארנק</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>&שלח</translation> </message> @@ -535,20 +535,20 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>סרגל כלים טאבים</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[רשת-בדיקה]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> <translation>ליבת ביטקוין</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation type="unfinished"/> + <translation>בקש תשלומים (מייצר קודיי QR וסכימות URI של :bitcoin)</translation> </message> <message> <location line="+29"/> @@ -608,7 +608,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>הושלם עיבוד של %1 בלוקים של היסטוריית פעולות.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n שעה</numerusform><numerusform>%n שעות</numerusform></translation> </message> @@ -619,6 +619,7 @@ This product includes software developed by the OpenSSL Project for use in the O </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n שבוע</numerusform><numerusform>%n שבועות</numerusform></translation> </message> @@ -663,12 +664,12 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>מידע</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>עדכני</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>מתעדכן...</translation> </message> @@ -705,7 +706,7 @@ Address: %4 <translation>הארנק <b>מוצפן</b> וכרגע <b>נעול</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+435"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>שגיאה סופנית אירעה. ביטקוין אינו יכול להמשיך לפעול בבטחה ולכן ייסגר.</translation> </message> @@ -713,7 +714,7 @@ Address: %4 <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>אזעקת רשת</translation> </message> @@ -811,7 +812,7 @@ Address: %4 <translation>קדימות</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>העתק כתובת</translation> </message> @@ -877,7 +878,7 @@ Address: %4 <translation type="unfinished"/> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>הכי גבוה</translation> </message> @@ -995,7 +996,7 @@ Address: %4 </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(ללא תוית)</translation> </message> @@ -1083,7 +1084,7 @@ Address: %4 <message> <location filename="../intro.cpp" line="+65"/> <source>A new data directory will be created.</source> - <translation type="unfinished"/> + <translation>ספריית מידע חדשה תיווצר.</translation> </message> <message> <location line="+22"/> @@ -1093,17 +1094,17 @@ Address: %4 <message> <location line="+2"/> <source>Directory already exists. Add %1 if you intend to create a new directory here.</source> - <translation type="unfinished"/> + <translation>הספריה כבר קיימת. הוסף %1 אם ברצונך ליצור ספריה חדשה כאן.</translation> </message> <message> <location line="+3"/> <source>Path already exists, and is not a directory.</source> - <translation type="unfinished"/> + <translation>הנתיב כבר קיים ואינו מצביע על ספרייה.</translation> </message> <message> <location line="+7"/> <source>Cannot create data directory here.</source> - <translation type="unfinished"/> + <translation>לא ניתן ליצור ספריית מידע כאן.</translation> </message> </context> <context> @@ -1184,15 +1185,15 @@ Address: %4 <message> <location line="+10"/> <source>Use the default data directory</source> - <translation type="unfinished"/> + <translation>השתמש בברירת המחדל עבור ספריית המידע.</translation> </message> <message> <location line="+7"/> <source>Use a custom data directory:</source> - <translation type="unfinished"/> + <translation>השתמש בספריית מידע מותאמת אישית:</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>ביטקוין</translation> </message> @@ -1209,12 +1210,12 @@ Address: %4 <message> <location line="+9"/> <source>GB of free space available</source> - <translation type="unfinished"/> + <translation>ג"ב של שטח אחסון פנוי</translation> </message> <message> <location line="+3"/> <source>(of %1GB needed)</source> - <translation type="unfinished"/> + <translation>(מתוך %1 ג"ב נחוצים)</translation> </message> </context> <context> @@ -1260,7 +1261,7 @@ Address: %4 <message> <location line="+122"/> <source>Optional transaction fee per kB that helps make sure your transactions are processed quickly. Most transactions are 1 kB.</source> - <translation>עמלת פעולה אופציונלית לכל kB תבטיח שהפעולה שלך תעובד בזריזות. רוב הפעולות הן 1 kB. מומלצת עמלה בסך 0.01.</translation> + <translation>עמלת פעולה אופציונלית לכל kB תבטיח שהפעולה שלך תעובד בזריזות. רוב הפעולות הן 1 kB.</translation> </message> <message> <location line="+15"/> @@ -1298,12 +1299,7 @@ Address: %4 <translation>קבע את מספר תהליכוני אימות הסקריפטים (1-16, 0 = אוטומטי, ברירת מחדל: 0)</translation> </message> <message> - <location line="+107"/> - <source>&Spend unconfirmed change (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+37"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation type="unfinished"/> </message> @@ -1318,7 +1314,7 @@ Address: %4 <translation type="unfinished"/> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> <translation type="unfinished"/> </message> @@ -1333,22 +1329,37 @@ Address: %4 <translation>איפוס אפשרויות</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>רשת</translation> </message> <message> - <location line="-86"/> + <location line="-95"/> <source>W&allet</source> <translation type="unfinished"/> </message> <message> - <location line="+52"/> + <location line="+65"/> + <source>Expert</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+7"/> <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 type="unfinished"/> </message> <message> - <location line="+40"/> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+17"/> <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> </message> @@ -1443,17 +1454,12 @@ Address: %4 <translation>הצג כתובות ברשימת הפעולות</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> <translation type="unfinished"/> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>אישור</translation> </message> @@ -1585,7 +1591,7 @@ Address: %4 <message> <location line="+96"/> <source>Requested payment amount of %1 is too small (considered dust).</source> - <translation type="unfinished"/> + <translation>הסכום הנדרש לתשלום %1 קטן מדי (נחשב לאבק)</translation> </message> <message> <location line="-221"/> @@ -1630,7 +1636,7 @@ Address: %4 <message> <location line="+73"/> <source>Unverified payment requests to custom payment scripts are unsupported.</source> - <translation type="unfinished"/> + <translation>בקשות לתשלום לסקריפטיי תשלום מותאמים אישית אינן נתמכות.</translation> </message> <message> <location line="+59"/> @@ -1640,7 +1646,7 @@ Address: %4 <message> <location line="+43"/> <source>Error communicating with %1: %2</source> - <translation type="unfinished"/> + <translation>שגיאה בתקשורת עם %1: %2</translation> </message> <message> <location line="+24"/> @@ -1650,7 +1656,7 @@ Address: %4 <message> <location line="+11"/> <source>Bad response from server %1</source> - <translation type="unfinished"/> + <translation>מענה שגוי משרת %1</translation> </message> <message> <location line="+33"/> @@ -1666,20 +1672,20 @@ Address: %4 <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>ביטקוין</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> - <translation type="unfinished"/> + <translation>שגיאה: הספריה "%1" לא קיימת.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> - <translation type="unfinished"/> + <translation>שגיאה: שילוב בלתי חוקי של regtest- ו testnet-.</translation> </message> <message> <location filename="../guiutil.cpp" line="+82"/> @@ -1728,7 +1734,7 @@ Address: %4 <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>N/A</translation> </message> @@ -1824,11 +1830,13 @@ Address: %4 </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>נכנס:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>יוצא:</translation> </message> @@ -1853,7 +1861,7 @@ Address: %4 <translation>נקה לוח בקרה</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> <translation>ברוכים הבאים ללוח בקרת RPC של ביטקוין</translation> </message> @@ -1868,7 +1876,7 @@ Address: %4 <translation>הקלד <b>help</b> בשביל סקירה של הפקודות הזמינות.</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 בייט</translation> </message> @@ -1923,7 +1931,7 @@ Address: %4 <message> <location line="-20"/> <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> - <translation type="unfinished"/> + <translation>השתמש שוב באחת מכתובות הקבלה שכבר נעשה בהן שימוש. לשימוש חוזר בכתובות ישהן השלכות אבטחה ופרטיות. השתמש בזה רק אם אתה מייצר מחדש בקשת תשלום שכבר נעשתה.</translation> </message> <message> <location line="+3"/> @@ -1984,7 +1992,7 @@ Address: %4 <translation>הצג</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> <translation type="unfinished"/> </message> @@ -1994,7 +2002,7 @@ Address: %4 <translation>הסר</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>העתק תוית</translation> </message> @@ -2044,7 +2052,7 @@ Address: %4 <message> <location line="+1"/> <source>URI</source> - <translation type="unfinished"/> + <translation>כתובת (אתר או משאב)</translation> </message> <message> <location line="+2"/> @@ -2215,12 +2223,12 @@ Address: %4 <translation>נקה הכל</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>יתרה:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>אשר את פעולת השליחה</translation> </message> @@ -2240,7 +2248,7 @@ Address: %4 <location line="+5"/> <location line="+4"/> <source>%1 to %2</source> - <translation type="unfinished"/> + <translation>%1 אל %2</translation> </message> <message> <location line="-121"/> @@ -2360,7 +2368,7 @@ Address: %4 <message> <location line="+8"/> <source>Invalid payment address %1</source> - <translation type="unfinished"/> + <translation>כתובת תשלום שגויה %1</translation> </message> </context> <context> @@ -2437,7 +2445,7 @@ Address: %4 <message> <location line="-991"/> <source>Enter a label for this address to add it to the list of used addresses</source> - <translation type="unfinished"/> + <translation>הקלד תווית עבור כתובת זו בכדי להוסיף אותה לרשימת הכתובות בשימוש</translation> </message> <message> <location line="+33"/> @@ -2820,12 +2828,12 @@ Address: %4 <message> <location line="+18"/> <source>Merchant</source> - <translation type="unfinished"/> + <translation>סוחר</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>מטבעות חדשים שנוצרו חייבים להבשיל במשך %1 בלוקים לפני שניתן לנצל אותם. כשבלוק זה נוצר הוא שודר ברשת על מנת שייכנס לשרשרת הבלוקים. במקרה והוא לא ייכנס לשרשרת, מצבו ישתנה ל"לא התקבל" ולא ניתן יהיה לנצלו. זה יכול לקרות מדי פעם אם במקרה צומת אחרת ייצרה בלוק בהבדל של שניות בודדות ממך.</translation> </message> <message> <location line="+8"/> @@ -3118,7 +3126,7 @@ Address: %4 <translation>הצג פרטי פעולה</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>יצוא היסטוריית פעולות</translation> </message> @@ -3255,7 +3263,7 @@ Address: %4 <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+223"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>שימוש:</translation> </message> @@ -3290,12 +3298,7 @@ Address: %4 <translation>ציין תיקיית נתונים</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>קבע את גודל המטמון של מסד הנתונים במגהבייט (ברירת מחדל: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation>האזן לחיבורים ב<פורט> (ברירת מחדל: 8333 או ברשת הבדיקה: 18333)</translation> </message> @@ -3320,22 +3323,22 @@ Address: %4 <translation>סף להתנתקות מעמיתים הנוהגים שלא כהלכה (ברירת מחדל: 100)</translation> </message> <message> - <location line="-150"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>מספר שניות למנוע מעמיתים הנוהגים שלא כהלכה מלהתחבר מחדש (ברירת מחדל: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>אירעה שגיאה בעת הגדרת פורט RPC %u להאזנה ב-IPv4: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation>האזן לחיבורי JSON-RPC ב- <port> (ברירת מחדל: 8332 או רשת בדיקה: 18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>קבל פקודות משורת הפקודה ו- JSON-RPC</translation> </message> @@ -3355,7 +3358,7 @@ Address: %4 <translation>קבל חיבורים מבחוץ (ברירת מחדל: 1 ללא -proxy או -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3382,7 +3385,7 @@ rpcpassword=%s <message> <location line="+12"/> <source>Acceptable ciphers (default: TLSv1.2+HIGH:TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!3DES:@STRENGTH)</source> - <translation type="unfinished"/> + <translation>צפנים קבילים (ברירת מחדל: TLSv1.2+HIGH:TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!3DES:@STRENGTH)</translation> </message> <message> <location line="+5"/> @@ -3395,14 +3398,9 @@ rpcpassword=%s <translation>קשור עם כתובת נתונה והאזן לה תמיד. השתמש בסימון [host]:port עבוד IPv6.</translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>לא מסוגל להשיג נעילה על תיקיית הנתונים %s. כנראה שביטקוין כבר רץ.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> - <translation type="unfinished"/> + <translation>כניסה למצב בדיקת רגרסיה, בה נעשה שימוש בשרשרת מיוחדת המאפשרת פתרון מיידי של בלוקים. מצב זה מיועד לכלי בדיקת רגרסיה ופיתוח תוכנה.</translation> </message> <message> <location line="+4"/> @@ -3411,6 +3409,11 @@ rpcpassword=%s </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Error: 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>שגיאה: הפעולה נדחתה! זה עלול לקרות אם כמה מהמטבעות בארנק שלך כבר נוצלו, למשל אם השתמשת בעותק של wallet.dat ומטבעות נשלחו בעותק אך לא סומנו כמנוצלות כאן.</translation> </message> @@ -3430,7 +3433,12 @@ rpcpassword=%s <translation>זוהי בניית ניסיון טרום-שחרור - השימוש בה על אחריותך - אין להשתמש לצורך כריה או יישומי מסחר</translation> </message> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation type="unfinished"/> </message> @@ -3447,12 +3455,12 @@ rpcpassword=%s <message> <location line="+3"/> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> - <translation type="unfinished"/> + <translation>אזהרה: נראה שלא כל הרשת מסכימה! נראה שישנם כורים אשר נתקלים בבעיות.</translation> </message> <message> <location line="+3"/> <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 type="unfinished"/> + <translation>אזהרה: נראה שאנחנו לא מסכימים לחלוטין עם העמיתים שלנו! ייתכן ואנחנו צריכים לשדרג, או שצמתים אחרות צריכות לשדרג.</translation> </message> <message> <location line="+3"/> @@ -3482,7 +3490,7 @@ rpcpassword=%s <message> <location line="+1"/> <source>Bitcoin RPC client version</source> - <translation type="unfinished"/> + <translation>גרסת לקוח RPC של ביטקוין</translation> </message> <message> <location line="+1"/> @@ -3507,7 +3515,7 @@ rpcpassword=%s <message> <location line="+1"/> <source>Connect to JSON-RPC on <port> (default: 8332 or testnet: 18332)</source> - <translation type="unfinished"/> + <translation>התחבר ל JSON-RPC ב <port> (ברירת מחדל: 8332 או ברשת בדיקה: 18332)</translation> </message> <message> <location line="+2"/> @@ -3652,12 +3660,12 @@ rpcpassword=%s <message> <location line="+2"/> <source>Incorrect or no genesis block found. Wrong datadir for network?</source> - <translation type="unfinished"/> + <translation>בלוק בראשית הינו שגוי או לא נמצא. ספריית מידע לא נכונה עבור הרשת?</translation> </message> <message> <location line="+3"/> <source>Invalid -onion address: '%s'</source> - <translation type="unfinished"/> + <translation>כתובת onion- שגויה: '%s'</translation> </message> <message> <location line="+15"/> @@ -3690,7 +3698,12 @@ rpcpassword=%s <translation>שליחת פקודה לשרת הביטקוין</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation type="unfinished"/> </message> @@ -3702,7 +3715,7 @@ rpcpassword=%s <message> <location line="+7"/> <source>Specify wallet file (within data directory)</source> - <translation type="unfinished"/> + <translation>ציין קובץ ארנק (בתוך ספריית המידע)</translation> </message> <message> <location line="+2"/> @@ -3722,7 +3735,7 @@ rpcpassword=%s <message> <location line="+10"/> <source>Usage (deprecated, use bitcoin-cli):</source> - <translation type="unfinished"/> + <translation>שימוש (מיושן, השתמש ב bitcoin-cli):</translation> </message> <message> <location line="+7"/> @@ -3742,7 +3755,7 @@ rpcpassword=%s <message> <location line="+1"/> <source>Wallet %s resides outside data directory %s</source> - <translation type="unfinished"/> + <translation>הארנק %s יושב מחוץ לספריית המידע %s</translation> </message> <message> <location line="+2"/> @@ -3765,11 +3778,16 @@ rpcpassword=%s <translation>מייבא בלוקים מקובצי blk000??.dat חיצוניים</translation> </message> <message> - <location line="-106"/> - <source>Execute command when a relevant alert is received or we see a really long fork (%s in cmd is replaced by message)</source> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> <translation type="unfinished"/> </message> <message> + <location line="+19"/> + <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>הרץ פקודה כאשר ההתראה הרלוונטית מתקבלת או כשאנחנו עדים לפיצול ארוך מאוד (%s בשורת הפקודה יוחלף ע"י ההודעה)</translation> + </message> + <message> <location line="+14"/> <source>Output debugging information (default: 0, supplying <category> is optional)</source> <translation type="unfinished"/> @@ -3785,7 +3803,7 @@ rpcpassword=%s <translation>קבע את מספר תהליכוני אימות הסקריפטים (1-16, 0 = אוטומטי, ברירת מחדל: 0)</translation> </message> <message> - <location line="+90"/> + <location line="+91"/> <source>Information</source> <translation>מידע</translation> </message> @@ -3930,12 +3948,12 @@ rpcpassword=%s <translation>שלח פקודות לצומת ב-<ip> (ברירת מחדל: 127.0.0.1)</translation> </message> <message> - <location line="-133"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>בצע פקודה זו כשהבלוק הטוב ביותר משתנה (%s בפקודה יוחלף בגיבוב הבלוק)</translation> </message> <message> - <location line="+163"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> <translation>שדרג את הארנק לפורמט העדכני</translation> </message> @@ -4055,12 +4073,7 @@ rpcpassword=%s <translation>הוסף צומת להתחברות ונסה לשמור את החיבור פתוח</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>לא ניתן לקשור ל-%s במחשב זה. ביטקוין כנראה עדיין רץ.</translation> - </message> - <message> - <location line="+96"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>טוען ארנק...</translation> </message> diff --git a/src/qt/locale/bitcoin_nb.ts b/src/qt/locale/bitcoin_nb.ts index 12333e3997..6c2095deea 100644 --- a/src/qt/locale/bitcoin_nb.ts +++ b/src/qt/locale/bitcoin_nb.ts @@ -1,4 +1,4 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="nb" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="nb" version="2.1"> <context> <name>AboutDialog</name> <message> @@ -24,7 +24,7 @@ Dette er eksperimentell programvare. Distribuert under MIT/X11 programvarelisensen, se medfølgende fil COPYING eller http://www.opensource.org/licenses/mit-license.php. -Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i OpenSSL Toolkit (http://www.openssl.org/) og kryptografisk programvare skrevet av Eric Young (eay@cryptsoft.com) og UPnP programvare skrevet av Thomas Bernard.</translation> +Dette produktet inneholder programvare utviklet av OpenSSL Project for bruk i OpenSSL Toolkit (http://www.openssl.org/), kryptografisk programvare skrevet av Eric Young (eay@cryptsoft.com) og UPnP programvare skrevet av Thomas Bernard.</translation> </message> <message> <location filename="../utilitydialog.cpp" line="+29"/> @@ -40,7 +40,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <location line="+12"/> <location line="+2"/> <source> (%1-bit)</source> - <translation type="unfinished"/> + <translation>(%1-bit)</translation> </message> </context> <context> @@ -71,7 +71,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>&Kopier</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation>&Lukk</translation> </message> @@ -81,7 +81,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>&Kopier Adresse</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>Slett den valgte adressen fra listen.</translation> </message> @@ -93,7 +93,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+3"/> <source>&Export</source> - <translation>&Eksporter...</translation> + <translation>&Eksporter</translation> </message> <message> <location line="-27"/> @@ -128,12 +128,12 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <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>Dette er dine Bitcoin adresser for å sende betalinger. Alltid sjekk mengden og mottaker adresse før sending av mynter.</translation> + <translation>Dette er dine Bitcoin-adresser for å sende betalinger. Alltid sjekk beløp og mottakeradresse før sending av mynter.</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>Dette er dine Bitcoin adresser for å sende betalinger. Det er anbefalt å bruk en ny mottaksadresse for hver transaksjon.</translation> + <translation>Dette er dine Bitcoin-adresser for å sende betalinger. Det er anbefalt å bruk en ny mottaksadresse for hver transaksjon.</translation> </message> <message> <location line="+7"/> @@ -163,7 +163,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+1"/> <source>There was an error trying to save the address list to %1.</source> - <translation type="unfinished"/> + <translation>En feil oppstod ved lagring av adresselisten til %1.</translation> </message> </context> <context> @@ -264,13 +264,13 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <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>VIKTIG: Tidligere sikkerhetskopier av din lommebok-fil, bør erstattes med den nylig genererte, krypterte filen, da de blir ugyldiggjort av sikkerhetshensyn så snart du begynner å bruke den nye krypterte lommeboken.</translation> + <translation>VIKTIG: Tidligere sikkerhetskopier av din lommebokfil bør erstattes med den nylig genererte og krypterte filen, da de blir ugyldiggjort av sikkerhetshensyn så snart du begynner å bruke den nye krypterte lommeboken.</translation> </message> <message> <location line="+100"/> <location line="+24"/> <source>Warning: The Caps Lock key is on!</source> - <translation>Advarsel: Caps Lock er på !</translation> + <translation>Advarsel: Caps Lock er på!</translation> </message> <message> <location line="-130"/> @@ -328,7 +328,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>Signer &melding...</translation> </message> @@ -343,12 +343,12 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>&Oversikt</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation>Node</translation> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>Vis generell oversikt over lommeboken</translation> </message> @@ -411,17 +411,17 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+10"/> <source>&Sending addresses...</source> - <translation type="unfinished"/> + <translation>&Utsendingsadresser...</translation> </message> <message> <location line="+2"/> <source>&Receiving addresses...</source> - <translation type="unfinished"/> + <translation>&Mottaksadresser...</translation> </message> <message> <location line="+3"/> <source>Open &URI...</source> - <translation>Åpne %URI...</translation> + <translation>Åpne &URI...</translation> </message> <message> <location line="+325"/> @@ -431,7 +431,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+3"/> <source>Reindexing blocks on disk...</source> - <translation>Re-indekserer blokker på disk...</translation> + <translation>Reindekserer blokker på harddisk...</translation> </message> <message> <location line="-405"/> @@ -446,7 +446,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+12"/> <source>Backup wallet to another location</source> - <translation>Sikkerhetskopiér lommebok til annet sted</translation> + <translation>Sikkerhetskopier lommebok til annet sted</translation> </message> <message> <location line="+2"/> @@ -469,17 +469,17 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>&Verifiser melding...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>Lommebok</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>&Send</translation> </message> @@ -492,7 +492,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <location line="+46"/> <location line="+2"/> <source>&Show / Hide</source> - <translation>&Gjem / vis</translation> + <translation>&Vis / Skjul</translation> </message> <message> <location line="+1"/> @@ -507,7 +507,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+7"/> <source>Sign messages with your Bitcoin addresses to prove you own them</source> - <translation>Signér en melding for å bevise at du eier denne adressen</translation> + <translation>Signer en melding med Bitcoin-adressene dine for å bevise at du eier dem</translation> </message> <message> <location line="+2"/> @@ -535,20 +535,20 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>Verktøylinje for faner</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[testnett]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> - <translation>Bitcoin Kjerne</translation> + <translation>Bitcoin Core</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> - <translation>Forespør betalinger (genererer QR koder og bitcoin: URIs)</translation> + <translation>Forespør betalinger (genererer QR-koder og bitcoin: URIer)</translation> </message> <message> <location line="+29"/> @@ -569,7 +569,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+3"/> <source>Open a bitcoin: URI or payment request</source> - <translation>Åpne en bitcoin: URI eller betalingsetterspørring</translation> + <translation>Åpne en Bitcoin: URI eller betalingsetterspørring</translation> </message> <message> <location line="+2"/> @@ -579,13 +579,13 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+1"/> <source>Show the Bitcoin Core help message to get a list with possible Bitcoin command-line options</source> - <translation type="unfinished"/> + <translation>Vis Bitcoin Core hjelpemeldingen for å få en liste med mulige kommandolinjevalg</translation> </message> <message> <location line="+159"/> <location line="+5"/> <source>Bitcoin client</source> - <translation>Bitcoinklient</translation> + <translation>Bitcoin-klienten</translation> </message> <message numerus="yes"> <location line="+142"/> @@ -595,7 +595,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <message> <location line="+22"/> <source>No block source available...</source> - <translation>Ingen blokk-kilde tilgjengelig...</translation> + <translation>Ingen kilde for blokker tilgjengelig...</translation> </message> <message> <location line="+12"/> @@ -608,7 +608,7 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>Lastet %1 blokker med transaksjonshistorikk.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n time</numerusform><numerusform>%n timer</numerusform></translation> </message> @@ -619,18 +619,19 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n uke</numerusform><numerusform>%n uker</numerusform></translation> </message> <message> <location line="+0"/> <source>%1 and %2</source> - <translation type="unfinished"/> + <translation>%1 og %2</translation> </message> <message numerus="yes"> <location line="+0"/> <source>%n year(s)</source> - <translation type="unfinished"><numerusform></numerusform><numerusform></numerusform></translation> + <translation><numerusform>%n år</numerusform><numerusform>%n år</numerusform></translation> </message> <message> <location line="+4"/> @@ -663,12 +664,12 @@ Dette produktet inneholder programvare utviklet av OpenSSL prosjektet for bruk i <translation>Informasjon</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>Ajour</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>Kommer ajour...</translation> </message> @@ -706,7 +707,7 @@ Adresse: %4 <translation>Lommeboken er <b>kryptert</b> og for tiden <b>låst</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+435"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>En fatal feil har inntruffet. Det er ikke trygt å fortsette og Bitcoin må derfor avslutte.</translation> </message> @@ -714,7 +715,7 @@ Adresse: %4 <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>Nettverksvarsel</translation> </message> @@ -724,7 +725,7 @@ Adresse: %4 <message> <location filename="../forms/coincontroldialog.ui" line="+14"/> <source>Coin Control Address Selection</source> - <translation>Mynt Kontroll Adresse Valg</translation> + <translation>Myntkontroll Adresse Valg</translation> </message> <message> <location line="+34"/> @@ -759,27 +760,27 @@ Adresse: %4 <message> <location line="+48"/> <source>After Fee:</source> - <translation>Etter Avgift:</translation> + <translation>Etter Gebyr:</translation> </message> <message> <location line="+32"/> <source>Change:</source> - <translation>Endring:</translation> + <translation>Veksel:</translation> </message> <message> <location line="+56"/> <source>(un)select all</source> - <translation>Fjern alt valgt</translation> + <translation>velg (fjern) alt</translation> </message> <message> <location line="+13"/> <source>Tree mode</source> - <translation>Tre modus</translation> + <translation>Tremodus</translation> </message> <message> <location line="+16"/> <source>List mode</source> - <translation>Liste modus</translation> + <translation>Listemodus</translation> </message> <message> <location line="+53"/> @@ -812,7 +813,7 @@ Adresse: %4 <translation>Prioritet</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>Kopier adresse</translation> </message> @@ -825,7 +826,7 @@ Adresse: %4 <location line="+1"/> <location line="+26"/> <source>Copy amount</source> - <translation>Kopiér beløp</translation> + <translation>Kopier beløp</translation> </message> <message> <location line="-25"/> @@ -835,12 +836,12 @@ Adresse: %4 <message> <location line="+1"/> <source>Lock unspent</source> - <translation type="unfinished"/> + <translation>Lås ubrukte</translation> </message> <message> <location line="+1"/> <source>Unlock unspent</source> - <translation type="unfinished"/> + <translation>Lås opp ubrukte</translation> </message> <message> <location line="+22"/> @@ -855,30 +856,30 @@ Adresse: %4 <message> <location line="+1"/> <source>Copy after fee</source> - <translation type="unfinished"/> + <translation>Kopier fra gebyr</translation> </message> <message> <location line="+1"/> <source>Copy bytes</source> - <translation type="unfinished"/> + <translation>Kopier bytes</translation> </message> <message> <location line="+1"/> <source>Copy priority</source> - <translation type="unfinished"/> + <translation>Kopier prioritet</translation> </message> <message> <location line="+1"/> <source>Copy low output</source> - <translation type="unfinished"/> + <translation>Kopier svake utdata</translation> </message> <message> <location line="+1"/> <source>Copy change</source> - <translation type="unfinished"/> + <translation>Kopier veksel</translation> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>høyest</translation> </message> @@ -956,7 +957,7 @@ Adresse: %4 <location line="+1"/> <location line="+5"/> <source>This means a fee of at least %1 per kB is required.</source> - <translation>Dette betyr at en avgift på minst %1 per KB er påkrevd.</translation> + <translation>Dette betyr at et gebyr på minst %1 per KB er påkrevd.</translation> </message> <message> <location line="-4"/> @@ -971,23 +972,23 @@ Adresse: %4 <message> <location line="+1"/> <source>This label turns red, if the priority is smaller than "medium".</source> - <translation type="unfinished"/> + <translation>Denne merkelappen blir rød, hvis prioriteten er mindre enn "medium".</translation> </message> <message> <location line="+3"/> <source>This label turns red, if any recipient receives an amount smaller than %1.</source> - <translation>Denne merkelappen blir rød, hvis noen mottaker mottar en mengde på mindre enn %1.</translation> + <translation>Denne merkelappen blir rød, hvis en mottaker mottar en mengde på mindre enn %1.</translation> </message> <message> <location line="+1"/> <location line="+4"/> <source>This means a fee of at least %1 is required.</source> - <translation>Dette betyr at en avgift på minst %1 er påkrevd.</translation> + <translation>Dette betyr at et gebyr på minst %1 er påkrevd.</translation> </message> <message> <location line="-3"/> <source>Amounts below 0.546 times the minimum relay fee are shown as dust.</source> - <translation>Mengder under 0.546 ganger minimum relé avgiften er vist som støv.</translation> + <translation>Mengder under 0.546 ganger minimum relégebyr er vist som støv.</translation> </message> <message> <location line="+2"/> @@ -996,19 +997,19 @@ Adresse: %4 </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(ingen merkelapp)</translation> </message> <message> <location line="-9"/> <source>change from %1 (%2)</source> - <translation>endring fra %1 (%2)</translation> + <translation>veksel fra %1 (%2)</translation> </message> <message> <location line="+1"/> <source>(change)</source> - <translation>(endring)</translation> + <translation>(veksel)</translation> </message> </context> <context> @@ -1084,7 +1085,7 @@ Adresse: %4 <message> <location filename="../intro.cpp" line="+65"/> <source>A new data directory will be created.</source> - <translation>En ny data mappe vil bli laget.</translation> + <translation>En ny datamappe vil bli laget.</translation> </message> <message> <location line="+22"/> @@ -1099,12 +1100,12 @@ Adresse: %4 <message> <location line="+3"/> <source>Path already exists, and is not a directory.</source> - <translation>Sti finnes allerede, og er ikke en mappe.</translation> + <translation>Snarvei finnes allerede, og er ikke en mappe.</translation> </message> <message> <location line="+7"/> <source>Cannot create data directory here.</source> - <translation>Kan ikke laget data mappe her.</translation> + <translation>Kan ikke lage datamappe her.</translation> </message> </context> <context> @@ -1112,12 +1113,12 @@ Adresse: %4 <message> <location filename="../forms/helpmessagedialog.ui" line="+19"/> <source>Bitcoin Core - Command-line options</source> - <translation type="unfinished"/> + <translation>Bitcoin Core - Kommandolinjevalg</translation> </message> <message> <location filename="../utilitydialog.cpp" line="+24"/> <source>Bitcoin Core</source> - <translation>Bitcoin Kjerne</translation> + <translation>Bitcoin Core</translation> </message> <message> <location line="+0"/> @@ -1147,8 +1148,7 @@ Adresse: %4 <message> <location line="+1"/> <source>Start minimized</source> - <translation>Start minimert -</translation> + <translation>Start minimert</translation> </message> <message> <location line="+1"/> @@ -1158,7 +1158,7 @@ Adresse: %4 <message> <location line="+1"/> <source>Choose data directory on startup (default: 0)</source> - <translation>Velg data mappe ved oppstart (standard: 0)</translation> + <translation>Velg datamappe ved oppstart (standard: 0)</translation> </message> </context> <context> @@ -1176,32 +1176,32 @@ Adresse: %4 <message> <location line="+26"/> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> - <translation>Siden dette er første gang programmet starter, kan du velge hvor Bitcoin Core skal lagre sine data.</translation> + <translation>Siden dette er første gang programmet starter, kan du nå velge hvor Bitcoin Core skal lagre sine data.</translation> </message> <message> <location line="+10"/> <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 vil laste ned og lagre en kopi av Bitcoins blokk kjede. Minst %1GB av data vil bli lagret i denne mappen, og det vil vokse over tid. Lommeboken vil også bli lagret i denne mappen.</translation> + <translation>Bitcoin Core vil laste ned og lagre en kopi av Bitcoin sin blokkjede. Minst %1GB av data vil bli lagret i denne mappen, og det vil vokse over tid. Lommeboken vil også bli lagret i denne mappen.</translation> </message> <message> <location line="+10"/> <source>Use the default data directory</source> - <translation>Bruk standard data mappe</translation> + <translation>Bruk standard datamappe</translation> </message> <message> <location line="+7"/> <source>Use a custom data directory:</source> - <translation>Bruk en egendefinert data mappe:</translation> + <translation>Bruk en egendefinert datamappe:</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> <location line="+1"/> <source>Error: Specified data directory "%1" can not be created.</source> - <translation>Feil: Spesifisert data mappe "%1" kan ikke opprettes.</translation> + <translation>Feil: Spesifisert datamappe "%1" kan ikke opprettes.</translation> </message> <message> <location line="+19"/> @@ -1211,7 +1211,7 @@ Adresse: %4 <message> <location line="+9"/> <source>GB of free space available</source> - <translation>GB av ledig lagringsplass</translation> + <translation>GB ledig lagringsplass</translation> </message> <message> <location line="+3"/> @@ -1224,7 +1224,7 @@ Adresse: %4 <message> <location filename="../forms/openuridialog.ui" line="+14"/> <source>Open URI</source> - <translation>Open URI</translation> + <translation>Åpne URI</translation> </message> <message> <location line="+6"/> @@ -1239,12 +1239,12 @@ Adresse: %4 <message> <location line="+11"/> <source>Select payment request file</source> - <translation>Velg betalingsetterspørring fil</translation> + <translation>Velg fil for betalingsetterspørring</translation> </message> <message> <location filename="../openuridialog.cpp" line="+47"/> <source>Select payment request file to open</source> - <translation>Velg betalingsetterspørrings fil å åpne</translation> + <translation>Velg fil for betalingsetterspørring å åpne</translation> </message> </context> <context> @@ -1267,7 +1267,7 @@ Adresse: %4 <message> <location line="+15"/> <source>Pay transaction &fee</source> - <translation>Betal transaksjons&gebyr</translation> + <translation>Betal &transaksjonsgebyr</translation> </message> <message> <location line="-131"/> @@ -1282,7 +1282,7 @@ Adresse: %4 <message> <location line="+9"/> <source>Size of &database cache</source> - <translation type="unfinished"/> + <translation>Størrelse på &database hurtigbuffer</translation> </message> <message> <location line="+16"/> @@ -1292,20 +1292,15 @@ Adresse: %4 <message> <location line="+27"/> <source>Number of script &verification threads</source> - <translation type="unfinished"/> + <translation>Antall script &verifikasjonstråder</translation> </message> <message> <location line="+13"/> <source>Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</source> - <translation type="unfinished"/> + <translation>Sett antall script verifikasjonstråder (opp til 16, 0 = automatisk, <0 = la så mange kjerner være ledig, standardvalg: 0)</translation> </message> <message> - <location line="+107"/> - <source>&Spend unconfirmed change (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+37"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation>Koble til Bitcoin-nettverket gjennom en SOCKS proxy.</translation> </message> @@ -1317,12 +1312,12 @@ Adresse: %4 <message> <location line="+34"/> <source>IP address of the proxy (e.g. IPv4: 127.0.0.1 / IPv6: ::1)</source> - <translation type="unfinished"/> + <translation>IP-adressen til proxyen (f.eks. IPv4: 127.0.0.1 / IPv6: ::1)</translation> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> - <translation type="unfinished"/> + <translation>Aktive kommandolinjevalg som overstyrer valgene ovenfor:</translation> </message> <message> <location line="+43"/> @@ -1335,29 +1330,44 @@ Adresse: %4 <translation>&Tilbakestill Instillinger</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>&Nettverk</translation> </message> <message> - <location line="-86"/> + <location line="-95"/> <source>W&allet</source> - <translation type="unfinished"/> + <translation>L&ommebok</translation> </message> <message> - <location line="+52"/> + <location line="+65"/> + <source>Expert</source> + <translation>Ekspert</translation> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> + <translation>Aktiver &myntkontroll funksjoner</translation> + </message> + <message> + <location line="+7"/> <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 type="unfinished"/> + <translation>Hvis du sperrer for bruk av ubekreftet veksel, kan ikke vekselen fra transaksjonen bli brukt før transaksjonen har minimum en bekreftelse. Dette påvirker også hvordan balansen din blir beregnet.</translation> </message> <message> - <location line="+40"/> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation>&Bruk ubekreftet veksel</translation> + </message> + <message> + <location line="+17"/> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Åpne automatisk Bitcoin klientporten på ruteren. Dette virker kun om din ruter støtter UPnP og dette er påslått.</translation> </message> <message> <location line="+3"/> <source>Map port using &UPnP</source> - <translation>Sett opp port vha. &UPnP</translation> + <translation>Sett opp port ved hjelp av &UPnP</translation> </message> <message> <location line="+19"/> @@ -1445,17 +1455,12 @@ Adresse: %4 <translation>&Vis adresser i transaksjonslisten</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> - <translation>Skal mynt kontroll funksjoner vises eller ikke.</translation> + <translation>Skal myntkontroll funksjoner vises eller ikke.</translation> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation>Vis mynt &kontroll funksjoner (kun for eksperter)</translation> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>&OK</translation> </message> @@ -1477,7 +1482,7 @@ Adresse: %4 <message> <location line="+78"/> <source>Confirm options reset</source> - <translation>Bekreft innstillings tilbakestilling</translation> + <translation>Bekreft tilbakestilling av innstillinger</translation> </message> <message> <location line="+1"/> @@ -1488,7 +1493,7 @@ Adresse: %4 <message> <location line="-29"/> <source>Client will be shutdown, do you want to proceed?</source> - <translation type="unfinished"/> + <translation>Klienten vil bli lukket, vil du fortsette?</translation> </message> <message> <location line="+33"/> @@ -1522,7 +1527,7 @@ Adresse: %4 <message> <location line="+51"/> <source>Available:</source> - <translation type="unfinished"/> + <translation>Tilgjengelig:</translation> </message> <message> <location line="+16"/> @@ -1532,7 +1537,7 @@ Adresse: %4 <message> <location line="+16"/> <source>Pending:</source> - <translation type="unfinished"/> + <translation>Under behandling:</translation> </message> <message> <location line="+16"/> @@ -1577,7 +1582,7 @@ Adresse: %4 <location filename="../paymentserver.cpp" line="+403"/> <location line="+13"/> <source>URI handling</source> - <translation>URI håndtering</translation> + <translation>URI-håndtering</translation> </message> <message> <location line="+1"/> @@ -1607,32 +1612,32 @@ Adresse: %4 <message> <location line="+58"/> <source>Net manager warning</source> - <translation type="unfinished"/> + <translation>Nettleder advarsel</translation> </message> <message> <location line="+1"/> <source>Your active proxy doesn't support SOCKS5, which is required for payment requests via proxy.</source> - <translation type="unfinished"/> + <translation>Din aktive proxy har ikke støtte for SOCKS5, som er påkrevd for betalingsforespørsler via proxy.</translation> </message> <message> <location line="+52"/> <source>Payment request fetch URL is invalid: %1</source> - <translation type="unfinished"/> + <translation>Hentelenke for betalingsforespørsel er ugyldig: %1</translation> </message> <message> <location line="+27"/> <source>Payment request file handling</source> - <translation type="unfinished"/> + <translation>Filhåndtering for betalingsforespørsel</translation> </message> <message> <location line="+1"/> <source>Payment request file can not be read or processed! This can be caused by an invalid payment request file.</source> - <translation type="unfinished"/> + <translation>Fil for betalingsforespørsel kan ikke leses eller behandles! Dette kan skyldes en ugyldig fil for betalingsforespørsel.</translation> </message> <message> <location line="+73"/> <source>Unverified payment requests to custom payment scripts are unsupported.</source> - <translation type="unfinished"/> + <translation>Uverifiserte betalingsforespørsler til egentilpassede betalingscript er ikke støttet.</translation> </message> <message> <location line="+59"/> @@ -1642,12 +1647,12 @@ Adresse: %4 <message> <location line="+43"/> <source>Error communicating with %1: %2</source> - <translation>Feil ved å kommunisere med %1: %2</translation> + <translation>Feil i kommunikasjonen med %1: %2</translation> </message> <message> <location line="+24"/> <source>Payment request can not be parsed or processed!</source> - <translation type="unfinished"/> + <translation>Betalingsforespørsler kan ikke analyseres eller behandles!</translation> </message> <message> <location line="+11"/> @@ -1668,25 +1673,25 @@ Adresse: %4 <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> - <translation>Feil: Spesifisert data mappe "%1" finnes ikke.</translation> + <translation>Feil: Spesifisert datamappe "%1" finnes ikke.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation>Feil: Ugyldig kombinasjon av -regtest og -testnet.</translation> </message> <message> <location filename="../guiutil.cpp" line="+82"/> <source>Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</source> - <translation>Skriv inn en Bitcoin adresse (f.eks. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</translation> + <translation>Skriv inn en Bitcoin-adresse (f.eks. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</translation> </message> </context> <context> @@ -1694,7 +1699,7 @@ Adresse: %4 <message> <location filename="../receiverequestdialog.cpp" line="+36"/> <source>&Save Image...</source> - <translation>&Lagre bilde...</translation> + <translation>&Lagre Bilde...</translation> </message> <message> <location line="+3"/> @@ -1704,12 +1709,12 @@ Adresse: %4 <message> <location line="+28"/> <source>Save QR Code</source> - <translation>Lagre QR Kode</translation> + <translation>Lagre QR-kode</translation> </message> <message> <location line="+0"/> <source>PNG Image (*.png)</source> - <translation>PNG Bilde (*.png)</translation> + <translation>PNG-bilde (*.png)</translation> </message> </context> <context> @@ -1730,7 +1735,7 @@ Adresse: %4 <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>-</translation> </message> @@ -1747,7 +1752,7 @@ Adresse: %4 <message> <location line="-10"/> <source>Debug window</source> - <translation>Debug vindu</translation> + <translation>Feilsøkingsvindu</translation> </message> <message> <location line="+25"/> @@ -1826,11 +1831,13 @@ Adresse: %4 </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>Inn:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>Ut:</translation> </message> @@ -1847,7 +1854,7 @@ Adresse: %4 <message> <location line="+7"/> <source>Open the Bitcoin debug log file from the current data directory. This can take a few seconds for large log files.</source> - <translation>Åpne Bitcoin loggfil for feilsøk fra datamappen. Dette kan ta noen sekunder for store loggfiler.</translation> + <translation>Åpne Bitcoin sin loggfil for feilsøk fra den gjeldende datamappen. Dette kan ta noen sekunder for store loggfiler.</translation> </message> <message> <location line="+76"/> @@ -1855,9 +1862,9 @@ Adresse: %4 <translation>Tøm konsoll</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> - <translation>Velkommen til Bitcoin RPC konsoll.</translation> + <translation>Velkommen til Bitcoin sin RPC-konsoll.</translation> </message> <message> <location line="+1"/> @@ -1870,7 +1877,7 @@ Adresse: %4 <translation>Skriv <b>help</b> for en oversikt over kommandoer.</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 B</translation> </message> @@ -1925,7 +1932,7 @@ Adresse: %4 <message> <location line="-20"/> <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> - <translation>Gjenbruk en av de tidligere brukte mottaksadressene. Gjenbruk av adresser har sikkerhets og personverns utfordringer. Ikke bruk dette med unntak for å gjennopprette en betalingsforespørsel som ble gjort tidligere.</translation> + <translation>Gjenbruk en av de tidligere brukte mottaksadressene. Gjenbruk av adresser har sikkerhets- og personvernsutfordringer. Ikke bruk dette med unntak for å gjennopprette en betalingsforespørsel som ble gjort tidligere.</translation> </message> <message> <location line="+3"/> @@ -1936,29 +1943,29 @@ Adresse: %4 <location line="+14"/> <location line="+23"/> <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 type="unfinished"/> + <translation>En valgfri melding å tilknytte betalingsforespørselen, som vil bli vist når forespørselen er åpnet. Meldingen vil ikke bli sendt med betalingen over Bitcoin-nettverket.</translation> </message> <message> <location line="-7"/> <location line="+21"/> <source>An optional label to associate with the new receiving address.</source> - <translation type="unfinished"/> + <translation>En valgfri merkelapp å tilknytte den nye mottakeradressen.</translation> </message> <message> <location line="-7"/> <source>Use this form to request payments. All fields are <b>optional</b>.</source> - <translation type="unfinished"/> + <translation>Bruk dette skjemaet til betalingsforespørsler. Alle felt er <b>valgfrie</b>.</translation> </message> <message> <location line="+23"/> <location line="+22"/> <source>An optional amount to request. Leave this empty or zero to not request a specific amount.</source> - <translation type="unfinished"/> + <translation>Et valgfritt beløp å etterspørre. La stå tomt eller null for ikke å etterspørre et spesifikt beløp.</translation> </message> <message> <location line="+32"/> <source>Clear all fields of the form.</source> - <translation>Fjern alle felter fra formen.</translation> + <translation>Fjern alle felter fra skjemaet.</translation> </message> <message> <location line="+3"/> @@ -1968,17 +1975,17 @@ Adresse: %4 <message> <location line="+78"/> <source>Requested payments history</source> - <translation type="unfinished"/> + <translation>Etterspurt betalingshistorikk</translation> </message> <message> <location line="-98"/> <source>&Request payment</source> - <translation>Ette&rspør betaling</translation> + <translation>&Etterspør betaling</translation> </message> <message> <location line="+120"/> <source>Show the selected request (does the same as double clicking an entry)</source> - <translation>Vis den valgte etterspørringen (gjør det samme som å dobbelklikke en oppføring)</translation> + <translation>Vis den valgte etterspørringen (gjør det samme som å dobbelklikke på en oppføring)</translation> </message> <message> <location line="+3"/> @@ -1986,9 +1993,9 @@ Adresse: %4 <translation>Vis</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> - <translation>Fjern den valgte oppføringen fra listen</translation> + <translation>Fjern de valgte oppføringene fra listen</translation> </message> <message> <location line="+3"/> @@ -1996,7 +2003,7 @@ Adresse: %4 <translation>Fjern</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>Kopier merkelapp</translation> </message> @@ -2008,7 +2015,7 @@ Adresse: %4 <message> <location line="+1"/> <source>Copy amount</source> - <translation>Kopiér beløp</translation> + <translation>Kopier beløp</translation> </message> </context> <context> @@ -2016,7 +2023,7 @@ Adresse: %4 <message> <location filename="../forms/receiverequestdialog.ui" line="+29"/> <source>QR Code</source> - <translation>QR Kode</translation> + <translation>QR-kode</translation> </message> <message> <location line="+46"/> @@ -2031,7 +2038,7 @@ Adresse: %4 <message> <location line="+7"/> <source>&Save Image...</source> - <translation>&Lagre bilde...</translation> + <translation>&Lagre Bilde...</translation> </message> <message> <location filename="../receiverequestdialog.cpp" line="+56"/> @@ -2071,12 +2078,12 @@ Adresse: %4 <message> <location line="+10"/> <source>Resulting URI too long, try to reduce the text for label / message.</source> - <translation>Resulterende URI for lang, prøv å redusere teksten for merkelapp / melding.</translation> + <translation>Resultat URI for lang, prøv å redusere teksten for merkelapp / melding.</translation> </message> <message> <location line="+5"/> <source>Error encoding URI into QR Code.</source> - <translation>Feil ved koding av URI i QR kode.</translation> + <translation>Feil ved koding av URI til QR-kode.</translation> </message> </context> <context> @@ -2114,7 +2121,7 @@ Adresse: %4 <message> <location line="+8"/> <source>(no amount)</source> - <translation>(inget beløp)</translation> + <translation>(intet beløp)</translation> </message> </context> <context> @@ -2129,7 +2136,7 @@ Adresse: %4 <message> <location line="+76"/> <source>Coin Control Features</source> - <translation>Mynt Kontroll Funksjoner</translation> + <translation>Myntkontroll Funksjoner</translation> </message> <message> <location line="+20"/> @@ -2169,47 +2176,47 @@ Adresse: %4 <message> <location line="+48"/> <source>Fee:</source> - <translation>Avgift:</translation> + <translation>Gebyr:</translation> </message> <message> <location line="+32"/> <source>Low Output:</source> - <translation>Lav Utdata:</translation> + <translation>Svak Utdata:</translation> </message> <message> <location line="+48"/> <source>After Fee:</source> - <translation>Etter Avgift:</translation> + <translation>Etter Gebyr:</translation> </message> <message> <location line="+32"/> <source>Change:</source> - <translation>Endring:</translation> + <translation>Veksel:</translation> </message> <message> <location line="+44"/> <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source> - <translation type="unfinished"/> + <translation>Hvis dette er aktivert, men adressen for veksel er tom eller ugyldig, vil veksel bli sendt til en nylig generert adresse.</translation> </message> <message> <location line="+3"/> <source>Custom change address</source> - <translation type="unfinished"/> + <translation>Egendefinert adresse for veksel</translation> </message> <message> <location line="+164"/> <source>Send to multiple recipients at once</source> - <translation>Send til flere enn én mottaker</translation> + <translation>Send til flere enn en mottaker</translation> </message> <message> <location line="+3"/> <source>Add &Recipient</source> - <translation>&Legg til Mottaker</translation> + <translation>Legg til &Mottaker</translation> </message> <message> <location line="-23"/> <source>Clear all fields of the form.</source> - <translation>Fjern alle felter fra formen.</translation> + <translation>Fjern alle felter fra skjemaet.</translation> </message> <message> <location line="+3"/> @@ -2217,12 +2224,12 @@ Adresse: %4 <translation>Fjern &Alt</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>Saldo:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>Bekreft sending</translation> </message> @@ -2252,7 +2259,7 @@ Adresse: %4 <message> <location line="+1"/> <source>Copy amount</source> - <translation>Kopiér beløp</translation> + <translation>Kopier beløp</translation> </message> <message> <location line="+1"/> @@ -2262,32 +2269,32 @@ Adresse: %4 <message> <location line="+1"/> <source>Copy after fee</source> - <translation type="unfinished"/> + <translation>Kopier fra gebyr</translation> </message> <message> <location line="+1"/> <source>Copy bytes</source> - <translation type="unfinished"/> + <translation>Kopier bytes</translation> </message> <message> <location line="+1"/> <source>Copy priority</source> - <translation type="unfinished"/> + <translation>Kopier prioritet</translation> </message> <message> <location line="+1"/> <source>Copy low output</source> - <translation type="unfinished"/> + <translation>Kopier svake utdata</translation> </message> <message> <location line="+1"/> <source>Copy change</source> - <translation type="unfinished"/> + <translation>Kopier veksel</translation> </message> <message> <location line="+170"/> <source>Total Amount %1 (= %2)</source> - <translation>Total Mengde %1 (= %2)</translation> + <translation>Totalt Beløp %1 (= %2)</translation> </message> <message> <location line="+2"/> @@ -2302,7 +2309,7 @@ Adresse: %4 <message> <location line="+3"/> <source>The amount to pay must be larger than 0.</source> - <translation>Beløpen som skal betales må være over 0.</translation> + <translation>Beløpet som skal betales må være over 0.</translation> </message> <message> <location line="+3"/> @@ -2317,7 +2324,7 @@ Adresse: %4 <message> <location line="+3"/> <source>Duplicate address found, can only send to each address once per send operation.</source> - <translation>Duplikate adresser funnet. Kan bare sende én gang til hver adresse per operasjon.</translation> + <translation>Doble antall adresser funnet. Kan bare sende en gang til hver adresse per operasjon.</translation> </message> <message> <location line="+3"/> @@ -2327,12 +2334,12 @@ Adresse: %4 <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>Transaksjonen ble avvist. Dette kan skje hvis noen av myntene i lommeboken allerede er brukt, f.eks. hvis du kopierte wallet.dat og mynter ble brukt i kopien uten å bli markert som brukt her.</translation> + <translation>Transaksjonen ble avvist! Dette kan skje hvis noen av myntene i lommeboken allerede er brukt, som hvis du kopierte wallet.dat og mynter ble brukt i kopien uten å bli markert som brukt her.</translation> </message> <message> <location line="+113"/> <source>Warning: Invalid Bitcoin address</source> - <translation>Advarsel: Ugyldig Bitcoin adresse</translation> + <translation>Advarsel: Ugyldig Bitcoin-adresse</translation> </message> <message> <location line="+20"/> @@ -2342,7 +2349,7 @@ Adresse: %4 <message> <location line="-11"/> <source>Warning: Unknown change address</source> - <translation>Advarsel: Ukjent adresse for vekslepenger</translation> + <translation>Advarsel: Ukjent adresse for veksel</translation> </message> <message> <location line="-367"/> @@ -2444,7 +2451,7 @@ Adresse: %4 <message> <location line="+33"/> <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 type="unfinished"/> + <translation>En melding som var tilknyttet bitcoinen: URI vil bli lagret med transaksjonen for din oversikt. Denne meldingen vil ikke bli sendt over Bitcoin-nettverket.</translation> </message> <message> <location line="+426"/> @@ -2469,7 +2476,7 @@ Adresse: %4 <message> <location filename="../utilitydialog.cpp" line="+48"/> <source>Bitcoin Core is shutting down...</source> - <translation type="unfinished"/> + <translation>Bitcoin Core lukker...</translation> </message> <message> <location line="+1"/> @@ -2482,17 +2489,17 @@ Adresse: %4 <message> <location filename="../forms/signverifymessagedialog.ui" line="+14"/> <source>Signatures - Sign / Verify a Message</source> - <translation>Signaturer - Signer / Verifiser en melding</translation> + <translation>Signaturer - Signer / Verifiser en Melding</translation> </message> <message> <location line="+10"/> <source>&Sign Message</source> - <translation>&Signér Melding</translation> + <translation>&Signer Melding</translation> </message> <message> <location line="+6"/> <source>You can sign messages with your addresses to prove you own them. Be careful not to sign anything vague, 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>Du kan signere meldinger med dine adresser for å bevise at du eier dem. Ikke signér vage meldinger da phishing-angrep kan prøve å lure deg til å signere din identitet over til andre. Signér kun fullt detaljerte utsagn som du er enig i.</translation> + <translation>Du kan signere meldinger med dine adresser for å bevise at du eier dem. Ikke signer vage meldinger da phishing-angrep kan prøve å lure deg til å signere din identitet over til andre. Signer kun fullt detaljerte utsagn som du er enig i.</translation> </message> <message> <location line="+18"/> @@ -2544,7 +2551,7 @@ Adresse: %4 <message> <location line="+3"/> <source>Sign &Message</source> - <translation>Signér &Melding</translation> + <translation>Signer &Melding</translation> </message> <message> <location line="+14"/> @@ -2580,7 +2587,7 @@ Adresse: %4 <message> <location line="+3"/> <source>Verify &Message</source> - <translation>&Verifiser Melding</translation> + <translation>Verifiser &Melding</translation> </message> <message> <location line="+14"/> @@ -2590,7 +2597,7 @@ Adresse: %4 <message> <location filename="../signverifymessagedialog.cpp" line="+30"/> <source>Enter a Bitcoin address (e.g. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</source> - <translation>Skriv inn en Bitcoin adresse (f.eks. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</translation> + <translation>Skriv inn en Bitcoin-adresse (f.eks. 1NS17iag9jJgTHD1VXjvLCEnZuQ3rJDE9L)</translation> </message> <message> <location line="-1"/> @@ -2669,7 +2676,7 @@ Adresse: %4 <message> <location filename="../splashscreen.cpp" line="+28"/> <source>Bitcoin Core</source> - <translation>Bitcoin Kjerne</translation> + <translation>Bitcoin Core</translation> </message> <message> <location line="+2"/> @@ -2700,7 +2707,7 @@ Adresse: %4 <message> <location line="+6"/> <source>conflicted</source> - <translation type="unfinished"/> + <translation>konflikt</translation> </message> <message> <location line="+2"/> @@ -2827,7 +2834,7 @@ Adresse: %4 <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>Genererte bitcoins må modnes %1 blokker før de kan brukes. Da du genererte denne blokken ble den kringkastet på nettverket for å bli lagt til i kjeden av blokker. Hvis den ikke kommer med i kjeden vil den endre seg til "ikke akseptert" og pengene vil ikke kunne brukes. Dette vil noen ganger skje hvis en annen node genererer en blokk noen sekunder i tid fra din egen.</translation> </message> <message> <location line="+8"/> @@ -2862,7 +2869,7 @@ Adresse: %4 <message> <location line="-232"/> <source>, has not been successfully broadcast yet</source> - <translation>, har ikke blitt kringkastet uten problemer enda.</translation> + <translation>, har ikke blitt kringkastet med hell enda</translation> </message> <message numerus="yes"> <location line="-37"/> @@ -2913,7 +2920,7 @@ Adresse: %4 <message> <location line="+78"/> <source>Immature (%1 confirmations, will be available after %2)</source> - <translation type="unfinished"/> + <translation>Umoden (%1 bekreftelser, vil være tilgjengelig etter %2)</translation> </message> <message numerus="yes"> <location line="-21"/> @@ -2943,22 +2950,22 @@ Adresse: %4 <message> <location line="-21"/> <source>Offline</source> - <translation type="unfinished"/> + <translation>Frakoblet</translation> </message> <message> <location line="+3"/> <source>Unconfirmed</source> - <translation type="unfinished"/> + <translation>Ubekreftet</translation> </message> <message> <location line="+3"/> <source>Confirming (%1 of %2 recommended confirmations)</source> - <translation type="unfinished"/> + <translation>Bekrefter (%1 av %2 anbefalte bekreftelser)</translation> </message> <message> <location line="+6"/> <source>Conflicted</source> - <translation type="unfinished"/> + <translation>Konflikt</translation> </message> <message> <location line="+51"/> @@ -3008,7 +3015,7 @@ Adresse: %4 <message> <location line="+2"/> <source>Destination address of transaction.</source> - <translation>Mottaksadresse for transaksjonen</translation> + <translation>Mottaksadresse for transaksjonen.</translation> </message> <message> <location line="+2"/> @@ -3102,7 +3109,7 @@ Adresse: %4 <message> <location line="+1"/> <source>Copy amount</source> - <translation>Kopiér beløp</translation> + <translation>Kopier beløp</translation> </message> <message> <location line="+1"/> @@ -3120,7 +3127,7 @@ Adresse: %4 <translation>Vis transaksjonsdetaljer</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>Eksporter Transaksjonshistorikk</translation> </message> @@ -3216,7 +3223,7 @@ Adresse: %4 <message> <location filename="../walletview.cpp" line="+43"/> <source>&Export</source> - <translation>&Eksporter...</translation> + <translation>&Eksporter</translation> </message> <message> <location line="+1"/> @@ -3226,7 +3233,7 @@ Adresse: %4 <message> <location line="+181"/> <source>Backup Wallet</source> - <translation>Sikkerhetskopier lommebok</translation> + <translation>Sikkerhetskopier Lommebok</translation> </message> <message> <location line="+1"/> @@ -3236,7 +3243,7 @@ Adresse: %4 <message> <location line="+6"/> <source>Backup Failed</source> - <translation>Sikkerhetskopiering feilet</translation> + <translation>Sikkerhetskopiering Feilet</translation> </message> <message> <location line="+0"/> @@ -3251,13 +3258,13 @@ Adresse: %4 <message> <location line="+0"/> <source>Backup Successful</source> - <translation>Sikkerhetskopiering fullført</translation> + <translation>Sikkerhetskopiering Fullført</translation> </message> </context> <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+223"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>Bruk:</translation> </message> @@ -3292,14 +3299,9 @@ Adresse: %4 <translation>Angi mappe for datafiler</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Sett størrelse på mellomlager for database i megabytes (standardverdi: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> - <translation>Lytt etter tilkoblinger på <port> (standardverdi: 8333 eller testnet: 18333)</translation> + <translation>Lytt etter tilkoblinger på <port> (standardverdi: 8333 eller testnett: 18333)</translation> </message> <message> <location line="+5"/> @@ -3322,22 +3324,22 @@ Adresse: %4 <translation>Grenseverdi for å koble fra noder med dårlig oppførsel (standardverdi: 100)</translation> </message> <message> - <location line="-150"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Antall sekunder noder med dårlig oppførsel hindres fra å koble til på nytt (standardverdi: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> - <translation>En feil oppstod ved opprettelse av RPC port %u for lytting: %s</translation> + <translation>En feil oppstod ved opprettelse av RPC-port %u for IPv4: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> - <translation>Lytt etter JSON-RPC tilkoblinger på <port> (standardverdi: 8332 or testnet: 18332)</translation> + <translation>Lytt etter JSON-RPC tilkoblinger på <port> (standardverdi: 8332 eller testnett: 18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>Ta imot kommandolinje- og JSON-RPC-kommandoer</translation> </message> @@ -3357,7 +3359,7 @@ Adresse: %4 <translation>Ta imot tilkoblinger fra utsiden (standardverdi: 1 hvis uten -proxy eller -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3378,7 +3380,7 @@ rpcpassord=%s Brukernavnet og passordet MÅ IKKE være like. Om filen ikke eksisterer, opprett den nå med eier-kun-les filrettigheter. Det er også anbefalt at å sette varselsmelding slik du får melding om problemer. -For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@foo.com</translation> +For eksempel: varselmelding=echo %%s | mail -s "Bitcoin Varsel" admin@foo.com</translation> </message> <message> <location line="+12"/> @@ -3388,7 +3390,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+5"/> <source>An error occurred while setting up the RPC port %u for listening on IPv6, falling back to IPv4: %s</source> - <translation>En feil oppstod under oppsettet av RPC port %u for IPv6, tilbakestilles til IPv4: %s</translation> + <translation>En feil oppstod under oppsettet av RPC-port %u for IPv6, tilbakestilles til IPv4: %s</translation> </message> <message> <location line="+3"/> @@ -3396,42 +3398,47 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <translation>Bind til angitt adresse. Bruk [vertsmaskin]:port notasjon for IPv6</translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>Kan ikke skaffe lås på denne datamappen %s. Bitcoin kjører sansynlig alerede.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> - <translation type="unfinished"/> + <translation>Gå til modus for regresjonstesting, som bruker en spesiell blokkjede der blokker kan bli løst momentant. Dette er tenkt til verktøy for regresjonstesting og apputvikling.</translation> </message> <message> <location line="+4"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly.</source> - <translation type="unfinished"/> + <translation>Gå til modus for regresjonstesting, som bruker en spesiell blokkjede der blokker kan bli løst momentant.</translation> </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation>Feil: Lytting etter innkommende tilkoblinger feilet (lytting returnerte feil %d)</translation> + </message> + <message> + <location line="+2"/> <source>Error: 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>Feil: Transaksjonen ble avvist! Dette kan skje hvis noen av myntene i lommeboken alerede er blit brukt, som om du brukte en kopi av wallet.dat og myntene ble brukt i kopien, men ikke markert som brukt her.</translation> + <translation>Feil: Transaksjonen ble avvist! Dette kan skje hvis noen av myntene i lommeboken allerede er blitt brukt, som om du brukte en kopi av wallet.dat og myntene ble brukt i kopien, men ikke markert som brukt her.</translation> </message> <message> <location line="+4"/> <source>Error: This transaction requires a transaction fee of at least %s because of its amount, complexity, or use of recently received funds!</source> - <translation>Feil: Denne transaksjonen trenger en gebyr på minst %s på grunn av beløpet, kompleksiteten, eller bruk av allerede mottatte penger.</translation> + <translation>Feil: Denne transaksjonen trenger en gebyr på minst %s på grunn av beløpet, kompleksiteten eller bruk av allerede mottatte penger!</translation> </message> <message> <location line="+6"/> <source>Execute command when a wallet transaction changes (%s in cmd is replaced by TxID)</source> - <translation>Kjør kommando når en lommeboktransaksjon endres (%s i cmd er erstattet med TxID)</translation> + <translation>Kjør kommando når en lommeboktransaksjon endres (%s i kommando er erstattet med TxID)</translation> </message> <message> <location line="+18"/> <source>This is a pre-release test build - use at your own risk - do not use for mining or merchant applications</source> - <translation>Dette er en forhånds-sluppet test versjon - bruk på egen risiko - ikke for bruk av "Mining" (utvinning) eller markedsføring applikasjoner.</translation> + <translation>Dette er en forhåndssluppet testversjon - bruk på egen risiko - ikke for bruk til blokkutvinning eller bedriftsapplikasjoner</translation> </message> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation>Ute av stand til å binde til %s på denne datamaskinen. Bitcoin Core kjører sannsynligvis allerede.</translation> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation>Bruk separate SOCKS5 proxyer for å nå noder via Tor skjulte tjenester (standardverdi: -proxy)</translation> </message> @@ -3448,17 +3455,17 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+3"/> <source>Warning: The network does not appear to fully agree! Some miners appear to be experiencing issues.</source> - <translation>Advarsel: Nettverket ser ikke ut til å vær enig! Noen minere ser ut til å ha problemer.</translation> + <translation>Advarsel: Nettverket ser ikke ut til å være enig! Noen minere ser ut til å ha problemer.</translation> </message> <message> <location line="+3"/> <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 ut til å være enige med våre noder! Du må oppgradere, eller andre nodes må oppgradere.</translation> + <translation>Advarsel: Vi ser ikke ut til å være enige med våre noder! Du må oppgradere, eller andre noder må oppgradere.</translation> </message> <message> <location line="+3"/> <source>Warning: error reading wallet.dat! All keys read correctly, but transaction data or address book entries might be missing or incorrect.</source> - <translation>Advarsel: Feil ved lesing av wallet.dat! Alle taster lest riktig, men transaksjon dataene eller adresse innlegg er kanskje manglende eller feil.</translation> + <translation>Advarsel: Feil ved lesing av wallet.dat! Alle nøkler lest riktig, men transaksjonsdataene eller oppføringer i adresseboken mangler kanskje eller er feil.</translation> </message> <message> <location line="+3"/> @@ -3478,7 +3485,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Bitcoin Core Daemon</source> - <translation type="unfinished"/> + <translation>Bitcoin Core Daemon</translation> </message> <message> <location line="+1"/> @@ -3493,7 +3500,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+5"/> <source>Clear list of wallet transactions (diagnostic tool; implies -rescan)</source> - <translation type="unfinished"/> + <translation>Tøm listen over transaksjoner i lommeboken (diagnoseverktøy; impliserer -rescan)</translation> </message> <message> <location line="+1"/> @@ -3523,7 +3530,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Do not load the wallet and disable wallet RPC calls</source> - <translation type="unfinished"/> + <translation>Ikke last inn lommeboken og deaktiver RPC-kall</translation> </message> <message> <location line="+1"/> @@ -3538,7 +3545,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Error initializing wallet database environment %s!</source> - <translation>Feil under oppstart av lommebokdatabasemiljø %s!</translation> + <translation>Feil under oppstart av lommeboken sitt databasemiljø %s!</translation> </message> <message> <location line="+1"/> @@ -3553,7 +3560,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+2"/> <source>Error: Disk space is low!</source> - <translation>Feil: lite ledig lagringsplass!</translation> + <translation>Feil: Lite ledig lagringsplass!</translation> </message> <message> <location line="+1"/> @@ -3608,7 +3615,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Failed to write to coin database</source> - <translation>Feil ved skriving av bitcoin database</translation> + <translation>Feil ved skriving til bitcoin sin database</translation> </message> <message> <location line="+1"/> @@ -3618,7 +3625,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Failed to write undo data</source> - <translation>Feil ved skriving av angre-data</translation> + <translation>Feil ved skriving av angredata</translation> </message> <message> <location line="+1"/> @@ -3628,12 +3635,12 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Find peers using DNS lookup (default: 1 unless -connect)</source> - <translation>Finn andre noder gjennom DNS-oppslag (standardverdi: 1 med mindre -connect er oppgit)</translation> + <translation>Finn andre noder gjennom DNS-oppslag (standardverdi: 1 med mindre -connect er oppgitt)</translation> </message> <message> <location line="+1"/> <source>Generate coins (default: 0)</source> - <translation>Generér bitcoins (standardverdi: 0)</translation> + <translation>Generer bitcoins (standardverdi: 0)</translation> </message> <message> <location line="+2"/> @@ -3648,12 +3655,12 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>If <category> is not supplied, output all debugging information.</source> - <translation type="unfinished"/> + <translation>Hvis <category> ikke er oppgitt, ta ut all informasjon om feilsøking.</translation> </message> <message> <location line="+2"/> <source>Incorrect or no genesis block found. Wrong datadir for network?</source> - <translation>Ugyldig eller ingen skaperblokk funnet. Feil datadir for nettverk?</translation> + <translation>Ugyldig eller ingen skaperblokk funnet. Feil datamappe for nettverk?</translation> </message> <message> <location line="+3"/> @@ -3668,57 +3675,62 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+5"/> <source>Prepend debug output with timestamp (default: 1)</source> - <translation type="unfinished"/> + <translation>Sett inn tidsstempel i front av feilsøkingsdata (standardverdi: 1)</translation> </message> <message> <location line="+1"/> <source>RPC client options:</source> - <translation>RPC klient innstillinger:</translation> + <translation>Innstillinger for RPC-klient:</translation> </message> <message> <location line="+1"/> <source>Rebuild block chain index from current blk000??.dat files</source> - <translation>Gjenopprett blokkjedeindex fra blk000??.dat filer</translation> + <translation>Gjenopprett blokkjedeindeks fra blk000??.dat filer</translation> </message> <message> <location line="+5"/> <source>Select SOCKS version for -proxy (4 or 5, default: 5)</source> - <translation>Velg versjon av SOCKS proxy (4 eller 5, standardverdi: 5)</translation> + <translation>Velg versjon av SOCKS -proxy (4 eller 5, standardverdi: 5)</translation> </message> <message> <location line="+1"/> <source>Send command to Bitcoin server</source> - <translation>Send kommando til Bitcoin tjener</translation> + <translation>Send kommando til Bitcoin-tjener</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation>Sett databasen sin størrelse på hurtigbufferen i megabytes (%d til %d, standardverdi: %d)</translation> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation>Sett maks blokkstørrelse i bytes (standardverdi: %d)</translation> </message> <message> <location line="+2"/> <source>Set the number of threads to service RPC calls (default: 4)</source> - <translation>Sett nummer av tråder til betjening av RPC kall (standardverdi: 4)</translation> + <translation>Sett nummer av tråder til betjening av RPC-kall (standardverdi: 4)</translation> </message> <message> <location line="+7"/> <source>Specify wallet file (within data directory)</source> - <translation>Angi lommebok fil (inne i data mappe)</translation> + <translation>Angi lommebokfil (inne i datamappe)</translation> </message> <message> <location line="+2"/> <source>Spend unconfirmed change when sending transactions (default: 1)</source> - <translation type="unfinished"/> + <translation>Bruk ubekreftet veksel ved sending av transaksjoner (standardverdi: 1)</translation> </message> <message> <location line="+1"/> <source>Start Bitcoin server</source> - <translation>Start Bitcoin tjener</translation> + <translation>Start Bitcoin-tjener</translation> </message> <message> <location line="+3"/> <source>This is intended for regression testing tools and app development.</source> - <translation type="unfinished"/> + <translation>Dette er tiltenkt verktøy for regresjonstesting og apputvikling.</translation> </message> <message> <location line="+10"/> @@ -3738,12 +3750,12 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Wait for RPC server to start</source> - <translation>Vent på start av RPV tjeneren</translation> + <translation>Vent på start av RPC-tjeneren</translation> </message> <message> <location line="+1"/> <source>Wallet %s resides outside data directory %s</source> - <translation>Lommebok %s befinner seg utenfor data mappe %s</translation> + <translation>Lommebok %s befinner seg utenfor datamappe %s</translation> </message> <message> <location line="+2"/> @@ -3753,7 +3765,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+2"/> <source>Warning: Deprecated argument -debugnet ignored, use -debug=net</source> - <translation type="unfinished"/> + <translation>Advarsel: Utløpt argument -debugnet ignorert, bruk -debug=net</translation> </message> <message> <location line="+2"/> @@ -3763,42 +3775,47 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="-80"/> <source>Imports blocks from external blk000??.dat file</source> - <translation>Importerer blokker fra ekstern blk000?.dat fil</translation> + <translation>Importerer blokker fra ekstern fil blk000??.dat</translation> </message> <message> - <location line="-106"/> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> + <translation>Ute av stand til å låse datamappen %s. Bitcoin Core kjører sannsynligvis allerede.</translation> + </message> + <message> + <location line="+19"/> <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 type="unfinished"/> + <translation>Utfør kommando når et relevant varsel er mottatt eller vi ser en veldig lang gaffel (%s i kommando er erstattet med melding)</translation> </message> <message> <location line="+14"/> <source>Output debugging information (default: 0, supplying <category> is optional)</source> - <translation type="unfinished"/> + <translation>Ta ut feilsøkingsinformasjon (standardverdi: 0, bruk av <category> er valgfritt)</translation> </message> <message> <location line="+2"/> <source>Set maximum size of high-priority/low-fee transactions in bytes (default: %d)</source> - <translation type="unfinished"/> + <translation>Sett maksimum størrelse for transaksjoner med høy prioritet / lavt gebyr, i bytes (standardverdi: %d)</translation> </message> <message> <location line="+2"/> <source>Set the number of script verification threads (up to 16, 0 = auto, <0 = leave that many cores free, default: 0)</source> - <translation type="unfinished"/> + <translation>Sett antall script verifikasjonstråder (opp til 16, 0 = automatisk, <0 = la så mange kjerner være ledig, standardvalg: 0)</translation> </message> <message> - <location line="+90"/> + <location line="+91"/> <source>Information</source> <translation>Informasjon</translation> </message> <message> <location line="+4"/> <source>Invalid amount for -minrelaytxfee=<amount>: '%s'</source> - <translation>Ugyldig mengde for -minrelaytxfee=<amount>: '%s'</translation> + <translation>Ugyldig mengde for -minrelaytxfee=<beløp>: '%s'</translation> </message> <message> <location line="+1"/> <source>Invalid amount for -mintxfee=<amount>: '%s'</source> - <translation>Ugyldig mengde for -mintxfee=<amount>: '%s'</translation> + <translation>Ugyldig mengde for -mintxfee=<beløp>: '%s'</translation> </message> <message> <location line="+8"/> @@ -3833,7 +3850,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+4"/> <source>Send trace/debug info to console instead of debug.log file</source> - <translation>Send spor/debug informasjon til konsollet istedenfor debug.log filen</translation> + <translation>Send spor-/feilsøkingsinformasjon til konsollen istedenfor filen debug.log</translation> </message> <message> <location line="+6"/> @@ -3843,7 +3860,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+2"/> <source>Shrink debug.log file on client startup (default: 1 when no -debug)</source> - <translation>Krymp debug.log filen når klienten starter (standardverdi: 1 hvis uten -debug)</translation> + <translation>Krymp filen debug.log når klienten starter (standardverdi: 1 hvis uten -debug)</translation> </message> <message> <location line="+1"/> @@ -3868,7 +3885,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+1"/> <source>Transaction amounts must be positive</source> - <translation>Transaksjonsmengden må være positiv</translation> + <translation>Transaksjonsbeløpet må være positivt</translation> </message> <message> <location line="+1"/> @@ -3903,7 +3920,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="+2"/> <source>Zapping all transactions from wallet...</source> - <translation type="unfinished"/> + <translation>Zapper alle transaksjoner fra lommeboken...</translation> </message> <message> <location line="+1"/> @@ -3931,24 +3948,24 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <translation>Send kommandoer til node på <ip> (standardverdi: 127.0.0.1)</translation> </message> <message> - <location line="-133"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> - <translation>Eksekvér kommando når beste blokk endrer seg (%s i kommandoen erstattes med blokkens hash)</translation> + <translation>Utfør kommando når beste blokk endrer seg (%s i kommandoen erstattes med blokkens hash)</translation> </message> <message> - <location line="+163"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> - <translation>Oppgradér lommebok til nyeste format</translation> + <translation>Oppgrader lommebok til nyeste format</translation> </message> <message> <location line="-25"/> <source>Set key pool size to <n> (default: 100)</source> - <translation>Angi størrelse på nøkkel-lager til <n> (standardverdi: 100)</translation> + <translation>Angi størrelsen på nøkkellageret til <n> (standardverdi: 100)</translation> </message> <message> <location line="-11"/> <source>Rescan the block chain for missing wallet transactions</source> - <translation>Se gjennom blokk-kjeden etter manglende lommeboktransaksjoner</translation> + <translation>Se gjennom blokkjeden etter manglende lommeboktransaksjoner</translation> </message> <message> <location line="+39"/> @@ -3978,7 +3995,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="-109"/> <source>Allow DNS lookups for -addnode, -seednode and -connect</source> - <translation>Tillat DNS oppslag for -addnode, -seednode og -connect</translation> + <translation>Tillat oppslag i DNS for -addnode, -seednode og -connect</translation> </message> <message> <location line="+61"/> @@ -4018,7 +4035,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <message> <location line="-1"/> <source>Unknown -socks proxy version requested: %i</source> - <translation>Ukjent -socks proxy versjon angitt: %i</translation> + <translation>Ukjent -socks proxyversjon angitt: %i</translation> </message> <message> <location line="-103"/> @@ -4056,12 +4073,7 @@ For eksempel: varselmelding=echo %%s | mail -s "Bitcoin varsel" admin@ <translation>Legg til node for tilkobling og hold forbindelsen åpen</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>Kan ikke binde til %s på denne datamaskinen. Sannsynligvis kjører Bitcoin allerede.</translation> - </message> - <message> - <location line="+96"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>Laster lommebok...</translation> </message> diff --git a/src/qt/locale/bitcoin_pl.ts b/src/qt/locale/bitcoin_pl.ts index ba399c396a..3c80c594dd 100644 --- a/src/qt/locale/bitcoin_pl.ts +++ b/src/qt/locale/bitcoin_pl.ts @@ -1,4 +1,4 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="pl" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="pl" version="2.1"> <context> <name>AboutDialog</name> <message> @@ -40,7 +40,7 @@ This product includes software developed by the OpenSSL Project for use in the O <location line="+12"/> <location line="+2"/> <source> (%1-bit)</source> - <translation type="unfinished"/> + <translation>(%1-bit)</translation> </message> </context> <context> @@ -71,7 +71,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>&Kopiuj</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation>Z&amknij</translation> </message> @@ -81,7 +81,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>&Kopiuj adres</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>Usuń zaznaczony adres z listy</translation> </message> @@ -143,7 +143,7 @@ This product includes software developed by the OpenSSL Project for use in the O <message> <location line="+1"/> <source>&Edit</source> - <translation>&Edytuj</translation> + <translation>&Modyfikuj</translation> </message> <message> <location line="+194"/> @@ -328,7 +328,7 @@ This product includes software developed by the OpenSSL Project for use in the O <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>Podpisz wiado&mość...</translation> </message> @@ -343,12 +343,12 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>P&odsumowanie</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation type="unfinished"/> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>Pokazuje ogólny zarys portfela</translation> </message> @@ -411,17 +411,17 @@ This product includes software developed by the OpenSSL Project for use in the O <message> <location line="+10"/> <source>&Sending addresses...</source> - <translation type="unfinished"/> + <translation>Adres wysyłania</translation> </message> <message> <location line="+2"/> <source>&Receiving addresses...</source> - <translation type="unfinished"/> + <translation>Adres odbiorczy</translation> </message> <message> <location line="+3"/> <source>Open &URI...</source> - <translation type="unfinished"/> + <translation>Otwórz URI...</translation> </message> <message> <location line="+325"/> @@ -469,17 +469,17 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>&Zweryfikuj wiadomość...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>Portfel</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>Wyślij</translation> </message> @@ -535,18 +535,18 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>Pasek zakładek</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[testnet]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> <translation>Rdzeń BitCoin</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> <translation>Żądaj płatności (generuje kod QR oraz bitcoin URI)</translation> </message> @@ -608,7 +608,7 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>Pobrano %1 bloków z historią transakcji.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n godzina</numerusform><numerusform>%n godzin</numerusform><numerusform>%n godzin</numerusform></translation> </message> @@ -619,13 +619,24 @@ This product includes software developed by the OpenSSL Project for use in the O </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n tydzień</numerusform><numerusform>%n tygodni</numerusform><numerusform>%n tygodni</numerusform></translation> </message> <message> + <location line="+0"/> + <source>%1 and %2</source> + <translation>%1 i %2</translation> + </message> + <message numerus="yes"> + <location line="+0"/> + <source>%n year(s)</source> + <translation><numerusform>%n rok</numerusform><numerusform>%n lata</numerusform><numerusform>%n lat</numerusform></translation> + </message> + <message> <location line="+4"/> <source>%1 behind</source> - <translation>%1 do tyłu</translation> + <translation>%1 wstecz</translation> </message> <message> <location line="+21"/> @@ -653,12 +664,12 @@ This product includes software developed by the OpenSSL Project for use in the O <translation>Informacja</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>Aktualny</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>Łapanie bloków...</translation> </message> @@ -696,7 +707,7 @@ Adres: %4 <translation>Portfel jest <b>zaszyfrowany</b> i obecnie <b>zablokowany</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+435"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>Błąd krytyczny. Bitcoin nie może kontynuować bezpiecznie więc zostanie zamknięty.</translation> </message> @@ -704,7 +715,7 @@ Adres: %4 <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>Sieć Alert</translation> </message> @@ -802,7 +813,7 @@ Adres: %4 <translation>Priorytet</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>Kopiuj adres</translation> </message> @@ -868,7 +879,7 @@ Adres: %4 <translation>Skopiuj resztę</translation> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>najwyższa</translation> </message> @@ -940,39 +951,39 @@ Adres: %4 <message> <location line="+10"/> <source>This label turns red, if the transaction size is greater than 1000 bytes.</source> - <translation type="unfinished"/> + <translation>Etykieta staje się czerwona kiedy transakcja jest większa niż 1000 bajtów.</translation> </message> <message> <location line="+1"/> <location line="+5"/> <source>This means a fee of at least %1 per kB is required.</source> - <translation type="unfinished"/> + <translation>Oznacza to wymaganą opłatę minimum %1 na kB.</translation> </message> <message> <location line="-4"/> <source>Can vary +/- 1 byte per input.</source> - <translation type="unfinished"/> + <translation>Waha się +/- 1 bajt na wejście.</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>Transakcje o wyższym priorytecie zostają szybciej dołączone do bloku.</translation> </message> <message> <location line="+1"/> <source>This label turns red, if the priority is smaller than "medium".</source> - <translation type="unfinished"/> + <translation>Ta etykieta jest czerwona, jeżeli priorytet jest mniejszy niż "średni"</translation> </message> <message> <location line="+3"/> <source>This label turns red, if any recipient receives an amount smaller than %1.</source> - <translation type="unfinished"/> + <translation>Etykieta staje się czerwona kiedy którykolwiek odbiorca otrzymuje kwotę mniejszą niż %1.</translation> </message> <message> <location line="+1"/> <location line="+4"/> <source>This means a fee of at least %1 is required.</source> - <translation type="unfinished"/> + <translation>Oznacza to, że wymagana jest opłata przynajmniej %1.</translation> </message> <message> <location line="-3"/> @@ -982,11 +993,11 @@ Adres: %4 <message> <location line="+2"/> <source>This label turns red, if the change is smaller than %1.</source> - <translation type="unfinished"/> + <translation>Etykieta staje się czerwona kiedy reszta jest mniejsza niż %1.</translation> </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(bez etykiety)</translation> </message> @@ -1006,7 +1017,7 @@ Adres: %4 <message> <location filename="../forms/editaddressdialog.ui" line="+14"/> <source>Edit Address</source> - <translation>Edytuj adres</translation> + <translation>Zmień adres</translation> </message> <message> <location line="+11"/> @@ -1041,12 +1052,12 @@ Adres: %4 <message> <location line="+3"/> <source>Edit receiving address</source> - <translation>Edytuj adres odbioru</translation> + <translation>Zmień adres odbioru</translation> </message> <message> <location line="+4"/> <source>Edit sending address</source> - <translation>Edytuj adres wysyłania</translation> + <translation>Zmień adres wysyłania</translation> </message> <message> <location line="+76"/> @@ -1102,7 +1113,7 @@ Adres: %4 <message> <location filename="../forms/helpmessagedialog.ui" line="+19"/> <source>Bitcoin Core - Command-line options</source> - <translation type="unfinished"/> + <translation>Opcje konsoli</translation> </message> <message> <location filename="../utilitydialog.cpp" line="+24"/> @@ -1160,17 +1171,17 @@ Adres: %4 <message> <location line="+9"/> <source>Welcome to Bitcoin Core.</source> - <translation type="unfinished"/> + <translation>Witam w Bitcoin Core</translation> </message> <message> <location line="+26"/> <source>As this is the first time the program is launched, you can choose where Bitcoin Core will store its data.</source> - <translation type="unfinished"/> + <translation>Ponieważ jest to pierwsze uruchomienie programu, możesz wybrać gdzie będą przechowywane informacje.</translation> </message> <message> <location line="+10"/> <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 type="unfinished"/> + <translation>Program pobierze i będzie przechowywał kopię łańcucha bloków Bitcoin. W wybranym katalogu musi być przynajmniej %1GB miejsca, a z czasem wielkość danych będzie rosła. Portfel będzie przechowywany w tym samym katalogu.</translation> </message> <message> <location line="+10"/> @@ -1183,7 +1194,7 @@ Adres: %4 <translation>Użyj wybranego folderu dla danych</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> @@ -1276,7 +1287,7 @@ Adres: %4 <message> <location line="+16"/> <source>MB</source> - <translation type="unfinished"/> + <translation>MB</translation> </message> <message> <location line="+27"/> @@ -1289,12 +1300,7 @@ Adres: %4 <translation>Ustaw liczbę wątków skryptu weryfikacji (do 16, 0 = auto, <0 = zostawia taką ilość rdzenie wolnych, domyślnie: 0)</translation> </message> <message> - <location line="+107"/> - <source>&Spend unconfirmed change (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+37"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation type="unfinished"/> </message> @@ -1309,7 +1315,7 @@ Adres: %4 <translation>Adres IP serwera proxy (np. IPv4: 127.0.0.1 / IPv6: ::1)</translation> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> <translation type="unfinished"/> </message> @@ -1324,22 +1330,37 @@ Adres: %4 <translation>Z&resetuj Ustawienia</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>&Sieć</translation> </message> <message> - <location line="-86"/> + <location line="-95"/> <source>W&allet</source> + <translation>Portfel</translation> + </message> + <message> + <location line="+65"/> + <source>Expert</source> + <translation>Ekspert</translation> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> <translation type="unfinished"/> </message> <message> - <location line="+52"/> + <location line="+7"/> <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 type="unfinished"/> </message> <message> - <location line="+40"/> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+17"/> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Automatycznie otwiera port klienta Bitcoin na routerze. Ta opcja dzieła tylko jeśli twój router wspiera UPnP i jest ono włączone.</translation> </message> @@ -1434,17 +1455,12 @@ Adres: %4 <translation>&Wyświetlaj adresy w liście transakcji</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> <translation type="unfinished"/> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>&OK</translation> </message> @@ -1482,7 +1498,7 @@ Adres: %4 <message> <location line="+33"/> <source>This change would require a client restart.</source> - <translation type="unfinished"/> + <translation>Ta zmiana może wymagać ponownego uruchomienia klienta.</translation> </message> <message> <location line="+34"/> @@ -1521,7 +1537,7 @@ Adres: %4 <message> <location line="+16"/> <source>Pending:</source> - <translation type="unfinished"/> + <translation>W toku:</translation> </message> <message> <location line="+16"/> @@ -1657,18 +1673,18 @@ Adres: %4 <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> <translation>Błąd: Określony folder danych "%1" nie istnieje.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation>Błąd: Niepoprawna kombinacja -regtest i -testnet.</translation> </message> @@ -1719,7 +1735,7 @@ Adres: %4 <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>NIEDOSTĘPNE</translation> </message> @@ -1815,11 +1831,13 @@ Adres: %4 </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>Wejście:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>Wyjście:</translation> </message> @@ -1844,7 +1862,7 @@ Adres: %4 <translation>Wyczyść konsolę</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> <translation>Witam w konsoli Bitcoin RPC</translation> </message> @@ -1859,7 +1877,7 @@ Adres: %4 <translation>Wpisz <b>help</b> aby uzyskać listę dostępnych komend</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 B</translation> </message> @@ -1957,7 +1975,7 @@ Adres: %4 <message> <location line="+78"/> <source>Requested payments history</source> - <translation type="unfinished"/> + <translation>Żądanie historii płatności</translation> </message> <message> <location line="-98"/> @@ -1975,7 +1993,7 @@ Adres: %4 <translation>Pokaż</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> <translation>Usuń zaznaczone z listy</translation> </message> @@ -1985,7 +2003,7 @@ Adres: %4 <translation>Usuń</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>Kopiuj etykietę</translation> </message> @@ -2098,7 +2116,7 @@ Adres: %4 <message> <location line="+9"/> <source>(no message)</source> - <translation type="unfinished"/> + <translation>(brak wiadomości)</translation> </message> <message> <location line="+8"/> @@ -2123,17 +2141,17 @@ Adres: %4 <message> <location line="+20"/> <source>Inputs...</source> - <translation type="unfinished"/> + <translation>Wejścia...</translation> </message> <message> <location line="+7"/> <source>automatically selected</source> - <translation type="unfinished"/> + <translation>zaznaczone automatycznie</translation> </message> <message> <location line="+19"/> <source>Insufficient funds!</source> - <translation type="unfinished"/> + <translation>Niewystarczające środki</translation> </message> <message> <location line="+89"/> @@ -2178,7 +2196,7 @@ Adres: %4 <message> <location line="+44"/> <source>If this is activated, but the change address is empty or invalid, change will be sent to a newly generated address.</source> - <translation type="unfinished"/> + <translation>Kiedy ta opcja jest wybrana, ale adres reszty jest pusty lub nieprawidłowy to reszta będzie wysyłana na adres nowo-wygenerowany.</translation> </message> <message> <location line="+3"/> @@ -2206,12 +2224,12 @@ Adres: %4 <translation>Wyczyść &wszystko</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>Saldo:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>Potwierdź akcję wysyłania</translation> </message> @@ -2276,7 +2294,7 @@ Adres: %4 <message> <location line="+170"/> <source>Total Amount %1 (= %2)</source> - <translation type="unfinished"/> + <translation>Łączna kwota %1 (= %2)</translation> </message> <message> <location line="+2"/> @@ -2316,7 +2334,7 @@ Adres: %4 <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>Transakcja została odrzucona! Może się to zdarzyć jeśli część monet z portfela została już wydana używając kopii pliku wallet.dat i nie zostało to tutaj uwzględnione.</translation> </message> <message> <location line="+113"/> @@ -2458,7 +2476,7 @@ Adres: %4 <message> <location filename="../utilitydialog.cpp" line="+48"/> <source>Bitcoin Core is shutting down...</source> - <translation type="unfinished"/> + <translation>Bitcoin Core się zamyka...</translation> </message> <message> <location line="+1"/> @@ -3101,7 +3119,7 @@ Adres: %4 <message> <location line="+1"/> <source>Edit label</source> - <translation>Edytuj etykietę</translation> + <translation>Zmień etykietę</translation> </message> <message> <location line="+1"/> @@ -3109,7 +3127,7 @@ Adres: %4 <translation>Pokaż szczegóły transakcji</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>Eksport historii transakcji</translation> </message> @@ -3230,12 +3248,12 @@ Adres: %4 <message> <location line="+0"/> <source>There was an error trying to save the wallet data to %1.</source> - <translation type="unfinished"/> + <translation>Wystąpił błąd przy próbie zapisu pliku portfela do %1.</translation> </message> <message> <location line="+4"/> <source>The wallet data was successfully saved to %1.</source> - <translation type="unfinished"/> + <translation>Plik portfela został zapisany do %1.</translation> </message> <message> <location line="+0"/> @@ -3246,7 +3264,7 @@ Adres: %4 <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+223"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>Użycie:</translation> </message> @@ -3281,12 +3299,7 @@ Adres: %4 <translation>Wskaż folder danych</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Ustaw rozmiar w megabajtach cache-u bazy danych (domyślnie: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation>Nasłuchuj połączeń na <port> (domyślnie: 8333 lub testnet: 18333)</translation> </message> @@ -3311,22 +3324,22 @@ Adres: %4 <translation>Próg po którym nastąpi rozłączenie nietrzymających się zasad peerów (domyślnie: 100)</translation> </message> <message> - <location line="-150"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Czas w sekundach, przez jaki nietrzymający się zasad peerzy nie będą mogli ponownie się podłączyć (domyślnie: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>Wystąpił błąd podczas ustawiania portu RPC %u w tryb nasłuchu: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation>Nasłuchuj połączeń JSON-RPC na <port> (domyślnie: 8332 or testnet: 18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>Akceptuj linię poleceń oraz polecenia JSON-RPC</translation> </message> @@ -3346,7 +3359,7 @@ Adres: %4 <translation>Akceptuj połączenia z zewnątrz (domyślnie: 1 jeśli nie ustawiono -proxy lub -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3385,12 +3398,7 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Skojarz z podanym adresem. Użyj formatu [host]:port dla IPv6 </translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>Nie można zablokować folderu danych %s. Bitcoin prawdopodobnie już działa.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> <translation>Wejście w tryb testów regresji, który wykorzystuje specjalny łańcuch, w którym bloki można rozwiązać natychmiast. To jest przeznaczone dla narzędzi testowania regresji i rozwoju aplikacji.</translation> </message> @@ -3401,6 +3409,11 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Error: 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>Błąd: transakcja została odrzucona. Może się to zdarzyć, gdy monety z Twojego portfela zostały już wydane, na przykład gdy używałeś kopii wallet.dat i bitcoiny które tam wydałeś nie zostały jeszcze odjęte z portfela z którego teraz korzystasz.</translation> </message> @@ -3420,7 +3433,12 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>To jest testowa wersja - używaj na własne ryzyko - nie używaj do wykopywania oraz przy aplikacjach kupieckich</translation> </message> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation type="unfinished"/> </message> @@ -3680,7 +3698,12 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Wyślij polecenie do serwera Bitcoin</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation>Ustaw wielkość pamięci podręcznej w megabajtach (%d do %d, domyślnie: %d)</translation> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation>Ustaw maksymalną wielkość bloku w bajtach (domyślnie: %d)</translation> </message> @@ -3755,7 +3778,12 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Importuj bloki z zewnętrznego pliku blk000??.dat</translation> </message> <message> - <location line="-106"/> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+19"/> <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>Uruchom polecenie przy otrzymaniu odpowiedniego powiadomienia lub gdy zobaczymy naprawdę długie rozgałęzienie (%s w poleceniu jest podstawiane za komunikat)</translation> </message> @@ -3767,7 +3795,7 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <message> <location line="+2"/> <source>Set maximum size of high-priority/low-fee transactions in bytes (default: %d)</source> - <translation type="unfinished"/> + <translation>Ustaw maksymalny rozmiar transakcji o wysokim priorytecie/niskiej prowizji w bajtach (domyślnie: 27000)</translation> </message> <message> <location line="+2"/> @@ -3775,7 +3803,7 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Ustaw liczbę wątków skryptu weryfikacji (do 16, 0 = auto, <0 = zostawia taką ilość rdzenie wolnych, domyślnie: 0)</translation> </message> <message> - <location line="+90"/> + <location line="+91"/> <source>Information</source> <translation>Informacja</translation> </message> @@ -3920,12 +3948,12 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Wysyłaj polecenia do węzła działającego na <ip> (domyślnie: 127.0.0.1)</translation> </message> <message> - <location line="-133"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>Wykonaj polecenie kiedy najlepszy blok ulegnie zmianie (%s w komendzie zastanie zastąpione przez hash bloku)</translation> </message> <message> - <location line="+163"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> <translation>Zaktualizuj portfel do najnowszego formatu.</translation> </message> @@ -4045,12 +4073,7 @@ na przykład: alertnotify=echo %%s | mail -s "Alarm Bitcoin" admin@foo <translation>Dodaj węzeł do łączenia się and attempt to keep the connection open</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>Nie można przywiązać %s na tym komputerze. Bitcoin prawdopodobnie już działa.</translation> - </message> - <message> - <location line="+96"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>Wczytywanie portfela...</translation> </message> diff --git a/src/qt/locale/bitcoin_ro_RO.ts b/src/qt/locale/bitcoin_ro_RO.ts index 205fa7244c..277571152b 100644 --- a/src/qt/locale/bitcoin_ro_RO.ts +++ b/src/qt/locale/bitcoin_ro_RO.ts @@ -1,4 +1,4 @@ -<?xml version="1.0" ?><!DOCTYPE TS><TS language="ro_RO" version="2.0"> +<?xml version="1.0" ?><!DOCTYPE TS><TS language="ro_RO" version="2.1"> <context> <name>AboutDialog</name> <message> @@ -71,7 +71,7 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>&Copiere</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>C&lose</source> <translation>&Inchidere</translation> </message> @@ -81,7 +81,7 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>&Copiază adresa</translation> </message> <message> - <location filename="../forms/addressbookpage.ui" line="-41"/> + <location filename="../forms/addressbookpage.ui" line="-47"/> <source>Delete the currently selected address from the list</source> <translation>Sterge adresele curent selectate din lista</translation> </message> @@ -328,7 +328,7 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <context> <name>BitcoinGUI</name> <message> - <location filename="../bitcoingui.cpp" line="+295"/> + <location filename="../bitcoingui.cpp" line="+294"/> <source>Sign &message...</source> <translation>Semnează &mesaj...</translation> </message> @@ -343,12 +343,12 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>&Imagine de ansamblu</translation> </message> <message> - <location line="-137"/> + <location line="-136"/> <source>Node</source> <translation>Nod</translation> </message> <message> - <location line="+138"/> + <location line="+137"/> <source>Show general overview of wallet</source> <translation>Arată o stare generală de ansamblu a portofelului</translation> </message> @@ -469,17 +469,17 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>&Verifică mesajul...</translation> </message> <message> - <location line="+430"/> + <location line="+440"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="-643"/> + <location line="-652"/> <source>Wallet</source> <translation>Portofelul</translation> </message> <message> - <location line="+146"/> + <location line="+145"/> <source>&Send</source> <translation>&Trimite</translation> </message> @@ -535,18 +535,18 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>Bara de file</translation> </message> <message> - <location line="-284"/> - <location line="+376"/> + <location line="-283"/> + <location line="+375"/> <source>[testnet]</source> <translation>[testnet]</translation> </message> <message> - <location line="-401"/> + <location line="-400"/> <source>Bitcoin Core</source> <translation>Bitcoin Core</translation> </message> <message> - <location line="+163"/> + <location line="+162"/> <source>Request payments (generates QR codes and bitcoin: URIs)</source> <translation>Cereti plati (genereaza coduri QR si bitcoin-uri: URls)</translation> </message> @@ -608,7 +608,7 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>S-au procesat %1 blocuri din istoricul tranzacțiilor.</translation> </message> <message numerus="yes"> - <location line="+23"/> + <location line="+27"/> <source>%n hour(s)</source> <translation><numerusform>%n oră</numerusform><numerusform>%n ore</numerusform><numerusform>%n ore</numerusform></translation> </message> @@ -619,6 +619,7 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f </message> <message numerus="yes"> <location line="+4"/> + <location line="+6"/> <source>%n week(s)</source> <translation><numerusform>%n săptămână</numerusform><numerusform>%n săptămâni</numerusform><numerusform>%n de săptămâni</numerusform></translation> </message> @@ -663,12 +664,12 @@ Acest produs include programe dezvoltate de către OpenSSL Project pentru a fi f <translation>Informație</translation> </message> <message> - <location line="-85"/> + <location line="-95"/> <source>Up to date</source> <translation>Actualizat</translation> </message> <message> - <location line="+34"/> + <location line="+44"/> <source>Catching up...</source> <translation>Se actualizează...</translation> </message> @@ -706,7 +707,7 @@ Adresa: %4 <translation>Portofelul este <b>criptat</b> iar în momentul de față este <b>blocat</b></translation> </message> <message> - <location filename="../bitcoin.cpp" line="+435"/> + <location filename="../bitcoin.cpp" line="+441"/> <source>A fatal error occurred. Bitcoin can no longer continue safely and will quit.</source> <translation>A survenit o eroare fatala. Bitcoin nu mai poate continua in siguranta si se va opri.</translation> </message> @@ -714,7 +715,7 @@ Adresa: %4 <context> <name>ClientModel</name> <message> - <location filename="../clientmodel.cpp" line="+119"/> + <location filename="../clientmodel.cpp" line="+128"/> <source>Network Alert</source> <translation>Alertă rețea</translation> </message> @@ -812,7 +813,7 @@ Adresa: %4 <translation>Prioritate</translation> </message> <message> - <location filename="../coincontroldialog.cpp" line="+42"/> + <location filename="../coincontroldialog.cpp" line="+41"/> <source>Copy address</source> <translation>Copiază adresa</translation> </message> @@ -878,7 +879,7 @@ Adresa: %4 <translation>Copiaţi schimb</translation> </message> <message> - <location line="+323"/> + <location line="+332"/> <source>highest</source> <translation>cel mai mare</translation> </message> @@ -930,7 +931,7 @@ Adresa: %4 <message> <location line="+31"/> <source>none</source> - <translation type="unfinished"/> + <translation>nimic</translation> </message> <message> <location line="+141"/> @@ -971,7 +972,7 @@ Adresa: %4 <message> <location line="+1"/> <source>This label turns red, if the priority is smaller than "medium".</source> - <translation type="unfinished"/> + <translation>Aceasta eticheta se face rosie daca prioritatea e mai mica decat media</translation> </message> <message> <location line="+3"/> @@ -996,7 +997,7 @@ Adresa: %4 </message> <message> <location line="+43"/> - <location line="+66"/> + <location line="+63"/> <source>(no label)</source> <translation>(fără etichetă)</translation> </message> @@ -1193,7 +1194,7 @@ Adresa: %4 <translation>Folosește un dosar de date personalizat:</translation> </message> <message> - <location filename="../intro.cpp" line="+85"/> + <location filename="../intro.cpp" line="+82"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> @@ -1299,12 +1300,7 @@ Adresa: %4 <translation type="unfinished"/> </message> <message> - <location line="+107"/> - <source>&Spend unconfirmed change (experts only)</source> - <translation type="unfinished"/> - </message> - <message> - <location line="+37"/> + <location line="+153"/> <source>Connect to the Bitcoin network through a SOCKS proxy.</source> <translation>Conecteaza-te la reteaua Bitcoin printr-un proxy SOCKS</translation> </message> @@ -1319,7 +1315,7 @@ Adresa: %4 <translation type="unfinished"/> </message> <message> - <location line="+224"/> + <location line="+214"/> <source>Active command-line options that override above options:</source> <translation type="unfinished"/> </message> @@ -1334,22 +1330,37 @@ Adresa: %4 <translation>&Resetează opțiunile</translation> </message> <message> - <location line="-323"/> + <location line="-313"/> <source>&Network</source> <translation>&Retea</translation> </message> <message> - <location line="-86"/> + <location line="-95"/> <source>W&allet</source> <translation type="unfinished"/> </message> <message> - <location line="+52"/> + <location line="+65"/> + <source>Expert</source> + <translation>expert</translation> + </message> + <message> + <location line="+9"/> + <source>Enable coin &control features</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+7"/> <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 type="unfinished"/> </message> <message> - <location line="+40"/> + <location line="+3"/> + <source>&Spend unconfirmed change</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+17"/> <source>Automatically open the Bitcoin client port on the router. This only works when your router supports UPnP and it is enabled.</source> <translation>Deschide automat în router portul aferent clientului Bitcoin. Funcţionează doar în cazul în care routerul e compatibil UPnP şi opţiunea e activată.</translation> </message> @@ -1444,17 +1455,12 @@ Adresa: %4 <translation>&Afişează adresele în lista de tranzacţii</translation> </message> <message> - <location line="+7"/> + <location line="-262"/> <source>Whether to show coin control features or not.</source> <translation>Dacă să se afişeze controlul caracteristicilor monedei sau nu.</translation> </message> <message> - <location line="+3"/> - <source>Display coin &control features (experts only)</source> - <translation>Afişeare controlul caracteristicilor monedei (doat pentru experţi)</translation> - </message> - <message> - <location line="+136"/> + <location line="+398"/> <source>&OK</source> <translation>& OK</translation> </message> @@ -1471,7 +1477,7 @@ Adresa: %4 <message> <location line="+58"/> <source>none</source> - <translation type="unfinished"/> + <translation>nimic</translation> </message> <message> <location line="+78"/> @@ -1667,18 +1673,18 @@ Adresa: %4 <context> <name>QObject</name> <message> - <location filename="../bitcoin.cpp" line="+71"/> - <location line="+11"/> + <location filename="../bitcoin.cpp" line="+63"/> + <location line="+14"/> <source>Bitcoin</source> <translation>Bitcoin</translation> </message> <message> - <location line="+1"/> + <location line="-13"/> <source>Error: Specified data directory "%1" does not exist.</source> <translation>Eroare: Directorul datelor specificate "%1" nu exista.</translation> </message> <message> - <location line="-12"/> + <location line="+13"/> <source>Error: Invalid combination of -regtest and -testnet.</source> <translation>Eroare: combinație nevalidă de -regtest și -testnet.</translation> </message> @@ -1729,7 +1735,7 @@ Adresa: %4 <location line="+36"/> <location line="+23"/> <location line="+23"/> - <location filename="../rpcconsole.cpp" line="+359"/> + <location filename="../rpcconsole.cpp" line="+373"/> <source>N/A</source> <translation>N/A</translation> </message> @@ -1825,11 +1831,13 @@ Adresa: %4 </message> <message> <location line="+64"/> + <location filename="../rpcconsole.cpp" line="-10"/> <source>In:</source> <translation>în:</translation> </message> <message> <location line="+80"/> + <location filename="../rpcconsole.cpp" line="+1"/> <source>Out:</source> <translation>Ieșire.</translation> </message> @@ -1854,7 +1862,7 @@ Adresa: %4 <translation>Curăță consola</translation> </message> <message> - <location filename="../rpcconsole.cpp" line="-30"/> + <location filename="../rpcconsole.cpp" line="-35"/> <source>Welcome to the Bitcoin RPC console.</source> <translation>Bun venit la consola bitcoin RPC</translation> </message> @@ -1869,7 +1877,7 @@ Adresa: %4 <translation>Scrie <b>help</b> pentru a vedea comenzile disponibile</translation> </message> <message> - <location line="+122"/> + <location line="+136"/> <source>%1 B</source> <translation>%1 B</translation> </message> @@ -1967,7 +1975,7 @@ Adresa: %4 <message> <location line="+78"/> <source>Requested payments history</source> - <translation type="unfinished"/> + <translation>Istoricul platilor a fost cerut</translation> </message> <message> <location line="-98"/> @@ -1985,7 +1993,7 @@ Adresa: %4 <translation>Arată</translation> </message> <message> - <location line="+11"/> + <location line="+14"/> <source>Remove the selected entries from the list</source> <translation type="unfinished"/> </message> @@ -1995,7 +2003,7 @@ Adresa: %4 <translation>Elimină</translation> </message> <message> - <location filename="../receivecoinsdialog.cpp" line="+38"/> + <location filename="../receivecoinsdialog.cpp" line="+39"/> <source>Copy label</source> <translation>Copiază eticheta</translation> </message> @@ -2216,12 +2224,12 @@ Adresa: %4 <translation>Șterge &tot</translation> </message> <message> - <location line="+52"/> + <location line="+58"/> <source>Balance:</source> <translation>Balanță:</translation> </message> <message> - <location line="-78"/> + <location line="-84"/> <source>Confirm the send action</source> <translation>Confirmă operațiunea de trimitere</translation> </message> @@ -2423,7 +2431,7 @@ Adresa: %4 <location line="+524"/> <location line="+536"/> <source>Remove this entry</source> - <translation type="unfinished"/> + <translation>Scoate aceasta introducere</translation> </message> <message> <location line="-1008"/> @@ -3119,7 +3127,7 @@ Adresa: %4 <translation>Arată detaliile tranzacției</translation> </message> <message> - <location line="+142"/> + <location line="+140"/> <source>Export Transaction History</source> <translation>Exportare Istoric Tranzacţii</translation> </message> @@ -3256,7 +3264,7 @@ Adresa: %4 <context> <name>bitcoin-core</name> <message> - <location filename="../bitcoinstrings.cpp" line="+223"/> + <location filename="../bitcoinstrings.cpp" line="+226"/> <source>Usage:</source> <translation>Uz:</translation> </message> @@ -3291,12 +3299,7 @@ Adresa: %4 <translation>Specifică dosarul de date</translation> </message> <message> - <location line="-9"/> - <source>Set database cache size in megabytes (default: 25)</source> - <translation>Setează mărimea cache a bazei de date în megabiți (implicit: 25)</translation> - </message> - <message> - <location line="-26"/> + <location line="-35"/> <source>Listen for connections on <port> (default: 8333 or testnet: 18333)</source> <translation>Ascultă pentru conectări pe <port> (implicit: 8333 sau testnet: 18333)</translation> </message> @@ -3321,22 +3324,22 @@ Adresa: %4 <translation>Prag pentru deconectarea partenerilor care nu funcționează corect (implicit: 100)</translation> </message> <message> - <location line="-150"/> + <location line="-151"/> <source>Number of seconds to keep misbehaving peers from reconnecting (default: 86400)</source> <translation>Numărul de secunde pentru a preveni reconectarea partenerilor care nu funcționează corect (implicit: 86400)</translation> </message> <message> - <location line="-36"/> + <location line="-38"/> <source>An error occurred while setting up the RPC port %u for listening on IPv4: %s</source> <translation>A intervenit o eroare in timp ce se seta portul RPC %u pentru ascultare pe IPv4: %s</translation> </message> <message> - <location line="+34"/> + <location line="+36"/> <source>Listen for JSON-RPC connections on <port> (default: 8332 or testnet: 18332)</source> <translation>Ascultă pentru conexiuni JSON-RPC pe <port> (implicit:8332 sau testnet: 18332)</translation> </message> <message> - <location line="+45"/> + <location line="+46"/> <source>Accept command line and JSON-RPC commands</source> <translation>Se acceptă comenzi din linia de comandă și comenzi JSON-RPC</translation> </message> @@ -3356,7 +3359,7 @@ Adresa: %4 <translation>Acceptă conexiuni din afară (implicit: 1 dacă nu se folosește -proxy sau -connect)</translation> </message> <message> - <location line="-95"/> + <location line="-98"/> <source>%s, you must set a rpcpassword in the configuration file: %s It is recommended you use the following random password: @@ -3397,12 +3400,7 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Atasati adresei date si ascultati totdeauna pe ea. Folositi [host]:port notatia pentru IPv6</translation> </message> <message> - <location line="+3"/> - <source>Cannot obtain a lock on data directory %s. Bitcoin is probably already running.</source> - <translation>Nu se poate obține o blocare a directorului de date %s. Bitcoin probabil rulează deja.</translation> - </message> - <message> - <location line="+3"/> + <location line="+6"/> <source>Enter regression test mode, which uses a special chain in which blocks can be solved instantly. This is intended for regression testing tools and app development.</source> <translation>Initiati modul de test al regresie, care foloseste un lant special in care block-urile pot fi rezolvate instantaneu. Acest lucru este facut pentru utilitare si aplicatii de dezvoltare pentru testarea regresiei.</translation> </message> @@ -3413,6 +3411,11 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo </message> <message> <location line="+3"/> + <source>Error: Listening for incoming connections failed (listen returned error %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Error: 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>Eroare: Tranzactia a fost respinsa! Acest lucru se poate intampla daca anumite monezi din portofelul dumneavoastra au fost deja cheltuite, deasemenea daca ati folosit o copie a fisierului wallet.dat si monezile au fost folosite in acea copie dar nu au fost marcate ca fiind folosite acolo.</translation> </message> @@ -3432,7 +3435,12 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Aceasta este o versiune de test preliminara - va asumati riscul folosind-o - nu folositi pentru minerit sau aplicatiile comerciantilor.</translation> </message> <message> - <location line="+5"/> + <location line="+3"/> + <source>Unable to bind to %s on this computer. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+3"/> <source>Use separate SOCKS5 proxy to reach peers via Tor hidden services (default: -proxy)</source> <translation>Utilizare proxy SOCKS5 separat pentru a ajunge la servicii ascunse TOR (implicit: -proxy)</translation> </message> @@ -3692,7 +3700,12 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Trimite comanda la serverul Bitcoin</translation> </message> <message> - <location line="+7"/> + <location line="+5"/> + <source>Set database cache size in megabytes (%d to %d, default: %d)</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+2"/> <source>Set maximum block size in bytes (default: %d)</source> <translation>Setaţi dimensiunea maximă a unui block în bytes (implicit: %d)</translation> </message> @@ -3767,7 +3780,12 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Importă blocuri dintr-un fișier extern blk000??.dat</translation> </message> <message> - <location line="-106"/> + <location line="-126"/> + <source>Cannot obtain a lock on data directory %s. Bitcoin Core is probably already running.</source> + <translation type="unfinished"/> + </message> + <message> + <location line="+19"/> <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>Executati comanda cand o alerta relevanta este primita sau vedem o bifurcatie foarte lunga (%s in cmd este inlocuti de mesaj)</translation> </message> @@ -3787,7 +3805,7 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation type="unfinished"/> </message> <message> - <location line="+90"/> + <location line="+91"/> <source>Information</source> <translation>Informație</translation> </message> @@ -3932,12 +3950,12 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Trimite comenzi la nodul care rulează la <ip> (implicit: 127.0.0.1)</translation> </message> <message> - <location line="-133"/> + <location line="-134"/> <source>Execute command when the best block changes (%s in cmd is replaced by block hash)</source> <translation>Execută comanda când cel mai bun bloc se modifică (%s în cmd este înlocuit cu hash-ul blocului)</translation> </message> <message> - <location line="+163"/> + <location line="+164"/> <source>Upgrade wallet to latest format</source> <translation>Actualizează portofelul la ultimul format</translation> </message> @@ -4057,12 +4075,7 @@ spre exemplu: alertnotify=echo %%s | mail -s "Alerta Bitcoin" admin@fo <translation>Adaugă un nod la care te poți conecta pentru a menține conexiunea deschisă</translation> </message> <message> - <location line="-32"/> - <source>Unable to bind to %s on this computer. Bitcoin is probably already running.</source> - <translation>Imposibilitatea de a lega la% s pe acest computer. Bitcoin este, probabil, deja în execuție.</translation> - </message> - <message> - <location line="+96"/> + <location line="+64"/> <source>Loading wallet...</source> <translation>Încarc portofel...</translation> </message> diff --git a/src/qt/transactiondesc.cpp b/src/qt/transactiondesc.cpp index 4aebaa1e7f..45fb3d40c2 100644 --- a/src/qt/transactiondesc.cpp +++ b/src/qt/transactiondesc.cpp @@ -20,6 +20,7 @@ QString TransactionDesc::FormatTxStatus(const CWalletTx& wtx) { + AssertLockHeld(cs_main); if (!IsFinalTx(wtx, chainActive.Height() + 1)) { if (wtx.nLockTime < LOCKTIME_THRESHOLD) @@ -45,263 +46,258 @@ QString TransactionDesc::toHTML(CWallet *wallet, CWalletTx &wtx, int vout, int u { QString strHTML; + LOCK2(cs_main, wallet->cs_wallet); + strHTML.reserve(4000); + strHTML += "<html><font face='verdana, arial, helvetica, sans-serif'>"; + + int64_t nTime = wtx.GetTxTime(); + int64_t nCredit = wtx.GetCredit(); + int64_t nDebit = wtx.GetDebit(); + int64_t nNet = nCredit - nDebit; + + strHTML += "<b>" + tr("Status") + ":</b> " + FormatTxStatus(wtx); + int nRequests = wtx.GetRequestCount(); + if (nRequests != -1) { - LOCK(wallet->cs_wallet); - strHTML.reserve(4000); - strHTML += "<html><font face='verdana, arial, helvetica, sans-serif'>"; - - int64_t nTime = wtx.GetTxTime(); - int64_t nCredit = wtx.GetCredit(); - int64_t nDebit = wtx.GetDebit(); - int64_t nNet = nCredit - nDebit; - - strHTML += "<b>" + tr("Status") + ":</b> " + FormatTxStatus(wtx); - int nRequests = wtx.GetRequestCount(); - if (nRequests != -1) - { - if (nRequests == 0) - strHTML += tr(", has not been successfully broadcast yet"); - else if (nRequests > 0) - strHTML += tr(", broadcast through %n node(s)", "", nRequests); - } - strHTML += "<br>"; + if (nRequests == 0) + strHTML += tr(", has not been successfully broadcast yet"); + else if (nRequests > 0) + strHTML += tr(", broadcast through %n node(s)", "", nRequests); + } + strHTML += "<br>"; - strHTML += "<b>" + tr("Date") + ":</b> " + (nTime ? GUIUtil::dateTimeStr(nTime) : "") + "<br>"; + strHTML += "<b>" + tr("Date") + ":</b> " + (nTime ? GUIUtil::dateTimeStr(nTime) : "") + "<br>"; - // - // From - // - if (wtx.IsCoinBase()) - { - strHTML += "<b>" + tr("Source") + ":</b> " + tr("Generated") + "<br>"; - } - else if (wtx.mapValue.count("from") && !wtx.mapValue["from"].empty()) - { - // Online transaction - strHTML += "<b>" + tr("From") + ":</b> " + GUIUtil::HtmlEscape(wtx.mapValue["from"]) + "<br>"; - } - else + // + // From + // + if (wtx.IsCoinBase()) + { + strHTML += "<b>" + tr("Source") + ":</b> " + tr("Generated") + "<br>"; + } + else if (wtx.mapValue.count("from") && !wtx.mapValue["from"].empty()) + { + // Online transaction + strHTML += "<b>" + tr("From") + ":</b> " + GUIUtil::HtmlEscape(wtx.mapValue["from"]) + "<br>"; + } + else + { + // Offline transaction + if (nNet > 0) { - // Offline transaction - if (nNet > 0) + // Credit + BOOST_FOREACH(const CTxOut& txout, wtx.vout) { - // Credit - BOOST_FOREACH(const CTxOut& txout, wtx.vout) + if (wallet->IsMine(txout)) { - if (wallet->IsMine(txout)) + CTxDestination address; + if (ExtractDestination(txout.scriptPubKey, address) && IsMine(*wallet, address)) { - CTxDestination address; - if (ExtractDestination(txout.scriptPubKey, address) && IsMine(*wallet, address)) + if (wallet->mapAddressBook.count(address)) { - if (wallet->mapAddressBook.count(address)) - { - strHTML += "<b>" + tr("From") + ":</b> " + tr("unknown") + "<br>"; - strHTML += "<b>" + tr("To") + ":</b> "; - strHTML += GUIUtil::HtmlEscape(CBitcoinAddress(address).ToString()); - if (!wallet->mapAddressBook[address].name.empty()) - strHTML += " (" + tr("own address") + ", " + tr("label") + ": " + GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + ")"; - else - strHTML += " (" + tr("own address") + ")"; - strHTML += "<br>"; - } + strHTML += "<b>" + tr("From") + ":</b> " + tr("unknown") + "<br>"; + strHTML += "<b>" + tr("To") + ":</b> "; + strHTML += GUIUtil::HtmlEscape(CBitcoinAddress(address).ToString()); + if (!wallet->mapAddressBook[address].name.empty()) + strHTML += " (" + tr("own address") + ", " + tr("label") + ": " + GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + ")"; + else + strHTML += " (" + tr("own address") + ")"; + strHTML += "<br>"; } - break; } + break; } } } + } + + // + // To + // + if (wtx.mapValue.count("to") && !wtx.mapValue["to"].empty()) + { + // Online transaction + std::string strAddress = wtx.mapValue["to"]; + strHTML += "<b>" + tr("To") + ":</b> "; + CTxDestination dest = CBitcoinAddress(strAddress).Get(); + if (wallet->mapAddressBook.count(dest) && !wallet->mapAddressBook[dest].name.empty()) + strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[dest].name) + " "; + strHTML += GUIUtil::HtmlEscape(strAddress) + "<br>"; + } + // + // Amount + // + if (wtx.IsCoinBase() && nCredit == 0) + { // - // To + // Coinbase // - if (wtx.mapValue.count("to") && !wtx.mapValue["to"].empty()) - { - // Online transaction - std::string strAddress = wtx.mapValue["to"]; - strHTML += "<b>" + tr("To") + ":</b> "; - CTxDestination dest = CBitcoinAddress(strAddress).Get(); - if (wallet->mapAddressBook.count(dest) && !wallet->mapAddressBook[dest].name.empty()) - strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[dest].name) + " "; - strHTML += GUIUtil::HtmlEscape(strAddress) + "<br>"; - } - + int64_t nUnmatured = 0; + BOOST_FOREACH(const CTxOut& txout, wtx.vout) + nUnmatured += wallet->GetCredit(txout); + strHTML += "<b>" + tr("Credit") + ":</b> "; + if (wtx.IsInMainChain()) + strHTML += BitcoinUnits::formatWithUnit(unit, nUnmatured)+ " (" + tr("matures in %n more block(s)", "", wtx.GetBlocksToMaturity()) + ")"; + else + strHTML += "(" + tr("not accepted") + ")"; + strHTML += "<br>"; + } + else if (nNet > 0) + { // - // Amount + // Credit // - if (wtx.IsCoinBase() && nCredit == 0) - { - // - // Coinbase - // - int64_t nUnmatured = 0; - BOOST_FOREACH(const CTxOut& txout, wtx.vout) - nUnmatured += wallet->GetCredit(txout); - strHTML += "<b>" + tr("Credit") + ":</b> "; - if (wtx.IsInMainChain()) - strHTML += BitcoinUnits::formatWithUnit(unit, nUnmatured)+ " (" + tr("matures in %n more block(s)", "", wtx.GetBlocksToMaturity()) + ")"; - else - strHTML += "(" + tr("not accepted") + ")"; - strHTML += "<br>"; - } - else if (nNet > 0) + strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nNet) + "<br>"; + } + else + { + bool fAllFromMe = true; + BOOST_FOREACH(const CTxIn& txin, wtx.vin) + fAllFromMe = fAllFromMe && wallet->IsMine(txin); + + bool fAllToMe = true; + BOOST_FOREACH(const CTxOut& txout, wtx.vout) + fAllToMe = fAllToMe && wallet->IsMine(txout); + + if (fAllFromMe) { // - // Credit + // Debit // - strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nNet) + "<br>"; - } - else - { - bool fAllFromMe = true; - BOOST_FOREACH(const CTxIn& txin, wtx.vin) - fAllFromMe = fAllFromMe && wallet->IsMine(txin); - - bool fAllToMe = true; BOOST_FOREACH(const CTxOut& txout, wtx.vout) - fAllToMe = fAllToMe && wallet->IsMine(txout); - - if (fAllFromMe) { - // - // Debit - // - BOOST_FOREACH(const CTxOut& txout, wtx.vout) - { - if (wallet->IsMine(txout)) - continue; + if (wallet->IsMine(txout)) + continue; - if (!wtx.mapValue.count("to") || wtx.mapValue["to"].empty()) + if (!wtx.mapValue.count("to") || wtx.mapValue["to"].empty()) + { + // Offline transaction + CTxDestination address; + if (ExtractDestination(txout.scriptPubKey, address)) { - // Offline transaction - CTxDestination address; - if (ExtractDestination(txout.scriptPubKey, address)) - { - strHTML += "<b>" + tr("To") + ":</b> "; - if (wallet->mapAddressBook.count(address) && !wallet->mapAddressBook[address].name.empty()) - strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + " "; - strHTML += GUIUtil::HtmlEscape(CBitcoinAddress(address).ToString()); - strHTML += "<br>"; - } + strHTML += "<b>" + tr("To") + ":</b> "; + if (wallet->mapAddressBook.count(address) && !wallet->mapAddressBook[address].name.empty()) + strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + " "; + strHTML += GUIUtil::HtmlEscape(CBitcoinAddress(address).ToString()); + strHTML += "<br>"; } - - strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -txout.nValue) + "<br>"; - } - - if (fAllToMe) - { - // Payment to self - int64_t nChange = wtx.GetChange(); - int64_t nValue = nCredit - nChange; - strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -nValue) + "<br>"; - strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nValue) + "<br>"; } - int64_t nTxFee = nDebit - wtx.GetValueOut(); - if (nTxFee > 0) - strHTML += "<b>" + tr("Transaction fee") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -nTxFee) + "<br>"; + strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -txout.nValue) + "<br>"; } - else + + if (fAllToMe) { - // - // Mixed debit transaction - // - BOOST_FOREACH(const CTxIn& txin, wtx.vin) - if (wallet->IsMine(txin)) - strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -wallet->GetDebit(txin)) + "<br>"; - BOOST_FOREACH(const CTxOut& txout, wtx.vout) - if (wallet->IsMine(txout)) - strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, wallet->GetCredit(txout)) + "<br>"; + // Payment to self + int64_t nChange = wtx.GetChange(); + int64_t nValue = nCredit - nChange; + strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -nValue) + "<br>"; + strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nValue) + "<br>"; } + + int64_t nTxFee = nDebit - wtx.GetValueOut(); + if (nTxFee > 0) + strHTML += "<b>" + tr("Transaction fee") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -nTxFee) + "<br>"; } + else + { + // + // Mixed debit transaction + // + BOOST_FOREACH(const CTxIn& txin, wtx.vin) + if (wallet->IsMine(txin)) + strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -wallet->GetDebit(txin)) + "<br>"; + BOOST_FOREACH(const CTxOut& txout, wtx.vout) + if (wallet->IsMine(txout)) + strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, wallet->GetCredit(txout)) + "<br>"; + } + } - strHTML += "<b>" + tr("Net amount") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nNet, true) + "<br>"; + strHTML += "<b>" + tr("Net amount") + ":</b> " + BitcoinUnits::formatWithUnit(unit, nNet, true) + "<br>"; - // - // Message - // - if (wtx.mapValue.count("message") && !wtx.mapValue["message"].empty()) - strHTML += "<br><b>" + tr("Message") + ":</b><br>" + GUIUtil::HtmlEscape(wtx.mapValue["message"], true) + "<br>"; - if (wtx.mapValue.count("comment") && !wtx.mapValue["comment"].empty()) - strHTML += "<br><b>" + tr("Comment") + ":</b><br>" + GUIUtil::HtmlEscape(wtx.mapValue["comment"], true) + "<br>"; + // + // Message + // + if (wtx.mapValue.count("message") && !wtx.mapValue["message"].empty()) + strHTML += "<br><b>" + tr("Message") + ":</b><br>" + GUIUtil::HtmlEscape(wtx.mapValue["message"], true) + "<br>"; + if (wtx.mapValue.count("comment") && !wtx.mapValue["comment"].empty()) + strHTML += "<br><b>" + tr("Comment") + ":</b><br>" + GUIUtil::HtmlEscape(wtx.mapValue["comment"], true) + "<br>"; - strHTML += "<b>" + tr("Transaction ID") + ":</b> " + TransactionRecord::formatSubTxId(wtx.GetHash(), vout) + "<br>"; + strHTML += "<b>" + tr("Transaction ID") + ":</b> " + TransactionRecord::formatSubTxId(wtx.GetHash(), vout) + "<br>"; - // Message from normal bitcoin:URI (bitcoin:123...?message=example) - foreach (const PAIRTYPE(string, string)& r, wtx.vOrderForm) - if (r.first == "Message") - strHTML += "<br><b>" + tr("Message") + ":</b><br>" + GUIUtil::HtmlEscape(r.second, true) + "<br>"; + // Message from normal bitcoin:URI (bitcoin:123...?message=example) + foreach (const PAIRTYPE(string, string)& r, wtx.vOrderForm) + if (r.first == "Message") + strHTML += "<br><b>" + tr("Message") + ":</b><br>" + GUIUtil::HtmlEscape(r.second, true) + "<br>"; - // - // PaymentRequest info: - // - foreach (const PAIRTYPE(string, string)& r, wtx.vOrderForm) + // + // PaymentRequest info: + // + foreach (const PAIRTYPE(string, string)& r, wtx.vOrderForm) + { + if (r.first == "PaymentRequest") { - if (r.first == "PaymentRequest") - { - PaymentRequestPlus req; - req.parse(QByteArray::fromRawData(r.second.data(), r.second.size())); - QString merchant; - if (req.getMerchant(PaymentServer::getCertStore(), merchant)) - strHTML += "<b>" + tr("Merchant") + ":</b> " + GUIUtil::HtmlEscape(merchant) + "<br>"; - } + PaymentRequestPlus req; + req.parse(QByteArray::fromRawData(r.second.data(), r.second.size())); + QString merchant; + if (req.getMerchant(PaymentServer::getCertStore(), merchant)) + strHTML += "<b>" + tr("Merchant") + ":</b> " + GUIUtil::HtmlEscape(merchant) + "<br>"; } + } - if (wtx.IsCoinBase()) - { - quint32 numBlocksToMaturity = COINBASE_MATURITY + 1; - strHTML += "<br>" + tr("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.").arg(QString::number(numBlocksToMaturity)) + "<br>"; - } + if (wtx.IsCoinBase()) + { + quint32 numBlocksToMaturity = COINBASE_MATURITY + 1; + strHTML += "<br>" + tr("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.").arg(QString::number(numBlocksToMaturity)) + "<br>"; + } - // - // Debug view - // - if (fDebug) - { - strHTML += "<hr><br>" + tr("Debug information") + "<br><br>"; - BOOST_FOREACH(const CTxIn& txin, wtx.vin) - if(wallet->IsMine(txin)) - strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -wallet->GetDebit(txin)) + "<br>"; - BOOST_FOREACH(const CTxOut& txout, wtx.vout) - if(wallet->IsMine(txout)) - strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, wallet->GetCredit(txout)) + "<br>"; + // + // Debug view + // + if (fDebug) + { + strHTML += "<hr><br>" + tr("Debug information") + "<br><br>"; + BOOST_FOREACH(const CTxIn& txin, wtx.vin) + if(wallet->IsMine(txin)) + strHTML += "<b>" + tr("Debit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, -wallet->GetDebit(txin)) + "<br>"; + BOOST_FOREACH(const CTxOut& txout, wtx.vout) + if(wallet->IsMine(txout)) + strHTML += "<b>" + tr("Credit") + ":</b> " + BitcoinUnits::formatWithUnit(unit, wallet->GetCredit(txout)) + "<br>"; + + strHTML += "<br><b>" + tr("Transaction") + ":</b><br>"; + strHTML += GUIUtil::HtmlEscape(wtx.ToString(), true); - strHTML += "<br><b>" + tr("Transaction") + ":</b><br>"; - strHTML += GUIUtil::HtmlEscape(wtx.ToString(), true); + strHTML += "<br><b>" + tr("Inputs") + ":</b>"; + strHTML += "<ul>"; - strHTML += "<br><b>" + tr("Inputs") + ":</b>"; - strHTML += "<ul>"; + BOOST_FOREACH(const CTxIn& txin, wtx.vin) + { + COutPoint prevout = txin.prevout; + CCoins prev; + if(pcoinsTip->GetCoins(prevout.hash, prev)) { - LOCK(wallet->cs_wallet); - BOOST_FOREACH(const CTxIn& txin, wtx.vin) + if (prevout.n < prev.vout.size()) { - COutPoint prevout = txin.prevout; - - CCoins prev; - if(pcoinsTip->GetCoins(prevout.hash, prev)) + strHTML += "<li>"; + const CTxOut &vout = prev.vout[prevout.n]; + CTxDestination address; + if (ExtractDestination(vout.scriptPubKey, address)) { - if (prevout.n < prev.vout.size()) - { - strHTML += "<li>"; - const CTxOut &vout = prev.vout[prevout.n]; - CTxDestination address; - if (ExtractDestination(vout.scriptPubKey, address)) - { - if (wallet->mapAddressBook.count(address) && !wallet->mapAddressBook[address].name.empty()) - strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + " "; - strHTML += QString::fromStdString(CBitcoinAddress(address).ToString()); - } - strHTML = strHTML + " " + tr("Amount") + "=" + BitcoinUnits::formatWithUnit(unit, vout.nValue); - strHTML = strHTML + " IsMine=" + (wallet->IsMine(vout) ? tr("true") : tr("false")) + "</li>"; - } + if (wallet->mapAddressBook.count(address) && !wallet->mapAddressBook[address].name.empty()) + strHTML += GUIUtil::HtmlEscape(wallet->mapAddressBook[address].name) + " "; + strHTML += QString::fromStdString(CBitcoinAddress(address).ToString()); } + strHTML = strHTML + " " + tr("Amount") + "=" + BitcoinUnits::formatWithUnit(unit, vout.nValue); + strHTML = strHTML + " IsMine=" + (wallet->IsMine(vout) ? tr("true") : tr("false")) + "</li>"; } } - - strHTML += "</ul>"; } - strHTML += "</font></html>"; + strHTML += "</ul>"; } + + strHTML += "</font></html>"; return strHTML; } diff --git a/src/qt/transactionrecord.cpp b/src/qt/transactionrecord.cpp index 703a2b4e79..5a3728f498 100644 --- a/src/qt/transactionrecord.cpp +++ b/src/qt/transactionrecord.cpp @@ -150,6 +150,7 @@ QList<TransactionRecord> TransactionRecord::decomposeTransaction(const CWallet * void TransactionRecord::updateStatus(const CWalletTx &wtx) { + AssertLockHeld(cs_main); // Determine transaction status // Find the block the tx is in @@ -234,6 +235,7 @@ void TransactionRecord::updateStatus(const CWalletTx &wtx) bool TransactionRecord::statusUpdateNeeded() { + AssertLockHeld(cs_main); return status.cur_num_blocks != chainActive.Height(); } diff --git a/src/qt/transactiontablemodel.cpp b/src/qt/transactiontablemodel.cpp index 959987461f..df412650d8 100644 --- a/src/qt/transactiontablemodel.cpp +++ b/src/qt/transactiontablemodel.cpp @@ -24,7 +24,6 @@ #include <QDebug> #include <QIcon> #include <QList> -#include <QTimer> // Amount column is right-aligned it contains numbers static int column_alignments[] = { @@ -78,7 +77,7 @@ public: qDebug() << "TransactionTablePriv::refreshWallet"; cachedWallet.clear(); { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); for(std::map<uint256, CWalletTx>::iterator it = wallet->mapWallet.begin(); it != wallet->mapWallet.end(); ++it) { if(TransactionRecord::showTransaction(it->second)) @@ -96,7 +95,7 @@ public: { qDebug() << "TransactionTablePriv::updateWallet : " + QString::fromStdString(hash.ToString()) + " " + QString::number(status); { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); // Find transaction in wallet std::map<uint256, CWalletTx>::iterator mi = wallet->mapWallet.find(hash); @@ -187,13 +186,19 @@ public: { TransactionRecord *rec = &cachedWallet[idx]; + // Get required locks upfront. This avoids the GUI from getting + // stuck if the core is holding the locks for a longer time - for + // example, during a wallet rescan. + // // If a status update is needed (blocks came in since last check), // update the status of this transaction from the wallet. Otherwise, // simply re-use the cached status. - if(rec->statusUpdateNeeded()) + TRY_LOCK(cs_main, lockMain); + if(lockMain) { + TRY_LOCK(wallet->cs_wallet, lockWallet); + if(lockWallet && rec->statusUpdateNeeded()) { - LOCK(wallet->cs_wallet); std::map<uint256, CWalletTx>::iterator mi = wallet->mapWallet.find(rec->hash); if(mi != wallet->mapWallet.end()) @@ -213,7 +218,7 @@ public: QString describe(TransactionRecord *rec, int unit) { { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); std::map<uint256, CWalletTx>::iterator mi = wallet->mapWallet.find(rec->hash); if(mi != wallet->mapWallet.end()) { @@ -228,17 +233,12 @@ TransactionTableModel::TransactionTableModel(CWallet* wallet, WalletModel *paren QAbstractTableModel(parent), wallet(wallet), walletModel(parent), - priv(new TransactionTablePriv(wallet, this)), - cachedNumBlocks(0) + priv(new TransactionTablePriv(wallet, this)) { columns << QString() << tr("Date") << tr("Type") << tr("Address") << tr("Amount"); priv->refreshWallet(); - QTimer *timer = new QTimer(this); - connect(timer, SIGNAL(timeout()), this, SLOT(updateConfirmations())); - timer->start(MODEL_UPDATE_DELAY); - connect(walletModel->getOptionsModel(), SIGNAL(displayUnitChanged(int)), this, SLOT(updateDisplayUnit())); } @@ -257,16 +257,12 @@ void TransactionTableModel::updateTransaction(const QString &hash, int status) void TransactionTableModel::updateConfirmations() { - if(chainActive.Height() != cachedNumBlocks) - { - cachedNumBlocks = chainActive.Height(); - // Blocks came in since last poll. - // Invalidate status (number of confirmations) and (possibly) description - // for all rows. Qt is smart enough to only actually request the data for the - // visible rows. - emit dataChanged(index(0, Status), index(priv->size()-1, Status)); - emit dataChanged(index(0, ToAddress), index(priv->size()-1, ToAddress)); - } + // Blocks came in since last poll. + // Invalidate status (number of confirmations) and (possibly) description + // for all rows. Qt is smart enough to only actually request the data for the + // visible rows. + emit dataChanged(index(0, Status), index(priv->size()-1, Status)); + emit dataChanged(index(0, ToAddress), index(priv->size()-1, ToAddress)); } int TransactionTableModel::rowCount(const QModelIndex &parent) const diff --git a/src/qt/transactiontablemodel.h b/src/qt/transactiontablemodel.h index 7b9cf09cbe..04b5291f42 100644 --- a/src/qt/transactiontablemodel.h +++ b/src/qt/transactiontablemodel.h @@ -69,7 +69,6 @@ private: WalletModel *walletModel; QStringList columns; TransactionTablePriv *priv; - int cachedNumBlocks; QString lookupAddress(const std::string &address, bool tooltip) const; QVariant addressColor(const TransactionRecord *wtx) const; diff --git a/src/qt/walletmodel.cpp b/src/qt/walletmodel.cpp index 424c9ee279..37d82ec063 100644 --- a/src/qt/walletmodel.cpp +++ b/src/qt/walletmodel.cpp @@ -98,11 +98,24 @@ void WalletModel::updateStatus() void WalletModel::pollBalanceChanged() { + // Get required locks upfront. This avoids the GUI from getting stuck on + // periodical polls if the core is holding the locks for a longer time - + // for example, during a wallet rescan. + TRY_LOCK(cs_main, lockMain); + if(!lockMain) + return; + TRY_LOCK(wallet->cs_wallet, lockWallet); + if(!lockWallet) + return; + if(chainActive.Height() != cachedNumBlocks) { // Balance and number of transactions might have changed cachedNumBlocks = chainActive.Height(); + checkBalanceChanged(); + if(transactionTableModel) + transactionTableModel->updateConfirmations(); } } @@ -520,7 +533,7 @@ bool WalletModel::getPubKey(const CKeyID &address, CPubKey& vchPubKeyOut) const // returns a list of COutputs from COutPoints void WalletModel::getOutputs(const std::vector<COutPoint>& vOutpoints, std::vector<COutput>& vOutputs) { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); BOOST_FOREACH(const COutPoint& outpoint, vOutpoints) { if (!wallet->mapWallet.count(outpoint.hash)) continue; @@ -533,7 +546,7 @@ void WalletModel::getOutputs(const std::vector<COutPoint>& vOutpoints, std::vect bool WalletModel::isSpent(const COutPoint& outpoint) const { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); return wallet->IsSpent(outpoint.hash, outpoint.n); } @@ -543,7 +556,7 @@ void WalletModel::listCoins(std::map<QString, std::vector<COutput> >& mapCoins) std::vector<COutput> vCoins; wallet->AvailableCoins(vCoins); - LOCK(wallet->cs_wallet); // ListLockedCoins, mapWallet + LOCK2(cs_main, wallet->cs_wallet); // ListLockedCoins, mapWallet std::vector<COutPoint> vLockedCoins; wallet->ListLockedCoins(vLockedCoins); @@ -575,25 +588,25 @@ void WalletModel::listCoins(std::map<QString, std::vector<COutput> >& mapCoins) bool WalletModel::isLockedCoin(uint256 hash, unsigned int n) const { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); return wallet->IsLockedCoin(hash, n); } void WalletModel::lockCoin(COutPoint& output) { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); wallet->LockCoin(output); } void WalletModel::unlockCoin(COutPoint& output) { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); wallet->UnlockCoin(output); } void WalletModel::listLockedCoins(std::vector<COutPoint>& vOutpts) { - LOCK(wallet->cs_wallet); + LOCK2(cs_main, wallet->cs_wallet); wallet->ListLockedCoins(vOutpts); } diff --git a/src/rpcdump.cpp b/src/rpcdump.cpp index 9a24a99c17..593e0d2b6b 100644 --- a/src/rpcdump.cpp +++ b/src/rpcdump.cpp @@ -153,7 +153,7 @@ Value importwallet(const Array& params, bool fHelp) EnsureWalletIsUnlocked(); ifstream file; - file.open(params[0].get_str().c_str()); + file.open(params[0].get_str().c_str(), std::ios::in | std::ios::ate); if (!file.is_open()) throw JSONRPCError(RPC_INVALID_PARAMETER, "Cannot open wallet dump file"); @@ -161,7 +161,12 @@ Value importwallet(const Array& params, bool fHelp) bool fGood = true; + int64_t nFilesize = std::max((int64_t)1, (int64_t)file.tellg()); + file.seekg(0, file.beg); + + pwalletMain->ShowProgress(_("Importing..."), 0); // show progress dialog in GUI while (file.good()) { + pwalletMain->ShowProgress("", std::max(1, std::min(99, (int)(((double)file.tellg() / (double)nFilesize) * 100)))); std::string line; std::getline(file, line); if (line.empty() || line[0] == '#') @@ -207,6 +212,7 @@ Value importwallet(const Array& params, bool fHelp) nTimeBegin = std::min(nTimeBegin, nTime); } file.close(); + pwalletMain->ShowProgress("", 100); // hide progress dialog in GUI CBlockIndex *pindex = chainActive.Tip(); while (pindex && pindex->pprev && pindex->nTime > nTimeBegin - 7200) diff --git a/src/test/rpc_wallet_tests.cpp b/src/test/rpc_wallet_tests.cpp index af34e496e2..eea249b114 100644 --- a/src/test/rpc_wallet_tests.cpp +++ b/src/test/rpc_wallet_tests.cpp @@ -65,7 +65,7 @@ BOOST_AUTO_TEST_CASE(rpc_wallet) // Test RPC calls for various wallet statistics Value r; - LOCK(pwalletMain->cs_wallet); + LOCK2(cs_main, pwalletMain->cs_wallet); BOOST_CHECK_NO_THROW(CallRPC("listunspent")); BOOST_CHECK_THROW(CallRPC("listunspent string"), runtime_error); diff --git a/src/test/script_P2SH_tests.cpp b/src/test/script_P2SH_tests.cpp index 03dbdde57b..9b1290e0ea 100644 --- a/src/test/script_P2SH_tests.cpp +++ b/src/test/script_P2SH_tests.cpp @@ -50,6 +50,7 @@ BOOST_AUTO_TEST_SUITE(script_P2SH_tests) BOOST_AUTO_TEST_CASE(sign) { + LOCK(cs_main); // Pay-to-script-hash looks like this: // scriptSig: <sig> <sig...> <serialized_script> // scriptPubKey: HASH160 <hash> EQUAL @@ -147,6 +148,7 @@ BOOST_AUTO_TEST_CASE(norecurse) BOOST_AUTO_TEST_CASE(set) { + LOCK(cs_main); // Test the CScript::Set* methods CBasicKeyStore keystore; CKey key[4]; @@ -250,6 +252,7 @@ BOOST_AUTO_TEST_CASE(switchover) BOOST_AUTO_TEST_CASE(AreInputsStandard) { + LOCK(cs_main); CCoinsView coinsDummy; CCoinsViewCache coins(coinsDummy); CBasicKeyStore keystore; diff --git a/src/test/transaction_tests.cpp b/src/test/transaction_tests.cpp index 2ebb652f00..24647950c4 100644 --- a/src/test/transaction_tests.cpp +++ b/src/test/transaction_tests.cpp @@ -254,6 +254,7 @@ BOOST_AUTO_TEST_CASE(test_Get) BOOST_AUTO_TEST_CASE(test_IsStandard) { + LOCK(cs_main); CBasicKeyStore keystore; CCoinsView coinsDummy; CCoinsViewCache coins(coinsDummy); diff --git a/src/version.cpp b/src/version.cpp index 904451ac59..51e34aa9c9 100644 --- a/src/version.cpp +++ b/src/version.cpp @@ -40,6 +40,9 @@ const std::string CLIENT_NAME("Satoshi"); # define GIT_COMMIT_DATE "$Format:%cD$" #endif +#define BUILD_DESC_WITH_SUFFIX(maj,min,rev,build,suffix) \ + "v" DO_STRINGIZE(maj) "." DO_STRINGIZE(min) "." DO_STRINGIZE(rev) "." DO_STRINGIZE(build) "-" DO_STRINGIZE(suffix) + #define BUILD_DESC_FROM_COMMIT(maj,min,rev,build,commit) \ "v" DO_STRINGIZE(maj) "." DO_STRINGIZE(min) "." DO_STRINGIZE(rev) "." DO_STRINGIZE(build) "-g" commit @@ -47,7 +50,9 @@ const std::string CLIENT_NAME("Satoshi"); "v" DO_STRINGIZE(maj) "." DO_STRINGIZE(min) "." DO_STRINGIZE(rev) "." DO_STRINGIZE(build) "-unk" #ifndef BUILD_DESC -# ifdef GIT_COMMIT_ID +# ifdef BUILD_SUFFIX +# define BUILD_DESC BUILD_DESC_WITH_SUFFIX(CLIENT_VERSION_MAJOR, CLIENT_VERSION_MINOR, CLIENT_VERSION_REVISION, CLIENT_VERSION_BUILD, BUILD_SUFFIX) +# elif defined(GIT_COMMIT_ID) # define BUILD_DESC BUILD_DESC_FROM_COMMIT(CLIENT_VERSION_MAJOR, CLIENT_VERSION_MINOR, CLIENT_VERSION_REVISION, CLIENT_VERSION_BUILD, GIT_COMMIT_ID) # else # define BUILD_DESC BUILD_DESC_FROM_UNKNOWN(CLIENT_VERSION_MAJOR, CLIENT_VERSION_MINOR, CLIENT_VERSION_REVISION, CLIENT_VERSION_BUILD) diff --git a/src/wallet.cpp b/src/wallet.cpp index 775eb8f580..7cf2361096 100644 --- a/src/wallet.cpp +++ b/src/wallet.cpp @@ -471,6 +471,7 @@ bool CWallet::AddToWallet(const CWalletTx& wtxIn, bool fFromLoadWallet) if (fFromLoadWallet) { mapWallet[hash] = wtxIn; + mapWallet[hash].BindWallet(this); AddToSpends(hash); } else @@ -606,7 +607,7 @@ bool CWallet::AddToWalletIfInvolvingMe(const uint256 &hash, const CTransaction& void CWallet::SyncTransaction(const uint256 &hash, const CTransaction& tx, const CBlock* pblock) { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); if (!AddToWalletIfInvolvingMe(hash, tx, pblock, true)) return; // Not one of ours @@ -834,7 +835,7 @@ int CWallet::ScanForWalletTransactions(CBlockIndex* pindexStart, bool fUpdate) CBlockIndex* pindex = pindexStart; { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); // no need to read and scan block, if block was created before // our wallet birthday (as adjusted for block time variability) @@ -869,7 +870,7 @@ int CWallet::ScanForWalletTransactions(CBlockIndex* pindexStart, bool fUpdate) void CWallet::ReacceptWalletTransactions() { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); BOOST_FOREACH(PAIRTYPE(const uint256, CWalletTx)& item, mapWallet) { const uint256& wtxid = item.first; @@ -964,7 +965,7 @@ int64_t CWallet::GetBalance() const { int64_t nTotal = 0; { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); for (map<uint256, CWalletTx>::const_iterator it = mapWallet.begin(); it != mapWallet.end(); ++it) { const CWalletTx* pcoin = &(*it).second; @@ -980,7 +981,7 @@ int64_t CWallet::GetUnconfirmedBalance() const { int64_t nTotal = 0; { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); for (map<uint256, CWalletTx>::const_iterator it = mapWallet.begin(); it != mapWallet.end(); ++it) { const CWalletTx* pcoin = &(*it).second; @@ -995,7 +996,7 @@ int64_t CWallet::GetImmatureBalance() const { int64_t nTotal = 0; { - LOCK(cs_wallet); + LOCK2(cs_main, cs_wallet); for (map<uint256, CWalletTx>::const_iterator it = mapWallet.begin(); it != mapWallet.end(); ++it) { const CWalletTx* pcoin = &(*it).second; diff --git a/src/walletdb.cpp b/src/walletdb.cpp index b57ea0b518..359a1cef61 100644 --- a/src/walletdb.cpp +++ b/src/walletdb.cpp @@ -352,9 +352,7 @@ ReadKeyValue(CWallet* pwallet, CDataStream& ssKey, CDataStream& ssValue, CWalletTx wtx; ssValue >> wtx; CValidationState state; - if (CheckTransaction(wtx, state) && (wtx.GetHash() == hash) && state.IsValid()) - wtx.BindWallet(pwallet); - else + if (!(CheckTransaction(wtx, state) && (wtx.GetHash() == hash) && state.IsValid())) return false; // Undo serialize changes in 31600 |