Esempio n. 1
0
static void
getopts_usage_line( const tr_option * opt,
                    int               longWidth,
                    int               shortWidth,
                    int               argWidth )
{
    int len;
    const char * longName   = opt->longName ? opt->longName : "";
    const char * shortName  = opt->shortName ? opt->shortName : "";
    const char * arg        = getArgName( opt );

    const int d_indent = shortWidth + longWidth + argWidth + 7;
    const int d_width = 80 - d_indent;
    const char * d = opt->description;

    printf( " %s%-*s %s%-*s %-*s ",
            (shortName && *shortName ? "-" : " "), shortWidth, shortName,
            (longName && *longName ? "--" : "  "), longWidth, longName,
            argWidth, arg );
    len = get_next_line_len( d, d_width );
    printf( "%*.*s\n", len, len, d );

    d += len;
    while( isspace( *d ) ) ++d;

    while(( len = get_next_line_len( d, d_width ))) {
        printf( "%*.*s%*.*s\n", d_indent, d_indent, "", len, len, d );
        d += len;
        while( isspace( *d ) ) ++d;
    }
}
Esempio n. 2
0
static void getopts_usage_line(tr_option const* opt, int longWidth, int shortWidth, int argWidth)
{
    int len;
    char const* longName = opt->longName != NULL ? opt->longName : "";
    char const* shortName = opt->shortName != NULL ? opt->shortName : "";
    char const* arg = getArgName(opt);

    int const d_indent = shortWidth + longWidth + argWidth + 7;
    int const d_width = 80 - d_indent;
    char const* d = opt->description;

    printf(" %s%-*s %s%-*s %-*s ", (shortName != NULL && *shortName != '\0') ? "-" : " ", shortWidth, shortName,
        (longName != NULL && *longName != '\0') ? "--" : "  ", longWidth, longName, argWidth, arg);
    len = get_next_line_len(d, d_width);
    printf("%*.*s\n", len, len, d);

    d += len;

    while (isspace(*d))
    {
        ++d;
    }

    while ((len = get_next_line_len(d, d_width)) != 0)
    {
        printf("%*.*s%*.*s\n", d_indent, d_indent, "", len, len, d);
        d += len;

        while (isspace(*d))
        {
            ++d;
        }
    }
}