Not a big deal, but here is a slightly better fix that avoids adding
some spaces before the closing }.

The difference wrt to the previous one is just:

-           (unless (memq (caar tbl) '(:endgroup :endgrouptag)) (insert "\n"))
-           (when (or ingroup intaggroup) (insert "  "))
+           (unless (memq (caar tbl) '(:endgroup :endgrouptag))
+             (insert "\n")
+             (when (or ingroup intaggroup) (insert "  ")))

That is, the when clause is inside the unless clause.
From 49775847f6db729dfb726ac098cc8039fceb9346 Mon Sep 17 00:00:00 2001
From: memeplex <carlosjosep...@gmail.com>
Date: Tue, 12 Feb 2019 17:49:40 -0300
Subject: [PATCH] org: Fix fast tag selection menu alignment

* lisp/org.el (org-fast-tag-selection):
  - Avoid lines with just a closing delimiter.
  - Correctly align grouped and ungrouped tags.
---
 lisp/org.el | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/lisp/org.el b/lisp/org.el
index e2258749b..003058434 100644
--- a/lisp/org.el
+++ b/lisp/org.el
@@ -14502,13 +14502,14 @@ Returns the new tags string, or nil to not change the current settings."
 	  			   ((member tg inherited) i-face))))
 	  (when (equal (caar tbl) :grouptags)
 	    (org-add-props tg nil 'face 'org-tag-group))
-	  (when (and (zerop cnt) (not ingroup) (not intaggroup)) (insert " "))
+	  (when (and (zerop cnt) (not ingroup) (not intaggroup)) (insert "  "))
 	  (insert "[" c "] " tg (make-string
 				 (- fwidth 4 (length tg)) ?\ ))
 	  (push (cons tg c) ntable)
 	  (when (= (cl-incf cnt) ncol)
-	    (insert "\n")
-	    (when (or ingroup intaggroup) (insert " "))
+	    (unless (memq (caar tbl) '(:endgroup :endgrouptag))
+	      (insert "\n")
+	      (when (or ingroup intaggroup) (insert "  ")))
 	    (setq cnt 0)))))
       (setq ntable (nreverse ntable))
       (insert "\n")
-- 
2.20.1

Reply via email to