diff --git a/loopy/kernel/tools.py b/loopy/kernel/tools.py index b1c0ecfb04ea77499ebbc27533f38e6b2e869bf8..2033425236836ecf000d6c341c46dcb8b087a29a 100644 --- a/loopy/kernel/tools.py +++ b/loopy/kernel/tools.py @@ -1341,17 +1341,30 @@ def draw_dependencies_as_unicode_arrows( uniform_length = min(n_columns[0], max_columns) + added_ellipsis = [False] + def conform_to_uniform_length(s): if len(s) <= uniform_length: - return s + " "*(uniform_length+1-len(s)) + return s + " "*(uniform_length-len(s)) else: + added_ellipsis[0] = True return s[:uniform_length] + u"…" - return [ + rows = [ (conform_to_uniform_length(row), conform_to_uniform_length(extender)) for row, extender in rows] + if added_ellipsis[0]: + uniform_length += 1 + + rows = [ + (conform_to_uniform_length(row), + conform_to_uniform_length(extender)) + for row, extender in rows] + + return rows + # }}} # vim: foldmethod=marker