OSDN Git Service

"uniq" is now togglable
authorHiraoka <khi@users.osdn.me>
Mon, 15 Aug 2022 11:25:31 +0000 (20:25 +0900)
committerHiraoka <khi@users.osdn.me>
Mon, 15 Aug 2022 11:25:31 +0000 (20:25 +0900)
ChangeLog
howm-view.el

index a061edd..295e7d1 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2022-08-15  HIRAOKA Kazuyuki  <khi@users.osdn.me>
 
+       * howm-view.el (howm-view-toggle-uniq): "uniq" is now togglable
+       thx > Andrei Sukhovskii san (qejep at posteo.net)
+
+2022-08-15  HIRAOKA Kazuyuki  <khi@users.osdn.me>
+
        * howm-view.el (howm-view-filter-methods): revive "uniq" after "f" (filter)
        thx > Andrei Sukhovskii san (qejep at posteo.net)
 
index b9eaf0e..e0c9b88 100644 (file)
@@ -582,9 +582,17 @@ But I'm not sure for multi-byte characters on other versions of emacsen."
                                    table nil t)))
     (call-interactively (cdr (assoc command table)))))
 
-(defun howm-view-filter-uniq ()
+(defalias 'howm-view-filter-uniq #'howm-view-toggle-uniq)
+(defvar howm-view-uniq-previous nil)
+(make-variable-buffer-local 'howm-view-uniq-previous)
+(defun howm-view-toggle-uniq ()
   (interactive)
-  (howm-view-filter-doit #'howm-filter-items-uniq))
+  (if howm-view-uniq-previous
+      (let ((prev howm-view-uniq-previous))
+        (setq howm-view-uniq-previous nil)
+        (howm-view-summary-rebuild prev))
+    (setq howm-view-uniq-previous (howm-view-item-list))
+    (howm-view-filter-doit #'howm-filter-items-uniq)))
 
 (defun howm-view-filter-by-name (&optional remove-p regexp)
   (interactive "P")