X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig%2Finit-color-theme.el;h=883e802677fa28d59d9ed471a4bbc9c9d3b1b6eb;hb=8300675f36f1b4caad5288c05d47ad4fdb5bd44b;hp=4d105bd71781b59a28cbd0d97494cb907ea4d4b0;hpb=6fad426907b09158bb24669a7c8477907889a925;p=dotfiles.git diff --git a/emacs.d/config/init-color-theme.el b/emacs.d/config/init-color-theme.el index 4d105bd..883e802 100644 --- a/emacs.d/config/init-color-theme.el +++ b/emacs.d/config/init-color-theme.el @@ -16,46 +16,51 @@ +;(set-face-attribute 'mode-line nil :font "Source Code Pro for Powerline-10") + ;;; this variable should equal as height in mode-line (custom-set-variables - '(powerline-text-scale-factor 0.85)) + '(powerline-height 14) + '(powerline-text-scale-factor 0.85)) ;; 100/140 (custom-set-faces - '(mode-line ((t (:foreground "#030303" :background "#bdbdbd" :box nil :height 0.8 )))) - '(mode-line-inactive ((t (:foreground "#f9f9f9" :background "#666666" :box nil :height 0.8))))) - +;;; '(mode-line ((t (:foreground "#030303" :background "#bdbdbd" :box nil :height 0.8 )))) +;;; '(mode-line-inactive ((t (:foreground "#f9f9f9" :background "#666666" :box nil :height 0.8))))) + '(mode-line ((t (:foreground "#030303" :background "#bdbdbd" :box nil :family "Source Code Pro for Powerline" :height 100)))) +;; '(mode-line ((t (:foreground "#030303" :background "#bdbdbd" :box nil :family "Source Code Pro for Powerline" :height 80)))) + '(mode-line-inactive ((t (:foreground "#f9f9f9" :background "#666666" :box nil :family "Source Code Pro for Powerline" :height 100))))) -(defface powerline-active00 '((t (:foreground "#030303" :background "#bdbdbd" :box nil ))) +(defface powerline-active00 '((t (:foreground "#030303" :background "#bdbdbd" :box nil :inherit mode-line))) "Powerline face 1." :group 'powerline) -(defface powerline-inactive00 '((t (:foreground "#f9f9f9" :background "#666666" :box nil ))) +(defface powerline-inactive00 '((t (:foreground "#f9f9f9" :background "#666666" :box nil :inherit mode-line))) "Powerline face 1." :group 'powerline) -(defface powerline-active11 '((t (:background "grey22" ))) +(defface powerline-active11 '((t (:background "grey22" :inherit mode-line))) "Powerline face 1." :group 'powerline) -(defface powerline-active22 '((t (:background "grey40" ))) +(defface powerline-active22 '((t (:background "grey40" :inherit mode-line))) "Powerline face 2." :group 'powerline) -(defface powerline-inactive11 '((t (:background "grey11" ))) +(defface powerline-inactive11 '((t (:background "grey11" :inherit mode-line))) "Powerline face 1." :group 'powerline) -(defface powerline-inactive22 '((t (:background "grey20" ))) +(defface powerline-inactive22 '((t (:background "grey20" :inherit mode-line))) "Powerline face 2." :group 'powerline) ;(defface powerline-active-yel '((t (:background "yellow" :inherit mode-line))) -(defface powerline-active-yel '((t (:background "yellow" ))) +(defface powerline-active-yel '((t (:background "yellow" :inherit mode-line))) "Powerline face 1." :group 'powerline) -(defface powerline-active-blue '((t (:background "blue" ))) +(defface powerline-active-blue '((t (:background "blue" :inherit mode-line))) "Powerline face 1." :group 'powerline) @@ -63,7 +68,8 @@ ; https://github.com/raugturi/powerline-evil/blob/master/powerline-evil.el ; ;https://github.com/laynor/emacs-conf/blob/master/packages/sm-package-powerline.el ;(defface powerline-evil-base-face '((t (:foreground "white" :inherit mode-line))) -(defface powerline-evil-base-face '((t (:foreground "black" :weight bold ))) +;(defface powerline-evil-base-face '((t (:foreground "black" :weight bold ))) +(defface powerline-evil-base-face '((t (:foreground "black" :weight bold :inherit mode-line))) "Base face for powerline evil faces." :group 'powerline) @@ -79,7 +85,7 @@ "Powerline face for evil VISUAL state." :group 'powerline) -(defface powerline-evil-operator-face '((t (:background "cyan" :inherit powerline-evil-operator-face))) +(defface powerline-evil-operator-face '((t (:background "cyan" :inherit powerline-evil-base-face))) "Powerline face for evil OPERATOR state." :group 'powerline) @@ -95,18 +101,42 @@ "Powerline face for evil EMACS state." :group 'powerline) -;;(defun powerline-evil-face (active) -;; "Function to select appropriate face based on `evil-state'." -;; (let* ((face (intern (concat "powerline-evil-" (symbol-name evil-state) "-face")))) -;; (if (facep face) face nil))) -;; +(defun powerline-evil-face () + "Function to select appropriate face based on `evil-state'." + (let* ((face (intern (concat "powerline-evil-" (symbol-name evil-state) "-face")))) + (if (facep face) face nil))) + (defun powerline-evil-face (active) (let ((face (intern (concat "powerline-evil-" (symbol-name evil-state) "-face")))) (cond ((and active (facep face)) face) - (active 'powerline-active2) - (t 'powerline-inactive2)))) + (active 'powerline-active22) + (t 'powerline-inactive22)))) + + (defun powerline-evil-face-22 (active) + (if (equal (symbol-name evil-state) "normal") + + (let ((face (intern (concat "powerline-evil-emacs-face")))) + face) + + (let ((face (intern (concat "powerline-evil-normal-face")))) + face) + +;; (cond ((and active (facep face)) +;; face) +;; (active 'powerline-active22) +;; (t 'powerline-inactive22))) + +;;;; (let ((face (intern (concat "powerline-evil-" (symbol-name evil-state) "-face")))) +;;;; (cond ((and active (facep face)) +;;;; face) +;;;; (active 'powerline-active22) +;;;; (t 'powerline-inactive22))) + ) + ) + + (defpowerline powerline-evil-tag (concat " " (replace-regexp-in-string "[<> ]" "" (eval (evil-state-property evil-state :tag))) " ")) @@ -149,6 +179,21 @@ (concat (replace-regexp-in-string "[<>]" "" (powerline-evil-tag)) " ") ) +;; ----------------------------------------------------------------------------- + +;; ----------------------------------------------------------------------------- +;; |evil| buffer_name | major-mode | vc | | position | pwd | time | +;; ----------------------------------------------------------------------------- +;; +;; ToDo: +;; position and pwd only shows in some mode, such as programming mode +;; using workgroup instead of pwd +;; some other modes such as eshell, package, help, don't need the posittion and +;; pwd +;; + +;; ----------------------------------------------------------------------------- + (defun powerline-ha-theme () "A powerline theme that removes many minor-modes that don't serve much purpose on the mode-line." (interactive) @@ -168,7 +213,12 @@ (if active 'powerline-active-yel 'powerline-inactive22)) (face-blue (if active 'powerline-active-blue 'powerline-inactive22)) - (pl-evil-face (ignore-errors (powerline-evil-face active))) + (pl-evil-face (ignore-errors (powerline-evil-face active))) + (pppp-face + (intern (concat "powerline-evil-" (symbol-name evil-state) "-face"))) + + (face-yel22 + (if active 'powerline-active-yel 'powerline-inactive22)) (separator-left (intern (format "powerline-%s-%s" powerline-default-separator @@ -185,9 +235,11 @@ ;; ) ;; ;; ) - (powerline-raw (powerline-evil-tag) pl-evil-face ) - (and evil-mode (funcall separator-left pl-evil-face face-yel)) -;; (powerline-raw (powerline-evil-tag) (powerline-evil-face)) + (if evil-mode + (powerline-raw (powerline-evil-tag) pl-evil-face)) +;;; (and evil-mode (funcall separator-left pppp-face face-yel)) +;;;;;; (funcall separator-left pppp-face pppp-face) +;;;; (powerline-raw (powerline-evil-tag) pppp-face face-yel) ;; (funcall separator-left (powerline-evil-face) face-yel) (powerline-raw "%*" face-yel 'l) @@ -206,15 +258,17 @@ (rhs (list (funcall separator-right face1 mode-line) - (powerline-raw (concat "%3c, %l/" (format "%d" (count-lines (point-min) (point-max))) " %4p ") mode-line) + ;; position +;; (powerline-raw (concat " [" (powerline-format-default-directory default-directory) "] ") mode-line) + (powerline-raw (format " P:[%s] " (projectile-project-name)) mode-line) (funcall separator-right mode-line face-blue) - (powerline-raw " [" face-blue) - (powerline-raw (powerline-format-default-directory default-directory) face-blue ) - (powerline-raw "] " face-blue) - (funcall separator-right face-blue face1) - (powerline-raw (format-time-string " %m-%d") face1 'r) - (funcall separator-right face1 face-yel) - (powerline-raw (format-time-string " %I:%M %p %a ") face-yel 'r))) + ;; pwd/workgroups + (powerline-raw (concat "%3c, %l/" (format "%d" (count-lines (point-min) (point-max))) " %4p ") face-blue) +; (funcall separator-right face-blue face1) + ;; date and time +;;; (powerline-raw (format-time-string " %m-%d") face1 'r) + (funcall separator-right face-blue face-yel) + (powerline-raw (format-time-string " %I:%M %p %m-%d %a ") face-yel 'r))) (center (list (powerline-raw " " face1) @@ -246,6 +300,25 @@ (powerline-ha-theme) + + +;;(let ((faces '(mode-line +;; powerline-active00 +;; powerline-active11 +;; powerline-active22 +;; powerline-active-yel +;; powerline-active-blue +;; mode-line-buffer-id +;; mode-line-emphasis +;; mode-line-highlight +;; mode-line-inactive))) +;; (mapc +;;; (lambda (face) (set-face-attribute face nil :font "Source Code Pro for Powerline-10")) +;; (lambda (face) (set-face-attribute face nil :font "Courier")) +;; faces)) + + + (provide 'init-color-theme)