unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* The latest lisp/faces.el changes seem to break color-themes again
@ 2008-10-16  5:19 Manoj Srivastava
  2008-10-16  6:08 ` Miles Bader
  0 siblings, 1 reply; 18+ messages in thread
From: Manoj Srivastava @ 2008-10-16  5:19 UTC (permalink / raw)
  To: emacs-devel

Hi,

        The change:
--8<---------------cut here---------------start------------->8---
Author: Chong Yidong <cyd@stupidchicken.com>  2008-10-14 14:01:50
Committer: Chong Yidong <cyd@stupidchicken.com>  2008-10-14 14:01:50
Parent: 654becd1f1cf392a3c79a028dd2aff861fb15c96 (* faces.el (set-face-attribute): Set family and foundry before)
Child:  91b8942c740d7eabb8e4bc3fc214c5243725bcc1 ((Major Mode Conventions, Mode Line Variables): `mode-name' need not be a)
Branches: debian, master, remotes/origin/master
Follows: remove-carbon
Precedes: 

    (set-face-attribute): Set family and foundry before other attributes.
    (face-spec-set-2): Pass unmodified args to set-face-attribute.
--8<---------------cut here---------------end--------------->8---

        Breaks some color themes. For instance, the attached theme
 (color-theme-manoj-dark)  is affected. There are a whole lot of errors
 about invalid face attributes -- which well might be true, but this is
 a regression for an end user.

        manoj

