X-Git-Url: http://47.100.26.94:8080/?a=blobdiff_plain;f=emacs.d%2Fconfig%2Finit-color-theme.el;h=8d72ee7d437b45b38de5ae9b64fda53486eb1b02;hb=e7af859680234fffcca12b24158ab6a47bb7a66d;hp=0e4333de090dc72338b9f302c255a8af7f67d91b;hpb=09a27f206951958452a9232ca26a169823c4af1d;p=dotfiles.git diff --git a/emacs.d/config/init-color-theme.el b/emacs.d/config/init-color-theme.el index 0e4333d..8d72ee7 100644 --- a/emacs.d/config/init-color-theme.el +++ b/emacs.d/config/init-color-theme.el @@ -1,33 +1,280 @@ -;(load-theme 'tango-dark) + +;(setq display-time-day-and-date t) +;(display-time-mode t) + + +(setq ns-use-srgb-colorspace nil) (require 'color-theme) -(load-theme 'sanityinc-tomorrow-bright t) -;(require 'moe-theme) -;(moe-dark) +(load-theme 'cyberpunk t) -(add-to-list 'load-path "~/.emacs.d/vendor/emacs-powerline") +(require 'evil) (require 'powerline) -;(setq powerline-arrow-shape 'arrow14) ;; best for small fonts +;(require 'powerline-evil) + + + +;(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)) + +(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 :family "Source Code Pro for Powerline" :height 0.8)))) + '(mode-line-inactive ((t (:foreground "#f9f9f9" :background "#666666" :box nil :family "Source Code Pro for Powerline" :height 0.8))))) + +(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 :inherit mode-line))) + "Powerline face 1." + :group 'powerline) + +(defface powerline-active11 '((t (:background "grey22" :inherit mode-line))) + "Powerline face 1." + :group 'powerline) + +(defface powerline-active22 '((t (:background "grey40" :inherit mode-line))) + "Powerline face 2." + :group 'powerline) + +(defface powerline-inactive11 '((t (:background "grey11" :inherit mode-line))) + "Powerline face 1." + :group 'powerline) + +(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" :inherit mode-line))) + "Powerline face 1." + :group 'powerline) + +(defface powerline-active-blue '((t (:background "blue" :inherit mode-line))) + "Powerline face 1." + :group 'powerline) + +;;;---------------- evil powerline +; 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 :inherit mode-line))) + "Base face for powerline evil faces." + :group 'powerline) + +(defface powerline-evil-normal-face '((t (:background "green" :inherit powerline-evil-base-face))) + "Powerline face for evil NORMAL state." + :group 'powerline) + +(defface powerline-evil-insert-face '((t (:background "blue" :inherit powerline-evil-base-face))) + "Powerline face for evil INSERT state." + :group 'powerline) + +(defface powerline-evil-visual-face '((t (:background "orange" :inherit powerline-evil-base-face))) + "Powerline face for evil VISUAL state." + :group 'powerline) + +(defface powerline-evil-operator-face '((t (:background "cyan" :inherit powerline-evil-base-face))) + "Powerline face for evil OPERATOR state." + :group 'powerline) + +(defface powerline-evil-replace-face '((t (:background "red" :inherit powerline-evil-base-face))) + "Powerline face for evil REPLACE state." + :group 'powerline) + +(defface powerline-evil-motion-face '((t (:background "magenta" :inherit powerline-evil-base-face))) + "Powerline face for evil MOTION state." + :group 'powerline) + +(defface powerline-evil-emacs-face '((t (:background "violet" :inherit powerline-evil-base-face))) + "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))) +;; -;(require 'smart-mode-line) -;; These two lines are just examples -;(setq powerline-arrow-shape 'curve) -;(setq powerline-default-separator-dir '(right . left)) -;; These two lines you really need. -;(setq sml/theme 'powerline) -;(sml/setup) -;(if after-init-time (sml/setup) -; (add-hook 'after-init-hook 'sml/setup)) + (defun powerline-evil-face (active) + (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))) " ")) -;;--------------------------------------------------------------------------------------- -;; powerline + + + + +;; +;;http://emacser.com/mode-line.htm +(defun get-lines-4-mode-line () + (let ((lines (count-lines (point-min) (point-max)))) + (concat (propertize + (format "%d" lines) + 'mouse-face 'mode-line-highlight + 'face 'mode-line-lines-face + 'help-echo (format "%d lines" lines)) " "))) + + + +(defun powerline-simpler-vc-mode (s) + (if s + (replace-regexp-in-string "Git:" "" s) + s)) + +(defun powerline-simpler-minor-display (s) + (replace-regexp-in-string + (concat " " + (mapconcat 'identity '("Undo-Tree" "GitGutter" "Projectile" + "Abbrev" "ColorIds" "MRev" "ElDoc" "Paredit" + "+1" "+2" "FlyC" "Fly" ;; ":1/0" + "Fill" "AC" "FIC") "\\|")) "" s)) + +(defun powerline-format-default-directory (s) + (if s + (replace-regexp-in-string "/Users/peli3/" "~/" s) + s)) + +(defun powerline-evil-tag-new () + (concat (replace-regexp-in-string "[<>]" "" (powerline-evil-tag)) " ") + ) + +(defun powerline-ha-theme () + "A powerline theme that removes many minor-modes that don't serve much purpose on the mode-line." + (interactive) + (setq-default mode-line-format + '("%e" + (:eval + (let* + ((active + (powerline-selected-window-active)) + (mode-line + (if active 'powerline-active00 'powerline-inactive00)) + (face1 + (if active 'powerline-active11 'powerline-inactive11)) + (face2 + (if active 'powerline-active22 'powerline-inactive22)) + (face-yel + (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))) + (separator-left + (intern + (format "powerline-%s-%s" powerline-default-separator + (car powerline-default-separator-dir)))) + (separator-right + (intern + (format "powerline-%s-%s" powerline-default-separator + (cdr powerline-default-separator-dir)))) + (lhs + (list +;; (let ((evil-face (powerline-evil-face))) +;; (if evil-mode +;; (powerline-raw (powerline-evil-tag) evil-face) +;; ) ;; +;; ) + (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)) +;; (funcall separator-left (powerline-evil-face) face-yel) + + (powerline-raw "%*" face-yel 'l) + (powerline-buffer-id face-yel 'l) + (powerline-raw " " face-yel) + (funcall separator-left face-yel face-blue ) + (powerline-raw " " face-blue) + (powerline-major-mode face-blue 'r) + (funcall separator-left face-blue mode-line) + (powerline-narrow mode-line 'l) +; (powerline-vc mode-line 'r) + (powerline-simpler-vc-mode (powerline-vc mode-line 'r)) + (funcall separator-left mode-line face1))) +; (powerline-simpler-vc-mode (powerline-vc face2)))) + + (rhs + (list + (funcall separator-right face1 mode-line) + (powerline-raw (concat "%3c, %l/" (format "%d" (count-lines (point-min) (point-max))) " %4p ") 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))) + (center + (list + (powerline-raw " " face1) + (funcall separator-left face1 face2) + (when + (boundp 'erc-modified-channels-object) + (powerline-raw erc-modified-channels-object face2 'l)) + (powerline-major-mode face2 'l) + (powerline-process face2) + (powerline-raw " :" face2) + + (powerline-simpler-minor-display (powerline-minor-modes face2 'l)) + + (powerline-raw " " face2) + (funcall separator-right face2 face1)))) + + + (concat + (powerline-render lhs) + (powerline-fill face1 + (powerline-width rhs)) + (powerline-render rhs)) + ); let + ); :eval + ); '( + ); setq + ); defun + + +(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)) + -;;;;(require 'powerline) -;;;;(powerline-evil-center-color-theme) -;(powerline-evil-vim-color-theme) (provide 'init-color-theme) + + + +;; TODO +;; 1. change color when buffer is modified +;; 2. +;; show date and time in the right below minibuffer +