# Boost :

From: Bertolt Mildner (Bertolt.Mildner_at_[hidden])
Date: 2004-12-04 14:50:58

OK, i have rewritten the multi-line support. I hope it is much easier to
read and understand now (but still got some iterator arithmetics in it ...)

Now tabs ('\t') have a special function:
- A option descriptions consists of one or more paragraphs.

- Paragraphs are seperated by a '\n' and may be empty.

- Each paragraph has an independend indent relative to first_column_width.

- The indent is set as the position of the last tab ('\t') in a paragraph,
other tabs are ignored.
IMHO multiple indents per paragraph make no sens.

- Additionally a first line indent can be simulated with spaces (' ') at
the paragraph beginning.

So the following code ...
-----------------------------------------------
po::options_description options("Options");

("help", "a long help msg a long help msg a long help msg a long help
msg a long help msg a long help msg a long help msg a long help msg ")

("well_formated", "As you can see this is a very well formatted
option description.\n"
"You can do this for example:\n\n"
"Values:\n"
" Value1: \tdoes this and that, bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla\n"
" Value2: \tdoes something else, bla bla bla bla
bla bla bla bla bla bla bla bla bla bla bla\n\n"
" This paragraph has a first line indent only,
bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla")
;

std::cout << options << "\n";

-----------------------------------------------

... gives this output (formatted for 50 char per line)
-----------------------------------------------
Options:
--help a long help msg a long
help msg a long help msg
a long help msg a long
help msg a long help msg
a long help msg a long
help msg
--well_formated As you can see this is a
very well formatted
option description.
You can do this for
example:

Values:
Value1: does this and
that, bla bla
bla bla bla bla
bla bla bla bla
bla bla bla bla
bla
Value2: does something
else, bla bla
bla bla bla bla
bla bla bla bla
bla bla bla bla
bla

This paragraph has a
first line indent only,
bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla
-----------------------------------------------