191 lines
12 KiB
Bash
191 lines
12 KiB
Bash
#compdef zcash-cli
|
|
# ------------------------------------------------------------------------------
|
|
# Copyright (c) 2017 Github zsh-users - https://github.com/zsh-users
|
|
# All rights reserved.
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions are met:
|
|
# * Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# * Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in the
|
|
# documentation and/or other materials provided with the distribution.
|
|
# * Neither the name of the zsh-users nor the
|
|
# names of its contributors may be used to endorse or promote products
|
|
# derived from this software without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
|
# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
|
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
|
# DISCLAIMED. IN NO EVENT SHALL ZSH-USERS BE LIABLE FOR ANY
|
|
# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
|
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
|
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
|
# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
|
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
# ------------------------------------------------------------------------------
|
|
# Description
|
|
# -----------
|
|
#
|
|
# Completion script for zcash-cli v6.10.0 (https://z.cash).
|
|
#
|
|
# ------------------------------------------------------------------------------
|
|
# Authors
|
|
# -------
|
|
#
|
|
# * Jordy van Wolferen (https://github.com/jvwdev)
|
|
#
|
|
# ------------------------------------------------------------------------------
|
|
|
|
_zcash_cli_commands() {
|
|
local -a commands=(
|
|
'addmultisigaddress:Add a nrequired-to-sign transparent multisignature address to the wallet'
|
|
'addnode:Attempts to add or remove a node from the addnode list'
|
|
'backupwallet:Safely copies current wallet file to destination filename'
|
|
'clearbanned:Clear all banned IPs'
|
|
'createmultisig:Creates a multi-signature address with n signature of m keys required'
|
|
'decoderawtransaction:Return a JSON object representing the serialized, hex-encoded transaction'
|
|
'decodescript:Decode a hex-encoded script'
|
|
'disconnectnode:Immediately disconnects from the specified node'
|
|
'dumpprivkey:Reveals the private key corresponding to "t-addr"'
|
|
'encryptwallet:Encrypts the wallet with "passphrase"'
|
|
'generate:Mine blocks immediately'
|
|
'getaddednodeinfo:Returns information about the given added node, or all added nodes'
|
|
'getaddressbalance:Returns the balance for addresses'
|
|
'getaddressdeltas:Returns all changes for an address'
|
|
'getaddressmempool:Returns all mempool deltas for an address'
|
|
'getaddresstxids:Returns the txids for given transparent addresses within the given'
|
|
'getaddressutxos:Returns all unspent outputs for an address'
|
|
"getbalance:Returns the wallet's available transparent balance"
|
|
'getbestblockhash:Returns the hash of the best (tip) block in the longest block chain'
|
|
'getblock:return data for the block'
|
|
'getblockchaininfo:Returns an object containing various state info regarding block chain processing'
|
|
'getblockcount:Returns the height of the most recent block in the best valid block chain'
|
|
'getblockdeltas:Returns information about the given block and its transactions'
|
|
'getblockhash:Returns hash of block in best-block-chain at index provided'
|
|
'getblockhashes:Returns array of hashes of blocks within the timestamp range provided'
|
|
'getblockheader:return block header'
|
|
'getblocksubsidy:Returns block subsidy reward'
|
|
'getblocktemplate:get block template'
|
|
'getchaintips:Return information about all known tips in the block tree'
|
|
'getconnectioncount:Returns the number of connections to other nodes'
|
|
'getdeprecationinfo:Returns an object containing current version and deprecation block height'
|
|
'getdifficulty:Returns the proof-of-work difficulty as a multiple of the minimum difficulty'
|
|
'getexperimentalfeatures:Returns enabled experimental features'
|
|
'getgenerate:Return if the server is set to generate coins or not'
|
|
'getinfo:Returns an object containing various state info'
|
|
'getlocalsolps:Returns the average local solutions per second since this node was started'
|
|
'getmemoryinfo:Returns an object containing information about memory usage'
|
|
'getmempoolinfo:Returns details on the active state of the TX memory pool'
|
|
'getmininginfo:Returns a json object containing mining-related information'
|
|
'getnettotals:Returns information about network traffic'
|
|
'getnetworkinfo:Returns an object containing various state info regarding P2P networking'
|
|
'getnetworksolps:Returns the estimated network solutions per second based on the last n blocks'
|
|
'getnewaddress:Returns a new transparent Zcash address'
|
|
'getpeerinfo:Returns data about each connected network node as a json array of objects'
|
|
'getrawchangeaddress:Returns a new transparent Zcash address for receiving change'
|
|
'getrawmempool:Returns all transaction ids in memory pool as a json array of string transaction ids'
|
|
'getrawtransaction:Return the raw transaction data'
|
|
'getreceivedbyaddress:Returns the total amount received by the given transparent Zcash address'
|
|
'getspentinfo:Returns the txid and index where an output is spent'
|
|
'gettransaction:Returns detailed information about in-wallet transaction'
|
|
'gettxout:Returns details about an unspent transaction output'
|
|
'gettxoutproof:Returns a hex-encoded proof that "txid" was included in a block'
|
|
'gettxoutsetinfo:Returns statistics about the unspent transaction output set'
|
|
"getunconfirmedbalance:Returns the server's total unconfirmed transparent balance"
|
|
'getwalletinfo:Returns wallet state information'
|
|
'help:List all commands, or get help for a specified command'
|
|
'importaddress:import address'
|
|
'importprivkey:Adds a private key to your wallet'
|
|
'importpubkey:Adds a public key'
|
|
'importwallet:Imports taddr keys from a wallet dump file'
|
|
'listaddresses:Lists the addresses managed by this wallet by source'
|
|
'listaddressgroupings:Lists groups of transparent addresses'
|
|
'listbanned:List all banned IPs/Subnets'
|
|
'listlockunspent:Returns list of temporarily unspendable transparent outputs'
|
|
'listreceivedbyaddress:List balances by transparent receiving address'
|
|
'listsinceblock:Get all transactions in blocks'
|
|
"listtransactions:Returns up to 'count' of the most recent transactions"
|
|
'listunspent:Returns array of unspent transparent transaction outputs'
|
|
'lockunspent:Updates list of temporarily unspendable outputs'
|
|
'ping:Requests that a ping be sent to all other nodes, to measure ping time'
|
|
'prioritisetransaction:Accepts the transaction into mined blocks at a higher/lower priority'
|
|
'sendmany:Send to multiple transparent recipient'
|
|
'sendrawtransaction:Submits raw transaction to local node and network'
|
|
'sendtoaddress:Send an amount to a given transparent address'
|
|
'setban:Attempts to add or remove an IP/Subnet from the banned list'
|
|
'setgenerate:Set "generate" true or false to turn generation on or off'
|
|
'setlogfilter:Sets the filter to be used for selecting events to log'
|
|
'signmessage:Sign a message with the private key of a t-addr'
|
|
'stop:Stop Zcash server'
|
|
'submitblock:Attempts to submit new block to network'
|
|
'validateaddress:Return information about the given Zcash address'
|
|
'verifychain:Verifies blockchain database'
|
|
'verifymessage:Verify a signed message'
|
|
'verifytxoutproof:Verifies that a proof points to a transaction in a block'
|
|
'walletconfirmbackup:Notify the wallet that the user has backed up the emergency recovery phrase'
|
|
'z_converttex:Converts a transparent Zcash address to a TEX address'
|
|
'z_exportkey:Reveals the zkey corresponding to "zaddr"'
|
|
'z_exportviewingkey:Returns the full viewing key corresponding to "zaddr"'
|
|
'z_exportwallet:Exports all wallet keys, for taddr and zaddr, in a human-readable format'
|
|
'z_getaddressforaccount:get address for account'
|
|
"z_getbalance:Returns the balance of a taddr or zaddr belonging to the node's wallet"
|
|
"z_getbalanceforaccount:Returns the account's spendable balance for each value pool"
|
|
'z_getbalanceforviewingkey:Returns the balance viewable by a full viewing key'
|
|
'z_getmigrationstatus:Returns information about the status of the Sprout to Sapling migration'
|
|
'z_getnewaccount:Prepares and returns a new account'
|
|
'z_getnewaddress:Returns a new shielded address for receiving payments'
|
|
'z_getnotescount:Returns the number of notes available in the wallet for each shielded value pool'
|
|
'z_getoperationresult:Retrieve the result and status of an operation which has finished'
|
|
'z_getoperationstatus:Get operation status and any associated result or error data'
|
|
'z_getpaymentdisclosure:Generate a payment disclosure for a given joinsplit output'
|
|
"z_getsubtreesbyindex:Returns roots of subtrees of the given pool's note commitment tree"
|
|
"z_gettreestate:Return information about the given block's tree state"
|
|
'z_importkey:Adds a zkey (as returned by z_exportkey) to your wallet'
|
|
'z_importviewingkey:Adds a viewing key to your wallet'
|
|
'z_importwallet:Imports taddr and zaddr keys from a wallet export file'
|
|
'z_listaccounts:Returns the list of accounts created with z_getnewaccount'
|
|
'z_listaddresses:Returns the list of shielded addresses belonging to the wallet'
|
|
'z_listoperationids:Returns the list of operation ids currently known to the wallet'
|
|
"z_listreceivedbyaddress:Return a list of amounts received by a zaddr belonging to the node's wallet"
|
|
'z_listunifiedreceivers:Returns a record of the individual receivers contained within the provided UA'
|
|
'z_listunspent:Returns an array of unspent shielded notes'
|
|
'z_mergetoaddress:Merge multiple UTXOs and notes into a single UTXO or note'
|
|
'z_sendmany:Send a transaction with multiple recipients'
|
|
"z_setmigration:attempt to migrate all funds from this wallet's Sprout addresses"
|
|
'z_shieldcoinbase:Shield transparent coinbase funds by sending to a shielded zaddr'
|
|
'z_validateaddress:Return information about the given address'
|
|
'z_validatepaymentdisclosure:Validates a payment disclosure'
|
|
'z_viewtransaction:Get detailed shielded information about in-wallet transaction'
|
|
'zcbenchmark:Runs a benchmark of the selected benchmark type samplecount times'
|
|
'zcsamplejoinsplit:Perform a joinsplit and return the JSDescription'
|
|
)
|
|
|
|
_describe -t commands 'command' commands "$@"
|
|
}
|
|
|
|
_arguments \
|
|
'(- *)-?[display usage information]' \
|
|
'(- *)-version[display version and exit]' \
|
|
'-conf=[specify configuration file]:file [zcash.conf]:_files' \
|
|
'-datadir=[specify data directory]:directory:_files -/' \
|
|
'-testnet[use the test network]' \
|
|
'-regtest[enter regression test mode]' \
|
|
'-rpcconnect=[send commands to node running on specified ip]:rpcconnect [127.0.0.1]:_hosts' \
|
|
'-rpcport=[connect to JSON-RPC on specified port]: :_guard "[[\:digit\:]]#" "port [8232 or testnet\: 18232]"' \
|
|
'-rpcwait[wait for RPC server to start]' \
|
|
'-rpcuser=[username for JSON-RPC connections]:rpcuser' \
|
|
'-rpcpassword=[password for JSON-RPC connections]:rpcpassword' \
|
|
'-rpcclienttimeout=[specify timeout during HTTP requests, or 0 for no timeout]: :_guard "[[\:digit\:]]#" "timeout (seconds) [900]"' \
|
|
'1: :_zcash_cli_commands' \
|
|
'*:: :_files'
|
|
|
|
# Local Variables:
|
|
# mode: Shell-Script
|
|
# sh-indentation: 2
|
|
# indent-tabs-mode: nil
|
|
# sh-basic-offset: 2
|
|
# End:
|
|
# vim: ft=zsh sw=2 ts=2 et
|