From e00370d4f528bcb38836153c2c1d3bc38a0eae4e Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Thu, 7 Apr 2016 22:52:23 +0200 Subject: removing duplication of --help logic --- src/util/util.c | 108 -------------------------------------------------------- 1 file changed, 108 deletions(-) (limited to 'src/util/util.c') diff --git a/src/util/util.c b/src/util/util.c index 6dcd0dc29..434ce8a9d 100644 --- a/src/util/util.c +++ b/src/util/util.c @@ -116,112 +116,4 @@ TALER_config_load (const char *base_dir) } - -/** - * At what offset does the help text start? - */ -#define BORDER 29 - -/** - * Print out details on command line options (implements --help). - * - * @param ctx command line processing context - * @param scls additional closure (points to about text) - * @param option name of the option - * @param value not used (NULL) - * @return #GNUNET_NO (do not continue, not an error) - */ -int -TALER_GETOPT_format_help_ (struct GNUNET_GETOPT_CommandLineProcessorContext *ctx, - void *scls, - const char *option, - const char *value) -{ - const char *about = scls; - size_t slen; - unsigned int i; - int j; - size_t ml; - size_t p; - char *scp; - const char *trans; - const struct GNUNET_GETOPT_CommandLineOption *opt; - - if (NULL != about) - { - printf ("%s\n%s\n", - ctx->binaryOptions, - gettext (about)); - printf (_("Arguments mandatory for long options are also mandatory for short options.\n")); - } - opt = ctx->allOptions; - for (i=0;NULL != opt[i].description;i++) - { - if (opt[i].shortName == '\0') - printf (" "); - else - printf (" -%c, ", opt[i].shortName); - printf ("--%s", opt[i].name); - slen = 8 + strlen (opt[i].name); - if (opt[i].argumentHelp != NULL) - { - printf ("=%s", opt[i].argumentHelp); - slen += 1 + strlen (opt[i].argumentHelp); - } - if (slen > BORDER) - { - printf ("\n%*s", BORDER, ""); - slen = BORDER; - } - if (slen < BORDER) - { - printf ("%*s", (int) (BORDER - slen), ""); - slen = BORDER; - } - if (0 < strlen (opt[i].description)) - trans = gettext (opt[i].description); - else - trans = ""; - ml = strlen (trans); - p = 0; -OUTER: - while (ml - p > 78 - slen) - { - for (j = p + 78 - slen; j > p; j--) - { - if (isspace ((unsigned char) trans[j])) - { - scp = GNUNET_malloc (j - p + 1); - memcpy (scp, &trans[p], j - p); - scp[j - p] = '\0'; - printf ("%s\n%*s", scp, BORDER + 2, ""); - GNUNET_free (scp); - p = j + 1; - slen = BORDER + 2; - goto OUTER; - } - } - /* could not find space to break line */ - scp = GNUNET_malloc (78 - slen + 1); - memcpy (scp, &trans[p], 78 - slen); - scp[78 - slen] = '\0'; - printf ("%s\n%*s", scp, BORDER + 2, ""); - GNUNET_free (scp); - slen = BORDER + 2; - p = p + 78 - slen; - } - /* print rest */ - if (p < ml) - printf ("%s\n", &trans[p]); - if (strlen (trans) == 0) - printf ("\n"); - } - printf ("Report bugs to taler@gnu.org.\n" - "Taler home page: http://www.gnu.org/software/taler/\n" - "General help using GNU software: http://www.gnu.org/gethelp/\n"); - return GNUNET_NO; -} - - - /* end of util.c */ -- cgit v1.2.3