emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 6568a9a0099: Add option gnus-mode-line-logo


From: Eric Abrahamsen
Subject: master 6568a9a0099: Add option gnus-mode-line-logo
Date: Fri, 9 Feb 2024 22:52:40 -0500 (EST)

branch: master
commit 6568a9a0099e7745bfd142a0fd16b4d7215c0250
Author: Mekeor Melire <mekeor@posteo.de>
Commit: Eric Abrahamsen <eric@ericabrahamsen.net>

    Add option gnus-mode-line-logo
    
    * lisp/gnus/gnus.el (gnus-mode-line-logo): New option specifying
    whether and which logo will be displayed in the mode-line.
    * etc/NEWS: Announce the change.
---
 etc/NEWS          |  5 +++++
 lisp/gnus/gnus.el | 29 ++++++++++++++++++++---------
 2 files changed, 25 insertions(+), 9 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index 4d3c652aebc..76862bf500d 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -1102,6 +1102,11 @@ The gmane.org website is, sadly, down since a number of 
years with no
 prospect of it coming back.  Therefore, it is no longer valid to set
 the user option 'nnweb-type' to 'gmane'.
 
+*** New user option 'gnus-mode-line-logo'.
+This allows the user to either disable the display of any logo or
+specify which logo will be displayed as part of the
+buffer-identification in the mode-line of Gnus-buffers.
+
 ** Rmail
 
 ---
diff --git a/lisp/gnus/gnus.el b/lisp/gnus/gnus.el
index 99833e4eeca..cf4c3f7841c 100644
--- a/lisp/gnus/gnus.el
+++ b/lisp/gnus/gnus.el
@@ -309,12 +309,30 @@ be set in `.emacs' instead."
   :group 'gnus-start
   :type 'boolean)
 
+(defcustom gnus-mode-line-logo
+  '((:type svg :file "gnus-pointer.svg" :ascent center)
+     (:type xpm :file "gnus-pointer.xpm" :ascent center)
+     (:type xbm :file "gnus-pointer.xbm" :ascent center))
+  "Gnus logo displayed in mode-line.
+
+If non-nil, it should be a list of image specifications that will be
+given as first argument to `find-image', which see.  Then, in case of a
+graphical display, the specified Gnus logo will be displayed as part of
+the buffer-identification in the mode-line of Gnus-buffers.
+
+If nil, no logo will be displayed."
+  :group 'gnus-visual
+  :type '(choice
+           (repeat :tag "List of image specifications" (plist))
+           (const :tag "No logo" nil)))
+
 (defun gnus-mode-line-buffer-identification (line)
   (let* ((str (car-safe line))
          (str (if (stringp str)
                   (car (propertized-buffer-identification str))
                 str)))
-    (if (or (not (fboundp 'find-image))
+    (if (or (not gnus-mode-line-logo)
+            (not (fboundp 'find-image))
            (not (display-graphic-p))
            (not (stringp str))
            (not (string-match "^Gnus:" str)))
@@ -325,14 +343,7 @@ be set in `.emacs' instead."
        (add-text-properties
         0 5
         (list 'display
-              (find-image
-               '((:type svg :file "gnus-pointer.svg"
-                         :ascent center)
-                  (:type xpm :file "gnus-pointer.xpm"
-                        :ascent center)
-                 (:type xbm :file "gnus-pointer.xbm"
-                        :ascent center))
-               t)
+              (find-image gnus-mode-line-logo t)
               'help-echo (if gnus-emacs-version
                               (format
                               "This is %s, %s."



reply via email to

[Prev in Thread] Current Thread [Next in Thread]