summaryrefslogtreecommitdiff
path: root/cmdline/apt-config.cc
diff options
context:
space:
mode:
authorDavid Kalnischkies <david@kalnischkies.de>2015-10-22 16:28:54 +0200
committerDavid Kalnischkies <david@kalnischkies.de>2015-11-04 18:04:03 +0100
commitcbbee23e7768750ca1c8b49bdfbf8a650131bbb6 (patch)
tree8727247578b43b0ae0a56110ff9e0e254157fc76 /cmdline/apt-config.cc
parent995a4bf6d770a5cc824c38388909f23fcca558c3 (diff)
split up help messages for simpler reuse
That is one huge commit with busy work only: Help messages used to be one big translateable string, which is a pain for translators and hard to reuse for us. This change there 'explodes' this single string into new string for each documented string trying hard to split up the translated messages as well. This actually restores many translations as previously adding a single command made all of the bug message fuzzy. The splitup also highlighted that its easy to forget a line, duplicate one and similar stuff. Git-Dch: Ignore
Diffstat (limited to 'cmdline/apt-config.cc')
-rw-r--r--cmdline/apt-config.cc38
1 files changed, 22 insertions, 16 deletions
diff --git a/cmdline/apt-config.cc b/cmdline/apt-config.cc
index 4479b84a7..e0383e019 100644
--- a/cmdline/apt-config.cc
+++ b/cmdline/apt-config.cc
@@ -78,34 +78,40 @@ static bool DoDump(CommandLine &CmdL)
// ShowHelp - Show the help screen /*{{{*/
// ---------------------------------------------------------------------
/* */
-static bool ShowHelp(CommandLine &)
+static bool ShowHelp(CommandLine &, CommandLine::DispatchWithHelp const * Cmds)
{
ioprintf(cout, "%s %s (%s)\n", PACKAGE, PACKAGE_VERSION, COMMON_ARCH);
if (_config->FindB("version") == true)
return true;
- cout <<
- _("Usage: apt-config [options] command\n"
+ std::cout <<
+ _("Usage: apt-config [options] command\n"
"\n"
- "apt-config is a simple tool to read the APT config file\n"
- "\n"
- "Commands:\n"
- " shell - Shell mode\n"
- " dump - Show the configuration\n"
- "\n"
- "Options:\n"
- " -h This help text.\n"
- " -c=? Read this configuration file\n"
+ "apt-config is a simple tool to read the APT config file\n")
+ << std::endl
+ << _("Commands:") << std::endl;
+ for (; Cmds->Handler != nullptr; ++Cmds)
+ {
+ if (Cmds->Help == nullptr)
+ continue;
+ std::cout << " " << Cmds->Match << " - " << Cmds->Help << std::endl;
+ }
+
+ std::cout << std::endl <<
+ _("Options:\n"
+ " -h This help text.\n"
+ " -c=? Read this configuration file\n"
" -o=? Set an arbitrary configuration option, eg -o dir::cache=/tmp\n");
return true;
}
/*}}}*/
int main(int argc,const char *argv[]) /*{{{*/
{
- CommandLine::Dispatch Cmds[] = {{"shell",&DoShell},
- {"dump",&DoDump},
- {"help",&ShowHelp},
- {0,0}};
+ CommandLine::DispatchWithHelp Cmds[] = {
+ {"shell", &DoShell, _("get configuration values via shell evaluation")},
+ {"dump", &DoDump, _("show the active configuration setting")},
+ {nullptr, nullptr, nullptr}
+ };
std::vector<CommandLine::Args> Args = getCommandArgs("apt-config", CommandLine::GetCommand(Cmds, argc, argv));