method string_of_list l =
let l = List.sort compare l in
let (w,_) = get_size_chars view in
let max = List.fold_left
(fun acc s -> max acc (String.length s))
0
l
in
let max = max + 3 in
let nb = w / max in
let nb = if nb <= 0 then 1 else nb in
let b = Buffer.create 256 in
let rec iter m = function
[] ->
if m <> 0 then Buffer.add_char b '\n';
Buffer.contents b
| s :: q ->
Buffer.add_string b (fill_string max s);
let m = (m + 1) mod nb in
if m = 0 then Buffer.add_char b '\n';
iter m q
in
iter 0 l