;;;;;;;;;;;;;;;;;;;;;;;;;;; -*- Mode: Emacs-Lisp -*- ;;;;;;;;;;;;;;;;;;;;;;;;;;
;; manoj-colors.el --- 
;; Author           : Manoj Srivastava ( srivasta@anzu.internal.golden-gryphon.com ) 
;; Created On       : Sun May 25 15:17:44 2008
;; Created On Node  : anzu.internal.golden-gryphon.com
;; Last Modified By : Manoj Srivastava
;; Status           : Unknown, Use with caution!
;; HISTORY          : 
;; Description      : 
;;
;; Copyright © 2008 Manoj Srivastava <srivasta@debian.org
;; 
;; This file is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;;
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;; GNU General Public License for more details.
;;
;; On Debian GNU/Linux systems, the complete text of the GNU General
;; Public License can be found in `/usr/share/common-licenses/GPL'
;;
;;    A copy of the GNU General Public License is also available at
;;    <URL:http://www.gnu.org/copyleft/gpl.html>.  You may also obtain
;;    it by writing to the Free Software Foundation, Inc., 51 Franklin
;;    St, Fifth Floor, Boston, MA 02110-1301 USA

;; A copy of this file, without the html, can be seen at:
;; /software/misc/manoj-colors.el

;; I spend a lot of time workin in front of a screen (many hours in a
;; dimly lit room) and eye fatigue is an issue. This is a dark color
;; theme for emacs, which is easier on the eyes than light themes.
;;
;; It does not help that I am blue-green color blind, so subtle
;; variations are ofte lost on me. I do want to use color contrast to
;; increase productivity, but I also want to avoid the jarring angry
;; fruit salad look, and so I am in the process of crafting a logical
;; color scheme that is high contrast enough for me, without being too
;; unpleasing.
;;
;; In circumstances where there a lot of related faces that can be
;; viewed, for example, the Gnus group buffer, consistent and logical
;; color choices are the only sane option. Gnus groups can be newa
;; (blueish) or mail (greenish), have states (large number of under
;; messages, normal, and empty). The large number unread groups have
;; highest luminance (appear brighter), and the empty one have lower
;; luminance (appear greyer), but have the same chroma and saturation.
;; Sub states and group priorities are rendered using a color series
;; which has constant luminance and saturation, and vary in hue by a
;; constant separation -- so all the related groups have the same
;; brightness ({mail,news}/{unread,normal,empty}), and a graded
;; selection of foreground colors.  It sounds more complicated that it
;; looks. The eye is drawn naturally to the unread groups, and first
;; to the mail, then USENET groups (which is my preference).
;;
;; Similar color variations occur for individual messages in a group;
;; high scoring messages bubble to the top, and have a higher
;; luminance.  This color schema has made me slightly faster at
;; reading mail/USENET.
;;
;; In the message itself, quoted mail messages from different people
;; are color coordinated, with high contrast beteen citations that are
;; close to each other in the heirarchy, so it is less likely that one
;; misunderstands who said what in a long conversation.
;;
;; The following scheme covers programming languages, Gnus, Erc, mail,
;; org-mode, CUA-mode, apt-utils, bbdb, compilation buffers, changelog
;; mode, diff and ediff, eshell, and more. You need emacs-goodies
;; package on Debian to use this.  See the wiki page at
;; http://www.emacswiki.org/cgi-bin/wiki?ColorTheme for details. The
;; project home page is at https://gna.org/projects/color-theme
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(require 'color-theme)
(eval-after-load "gnus"
  '(progn
     (color-theme-manoj-gnus)))
(eval-after-load "gnus-art"
  '(progn
     (color-theme-manoj-gnus)))
(eval-after-load "message"
  '(progn
     (color-theme-manoj-message)))
(eval-after-load "erc"
  '(progn
     (color-theme-manoj-erc)))
(eval-after-load "org"
  '(progn
     (color-theme-manoj-org)))

(defun color-theme-manoj-font-lock ()
  "Dark font-lock theme. Language constructs (types, preprocessor
  directives, etc) are bluish, user variables are greenish,
  Comments, strings, and doc content are reddish.  This is
  intended for other color themes to use."
  (interactive)
  (color-theme-install
   '(color-theme-manoj-font-lock
     nil
     (font-lock-builtin-face       ((t (:foreground "LightSteelBlue"))))
     (font-lock-constant-face      ((t (:foreground "LightSlateBlue" :bold t)))) ;Aquamarine
     (font-lock-exit-face          ((t (:foreground "LightBlue"))))
     (font-lock-preprocessor-face  ((t (:foreground "CornFlowerBlue" :italic t)))) ;LightSteelBlue
     (font-lock-keyword-face       ((t (:foreground "cyan1"))))
     (font-lock-other-type-face    ((t (:foreground "Turquoise" :bold t))))
     (font-lock-type-face          ((t (:foreground "SteelBlue1")))) ;PaleGreen
     (font-lock-regexp-grouping-backslash ((t (:bold t :weight bold))))
     (font-lock-regexp-grouping-construct ((t (:bold t :weight bold))))

     (font-lock-variable-name-face ((t (:foreground "Aquamarine")))) ;LightGoldenrod
     (font-lock-function-name-face ((t (:foreground "mediumspringgreen" :weight bold :height 1.1)))) ;LightSkyBlue
     (font-lock-reference-face     ((t (:foreground "PaleGreen"))))
     (font-lock-negation-char-face ((t (nil))))
     (cperl-array-face ((t (:foreground "LawnGreen" :background "B;ack" :bold t))))
     (cperl-hash-face ((t (:foreground "SpringGreen" :background "B;ack" :bold t :italic t))))
     (cperl-nonoverridable-face ((t (:foreground "chartreuse3"))))

     (font-lock-string-face        ((t (:foreground "RosyBrown1")))) ;LightSalmon
     (font-lock-comment-face       ((t (:italic t :slant oblique :foreground "chocolate1"))))
     (font-lock-comment-delimiter-face ((t (:foreground "Salmon"))))
     (font-lock-doc-face           ((t (:italic t :slant oblique :foreground "LightCoral")))) ;LightSalmon
     (font-lock-doc-string-face    ((t (:foreground "Plum"))))


     (font-lock-emphasized-face    ((t (:bold t))))

     (font-lock-other-emphasized-face ((t (:italic t :bold t))))
     (font-lock-warning-face ((t (:bold t :foreground "Pink" :weight bold)))))))

(defun color-theme-manoj-gnus ()
  "Blue (news) and green (mail) theme for gnus on dark backgrounds.
Unread groups have highest luminance, empty group have lower
luminance.  Within a set of type,state ({mail,news}/{{unread,normal,empty}),
groups have a constant luminosity and saturation, and vary in hue
by a constant amount.

This is intended for other color themes to use."

  (interactive)
  (color-theme-install
   '(color-theme-manoj-gnus
     nil
     (gnus-button ((t (:bold t :weight bold :background "#191932" :box (:line-width 2 :style released-button)))))
     (gnus-cite-attribution-face ((t (:italic t))))
     (gnus-cite-face-1  ((t (:foreground "CornflowerBlue"))))
     (gnus-cite-face-2  ((t (:foreground "PaleGreen"))))
     (gnus-cite-face-3  ((t (:foreground "LightGoldenrod"))))
     (gnus-cite-face-4  ((t (:foreground "LightPink"))))
     (gnus-cite-face-5  ((t (:foreground "turquoise"))))
     (gnus-cite-face-6  ((t (:foreground "khaki"))))
     (gnus-cite-face-7  ((t (:foreground "plum"))))
     (gnus-cite-face-8  ((t (:foreground "DeepSkyBlue1"))))
     (gnus-cite-face-9  ((t (:foreground "chartreuse1"))))
     (gnus-cite-face-10 ((t (:foreground "thistle1"))))
     (gnus-cite-face-11 ((t (:foreground "LightYellow1"))))
     (gnus-emphasis-bold ((t (:bold t :weight bold))))
     (gnus-emphasis-bold-italic ((t (:italic t :bold t :slant italic :weight bold))))
     (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))
     (gnus-emphasis-italic ((t (:italic t :slant italic))))
     (gnus-emphasis-strikethru ((t (:strike-through t))))
     (gnus-emphasis-underline ((t (:underline t))))
     (gnus-emphasis-underline-bold ((t (:bold t :underline t :weight bold))))
     (gnus-emphasis-underline-bold-italic ((t (:italic t :bold t :underline t :slant italic :weight bold))))
     (gnus-emphasis-underline-italic ((t (:italic t :underline t :slant italic))))

     (gnus-header-content ((t (:italic t :foreground "DarkKhaki" :slant italic))))
     (gnus-header-content-face ((t (:italic t :foreground "DarkKhaki" :slant italic))))
     (gnus-header-from ((t (:foreground "PaleGreen1"))))
     (gnus-header-from-face ((t (:foreground "PaleGreen1"))))
     (gnus-header-name ((t (:bold t :foreground "BlanchedAlmond" :weight bold))))
     (gnus-header-name-face ((t (:bold t :foreground "BlanchedAlmond" :weight bold))))
     (gnus-header-newsgroups ((t (:italic t :foreground "yellow" :slant italic))))
     (gnus-header-newsgroups-face ((t (:italic t :foreground "yellow" :slant italic))))
     (gnus-header-subject ((t (:foreground "coral1"))))
     (gnus-header-subject-face ((t (:foreground "coral1"))))
     (gnus-signature ((t (:italic t :slant italic))))
     (gnus-signature-face ((t (:italic t :slant italic))))
     (gnus-splash ((t (:foreground "#cccccc"))))
     (gnus-splash-face ((t (:foreground "#cccccc"))))
     (gnus-topic-face ((t (:italic t :bold t :foreground "lavender" :background "black" :slant italic :weight bold))))

     (fp-topic-face ((t (:italic t :bold t :background "black" :foreground "lavender" :slant italic :weight bold))))
     (face-6 ((t (:foreground "pink"))))
     (face-7 ((t (:foreground "steelblue"))))
     (face-8 ((t (:foreground "lime green"))))


     (gnus-summary-cancelled ((t (:background "black" :foreground "yellow"))))
     (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))

     (gnus-summary-high-ancient ((t (:bold t :foreground "CornflowerBlue" :weight bold))))
     (gnus-summary-high-ancient-face ((t (:bold t :foreground "CornflowerBlue" :weight bold))))
     (gnus-summary-normal-ancient ((t (:foreground "SkyBlue"))))
     (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))
     (gnus-summary-low-ancient ((t (:italic t :foreground "LightSteelBlue" :slant italic))))
     (gnus-summary-low-ancien-facet ((t (:italic t :foreground "LightSteelBlue" :slant italic))))

     (gnus-summary-high-read ((t (:bold t :foreground "grey60" :weight bold))))
     (gnus-summary-high-read-face ((t (:bold t :foreground "grey60" :weight bold))))
     (gnus-summary-normal-read ((t (:foreground "grey50"))))
     (gnus-summary-normal-read-face ((t (:foreground "grey50"))))
     (gnus-summary-low-read ((t (:italic t :foreground "LightSlateGray" :slant italic))))
     (gnus-summary-low-read-face ((t (:italic t :foreground "LightSlateGray" :slant italic))))

     (gnus-summary-high-ticked ((t (:bold t :foreground "RosyBrown" :weight bold))))
     (gnus-summary-high-ticked-face ((t (:bold t :foreground "RosyBrown" :weight bold))))
     (gnus-summary-normal-ticked ((t (:foreground "LightSalmon"))))
     (gnus-summary-normal-ticked-face ((t (:foreground "LightSalmon"))))
     (gnus-summary-low-ticked ((t (:italic t :foreground "pink" :slant italic))))
     (gnus-summary-low-ticked-face ((t (:italic t :foreground "pink" :slant italic))))

     (gnus-summary-high-undownloaded ((t (:bold t :foreground "ivory3" :weight bold))))
     (gnus-summary-normal-undownloaded ((t (:foreground "LightGray" :weight normal))))
     (gnus-summary-low-undownloaded ((t (:italic t :foreground "grey75" :slant italic :weight normal))))

     (gnus-summary-high-unread ((t (:bold t :foreground "PaleGreen" :weight bold))))
     (gnus-summary-high-unread-face ((t (:bold t :foreground "PaleGreen" :weight bold))))
     (gnus-summary-normal-unread ((t (:foreground "YellowGreen"))))
     (gnus-summary-normal-unread-face ((t (:foreground "YellowGreen"))))
     (gnus-summary-low-unread ((t (:italic t :foreground "MediumSeaGreen" :slant italic))))
     (gnus-summary-low-unread-face ((t (:italic t :foreground "MediumSeaGreen" :slant italic))))

     (my-gnus-direct-fup-face ((t (:bold t :background "NavyBlue" :foreground "#70fc70" :weight bold))))
     (my-gnus-indirect-fup-face ((t (:bold t :background "#092109" :foreground "#7fff7f" :weight bold))))
     (my-gnus-own-posting-face ((t (:bold t :background "#210909" :foreground "chartreuse3" :weight bold))))

     (gnus-summary-root-face ((t (:bold t :foreground "Red" :weight bold))))
     (gnus-summary-selected ((t (:underline t :foreground "LemonChiffon"))))
     (gnus-summary-selected-face ((t (:underline t :foreground "LemonChiffon"))))
     (gnus-user-agent-bad-face ((t (:bold t :background "black" :foreground "red" :weight bold))))
     (gnus-user-agent-good-face ((t (:background "black" :foreground "green"))))
     (gnus-user-agent-unknown-face ((t (:bold t :background "black" :foreground "orange" :weight bold))))
     (gnus-x-face ((t (:background "white" :foreground "black"))))

     (my-group-face-2 ((t (:bold t :foreground "DarkSeaGreen1" :weight bold))))
     (my-group-face-3 ((t (:bold t :foreground "Green1" :weight bold))))
     (my-group-face-4 ((t (:bold t :foreground "LightSteelBlue" :weight bold))))
     (my-group-face-5 ((t (:bold t :foreground "beige" :weight bold))))

     (my-group-mail-unread-crit-1 ((t (:bold t :foreground "#99FFAA" :weight bold))))
     (my-group-mail-unread-crit-2 ((t (:foreground "#99FF9C" :weight normal))))
     (my-group-mail-unread-crit-3 ((t (:foreground "#A3FF99" :weight normal))))

     (my-group-mail-unread-high-1 ((t (:bold t :foreground "#B1FF99" :weight bold))))
     (my-group-mail-unread-high-2 ((t (:foreground "#BEFF99" :weight normal))))
     (my-group-mail-unread-high-3 ((t (:foreground "#CCFF99" :weight normal))))

     (my-group-mail-unread-mod-1 ((t (:bold t :foreground "#DAFF99" :weight bold))))
     (my-group-mail-unread-mod-2 ((t (:foreground "#E7FF99" :weight normal))))
     (my-group-mail-unread-mod-3 ((t (:foreground "#F5FF99" :weight normal))))

     (gnus-group-mail-1 ((t (:bold t :foreground "#3BFF00" :weight normal))))
     (gnus-group-mail-1-face ((t (:bold t :foreground "#3BFF00" :weight normal))))
     (gnus-group-mail-2 ((t (:bold t :foreground "#5EFF00" :weight normal))))
     (gnus-group-mail-2-face ((t (:bold t :foreground "#5EFF00" :weight normal))))
     (gnus-group-mail-3 ((t (:bold t :foreground "#80FF00" :weight normal))))
     (gnus-group-mail-3-face ((t (:bold t :foreground "#A1FF00" :weight normal))))


     (gnus-group-mail-1-empty ((t (:foreground "#249900"))))
     (gnus-group-mail-1-empty-face ((t (:foreground "#249900"))))
     (gnus-group-mail-2-empty ((t (:foreground "#389900"))))
     (gnus-group-mail-2-empty-face ((t (:foreground "#389900"))))
     (gnus-group-mail-3-empty ((t (:foreground "#4D9900"))))
     (gnus-group-mail-3-empty-face ((t (:foreground "#4D9900"))))

     (gnus-group-mail-low ((t (:bold t :foreground "aquamarine2" :weight bold))))
     (gnus-group-mail-low-face ((t (:bold t :foreground "aquamarine2" :weight bold))))
     (gnus-group-mail-low-empty ((t (:foreground "aquamarine2"))))
     (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine2"))))


     (my-group-news-unread-crit-3 ((t (:bold t :foreground "#BFB3FF" :weight bold))))
     (my-group-news-unread-crit-4 ((t (:bold t :foreground "#BAB3FF" :weight bold))))
     (my-group-news-unread-crit-5 ((t (:foreground "#B5B3FF" :weight normal))))
     (my-group-news-unread-crit-6 ((t (:foreground "#B3B5FF" :weight normal))))

     (my-group-news-unread-high-3 ((t (:bold t :foreground "#B3BAFF" :weight bold))))
     (my-group-news-unread-high-4 ((t (:bold t :foreground "#B3BFFF" :weight bold))))
     (my-group-news-unread-high-5 ((t (:foreground "#B3C4FF" :weight normal))))
     (my-group-news-unread-high-6 ((t (:foreground "#B3C9FF" :weight normal))))

     (my-group-news-unread-mod-3 ((t (:bold t :foreground "#B3CFFF" :weight bold))))
     (my-group-news-unread-mod-4 ((t (:bold t :foreground "#B3D4FF" :weight bold))))
     (my-group-news-unread-mod-5 ((t (:foreground "#B3D9FF" :weight normal))))
     (my-group-news-unread-mod-6 ((t (:foreground "#B3DEFF" :weight normal))))


     (gnus-group-news-1 ((t (:bold t :foreground "#8480FF" :weight bold))))
     (gnus-group-news-1-face ((t (:bold t :foreground "#8480FF" :weight bold))))
     (gnus-group-news-2 ((t (:bold t :foreground "#8088FF" :weight bold))))
     (gnus-group-news-2-face ((t (:bold t :foreground "#8088FF" :weight bold))))
     (gnus-group-news-3 ((t (:bold t :foreground "#8095FF" :weight bold))))
     (gnus-group-news-3-face ((t (:bold t :foreground "#8095FF" :weight bold))))
     (gnus-group-news-4 ((t (:bold t :foreground "#80A1FF" :weight bold))))
     (gnus-group-news-4-face ((t (:bold t :foreground "#80A1FF" :weight bold))))
     (gnus-group-news-5 ((t (:bold t :foreground "#80AEFF" :weight bold))))
     (gnus-group-news-5-face ((t (:bold t :foreground "#80AEFF" :weight bold))))
     (gnus-group-news-6 ((t (:bold t :foreground "#80BBFF" :weight bold))))
     (gnus-group-news-6-face ((t (:bold t :foreground "#80BBFF" :weight bold))))


     (gnus-group-news-1-empty ((t (:foreground "#524DFF"))))
     (gnus-group-news-1-empty-face ((t (:foreground "#524DFF"))))
     (gnus-group-news-2-empty ((t (:foreground "#4D58FF"))))
     (gnus-group-news-2-empty-face ((t (:foreground "#4D58FF"))))
     (gnus-group-news-3-empty ((t (:foreground "#4D6AFF"))))
     (gnus-group-news-3-empty-face ((t (:foreground "#4D6AFF"))))
     (gnus-group-news-4-empty ((t (:foreground "#4D7CFF"))))
     (gnus-group-news-4-empty-face ((t (:foreground "#4D7CFF"))))
     (gnus-group-news-5-empty ((t (:foreground "#4D8EFF"))))
     (gnus-group-news-5-empty-face ((t (:foreground "#4D8EFF"))))
     (gnus-group-news-6-empty ((t (:foreground "#4DA0FF"))))
     (gnus-group-news-6-empty-face ((t (:foreground "#4DA0FF"))))

     (gnus-group-news-low ((t (:bold t :foreground "DarkTurquoise" :weight bold))))
     (gnus-group-news-low-face ((t (:bold t :foreground "DarkTurquoise" :weight bold))))
     (gnus-group-news-low-empty ((t (:foreground "DarkTurquoise"))))
     (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))


)))

(defun color-theme-manoj-message ()
  "Blue green theme for message on dark backgrounds.
This is intended for other color themes to use."
  (color-theme-install
   '(color-theme-manoj-message
     nil
     (mmm-face ((t (:background "black" :foreground "green"))))
     (message-cited-text ((t (:foreground "red3"))))
     (message-header-cc ((t (:bold t :foreground "chartreuse1" :weight bold))))
     (message-header-cc-face ((t (:bold t :foreground "chartreuse1" :weight bold))))
     (message-header-name ((t (:foreground "green"))))
     (message-header-name-face ((t (:foreground "green"))))
     (message-header-newsgroups ((t (:italic t :bold t :foreground "papaya whip" :slant italic :weight bold))))
     (message-header-newsgroups-face ((t (:italic t :bold t :foreground "papaya whip" :slant italic :weight bold))))
     (message-header-other ((t (:foreground "ivory"))))
     (message-header-other-face ((t (:foreground "ivory"))))
     (message-header-subject ((t (:foreground "OliveDrab1"))))
     (message-header-subject-face ((t (:foreground "OliveDrab1"))))
     (message-header-to ((t (:bold t :foreground "floral white" :weight bold))))
     (message-header-to-face ((t (:bold t :foreground "floral white" :weight bold))))
     (message-header-xheader ((t (:foreground "DeepSkyBlue1"))))
     (message-header-xheader-face ((t (:foreground "DeepSkyBlue1"))))
     (message-mml ((t (:foreground "MediumSpringGreen"))))
     (message-mml-face ((t (:foreground "MediumSpringGreen"))))
     (message-separator ((t (:foreground "LightSkyBlue1"))))
     (message-separator-face ((t (:foreground "LightSkyBlue1"))))
     (message-url ((t (:bold t :foreground "blue" :weight bold)))))))

(defun color-theme-manoj-erc ()
  "Blue green theme for erc on dark backgrounds.
This is intended for other color themes to use."
  (color-theme-install
   '(color-theme-manoj-erc
     nil
     (bg:erc-color-face0 ((t (:background "saddle brown"))))
     (bg:erc-color-face1 ((t (:background "black"))))
     (bg:erc-color-face10 ((t (:background "DodgerBlue4"))))
     (bg:erc-color-face11 ((t (:background "cyan4"))))
     (bg:erc-color-face12 ((t (:background "blue"))))
     (bg:erc-color-face13 ((t (:background "deeppink"))))
     (bg:erc-color-face14 ((t (:background "gray50"))))
     (bg:erc-color-face15 ((t (:background "grey15"))))
     (bg:erc-color-face2 ((t (:background "blue4"))))
     (bg:erc-color-face3 ((t (:background "green4"))))
     (bg:erc-color-face4 ((t (:background "red"))))
     (bg:erc-color-face5 ((t (:background "brown"))))
     (bg:erc-color-face6 ((t (:background "purple"))))
     (bg:erc-color-face7 ((t (:background "orange"))))
     (bg:erc-color-face8 ((t (:background "yellow4"))))
     (bg:erc-color-face9 ((t (:background "green"))))
     (erc-action-face ((t (:bold t :weight bold :foreground "turquoise1"))))
     (erc-bold-face ((t (:bold t :weight bold))))
     (erc-button ((t (:bold t :weight bold :foreground "RoyalBlue1" :box (:line-width 2 :style released-button)))))
     (erc-button-face ((t (:bold t :weight bold :foreground "RoyalBlue1" :box (:line-width 2 :style released-button)))))
     (erc-command-indicator-face ((t (:bold t :weight bold))))
     (erc-current-nick-face ((t (:bold t :foreground "DarkTurquoise" :weight bold))))
     (erc-dangerous-host-face ((t (:foreground "red"))))
     (erc-default-face ((t (nil))))
     (erc-direct-msg-face ((t (:foreground "sandybrown"))))
     (erc-error-face ((t (:foreground "red"))))
     (erc-fool-face ((t (:foreground "dim gray"))))
     (erc-header-line ((t (:background "grey95" :foreground "ConFlowerBlue"))))
     (erc-input-face ((t (:foreground "brown"))))
     (erc-inverse-face ((t (:background "Black" :foreground "White"))))
     (erc-keyword-face ((t (:bold t :foreground "pale green" :weight bold))))
     (erc-my-nick-face ((t (:bold t :foreground "brown" :weight bold))))
     (erc-nick-default-face ((t (:bold t :weight bold :foreground "DodgerBlue1"))))
     (erc-button-nickname-face ((t (:bold t :weight bold :background "lightgrey" :foreground "black"  :box (:line-width 2 :style released-button) ))))
     (erc-nick-msg-face ((t (:bold t :foreground "IndianRed" :weight bold))))
     (erc-notice-face ((t (:bold t :foreground "SlateBlue" :weight bold))))
     (erc-pal-face ((t (:bold t :foreground "Magenta" :weight bold))))
     (erc-prompt-face ((t (:bold t :background "Navy" :foreground "lightBlue2" :weight bold))))
     (erc-timestamp-face ((t (:bold t :foreground "SeaGreen1" :weight bold))))
     (erc-underline-face ((t (:underline t))))
     (fg:erc-color-face0 ((t (:foreground "BlanchedAlmond"))))
     (fg:erc-color-face1 ((t (:foreground "beige"))))
     (fg:erc-color-face10 ((t (:foreground "pale goldenrod"))))
     (fg:erc-color-face11 ((t (:foreground "cyan"))))
     (fg:erc-color-face12 ((t (:foreground "lightblue1"))))
     (fg:erc-color-face13 ((t (:foreground "deeppink"))))
     (fg:erc-color-face14 ((t (:foreground "gray50"))))
     (fg:erc-color-face15 ((t (:foreground "gray90"))))
     (fg:erc-color-face2 ((t (:foreground "blue4"))))
     (fg:erc-color-face3 ((t (:foreground "green4"))))
     (fg:erc-color-face4 ((t (:foreground "red"))))
     (fg:erc-color-face5 ((t (:foreground "brown"))))
     (fg:erc-color-face6 ((t (:foreground "purple"))))
     (fg:erc-color-face7 ((t (:foreground "orange"))))
     (fg:erc-color-face8 ((t (:foreground "yellow"))))
     (fg:erc-color-face9 ((t (:foreground "green")))))))

(defun color-theme-manoj-org ()
  "Blue green theme for org on dark backgrounds.
This is intended for other color themes to use."
  (color-theme-install
   '(color-theme-manoj-org
     nil
     (org-agenda-date ((t (:foreground "LightSkyBlue"))))
     (org-agenda-date-weekend ((t (:bold t :foreground "LightSkyBlue" :weight bold))))
     (org-agenda-restriction-lock ((t (:background "skyblue4"))))
     (org-agenda-structure ((t (:foreground "LightSkyBlue"))))
     (org-archived ((t (:foreground "grey70"))))
     (org-code ((t (:foreground "grey70"))))
     (org-column ((t (:background "grey30" :strike-through nil :underline nil :slant normal :weight normal :height 81 :family "unknown-DejaVu Sans Mono"))))
     (org-column-title ((t (:bold t :background "grey30" :underline t :weight bold))))
     (org-date ((t (:foreground "Cyan" :underline t))))
     (org-done ((t (:bold t :foreground "PaleGreen" :weight bold))))
     (org-drawer ((t (:foreground "LightSkyBlue"))))
     (org-ellipsis ((t (:foreground "LightGoldenrod" :underline t))))
     (org-formula ((t (:foreground "chocolate1"))))
     (org-headline-done ((t (:foreground "LightSalmon"))))
     (org-hide ((t (:foreground "black"))))
     (org-latex-and-export-specials ((t (:foreground "burlywood"))))
     (org-level-1 ((t (:foreground "LightSkyBlue"))))
     (org-level-2 ((t (:foreground "LightGoldenrod"))))
     (org-level-3 ((t (:foreground "Cyan1"))))
     (org-level-4 ((t (:foreground "chocolate1"))))
     (org-level-5 ((t (:foreground "PaleGreen"))))
     (org-level-6 ((t (:foreground "Aquamarine"))))
     (org-level-7 ((t (:foreground "LightSteelBlue"))))
     (org-level-8 ((t (:foreground "LightSalmon"))))
     (org-link ((t (:foreground "Cyan" :underline t))))
     (org-property-value ((t (nil))))
     (org-scheduled-previously ((t (:foreground "chocolate1"))))
     (org-scheduled-today ((t (:foreground "PaleGreen"))))
     (org-sexp-date ((t (:foreground "Cyan"))))
     (org-special-keyword ((t (:foreground "LightSalmon"))))
     (org-table ((t (:foreground "LightSkyBlue"))))
     (org-tag ((t (:bold t :weight bold))))
     (org-target ((t (:underline t))))
     (org-time-grid ((t (:foreground "LightGoldenrod"))))
     (org-todo ((t (:bold t :foreground "Pink" :weight bold))))
     (org-upcoming-deadline ((t (:foreground "chocolate1"))))
     (org-verbatim ((t (:foreground "grey70" :underline t))))
     (org-warning ((t (:bold t :weight bold :foreground "Pink"))))
     (outline-1 ((t (:foreground "LightSkyBlue"))))
     (outline-2 ((t (:foreground "LightGoldenrod"))))
     (outline-3 ((t (:foreground "Cyan1"))))
     (outline-4 ((t (:foreground "chocolate1"))))
     (outline-5 ((t (:foreground "PaleGreen"))))
     (outline-6 ((t (:foreground "Aquamarine"))))
     (outline-7 ((t (:foreground "LightSteelBlue"))))
     (outline-8 ((t (:foreground "LightSalmon")))))))

(defun color-theme-manoj-dark ()
  "Color theme by Manoj Srivastava, created 2008-05-22.
A dark background theme, with special care being taken for gnus faces."
  (interactive)
  (color-theme-standard)
  (color-theme-manoj-font-lock)
  (color-theme-manoj-gnus)
  (color-theme-manoj-message)
  (color-theme-manoj-erc)
  (color-theme-manoj-org)
  (let ((color-theme-is-cumulative t))
    (color-theme-install
     '(color-theme-manoj-dark
       ;; Frame parameters
       ((background-color . "black")
        (background-mode . dark)
        (border-color . "gold")
        (cursor-color . "orchid")
        (background-toolbar-color . "#cf3ccf3ccf3c")
        (bottom-toolbar-shadow-color . "#79e77df779e7")
        (top-toolbar-shadow-color . "#fffffbeeffff")
        (foreground-color . "WhiteSmoke") ;peachpuff cornsilk SteelBlue LightSkyBlue
        (mouse-color . "OrangeRed"))
       ;; Face variables
       ((Man-overstrike-face . font-lock-variable-name-face)
        (Man-underline-face  . font-lock-string-face)

        (CUA-mode-global-mark-cursor-color . "cyan")
        (CUA-mode-normal-cursor-color . "yellow")
        (CUA-mode-overwrite-cursor-color . "red")
        (CUA-mode-read-only-cursor-color . "green")

        (apropos-symbol-face     . font-lock-keyword-face)
        (apropos-keybinding-face . font-lock-constant-face)
        (apropos-label-face      . font-lock-type-face)
        (apropos-property-face   . font-lock-string-face)
        (apropos-match-face      . font-lock-function-name-face)

        (cperl-pod-face      . font-lock-doc-string-face)
        (cperl-pod-head-face . font-lock-variable-name-face)
        (cperl-here-face     . font-lock-doc-string-face)
        (cperl-invalid-face  . font-lock-warning-face)

        (dired-header-face    . dired-header)
        (dired-mark-face      . dired-mark)
        (dired-marked-face    . dired-marked)
        (dired-flagged-face   . dired-flagged)
        (dired-warning-face   . dired-warning)
        (dired-directory-face . dired-directory)
        (dired-symlink-face   . dired-symlink)
        (dired-ignored-face   . dired-ignored)

        (filladapt-debug-indentation-face-1 . highlight)
        (filladapt-debug-indentation-face-2 . secondary-selection)
        (filladapt-debug-paragraph-face     . bold)

        (forms-ro-face . custom-comment-tag-face)
        (forms-rw-face . custom-comment-face)

        (goto-address-url-face        . font-lock-string-face)
        (goto-address-url-mouse-face  . highlight)
        (goto-address-mail-face       . font-lock-string-face)
        (goto-address-mail-mouse-face . highlight)

        (help-highlight-face . font-lock-variable-name-face)

        (hl-line-face . fringe)

        (ibuffer-deletion-face . font-lock-warning-face)
        (ibuffer-filter-group-name-face . bold)
        (ibuffer-marked-face . font-lock-comment-face)
        (ibuffer-title-face . dired-header)

        (list-matching-lines-face             . bold)
        (list-matching-lines-buffer-name-face . font-lock-type-face)

        (view-highlight-face . highlight)

        (viper-replace-overlay-cursor-color . "PaleVioletRed") ;%
        (viper-insert-state-cursor-color    . "LightPink") ;%
        (viper-vi-state-cursor-color        . "khaki")
        (widget-mouse-face . highlight)
       )
       (default ((t (:stipple nil :background "black" :foreground "WhiteSmoke" 
                              :inverse-video nil :box nil :strike-through nil
                              :overline nil :underline nil :slant normal
                              :weight normal :height 81 :width normal
                              :family "unknown-DejaVu Sans Mono"))))
       (CUA-global-mark-face ((t (:background "cyan" :foreground "black"))))
       (CUA-rectangle-face ((t (:background "maroon" :foreground "white"))))
       (CUA-rectangle-noselect-face ((t (:background "dimgray" :foreground "white"))))
       (Info-title-1-face ((t (:bold t :weight bold :family "helv" :height 1.728))))
       (Info-title-2-face ((t (:bold t :family "helv" :weight bold :height 1.44))))
       (Info-title-3-face ((t (:bold t :weight bold :family "helv" :height 1.2))))
       (Info-title-4-face ((t (:bold t :family "helv" :weight bold))))
       (align-highlight-nochange-face ((t (:background "SkyBlue4"))))

       (antlr-font-lock-keyword-face ((t (:foreground "SteelBlue")))) ;%
       (antlr-font-lock-literal-face ((t (:foreground "PaleVioletRed"))))
       (antlr-font-lock-ruledef-face ((t (:foreground "DarkGreen"))))
       (antlr-font-lock-ruleref-face ((t (:foreground "SteelBlue"))))
       (antlr-font-lock-tokendef-face ((t (:foreground "khaki"))))
       (antlr-font-lock-tokenref-face ((t (:foreground "LightSteelBlue4"))))

       (apt-utils-broken-face ((t (:foreground "red"))))
       (apt-utils-description-face ((t (:foreground "cadet blue"))))
       (apt-utils-field-contents-face ((t (:foreground "orange"))))
       (apt-utils-field-keyword-face ((t (:bold t :foreground "purple" :weight bold))))
       (apt-utils-file-face ((t (:foreground "brown"))))
       (apt-utils-installed-status-face ((t (:italic t :slant italic))))
       (apt-utils-normal-package-face ((t (:foreground "yellow"))))
       (apt-utils-version-face ((t (:italic t :slant italic))))
       (apt-utils-virtual-package-face ((t (:foreground "green"))))

       (bbdb-company ((t (:italic t :slant italic :foreground "indian red"))))
       (bbdb-field-name ((t (:bold t :weight bold :foreground "steel blue"))))
       (bbdb-field-value ((t (:foreground "AntiqueWhite2"))))
       (bbdb-name ((t (:underline t :foreground "cadet blue"))))

       (blank-space-face ((t (:background "DarkGray"))))
       (blank-tab-face ((t (:foreground "black" :background "cornsilk"))))
       (blue ((t (:foreground "blue"))))
       (bold ((t (:bold t :weight bold))))
       (bold-italic ((t (:bold t :italic t :slant italic :weight bold))))
       (border ((t (:background "gold" :foreground "black" ))))
       (browse-kill-ring-separator-face ((t (:bold t :weight bold))))
       (buffer-menu-buffer ((t (:bold t :weight bold))))
       (buffers-tab ((t (:background "black" :foreground "LightSkyBlue"))))
       (buffers-tab-face ((t (:background "black" :foreground "LightSkyBlue"))))
       (button ((t (:underline t :box (:line-width 2 :color "grey"
                                                   :style released-button)
                               :foreground "black" :background "grey"
                               :weight bold ))))
       (calendar-today-face ((t (:underline t :bold t :foreground "cornsilk"))))
       (change-log-acknowledgement-face ((t (:italic t :slant oblique :foreground "AntiqueWhite3"))))
       (change-log-conditionals-face ((t (:foreground "Aquamarine"))))
       (change-log-date-face ((t (:italic t :slant oblique :foreground "BurlyWood"))))
       (change-log-email-face ((t (:foreground "Aquamarine"))))
       (change-log-file-face ((t (:bold t :family "Verdana" :weight bold :foreground "LightSkyBlue" :height 0.9))))
       (change-log-function-face ((t (:foreground "Aquamarine"))))
       (change-log-list-face ((t (:foreground "LightSkyBlue"))))
       (change-log-name-face ((t (:bold t :weight bold :foreground "Gold"))))
       (clear-case-mode-string-face ((t (:bold t :family "Arial"
                                               :box (:line-width 2 :color "grey"
                                                                 :style released-button)
                                               :foreground "black"
                                               :background "grey" :weight bold
                                               :height 0.9))))
       (clearcase-dired-checkedout-face ((t (:foreground "red"))))
       (comint-highlight-input ((t (:bold t :weight bold))))
       (comint-highlight-prompt ((t (:foreground "cyan1"))))
       (compilation-column-number ((t (:foreground "PaleGreen"))))
       (compilation-error ((t (:bold t :weight bold :foreground "Brown1"))))
       (compilation-info ((t (:bold t :foreground "LightPink1" :weight bold))))
       (compilation-line-number ((t (:foreground "LightGoldenrod"))))
       (compilation-message-face  ((t (:underline t))))
       (compilation-warning ((t (:bold t :foreground "Orange" :weight bold))))
       (compilation-warning-face ((t (:bold t :foreground "Orange" :weight bold))))
       (completions-common-part ((t (:family "unknown-DejaVu Sans Mono" 
                                             :width normal :weight normal
                                             :slant normal :underline nil
                                             :overline nil :strike-through nil
                                             :box nil :inverse-video nil
                                             :foreground "WhiteSmoke"
                                             :background "black" :stipple nil
                                             :height 81))))
       (completions-first-difference ((t (:bold t :weight bold))))

       (cparen-around-andor-face ((t (:bold t :foreground "burlywood1" :weight bold))))
       (cparen-around-begin-face ((t (:foreground "wheat1"))))
       (cparen-around-conditional-face ((t (:bold t :foreground "PaleTurquoise1" :weight bold))))
       (cparen-around-define-face ((t (:bold t :foreground "CadetBlue1" :weight bold))))
       (cparen-around-lambda-face ((t (:foreground "LightGreen"))))
       (cparen-around-letdo-face ((t (:bold t :foreground "SeaGreen1" :weight bold))))
       (cparen-around-quote-face ((t (:foreground "SlateGray1"))))
       (cparen-around-set!-face ((t (:foreground "LightSalmon1"))))
       (cparen-around-syntax-rules-face ((t (:foreground "Magenta1"))))
       (cparen-around-vector-face ((t (:foreground "chocolat1"))))
       (cparen-binding-face ((t (:foreground "PaleGreen"))))
       (cparen-binding-list-face ((t (:bold t :foreground "PaleGreen" :weight bold))))
       (cparen-conditional-clause-face ((t (:foreground "LightSkyBlue"))))
       (cparen-normal-paren-face ((t (:foreground "grey50"))))


       (cscope-file-face ((t (:foreground "blue"))))
       (cscope-function-face ((t (:foreground "magenta"))))
       (cscope-line-face ((t (:foreground "green"))))
       (cscope-line-number-face ((t (:foreground "red"))))
       (cscope-mouse-face ((t (:background "blue" :foreground "white"))))

       (css-selector ((t (:foreground "LightSteelBlue"))))
       (css-property ((t (:foreground "light sea green"))))

       (cursor ((t (:background "orchid"))))
       (custom-button-face ((t (:background "lightgrey" :foreground "black"
                                            :box (:line-width 2 :style released-button)))))
       (custom-button-pressed-face ((t (:background "lightgrey" 
                                                    :foreground "black"
                                                    :box (:line-width 2 :style pressed-button)))))
       (custom-changed-face ((t (:foreground "wheat" :background "blue"))))
       (custom-comment-face ((t (:background "dim gray"))))
       (custom-comment-tag-face ((t (:foreground "gray80"))))
       (custom-documentation-face ((t (nil))))
       (custom-face-tag-face ((t (:bold t :family "helv" :weight bold :height 1.1))))
       (custom-group-tag-face ((t (:bold t :family "helv" :foreground "light blue" :weight bold :height 1.1))))
       (custom-group-tag-face-1 ((t (:bold t :family "helv" :foreground "pink" :weight bold :height 1.1))))
       (custom-invalid-face ((t (:background "red" :foreground "yellow"))))
       (custom-modified-face ((t (:background "blue" :foreground "white"))))
       (custom-rogue-face ((t (:background "black" :foreground "pink"))))
       (custom-saved-face ((t (:underline t))))
       (custom-set-face ((t (:background "white" :foreground "blue"))))
       (custom-state-face ((t (:foreground "lime green"))))
       (custom-variable-button-face ((t (:bold t :underline t :weight bold
                                               :background "lightgrey"
                                               :foreground "black"
                                               :box (:line-width 2 :style released-button)))))
       (custom-variable-tag-face ((t (:bold t :family "helv"
                                            :foreground "light blue"
                                            :weight bold :height 1.2))))
       (cvs-filename-face ((t (:foreground "white"))))
       (cvs-handled-face ((t (:foreground "pink"))))
       (cvs-header-face ((t (:foreground "green"))))
       (cvs-marked-face ((t (:bold t :foreground "green3"))))
       (cvs-msg-face ((t (:foreground "red"))))
       (cvs-need-action-face ((t (:foreground "yellow"))))
       (cvs-unknown-face ((t (:foreground "grey"))))
       (cyan-bold ((t (:bold t :foreground "cyan" :weight bold))))
       (cyan-italic ((t (:italic t :foreground "cyan" :slant italic))))

       (darcsum-header-face ((t (:foreground "lemon chiffon")))) ;%
       (darcsum-marked-face ((t (:bold t))))
       (darcsum-need-action-face ((t (:foreground "orange red"))))
       (darcsum-need-action-marked-face ((t (:foreground "orange red" :bold t))))
       (darcsum-filename-face ((t (:foreground "light sea green"))))
       (darcsum-changed-line-face ((t (:background "gray30" :foreground "green"))))

       (darkviolet-bold ((t (:bold t :foreground "dark violet" :weight bold))))
       (darkviolet-italic ((t (:italic t :foreground "dark violet" :slant italic))))
       (debian-changelog-warning-face ((t (:bold t :foreground "Pink" :weight bold))))
       (develock-bad-manner ((t (:background "Yellow" :foreground "Black"))))
       (develock-lonely-parentheses ((t (:background "PaleTurquoise" :foreground "Blue"))))
       (develock-long-line-1 ((t (:foreground "Orange"))))
       (develock-long-line-2 ((t (:background "#1a1a42"))))
       (develock-reachable-mail-address ((t (:background "LemonChiffon" :foreground "DarkGreen"))))
       (develock-upper-case-attribute ((t (:background "Wheat" :foreground "Black"))))
       (develock-upper-case-tag ((t (:background "PowderBlue" :foreground "Black"))))
       (develock-whitespace-1 ((t (:background "Red" :foreground "Black"))))
       (develock-whitespace-2 ((t (:background "Orange" :foreground "Black"))))
       (develock-whitespace-3 ((t (:background "Yellow" :foreground "Black"))))

       (diary ((t (:foreground "IndianRed"))))
       (diary-anniversary ((t (:foreground "Cyan1"))))
       (diary-button ((t (:background "lightgrey" :foreground "black"  :box (:line-width 2 :style released-button)))))
       (diary-face ((t (:foreground "IndianRed"))))
       (diary-time ((t (:foreground "LightGoldenrod"))))

       (dictionary-button-face ((t (:bold t :weight bold :background "lightgrey"
                                          :foreground "black"
                                          :box (:line-width 2 :style released-button)))))
       (dictionary-reference-face ((t (:foreground "yellow"))))
       (dictionary-word-entry-face ((t (:italic t :slant italic))))

       (diff-added-face ((t (:foreground "Green"))))
       (diff-changed-face ((t (:foreground "Khaki"))))
       (diff-context-face ((t (:foreground "grey70"))))
       (diff-file-header ((t (:bold t :background "grey20"  :foreground "ivory1" :weight bold))))
       (diff-file-header-face ((t (:bold t :background "grey20" :foreground "ivory1" :weight bold))))
       (diff-function-face ((t (:foreground "SpringGreen1"))))
       (diff-header-face ((t (:background "SlateBlue4"))))
       (diff-hunk-header-face ((t (:background "DodgerBlue4"))))
       (diff-index-face ((t (:bold t :weight bold :background "SteelBlue4" :foregounr "linen" ))))
       (diff-index-face ((t (:bold t :weight bold :background "SteelBlue4" :foregounr "linen" ))))
       (diff-nonexistent ((t (:bold t :weight bold :background "Black" :foreground "Wheat1"))))
       (diff-nonexistent-face ((t (:bold t :weight bold :background "Black" :foreground "Wheat1"))))
       (diff-removed-face ((t (:foreground "salmon1"))))

       (dired-face-boring ((t (:foreground "Gray65"))))
       (dired-face-directory ((t (:bold t :foreground "SkyBlue2"))))
       (dired-face-executable ((t (:foreground "Green"))))
       (dired-face-flagged ((t (:background "DarkSlateGray" :foreground "LemonChiffon"))))
       (dired-face-header ((t (:background "grey15" :foreground "OldLace"))))
       (dired-face-marked ((t (:background "PaleVioletRed"))))
       (dired-face-permissions ((t (:background "grey75" :foreground "black"))))
       (dired-face-setuid ((t (:foreground "Red"))))
       (dired-face-socket ((t (:foreground "magenta"))))
       (dired-face-symlink ((t (:foreground "cyan"))))

       (display-time-mail-balloon-enhance-face ((t (:background "orange"))))
       (display-time-mail-balloon-gnus-group-face ((t (:foreground "blue"))))
       (display-time-time-balloon-face ((t (:foreground "red"))))

       (ediff-current-diff-face-A ((t (:foreground "firebrick" :background "pale green"))))
       (ediff-current-diff-face-Ancestor ((t (:foreground "Black" :background "VioletRed"))))
       (ediff-current-diff-face-B ((t (:foreground "DarkOrchid" :background "Yellow"))))
       (ediff-current-diff-face-C ((t (:foreground "Navy" :background "Pink"))))
       (ediff-even-diff-face-A ((t (:foreground "Black" :background "light grey"))))
       (ediff-even-diff-face-Ancestor ((t (:foreground "White" :background "Grey"))))
       (ediff-even-diff-face-B ((t (:foreground "White" :background "Grey"))))
       (ediff-even-diff-face-C ((t (:foreground "Black" :background "light grey"))))
       (ediff-fine-diff-face-A ((t (:foreground "Navy" :background "sky blue"))))
       (ediff-fine-diff-face-Ancestor ((t (:foreground "Black" :background "Green"))))
       (ediff-fine-diff-face-B ((t (:foreground "Black" :background "cyan"))))
       (ediff-fine-diff-face-C ((t (:foreground "Black" :background "Turquoise"))))
       (ediff-odd-diff-face-A ((t (:foreground "White" :background "Grey"))))
       (ediff-odd-diff-face-Ancestor ((t (:foreground "Black" :background "light grey"))))
       (ediff-odd-diff-face-B ((t (:foreground "Black" :background "light grey"))))
       (ediff-odd-diff-face-C ((t (:foreground "White" :background "Grey"))))

       (eieio-custom-slot-tag-face ((t (:foreground "light blue"))))
       (eldoc-highlight-function-argument ((t (:bold t :weight bold))))
       (epa-field-body ((t (:italic t :foreground "turquoise" :slant italic))))
       (epa-field-name ((t (:bold t :foreground "PaleTurquoise" :weight bold))))
       (epa-mark ((t (:bold t :foreground "orange" :weight bold))))
       (epa-string ((t (:foreground "lightyellow"))))
       (epa-validity-disabled ((t (:italic t :slant italic))))
       (epa-validity-high ((t (:bold t :foreground "PaleTurquoise" :weight bold))))
       (epa-validity-low ((t (:italic t :slant italic))))
       (epa-validity-medium ((t (:italic t :foreground "PaleTurquoise" :slant italic))))

       (escape-glyph ((t (:foreground "cyan"))))

       (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))
       (eshell-ls-backup-face ((t (:foreground "Grey"))))
       (eshell-ls-clutter-face ((t (:foreground "DimGray"))))
       (eshell-ls-directory-face ((t (:bold t :foreground "MediumSlateBlue"))))
       (eshell-ls-executable-face ((t (:foreground "Coral"))))
       (eshell-ls-missing-face ((t (:foreground "black"))))
       (eshell-ls-picture-face ((t (:foreground "Violet"))))
       (eshell-ls-product-face ((t (:foreground "sandybrown"))))
       (eshell-ls-readonly-face ((t (:foreground "Aquamarine"))))
       (eshell-ls-special-face ((t (:foreground "Gold"))))
       (eshell-ls-symlink-face ((t (:foreground "DarkCyan" :bold t))))
       (eshell-ls-symlink-face ((t (:foreground "White"))))
       (eshell-ls-unreadable-face ((t (:foreground "DimGray"))))
       (eshell-prompt-face ((t (:foreground "MediumAquamarine"))))
       (eshell-test-failed-face ((t (:foreground "OrangeRed" :bold t))))
       (eshell-test-ok-face ((t (:foreground "Green" :bold t))))

       (excerpt ((t (:italic t))))
       (ff-paths-non-existent-file-face ((t (:bold t :foreground "NavyBlue" :weight bold))))
       (file-name-shadow ((t (:foreground "grey70"))))
       (fixed ((t (:bold t))))
       (fixed-pitch ((t (:family "courier"))))
       (fl-comment-face ((t (:foreground "pink"))))
       (fl-doc-string-face ((t (:foreground "purple"))))
       (fl-function-name-face ((t (:foreground "red"))))
       (fl-keyword-face ((t (:foreground "cyan"))))
       (fl-string-face ((t (:foreground "green"))))
       (fl-type-face ((t (:foreground "yellow"))))
       (flyspell-duplicate-face ((t (:foreground "IndianRed" :bold t :underline t))))
       (flyspell-incorrect-face ((t (:foreground "Pink" :bold t :underline t))))

       (font-latex-bold-face ((t (:bold t :foreground "medium sea green"))));%
       (font-latex-italic-face ((t (:slant italic :foreground "medium sea green"))));%
       (font-latex-math-face ((t (:foreground "sandy brown"))))
       (font-latex-sectioning-0-face ((t (:foreground "khaki"))))
       (font-latex-sectioning-1-face ((t (:foreground "khaki"))))
       (font-latex-sectioning-2-face ((t (:foreground "khaki"))))
       (font-latex-sectioning-3-face ((t (:foreground "khaki"))))
       (font-latex-sectioning-4-face ((t (:foreground "khaki"))))
       (font-latex-sedate-face ((t (:foreground "Gray85"))))
       (font-latex-string-face ((t (:foreground "orange"))))
       (font-latex-warning-face ((t (:foreground "indian red"))))
       (font-latex-title-1-face ((t (:foreground "LightSteelBlue"  :weight bold :height 1.728))))
       (font-latex-title-2-face ((t (:foreground "LightSteelBlue"  :weight bold :height 1.44))))
       (font-latex-title-3-face ((t (:foreground "LightSteelBlue"  :weight bold :height 1.2))))
       (font-latex-title-4-face ((t (:foreground "LightSteelBlue"))))

       (fringe ((t (:background "grey30" :foreground "Wheat"))))
       (gdb-arrow-face ((t (:bold t :background "yellow" :foreground "red"))))
       (green ((t (:foreground "green"))))
       (gui-button-face ((t (:background "grey75" :foreground "black" :box (:line-width 2 :style released-button)))))
       (gui-element ((t (:size "12" :background "#D4D0C8" :foreground "black"))))
       (header-line ((t (:box (:line-width -1 :color "grey20" :style released-button) :background "grey20" :foreground "grey90"  :height 0.9 :box nil))))
       (help-argument-name ((t (:italic t :slant italic))))
       (highlight ((t (:background "darkseagreen2" :foreground "blue"))))
       (gnus-mouse-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (erc-button-mouse-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (align-highlight-change-face  ((t (:background "darkseagreen2" :foreground "blue"))))
       (goto-address-url-mouse-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (goto-address-url-mouse-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (ispell-highlight-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (ispell-highlight-face ((t (:background "darkseagreen2" :foreground "blue"))))
       (tinyreplace-:face ((t (:background "darkseagreen2" :foreground "blue"))))
       (vc-mode-face  ((t (:background "darkseagreen2" :foreground "blue"))))
       (widget-mouse-face  ((t (:background "darkseagreen2" :foreground "blue"))))

       (highlight-beyond-fill-column-face ((t (:underline t))))
       (highlight-changes-delete-face ((t (:foreground "red" :underline t))))
       (highlight-changes-face ((t (:foreground "red"))))

       (highline ((t (:background "darkolivegreen"))))
       (highline-face ((t (:background "darkolivegreen"))))
       (holiday ((t (:background "chocolate4"))))
       (holiday-face ((t (:background "chocolate4"))))

       (html-helper-bold-face ((t (:bold t))))
       (html-helper-italic-face ((t (:bold t :foreground "yellow"))))
       (html-helper-underline-face ((t (:underline t))))
       (html-helper-significant-tag-face ((t (:foreground "cadet blue")))) ;%

       (hyper-apropos-documentation ((t (:foreground "white"))))
       (hyper-apropos-heading ((t (:bold t))))
       (hyper-apropos-hyperlink ((t (:foreground "sky blue"))))
       (hyper-apropos-major-heading ((t (:bold t))))
       (hyper-apropos-section-heading ((t (:bold t))))
       (hyper-apropos-warning ((t (:bold t :foreground "red"))))

       (ibuffer-dired-buffer-face ((t (:foreground "mediumspringgreen" :weight bold :height 1.1)))) 
       (ibuffer-help-buffer-face  ((t (:italic t :slant oblique :foreground "chocolate1"))))
       (ibuffer-hidden-buffer-face  ((t (:bold t :foreground "Pink" :weight bold))))
       (ibuffer-occur-match-face ((t (:bold t :foreground "Pink" :weight bold))))
       (ibuffer-read-only-buffer-face ((t (:foreground "SteelBlue1"))))
       (ibuffer-special-buffer-face ((t (:foreground "SteelBlue1"))))

       (ido-first-match ((t (:bold t :weight bold))))
       (ido-incomplete-regexp ((t (:bold t :weight bold :foreground "Pink"))))
       (ido-indicator ((t (:background "red1" :foreground "yellow1" :width condensed))))
       (ido-only-match ((t (:foreground "ForestGreen"))))
       (ido-subdir ((t (:foreground "red1"))))
       (info-menu-5 ((t (:underline t))))
       (info-menu-header ((t (:bold t :family "helv" :weight bold))))
       (info-node ((t (:bold t :italic t :foreground "yellow"))))
       (info-node ((t (:italic t :bold t :foreground "white" :slant italic :weight bold))))
       (info-xref ((t (:bold t :foreground "DodgerBlue1"))))
       (info-xref ((t (:bold t :foreground "cyan" :weight bold))))
       (isearch ((t (:background "palevioletred2" :foreground "brown4"))))
       (isearch-fail ((t (:background "red4"))))
       (isearch-lazy-highlight-face ((t (:background "paleturquoise4"))))
       (isearch-secondary ((t (:foreground "red3"))))
       (italic ((t (:italic t))))

       (jde-bug-breakpoint-cursor ((t (:background "brown" :foreground "cyan"))))
       (jde-db-active-breakpoint-face ((t (:background "red" :foreground "black"))))
       (jde-db-requested-breakpoint-face ((t (:background "yellow" :foreground "black"))))
       (jde-db-spec-breakpoint-face ((t (:background "green" :foreground "black"))))
       (jde-java-font-lock-api-face ((t (:foreground "light goldenrod"))))
       (jde-java-font-lock-bold-face ((t (:bold t))))
       (jde-java-font-lock-code-face ((t (nil))))
       (jde-java-font-lock-constant-face ((t (:foreground "Aquamarine"))))
       (jde-java-font-lock-doc-tag-face ((t (:foreground "light coral"))))
       (jde-java-font-lock-italic-face ((t (:italic t))))
       (jde-java-font-lock-link-face ((t (:underline t :foreground "cadetblue"))))
       (jde-java-font-lock-modifier-face ((t (:foreground "LightSteelBlue"))))
       (jde-java-font-lock-number-face ((t (:foreground "LightSalmon"))))
       (jde-java-font-lock-operator-face ((t (:foreground "medium blue"))))
       (jde-java-font-lock-package-face ((t (:foreground "steelblue1"))))
       (jde-java-font-lock-pre-face ((t (nil))))
       (jde-java-font-lock-underline-face ((t (:underline t))))
 
       (js2-builtin-face ((t (:foreground "sandy brown"))))
       (js2-comment-face ((t (:foreground "dark orchid"))))
       (js2-constant-face ((t (:foreground "pale violet red"))))
       (js2-error-face ((t (:background "indian red" :foreground "green" :bold t))))
       (js2-function-name-face ((t (:foreground "cadet blue"))))
       (js2-function-param-face ((t (:foreground "IndianRed1"))))
       (js2-instance-member-face ((t (:foreground "IndianRed1"))))
       (js2-jsdoc-tag-face ((t (:foreground "medium orchid"))))
       (js2-jsdoc-type-face ((t (:foreground "medium orchid"))))
       (js2-jsdoc-value-face ((t (:foreground "medium orchid"))))
       (js2-keyword-face ((t (:foreground "steel blue"))))
       (js2-private-function-call-face ((t (:foreground "cadet blue"))))
       (js2-private-member-face ((t (:foreground "IndianRed1"))))
       (js2-regexp-face ((t (:foreground "khaki"))))
       (js2-string-face ((t (:foreground "lemon chiffon"))))
       (js2-type-face ((t (:foreground "medium sea green"))))
       (js2-variable-name-face ((t (:foreground "IndianRed1"))))
       (js2-warning-face ((t (:background "indian red" :foreground "green"))))

       (lazy-highlight ((t (:background "paleturquoise4"))))
       (linemenu-face ((t (:background "gray30"))))
       (link ((t (:foreground "cyan1" :underline t))))
       (link-visited ((t (:underline t :foreground "violet"))))
       (list-mode-item-selected ((t (:background "gray68" :foreground "dark green"))))
       (magenta ((t (:foreground "magenta"))))
       (magenta-bold ((t (:bold t :foreground "magenta2" :weight bold))))
       (makefile-space-face ((t (:background "hotpink"))))
       (man-bold ((t (:bold t))))
       (man-heading ((t (:bold t))))
       (man-italic ((t (:foreground "yellow"))))
       (man-xref ((t (:underline t))))
       (match ((t (:background "RoyalBlue3"))))
       (menu ((t (nil))))
       (midnightblue-bold ((t (:bold t :foreground "midnightblue" :weight bold))))
       (midnightblue-italic ((t (:italic t :foreground "midnightblue" :slant italic))))
       (minibuffer-prompt ((t (:foreground "cyan"))))
       (mm-uu-extract ((t (:background "dark green" :foreground "light yellow"))))
       (mode-line ((t (:background "grey75" :foreground "Blue"
                                   :box (:line-width -1 :style released-button)
                                   :height 0.9))))
       (mode-line-buffer-id ((t (:background "grey65" :foreground "red"
                                             :bold t :weight bold :height 0.9))))
       (mode-line-emphasis ((t (:bold t :weight bold))))
       (mode-line-highlight ((t (:box (:line-width 2 :color "grey40"
                                                   :style released-button :height 0.9)))))
       (mode-line-inactive ((t (:background "grey30" :foreground "grey80"
                                            :box (:line-width -1 :color "grey40" :style nil)
                                            :weight light :height 0.9))))
       (modeline-mousable ((t (:background "white" :foreground "magenta"))))
       (modeline-mousable-minor-mode ((t (:background "Gray80" :foreground "green4"))))
       (mouse ((t (:background "OrangeRed"))))

       (multi-region-face ((t (:background "Navy" :foreground "LightSteelBlue4"))))

       (next-error ((t (:background "blue3"))))
       (nobreak-space ((t (:foreground "cyan" :underline t))))
       (orchid-bold ((t (:bold t :foreground "MediumOrchid1" :weight bold))))
       (p4-depot-added-face ((t (:foreground "blue"))))
       (p4-depot-deleted-face ((t (:foreground "red"))))
       (p4-depot-unmapped-face ((t (:foreground "grey30"))))
       (p4-diff-change-face ((t (:foreground "dark green"))))
       (p4-diff-del-face ((t (:foreground "red"))))
       (p4-diff-file-face ((t (:background "gray90"))))
       (p4-diff-head-face ((t (:background "gray95"))))
       (p4-diff-ins-face ((t (:foreground "blue"))))
       (pabbrev-debug-display-label-face ((t (:underline "navy"))))
       (pabbrev-suggestions-face ((t (:foreground "PaleGreen"))))
       (pabbrev-suggestions-label-face ((t (nil))))
       (paren-blink-off ((t (:foreground "black"))))
       (paren-mismatch-face ((t (:bold t :background "white" :foreground "red"))))
       (paren-no-match-face ((t (:bold t :background "white" :foreground "red"))))
       (plum ((t (:bold t :foreground "plum" :weight bold))))
       (primary-selection ((t (:background "blue"))))
       (qt-classes-face ((t (:foreground "Red"))))
       (query-replace ((t (:foreground "brown4" :background "palevioletred2"))))
       (red ((t (:foreground "red"))))
       (region ((t (:background "blue3"))))
       (scroll-bar ((t (:background "grey75" :foreground "WhiteSmoke"))))
       (secondary-selection ((t (:background "SkyBlue4"))))
       (semantic-dirty-token-face ((t (:background "lightyellow"))))
       (semantic-highlight-edits-face ((t (:background "gray20"))))
       (semantic-unmatched-syntax-face ((t (:underline "red"))))
       (senator-intangible-face ((t (:foreground "gray75"))))
       (senator-momentary-highlight-face ((t (:background "gray30"))))
       (senator-read-only-face ((t (:background "#664444"))))
       (setnu-line-number-face  ((t (:bold t :weight bold))))
       (sgml-doctype-face ((t (:foreground "orange"))))
       (sgml-end-tag-face ((t (:foreground "greenyellow"))))
       (sgml-entity-face ((t (:foreground "gold"))))
       (sgml-ignored-face ((t (:foreground "gray20" :background "gray60"))))
       (sgml-sgml-face ((t (:foreground "yellow"))))
       (sgml-start-tag-face ((t (:foreground "mediumspringgreen"))))
       (shadow ((t (:foreground "grey70"))))
       (shell-option-face ((t (:foreground "blue4"))))
       (shell-output-2-face ((t (:foreground "green4"))))
       (shell-output-3-face ((t (:foreground "green4"))))
       (shell-output-face ((t (:bold t))))
       (shell-prompt-face ((t (:foreground "red4"))))
       (show-block-face1 ((t (:background "gray10"))))
       (show-block-face2 ((t (:background "gray15"))))
       (show-block-face3 ((t (:background "gray20"))))
       (show-block-face4 ((t (:background "gray25"))))
       (show-block-face5 ((t (:background "gray30"))))
       (show-block-face6 ((t (:background "gray35"))))
       (show-block-face7 ((t (:background "gray40"))))
       (show-block-face8 ((t (:background "gray45"))))
       (show-block-face9 ((t (:background "gray50"))))
       (show-paren-match ((t (:background "steelblue3"))))
       (show-paren-match-face ((t (:background "steelblue3"))))
       (show-paren-mismatch ((t (:background "purple" :foreground "white"))))
       (smerge-base ((t (:foreground "orange"))))
       (smerge-markers ((t (:background "grey30"))))
       (smerge-mine ((t (:foreground "cyan"))))
       (smerge-other ((t (:foreground "lightgreen"))))
       (smerge-refined-change ((t (:background "blue4"))))
       (speedbar-button-face ((t (:foreground "green3"))))
       (speedbar-directory-face ((t (:foreground "light blue"))))
       (speedbar-file-face ((t (:foreground "cyan"))))
       (speedbar-highlight-face ((t (:background "sea green"))))
       (speedbar-selected-face ((t (:foreground "red" :underline t))))
       (speedbar-separator-face ((t (:background "blue" :foreground "white" :overline "gray"))))
       (speedbar-tag-face ((t (:foreground "yellow"))))
       (swbuff-current-buffer-face ((t (:foreground "red" :bold t))))
       (table-cell ((t (:background "blue1" :foreground "gray90" :inverse-video nil))))
       (template-message-face ((t (:bold t))))
       (term-black ((t (:foreground "black"))))
       (term-blackbg ((t (nil))))
       (term-blue ((t (:foreground "blue"))))
       (term-blue-bold-face ((t (:bold t :foreground "blue"))))
       (term-blue-face ((t (:foreground "blue"))))
       (term-blue-inv-face ((t (:background "blue"))))
       (term-blue-ul-face ((t (:underline t :foreground "blue"))))
       (term-bluebg ((t (:background "blue"))))
       (term-bold ((t (:bold t))))
       (term-cyan ((t (:foreground "cyan"))))
       (term-cyan-bold-face ((t (:bold t :foreground "cyan"))))
       (term-cyan-face ((t (:foreground "cyan"))))
       (term-cyan-inv-face ((t (:background "cyan"))))
       (term-cyan-ul-face ((t (:underline t :foreground "cyan"))))
       (term-cyanbg ((t (:background "cyan"))))
       (term-default-bg ((t (nil))))
       (term-default-bg-inv ((t (nil))))
       (term-default-bold-face ((t (:bold t))))
       (term-default-face ((t (nil))))
       (term-default-fg ((t (nil))))
       (term-default-fg-inv ((t (nil))))
       (term-default-inv-face ((t (:background "peachpuff" :foreground "black"))))
       (term-default-ul-face ((t (:underline t))))
       (term-green ((t (:foreground "green"))))
       (term-green-bold-face ((t (:bold t :foreground "green"))))
       (term-green-face ((t (:foreground "green"))))
       (term-green-inv-face ((t (:background "green"))))
       (term-green-ul-face ((t (:underline t :foreground "green"))))
       (term-greenbg ((t (:background "green"))))
       (term-invisible ((t (nil))))
       (term-invisible-inv ((t (nil))))
       (term-magenta ((t (:foreground "magenta"))))
       (term-magenta-bold-face ((t (:bold t :foreground "magenta"))))
       (term-magenta-face ((t (:foreground "magenta"))))
       (term-magenta-inv-face ((t (:background "magenta"))))
       (term-magenta-ul-face ((t (:underline t :foreground "magenta"))))
       (term-magentabg ((t (:background "magenta"))))
       (term-red ((t (:foreground "red"))))
       (term-red-bold-face ((t (:bold t :foreground "red"))))
       (term-red-face ((t (:foreground "red"))))
       (term-red-inv-face ((t (:background "red"))))
       (term-red-ul-face ((t (:underline t :foreground "red"))))
       (term-redbg ((t (:background "red"))))
       (term-underline ((t (:underline t))))
       (term-white ((t (:foreground "white"))))
       (term-white-bold-face ((t (:bold t :foreground "white"))))
       (term-white-face ((t (:foreground "white"))))
       (term-white-inv-face ((t (nil))))
       (term-white-ul-face ((t (:underline t :foreground "white"))))
       (term-whitebg ((t (:background "white"))))
       (term-yellow ((t (:foreground "yellow"))))
       (term-yellow-bold-face ((t (:bold t :foreground "yellow"))))
       (term-yellow-face ((t (:foreground "yellow"))))
       (term-yellow-inv-face ((t (:background "yellow"))))
       (term-yellow-ul-face ((t (:underline t :foreground "yellow"))))
       (term-yellowbg ((t (:background "yellow"))))
       (text-cursor ((t (:background "Red3" :foreground "black"))))
       (tool-bar ((t (:background "grey75" :foreground "black" :box (:line-width 1 :style released-button)))))
       (tooltip ((t (:family "helv" :background "lightyellow" :foreground "black"))))
       (trailing-whitespace ((t (:background "red1"))))
       (underline ((t (:underline t))))
       (variable-pitch ((t (:family "helv"))))
       (vc-annotate-face-0046FF ((t (:foreground "wheat" :background "black"))))
       (vcursor ((t (:foreground "blue" :background "cyan" :underline t))))
       (vertical-border ((t (:background "dim gray"))))
       (vhdl-font-lock-attribute-face ((t (:foreground "Orchid"))))
       (vhdl-font-lock-directive-face ((t (:foreground "CadetBlue"))))
       (vhdl-font-lock-enumvalue-face ((t (:foreground "Gold4"))))
       (vhdl-font-lock-function-face ((t (:foreground "Orchid4"))))
       (vhdl-font-lock-prompt-face ((t (:foreground "Red" :bold t))))
       (vhdl-font-lock-reserved-words-face ((t (:foreground "Orange" :bold t))))
       (vhdl-font-lock-translate-off-face ((t (:background "LightGray"))))
       (vhdl-speedbar-architecture-face ((t (:foreground "Blue"))))
       (vhdl-speedbar-architecture-selected-face ((t (:foreground "Blue" :underline t))))
       (vhdl-speedbar-configuration-face ((t (:foreground "DarkGoldenrod"))))
       (vhdl-speedbar-configuration-selected-face ((t (:foreground "DarkGoldenrod" :underline t))))
       (vhdl-speedbar-entity-face ((t (:foreground "ForestGreen"))))
       (vhdl-speedbar-entity-selected-face ((t (:foreground "ForestGreen" :underline t))))
       (vhdl-speedbar-instantiation-face ((t (:foreground "Brown"))))
       (vhdl-speedbar-instantiation-selected-face ((t (:foreground "Brown" :underline t))))
       (vhdl-speedbar-package-face ((t (:foreground "Grey50"))))
       (vhdl-speedbar-package-selected-face ((t (:foreground "Grey50" :underline t))))
       (violet-bold ((t (:bold t :foreground "violet" :weight bold))))
       (violet-italic ((t (:italic t :foreground "violet" :slant italic))))
       (viper-minibuffer-emacs-face ((t (:foreground "Black" :background "darkseagreen2"))))
       (viper-minibuffer-insert-face ((t (:foreground "Black" :background "pink"))))
       (viper-minibuffer-vi-face ((t (:foreground "DarkGreen" :background "grey"))))
       (viper-replace-overlay-face ((t (:foreground "Black" :background "darkseagreen2"))))
       (viper-search-face ((t (:foreground "Black" :background "khaki"))))
       (vm-highlight-url-face  ((t (:bold t :italic t :slant italic :weight bold))))
       (vm-highlighted-header-face  ((t (:bold t :weight bold))))
       (vm-mime-button-face  ((t (:background "grey75" :foreground "black" :box (:line-width 2 :style released-button)))))
       (vm-summary-highlight-face  ((t (:bold t :weight bold))))
       (vm-xface ((t (:background "white" :foreground "black"))))
       (vmpc-pre-sig-face ((t (:foreground "forestgreen"))))
       (vmpc-sig-face ((t (:foreground "steelblue"))))
       (which-func ((t (:foreground "Blue1"))))
       (widget ((t (:size "12" :background "Gray80" :foreground "black"))))
       (widget-button ((t (:bold t :weight bold :box (:line-width 2 :style released-button)))))
       (widget-button-face ((t (:bold t :weight bold :box (:line-width 2 :style released-button)))))
       (widget-button-pressed ((t (:foreground "red1" :background "lightgrey" :box (:line-width 2 :style pressed-button)))))
       (widget-button-pressed-face ((t (:foreground "red1" :background "lightgrey" :box (:line-width 2 :style pressed-button)))))
       (widget-documentation ((t (:foreground "lime green"))))
       (widget-documentation-face ((t (:foreground "lime green"))))
       (widget-field ((t (:background "dim gray"))))
       (widget-field-face ((t (:background "dim gray"))))
       (widget-inactive ((t (:foreground "grey70"))))
       (widget-inactive-face ((t (:foreground "grey70"))))
       (widget-single-line-field ((t (:background "dim gray"))))
       (widget-single-line-field-face ((t (:background "dim gray"))))
       (woman-bold-face ((t (:bold t))))
       (woman-italic-face ((t (:foreground "beige"))))
       (woman-unknown-face ((t (:foreground "LightSalmon"))))
       (x-face ((t (:background "white" :foreground "black"))))
       (x-symbol-heading-face ((t (:bold t))))
       (xrdb-option-name-face ((t (:foreground "red"))))
       (xrdb-option-value-face ((t (:bold t :foreground "magenta"))))
       (xref-keyword-face ((t (:background "blue"))))
       (xref-list-default-face ((t (nil))))
       (xref-list-pilot-face ((t (:background "navy"))))
       (xref-list-symbol-face ((t (:background "navy"))))
       (yellow ((t (:foreground "yellow"))))
       (zmacs-region ((t (:background "cyan" :foreground "black"))))))))

(provide 'manoj-colors)

-
-- 
Youth is a blunder, manhood a struggle, old age a regret. Benjamin
Disraeli, "Coningsby"
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C





^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16  5:19 The latest lisp/faces.el changes seem to break color-themes again Manoj Srivastava
@ 2008-10-16  6:08 ` Miles Bader
  2008-10-16  7:01   ` Manoj Srivastava
  0 siblings, 1 reply; 18+ messages in thread
From: Miles Bader @ 2008-10-16  6:08 UTC (permalink / raw)
  To: emacs-devel

Manoj Srivastava <srivasta@ieee.org> writes:
>         Breaks some color themes. For instance, the attached theme
>  (color-theme-manoj-dark)  is affected. There are a whole lot of errors
>  about invalid face attributes -- which well might be true, but this is
>  a regression for an end user.

Are color themes supposed to be supported?

-Miles

-- 
Quidquid latine dictum sit, altum viditur.




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16  6:08 ` Miles Bader
@ 2008-10-16  7:01   ` Manoj Srivastava
  2008-10-16  7:09     ` Miles Bader
  0 siblings, 1 reply; 18+ messages in thread
