emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[nongnu] elpa/workroom 497c04d666 15/74: Make lighter customizable


From: ELPA Syncer
Subject: [nongnu] elpa/workroom 497c04d666 15/74: Make lighter customizable
Date: Sun, 27 Nov 2022 16:03:18 -0500 (EST)

branch: elpa/workroom
commit 497c04d666c28662b359d6a6e4a9f0f9e20531e2
Author: Akib Azmain Turja <akib@disroot.org>
Commit: Akib Azmain Turja <akib@disroot.org>

    Make lighter customizable
---
 workroom.el | 40 ++++++++++++++++++++++------------------
 1 file changed, 22 insertions(+), 18 deletions(-)

diff --git a/workroom.el b/workroom.el
index b8fdcd1d4b..4e045f50f5 100644
--- a/workroom.el
+++ b/workroom.el
@@ -123,6 +123,27 @@ can't restored."
                             (const :decoder)
                             (function :tag "Decoder function"))))
 
+(defcustom workroom-mode-lighter
+  '(" WR["
+    (:eval (propertize (workroom-name (workroom-current-room)) 'face
+                       (if (member (current-buffer)
+                                   (workroom-buffer-list
+                                    (workroom-current-room)))
+                           'compilation-info
+                         'warning)))
+    "]["
+    (:eval (propertize (workroom-view-name (workroom-current-view)) 'face
+                       (if (member (current-buffer)
+                                   (workroom-buffer-list
+                                    (workroom-current-room)))
+                           'compilation-info
+                         'warning)))
+    "]")
+  "Format of Workroom mode lighter.
+
+The value is a mode line terminal like `mode-line-format'."
+  :type 'sexp)
+
 (cl-defstruct workroom
   "Structure for workroom."
   (name nil
@@ -134,8 +155,6 @@ can't restored."
   (buffers nil
            :documentation "Buffers of the workroom.")
   (default-p nil
-
-    ;; Why this line is indented like this?
     :documentation "Whether the workroom is the default one.")
   (previous-view-list nil
                       :documentation "List of previously selected views.")
@@ -920,22 +939,7 @@ When prefix arg is given, don't restrict." fn)
 ;;;###autoload
 (define-minor-mode workroom-mode
   "Toggle workroom mode."
-  :lighter (" WR["
-            (:eval (propertize (workroom-name (workroom-current-room))
-                               'face (if  (member
-                                           (current-buffer)
-                                           (workroom-buffer-list
-                                            (workroom-current-room)))
-                                         'compilation-info
-                                       'warning)))
-            "]["
-            (:eval (propertize (workroom-view-name (workroom-current-view))
-                               'face (if (member
-                                          (current-buffer)
-                                          (workroom-buffer-list
-                                           (workroom-current-room)))
-                                         'compilation-info
-                                       'warning))) "]")
+  :lighter (:eval workroom-mode-lighter) ; TODO: Why the `:eval' is needed?
   :global t
   (substitute-key-definition 'workroom-command-map nil workroom-mode-map)
   (define-key workroom-mode-map workroom-command-map-prefix



reply via email to

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