On Thu, 2 Jan 2003 01:44:21 -0500, "Serguei Mokhov" <[EMAIL PROTECTED]> wrote:
>Either way, something has to be donw about this...
Just another way to do it:
#if defined(HAVE_GETOPT_LONG)
#define PARMPREFIX '='
#else
#define PARMPREFIX ' '
#endif
static void
explain_option(char *shortform, char *longform, char *parm, char *desc)
{
int pos = 0;
printf(" -%s", shortform);
pos += 3 + strlen(shortform);
#if defined(HAVE_GETOPT_LONG)
printf(", --%s", longform);
pos += 4 + strlen(longform);
#endif
if (parm) {
printf("%c%s", PARMPREFIX, parm);
pos += 1 + strlen(parm);
}/*if*/
printf("%*c", 27 - pos, ' ');
printf("%s\n", desc);
}/*explain_option*/
#define xo explain_option
xo("f", "file", "FILENAME", "output file name");
xo("F", "format", "c|t|p", "output file format (custom, tar, plain text)");
xo("i", "ignore-version", NULL, "proceed even when server version mismatches\n"
" pg_dump version");
xo("v", "verbose", NULL, "verbose mode");
xo("Z", "compress", "0-9", "compression level for compressed formats");
This is only a quick hack, I didn't care for _() and
explain_option() could be smarter about multi line descriptions,
but you get the idea ...
Servus
Manfred
---------------------------(end of broadcast)---------------------------
TIP 6: Have you searched our list archives?
http://archives.postgresql.org