8205bca1c4bf55afd128568cb03ce8d0a09f35e4
[dotfiles.git] / emacs.d / config / init-color-theme.el
1
2
3 ;(setq display-time-day-and-date t)
4 ;(display-time-mode t)
5
6
7 (setq ns-use-srgb-colorspace nil)
8
9 (require 'color-theme)
10 ;(load-theme 'tango-dark)
11 ;(require 'moe-theme)
12 ;(moe-dark)
13
14
15 ;(add-to-list 'custom-theme-load-path "~/.emacs.d/el-get/color-theme-tangotango")
16 ;(load-theme 'tangotango t)
17 (load-theme 'cyberpunk t)
18
19 ;(require 'color-theme-sanityinc-tomorrow)
20 ;(color-theme-sanityinc-tomorrow-bright)
21
22
23
24 ;(add-to-list 'load-path "~/.emacs.d/vendor/emacs-powerline")
25 (require 'powerline)
26 (powerline-default-theme)
27
28
29
30
31
32
33 ;; https://github.com/howardabrams/dot-files/blob/master/emacs-mode-line.org
34 (custom-set-faces
35  '(mode-line-buffer-id ((t (:foreground "#008000" :bold t))))
36  '(which-func ((t (:foreground "#008000"))))
37  '(mode-line ((t (:foreground "#008000" :background "#dddddd" :box nil))))
38  '(mode-line-inactive ((t (:foreground "#008000" :background "#bbbbbb" :box nil)))))
39
40
41 (defun powerline-simpler-vc-mode (s)
42   (if s
43       (replace-regexp-in-string "Git:" "" s)
44     s))
45
46 (defun powerline-simpler-minor-display (s)
47   (replace-regexp-in-string
48    (concat " "
49            (mapconcat 'identity '("Undo-Tree" "GitGutter" "Projectile"
50                                   "Abbrev" "ColorIds" "MRev" "ElDoc" "Paredit"
51                                   "+1" "+2" "FlyC" "Fly" ;; ":1/0"
52                                   "Fill" "AC" "FIC") "\\|")) "" s))
53
54 (defun powerline-ha-theme ()
55   "A powerline theme that removes many minor-modes that don't serve much purpose on the mode-line."
56   (interactive)
57   (setq-default mode-line-format
58                 '("%e"
59                   (:eval
60                    (let*
61                        ((active
62                          (powerline-selected-window-active))
63                         (mode-line
64                          (if active 'mode-line 'mode-line-inactive))
65                         (face1
66                          (if active 'powerline-active1 'powerline-inactive1))
67                         (face2
68                          (if active 'powerline-active2 'powerline-inactive2))
69                         (separator-left
70                          (intern
71                           (format "powerline-%s-%s" powerline-default-separator
72                                   (car powerline-default-separator-dir))))
73                         (separator-right
74                          (intern
75                           (format "powerline-%s-%s" powerline-default-separator
76                                   (cdr powerline-default-separator-dir))))
77                         (lhs
78                          (list
79                           (powerline-raw "%*" nil 'l)
80                           ;; (powerline-buffer-size nil 'l)
81                           (powerline-buffer-id nil 'l)
82                           (powerline-raw " ")
83                           (funcall separator-left mode-line face1)
84                           (powerline-narrow face1 'l)
85                           (powerline-simpler-vc-mode (powerline-vc face1))
86                           ))
87                         
88                         (rhs
89                          (list
90 ;                          (powerline-raw mode-line-misc-info face1 'r)
91                           (powerline-raw global-mode-string face1 'r)
92                           (funcall separator-right face1 mode-line)
93                           (powerline-raw '(:eval (propertize (format-time-string " %Y-%m-%d %I:%M %p %a")
94                                                              'help-echo
95                                                              (concat (format-time-string "%c; ")
96                                                                      (emacs-uptime "Uptime:%hh")))) nil)
97                                          
98                           (powerline-raw "%3c" nil)
99                           (powerline-raw "," nil 'r)
100                           (powerline-raw "%l" nil )
101                           (powerline-raw "/" nil )
102                           (powerline-raw '(:eval (get-lines-4-mode-line)) nil 'r)
103                           (powerline-raw " ")
104                           (powerline-raw "%4p" nil)
105 ;                         (powerline-raw " ")
106                           ))
107                         (center
108                          (list
109                           (powerline-raw " " face1)
110                           (funcall separator-left face1 face2)
111                           (when
112                               (boundp 'erc-modified-channels-object)
113                             (powerline-raw erc-modified-channels-object face2 'l))
114                           (powerline-major-mode face2 'l)
115                           (powerline-process face2)
116                           (powerline-raw " :" face2)
117
118                           (powerline-simpler-minor-display (powerline-minor-modes face2 'l))
119
120                           (powerline-raw " " face2)
121                           (funcall separator-right face2 face1))))
122                      (concat
123                       (powerline-render lhs)
124                       (powerline-fill-center face1
125                                              (/
126                                               (powerline-width center)
127                                               2.0))
128                       (powerline-render center)
129                       (powerline-fill face1
130                                       (powerline-width rhs))
131                       (powerline-render rhs)))))))
132
133 ;;http://emacser.com/mode-line.htm
134 (defun get-lines-4-mode-line ()
135   (let ((lines (count-lines (point-min) (point-max))))
136     (concat (propertize
137              (format "%d" lines)
138              'mouse-face 'mode-line-highlight
139              'face 'mode-line-lines-face
140              'help-echo (format "%d lines" lines)) " ")))
141  
142
143
144 (powerline-ha-theme)
145
146
147
148
149 (provide 'init-color-theme)