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

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

[elpa] externals/nano-modeline ce924479de 05/18: Moved dedcited/modified


From: ELPA Syncer
Subject: [elpa] externals/nano-modeline ce924479de 05/18: Moved dedcited/modified status at end of modeline.
Date: Thu, 12 May 2022 07:57:49 -0400 (EDT)

branch: externals/nano-modeline
commit ce924479de029c6c9f31f0dc3219ebbf51964523
Author: Nicolas P. Rougier <Nicolas.Rougier@inria.fr>
Commit: Nicolas P. Rougier <Nicolas.Rougier@inria.fr>

    Moved dedcited/modified status at end of modeline.
---
 nano-modeline.el | 214 ++++++++++---------------------------------------------
 1 file changed, 36 insertions(+), 178 deletions(-)

diff --git a/nano-modeline.el b/nano-modeline.el
index a0bc92597b..6c1c94595e 100644
--- a/nano-modeline.el
+++ b/nano-modeline.el
@@ -26,7 +26,7 @@
 ;;; Commentary:
 ;; 
 ;; Nano modeline is a minor mode that modify the modeline as:
-;; [ prefix | name (primary)                      secondary ]
+;; [ name (primary)                      secondary ]
 ;;
 ;; It can be displayed at the bottom (mode-line) or at the top (header-line)
 ;; depending on nano-modeline-position custom setting.
@@ -35,21 +35,9 @@
 ;; can be customized (M-x: customize-group + nano-modeline)
 ;;
 ;; - nano-modeline-active              / nano-modeline-inactive
-;;
 ;; - nano-modeline-active-name         / nano-modeline-inactive-name
-;; - nano-modeline-active-name-RW      / nano-modeline-inactive-name-RW
-;; - nano-modeline-active-name-RO      / nano-modeline-inactive-name-RO
-;; - nano-modeline-active-name-**      / nano-modeline-inactive-name-**
-;;
 ;; - nano-modeline-active-primary      / nano-modeline-inactive-primary
-;; - nano-modeline-active-primary-RW   / nano-modeline-inactive-primary-RW
-;; - nano-modeline-active-primary-RO   / nano-modeline-inactive-primary-RO
-;; - nano-modeline-active-primary-**   / nano-modeline-inactive-primary-**
-;;
 ;; - nano-modeline-active-secondary    / nano-modeline-inactive-secondary
-;; - nano-modeline-active-secondary-RW / nano-modeline-inactive-secondary-RW
-;; - nano-modeline-active-secondary-RO / nano-modeline-inactive-secondary-RO
-;; - nano-modeline-active-secondary-** / nano-modeline-inactive-secondary-**
 ;;
 ;; Usage example:
 ;;
@@ -59,7 +47,6 @@
 ;;
 ;; Version 0.7
 ;; - Removed prefix on the left (not too much informative)
-;; - Put back symbol as prefix for menu access
 ;;
 ;; Version 0.6
 ;; - Spaces have face that enforce active/inactive
@@ -145,61 +132,16 @@ Negative is downwards."
   "Modeline face for active name element (default)"
   :group 'nano-modeline-active)
 
