Update copyright notices for 2013.
[bpt/emacs.git] / etc / themes / tango-theme.el
CommitLineData
2919746c
CY
1;;; tango-theme.el --- Tango-based custom theme for faces
2
ab422c4d 3;; Copyright (C) 2010-2013 Free Software Foundation, Inc.
2c243704
CY
4
5;; Authors: Chong Yidong <cyd@stupidchicken>
6;; Jan Moringen <jan.moringen@uni-bielefeld.de>
2919746c
CY
7
8;; This file is part of GNU Emacs.
9
10;; GNU Emacs is free software: you can redistribute it and/or modify
11;; it under the terms of the GNU General Public License as published by
12;; the Free Software Foundation, either version 3 of the License, or
13;; (at your option) any later version.
14
15;; GNU Emacs is distributed in the hope that it will be useful,
16;; but WITHOUT ANY WARRANTY; without even the implied warranty of
17;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18;; GNU General Public License for more details.
19
20;; You should have received a copy of the GNU General Public License
21;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
22
23;;; Commentary
24
25;; The colors in this theme come from the Tango palette, which is in
26;; the public domain: http://tango.freedesktop.org/
27
28;;; Code:
29
30(deftheme tango
c5dd5a51 31 "Face colors using the Tango palette (light background).
2c243704
CY
32Basic, Font Lock, Isearch, Gnus, Message, Ediff, Flyspell,
33Semantic, and Ansi-Color faces are included.")
34
35(let ((class '((class color) (min-colors 89)))
36 ;; Tango palette colors.
37 (butter-1 "#fce94f") (butter-2 "#edd400") (butter-3 "#c4a000")
38 (orange-1 "#fcaf3e") (orange-2 "#f57900") (orange-3 "#ce5c00")
39 (choc-1 "#e9b96e") (choc-2 "#c17d11") (choc-3 "#8f5902")
40 (cham-1 "#8ae234") (cham-2 "#73d216") (cham-3 "#4e9a06")
41 (blue-1 "#729fcf") (blue-2 "#3465a4") (blue-3 "#204a87")
42 (plum-1 "#ad7fa8") (plum-2 "#75507b") (plum-3 "#5c3566")
43 (red-1 "#ef2929") (red-2 "#cc0000") (red-3 "#a40000")
44 (alum-1 "#eeeeec") (alum-2 "#d3d7cf") (alum-3 "#babdb6")
a2ff2fc0 45 (alum-4 "#888a85") (alum-5 "#5f615c") (alum-6 "#2e3436")
2c243704 46 ;; Not in Tango palette; used for better contrast.
a2ff2fc0 47 (cham-4 "#346604") (blue-0 "#8cc4ff") (orange-4 "#b35000"))
2c243704
CY
48
49 (custom-theme-set-faces
50 'tango
a2ff2fc0 51 `(default ((,class (:foreground ,alum-6 :background ,alum-1))))
08b0fee8 52 `(cursor ((,class (:background ,blue-3))))
2c243704
CY
53 ;; Highlighting faces
54 `(fringe ((,class (:background ,alum-2))))
55 `(highlight ((,class (:background ,alum-3))))
56 `(region ((,class (:background ,alum-3))))
57 `(secondary-selection ((,class (:background ,blue-0))))
a2ff2fc0 58 `(isearch ((,class (:foreground "#ffffff" :background ,orange-3))))
2c243704
CY
59 `(lazy-highlight ((,class (:background ,choc-1))))
60 `(trailing-whitespace ((,class (:background ,red-1))))
61 ;; Mode line faces
62 `(mode-line ((,class (:box (:line-width -1 :style released-button)
63 :background ,alum-2 :foreground ,alum-6))))
64 `(mode-line-inactive ((,class (:box (:line-width -1 :style released-button)
65 :background ,alum-4 :foreground ,alum-6))))
66 ;; Escape and prompt faces
67 `(minibuffer-prompt ((,class (:weight bold :foreground ,blue-3))))
68 `(escape-glyph ((,class (:foreground ,red-3))))
5226c7c0
CY
69 `(error ((,class (:foreground ,red-3))))
70 `(warning ((,class (:foreground ,orange-3))))
71 `(success ((,class (:foreground ,cham-3))))
2c243704 72 ;; Font lock faces
a2ff2fc0
CY
73 `(font-lock-builtin-face ((,class (:foreground ,plum-2))))
74 `(font-lock-comment-face ((,class (:slant italic :foreground ,alum-5))))
2c243704
CY
75 `(font-lock-constant-face ((,class (:weight bold :foreground ,blue-3))))
76 `(font-lock-function-name-face ((,class (:foreground ,red-3))))
a2ff2fc0 77 `(font-lock-keyword-face ((,class (:foreground ,cham-4))))
2c243704
CY
78 `(font-lock-string-face ((,class (:foreground ,plum-3))))
79 `(font-lock-type-face ((,class (:foreground ,blue-3))))
a2ff2fc0 80 `(font-lock-variable-name-face ((,class (:foreground ,orange-4))))
2c243704 81 ;; Button and link faces
2c243704
CY
82 `(link ((,class (:underline t :foreground ,blue-3))))
83 `(link-visited ((,class (:underline t :foreground ,blue-2))))
84 ;; Gnus faces
85 `(gnus-group-news-1 ((,class (:weight bold :foreground ,plum-3))))
86 `(gnus-group-news-1-low ((,class (:foreground ,plum-3))))
87 `(gnus-group-news-2 ((,class (:weight bold :foreground ,blue-3))))
88 `(gnus-group-news-2-low ((,class (:foreground ,blue-3))))
a2ff2fc0
CY
89 `(gnus-group-news-3 ((,class (:weight bold :foreground ,red-3))))
90 `(gnus-group-news-3-low ((,class (:foreground ,red-3))))
2c243704
CY
91 `(gnus-group-news-4 ((,class (:weight bold :foreground ,"#7a4c02"))))
92 `(gnus-group-news-4-low ((,class (:foreground ,"#7a4c02"))))
93 `(gnus-group-news-5 ((,class (:weight bold :foreground ,orange-3))))
94 `(gnus-group-news-5-low ((,class (:foreground ,orange-3))))
a2ff2fc0 95 `(gnus-group-news-low ((,class (:foreground ,alum-4))))
2c243704
CY
96 `(gnus-group-mail-1 ((,class (:weight bold :foreground ,plum-3))))
97 `(gnus-group-mail-1-low ((,class (:foreground ,plum-3))))
98 `(gnus-group-mail-2 ((,class (:weight bold :foreground ,blue-3))))
99 `(gnus-group-mail-2-low ((,class (:foreground ,blue-3))))
a2ff2fc0
CY
100 `(gnus-group-mail-3 ((,class (:weight bold :foreground ,cham-3))))
101 `(gnus-group-mail-3-low ((,class (:foreground ,cham-3))))
102 `(gnus-group-mail-low ((,class (:foreground ,alum-4))))
2c243704
CY
103 `(gnus-header-content ((,class (:foreground ,cham-3))))
104 `(gnus-header-from ((,class (:weight bold :foreground ,butter-3))))
a2ff2fc0 105 `(gnus-header-subject ((,class (:foreground ,red-3))))
2c243704 106 `(gnus-header-name ((,class (:foreground ,blue-3))))
a2ff2fc0 107 `(gnus-header-newsgroups ((,class (:foreground ,alum-4))))
2c243704
CY
108 ;; Message faces
109 `(message-header-name ((,class (:foreground ,blue-3))))
110 `(message-header-cc ((,class (:foreground ,butter-3))))
111 `(message-header-other ((,class (:foreground ,choc-2))))
a2ff2fc0 112 `(message-header-subject ((,class (:foreground ,red-3))))
2c243704 113 `(message-header-to ((,class (:weight bold :foreground ,butter-3))))
a2ff2fc0 114 `(message-cited-text ((,class (:slant italic :foreground ,alum-5))))
2c243704
CY
115 `(message-separator ((,class (:weight bold :foreground ,cham-3))))
116 ;; SMerge
117 `(smerge-refined-change ((,class (:background ,plum-1))))
118 ;; Ediff
119 `(ediff-current-diff-A ((,class (:background ,blue-1))))
120 `(ediff-fine-diff-A ((,class (:background ,plum-1))))
121 `(ediff-current-diff-B ((,class (:background ,butter-1))))
122 `(ediff-fine-diff-B ((,class (:background ,orange-1))))
123 ;; Flyspell
124 `(flyspell-duplicate ((,class (:underline ,orange-1))))
125 `(flyspell-incorrect ((,class (:underline ,red-1))))
126 ;; Semantic faces
127 `(semantic-decoration-on-includes ((,class (:underline ,cham-4))))
128 `(semantic-decoration-on-private-members-face
129 ((,class (:background ,alum-2))))
130 `(semantic-decoration-on-protected-members-face
131 ((,class (:background ,alum-2))))
132 `(semantic-decoration-on-unknown-includes
133 ((,class (:background ,choc-3))))
134 `(semantic-decoration-on-unparsed-includes
135 ((,class (:underline ,orange-3))))
136 `(semantic-tag-boundary-face ((,class (:overline ,blue-1))))
137 `(semantic-unmatched-syntax-face ((,class (:underline ,red-1)))))
138
139 (custom-theme-set-variables
140 'tango
141 `(ansi-color-names-vector [,alum-6 ,red-3 ,cham-3 ,butter-3
142 ,blue-3 ,plum-3 ,blue-1 ,alum-1])))
2919746c
CY
143
144(provide-theme 'tango)
145
146;; Local Variables:
147;; no-byte-compile: t
148;; End:
149
150;;; tango-theme.el ends here