From 6aa19cf6fe20cfb64abc594c330f0798a34e7c25 Mon Sep 17 00:00:00 2001
From: Andreas Kloeckner <inform@tiker.net>
Date: Wed, 22 Mar 2017 13:28:06 -0500
Subject: [PATCH] Add spacing in dep arrows only when ellipsis added

---
 loopy/kernel/tools.py | 17 +++++++++++++++--
 1 file changed, 15 insertions(+), 2 deletions(-)

diff --git a/loopy/kernel/tools.py b/loopy/kernel/tools.py
index b1c0ecfb0..203342523 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
-- 
GitLab