-(defface nano-modeline-active-name-**
-  '((t (:inherit (nano-modeline-active-name warning))))
-  "Modeline face for active name element (modified)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-name-RW
-  '((t (:inherit (nano-modeline-active-name))))
-  "Modeline face for active name element (read-write)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-name-RO
-  '((t (:inherit (nano-modeline-active-name))))
-  "Modeline face for active name element (read-only)"
-  :group 'nano-modeline-active)
-
 (defface nano-modeline-active-primary
   '((t (:inherit nano-modeline-active)))
   "Modeline face for active primary element (default)"
   :group 'nano-modeline-active)
 
-(defface nano-modeline-active-primary-**
-  '((t (:inherit nano-modeline-active-primary)))
-  "Modeline face for active primary element (modified)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-primary-RW
-  '((t (:inherit nano-modeline-active-primary)))
-  "Modeline face for active primary element (read-write)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-primary-RO
-  '((t (:inherit nano-modeline-active-primary)))
-  "Modeline face for active primary element (read-only)"
-  :group 'nano-modeline-active)
-
 (defface nano-modeline-active-secondary
   '((t (:inherit (nano-modeline-active font-lock-comment-face))))
   "Modeline face for active secondary element"
   :group 'nano-modeline-active)
 
-(defface nano-modeline-active-secondary-**
-  '((t (:inherit nano-modeline-active-secondary)))
-  "Modeline face for active secondary element (modified)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-secondary-RW
-  '((t (:inherit nano-modeline-active-secondary)))
-  "Modeline face for active secondary element (read-write)"
-  :group 'nano-modeline-active)
-
-(defface nano-modeline-active-secondary-RO
-  '((t (:inherit nano-modeline-active-secondary)))
-  "Modeline face for active secondary element (read-only)"
-  :group 'nano-modeline-active)
-
 (defface nano-modeline-inactive
   '((t (:inherit (mode-line-inactive font-lock-comment-face))))
   "Modeline face for inactive window"
@@ -210,61 +152,16 @@ Negative is downwards."
   "Modeline face for inactive name element"
   :group 'nano-modeline-inactive)
 
-(defface nano-modeline-inactive-name-**
-  '((t (:inherit (warning nano-modeline-inactive-name))))
-  "Modeline face for inactive name element (modified)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-name-RW
-  '((t (:inherit nano-modeline-inactive-name)))
-  "Modeline face for inactive name element (read-write)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-name-RO
-  '((t (:inherit nano-modeline-inactive-name)))
-  "Modeline face for inactive name element (read-only)"
-  :group 'nano-modeline-inactive)
-
 (defface nano-modeline-inactive-primary
   '((t (:inherit nano-modeline-inactive)))
   "Modeline face for inactive primary element"
   :group 'nano-modeline-inactive)
 
-(defface nano-modeline-inactive-primary-**
-  '((t (:inherit nano-modeline-inactive-primary)))
-  "Modeline face for inactive primary element (modified)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-primary-RW
-  '((t (:inherit nano-modeline-inactive-primary)))
-  "Modeline face for inactive primary element (read-write)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-primary-RO
-  '((t (:inherit nano-modeline-inactive-primary)))
-  "Modeline face for inactive primary element (read-only)"
-  :group 'nano-modeline-inactive)
-
 (defface nano-modeline-inactive-secondary
   '((t (:inherit nano-modeline-inactive)))
   "Modeline face for inactive primary element"
   :group 'nano-modeline-inactive)
 
-(defface nano-modeline-inactive-secondary-**
-  '((t (:inherit nano-modeline-inactive-secondary)))
-  "Modeline face for inactive primary element (modified)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-secondary-RW
-  '((t (:inherit nano-modeline-inactive-secondary)))
-  "Modeline face for inactive primary element (read-write)"
-  :group 'nano-modeline-inactive)
-
-(defface nano-modeline-inactive-secondary-RO
-  '((t (:inherit nano-modeline-inactive-secondary)))
-  "Modeline face for inactive primary element (read-only)"
-  :group 'nano-modeline-inactive)
-
 
 (defcustom nano-modeline-mode-formats
   '(;; with :mode-p first
@@ -418,7 +315,7 @@ KEY mode name, for reference only. Easier to do lookups 
and/or replacements.
       (setq output (concat "…/" output)))
     output))
 
-;; ---------------------------------------------------------------------
+
 (defun nano-modeline-status ()
   "Return buffer status, one of 'read-only, 'modified or 'read-write."
 
@@ -433,7 +330,6 @@ KEY mode name, for reference only. Easier to do lookups 
and/or replacements.
 
   (let* ((window (get-buffer-window (current-buffer)))
          (name-max-width (- (window-body-width) 1
-                            (length prefix)     1
                             (length primary)    5
                             (length secondary)  1))
          (name (if (and (stringp name) (> (length name) name-max-width))
@@ -441,78 +337,40 @@ KEY mode name, for reference only. Easier to do lookups 
and/or replacements.
                  name))
          (status (or status (nano-modeline-status)))
          (active (eq window nano-modeline--selected-window))
-         (face-modeline nil)
-         (face-name nil)
-         (face-primary nil)
-         (face-secondary nil))
-
-    (when active
-      (setq face-modeline 'nano-modeline-active)
-      (cond ((eq status 'read-write)
-             (setq face-name      'nano-modeline-active-name-RW
-                   face-primary   'nano-modeline-active-primary-RW
-                   face-secondary 'nano-modeline-active-secondary-RW))
-            ((eq status 'read-only)
-             (setq face-name      'nano-modeline-active-name-RO
-                   face-primary   'nano-modeline-active-primary-RO
-                   face-secondary 'nano-modeline-active-secondary-RO))
-            ((eq status 'modified)
-             (setq face-name      'nano-modeline-active-name-**
-                   face-primary   'nano-modeline-active-primary-**
-                   face-secondary 'nano-modeline-active-secondary-**))
-            (t
-             (setq face-name      'nano-modeline-active-name
-                   face-primary   'nano-modeline-active-primary
-                   face-secondary 'nano-modeline-active-secondary))))
-
-    (when (not active)
-      (setq face-modeline 'nano-modeline-inactive)
-      (cond ((eq status 'read-write)
-             (setq face-name      'nano-modeline-inactive-name-RW
-                   face-primary   'nano-modeline-inactive-primary-RW
-                   face-secondary 'nano-modeline-inactive-secondary-RW))
-            ((eq status 'read-only)
-             (setq face-name      'nano-modeline-inactive-name-RO
-                   face-primary   'nano-modeline-inactive-primary-RO
-                   face-secondary 'nano-modeline-inactive-secondary-RO))
-            ((eq status 'modified)
-             (setq face-name      'nano-modeline-inactive-name-**
-                   face-primary   'nano-modeline-inactive-primary-**
-                   face-secondary 'nano-modeline-inactive-secondary-**))
-            (t
-             (setq face-name      'nano-modeline-inactive-name
-                   face-primary   'nano-modeline-inactive-primary
-                   face-secondary 'nano-modeline-inactive-secondary))))
-
-    (let* ((left (concat
-                  (if (window-dedicated-p)
-                      (propertize " "
-                                  'face `(:height 0.25
-                                          :background
-                              ,(face-foreground face-name nil 'default))))
-                  (propertize " "  'face face-modeline
-                                   'display `(raise ,nano-modeline-space-top))
-;;                  (propertize "☰ " 'face `(:inherit ,face-name
-;;                                                    :weight regular))
-                  (propertize "☰ "
-                              'face `(:inherit ,face-name :weight regular)
-                              'help-echo "Mode(s) menu"
-                              'mouse-face 'mode-line-highlight
-                              'local-map mode-line-major-mode-keymap)
-                  
-                  (propertize name 'face face-name)
-                  (if (length name)
-                      (propertize " " 'face face-modeline))
-                  (propertize primary 'face face-primary)))
-           (right (concat (propertize secondary 'face face-secondary)
-                          (propertize " "  'face face-modeline
-                                           'display `(raise 
,nano-modeline-space-bottom))))
-              (right-len (length (format-mode-line right))))
-      (concat
-       left 
-       (propertize " "  'face face-modeline
-                        'display `(space :align-to (- right ,(- right-len 0))))
-       right))))
+         (face-modeline (if active
+                            'nano-modeline-active
+                          'nano-modeline-inactive))
+         (face-name (if active
+                         'nano-modeline-active-name
+                       'nano-modeline-inactive-name))
+         (face-primary (if active
+                         'nano-modeline-active-primary
+                       'nano-modeline-inactive-primary))
+         (face-secondary (if active
+                         'nano-modeline-active-secondary
+                       'nano-modeline-inactive-secondary))
+
+         (left (concat
+                (propertize " "  'face `(:inherit ,face-modeline)
+                            'display `(raise ,nano-modeline-space-top))
+                (propertize name 'face face-name)
+               (if (length name)
+                    (propertize " " 'face face-modeline))
+               (propertize primary 'face face-primary)))
+         (right (concat
+                 (propertize secondary 'face face-secondary)
+                 (if (eq status 'modified)
+                     (propertize " [M]" 'face face-name)
+                   (if (window-dedicated-p)
+                       (propertize " [•]" 'face face-secondary)))
+                 (propertize " "  'face `(:inherit ,face-modeline)
+                                  'display `(raise 
,nano-modeline-space-bottom))))
+            (right-len (length (format-mode-line right))))
+    (concat
+     left 
+     (propertize " "  'face face-modeline
+                 'display `(space :align-to (- right ,(- right-len 0))))
+     right)))
 
 
 ;; ---------------------------------------------------------------------



reply via email to

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