From: Manoj Srivastava @ 2008-10-16  7:01 UTC (permalink / raw)
  To: emacs-devel

On Thu, Oct 16 2008, Miles Bader wrote:

> Manoj Srivastava <srivasta@ieee.org> writes:
>>         Breaks some color themes. For instance, the attached theme
>>  (color-theme-manoj-dark)  is affected. There are a whole lot of errors
>>  about invalid face attributes -- which well might be true, but this is
>>  a regression for an end user.
>
> Are color themes supposed to be supported?

        While I am hoping they are, the actual code that is made invalid
 is immaterial: color-themes are on example of long-standing user
 customization that is breaking. While user customizations are not
 always going to be supportable, I think one ought to minimize such
 breakage, since it is likely to be seen as regressions.

        In this specific case, this package is recommended on the emacs
 wiki (I am not sure what relationship that hold to the GNU project).

        However, if it is decided that color-themes are not supported,
 I'll just freeze my emacs at the last working versions, and stop
 bothering the list with these reports.

        thanks for all the work y'all do on Emacs,

        manoj
-- 
At any time, at any place, our snipers can drop you.  Have a nice day.
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C





^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16  7:01   ` Manoj Srivastava
@ 2008-10-16  7:09     ` Miles Bader
  2008-10-16 13:15       ` Michael Olson
  0 siblings, 1 reply; 18+ messages in thread
From: Miles Bader @ 2008-10-16  7:09 UTC (permalink / raw)
  To: emacs-devel

Manoj Srivastava <srivasta@ieee.org> writes:
>> Are color themes supposed to be supported?
>
>         While I am hoping they are, the actual code that is made invalid
>  is immaterial: color-themes are on example of long-standing user
>  customization that is breaking. While user customizations are not
>  always going to be supportable, I think one ought to minimize such
>  breakage, since it is likely to be seen as regressions.

It's just that I have a vague memory of color-themes doing some decidely
dodgy stuff.  (I haven't looked at in ages though)

>         In this specific case, this package is recommended on the emacs
>  wiki (I am not sure what relationship that hold to the GNU project).

No relationship.  [I like emacswiki, but the quality is extremely variable.]

-Miles

-- 
Generous, adj. Originally this word meant noble by birth and was rightly
applied to a great multitude of persons. It now means noble by nature and is
taking a bit of a rest.




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16  7:09     ` Miles Bader
@ 2008-10-16 13:15       ` Michael Olson
  2008-10-16 16:07         ` Chong Yidong
  2008-10-16 16:36         ` Chong Yidong
  0 siblings, 2 replies; 18+ messages in thread
From: Michael Olson @ 2008-10-16 13:15 UTC (permalink / raw)
  To: emacs-devel

Miles Bader <miles@gnu.org> writes:

> Manoj Srivastava <srivasta@ieee.org> writes:
>>> Are color themes supposed to be supported?
>>
>>         While I am hoping they are, the actual code that is made invalid
>>  is immaterial: color-themes are on example of long-standing user
>>  customization that is breaking. While user customizations are not
>>  always going to be supportable, I think one ought to minimize such
>>  breakage, since it is likely to be seen as regressions.
>
> It's just that I have a vague memory of color-themes doing some decidely
> dodgy stuff.  (I haven't looked at in ages though)

The problem could possibly be due to Emacs having problems with using
":foreground nil" in a defface statement.  I just received a patch for
EMMS to that effect.

-- 
|       Michael Olson  |  FSF Associate Member #652     |
| http://mwolson.org/  |  Hobbies: Lisp, HCoop          |
| Projects: Emacs, Muse, ERC, EMMS, ErBot, DVC, Planner |
`-------------------------------------------------------'





