(t
4)))
-(defface my-powerline-hl-ws '((t (:background "red" :foreground "black" :inherit mode-line)))
+(defface my-powerline-hl-ws '((t (:background "blue" :foreground "black" :inherit mode-line)))
"My Powerline face 1 based on powerline-active1."
:group 'powerline)
(defun my-is-special-buffer ()
;; suppose all buffer name started with a star is a special buffer.
- (string-match "\*" (buffer-name))
- ;; (or (string-match "*scratch*" (buffer-name))
- ;; (string-match "*Message*" (buffer-name))
+ (string-match "\*" (buffer-name)))
- ;; (equal major-mode 'eshell-mode))
- )
-
-(defun my-get-buffer-name-face (active-face, changed-face, readonly-face)
- (cond ((and buffer-read-only (not (my-is-special-buffer)))
- readonly-face)
- ((and (buffer-modified-p) (not (my-is-special-buffer)))
- changed-face)
- (t active-face)))
+(defun my-get-buffer-name-face (orignal-face &optional active)
+ (cond
+ ((not active) orignal-face)
+ (buffer-read-only
+ 'sd/buffer-view-active1)
+ ((and (buffer-modified-p) (not (my-is-special-buffer)))
+ 'sd/buffer-modified-active1)
+ (t orignal-face)))
(defun sd/powerline-center-theme_revised-2 ()
"Setup a mode-line with major and minor modes centered."
(lhs (cond ((or (= window-type 1) (= window-type 2))
(my-build-left-below-mode-line separator-left lface face1))
((or (= window-type 3) (= window-type 6))
- (list (powerline-buffer-id lface 'l)
- (powerline-raw "%* " lface)
- (funcall separator-left lface face1 )))
+ (list (powerline-buffer-id (my-get-buffer-name-face lface active) 'l)
+ (unless (my-is-special-buffer)
+ (powerline-raw "%* " (my-get-buffer-name-face lface active)))
+ (funcall separator-left (my-get-buffer-name-face lface active) face1 )))
(t
nil)))
(center (cond ((or (= window-type 1) (= window-type 4))
(list (powerline-raw " " face1)
- (funcall separator-right face1 cface)
- (powerline-raw "%*" cface)
- (powerline-buffer-id cface 'r)
- (funcall separator-left cface face1)))
+ (funcall separator-right face1 (my-get-buffer-name-face cface active))
+ (unless (my-is-special-buffer)
+ (powerline-raw "%*" (my-get-buffer-name-face cface active)))
+ (powerline-buffer-id (my-get-buffer-name-face cface active) 'r)
+ (funcall separator-left (my-get-buffer-name-face cface active) face1)))
(t
nil)))
(rhs (cond ((or (= window-type 1) (= window-type 3))
- (list (funcall separator-right face1 rface)
+ (list (powerline-raw (format-time-string "%Y-%m-%d %a") face1 'r)
+ (funcall separator-right face1 rface)
(powerline-raw (format-time-string " %I:%M %p ") rface 'r)))
((or (= window-type 2) (= window-type 5))
- (list (funcall separator-right face1 rface)
- (powerline-raw "%*" rface)
- (powerline-buffer-id rface 'r)
- (powerline-raw " " rface)))
+ (list (funcall separator-right face1 (my-get-buffer-name-face rface active))
+ (unless (my-is-special-buffer)
+ (powerline-raw "%*" (my-get-buffer-name-face rface active)))
+ (powerline-buffer-id (my-get-buffer-name-face rface active) 'r)
+ (powerline-raw " " (my-get-buffer-name-face rface active))))
(t
nil))))
(concat (powerline-render lhs)
(sd/powerline-center-theme_revised-2)
+
+
+
(provide 'my-mode-line)
;;; my-mode-line.el ends here