nix --help: Show usage examples

This commit is contained in:
Eelco Dolstra 2016-04-21 14:58:32 +02:00
parent 1b0088ebb2
commit 69e3ffb076
3 changed files with 41 additions and 0 deletions

View file

@ -5,6 +5,21 @@ namespace nix {
Commands * RegisterCommand::commands = 0;
void Command::printHelp(const string & programName, std::ostream & out)
{
Args::printHelp(programName, out);
auto exs = examples();
if (!exs.empty()) {
out << "\n";
out << "Examples:\n";
for (auto & ex : exs)
out << "\n"
<< " " << ex.description << "\n" // FIXME: wrap
<< " $ " << ex.command << "\n";
}
}
MultiCommand::MultiCommand(const Commands & _commands)
: commands(_commands)
{