^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 13:15       ` Michael Olson
@ 2008-10-16 16:07         ` Chong Yidong
  2008-10-16 16:36         ` Chong Yidong
  1 sibling, 0 replies; 18+ messages in thread
From: Chong Yidong @ 2008-10-16 16:07 UTC (permalink / raw)
  To: Michael Olson; +Cc: emacs-devel

Michael Olson <mwolson@gnu.org> writes:

> Miles Bader <miles@gnu.org> writes:
>
>> Manoj Srivastava <srivasta@ieee.org> writes:
>>>> Are color themes supposed to be supported?
>>>
>>>         While I am hoping they are, the actual code that is made invalid
>>>  is immaterial: color-themes are on example of long-standing user
>>>  customization that is breaking. While user customizations are not
>>>  always going to be supportable, I think one ought to minimize such
>>>  breakage, since it is likely to be seen as regressions.
>>
>> It's just that I have a vague memory of color-themes doing some decidely
>> dodgy stuff.  (I haven't looked at in ages though)
>
> The problem could possibly be due to Emacs having problems with using
> ":foreground nil" in a defface statement.  I just received a patch for
> EMMS to that effect.

Could you come up with a test case that shows how Emacs fails now,
compared to before?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 13:15       ` Michael Olson
  2008-10-16 16:07         ` Chong Yidong
@ 2008-10-16 16:36         ` Chong Yidong
  2008-10-16 18:09           ` Chming
  1 sibling, 1 reply; 18+ messages in thread
From: Chong Yidong @ 2008-10-16 16:36 UTC (permalink / raw)
  To: Michael Olson; +Cc: emacs-devel

Michael Olson <mwolson@gnu.org> writes:

> The problem could possibly be due to Emacs having problems with using
> ":foreground nil" in a defface statement.  I just received a patch for
> EMMS to that effect.

I just checked in a change to make internal-set-lisp-face-attribute
treat null foreground/background as equivalent to unspecified.  This is
a Emacs 20'ism that ought to be phased out in your code, but AFAICT
there's no harm handling it.

Let me know if there is anything else that breaks (I don't use
color-themes so I can't test the original report).




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 16:36         ` Chong Yidong
@ 2008-10-16 18:09           ` Chming
  2008-10-16 19:08             ` Chong Yidong
  0 siblings, 1 reply; 18+ messages in thread
