From 9eabfab7318163b0df88d24d9f474a23d8928be2 Mon Sep 17 00:00:00 2001 From: "flavien.peyre" Date: Wed, 3 Jun 2015 14:51:10 -0400 Subject: [PATCH] Change console layout to write on 80 char per line Change-Id: I34ec63d82fc70f650b1131ad54421b3eaa95d18d --- surveilclient/common/utils.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/surveilclient/common/utils.py b/surveilclient/common/utils.py index fde19f2..3e7c59f 100644 --- a/surveilclient/common/utils.py +++ b/surveilclient/common/utils.py @@ -65,9 +65,23 @@ def print_item(objs, properties): ] """ Override the properties keys pass in parameter """ + + len_property_max=0 + for property in properties: + if len(property) > len_property_max: + len_property_max = len(property) + + # 80 char per line - 7 char (space or | ) + len_available = 73 - len_property_max list = [] - for value in properties: - list.append({'prop': value, 'value': objs[value].__str__()}) + + for property in properties: + val_lines = [] + for i in range(0, len(objs[property].__str__()), len_available): + val_lines.append(objs[property].__str__()[i:i+len_available]) + + val_lines ='\n'.join(val_lines) + list.append({'prop': property, 'value': val_lines}) formatters = { 'Property': lambda x: x['prop'],