Merge f842d0801e into merged_master (Bitcoin PR bitcoin/bitcoin#29686)

This commit is contained in:
ivanlele 2026-04-02 14:10:47 +00:00
commit e5db086bce
No known key found for this signature in database
6 changed files with 39 additions and 17 deletions

View file

@ -152,10 +152,16 @@ static int AppInitRPC(int argc, char* argv[])
strUsage += FormatParagraph(LicenseInfo());
} else {
strUsage += "\n"
"Usage: elements-cli [options] <command> [params] Send command to " CLIENT_NAME "\n"
"or: elements-cli [options] -named <command> [name=value]... Send command to " CLIENT_NAME " (with named arguments)\n"
"or: elements-cli [options] help List commands\n"
"or: elements-cli [options] help <command> Get help for a command\n";
"The elements-cli utility provides a command line interface to interact with a " CLIENT_NAME " RPC server.\n"
"\nIt can be used to query network information, manage wallets, create or broadcast transactions, and control the " CLIENT_NAME " server.\n"
"\nUse the \"help\" command to list all commands. Use \"help <command>\" to show help for that command.\n"
"The -named option allows you to specify parameters using the key=value format, eliminating the need to pass unused positional parameters.\n"
"\n"
"Usage: elements-cli [options] <command> [params]\n"
"or: elements-cli [options] -named <command> [name=value]...\n"
"or: elements-cli [options] help\n"
"or: elements-cli [options] help <command>\n"
"\n";
strUsage += "\n" + gArgs.GetHelpMessage();
}

View file

@ -116,8 +116,11 @@ static int AppInitRawTx(int argc, char* argv[])
strUsage += FormatParagraph(LicenseInfo());
} else {
strUsage += "\n"
"Usage: elements-tx [options] <hex-tx> [commands] Update hex-encoded Elements transaction\n"
"or: elements-tx [options] -create [commands] Create hex-encoded Elements transaction\n"
"The elements-tx tool is used for creating and modifying Elements transactions.\n\n"
"elements-tx can be used with \"<hex-tx> [commands]\" to update a hex-encoded Elements transaction, or with \"-create [commands]\" to create a hex-encoded Elements transaction.\n"
"\n"
"Usage: elements-tx [options] <hex-tx> [commands]\n"
"or: elements-tx [options] -create [commands]\n"
"\n";
strUsage += gArgs.GetHelpMessage();
}

View file

@ -58,7 +58,10 @@ static int AppInitUtil(ArgsManager& args, int argc, char* argv[])
strUsage += FormatParagraph(LicenseInfo());
} else {
strUsage += "\n"
"Usage: bitcoin-util [options] [commands] Do stuff\n";
"The bitcoin-util tool provides bitcoin related functionality that does not rely on the ability to access a running node. Available [commands] are listed below.\n"
"\n"
"Usage: bitcoin-util [options] [command]\n"
"or: bitcoin-util [options] grind <hex-block-header>\n";
strUsage += "\n" + args.GetHelpMessage();
}

View file

@ -61,17 +61,18 @@ static std::optional<int> WalletAppInit(ArgsManager& args, int argc, char* argv[
}
const bool missing_args{argc < 2};
if (missing_args || HelpRequested(args) || args.IsArgSet("-version")) {
std::string strUsage = strprintf("%s elements-wallet version", CLIENT_NAME) + " " + FormatFullVersion() + "\n";
std::string strUsage = strprintf("%s elements-wallet utility version", CLIENT_NAME) + " " + FormatFullVersion() + "\n";
if (args.IsArgSet("-version")) {
strUsage += FormatParagraph(LicenseInfo());
} else {
strUsage += "\n"
"elements-wallet is an offline tool for creating and interacting with " CLIENT_NAME " wallet files.\n"
"By default elements-wallet will act on wallets in the default mainnet wallet directory in the datadir.\n"
"To change the target wallet, use the -datadir, -wallet and -regtest/-signet/-testnet-testnet4 arguments.\n\n"
"Usage:\n"
" elements-wallet [options] <command>\n";
"elements-wallet is an offline tool for creating and interacting with " CLIENT_NAME " wallet files.\n\n"
"By default elements-wallet will act on wallets in the default mainnet wallet directory in the datadir.\n\n"
"To change the target wallet, use the -datadir, -wallet and -regtest / -signet / -testnet arguments.\n"
"\n"
"Usage: elements-wallet [options] <command>\n"
"\n";
strUsage += "\n" + args.GetHelpMessage();
}
tfm::format(std::cout, "%s", strUsage);

View file

@ -136,12 +136,18 @@ static bool ProcessInitCommands(ArgsManager& args)
{
// Process help and version before taking care about datadir
if (HelpRequested(args) || args.IsArgSet("-version")) {
std::string strUsage = CLIENT_NAME " version " + FormatFullVersion() + "\n";
std::string strUsage = CLIENT_NAME " daemon version " + FormatFullVersion() + "\n";
if (args.IsArgSet("-version")) {
strUsage += FormatParagraph(LicenseInfo());
} else {
strUsage += "\nUsage: elementsd [options] Start " CLIENT_NAME "\n"
strUsage += "\n"
"The " CLIENT_NAME " daemon (elementsd) is a headless program that connects to the Elements network to validate and relay transactions and blocks, as well as relaying addresses.\n\n"
"It provides the backbone of the Elements network and its RPC, REST and ZMQ services can provide various transaction, block and address-related services.\n\n"
"There is an optional wallet component which provides transaction services.\n\n"
"It can be used in a headless environment or as part of a server setup.\n"
"\n"
"Usage: elementsd [options]\n"
"\n";
strUsage += args.GetHelpMessage();
}

View file

@ -56,8 +56,11 @@ HelpMessageDialog::HelpMessageDialog(QWidget *parent, bool about) :
ui->helpMessage->setVisible(false);
} else {
setWindowTitle(tr("Command-line options"));
QString header = "Usage: elements-qt [command-line options] [URI]\n\n"
"Optional URI is a Bitcoin address in BIP21 URI format.\n";
QString header = "The elements-qt application provides a graphical interface for interacting with " CLIENT_NAME ".\n\n"
"It combines the core functionalities of elementsd with a user-friendly interface for wallet management, transaction history, and network statistics.\n\n"
"It is suitable for users who prefer a graphical over a command-line interface.\n\n"
"You can optionally specify a payment [URI], in e.g. the BIP21 URI format.\n\n"
"Usage: elements-qt [options] [URI]\n\n";
QTextCursor cursor(ui->helpMessage->document());
cursor.insertText(version);
cursor.insertBlock();