From: Chming @ 2008-10-16 18:09 UTC (permalink / raw)
  To: Chong Yidong; +Cc: Michael Olson, emacs-devel

On my side, the normal emacs startup is fine but it is broken if I am
using multi-tty with emacsclient. Yesterday, I got some errors related
to the face attribute. Today with cvs update, this is gone but still
broken for emacsclient session.

BTW, I am using color-theme.

Thanks a lot,

Max

On Thu, Oct 16, 2008 at 9:36 AM, Chong Yidong <cyd@stupidchicken.com> wrote:
> Michael Olson <mwolson@gnu.org> writes:
>
>> The problem could possibly be due to Emacs having problems with using
>> ":foreground nil" in a defface statement.  I just received a patch for
>> EMMS to that effect.
>
> I just checked in a change to make internal-set-lisp-face-attribute
> treat null foreground/background as equivalent to unspecified.  This is
> a Emacs 20'ism that ought to be phased out in your code, but AFAICT
> there's no harm handling it.
>
> Let me know if there is anything else that breaks (I don't use
> color-themes so I can't test the original report).
>
>
>




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 18:09           ` Chming
@ 2008-10-16 19:08             ` Chong Yidong
  2008-10-16 20:15               ` Chming
  0 siblings, 1 reply; 18+ messages in thread
From: Chong Yidong @ 2008-10-16 19:08 UTC (permalink / raw)
  To: Chming; +Cc: Michael Olson, emacs-devel

Chming <chming@gmail.com> writes:

> On my side, the normal emacs startup is fine but it is broken if I am
> using multi-tty with emacsclient. Yesterday, I got some errors related
> to the face attribute. Today with cvs update, this is gone but still
> broken for emacsclient session.
>
> BTW, I am using color-theme.

Does the error still appear when you disable color-theme?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 19:08             ` Chong Yidong
@ 2008-10-16 20:15               ` Chming
  2008-10-16 20:49                 ` Chong Yidong
  0 siblings, 1 reply; 18+ messages in thread
From: Chming @ 2008-10-16 20:15 UTC (permalink / raw)
  To: Chong Yidong; +Cc: Michael Olson, emacs-devel

It works without color-theme.

Thanks,

Max

On Thu, Oct 16, 2008 at 12:08 PM, Chong Yidong <cyd@stupidchicken.com> wrote:
> Chming <chming@gmail.com> writes:
>
>> On my side, the normal emacs startup is fine but it is broken if I am
>> using multi-tty with emacsclient. Yesterday, I got some errors related
>> to the face attribute. Today with cvs update, this is gone but still
>> broken for emacsclient session.
>>
>> BTW, I am using color-theme.
>
> Does the error still appear when you disable color-theme?
>




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 20:15               ` Chming
@ 2008-10-16 20:49                 ` Chong Yidong
  2008-10-16 22:55                   ` Lennart Borgman (gmail)
  2008-10-17  4:17                   ` Manoj Srivastava
  0 siblings, 2 replies; 18+ messages in thread
From: Chong Yidong @ 2008-10-16 20:49 UTC (permalink / raw)
  To: Chming; +Cc: Michael Olson, emacs-devel

Could someone try to debug what color-theme does that now breaks?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 20:49                 ` Chong Yidong
@ 2008-10-16 22:55                   ` Lennart Borgman (gmail)
  2008-10-16 23:09                     ` Lennart Borgman (gmail)
                                       ` (2 more replies)
  2008-10-17  4:17                   ` Manoj Srivastava
  1 sibling, 3 replies; 18+ messages in thread
From: Lennart Borgman (gmail) @ 2008-10-16 22:55 UTC (permalink / raw)
  To: Chong Yidong
  Cc: Chming, Michael Olson, Vivek Dasmohapatra, Richard M. Stallman,
	emacs-devel

Chong Yidong wrote:
> Could someone try to debug what color-theme does that now breaks?

I do not know about color-theme, but I just noticed that the
htmlfontify.el I distribute with nXhtml is broken too and I guess it is
the same problem. htmlfontify.el should be included in Emacs, but that
seems to have stalled somewhere.

I get an error when I try to use htmlfontify-buffer on
list-colors-display output. I think the problem is that the format of
the data that hfy-get-face-at recieves, but I do not remember how it
looked before. Here is how the function look right now:

(defun hfy-get-face-at (pos)
  (if (or (not show-trailing-whitespace)
          (not (get-text-property pos 'hfy-show-trailing-whitespace)))
      (get-text-property pos 'face)
    (list 'trailing-whitespace (get-text-property pos 'face))))

In the buffer I mentioned above get-text-property will now return things
like

  (:background "snow")

There was some discussions before about removing old style face data,
but I do not remember that either, maybe Richard does.




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 22:55                   ` Lennart Borgman (gmail)
@ 2008-10-16 23:09                     ` Lennart Borgman (gmail)
  2008-10-17  3:09                     ` Chong Yidong
  2008-10-17 17:16                     ` Chong Yidong
  2 siblings, 0 replies; 18+ messages in thread
From: Lennart Borgman (gmail) @ 2008-10-16 23:09 UTC (permalink / raw)
  To: Chong Yidong
  Cc: Chming, emacs-devel, Michael Olson, Vivek Dasmohapatra,
	Richard M. Stallman

Lennart Borgman (gmail) wrote:
> Chong Yidong wrote:
>> Could someone try to debug what color-theme does that now breaks?
> 
> I do not know about color-theme, but I just noticed that the
> htmlfontify.el I distribute with nXhtml is broken too and I guess it is
> the same problem. htmlfontify.el should be included in Emacs, but that
> seems to have stalled somewhere.
> 
> I get an error when I try to use htmlfontify-buffer on
> list-colors-display output. I think the problem is that the format of
> the data that hfy-get-face-at recieves, but I do not remember how it
> looked before. Here is how the function look right now:
> 
> (defun hfy-get-face-at (pos)
>   (if (or (not show-trailing-whitespace)
>           (not (get-text-property pos 'hfy-show-trailing-whitespace)))
>       (get-text-property pos 'face)
>     (list 'trailing-whitespace (get-text-property pos 'face))))
> 
> In the buffer I mentioned above get-text-property will now return things
> like
> 
>   (:background "snow")
> 
> There was some discussions before about removing old style face data,
> but I do not remember that either, maybe Richard does.

Here some more information that might help:

In hfy-fact-at in htmlfontify.el the code used to do

  (let ((overlay-data nil)
        (face-name    (hfy-get-face-at p))
        (prop-seen    nil)
        (found-face   nil)
        (extra-props  nil)
        (text-props   (text-properties-at p))
        ;;(face-names   nil)
        )
    (when (listp face-name)
      (dolist (f face-name)
        (if (listp f) ;; for things like (variable-pitch (:foreground
"red"))
            (setq extra-props (cons f extra-props))
          (setq extra-props (cons :inherit (cons f extra-props)))))
      (setq face-name nil))

Changing the if clause to (if t ...) now makes htmlfontify-buffer work
for list-colors-display, but it may break something else.

I remember I struggled a lot with this part of the code when I tried to
get htmlfontify to work for all kinds of face specs in the buffer. Is
there any documentation now that tells how face specs can look?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 22:55                   ` Lennart Borgman (gmail)
  2008-10-16 23:09                     ` Lennart Borgman (gmail)
@ 2008-10-17  3:09                     ` Chong Yidong
  2008-10-17  7:49                       ` Lennart Borgman (gmail)
  2008-10-17 17:16                     ` Chong Yidong
  2 siblings, 1 reply; 18+ messages in thread
From: Chong Yidong @ 2008-10-17  3:09 UTC (permalink / raw)
  To: Lennart Borgman (gmail)
  Cc: Chming, Michael Olson, Vivek Dasmohapatra, Richard M. Stallman,
	emacs-devel

"Lennart Borgman (gmail)" <lennart.borgman@gmail.com> writes:

> I do not know about color-theme, but I just noticed that the
> htmlfontify.el I distribute with nXhtml is broken too and I guess it is
> the same problem. htmlfontify.el should be included in Emacs, but that
> seems to have stalled somewhere.

Could you provide a simplified test case?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 20:49                 ` Chong Yidong
  2008-10-16 22:55                   ` Lennart Borgman (gmail)
@ 2008-10-17  4:17                   ` Manoj Srivastava
  1 sibling, 0 replies; 18+ messages in thread
From: Manoj Srivastava @ 2008-10-17  4:17 UTC (permalink / raw)
  To: emacs-devel

On Thu, Oct 16 2008, Chong Yidong wrote:

> Could someone try to debug what color-theme does that now breaks?

        It seems to work for my particular color-theme, but I have now
 removed all nil face attributes.

        manoj
-- 
I know you think you thought you knew what you thought I said, but I'm
not sure you understood what you thought I meant.
Manoj Srivastava <srivasta@acm.org> <http://www.golden-gryphon.com/>  
1024D/BF24424C print 4966 F272 D093 B493 410B  924B 21BA DABB BF24 424C





^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-17  3:09                     ` Chong Yidong
@ 2008-10-17  7:49                       ` Lennart Borgman (gmail)
  0 siblings, 0 replies; 18+ messages in thread
From: Lennart Borgman (gmail) @ 2008-10-17  7:49 UTC (permalink / raw)
  To: Chong Yidong
  Cc: Chming, Michael Olson, Vivek Dasmohapatra, Richard M. Stallman,
	emacs-devel

Chong Yidong wrote:
> "Lennart Borgman (gmail)" <lennart.borgman@gmail.com> writes:
> 
>> I do not know about color-theme, but I just noticed that the
>> htmlfontify.el I distribute with nXhtml is broken too and I guess it is
>> the same problem. htmlfontify.el should be included in Emacs, but that
>> seems to have stalled somewhere.
> 
> Could you provide a simplified test case?

It is all in the example I sent. The problem is/was that htmlfontify did
not recognize the format returned by

  (get-text-properties pos 'face)

This was now

  (:background "snow")

which I did not see before.




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-16 22:55                   ` Lennart Borgman (gmail)
  2008-10-16 23:09                     ` Lennart Borgman (gmail)
  2008-10-17  3:09                     ` Chong Yidong
@ 2008-10-17 17:16                     ` Chong Yidong
  2008-10-17 17:54                       ` Chming
  2 siblings, 1 reply; 18+ messages in thread
From: Chong Yidong @ 2008-10-17 17:16 UTC (permalink / raw)
  To: Lennart Borgman (gmail)
  Cc: Chming, Michael Olson, Vivek Dasmohapatra, Richard M. Stallman,
	emacs-devel

I've checked in a fix that should remove the error in face definitions.
Does it work as expected now?




^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: The latest lisp/faces.el changes seem to break color-themes again
  2008-10-17 17:16                     ` Chong Yidong
@ 2008-10-17 17:54                       ` Chming
  0 siblings, 0 replies; 18+ messages in thread
From: Chming @ 2008-10-17 17:54 UTC (permalink / raw)
  To: Chong Yidong
  Cc: Michael Olson, Lennart Borgman (gmail), Vivek Dasmohapatra,
	Richard M. Stallman, emacs-devel

It works now on my side with multi-tty and emacsclient.

Thanks and regards,

Max

On Fri, Oct 17, 2008 at 10:16 AM, Chong Yidong <cyd@stupidchicken.com> wrote:
> I've checked in a fix that should remove the error in face definitions.
> Does it work as expected now?
>




^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2008-10-17 17:54 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-10-16  5:19 The latest lisp/faces.el changes seem to break color-themes again Manoj Srivastava
2008-10-16  6:08 ` Miles Bader
2008-10-16  7:01   ` Manoj Srivastava
2008-10-16  7:09     ` Miles Bader
2008-10-16 13:15       ` Michael Olson
2008-10-16 16:07         ` Chong Yidong
2008-10-16 16:36         ` Chong Yidong
2008-10-16 18:09           ` Chming
2008-10-16 19:08             ` Chong Yidong
2008-10-16 20:15               ` Chming
2008-10-16 20:49                 ` Chong Yidong
2008-10-16 22:55                   ` Lennart Borgman (gmail)
2008-10-16 23:09                     ` Lennart Borgman (gmail)
2008-10-17  3:09                     ` Chong Yidong
2008-10-17  7:49                       ` Lennart Borgman (gmail)
2008-10-17 17:16                     ` Chong Yidong
2008-10-17 17:54                       ` Chming
2008-10-17  4:17                   ` Manoj Srivastava

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).