Revision: 65115
http://sourceforge.net/p/brlcad/code/65115
Author: starseeker
Date: 2015-05-30 18:03:06 +0000 (Sat, 30 May 2015)
Log Message:
-----------
Do the offset space printing correctly, per printf style outlined here:
http://stackoverflow.com/a/9448093
Modified Paths:
--------------
brlcad/trunk/src/libbu/opt.c
Modified: brlcad/trunk/src/libbu/opt.c
===================================================================
--- brlcad/trunk/src/libbu/opt.c 2015-05-30 17:53:29 UTC (rev 65114)
+++ brlcad/trunk/src/libbu/opt.c 2015-05-30 18:03:06 UTC (rev 65115)
@@ -542,7 +542,7 @@
HIDDEN void
wrap_help(struct bu_vls *help, int indent, int offset, int len)
{
- int i, sc = 0;
+ int i = 0;
char *input = NULL;
char **argv = NULL;
int argc = 0;
@@ -558,8 +558,7 @@
for (i = 0; i < argc; i++) {
int avl = strlen(argv[i]);
if ((int)bu_vls_strlen(&working) + avl + 1 > len) {
- bu_vls_printf(&new_help, "%s\n", bu_vls_addr(&working));
- for (sc = 0; sc < offset+indent; sc++) bu_vls_putc(&new_help, 32);
+ bu_vls_printf(&new_help, "%s\n%*s", bu_vls_addr(&working),
offset+indent, " ");
bu_vls_trunc(&working, 0);
}
bu_vls_printf(&working, "%s ", argv[i]);
@@ -578,7 +577,6 @@
{
size_t i = 0;
size_t j = 0;
- int s = 0;
size_t opt_cnt = 0;
int offset = 2;
int opt_cols = 28;
@@ -616,8 +614,7 @@
int new_len = strlen(d->shortopt_doc);
if (new_len > 0) {
if ((int)bu_vls_strlen(&opts) + new_len + offset + 2 >
opt_cols + desc_cols) {
- for (s = 0; s < offset; s++)
bu_vls_putc(&description, 32);
- bu_vls_printf(&description, "%s\n",
bu_vls_addr(&opts));
+ bu_vls_printf(&description, "%*s%s\n", offset, " ",
bu_vls_addr(&opts));
bu_vls_sprintf(&opts, "%s, ", d->shortopt_doc);
} else {
bu_vls_printf(&opts, "%s, ", d->shortopt_doc);
@@ -634,8 +631,7 @@
int new_len = strlen(d->longopt_doc);
if (new_len > 0) {
if ((int)bu_vls_strlen(&opts) + new_len + offset + 2 >
opt_cols + desc_cols) {
- for (s = 0; s < offset; s++)
bu_vls_putc(&description, 32);
- bu_vls_printf(&description, "%s\n",
bu_vls_addr(&opts));
+ bu_vls_printf(&description, "%*s%s\n", offset, " ",
bu_vls_addr(&opts));
bu_vls_sprintf(&opts, "%s, ", d->longopt_doc);
} else {
bu_vls_printf(&opts, "%s, ", d->longopt_doc);
@@ -646,19 +642,16 @@
}
bu_vls_trunc(&opts, -2);
- for (s = 0; s < offset; s++) bu_vls_putc(&description, 32);
- bu_vls_printf(&description, "%s", bu_vls_addr(&opts));
+ bu_vls_printf(&description, "%*s%s", offset, " ",
bu_vls_addr(&opts));
if ((int)bu_vls_strlen(&opts) > opt_cols) {
- bu_vls_printf(&description, "\n");
- for (s = 0; s < opt_cols + offset; s++)
bu_vls_putc(&description, 32);
+ bu_vls_printf(&description, "\n%*s", opt_cols + offset, " ");
} else {
- for (s = 0; s < opt_cols - (int)bu_vls_strlen(&opts); s++)
bu_vls_putc(&description, 32);
+ bu_vls_printf(&description, "%*s", opt_cols -
(int)bu_vls_strlen(&opts), " ");
}
if ((int)bu_vls_strlen(&help_str) > desc_cols) {
wrap_help(&help_str, offset, opt_cols+offset, desc_cols);
}
- for (s = 0; s < offset; s++) bu_vls_putc(&description, 32);
- bu_vls_printf(&description, "%s\n", bu_vls_addr(&help_str));
+ bu_vls_printf(&description, "%*s%s\n", offset, " ",
bu_vls_addr(&help_str));
bu_vls_free(&help_str);
bu_vls_free(&opts);
status[i] = 1;
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits