From b7cbb2d58cab74eb6137ad05d64466b249cbadf4 Mon Sep 17 00:00:00 2001 From: Daniel Semyonov Date: Tue, 2 Jul 2024 01:42:26 +0300 Subject: [PATCH] nnfeed: (Mostly) fix group descriptions * lisp/gnus/nnfeed.el (nnfeed--group-description): New function. (nnfeed-request-group-description) (nnfeed-request-list-newsgroups): Use `nnfeed--group-description' and always return t if group data is found. --- lisp/gnus/nnfeed.el | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/lisp/gnus/nnfeed.el b/lisp/gnus/nnfeed.el index d6963b2e929..2d33d4c813b 100644 --- a/lisp/gnus/nnfeed.el +++ b/lisp/gnus/nnfeed.el @@ -630,12 +630,21 @@ nnfeed-retrieve-groups (deffoo nnfeed-request-type (_group &optional _article) 'unknown) +;; FIXME: Works incorrectly when a group name contains spaces as Gnus actually +;; separates the group name from the description with either a tab or a space. +(defun nnfeed--group-description (name group) + "Return a description line for a GROUP called NAME." + (when-let ((desc (aref group 5)) + ((not (string-blank-p desc)))) + (insert name "\t" desc "\n"))) + (deffoo nnfeed-request-group-description (group &optional server) (when-let ((server (or server (nnfeed--current-server-no-prefix))) (g (nnfeed--group-data group server))) (with-current-buffer nntp-server-buffer (erase-buffer) - (insert group " " (aref g 5) "\n")))) + (nnfeed--group-description group g) + t))) (deffoo nnfeed-request-list-newsgroups (&optional server) (when-let ((server (or server (nnfeed--current-server-no-prefix))) @@ -643,9 +652,8 @@ nnfeed-request-list-newsgroups ((hash-table-p s))) (with-current-buffer nntp-server-buffer (erase-buffer) - (maphash (lambda (group g) - (insert group " " (aref g 5) "\n")) - s)))) + (maphash #'nnfeed--group-description s) + t))) (deffoo nnfeed-request-rename-group (group new-name &optional server) (when-let ((server (or server (nnfeed--current-server-no-prefix))) -- 2.45.2