25 std::vector<std::string> parts;
26 boost::split(parts, opt->get_description(), boost::is_any_of(
" "));
28 int characters_printed_in_line = 0;
29 std::string result =
"";
31 bool finish_with_new_line =
false;
33 for (
int i = 0; i < parts.size(); i++) {
34 std::string to_print = parts[i];
36 if (i < parts.size() - 1) {
40 if (characters_printed_in_line > 0 &&
41 characters_printed_in_line + to_print.length() >= 80 -
COLUMN_WIDTH) {
43 characters_printed_in_line = 0;
44 finish_with_new_line =
true;
48 characters_printed_in_line += to_print.length();
51 return result + (finish_with_new_line ?
"\n" :
"");