From 963feac4e98eaf3081dc32e60537258378558a28 Mon Sep 17 00:00:00 2001 From: Pawel Jakub Dawidek Date: Sun, 6 Sep 2009 06:48:50 +0000 Subject: [PATCH] For any given subcommand allow to specify multi-line usage (separated by \n). Submitted by: Mel Flynn --- sbin/geom/core/geom.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/sbin/geom/core/geom.c b/sbin/geom/core/geom.c index 8949b73f5596..ef957887661a 100644 --- a/sbin/geom/core/geom.c +++ b/sbin/geom/core/geom.c @@ -98,11 +98,21 @@ usage_command(struct g_command *cmd, const char *prefix) struct g_option *opt; unsigned i; - fprintf(stderr, "%s %s %s", prefix, comm, cmd->gc_name); if (cmd->gc_usage != NULL) { - fprintf(stderr, " %s\n", cmd->gc_usage); + char *pos, *ptr, *sptr; + + sptr = ptr = strdup(cmd->gc_usage); + while ((pos = strsep(&ptr, "\n")) != NULL) { + if (*pos == '\0') + continue; + fprintf(stderr, "%s %s %s %s\n", prefix, comm, + cmd->gc_name, pos); + } + free(sptr); return; } + + fprintf(stderr, "%s %s %s", prefix, comm, cmd->gc_name); if ((cmd->gc_flags & G_FLAG_VERBOSE) != 0) fprintf(stderr, " [-v]"); for (i = 0; ; i++) {