From: Thadeu Lima de Souza Cascardo Date: Sun, 11 Dec 2016 13:46:09 +0000 (-0200) Subject: help: comando exibe ajuda curta dos comandos. X-Git-Url: http://git.cascardo.eti.br/?p=cascardo%2Fdeclara.git;a=commitdiff_plain;h=9deafbf270706a8c3710e45000d02119e38f4001 help: comando exibe ajuda curta dos comandos. O comando "help" ou "ajuda" sem parâmetros mostram a lista de comandos acompanhados de uma descrição curta. --- diff --git a/lib/help.c b/lib/help.c index 39a53e1..3a012b4 100644 --- a/lib/help.c +++ b/lib/help.c @@ -32,13 +32,27 @@ static const char *helpdir = DOCDIR; +static int help_cmds(struct declaracao *dec) +{ + void *iter = NULL; + struct cmd *cmd; + printf("\n"); + while ((cmd = cmd_next(&iter)) != NULL) { + printf("%s - ", cmd->name); + if (cmd->help) + printf("%s", cmd->help); + printf("\n"); + } + printf("\n"); +} + static int run_help(struct declaracao *dec, char **args, int argc) { int r; char *filename; char *basename; if (argc == 1) - basename = "help"; + return help_cmds(dec); else if (argc == 2) basename = args[1]; else