diff options
-rw-r--r-- | src/gdbmtool.c | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/src/gdbmtool.c b/src/gdbmtool.c index e12b349..2fe5dda 100644 --- a/src/gdbmtool.c +++ b/src/gdbmtool.c @@ -1756,13 +1756,25 @@ help_handler (struct handler_param *param) { int i; int n; - + int optoff; + n = fprintf (fp, " %s", cmd->name); - + optoff = n; + for (i = 0; i < NARGS && cmd->args[i].name; i++) - n += fprintf (fp, " %s", gettext (cmd->args[i].name)); + { + if (n >= CMDCOLS) + { + fputc ('\n', fp); + n = fprintf (fp, "%*.*s", optoff, optoff, ""); + } + n += fprintf (fp, " %s", gettext (cmd->args[i].name)); + } + if (n < CMDCOLS) fprintf (fp, "%*.s", CMDCOLS-n, ""); + else + fprintf (fp, "\n%*.*s", CMDCOLS, CMDCOLS, ""); fprintf (fp, " %s", gettext (cmd->doc)); fputc ('\n', fp); } |