Add local
authorJoerg Jaspert <joerg@debian.org>
Sun, 3 Mar 2013 13:33:18 +0000 (14:33 +0100)
committerJoerg Jaspert <joerg@debian.org>
Sun, 3 Mar 2013 13:33:18 +0000 (14:33 +0100)
35 files changed:
elisp/local/bbdb-pgp.el [new file with mode: 0644]
elisp/local/beamer.el [new file with mode: 0644]
elisp/local/buildd-gnus.el [new file with mode: 0644]
elisp/local/color-theme.el [new file with mode: 0644]
elisp/local/crypt++.el [new file with mode: 0644]
elisp/local/dired-single.el [new file with mode: 0644]
elisp/local/follow-mouse.el [new file with mode: 0644]
elisp/local/ganneff-gnus.el [new file with mode: 0644]
elisp/local/ganneff.el [new file with mode: 0644]
elisp/local/gnus-alias.el [new file with mode: 0644]
elisp/local/help-fns+.el [new file with mode: 0644]
elisp/local/highline.el [new file with mode: 0644]
elisp/local/ido-better-flex.el [new file with mode: 0644]
elisp/local/ldap-mode.el [new file with mode: 0644]
elisp/local/libmpdee.el [new file with mode: 0644]
elisp/local/linum-old.el [new file with mode: 0644]
elisp/local/linum.el [new file with mode: 0644]
elisp/local/loaddefs.el [new file with mode: 0644]
elisp/local/manoj-colors.el [new file with mode: 0644]
elisp/local/message-utils.el [new file with mode: 0644]
elisp/local/mgp-mode-cd.el [new file with mode: 0644]
elisp/local/mingus-stays-home.el [new file with mode: 0644]
elisp/local/mingus.el [new file with mode: 0644]
elisp/local/miniedit.el [new file with mode: 0644]
elisp/local/modeline-posn.el [new file with mode: 0644]
elisp/local/naquadah-theme.el [new file with mode: 0644]
elisp/local/nnir.el [new file with mode: 0644]
elisp/local/nntodo.el [new file with mode: 0644]
elisp/local/org-google-weather.el [new file with mode: 0644]
elisp/local/randomsig.el [new file with mode: 0644]
elisp/local/typing.el [new file with mode: 0644]
elisp/local/update-autoloads.el [new file with mode: 0644]
elisp/local/uptimes.el [new file with mode: 0644]
elisp/local/wdired.el [new file with mode: 0644]
elisp/local/worklog.el [new file with mode: 0644]

diff --git a/elisp/local/bbdb-pgp.el b/elisp/local/bbdb-pgp.el
new file mode 100644 (file)
index 0000000..25c6a97
--- /dev/null
@@ -0,0 +1,233 @@
+;;; BBDB-PGP.EL --- use BBDB to store PGP preferences
+
+;; Copyright (C) 1997,1999 Kevin Davidson
+
+;; Author: Kevin Davidson tkld@quadstone.com
+;; Maintainer: Kevin Davidson tkld@quadstone.com
+;; Created: 10 Nov 1997
+;; Version: $Revision: 1.3 $
+;; Keywords: PGP BBDB message mailcrypt
+
+;; This program 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 2, or (at your option)
+;; any later version.
+
+;; This program 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.
+
+;; A copy of the GNU General Public License can be obtained from this
+;; program's author (send electronic mail to tkld@quadstone.com) or
+;; from the Free Software Foundation, Inc.,59 Temple Place - Suite 330,
+;; Boston, MA 02111-1307, USA.
+
+;; LCD Archive Entry:
+;; bbdb-pgp|Kevin Davidson|tkld@quadstone.com
+;; |Use BBDB to store PGP preferences
+;; |$Date: 2002/10/20 18:03:42 $|$Revision: 1.3 $|~/packages/bbdb-pgp.el
+
+;;; Commentary:
+;;
+;; It is believed that encrypted mail works best if all mail between
+;; individuals is encrypted - even concerning matters that are not
+;; confidential. The reasoning is that confidential messages cannot
+;; then be easily spotted and decryption efforts concentrated on them.
+;; Some people therefore prefer to have all their email encrypted.
+;; This package allows you to mark the BBDB entries for those
+;; individuals so that messages will be encrypted when they are sent.
+;;
+;; These packages are required: BBDB, mailcrypt, message
+;;
+;; message.el is included with recent versions of Emacs.
+;; You can use mail-mode as well as message-mode to send mail.
+
+;;; Usage:
+;; (require 'bbdb-pgp)
+;;
+;; Then for all users who you want to send encrypted mail to, add the field
+;; pgp-mail with the value `encrypt'. Alternatively you can add the value
+;; `sign' if you just want to send signed messages.
+;;
+;; and possibly (if you do not want the PGP field printed out)
+;; (add-hook 'bbdb-print-elide bbdb-pgp-field)
+;; 
+;; The variable bbdb/pgp-default-action defines what to do if the recipient
+;; is not in the BBDB.
+
+;;; TODO
+;; Spot incoming PGP mail by hooking into mc-verify/decrypt and adding pgp-mail
+;; field to BBDB entry (creating one if necessary); like bbdb-sc.el maintains
+;; attribution prefs.
+
+;;; PGP Public Key
+;; The author's public key is available from any public PGP keyserver
+;; eg http://www.pgp.net/pgpnet/
+;; Fingerprint: 1F A9 3F 3E 90 F7 85 64  55 35 32 C8 75 91 3A E3
+
+;;; Change log:
+;; $Log: bbdb-pgp.el,v $
+;; Revision 1.3  2002/10/20 18:03:42  waider
+;; *** empty log message ***
+;;
+;; Revision 1.2  2002/10/18 10:54:34  waider
+;; allows bbdb-pgp.el to be configured to use message.el MML tags to perform
+;; the signing and encryption, instead of only plain Mailcrypt which is not
+;; MIME-aware. (Michael Shields)
+;;
+;; Revision 1.1  2001/01/24 21:19:08  waider
+;; Add-ons that didn't make it to the current release.
+;;
+;; Revision 1.4  1999/01/05 13:17:00  tkld
+;; Update GPL version number and FSF snail mail address.
+;;
+;; Revision 1.3  1997/11/10 15:20:29  tkld
+;; Expand commentary. Support encrypt/sign. Support mail-mode
+;; (sendmail.el).
+;;
+;; Revision 1.3  1997/11/10 15:10:19  tkld
+;; Update commentary. Support sendmail.el. Support signing or encrypting.
+;;
+;; Revision 1.2  1997/11/10 14:27:07  tkld
+;; Remembered to widen buffer before encrypting.
+;;
+;; Revision 1.1  1997/11/10 14:22:06  tkld
+;; Initial revision
+;;
+
+;;; Code:
+
+(require 'message)
+(require 'bbdb)
+(require 'mailcrypt)
+
+(defconst bbdb/pgp-version (substring "$Revision: 1.3 $" 11 -2)
+  "$Id: bbdb-pgp.el,v 1.3 2002/10/20 18:03:42 waider Exp $
+
+Report bugs to: Kevin Davidson tkld@quadstone.com")
+
+;;;###autoload
+(defgroup bbdb-utilities-pgp nil
+  "Automatically sign and/or encrypt outgoing messages."
+  :link '(emacs-library-link :tag "Lisp Source File" "bbdb-pgp.el")
+  :group 'bbdb-utilities)
+
+
+(defcustom bbdb/pgp-field 'pgp-mail
+  "*Field to use in BBDB to store PGP preferences.
+
+If this field's value in a record is \"encrypt\" then messages are
+encrypted. If it is \"sign\" then messages are signed."
+  :type 'symbol
+  :tag "BBDB Field"
+  :require 'bbdb
+  :group 'bbdb-utilities-pgp)
+
+(defcustom bbdb/pgp-method 'mailcrypt
+  "*How to sign or encrypt messages.
+
+'mailcrypt     means use Mailcrypt.
+'mml-pgp       means add MML tags for Message to use old PGP format
+'mml-pgpmime   means add MML tags for Message to use PGP/MIME
+'mml-smime     means add MML tags for Message to use S/MIME"
+  :type '(choice
+         (const :tag "Mailcrypt" mailcrypt :require 'mailcrypt)
+         (const :tag "MML PGP" mml-pgp :require 'mml)
+         (const :tag "MML PGP/MIME" mml-pgpmime :require 'mml)
+         (const :tag "MML S/MIME" mml-smime :require 'mml))
+  :tag "Signing/Encryption Method"
+  :group 'bbdb-utilities-pgp)
+
+(defcustom bbdb/pgp-default-action nil
+  "*Default action when sending a message and the recipient is not in BBDB.
+
+nil         means do nothing.
+'encrypt    means encrypt message.
+'sign       means sign message."
+  :type '(choice
+         (const :tag "Do Nothing")
+         (const :tag "Encrypt" encrypt)
+         (const :tag "Sign" sign))
+  :tag "Default Action"
+  :group 'bbdb-utilities-pgp)
+
+(defun bbdb/pgp-get-pgp (name address)
+  "Look up user NAME and ADDRESS in BBDB and return the PGP preference."
+  (let* ((record (bbdb-search-simple name address))
+        (pgp (and record
+                  (bbdb-record-getprop record bbdb/pgp-field))))
+    pgp))
+
+(defun bbdb/pgp-sign ()
+  "Sign a message.
+bbdb/pgp-method controls the method used."
+  (cond
+   ((eq bbdb/pgp-method 'mailcrypt)
+    (mc-sign 0))
+   ((eq bbdb/pgp-method 'mml-pgp)
+    (mml-secure-message-sign-pgp))
+   ((eq bbdb/pgp-method 'mml-pgpmime)
+    (mml-secure-message-sign-pgpmime))
+   ((eq bbdb/pgp-method 'mml-smime)
+    (mml-secure-message-sign-smime))
+   (t
+    (error 'invalid-state "bbdb/pgp-method"))))
+
+(defun bbdb/pgp-encrypt ()
+  "Encrypt and sign a message.
+bbdb/pgp-method controls the method used."
+  (cond
+   ((eq bbdb/pgp-method 'mailcrypt)
+    (mc-encrypt 0))
+   ((eq bbdb/pgp-method 'mml-pgp)
+    (mml-secure-message-encrypt-pgp))
+   ((eq bbdb/pgp-method 'mml-pgpmime)
+    (mml-secure-message-encrypt-pgpmime))
+   ((eq bbdb/pgp-method 'mml-smime)
+    (mml-secure-message-encrypt-smime))
+   (t
+    (error 'invalid-state "bbdb/pgp-method"))))
+
+(defun bbdb/pgp-hook-fun ()
+  "Function to be added to message-send-hook
+Uses PGP to encrypt messages to users marked in the BBDB with the
+field `bbdb/pgp-field'.
+The user is prompted before encryption or signing."
+  (save-restriction
+    (save-excursion
+      (message-narrow-to-headers)
+      (and (featurep 'mailalias)
+          (not (featurep 'mailabbrev))
+          mail-aliases
+          (expand-mail-aliases (point-min) (point-max)))
+      (let* ((to-field (mail-fetch-field "To" nil t))
+            (address (mail-extract-address-components (or to-field ""))))
+       (widen)
+       (if (not (equal address '(nil nil)))
+           (let ((pgp-p (bbdb/pgp-get-pgp (car address) (car (cdr address)))))
+             (cond
+              ((string= "encrypt" pgp-p) 
+               (and (y-or-n-p "Encrypt message? ")
+                    (bbdb/pgp-encrypt)))
+              ((string= "sign" pgp-p)
+               (and (y-or-n-p "Sign message? ")
+                    (bbdb/pgp-sign)))
+              (t
+               (cond
+                ((eq bbdb/pgp-default-action 'encrypt)
+                 (and (y-or-n-p "Encrypt message? ")
+                      (bbdb/pgp-encrypt)))
+                ((eq bbdb/pgp-default-action 'sign)
+                 (and (y-or-n-p "Sign message? ")
+                      (bbdb/pgp-sign)))
+                (t
+                 nil))))))))))
+
+(add-hook 'message-send-hook 'bbdb/pgp-hook-fun)
+(add-hook 'mail-send-hook 'bbdb/pgp-hook-fun)
+
+(provide 'bbdb-pgp)
+
+;;; BBDB-PGP.EL ends here
diff --git a/elisp/local/beamer.el b/elisp/local/beamer.el
new file mode 100644 (file)
index 0000000..6a12d4b
--- /dev/null
@@ -0,0 +1,134 @@
+;;; beamer.el --- AUCTeX style for the latex-beamer class
+
+;; Copyright (C) 2004 Thomas Baumann
+;; License: GPL, see the file COPYING in the base directory of AUCTeX
+
+;; Author: Thomas Baumann <thomas.baumann@ch.tum.de>
+;; Created: 2003-12-20
+;; Version: $Id: beamer.el,v 1.3 2004/04/29 05:07:22 tantau Exp $
+;; Keywords: tex
+
+;;; Commentary:
+
+;; This file adds support for the latex-beamer class.
+;;
+;; This file is intended to be used with the AUCTeX-Package.
+;; Put this File into your TeX-style-path. You may also
+;; byte-compile this file.
+
+;;; Code:
+(TeX-add-style-hook "beamer"
+ (function
+  (lambda ()
+    (defvar beamer-use-section-labels-flag nil
+      "Controls whether section labels are added")
+    (unless beamer-use-section-labels-flag
+      (make-local-variable 'LaTeX-section-hook)
+      (setq LaTeX-section-hook
+             '(LaTeX-section-heading
+               LaTeX-section-title
+               LaTeX-section-section)))
+
+    (setq LaTeX-item-list
+          (append '(("itemize" . LaTeX-item-beamer)
+                    ("enumerate" . LaTeX-item-beamer))
+                  LaTeX-item-list))
+
+    (TeX-add-symbols
+     '("alert" 1)
+     '("alt" TeX-arg-beamer-overlay-spec 2)
+     '("beamerbutton" 1)
+     '("beamergotobutton" 1)
+     '("beamerreturnbutton" 1)
+     '("beamerskipbutton" 1)
+     '("frame" TeX-arg-beamer-frametitle)
+     '("frametitle" 1)
+     '("hyperlink" TeX-arg-beamer-overlay-spec 2)
+     '("hyperlinkslideprev" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkslidenext" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkframestart" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkframeend" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkframestartnext" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkframeendprev" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkpresentationstart" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkpresentationend" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkappendixstart" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkappendixend" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkdocumentstart" TeX-arg-beamer-overlay-spec 1)
+     '("hyperlinkdocumentend" TeX-arg-beamer-overlay-spec 1)
+     '("hypertarget" TeX-arg-beamer-overlay-spec 2)
+     '("institute" 1)
+     '("invisible" TeX-arg-beamer-overlay-spec 1)
+     '("label" TeX-arg-beamer-overlay-spec 1)
+     '("logo" 1)
+     '("note" TeX-arg-beamer-note 1)
+     '("only" TeX-arg-beamer-overlay-spec 1)
+     '("onslide" TeX-arg-beamer-overlay-spec)
+     '("partpage")
+     '("pause")
+     '("structure" TeX-arg-beamer-overlay-spec 1)
+     '("temporal" TeX-arg-beamer-overlay-spec 3)
+     '("titlepage")
+     '("titlegraphic" 1)
+     '("uncover" TeX-arg-beamer-overlay-spec 1)
+     '("visible" TeX-arg-beamer-overlay-spec 1)
+     )
+    
+    (LaTeX-add-environments
+     '("actionenv")
+     '("alertblock" 1)
+     '("beamerboxesrounded" 1)
+     '("block" 1)
+     '("column" "Width")
+     "columns"
+     "columnsonlytextwidth"
+     '("exampleblock" 1)
+     '("onlyenv" (lambda (env &rest ignore)
+                   (LaTeX-insert-environment
+                    env
+                    (let ((overlay (read-input "Overlay: ")))
+                      (if (not (zerop (length overlay)))
+                          (format "<%s>" overlay))))))
+     '("overlayarea" "Area width" "Area height")
+     '("overprint"  (lambda (env &rest ignore)
+                      (LaTeX-insert-environment
+                       env
+                       (let ((overlay (read-input "Overlay: ")))
+                         (if (not (zerop (length overlay)))
+                             (format "{%s}" overlay)))))))
+
+    )))
+
+(defun TeX-arg-beamer-overlay-spec (optional &optional prompt)
+  "Prompt for overlay specification." 
+  (let ((overlay (read-input "Overlay: ")))
+    (if (not (zerop (length overlay)))
+        (progn (insert "<" overlay ">")))
+    (indent-according-to-mode)))
+
+(defun TeX-arg-beamer-frametitle (optional &optional prompt)
+  "Prompt for the frametitle."
+  (let ((title (read-input "What title: ")))
+    (if (not (zerop (length title)))
+        (progn (insert TeX-grop TeX-esc "frametitle" TeX-grop 
+                       title TeX-grcl TeX-grcl))
+      (progn (insert TeX-grop TeX-grcl)))))
+
+(defun LaTeX-item-beamer ()
+  "Insert a new item with an optional overlay argument."
+  (TeX-insert-macro "item")
+  (delete-horizontal-space)
+  (TeX-arg-beamer-overlay-spec 0)
+  (insert " ")
+  (indent-according-to-mode))
+  
+(defun TeX-arg-beamer-note (optional &optional prompt)
+  "Prompt for overlay specification and optional argument."
+  (let ((overlay (read-input "Overlay: "))
+        (options (read-input "Options: ")))
+    (if (not (zerop (length overlay)))
+        (progn (insert "<" overlay ">")))
+    (if (not (zerop (length options)))
+        (progn (insert "[" options "]")))
+    (indent-according-to-mode)))
+
diff --git a/elisp/local/buildd-gnus.el b/elisp/local/buildd-gnus.el
new file mode 100644 (file)
index 0000000..69a909c
--- /dev/null
@@ -0,0 +1,313 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+;;; Buildd handling
+
+;; User controllable variables
+
+(defvar buildd-log-base-addr "http://amd64.ftbfs.de/build.php?"
+  "The base URL for build logs; used in bug report templates.")
+; (defvar buildd-mail-addr-alist '(("sparc" . "buildd@vore.debian.org")
+;                             ("hppa" . "buildd@sarti.debian.org")
+;                             ("ia64" . "buildd@caballero.debian.org")
+;                             ("arm" . "buildd@europa.armlinux.org")
+;                             ("alpha" . "buildd@escher.debian.org")
+;                             ("i386" . "buildd@gluck.debian.org"))
+;   "Map an architecture (from a bug report acknowledgement) to buildd email address.")
+
+(defvar buildd-mail-addr-alist '(("amd64" . "buildd@bester.farm.ftbfs.de")
+                                ("netwinder" . "buildd@netwinder.gag.com"))
+  "Map a hostname (from a bug report acknowledgement) to a buildd email address.")
+
+(defvar manual-source-deps-file "~/debian/srcdep/madd-sd_unstable"
+  "The filename of the manually added source deps.")
+
+;;;; Functions for dealing with mail from the build daemon.
+;;;; Adapted from Roman Hodek's rmail originals.
+
+;; Basic reply wrapper used by most other functions
+(defun buildd-prepare-mail (label send-now &rest ins)
+  "Generate a reply to the buildd.
+LABEL is an rmail label to set.
+If SEND-NOW is true send the mail before returning.
+INS is what to put in the body of the reply."
+  (gnus-summary-reply)
+  (goto-char (point-max))
+  (while ins
+       (insert (car ins))
+       (setq ins (cdr ins)))
+  (if send-now
+      (message-send-and-exit)))
+;;
+
+(defun buildd-reply-ok ()
+  "Tell the buildd to upload the package."
+  (interactive)
+  (save-excursion
+    (let (beg end str (message-inhibit-body-encoding t))
+      (set-buffer "*Article*")
+      (goto-char (point-max))
+      (if (not (re-search-backward "^[^        ]*\\.changes:$"))
+         (error "Can't find .changes: line"))
+      (forward-line 1)
+      (beginning-of-line)
+      (setq beg (point))
+      (if (not (re-search-forward "^Files: $"))
+         (error "Can't find Files: line"))
+      (beginning-of-line)
+      (forward-line 1)
+      (while (looking-at "^ ")
+       (forward-line 1))
+      (setq end (point))
+      (setq str (buffer-substring beg end))
+
+      (gnus-summary-reply)
+      (goto-char (point-max))
+      (setq beg (point))
+      (insert str)
+      (goto-char (point-max))
+      (setq end (point))
+      (pgg-sign-region 0 beg end)
+      (message-send-and-exit))))
+
+(defun buildd-reply-newversion ()
+  "Tell the buildd to build the new version of the package."
+  (interactive)
+  (save-excursion
+    (let (str)
+      (set-buffer "*Article*")
+      (goto-char (point-min))
+      (if (not (re-search-forward "only different version(s) \\([^     ]*\\) found"))
+         (error "Can't find version"))
+      (setq str (buffer-substring (match-beginning 1) (match-end 1)))
+
+      (buildd-prepare-mail "newv" t "newvers " str "\n"))))
+
+(defun buildd-reply-depretry ()
+  "Tell the buildd to retry the package when a dependency becomes available."
+  (interactive)
+  (save-excursion
+    (let ((deps ""))
+      (set-buffer "*Article*")
+      (goto-char (point-min))
+      (while (re-search-forward
+             "^E: Package \\([^ ]*\\) has no installation candidate$"
+             (point-max) t)
+       (if (> (length deps) 0) (setq deps (concat deps ", ")))
+       (setq deps (concat deps (buffer-substring (match-beginning 1)
+                                                 (match-end 1)))))
+      (goto-char (point-min))
+      (while (re-search-forward
+             "^E: Couldn't find package \\([^ ]*\\)$" (point-max) t)
+       (if (> (length deps) 0) (setq deps (concat deps ", ")))
+       (setq deps (concat deps (buffer-substring (match-beginning 1)
+                                                 (match-end 1)))))
+      (goto-char (point-min))
+      (if (re-search-forward
+          "^After installing, the following source dependencies"
+          (point-max) t)
+         (progn
+           (forward-line 1)
+           (while (re-search-forward
+                   "\\([^ (]*\\)(inst [^ ]* ! \\([<>=]*\\) wanted \\([^ ]*\\))"
+                   (point-max) t)
+             (if (> (length deps) 0) (setq deps (concat deps ", ")))
+             (setq deps (concat deps
+                                (buffer-substring (match-beginning 1)
+                                                  (match-end 1))
+                                " ("
+                                (buffer-substring (match-beginning 2)
+                                                  (match-end 2))
+                                " "
+                                (buffer-substring (match-beginning 3)
+                                                  (match-end 3))
+                                ")")))))
+      (buildd-prepare-mail "dretry" nil "dep-retry " deps "\n")
+      (forward-line -1)
+      (end-of-line))))
+
+(defun buildd-reply-retry ()
+  "Tell the buildd to retry the build."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "retry" t "retry\n")))
+
+(defun buildd-reply-giveback ()
+  "Tell the buildd to give the build back."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "giveback" t "giveback\n")))
+
+(defun buildd-reply-notforus ()
+  "Tell the buildd that this package is not for us."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "not-for-us" t "not-for-us\n")))
+
+(defun buildd-reply-manual ()
+  "Tell the buildd that this package will be finished manually."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "manual" t "manual\n")))
+
+(defun buildd-reply-purge ()
+  "Tell the buildd to purge the package's build tree."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "purge" t "purge\n")))
+
+(defun buildd-reply-fail ()
+  "Tell the buildd the build failed (and why)."
+  (interactive)
+  (save-excursion
+       (buildd-prepare-mail "failed" nil "fail\n")))
+
+(defun buildd-bug ()
+  "Generate a bug report based on a build log from a buildd."
+  (interactive)
+  (save-excursion
+    (let (pkgv pkg vers dist time)
+      (set-buffer "*Article*")
+      (goto-char (point-min))
+      (if (not (re-search-forward "^Subject: Log for .* build of \\([^      ][^     ]*\\)_\\([^     ][^     ]*\\) (dist=\\([a-z]*\\))"))
+         (error "Can't find package+version in subject"))
+      (setq pkg (buffer-substring (match-beginning 1) (match-end 1))
+           vers (buffer-substring (match-beginning 2) (match-end 2))
+           dist (buffer-substring (match-beginning 3) (match-end 3)))
+      (if (not (re-search-forward "^Automatic build of .* on \\(.*\\) by sbuild/\\([^  ]*\\).*"))
+         (error "Can't find sbuild header in body"))
+      (setq host (buffer-substring (match-beginning 1) (match-end 1)))
+      (setq arch (buffer-substring (match-beginning 2) (match-end 2)))
+      (setq pkgv (concat pkg "_" vers))
+      (if (not (re-search-forward "^Build started at \\([0-9-]*\\)"))
+         (error "Can't find package+version in subject"))
+      (setq time (buffer-substring (match-beginning 1) (match-end 1)))
+
+      ; Copy the build-log
+      (goto-char (point-min))
+      (re-search-forward "^Automatic build of .* on .* by sbuild/")
+      (beginning-of-line)
+      (let ((beg (point)))
+       (goto-char (re-search-forward "^Build needed .* disk space$"))
+       (copy-region-as-kill beg (point)))
+      (setq build-log (car kill-ring-yank-pointer))
+
+      ; Generate the bug report mail
+      (message-mail "submit@bugs.debian.org"
+                   (concat pkgv "(" dist "/" arch "/" host "): "))
+      (message-goto-body)
+      (insert
+       (concat "Package: " pkg "\nVersion: " vers
+              "\nSeverity: serious\n\n"))
+      ;; Insert the build log and prefix it
+      (let ((beg (point)))
+       (insert build-log)
+       (forward-line 1)
+       (prefix-region "| " beg (point)))
+      ;; Insert the footer
+      (insert
+       (concat "\n"
+              "A complete build log can be found at\n"
+              buildd-log-base-addr "arch=" arch "&pkg=" pkg "&ver=" vers "\n\n"))
+      ;; Remove some obviously unnecessary stuff
+      (goto-char (point-min))
+      (re-search-forward "^| Checking available source versions...$")
+      (beginning-of-line)
+      (let ((beg (point)))
+       (goto-char (re-search-forward "^| \\*\\* Using build dependencies supplied by package:$"))
+       (beginning-of-line)
+       (message-elide-region beg (point)))
+      (save-excursion
+       (if (re-search-forward "^| \\*\\* Filtered missing central deps that are dependencies of or provide build-deps:$" nil 1)
+           (progn
+             (beginning-of-line)
+             (let ((beg (point)))
+               (forward-line 2)
+               (delete-region beg (point))))))
+      ; Clear everything else
+      (delete-other-windows)
+      (recenter)
+      )))
+
+(defun buildd-bug-ack-append (edit-addr)
+  "Tell a buildd to fail a package based on a bug report acknowledgement."
+  (interactive "P")
+  (save-excursion
+        (let (bugno pkgv pkg vers dist beg end (message-signature nil))
+         (set-buffer "*Article*")
+          (goto-char (point-min))
+          (if (not (re-search-forward "^Subject: Bug#\\([0-9]*\\): Acknowledgement (\\([^       ][^     ]*\\)_\\([^     ][^     ]*\\)(\\([a-z]+\\)/\\([a-z]+\\)/\\([a-z]+\\)): "))
+                  (error "Can't find bug#, package+version, and/or dist in subject"))
+          (setq bugno (buffer-substring (match-beginning 1) (match-end 1))
+                        pkg (buffer-substring (match-beginning 2) (match-end 2))
+                        vers (buffer-substring (match-beginning 3) (match-end 3))
+                        dist (buffer-substring (match-beginning 4) (match-end 4))
+                       arch (buffer-substring (match-beginning 5) (match-end 5))
+                       host (buffer-substring (match-beginning 6) (match-end 6)))
+          (setq pkgv (concat pkg "_" vers))
+         ; Find the right buildd to mail
+         (loop for (this-host . this-addr) in buildd-mail-addr-alist
+               when (string= host this-host)
+               do (setq buildd-mail-addr this-addr))
+         ; Finally compose the mail
+         (message-mail buildd-mail-addr
+                       (concat "Re: Log for failed build of " pkgv " (dist=" dist ")"))
+         (message-goto-body)
+         (insert (concat "fail\nsee #" bugno "\n"))
+         (message-send-and-exit))))
+
+(defun buildd-reopen-bug (bugno)
+  "Generate a template mail to reopen a bug report."
+  (interactive "nBug Number: ")
+  (save-excursion
+        (message-mail (concat "control@bugs.debian.org, " bugno "@bugs.debian.org")
+                     (concat "Re: Bug#" bugno ": "))
+       (message-goto-body)
+       (insert (concat "reopen " bugno "\nthanks\n"))
+       (message-goto-subject)))
+
+(defun buildd-find-place-for-new-source-dep (package)
+  "Finds a place for a new source dependency"
+  (let ((this-package "")
+       (found-place nil))
+    (goto-char (point-min))
+    ; Skip the comments and jump to the source deps
+    (re-search-forward "^[a-zA-Z0-9]*:")
+    (beginning-of-line)
+    (forward-line -1)
+    ; Find the first higher (alphabetically later) package name
+    (while (and (< (point) (point-max)) (not found-place))
+      (progn
+       (re-search-forward "^\\([a-zA-Z0-9\\-]*\\):")
+       (setq this-package (buffer-substring (match-beginning 1) (match-end 1)))
+       (if (string-lessp package this-package)
+           (setq found-place t))))
+    ; Should never happen (assuming no source package is > `zephyr')
+    (if (not found-place)
+       (error "Couldn't find place for package %s" package))
+    ; Insert the package name, ready for the user to add the first source dep
+    (beginning-of-line)
+    (insert (format "%s: \n" package))
+    (forward-char -1)
+    ))
+
+;; Brings up a buffer with source-dependencies.manual file in it and
+;; jumps to the right place.
+
+(defun buildd-edit-manual-source-deps ()
+  "Opens the manually added source dependencies file and jumps to the
+right place in the file."
+  (interactive)
+  (save-excursion
+    (set-buffer "*Article*")
+    (goto-char (point-min))
+    (if (not (re-search-forward "Subject: Log for \\(failed\\|successful\\) build of \\([a-zA-z0-9\\-]*\\)_"))
+       (error "Can't find valid subject"))
+    (setq package (buffer-substring (match-beginning 2) (match-end 2)))
+    (find-file manual-source-deps-file)
+    (goto-char (point-min))
+    (if (re-search-forward (format "^%s:" package) nil t)
+       (progn
+         (end-of-line)
+         (insert ", "))
+      (buildd-find-place-for-new-source-dep package))
+    ))
+(provide 'buildd-gnus)
diff --git a/elisp/local/color-theme.el b/elisp/local/color-theme.el
new file mode 100644 (file)
index 0000000..e4304a4
--- /dev/null
@@ -0,0 +1,14432 @@
+;;; color-theme.el --- install color themes\r
+\r
+;; Copyright (C) 1999, 2000  Jonadab the Unsightly One <jonadab@bright.net>\r
+;; Copyright (C) 2000, 2001, 2002, 2003  Alex Schroeder <alex@gnu.org>\r
+\r
+;; Version: 6.5.2\r
+;; Keywords: faces\r
+;; Author: Jonadab the Unsightly One <jonadab@bright.net>\r
+;; Maintainer: Alex Schroeder <alex@gnu.org>\r
+;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ColorTheme\r
+\r
+;; This file is not part of GNU Emacs.\r
+\r
+;; This is free software; you can redistribute it and/or modify it under\r
+;; the terms of the GNU General Public License as published by the Free\r
+;; Software Foundation; either version 2, or (at your option) any later\r
+;; version.\r
+;;\r
+;; This is distributed in the hope that it will be useful, but WITHOUT\r
+;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or\r
+;; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License\r
+;; for more details.\r
+;;\r
+;; You should have received a copy of the GNU General Public License\r
+;; along with GNU Emacs; see the file COPYING.  If not, write to the\r
+;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,\r
+;; MA 02111-1307, USA.\r
+\r
+;;; Commentary:\r
+\r
+;; Sharing your current color setup:\r
+;;\r
+;; Use `color-theme-submit'.  If you have already invested time in\r
+;; customizing Emacs faces, please consider sharing your current setup.\r
+;; Make sure that color-theme.el is in your `load-path'.  Type M-x\r
+;; load-library RET color-theme RET to load all the functions.  Type M-x\r
+;; color-theme-submit RET and mail the result to the maintainer of this\r
+;; package (see above for mail addres).\r
+;;\r
+;; If you want to make sure that all your customization was exported,\r
+;; type M-x list-faces-display RET to get a list of all faces currently\r
+;; defined.  This is the list of faces that `color-theme-print' uses.\r
+\r
+;; Installing a color theme:\r
+;;\r
+;; Make sure that color-theme.el is in your `load-path'.  Type M-x\r
+;; load-library RET color-theme RET to load all the functions.\r
+;;\r
+;; The main function to call is color-theme-select.  Type M-x\r
+;; color-theme-select RET.  That creates a Color Theme Selection\r
+;; buffer.  Press RET or `i' on a color theme to install it for the\r
+;; rest of your session.\r
+;;\r
+;; If you want to install the color theme as soon as Emacs is started\r
+;; up, read the description of the theme you like and remember the\r
+;; name of the color theme function.  Press `d' on a color theme in\r
+;; the Color Theme Selection buffer to read the description.  Assuming\r
+;; you like the Gnome2 theme, you'll find that the function to use is\r
+;; called `color-theme-gnome2'.  Add the following to the end of your\r
+;; .emacs (removing the leading `;;').\r
+;;\r
+;; (require 'color-theme)\r
+;; (color-theme-gnome2)\r
+\r
+;; Changing menu colors:\r
+;;\r
+;; In Emacs 21 on X, you can set the menu colors and font using the\r
+;; menu face.  Example for your .emacs file:\r
+;;\r
+;;   (set-face-font 'menu "7x14")\r
+;;   (set-face-foreground 'menu "white").\r
+;;\r
+;; If are using X, you can set the menu foreground and background using\r
+;; a resource file, usually .Xdefaults or .Xresources.  Usually\r
+;; .Xdefaults is used when you start your session using a display\r
+;; manager such as xdm or gdm.  .Xresources is usually used when you\r
+;; start X directly via a shell script such as startx.  If you set\r
+;; Emacs*Background and Emacs*Foreground in such a resource file, the\r
+;; foreground and background of Emacs including the menu will be set.\r
+;; If your .emacs then loads a color theme, the foreground and\r
+;; background are changed -- with the exception of the menu.  There is\r
+;; no way to manipulate the menu foreground and background color from\r
+;; elisp.  You can also set more specific menu resources for Emacs in\r
+;; the resource file.  Here is a sample entry for your resource file:\r
+;;\r
+;;   Emacs*Background:         DarkSlateGray\r
+;;   Emacs*Foreground:         wheat\r
+\r
+;; Creating your own color theme:\r
+;;\r
+;; Use M-x customize-face and customize the faces.  Make sure to "Set\r
+;; for Current Session" -- you don't want to save these using custom!\r
+;; When you are done, call M-x color-theme-print to produce the elisp\r
+;; code required to recreate your theme.  Better yet, use M-x\r
+;; color-theme-submit to mail it to the maintainer.  That way it will be\r
+;; added to future versions of color-theme.el.\r
+;;\r
+;; For more information on the elisp format of a color theme, start with\r
+;; the documentation of `color-theme-install' using C-h f\r
+;; color-theme-install.\r
+;;\r
+;; When your color theme is just a variation of an existing color theme,\r
+;; take a look at `color-theme-robin-hood' in order to see an example of\r
+;; how to do it.  Essentially you want to call all the parent color\r
+;; themes before installing your changes.  For all but the first parent\r
+;; color theme, you need to make sure that `color-theme-is-cumulative'\r
+;; is bound to t.  If you don't do that, users that set\r
+;; `color-theme-is-cumulative' to nil will only install your changes\r
+;; without the parent color themes.\r
+\r
+;; Making a color theme work for both Emacs and XEmacs:\r
+;;\r
+;; Once you have printed the color-theme, you can make sure it looks\r
+;; similar in both Emacs and XEmacs by running\r
+;; `color-theme-analyze-defun' on the printed theme.  This function\r
+;; will check for missing faces for the other editor...\r
+\r
+;;; Thanks\r
+\r
+;; Deepak Goel  <deego@glue.umd.edu>\r
+;; S. Pokrovsky <pok@nbsp.nsk.su> for ideas and discussion.\r
+;; Gordon Messmer <gordon@dragonsdawn.net> for ideas and discussion.\r
+;; Sriram Karra <karra@cs.utah.edu> for the color-theme-submit stuff.\r
+;; Olgierd `Kingsajz' Ziolko <kingsajz@rpg.pl> for the spec-filter idea.\r
+;; All the users that contributed their color themes.\r
+\r
+;;; Bugs:\r
+\r
+;; Emacs 20.7: Some faces are created using copy-face; these faces are\r
+;; not printed correctly using M-x color-theme-print.  They will have\r
+;; (nil) in their spec.  M-x customize-face has the same problem.\r
+;; Example:\r
+;; (copy-face 'bold 'new-bold)\r
+;; (color-theme-spec 'bold)\r
+;;   => (bold ((t (:bold t))))\r
+;; (color-theme-spec 'new-bold)\r
+;;   => (new-bold ((t (nil))))\r
+;;\r
+;; XEmacs 21.1: Some faces are defined using a certain font instead of\r
+;; of the correct attribute.  They will have (nil) in their spec.\r
+;; M-x customize-face has the same problem.\r
+;; Example:\r
+;; (color-theme-spec 'bold)\r
+;;   => (bold ((t (nil))))\r
+;;\r
+;; XEmacs 21.2 and up, Emacs 21: Not compatible with the custom-theme\r
+;; mode.  It should be easy to transform the color-theme source into\r
+;; custom-theme source, however.\r
+;;\r
+;; If you are running XEmacs, then only foreground and background color\r
+;; of the default face and only the background color of the text-cursor\r
+;; face will used.  This is due to the fact that these three pieces of\r
+;; information are stored as frame parameters in Emacs.\r
+;;\r
+;; If you are running XEmacs, variables cannot have a frame-local\r
+;; binding.  Therefore, if color-theme-is-global is set to nil, the\r
+;; variable settings in a color theme are ignored.\r
+;;\r
+;; Using Emacs and a non-nil value for color-theme-is-global will\r
+;; install a new color theme for all frames.  Using XEmacs and a non-nil\r
+;; value for color-theme-is-global will install a new color theme only\r
+;; on those frames that are not using a local color theme.\r
+;;\r
+;; If your system does not define the color names used, you will get the\r
+;; error "undefined color".  See the output of `list-colors-display' for\r
+;; a list of colors defined on your display.\r
+;;\r
+;; The :box, :height, and other new attributes will be honored in Emacs\r
+;; 21, but when you print such a color-theme on Emacs 20 or XEmacs 21,\r
+;; the information will get lost.  So don't do that.  Furthermore,\r
+;; customizing these faces may end up showing you a lisp expression\r
+;; instead of the real widgets on Emacs 20 or XEmacs 21 because these\r
+;; attributes are not understood.\r
+;;\r
+;; :inverse-video handling differs in Emacs and XEmacs.  We therefore do\r
+;; away with it.  When printing a color-theme, the inverse-video\r
+;; attribute should be handled correctly without ever appearing in color\r
+;; themes.  For maintenance, the following might be usefull for\r
+;; query-replace-regexp.\r
+;; :background "\([^"]*\)"\(.*\):foreground "\([^"]*\)"\(.*\) :inverse-video t\r
+;; :background "\3"\2:foreground "\1"\4\r
+;;\r
+;; In XEmacs 21.1, some of the face tests don't work.  Example:\r
+;; (custom-face-bold 'bold) returns nil on my system.  A bug report was\r
+;; submitted.\r
+;;\r
+;; Emacs 20 users will loose with new color themes, because these will\r
+;; set the colors of the default face only, leaving frame background\r
+;; untouched.  In Emacs 20, the colors of the default face and of the\r
+;; frame could be changed independently.  In Emacs 21, this is no longer\r
+;; true.  New color themes will not be made backwards compatible.\r
+;;\r
+;; This release was superficially tested with Emacs 21.2 and XEmacs 21.4.\r
+\r
+\f\r
+\r
+;;; Code:\r
+\r
+(require 'cl); set-difference is a function...\r
+\r
+;; for custom-face-attributes-get or face-custom-attributes-get\r
+(require 'cus-face)\r
+(require 'wid-edit); for widget-apply stuff in cus-face.el\r
+\r
+(defconst color-theme-maintainer-address "alex@gnu.org"\r
+  "Address used by `submit-color-theme'.")\r
+\r
+;; Emacs / XEmacs compatibility and workaround layer\r
+\r
+(cond ((and (facep 'tool-bar)\r
+           (not (facep 'toolbar)))\r
+       (put 'toolbar 'face-alias 'tool-bar))\r
+      ((and (facep 'toolbar)\r
+           (not (facep 'tool-bar)))\r
+       (put 'tool-bar 'face-alias 'toolbar)))\r
+\r
+(defvar color-theme-xemacs-p (string-match "XEmacs" emacs-version)\r
+  "Non-nil if running XEmacs.")\r
+\r
+;; face-attr-construct has a problem in Emacs 20.7 and older when\r
+;; dealing with inverse-video faces.  Here is a short test to check\r
+;; wether you are affected.\r
+\r
+;; (set-background-color "wheat")\r
+;; (set-foreground-color "black")\r
+;; (setq a (make-face 'a-face))\r
+;; (face-spec-set a '((t (:background "white" :foreground "black" :inverse-video t))))\r
+;; (face-attr-construct a)\r
+;;     => (:background "black" :inverse-video t)\r
+\r
+;; The expected response is the original specification:\r
+;;     => (:background "white" :foreground "black" :inverse-video t)\r
+\r
+;; That's why we depend on cus-face.el functionality.\r
+\r
+(cond ((fboundp 'custom-face-attributes-get)\r
+       (defalias 'color-theme-face-attr-construct\r
+        'custom-face-attributes-get))\r
+      ((fboundp 'face-custom-attributes-get)\r
+       (defalias 'color-theme-face-attr-construct\r
+        'face-custom-attributes-get))\r
+      (t\r
+       (defun color-theme-face-attr-construct (&rest ignore)\r
+        (error "Unable to construct face attributes"))))\r
+\r
+(defun color-theme-alist (plist)\r
+  "Transform PLIST into an alist if it is a plist and return it.\r
+If the first element of PLIST is a cons cell, we just return PLIST,\r
+assuming PLIST to be an alist.  If the first element of plist is not a\r
+symbol, this is an error: We cannot distinguish a plist from an ordinary\r
+list, but a list that doesn't start with a symbol is certainly no plist\r
+and no alist.\r
+\r
+This is used to make sure `default-frame-alist' really is an alist and not\r
+a plist.  In XEmacs, the alist is deprecated; a plist is used instead."\r
+  (cond ((consp (car plist))\r
+        plist)\r
+       ((not (symbolp (car plist)))\r
+        (error "Wrong type argument: plist, %S" plist))\r
+       (t\r
+        (plist-to-alist plist)))); XEmacs only\r
+\r
+;; Customization\r
+\r
+(defgroup color-theme nil\r
+  "Color Themes for Emacs.\r
+A color theme consists of frame parameter settings, variable settings,\r
+and face definitions."\r
+  :version "20.6"\r
+  :group 'faces)\r
+\r
+(defcustom color-theme-legal-frame-parameters "\\(color\\|mode\\)$"\r
+  "Regexp that matches frame parameter names.\r
+Only frame parameter names that match this regexp can be changed as part\r
+of a color theme."\r
+  :type '(choice (const :tag "Colors only" "\\(color\\|mode\\)$")\r
+                (const :tag "Colors, fonts, and size"\r
+                       "\\(color\\|mode\\|font\\|height\\|width\\)$")\r
+                (regexp :tag "Custom regexp"))\r
+  :group 'color-theme\r
+  :link '(info-link "(elisp)Window Frame Parameters"))\r
+\r
+(defcustom color-theme-legal-variables "\\(color\\|face\\)$"\r
+  "Regexp that matches variable names.\r
+Only variables that match this regexp can be changed as part of a color\r
+theme.  In addition to matching this name, the variables have to be user\r
+variables (see function `user-variable-p')."\r
+  :type 'regexp\r
+  :group 'color-theme)\r
+\r
+(defcustom color-theme-illegal-faces "^w3-"\r
+  "Regexp that matches face names forbidden in themes.\r
+The default setting \"^w3-\" excludes w3 faces since these\r
+are created dynamically."\r
+  :type 'regexp\r
+  :group 'color-theme\r
+  :link '(info-link "(elisp)Faces for Font Lock")\r
+  :link '(info-link "(elisp)Standard Faces"))\r
+\r
+(defcustom color-theme-illegal-default-attributes '(:family :height :width)\r
+  "A list of face properties to be ignored when installing faces.\r
+This prevents Emacs from doing terrible things to your display just because\r
+a theme author likes weird fonts."\r
+  :type '(repeat symbol)\r
+  :group 'color-theme)\r
+\r
+(defcustom color-theme-is-global t\r
+  "*Determines wether a color theme is installed on all frames or not.\r
+If non-nil, color themes will be installed for all frames.\r
+If nil, color themes will be installed for the selected frame only.\r
+\r
+A possible use for this variable is dynamic binding. Here is a larger\r
+example to put in your ~/.emacs; it will make the Blue Sea color theme\r
+the default used for the first frame, and it will create two additional\r
+frames with different color themes.\r
+\r
+setup:\r
+    \(require 'color-theme)\r
+    ;; set default color theme\r
+    \(color-theme-blue-sea)\r
+    ;; create some frames with different color themes\r
+    \(let ((color-theme-is-global nil))\r
+      \(select-frame (make-frame))\r
+      \(color-theme-gnome2)\r
+      \(select-frame (make-frame))\r
+      \(color-theme-standard))\r
+\r
+Please note that using XEmacs and and a nil value for\r
+color-theme-is-global will ignore any variable settings for the color\r
+theme, since XEmacs doesn't have frame-local variable bindings.\r
+\r
+Also note that using Emacs and a non-nil value for color-theme-is-global\r
+will install a new color theme for all frames.  Using XEmacs and a\r
+non-nil value for color-theme-is-global will install a new color theme\r
+only on those frames that are not using a local color theme."\r
+  :type 'boolean\r
+  :group 'color-theme)\r
+\r
+(defcustom color-theme-is-cumulative t\r
+  "*Determines wether new color themes are installed on top of each other.\r
+If non-nil, installing a color theme will undo all settings made by\r
+previous color themes."\r
+  :type 'boolean\r
+  :group 'color-theme)\r
+\r
+(defcustom color-theme-mode-hook nil\r
+  "Hook for color-theme-mode."\r
+  :type 'hook\r
+  :group 'color-theme)\r
+\r
+(defvar color-theme-mode-map\r
+  (let ((map (make-sparse-keymap)))\r
+    (define-key map (kbd "RET") 'color-theme-install-at-point)\r
+    (define-key map (kbd "c") 'list-colors-display)\r
+    (define-key map (kbd "d") 'color-theme-describe)\r
+    (define-key map (kbd "f") 'list-faces-display)\r
+    (define-key map (kbd "i") 'color-theme-install-at-point)\r
+    (define-key map (kbd "l") 'color-theme-install-at-point-for-current-frame)\r
+    (define-key map (kbd "p") 'color-theme-print)\r
+    (define-key map (kbd "q") 'bury-buffer)\r
+    (define-key map (kbd "?") 'color-theme-describe)\r
+    (if color-theme-xemacs-p\r
+       (define-key map (kbd "<button2>") 'color-theme-install-at-mouse)\r
+      (define-key map (kbd "<mouse-2>") 'color-theme-install-at-mouse))\r
+    map)\r
+  "Mode map used for the buffer created by `color-theme-select'.")\r
+\r
+(defvar color-theme-buffer-name "*Color Theme Selection*"\r
+  "Name of the color theme selection buffer.")\r
+\r
+(defvar color-theme-original-frame-alist nil\r
+  "nil until one of the color themes has been installed.")\r
+\r
+(defvar color-theme-history nil\r
+  "List of color-themes called, in reverse order")\r
+\r
+(defcustom color-theme-history-max-length nil\r
+  "Max length of history to maintain.\r
+Two other values are acceptable: t means no limit, and\r
+nil means that no history is maintained."\r
+  :type '(choice (const :tag "No history" nil)\r
+                (const :tag "Unlimited length" t)\r
+                integer)\r
+  :group 'color-theme)\r
+\r
+(defvar color-theme-counter 0\r
+  "Counter for every addition to `color-theme-history'.\r
+This counts how many themes were installed, regardless\r
+of `color-theme-history-max-length'.")\r
+\r
+(defun color-theme-add-to-history (name)\r
+  "Add color-theme NAME to `color-theme-history'."\r
+  (setq color-theme-history\r
+       (cons (list name color-theme-is-cumulative)\r
+             color-theme-history)\r
+       color-theme-counter (+ 1 color-theme-counter))\r
+  ;; Truncate the list if necessary.\r
+  (when (and (integerp color-theme-history-max-length)\r
+            (>= (length color-theme-history)\r
+                color-theme-history-max-length))\r
+    (setcdr (nthcdr (1- color-theme-history-max-length)\r
+                   color-theme-history)\r
+           nil)))\r
+\r
+;; (let ((l '(1 2 3 4 5)))\r
+;;   (setcdr (nthcdr 2 l) nil)\r
+;;   l)\r
+\r
+\f\r
+\r
+;; List of color themes used to create the *Color Theme Selection*\r
+;; buffer.\r
+\r
+(defvar color-themes\r
+  '((color-theme-aalto-dark "Aalto Dark" "Jari Aalto <jari.aalto@poboxes.com>")\r
+    (color-theme-aalto-light "Aalto Light" "Jari Aalto <jari.aalto@poboxes.com>")\r
+    (color-theme-aliceblue "Alice Blue" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-andreas "Andreas" "Andreas Busch <Andreas.Busch@politics.ox.ac.uk>")\r
+    (color-theme-arjen "Arjen" "Arjen Wiersma <arjen@wiersma.org>")\r
+    (color-theme-beige-diff "Beige Diff" "Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-bharadwaj "Bharadwaj" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-bharadwaj-slate "Bharadwaj Slate" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-billw "Billw" "Bill White <billw@wolfram.com>")\r
+    (color-theme-black-on-gray "BlackOnGray" "Sudhir Bhojwani <sbhojwani@altoweb.com>")\r
+    (color-theme-blippblopp "Blipp Blopp" "Thomas Sicheritz-Ponten<thomas@biopython.org>")\r
+    (color-theme-simple-1 "Black" "Jonadab <jonadab@bright.net>")\r
+    (color-theme-blue-erc "Blue ERC" "Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-blue-gnus "Blue Gnus" "Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-blue-mood "Blue Mood" "Nelson Loyola <nloyola@yahoo.com>")\r
+    (color-theme-blue-sea "Blue Sea" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-calm-forest "Calm Forest" "Artur Hefczyc <kobit@plusnet.pl>")\r
+    (color-theme-charcoal-black "Charcoal Black" "Lars Chr. Hausmann <jazz@zqz.dk>")\r
+    (color-theme-goldenrod "Cheap Goldenrod" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-clarity "Clarity and Beauty" "Richard Wellum <rwellum@cisco.com>")\r
+    (color-theme-classic "Classic" "Frederic Giroud <postcard@worldonline.fr>")\r
+    (color-theme-comidia "Comidia" "Marcelo Dias de Toledo <mtole@ig.com.br>")\r
+    (color-theme-jsc-dark "Cooper Dark" "John S Cooper <John.Cooper@eu.citrix.com>")\r
+    (color-theme-jsc-light "Cooper Light" "John S Cooper <John.Cooper@eu.citrix.com>")\r
+    (color-theme-jsc-light2 "Cooper Light 2" "John S Cooper <John.Cooper@eu.citrix.com>")\r
+    (color-theme-dark-blue "Dark Blue" "Chris McMahan <cmcmahan@one.net>")\r
+    (color-theme-dark-blue2 "Dark Blue 2" "Chris McMahan <cmcmahan@one.net>")\r
+    (color-theme-dark-green "Dark Green" "eddy_woody@hotmail.com")\r
+    (color-theme-dark-laptop "Dark Laptop" "Laurent Michel <ldm@cs.brown.edu>")\r
+    (color-theme-deep-blue "Deep Blue" "Tomas Cerha <cerha@brailcom.org>")\r
+    (color-theme-digital-ofs1 "Digital OFS1" "Gareth Owen <gowen@gwowen.freeserve.co.uk>")\r
+    (color-theme-euphoria "Euphoria" "oGLOWo@oGLOWo.cjb.net")\r
+    (color-theme-fischmeister "Fischmeister"\r
+                             "Sebastian Fischmeister <sfischme@nexus.lzk.tuwien.ac.at>")\r
+    (color-theme-gnome "Gnome" "Jonadab <jonadab@bright.net>")\r
+    (color-theme-gnome2 "Gnome 2" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-gray1 "Gray1" "Paul Pulli <P.Pulli@motorola.com>")\r
+    (color-theme-gray30 "Gray30" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-kingsajz "Green Kingsajz" "Olgierd `Kingsajz' Ziolko <kingsajz@rpg.pl>")\r
+    (color-theme-greiner "Greiner" "Kevin Greiner <kgreiner@mapquest.com>")\r
+    (color-theme-gtk-ide "GTK IDE" "Gordon Messmer <gordon@dragonsdawn.net>")\r
+    (color-theme-high-contrast "High Contrast" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-hober "Hober" "Edward O'Connor <ted@oconnor.cx>")\r
+    (color-theme-infodoc "Infodoc" "Frederic Giroud <postcard@worldonline.fr>")\r
+    (color-theme-jb-simple "JB Simple" "jeff@dvns.com")\r
+    (color-theme-jedit-grey "Jedit Grey" "Gordon Messmer <gordon@dragonsdawn.net>")\r
+    (color-theme-jonadabian "Jonadab" "Jonadab <jonadab@bright.net>")\r
+    (color-theme-jonadabian-slate "Jonadabian Slate" "Jonadab <jonadab@bright.net>")\r
+    (color-theme-katester "Katester" "Higgins_Walter@emc.com")\r
+    (color-theme-late-night "Late Night" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-lawrence "Lawrence" "lawrence mitchell <wence@gmx.li>")\r
+    (color-theme-lethe "Lethe" "Ivica Loncar <ivica.loncar@srk.fer.hr>")\r
+    (color-theme-ld-dark "Linh Dang Dark" "Linh Dang <linhd@nortelnetworks.com>")\r
+    (color-theme-marine "Marine" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-marquardt "Marquardt" "Colin Marquardt <colin@marquardt-home.de>")\r
+    (color-theme-midnight "Midnight" "Gordon Messmer <gordon@dragonsdawn.net>")\r
+    (color-theme-mistyday "Misty Day" "Hari Kumar <Hari.Kumar@mtm.kuleuven.ac.be>")\r
+    (color-theme-montz "Montz" "Brady Montz <bradym@becomm.com>")\r
+    (color-theme-oswald "Oswald" "Tom Oswald <toswald@sharplabs.com>")\r
+    (color-theme-parus "Parus" "Jon K Hellan <hellan@acm.org>")\r
+    (color-theme-pierson "Pierson" "Dan L. Pierson <dan@sol.control.com>")\r
+    (color-theme-ramangalahy "Ramangalahy" "Solofo Ramangalahy <solofo@irisa.fr>")\r
+    (color-theme-raspopovic "Raspopovic" "Pedja Raspopovic <pedja@lsil.com>")\r
+    (color-theme-resolve "Resolve" "Damien Elmes <resolve@repose.cx>")\r
+    (color-theme-retro-green "Retro Green" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-retro-orange "Retro Orange" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-robin-hood "Robin Hood" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-rotor "Rotor" "Jinwei Shen <shenjw@wam.umd.edu>")\r
+    (color-theme-ryerson "Ryerson" "Luis Fernandes <elf@ee.ryerson.ca>")\r
+    (color-theme-salmon-diff "Salmon Diff" "Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-salmon-font-lock "Salmon Font-Lock" "Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-scintilla "Scintilla" "Gordon Messmer <gordon@dragonsdawn.net>")\r
+    (color-theme-shaman "Shaman" "shaman@interdon.net")\r
+    (color-theme-sitaramv-nt "Sitaram NT"\r
+                            "Sitaram Venkatraman <sitaramv@loc251.tandem.com>")\r
+    (color-theme-sitaramv-solaris "Sitaram Solaris"\r
+                                 "Sitaram Venkatraman <sitaramv@loc251.tandem.com>")\r
+    (color-theme-snow "Snow" "Nicolas Rist <Nicolas.Rist@alcatel.de>")\r
+    (color-theme-snowish "Snowish" "Girish Bharadwaj <girishb@gbvsoft.com>")\r
+    (color-theme-standard-ediff "Standard Ediff" "Emacs Team, added by Alex Schroeder <alex@gnu.org>" t)\r
+    (color-theme-standard "Standard Emacs 20" "Emacs Team, added by Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-emacs-21 "Standard Emacs 21" "Emacs Team, added by Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-emacs-nw "Standard Emacs 21 No Window" "Emacs Team, added by D. Goel <deego@gnufans.org>")\r
+    (color-theme-xemacs "Standard XEmacs" "XEmacs Team, added by Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-subtle-blue "Subtle Blue" "Chris McMahan <cmcmahan@one.net>")\r
+    (color-theme-subtle-hacker "Subtle Hacker" "Colin Walters <levanti@verbum.org>")\r
+    (color-theme-taming-mr-arneson "Taming Mr Arneson" "Erik Arneson <erik@aarg.net>")\r
+    (color-theme-taylor "Taylor" "Art Taylor <reeses@hemisphere.org>")\r
+    (color-theme-tty-dark "TTY Dark" "O Polite <m2@plusseven.com>")\r
+    (color-theme-vim-colors "Vim Colors" "Michael Soulier <msoulier@biryani.nssg.mitel.com>")\r
+    (color-theme-whateveryouwant "Whateveryouwant" "Fabien Penso <penso@linuxfr.org>, color by Scott Jaderholm <scott@jaderholm.com>")\r
+    (color-theme-wheat "Wheat" "Alex Schroeder <alex@gnu.org>")\r
+    (color-theme-pok-wob "White On Black" "S. Pokrovsky <pok@nbsp.nsk.su>")\r
+    (color-theme-pok-wog "White On Grey" "S. Pokrovsky <pok@nbsp.nsk.su>")\r
+    (color-theme-word-perfect "WordPerfect" "Thomas Gehrlein <Thomas.Gehrlein@t-online.de>")\r
+    (color-theme-xp "XP" "Girish Bharadwaj <girishb@gbvsoft.com>"))\r
+  "List of color themes.\r
+\r
+Each THEME is itself a three element list (FUNC NAME MAINTAINER &optional LIBRARY).\r
+\r
+FUNC is a color theme function which does the setup.  The function\r
+FUNC may call `color-theme-install'.  The color theme function may be\r
+interactive.\r
+\r
+NAME is the name of the theme and MAINTAINER is the name and/or email of\r
+the maintainer of the theme.\r
+\r
+If LIBRARY is non-nil, the color theme will be considered a library and\r
+may not be shown in the default menu.\r
+\r
+If you defined your own color theme and want to add it to this list,\r
+use something like this:\r
+\r
+  (add-to-list 'color-themes '(color-theme-gnome2 \"Gnome2\" \"Alex\"))")\r
+\r
+;;; Functions\r
+\r
+(defun color-theme-backup-original-values ()\r
+  "Back up the original `default-frame-alist'.\r
+The values are stored in `color-theme-original-frame-alist' on\r
+startup."\r
+  (if (null color-theme-original-frame-alist)\r
+      (setq color-theme-original-frame-alist\r
+           (color-theme-filter (frame-parameters (selected-frame))\r
+                               color-theme-legal-frame-parameters))))\r
+(add-hook 'after-init-hook 'color-theme-backup-original-values)\r
+\r
+(defun color-theme-select (&optional arg)\r
+  "Displays a special buffer for selecting and installing a color theme.\r
+With optional prefix ARG, this buffer will include color theme libraries\r
+as well.  A color theme library is in itself not complete, it must be\r
+used as part of another color theme to be useful.  Thus, color theme\r
+libraries are mainly useful for color theme authors."\r
+  (interactive "P")\r
+  (switch-to-buffer (get-buffer-create color-theme-buffer-name))\r
+  (setq buffer-read-only nil)\r
+  (erase-buffer)\r
+  ;; recreate the snapshot if necessary\r
+  (when (or (not (assq 'color-theme-snapshot color-themes))\r
+           (not (commandp 'color-theme-snapshot)))\r
+    (fset 'color-theme-snapshot (color-theme-make-snapshot))\r
+    (setq color-themes (delq (assq 'color-theme-snapshot color-themes)\r
+                            color-themes)\r
+         color-themes (delq (assq 'bury-buffer color-themes)\r
+                            color-themes)\r
+         color-themes (append '((color-theme-snapshot\r
+                                 "[Reset]" "Undo changes, if possible.")\r
+                                (bury-buffer\r
+                                 "[Quit]" "Bury this buffer."))\r
+                            color-themes)))\r
+  (dolist (theme color-themes)\r
+    (let ((func (nth 0 theme))\r
+         (name (nth 1 theme))\r
+         (author (nth 2 theme))\r
+         (library (nth 3 theme))\r
+         (desc))\r
+      (when (or (not library) arg)\r
+       (setq desc (format "%-23s %s" \r
+                          (if library (concat name " [lib]") name)\r
+                          author))\r
+       (put-text-property 0 (length desc) 'color-theme func desc)\r
+       (put-text-property 0 (length name) 'face 'bold desc)\r
+       (put-text-property 0 (length name) 'mouse-face 'highlight desc)\r
+       (insert desc)\r
+       (newline))))\r
+  (beginning-of-buffer)\r
+  (setq buffer-read-only t)\r
+  (set-buffer-modified-p nil)\r
+  (color-theme-mode))\r
+\r
+(require 'easymenu)\r
+(easy-menu-add-item nil '("tools") "--")\r
+(easy-menu-add-item  nil '("tools")\r
+  ["Color Themes" color-theme-select t])\r
+\r
+(defun color-theme-mode ()\r
+  "Major mode to select and install color themes.\r
+\r
+Use \\[color-theme-install-at-point] to install a color theme on all frames.\r
+Use \\[color-theme-install-at-point-for-current-frame] to install a color theme for the current frame only.\r
+\r
+The changes are applied on top of your current setup.  This is a\r
+feature.\r
+\r
+Some of the themes should be considered extensions to the standard color\r
+theme: they modify only a limited number of faces and variables.  To\r
+verify the final look of a color theme, install the standard color\r
+theme, then install the other color theme.  This is a feature. It allows\r
+you to mix several color themes.\r
+\r
+Use \\[color-theme-describe] to read more about the color theme function at point.\r
+If you want to install the color theme permanently, put the call to the\r
+color theme function into your ~/.emacs:\r
+\r
+    \(require 'color-theme)\r
+    \(color-theme-gnome2)\r
+\r
+If you worry about the size of color-theme.el: You are right.  Use\r
+\\[color-theme-print] to print the current color theme and save the resulting buffer\r
+as ~/.emacs-color-theme.  Now you can install only this specific color\r
+theme in your .emacs:\r
+\r
+    \(load-file \"~/.emacs-color-theme\")\r
+    \(my-color-theme)\r
+\r
+The Emacs menu is not affected by color themes within Emacs.  Depending\r
+on the toolkit you used to compile Emacs, you might have to set specific\r
+X ressources.  See the info manual for more information.  Here is an\r
+example ~/.Xdefaults fragment:\r
+\r
+    emacs*Background: DarkSlateGray\r
+    emacs*Foreground: wheat\r
+\r
+\\{color-theme-mode-map}\r
+\r
+The color themes are listed in `color-themes', which see."\r
+  (kill-all-local-variables)\r
+  (setq major-mode 'color-theme-mode)\r
+  (setq mode-name "Color Themes")\r
+  (use-local-map color-theme-mode-map)\r
+  (when (functionp 'goto-address); Emacs\r
+    (goto-address))\r
+  (run-hooks 'color-theme-mode-hook))\r
+\r
+;;; Commands in Color Theme Selection mode\r
+\r
+(defun color-theme-describe ()\r
+  "Describe color theme listed at point.\r
+This shows the documentation of the value of text-property color-theme\r
+at point.  The text-property color-theme should be a color theme\r
+function.  See `color-themes'."\r
+  (interactive)\r
+  (describe-function (get-text-property (point) 'color-theme)))\r
+\r
+(defun color-theme-install-at-mouse (event)\r
+  "Install color theme clicked upon using the mouse.\r
+First argument EVENT is used to set point.  Then\r
+`color-theme-install-at-point' is called."\r
+  (interactive "e")\r
+  (save-excursion\r
+    (mouse-set-point event)\r
+    (color-theme-install-at-point)))\r
+\r
+(defun color-theme-install-at-point ()\r
+  "Install color theme at point.\r
+This calls the value of the text-property `color-theme' at point.\r
+The text-property `color-theme' should be a color theme function.\r
+See `color-themes'."\r
+  (interactive)\r
+  (let ((func (get-text-property (point) 'color-theme)))\r
+    ;; install theme\r
+    (if func\r
+       (funcall func))\r
+    ;; If goto-address is being used, remove all overlays in the current\r
+    ;; buffer and run it again.  The face used for the mail addresses in\r
+    ;; the the color theme selection buffer is based on the variable\r
+    ;; goto-address-mail-face.  Changes in that variable will not affect\r
+    ;; existing overlays, however, thereby confusing users.\r
+    (when (functionp 'goto-address); Emacs\r
+      (dolist (o (overlays-in (point-min) (point-max)))\r
+       (delete-overlay o))\r
+      (goto-address))))\r
+\r
+(defun color-theme-install-at-point-for-current-frame ()\r
+  "Install color theme at point for current frame only.\r
+Binds `color-theme-is-global' to nil and calls\r
+`color-theme-install-at-point'."\r
+  (interactive)\r
+  (let ((color-theme-is-global nil))\r
+    (color-theme-install-at-point)))\r
+\r
+\f\r
+\r
+;; Taking a snapshot of the current color theme and pretty printing it.\r
+\r
+(defun color-theme-filter (old-list regexp &optional exclude)\r
+  "Filter OLD-LIST.\r
+The resulting list will be newly allocated and contains only elements\r
+with names matching REGEXP.  OLD-LIST may be a list or an alist.  If you\r
+want to filter a plist, use `color-theme-alist' to convert your plist to\r
+an alist, first.\r
+\r
+If the optional argument EXCLUDE is non-nil, then the sense is\r
+reversed: only non-matching elements will be retained."\r
+  (let (elem new-list)\r
+    (dolist (elem old-list)\r
+      (setq name (symbol-name (if (listp elem) (car elem) elem)))\r
+      (when (or (and (not exclude)\r
+                    (string-match regexp name))\r
+               (and exclude\r
+                    (not (string-match regexp name))))\r
+       ;; Now make sure that if elem is a cons cell, and the cdr of\r
+       ;; that cons cell is a string, then we need a *new* string in\r
+       ;; the new list.  Having a new cons cell is of no use because\r
+       ;; modify-frame-parameters will modify this string, thus\r
+       ;; modifying our color theme functions!\r
+       (when (and (consp elem)\r
+                  (stringp (cdr elem)))\r
+         (setq elem (cons (car elem)\r
+                          (copy-sequence (cdr elem)))))\r
+       ;; Now store elem\r
+       (setq new-list (cons elem new-list))))\r
+    new-list))\r
+\r
+(defun color-theme-spec-filter (spec)\r
+  "Filter the attributes in SPEC.\r
+This makes sure that SPEC has the form ((t (PLIST ...))).\r
+Only properties not in `color-theme-illegal-default-attributes'\r
+are included in the SPEC returned."\r
+  (let ((props (cadar spec))\r
+       result prop val)\r
+    (while props\r
+      (setq prop (nth 0 props)\r
+           val (nth 1 props)\r
+           props (nthcdr 2 props))\r
+      (unless (memq prop color-theme-illegal-default-attributes)\r
+       (setq result (cons val (cons prop result)))))\r
+    `((t ,(nreverse result)))))\r
+\r
+;; (color-theme-spec-filter '((t (:background "blue3"))))\r
+;; (color-theme-spec-filter '((t (:stipple nil :background "Black" :foreground "SteelBlue" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight normal :width semi-condensed :family "misc-fixed"))))\r
+\r
+(defun color-theme-plist-delete (plist prop)\r
+  "Delete property PROP from property list PLIST by side effect.\r
+This modifies PLIST."\r
+  ;; deal with prop at the start\r
+  (while (eq (car plist) prop)\r
+    (setq plist (cddr plist)))\r
+  ;; deal with empty plist\r
+  (when plist\r
+    (let ((lastcell (cdr plist))\r
+         (l (cddr plist)))\r
+      (while l\r
+       (if (eq (car l) prop)\r
+           (progn\r
+             (setq l (cddr l))\r
+             (setcdr lastcell l))\r
+         (setq lastcell (cdr l)\r
+               l (cddr l))))))\r
+  plist)\r
+\r
+;; (color-theme-plist-delete '(a b c d e f g h) 'a)\r
+;; (color-theme-plist-delete '(a b c d e f g h) 'b)\r
+;; (color-theme-plist-delete '(a b c d e f g h) 'c)\r
+;; (color-theme-plist-delete '(a b c d e f g h) 'g)\r
+;; (color-theme-plist-delete '(a b c d c d e f g h) 'c)\r
+;; (color-theme-plist-delete '(a b c d e f c d g h) 'c)\r
+\r
+(if (or (featurep 'xemacs)\r
+       (< emacs-major-version 21))\r
+    (defalias 'color-theme-spec-compat 'identity)\r
+  (defun color-theme-spec-compat (spec)\r
+    "Filter the attributes in SPEC such that is is never invalid.\r
+Example: Eventhough :bold works in Emacs, it is not recognized by\r
+`customize-face' -- and then the face is uncustomizable.  This\r
+function replaces a :bold attribute with the corresponding :weight\r
+attribute, if there is no :weight, or deletes it.  This undoes the\r
+doings of `color-theme-spec-canonical-font', more or less."\r
+    (let ((props (cadar spec)))\r
+      (when (plist-member props :bold)\r
+       (setq props (color-theme-plist-delete props :bold))\r
+       (unless (plist-member props :weight)\r
+         (setq props (plist-put props :weight 'bold))))\r
+      (when (plist-member props :italic)\r
+       (setq props (color-theme-plist-delete props :italic))\r
+       (unless (plist-member props :slant)\r
+         (setq props (plist-put props :slant 'italic))))\r
+      `((t ,props)))))\r
+\r
+;; (color-theme-spec-compat '((t (:foreground "blue" :bold t))))\r
+;; (color-theme-spec-compat '((t (:bold t :foreground "blue" :weight extra-bold))))\r
+;; (color-theme-spec-compat '((t (:italic t :foreground "blue"))))\r
+;; (color-theme-spec-compat '((t (:slant oblique :italic t :foreground "blue"))))\r
+\r
+(defun color-theme-spec-canonical-font (atts)\r
+  "Add :bold and :italic attributes if necessary."\r
+  ;; add these to the front of atts -- this will keept the old value for\r
+  ;; customize-face in Emacs 21.\r
+  (when (and (memq (plist-get atts :weight)\r
+                  '(ultra-bold extra-bold bold semi-bold))\r
+            (not (plist-get atts :bold)))\r
+    (setq atts (cons :bold (cons t atts))))\r
+  (when (and (not (memq (plist-get atts :slant)\r
+                       '(normal nil)))\r
+            (not (plist-get atts :italic)))\r
+    (setq atts (cons :italic (cons t atts))))\r
+  atts)\r
+;; (color-theme-spec-canonical-font (color-theme-face-attr-construct 'bold (selected-frame)))\r
+;; (defface foo '((t (:weight extra-bold))) "foo")\r
+;; (color-theme-spec-canonical-font (color-theme-face-attr-construct 'foo (selected-frame)))\r
+;; (face-spec-set 'foo '((t (:weight extra-bold))) nil)\r
+;; (face-spec-set 'foo '((t (:bold t))) nil)\r
+;; (face-spec-set 'foo '((t (:bold t :weight extra-bold))) nil)\r
+\r
+;; Handle :height according to NEWS file for Emacs 21\r
+(defun color-theme-spec-resolve-height (old new)\r
+  "Return the new height given OLD and NEW height.\r
+OLD is the current setting, NEW is the setting inherited from."\r
+  (cond ((not old)\r
+        new)\r
+       ((integerp old)\r
+        old)\r
+       ((and (floatp old)\r
+             (integerp new))\r
+        (round (* old new)))\r
+       ((and (floatp old)\r
+             (floatp new))\r
+        (* old new))\r
+       ((and (functionp old)\r
+             (integerp new))\r
+        (round (funcall old new)))\r
+       ((and (functionp old)\r
+             (float new))\r
+        `(lambda (f) (* (funcall ,old f) ,new)))\r
+       ((and (functionp old)\r
+             (functionp new))\r
+        `(lambda (f) (* (funcall ,old (funcall ,new f)))))\r
+       (t\r
+        (error "Illegal :height attributes: %S or %S" old new))))\r
+;; (color-theme-spec-resolve-height 12 1.2)\r
+;; (color-theme-spec-resolve-height 1.2 1.2)\r
+;; (color-theme-spec-resolve-height 1.2 12)\r
+;; (color-theme-spec-resolve-height 1.2 'foo)\r
+;; (color-theme-spec-resolve-height (lambda (f) (* 2 f)) 5)\r
+;; (color-theme-spec-resolve-height (lambda (f) (* 2 f)) 2.0)\r
+;; the following lambda is the result from the above calculation\r
+;; (color-theme-spec-resolve-height (lambda (f) (* (funcall (lambda (f) (* 2 f)) f) 2.0)) 5)\r
+\r
+(defun color-theme-spec-resolve-inheritance (atts)\r
+  "Resolve all occurences of the :inherit attribute."\r
+  (let ((face (plist-get atts :inherit)))\r
+    ;; From the Emacs 21 NEWS file: "Attributes from inherited faces are\r
+    ;; merged into the face like an underlying face would be." --\r
+    ;; therefore properties of the inherited face only add missing\r
+    ;; attributes.\r
+    (when face\r
+      ;; remove :inherit face from atts -- this assumes only one\r
+      ;; :inherit attribute.\r
+      (setq atts (delq ':inherit (delq face atts)))\r
+      (let ((more-atts (color-theme-spec-resolve-inheritance\r
+                       (color-theme-face-attr-construct\r
+                        face (selected-frame))))\r
+           att val)\r
+       (while more-atts\r
+         (setq att (car more-atts)\r
+               val (cadr more-atts)\r
+               more-atts (cddr more-atts))\r
+         ;; Color-theme assumes that no value is ever 'unspecified.\r
+         (cond ((eq att ':height); cumulative effect!\r
+                (setq atts (plist-put atts \r
+                                      ':height \r
+                                      (color-theme-spec-resolve-height\r
+                                       (plist-get atts att) \r
+                                       val))))\r
+               ;; Default: Only put if it has not been specified before.\r
+               ((not (plist-get atts att))\r
+                (setq atts (cons att (cons val atts))))\r
+                 \r
+))))\r
+    atts))\r
+;; (color-theme-spec-resolve-inheritance '(:bold t))\r
+;; (color-theme-spec-resolve-inheritance '(:bold t :foreground "blue"))\r
+;; (color-theme-face-attr-construct 'font-lock-comment-face (selected-frame))\r
+;; (color-theme-spec-resolve-inheritance '(:bold t :inherit font-lock-comment-face))\r
+;; (color-theme-spec-resolve-inheritance '(:bold t :foreground "red" :inherit font-lock-comment-face))\r
+;; (color-theme-face-attr-construct 'Info-title-2-face (selected-frame))\r
+;; (color-theme-face-attr-construct 'Info-title-3-face (selected-frame))\r
+;; (color-theme-face-attr-construct 'Info-title-4-face (selected-frame))\r
+;; (color-theme-spec-resolve-inheritance '(:inherit Info-title-2-face))\r
+\r
+;; The :inverse-video attribute causes Emacs to swap foreground and\r
+;; background colors, XEmacs does not.  Therefore, if anybody chooses\r
+;; the inverse-video attribute, we 1. swap the colors ourselves in Emacs\r
+;; and 2. we remove the inverse-video attribute in Emacs and XEmacs.\r
+;; Inverse-video is only useful on a monochrome tty.\r
+(defun color-theme-spec-maybe-invert (atts)\r
+  "Remove the :inverse-video attribute from ATTS.\r
+If ATTS contains :inverse-video t, remove it and swap foreground and\r
+background color.  Return ATTS."\r
+  (let ((inv (plist-get atts ':inverse-video)))\r
+    (if inv\r
+       (let (result att)\r
+         (while atts\r
+           (setq att (car atts)\r
+                 atts (cdr atts))\r
+           (cond ((and (eq att :foreground) (not color-theme-xemacs-p))\r
+                  (setq result (cons :background result)))\r
+                 ((and (eq att :background) (not color-theme-xemacs-p))\r
+                  (setq result (cons :foreground result)))\r
+                 ((eq att :inverse-video)\r
+                  (setq atts (cdr atts))); this prevents using dolist\r
+                 (t\r
+                  (setq result (cons att result)))))\r
+         (nreverse result))\r
+      ;; else\r
+      atts)))\r
+;; (color-theme-spec-maybe-invert '(:bold t))\r
+;; (color-theme-spec-maybe-invert '(:foreground "blue"))\r
+;; (color-theme-spec-maybe-invert '(:background "red"))\r
+;; (color-theme-spec-maybe-invert '(:inverse-video t))\r
+;; (color-theme-spec-maybe-invert '(:inverse-video t :foreground "red"))\r
+;; (color-theme-spec-maybe-invert '(:inverse-video t :background "red"))\r
+;; (color-theme-spec-maybe-invert '(:inverse-video t :background "red" :foreground "blue" :bold t))\r
+;; (color-theme-spec-maybe-invert '(:inverse-video nil :background "red" :foreground "blue" :bold t))\r
+\r
+(defun color-theme-spec (face)\r
+  "Return a list for FACE which has the form (FACE SPEC).\r
+See `defface' for the format of SPEC.  In this case we use only one\r
+DISPLAY, t, and determine ATTS using `color-theme-face-attr-construct'.\r
+If ATTS is nil, (nil) is used  instead.\r
+\r
+If ATTS contains :inverse-video t, we remove it and swap foreground and\r
+background color using `color-theme-spec-maybe-invert'.  We do this\r
+because :inverse-video is handled differently in Emacs and XEmacs.  We\r
+will loose on a tty without colors, because in that situation,\r
+:inverse-video means something."\r
+  (let ((atts\r
+        (color-theme-spec-canonical-font\r
+         (color-theme-spec-maybe-invert\r
+          (color-theme-spec-resolve-inheritance\r
+           (color-theme-face-attr-construct face (selected-frame)))))))\r
+    (if atts\r
+       `(,face ((t ,atts)))\r
+      `(,face ((t (nil)))))))\r
+\r
+(defun color-theme-get-params ()\r
+  "Return a list of frame parameter settings usable in a color theme.\r
+Such an alist may be installed by `color-theme-install-frame-params'.  The\r
+frame parameters returned must match `color-theme-legal-frame-parameters'."\r
+  (let ((params (color-theme-filter (frame-parameters (selected-frame))\r
+                                   color-theme-legal-frame-parameters)))\r
+    (sort params (lambda (a b) (string< (symbol-name (car a))\r
+                                       (symbol-name (car b)))))))\r
+\r
+(defun color-theme-get-vars ()\r
+  "Return a list of variable settings usable in a color theme.\r
+Such an alist may be installed by `color-theme-install-variables'.\r
+The variable names must match `color-theme-legal-variables', and the\r
+variable must be a user variable according to `user-variable-p'."\r
+  (let ((vars)\r
+       (val))\r
+    (mapatoms (lambda (v)\r
+               (and (boundp v)\r
+                    (user-variable-p v)\r
+                    (string-match color-theme-legal-variables\r
+                                  (symbol-name v))\r
+                    (setq val (eval v))\r
+                    (add-to-list 'vars (cons v val)))))\r
+    (sort vars (lambda (a b) (string< (car a) (car b))))))\r
+\r
+(defun color-theme-print-alist (alist)\r
+  "Print ALIST."\r
+  (insert "\n     " (if alist "(" "nil"))\r
+  (dolist (elem alist)\r
+    (when (= (preceding-char) ?\))\r
+      (insert "\n      "))\r
+    (prin1 elem (current-buffer)))\r
+  (when (= (preceding-char) ?\)) (insert ")")))\r
+\r
+(defun color-theme-get-faces ()\r
+  "Return a list of faces usable in a color theme.\r
+Such an alist may be installed by `color-theme-install-faces'.  The\r
+faces returned must not match `color-theme-illegal-faces'."\r
+  (let ((faces (color-theme-filter (face-list) color-theme-illegal-faces t)))\r
+    ;; default face must come first according to comments in\r
+    ;; custom-save-faces, the rest is to be sorted by name\r
+    (cons 'default (sort (delq 'default faces) 'string-lessp))))\r
+\r
+(defun color-theme-get-face-definitions ()\r
+  "Return face settings usable in a color-theme."\r
+  (let ((faces (color-theme-get-faces)))\r
+    (mapcar 'color-theme-spec faces)))\r
+\r
+(defun color-theme-print-faces (faces)\r
+  "Print face settings for all faces returned by `color-theme-get-faces'."\r
+  (when faces\r
+    (insert "\n     "))\r
+  (dolist (face faces)\r
+    (when (= (preceding-char) ?\))\r
+      (insert "\n     "))\r
+    (prin1 face (current-buffer))))\r
+\r
+(defun color-theme-reset-faces ()\r
+  "Reset face settings for all faces returned by `color-theme-get-faces'."\r
+  (let ((faces (color-theme-get-faces))\r
+       (face) (spec) (entry)\r
+       (frame (if color-theme-is-global nil (selected-frame))))\r
+    (while faces\r
+      (setq entry (color-theme-spec (car faces)))\r
+      (setq face (nth 0 entry))\r
+      (setq spec '((t (nil))))\r
+      (setq faces (cdr faces))\r
+      (if (functionp 'face-spec-reset-face)\r
+         (face-spec-reset-face face frame)\r
+       (face-spec-set face spec frame)\r
+       (if color-theme-is-global\r
+           (put face 'face-defface-spec spec))))))\r
+\r
+(defun color-theme-print-theme (func doc params vars faces)\r
+  "Print a theme into the current buffer.\r
+FUNC is the function name, DOC the doc string, PARAMS the\r
+frame parameters, VARS the variable bindings, and FACES\r
+the list of faces and their specs."\r
+  (insert "(defun " (symbol-name func) " ()\n"\r
+         "  \"" doc "\"\n"\r
+         "  (interactive)\n"\r
+         "  (color-theme-install\n"\r
+         "   '(" (symbol-name func))\r
+  ;; alist of frame parameters\r
+  (color-theme-print-alist params)\r
+  ;; alist of variables\r
+  (color-theme-print-alist vars)\r
+  ;; remaining elements of snapshot: face specs\r
+  (color-theme-print-faces faces)\r
+  (insert ")))")\r
+  (goto-char (point-min)))\r
+\r
+(defun color-theme-print (&optional buf)\r
+  "Print the current color theme function.\r
+\r
+You can contribute this function to <URL:news:gnu.emacs.sources> or\r
+paste it into your .emacs file and call it.  That should recreate all\r
+the settings necessary for your color theme.\r
+\r
+Example:\r
+\r
+    \(require 'color-theme)\r
+    \(defun my-color-theme ()\r
+      \"Color theme by Alex Schroeder, created 2000-05-17.\"\r
+      \(interactive)\r
+      \(color-theme-install\r
+       '(...\r
+        ...\r
+        ...)))\r
+    \(my-color-theme)\r
+\r
+If you want to use a specific color theme function, you can call the\r
+color theme function in your .emacs directly.\r
+\r
+Example:\r
+\r
+    \(require 'color-theme)\r
+    \(color-theme-gnome2)"\r
+  (interactive)\r
+  (message "Pretty printing current color theme function...")\r
+  (switch-to-buffer (if buf\r
+                       buf\r
+                     (get-buffer-create "*Color Theme*")))\r
+  (unless buf\r
+    (setq buffer-read-only nil)\r
+    (erase-buffer))\r
+  ;; insert defun\r
+  (color-theme-print-theme 'my-color-theme\r
+                          (concat "Color theme by "\r
+                                  (if (string= "" user-full-name)\r
+                                      (user-login-name)\r
+                                    user-full-name)\r
+                                  ", created " (format-time-string "%Y-%m-%d") ".")\r
+                          (color-theme-get-params)\r
+                          (color-theme-get-vars)\r
+                          (mapcar 'color-theme-spec (color-theme-get-faces)))\r
+  (unless buf\r
+    (emacs-lisp-mode))\r
+  (goto-char (point-min))\r
+  (message "Pretty printing current color theme function... done"))\r
+\r
+(defun color-theme-analyze-find-theme (code)\r
+  "Find the sexpr that calls `color-theme-install'."\r
+  (let (theme)\r
+    (while (and (not theme) code)\r
+      (when (eq (car code) 'color-theme-install)\r
+       (setq theme code))\r
+      (when (listp (car code))\r
+       (setq theme (color-theme-analyze-find-theme (car code))))\r
+      (setq code (cdr code)))\r
+    theme))\r
+\r
+;; (equal (color-theme-analyze-find-theme\r
+;;     '(defun color-theme-blue-eshell ()\r
+;;        "Color theme for eshell faces only."\r
+;;        (color-theme-install\r
+;;         '(color-theme-blue-eshell\r
+;;           nil\r
+;;           (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))\r
+;;           (eshell-ls-backup-face ((t (:foreground "Grey"))))))))\r
+;;        '(color-theme-install\r
+;;      (quote\r
+;;       (color-theme-blue-eshell\r
+;;        nil\r
+;;        (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))\r
+;;        (eshell-ls-backup-face ((t (:foreground "Grey")))))))))\r
+\r
+(defun color-theme-analyze-add-face (a b regexp faces)\r
+  "If only one of A or B are in FACES, the other is added, and FACES is returned.\r
+If REGEXP is given, this is only done if faces contains a match for regexps."\r
+  (when (or (not regexp)\r
+           (catch 'found\r
+             (dolist (face faces)\r
+               (when (string-match regexp (symbol-name (car face)))\r
+                 (throw 'found t)))))\r
+    (let ((face-a (assoc a faces))\r
+         (face-b (assoc b faces)))\r
+      (if (and face-a (not face-b))\r
+         (setq faces (cons (list b (nth 1 face-a))\r
+                           faces))\r
+       (if (and (not face-a) face-b)\r
+           (setq faces (cons (list a (nth 1 face-b))\r
+                             faces))))))\r
+  faces)\r
+\r
+;; (equal (color-theme-analyze-add-face\r
+;;     'blue 'violet nil\r
+;;     '((blue ((t (:foreground "blue"))))\r
+;;       (bold ((t (:bold t))))))\r
+;;        '((violet ((t (:foreground "blue"))))\r
+;;      (blue ((t (:foreground "blue"))))\r
+;;      (bold ((t (:bold t))))))\r
+;; (equal (color-theme-analyze-add-face\r
+;;     'violet 'blue nil\r
+;;     '((blue ((t (:foreground "blue"))))\r
+;;       (bold ((t (:bold t))))))\r
+;;        '((violet ((t (:foreground "blue"))))\r
+;;      (blue ((t (:foreground "blue"))))\r
+;;      (bold ((t (:bold t))))))\r
+;; (equal (color-theme-analyze-add-face\r
+;;     'violet 'blue "foo"\r
+;;     '((blue ((t (:foreground "blue"))))\r
+;;       (bold ((t (:bold t))))))\r
+;;        '((blue ((t (:foreground "blue"))))\r
+;;      (bold ((t (:bold t))))))\r
+;; (equal (color-theme-analyze-add-face\r
+;;     'violet 'blue "blue"\r
+;;     '((blue ((t (:foreground "blue"))))\r
+;;       (bold ((t (:bold t))))))\r
+;;        '((violet ((t (:foreground "blue"))))\r
+;;      (blue ((t (:foreground "blue"))))\r
+;;      (bold ((t (:bold t))))))\r
+\r
+(defun color-theme-analyze-add-faces (faces)\r
+  "Add missing faces to FACES and return it."\r
+  ;; The most important thing is to add missing faces for the other\r
+  ;; editor.  These are the most important faces to check.  The\r
+  ;; following rules list two faces, A and B.  If either of the two is\r
+  ;; part of the theme, the other must be, too.  The optional third\r
+  ;; argument specifies a regexp.  Only if an existing face name\r
+  ;; matches this regexp, is the rule applied.\r
+  (let ((rules '((font-lock-builtin-face font-lock-reference-face)\r
+                (font-lock-doc-face font-lock-doc-string-face)\r
+                (font-lock-constant-face font-lock-preprocessor-face)\r
+                ;; In Emacs 21 `modeline' is just an alias for\r
+                ;; `mode-line'.  I recommend the use of\r
+                ;; `modeline' until further notice.\r
+                (modeline mode-line)\r
+                (modeline modeline-buffer-id)\r
+                (modeline modeline-mousable)\r
+                (modeline modeline-mousable-minor-mode)\r
+                (region primary-selection)\r
+                (region zmacs-region)\r
+                (font-lock-string-face dired-face-boring "^dired")\r
+                (font-lock-function-name-face dired-face-directory "^dired")\r
+                (default dired-face-executable "^dired")\r
+                (font-lock-warning-face dired-face-flagged "^dired")\r
+                (font-lock-warning-face dired-face-marked "^dired")\r
+                (default dired-face-permissions "^dired")\r
+                (default dired-face-setuid "^dired")\r
+                (default dired-face-socket "^dired")\r
+                (font-lock-keyword-face dired-face-symlink "^dired")\r
+                (tool-bar menu))))\r
+    (dolist (rule rules)\r
+      (setq faces (color-theme-analyze-add-face\r
+                  (nth 0 rule) (nth 1 rule) (nth 2 rule) faces))))\r
+  ;; The `fringe' face defines what the left and right borders of the\r
+  ;; frame look like in Emacs 21.  To give them default fore- and\r
+  ;; background colors, use (fringe ((t (nil)))) in your color theme.\r
+  ;; Usually it makes more sense to choose a color slightly lighter or\r
+  ;; darker from the default background.\r
+  (unless (assoc 'fringe faces)\r
+    (setq faces (cons '(fringe ((t (nil)))) faces)))\r
+  ;; The tool-bar should not be part of the frame-parameters, since it\r
+  ;; should not appear or disappear depending on the color theme.  The\r
+  ;; apppearance of the toolbar, however, can be changed by the color\r
+  ;; theme.  For Emacs 21, use the `tool-bar' face.  The easiest way\r
+  ;; to do this is to give it the default fore- and background colors.\r
+  ;; This can be achieved using (tool-bar ((t (nil)))) in the theme.\r
+  ;; Usually it makes more sense, however, to provide the same colors\r
+  ;; as used in the `menu' face, and to specify a :box attribute.  In\r
+  ;; order to alleviate potential Emacs/XEmacs incompatibilities,\r
+  ;; `toolbar' will be defined as an alias for `tool-bar' if it does\r
+  ;; not exist, and vice-versa.  This is done eventhough the face\r
+  ;; `toolbar' seems to have no effect on XEmacs.  If you look at\r
+  ;; XEmacs lisp/faces.el, however, you will find that it is in fact\r
+  ;; referenced for XPM stuff.\r
+  (unless (assoc 'tool-bar faces)\r
+    (setq faces (cons '(tool-bar ((t (nil)))) faces)))\r
+  ;; Move the default face back to the front, and sort the rest.\r
+  (unless (eq (caar faces) 'default)\r
+    (let ((face (assoc 'default faces)))\r
+      (setq faces (cons face\r
+                       (sort (delete face faces)\r
+                             (lambda (a b)\r
+                               (string-lessp (car a) (car b))))))))\r
+  faces)\r
+\r
+(defun color-theme-analyze-remove-heights (faces)\r
+  "Remove :height property where it is an integer and return FACES."\r
+  ;; I don't recommend making font sizes part of a color theme.  Most\r
+  ;; users would be surprised to see their font sizes change when they\r
+  ;; install a color-theme.  Therefore, remove all :height attributes\r
+  ;; if the value is an integer.  If the value is a float, this is ok\r
+  ;; -- the value is relative to the default height.  One notable\r
+  ;; exceptions is for a color-theme created for visually impaired\r
+  ;; people.  These *must* use a larger font in order to be usable.\r
+  (let (result)\r
+    (dolist (face faces)\r
+      (let ((props (cadar (nth 1 face))))\r
+       (if (and (plist-member props :height)\r
+                (integerp (plist-get props :height)))\r
+           (setq props (color-theme-plist-delete props :height)\r
+                 result (cons (list (car face) `((t ,props)))\r
+                              result))\r
+         (setq result (cons face result)))))\r
+    (nreverse result)))\r
+\r
+;; (equal (color-theme-analyze-remove-heights\r
+;;     '((blue ((t (:foreground "blue" :height 2))))\r
+;;       (bold ((t (:bold t :height 1.0))))))\r
+;;        '((blue ((t (:foreground "blue"))))\r
+;;      (bold ((t (:bold t :height 1.0))))))\r
+\r
+(defun color-theme-analyze-defun ()\r
+  "Once you have a color-theme printed, check for missing faces.\r
+This is used by maintainers who receive a color-theme submission\r
+and want to make sure it follows the guidelines by the color-theme\r
+author."\r
+  ;; The support for :foreground and :background attributes works for\r
+  ;; Emacs 20 and 21 as well as for XEmacs.  :inverse-video is taken\r
+  ;; care of while printing color themes.\r
+  (interactive)\r
+  ;; Parse the stuff and find the call to color-theme-install\r
+  (save-excursion\r
+    (save-restriction\r
+      (narrow-to-defun)\r
+      ;; define the function\r
+      (eval-defun nil)\r
+      (goto-char (point-min))\r
+      (let* ((code (read (current-buffer)))\r
+            (theme (color-theme-canonic\r
+                    (eval\r
+                     (cadr\r
+                      (color-theme-analyze-find-theme\r
+                       code)))))\r
+            (func (color-theme-function theme))\r
+            (doc (documentation func t))\r
+            (variables (color-theme-variables theme))\r
+            (faces (color-theme-faces theme))\r
+            (params (color-theme-frame-params theme)))\r
+       (setq faces (color-theme-analyze-remove-heights\r
+                    (color-theme-analyze-add-faces faces)))\r
+       ;; Remove any variable bindings of faces that point to their\r
+       ;; symbol?  Perhaps not, because another theme might want to\r
+       ;; change this, so it is important to be able to reset them.\r
+       ;;      (let (result)\r
+       ;;        (dolist (var variables)\r
+       ;;          (unless (eq (car var) (cdr var))\r
+       ;;            (setq result (cons var result))))\r
+       ;;        (setq variables (nreverse result)))\r
+       ;; Now modify the theme directly.\r
+       (setq theme (color-theme-analyze-find-theme code))\r
+       (setcdr (cadadr theme) (list params variables faces))\r
+       (message "Pretty printing analysed color theme function...")\r
+       (with-current-buffer (get-buffer-create "*Color Theme*")\r
+         (setq buffer-read-only nil)\r
+         (erase-buffer)\r
+         ;; insert defun\r
+         (color-theme-print-theme func doc params variables faces)\r
+         (emacs-lisp-mode))\r
+       (message "Pretty printing analysed color theme function... done")\r
+       (ediff-buffers (current-buffer)\r
+                      (get-buffer "*Color Theme*"))))))\r
+\r
+;;; Creating a snapshot of the current color theme\r
+\r
+(defun color-theme-snapshot nil)\r
+\r
+(defun color-theme-make-snapshot ()\r
+  "Return the definition of the current color-theme.\r
+The function returned will recreate the color-theme in use at the moment."\r
+  (eval `(lambda ()\r
+          "The color theme in use when the selection buffer was created.\r
+\\[color-theme-select] creates the color theme selection buffer.  At the\r
+same time, this snapshot is created as a very simple undo mechanism.\r
+The snapshot is created via `color-theme-snapshot'."\r
+          (interactive)\r
+          (color-theme-install\r
+           '(color-theme-snapshot\r
+             ;; alist of frame parameters\r
+             ,(color-theme-get-params)\r
+             ;; alist of variables\r
+             ,(color-theme-get-vars)\r
+             ;; remaining elements of snapshot: face specs\r
+             ,@(color-theme-get-face-definitions))))))\r
+\r
+\f\r
+\r
+;;; Handling the various parts of a color theme install\r
+\r
+(defvar color-theme-frame-param-frobbing-rules\r
+  '((foreground-color default foreground)\r
+    (background-color default background))\r
+  "List of rules to use when frobbing faces based on frame parameters.\r
+This is only necessary for XEmacs, because in Emacs 21 changing the\r
+frame paramters automatically affects the relevant faces.")\r
+\r
+(defun color-theme-frob-faces (params)\r
+  "Change certain faces according to PARAMS.\r
+This uses `color-theme-frame-param-frobbing-rules'."\r
+  (dolist (rule color-theme-frame-param-frobbing-rules)\r
+    (let* ((param (nth 0 rule))\r
+          (face (nth 1 rule))\r
+          (prop (nth 2 rule))\r
+          (val (cdr (assq param params)))\r
+          (frame (if color-theme-is-global nil (selected-frame))))\r
+      (when val\r
+       (set-face-property face prop val frame)))))\r
+\r
+(defun color-theme-alist-reduce (old-list)\r
+  "Reduce OLD-LIST.\r
+The resulting list will be newly allocated and will not contain any elements\r
+with duplicate cars.  This will speed the installation of new themes by\r
+only installing unique attributes."\r
+  (let (new-list)\r
+    (dolist (elem old-list)\r
+      (when (not (assq (car elem) new-list))\r
+       (setq new-list (cons elem new-list))))\r
+    new-list))\r
+\r
+(defun color-theme-install-frame-params (params)\r
+  "Change frame parameters using alist PARAMETERS.\r
+\r
+If `color-theme-is-global' is non-nil, all frames are modified using\r
+`modify-frame-parameters' and the PARAMETERS are prepended to\r
+`default-frame-alist'.  The value of `initial-frame-alist' is not\r
+modified.  If `color-theme-is-global' is nil, only the selected frame is\r
+modified.  If `color-theme-is-cumulative' is nil, the frame parameters\r
+are restored from `color-theme-original-frame-alist'.\r
+\r
+If the current frame parameters have a parameter `minibuffer' with\r
+value `only', then the frame parameters are not installed, since this\r
+indicates a dedicated minibuffer frame.\r
+\r
+Called from `color-theme-install'."\r
+  (setq params (color-theme-filter\r
+               params color-theme-legal-frame-parameters))\r
+  ;; We have a new list in params now, therefore we may use\r
+  ;; destructive nconc.\r
+  (if color-theme-is-global\r
+      (let ((frames (frame-list)))\r
+       (if (or color-theme-is-cumulative\r
+               (null color-theme-original-frame-alist))\r
+           (setq default-frame-alist\r
+                 (append params (color-theme-alist default-frame-alist))\r
+                 minibuffer-frame-alist\r
+                 (append params (color-theme-alist minibuffer-frame-alist)))\r
+         (setq default-frame-alist\r
+               (append params color-theme-original-frame-alist)\r
+               minibuffer-frame-alist\r
+               (append params (color-theme-alist minibuffer-frame-alist))))\r
+       (setq default-frame-alist\r
+             (color-theme-alist-reduce default-frame-alist)\r
+             minibuffer-frame-alist\r
+             (color-theme-alist-reduce minibuffer-frame-alist))\r
+       (dolist (frame frames)\r
+         (let ((params (if (eq 'only (cdr (assq 'minibuffer (frame-parameters frame))))\r
+                           minibuffer-frame-alist\r
+                         default-frame-alist)))\r
+           (condition-case var\r
+               (modify-frame-parameters frame params)\r
+             (error (message "Error using params %S: %S" params var))))))\r
+    (condition-case var\r
+       (modify-frame-parameters (selected-frame) params)\r
+      (error (message "Error using params %S: %S" params var))))\r
+  (when color-theme-xemacs-p\r
+    (color-theme-frob-faces params)))\r
+\r
+;; (setq default-frame-alist (cons '(height . 30) default-frame-alist))\r
+\r
+(defun color-theme-install-variables (vars)\r
+  "Change variables using alist VARS.\r
+All variables matching `color-theme-legal-variables' are set.\r
+\r
+If `color-theme-is-global' and `color-theme-xemacs-p' are nil, variables\r
+are made frame-local before setting them.  Variables are set using `set'\r
+in either case.  This may lead to problems if changing the variable\r
+requires the usage of the function specified with the :set tag in\r
+defcustom declarations.\r
+\r
+Called from `color-theme-install'."\r
+  (let ((vars (color-theme-filter vars color-theme-legal-variables)))\r
+    (dolist (var vars)\r
+      (if (or color-theme-is-global color-theme-xemacs-p)\r
+         (set (car var) (cdr var))\r
+       (make-variable-frame-local (car var))\r
+       (modify-frame-parameters (selected-frame) (list var))))))\r
+\r
+(defun color-theme-install-faces (faces)\r
+  "Change faces using FACES.\r
+\r
+Change faces for all frames and create any faces listed in FACES which\r
+don't exist.  The modified faces will be marked as \"unchanged from\r
+its standard setting\".  This is OK, since the changes made by\r
+installing a color theme should never by saved in .emacs by\r
+customization code.\r
+\r
+FACES should be a list where each entry has the form:\r
+\r
+  (FACE SPEC)\r
+\r
+See `defface' for the format of SPEC.\r
+\r
+If `color-theme-is-global' is non-nil, faces are modified on all frames\r
+using `face-spec-set'.  If `color-theme-is-global' is nil, faces are\r
+only modified on the selected frame.  Non-existing faces are created\r
+using `make-empty-face' in either case.  If `color-theme-is-cumulative'\r
+is nil, all faces are reset before installing the new faces.\r
+\r
+Called from `color-theme-install'."\r
+  ;; clear all previous faces\r
+  (when (not color-theme-is-cumulative)\r
+    (color-theme-reset-faces))\r
+  ;; install new faces\r
+  (let ((faces (color-theme-filter faces color-theme-illegal-faces t))\r
+       (frame (if color-theme-is-global nil (selected-frame))))\r
+    (dolist (entry faces)\r
+      (let ((face (nth 0 entry))\r
+           (spec (nth 1 entry)))\r
+       (or (facep face)\r
+           (make-empty-face face))\r
+       ;; remove weird properties from the default face only\r
+       (when (eq face 'default)\r
+         (setq spec (color-theme-spec-filter spec)))\r
+       ;; Emacs/XEmacs customization issues: filter out :bold when\r
+       ;; the spec contains :weight, etc, such that the spec remains\r
+       ;; "valid" for custom.\r
+       (setq spec (color-theme-spec-compat spec))\r
+       ;; using a spec of ((t (nil))) to reset a face doesn't work\r
+       ;; in Emacs 21, we use the new function face-spec-reset-face\r
+       ;; instead\r
+       (if (and (functionp 'face-spec-reset-face)\r
+                (equal spec '((t (nil)))))\r
+           (face-spec-reset-face face frame)\r
+         (condition-case var\r
+             (progn\r
+               (face-spec-set face spec frame)\r
+               (if color-theme-is-global\r
+                   (put face 'face-defface-spec spec)))\r
+           (error (message "Error using spec %S: %S" spec var))))))))\r
+\r
+;; `custom-set-faces' is unusable here because it doesn't allow to set\r
+;; the faces for one frame only.\r
+\r
+;; Emacs `face-spec-set': If FRAME is nil, the face is created and\r
+;; marked as a customized face.  This is achieved by setting the\r
+;; `face-defface-spec' property.  If we don't, new frames will not be\r
+;; created using the face we installed because `face-spec-set' is\r
+;; broken: If given a FRAME of nil, it will not set the default faces;\r
+;; instead it will walk through all the frames and set modify the faces.\r
+;; If we do set a property (`saved-face' or `face-defface-spec'),\r
+;; `make-frame' will correctly use the faces we defined with our color\r
+;; theme.  If we used the property `saved-face',\r
+;; `customize-save-customized' will save all the faces installed as part\r
+;; of a color-theme in .emacs.  That's why we use the\r
+;; `face-defface-spec' property.\r
+\r
+\f\r
+\r
+;;; Theme accessor functions, canonicalization, merging, comparing\r
+\r
+(defun color-theme-canonic (theme)\r
+  "Return the canonic form of THEME.\r
+This deals with all the backwards compatibility stuff."\r
+  (let (function frame-params variables faces)\r
+    (when (functionp (car theme))\r
+      (setq function (car theme)\r
+           theme (cdr theme)))\r
+    (setq frame-params (car theme)\r
+         theme (cdr theme))\r
+    ;; optional variable defintions (for backwards compatibility)\r
+    (when (listp (caar theme))\r
+      (setq variables (car theme)\r
+           theme (cdr theme)))\r
+    ;; face definitions\r
+    (setq faces theme)\r
+    (list function frame-params variables faces)))\r
+\r
+(defun color-theme-function (theme)\r
+  "Return function used to create THEME."\r
+  (nth 0 theme))\r
+\r
+(defun color-theme-frame-params (theme)\r
+  "Return frame-parameters defined by THEME."\r
+  (nth 1 theme))\r
+\r
+(defun color-theme-variables (theme)\r
+  "Return variables set by THEME."\r
+  (nth 2 theme))\r
+\r
+(defun color-theme-faces (theme)\r
+  "Return faces defined by THEME."\r
+  (nth 3 theme))\r
+\r
+(defun color-theme-merge-alists (&rest alists)\r
+  "Merges all the alist arguments into one alist.\r
+Only the first instance of every key will be part of the resulting\r
+alist.  Membership will be tested using `assq'."\r
+  (let (result)\r
+    (dolist (l alists)\r
+      (dolist (entry l)\r
+       (unless (assq (car entry) result)\r
+         (setq result (cons entry result)))))\r
+    (nreverse result)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2) (a . 3)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2)) '((a . 3)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2)) '((c . 3)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2)) '((c . 3) (d . 4)))\r
+;; (color-theme-merge-alists '((a . 1) (b . 2)) '((c . 3) (d . 4) (b . 5)))\r
+\r
+(defun color-theme-compare (theme-a theme-b)\r
+  "Compare two color themes.\r
+This will print the differences between installing THEME-A and\r
+installing THEME-B.  Note that the order is important: If a face is\r
+defined in THEME-A and not in THEME-B, then this will not show up as a\r
+difference, because there is no reset before installing THEME-B.  If a\r
+face is defined in THEME-B and not in THEME-A, then this will show up as\r
+a difference."\r
+  (interactive\r
+   (list\r
+    (intern\r
+     (completing-read "Theme A: "\r
+                     (mapcar (lambda (i) (list (symbol-name (car i))))\r
+                             color-themes)\r
+                     (lambda (i) (string-match "color-theme" (car i)))))\r
+    (intern\r
+     (completing-read "Theme B: "\r
+                     (mapcar (lambda (i) (list (symbol-name (car i))))\r
+                             color-themes)\r
+                     (lambda (i) (string-match "color-theme" (car i)))))))\r
+  ;; install the themes in a new frame and get the definitions\r
+  (let ((color-theme-is-global nil))\r
+    (select-frame (make-frame))\r
+    (funcall theme-a)\r
+    (setq theme-a (list theme-a\r
+                       (color-theme-get-params)\r
+                       (color-theme-get-vars)\r
+                       (color-theme-get-face-definitions)))\r
+    (funcall theme-b)\r
+    (setq theme-b (list theme-b\r
+                       (color-theme-get-params)\r
+                       (color-theme-get-vars)\r
+                       (color-theme-get-face-definitions)))\r
+    (delete-frame))\r
+  (let ((params (set-difference\r
+                (color-theme-frame-params theme-b)\r
+                (color-theme-frame-params theme-a)\r
+                :test 'equal))\r
+       (vars (set-difference\r
+              (color-theme-variables theme-b)\r
+              (color-theme-variables theme-a)\r
+              :test 'equal))\r
+       (faces (set-difference\r
+               (color-theme-faces theme-b)\r
+               (color-theme-faces theme-a)\r
+               :test 'equal)))\r
+    (list 'diff\r
+         params\r
+         vars\r
+         faces)))\r
+\r
+\f\r
+\r
+;;; Installing a color theme\r
+\r
+(defun color-theme-install (theme)\r
+  "Install a color theme defined by frame parameters, variables and faces.\r
+\r
+The theme is installed for all present and future frames; any missing\r
+faces are created.  See `color-theme-install-faces'.\r
+\r
+THEME is a color theme definition.  See below for more information.\r
+\r
+If you want to install a color theme from your .emacs, use the output\r
+generated by `color-theme-print'.  This produces color theme function\r
+which you can copy to your .emacs.\r
+\r
+A color theme definition is a list:\r
+\([FUNCTION] FRAME-PARAMETERS VARIABLE-SETTINGS FACE-DEFINITIONS)\r
+\r
+FUNCTION is the color theme function which called `color-theme-install'.\r
+This is no longer used.  There was a time when this package supported\r
+automatic factoring of color themes.  This has been abandoned.\r
+\r
+FRAME-PARAMETERS is an alist of frame parameters.  These are installed\r
+with `color-theme-install-frame-params'.  These are installed last such\r
+that any changes to the default face can be changed by the frame\r
+parameters.\r
+\r
+VARIABLE-DEFINITIONS is an alist of variable settings.  These are\r
+installed with `color-theme-install-variables'.\r
+\r
+FACE-DEFINITIONS is an alist of face definitions.  These are installed\r
+with `color-theme-install-faces'.\r
+\r
+If `color-theme-is-cumulative' is nil, a color theme will undo face and\r
+frame-parameter settings of previous color themes."\r
+  (setq theme (color-theme-canonic theme))\r
+  (color-theme-install-variables (color-theme-variables theme))\r
+  (color-theme-install-faces (color-theme-faces theme))\r
+  ;; frame parameters override faces\r
+  (color-theme-install-frame-params (color-theme-frame-params theme))\r
+  (when color-theme-history-max-length\r
+    (color-theme-add-to-history\r
+     (car theme))))\r
+\r
+\f\r
+\r
+;; Sharing your stuff\r
+\r
+(defun color-theme-submit ()\r
+  "Submit your color-theme to the maintainer."\r
+  (interactive)\r
+  (require 'reporter)\r
+  (let ((reporter-eval-buffer (current-buffer))\r
+       final-resting-place\r
+       after-sep-pos\r
+       (reporter-status-message "Formatting buffer...")\r
+       (reporter-status-count 0)\r
+       (problem "Yet another color-theme")\r
+       (agent (reporter-compose-outgoing))\r
+       (mailbuf (current-buffer))\r
+       hookvar)\r
+    ;; do the work\r
+    (require 'sendmail)\r
+    ;; If mailbuf did not get made visible before, make it visible now.\r
+    (let (same-window-buffer-names same-window-regexps)\r
+      (pop-to-buffer mailbuf)\r
+      ;; Just in case the original buffer is not visible now, bring it\r
+      ;; back somewhere\r
+      (and pop-up-windows (display-buffer reporter-eval-buffer)))\r
+    (goto-char (point-min))\r
+    (mail-position-on-field "to")\r
+    (insert color-theme-maintainer-address)\r
+    (mail-position-on-field "subject")\r
+    (insert problem)\r
+    ;; move point to the body of the message\r
+    (mail-text)\r
+    (setq after-sep-pos (point))\r
+    (unwind-protect\r
+       (progn\r
+         (setq final-resting-place (point-marker))\r
+         (goto-char final-resting-place))\r
+      (color-theme-print (current-buffer))\r
+      (goto-char final-resting-place)\r
+      (insert "\n\n")\r
+      (goto-char final-resting-place)\r
+      (insert "Hello there!\n\nHere's my color theme named: ")\r
+      (set-marker final-resting-place nil))\r
+    ;; compose the minibuf message and display this.\r
+    (let* ((sendkey-whereis (where-is-internal\r
+                            (get agent 'sendfunc) nil t))\r
+          (abortkey-whereis (where-is-internal\r
+                             (get agent 'abortfunc) nil t))\r
+          (sendkey (if sendkey-whereis\r
+                       (key-description sendkey-whereis)\r
+                     "C-c C-c")); TBD: BOGUS hardcode\r
+          (abortkey (if abortkey-whereis\r
+                        (key-description abortkey-whereis)\r
+                      "M-x kill-buffer"))); TBD: BOGUS hardcode\r
+      (message "Enter a message and type %s to send or %s to abort."\r
+              sendkey abortkey))))\r
+\r
+\f\r
+\r
+;;; The color theme functions\r
+\r
+(defun color-theme-gnome ()\r
+  "Wheat on darkslategrey scheme.\r
+From one version of Emacs in RH6 and Gnome, modified by Jonadab."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-gnome\r
+     ((foreground-color . "wheat")\r
+      (background-color . "darkslategrey")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (region ((t (:foreground "cyan" :background "dark cyan"))))\r
+     (underline ((t (:foreground "yellow" :underline t))))\r
+     (modeline ((t (:foreground "dark cyan" :background "wheat"))))\r
+     (modeline-buffer-id ((t (:foreground "dark cyan" :background "wheat"))))\r
+     (modeline-mousable ((t (:foreground "dark cyan" :background "wheat"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "dark cyan" :background "wheat"))))\r
+     (italic ((t (:foreground "dark red" :italic t))))\r
+     (bold-italic ((t (:foreground "dark red" :bold t :italic t))))\r
+     (font-lock-comment-face ((t (:foreground "Firebrick"))))\r
+     (bold ((t (:bold)))))))\r
+\r
+(defun color-theme-blue-gnus ()\r
+  "Color theme for gnus and message faces only.\r
+This is intended for other color themes to use (eg. `color-theme-gnome2'\r
+and `color-theme-blue-sea')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-blue-gnus\r
+     nil\r
+     (gnus-cite-attribution-face ((t (:lforeground "lemon chiffon" :bold t))))\r
+     (gnus-cite-face-1 ((t (:foreground "LightSalmon"))))\r
+     (gnus-cite-face-2 ((t (:foreground "Khaki"))))\r
+     (gnus-cite-face-3 ((t (:foreground "Coral"))))\r
+     (gnus-cite-face-4 ((t (:foreground "yellow green"))))\r
+     (gnus-cite-face-5 ((t (:foreground "dark khaki"))))\r
+     (gnus-cite-face-6 ((t (:foreground "bisque"))))\r
+     (gnus-cite-face-7 ((t (:foreground "peru"))))\r
+     (gnus-cite-face-8 ((t (:foreground "light coral"))))\r
+     (gnus-cite-face-9 ((t (:foreground "plum"))))\r
+     (gnus-emphasis-bold ((t (:bold t))))\r
+     (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+     (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+     (gnus-emphasis-italic ((t (:italic t))))\r
+     (gnus-emphasis-underline ((t (:underline t))))\r
+     (gnus-emphasis-underline-bold ((t (:bold t :underline t))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:italic t :bold t :underline t))))\r
+     (gnus-emphasis-underline-italic ((t (:italic t :underline t))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "White"))))\r
+     (gnus-group-mail-1-face ((t (:bold t :foreground "White"))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "light cyan"))))\r
+     (gnus-group-mail-2-face ((t (:bold t :foreground "light cyan"))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "LightBlue"))))\r
+     (gnus-group-mail-3-face ((t (:bold t :foreground "LightBlue"))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "Aquamarine"))))\r
+     (gnus-group-mail-low-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "White"))))\r
+     (gnus-group-news-1-face ((t (:bold t :foreground "White"))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "light cyan"))))\r
+     (gnus-group-news-2-face ((t (:bold t :foreground "light cyan"))))\r
+     (gnus-group-news-3-empty-face ((t (:foreground "LightBlue"))))\r
+     (gnus-group-news-3-face ((t (:bold t :foreground "LightBlue"))))\r
+     (gnus-group-news-4-empty-face ((t (:foreground "Aquamarine"))))\r
+     (gnus-group-news-4-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (gnus-group-news-5-empty-face ((t (:foreground "MediumAquamarine"))))\r
+     (gnus-group-news-5-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (gnus-group-news-6-empty-face ((t (:foreground "MediumAquamarine"))))\r
+     (gnus-group-news-6-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "MediumAquamarine"))))\r
+     (gnus-group-news-low-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (gnus-header-content-face ((t (:foreground "LightSkyBlue3"))))\r
+     (gnus-header-from-face ((t (:bold t :foreground "light cyan"))))\r
+     (gnus-header-name-face ((t (:bold t :foreground "LightBlue"))))\r
+     (gnus-header-newsgroups-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (gnus-header-subject-face ((t (:bold t :foreground "light cyan"))))\r
+     (gnus-signature-face ((t (:foreground "Grey"))))\r
+     (gnus-splash-face ((t (:foreground "ForestGreen"))))\r
+     (gnus-summary-cancelled-face ((t (:background "Black" :foreground "Yellow"))))\r
+     (gnus-summary-high-ancient-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (gnus-summary-high-read-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (gnus-summary-high-ticked-face ((t (:bold t :foreground "LightSalmon"))))\r
+     (gnus-summary-high-unread-face ((t (:bold t :foreground "beige"))))\r
+     (gnus-summary-low-ancient-face ((t (:foreground "DimGray"))))\r
+     (gnus-summary-low-read-face ((t (:foreground "slate gray"))))\r
+     (gnus-summary-low-ticked-face ((t (:foreground "Pink"))))\r
+     (gnus-summary-low-unread-face ((t (:foreground "LightGray"))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "MediumAquamarine"))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "Aquamarine"))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "LightSalmon"))))\r
+     (gnus-summary-normal-unread-face ((t (nil))))\r
+     (gnus-summary-selected-face ((t (:background "DarkSlateBlue"))))\r
+     (message-cited-text-face ((t (:foreground "LightSalmon"))))\r
+     (message-header-cc-face ((t (:foreground "light cyan"))))\r
+     (message-header-name-face ((t (:foreground "LightBlue"))))\r
+     (message-header-newsgroups-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+     (message-header-other-face ((t (:foreground "MediumAquamarine"))))\r
+     (message-header-subject-face ((t (:bold t :foreground "light cyan"))))\r
+     (message-header-to-face ((t (:bold t :foreground "light cyan"))))\r
+     (message-header-xheader-face ((t (:foreground "MediumAquamarine"))))\r
+     (message-separator-face ((t (:foreground "chocolate")))))))\r
+\r
+(defun color-theme-dark-gnus ()\r
+  "Color theme for gnus and message faces only.\r
+This is intended for other color themes to use\r
+\(eg. `color-theme-late-night')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-blue-gnus\r
+     nil\r
+     (gnus-cite-attribution-face ((t (:foreground "#bbb"))))\r
+     (gnus-cite-face-1 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-2 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-3 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-4 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-5 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-6 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-7 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-8 ((t (:foreground "#aaa"))))\r
+     (gnus-cite-face-9 ((t (:foreground "#aaa"))))\r
+     (gnus-emphasis-bold ((t (:bold t))))\r
+     (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+     (gnus-emphasis-highlight-words ((t (:foreground "#ccc"))))\r
+     (gnus-emphasis-italic ((t (:italic t))))\r
+     (gnus-emphasis-underline ((t (:underline t))))\r
+     (gnus-emphasis-underline-bold ((t (:bold t :underline t))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:italic t :bold t :underline t))))\r
+     (gnus-emphasis-underline-italic ((t (:italic t :underline t))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "#999"))))\r
+     (gnus-group-mail-1-face ((t (:bold t :foreground "#999"))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "#999"))))\r
+     (gnus-group-mail-2-face ((t (:bold t :foreground "#999"))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "#888"))))\r
+     (gnus-group-mail-3-face ((t (:bold t :foreground "#888"))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "#777"))))\r
+     (gnus-group-mail-low-face ((t (:bold t :foreground "#777"))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "#999"))))\r
+     (gnus-group-news-1-face ((t (:bold t :foreground "#999"))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "#888"))))\r
+     (gnus-group-news-2-face ((t (:bold t :foreground "#888"))))\r
+     (gnus-group-news-3-empty-face ((t (:foreground "#777"))))\r
+     (gnus-group-news-3-face ((t (:bold t :foreground "#777"))))\r
+     (gnus-group-news-4-empty-face ((t (:foreground "#666"))))\r
+     (gnus-group-news-4-face ((t (:bold t :foreground "#666"))))\r
+     (gnus-group-news-5-empty-face ((t (:foreground "#666"))))\r
+     (gnus-group-news-5-face ((t (:bold t :foreground "#666"))))\r
+     (gnus-group-news-6-empty-face ((t (:foreground "#666"))))\r
+     (gnus-group-news-6-face ((t (:bold t :foreground "#666"))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "#666"))))\r
+     (gnus-group-news-low-face ((t (:bold t :foreground "#666"))))\r
+     (gnus-header-content-face ((t (:foreground "#888"))))\r
+     (gnus-header-from-face ((t (:bold t :foreground "#888"))))\r
+     (gnus-header-name-face ((t (:bold t :foreground "#777"))))\r
+     (gnus-header-newsgroups-face ((t (:bold t :foreground "#777"))))\r
+     (gnus-header-subject-face ((t (:bold t :foreground "#999"))))\r
+     (gnus-signature-face ((t (:foreground "#444"))))\r
+     (gnus-splash-face ((t (:foreground "#ccc"))))\r
+     (gnus-summary-cancelled-face ((t (:background "#555" :foreground "#000"))))\r
+     (gnus-summary-high-ancient-face ((t (:bold t :foreground "#555"))))\r
+     (gnus-summary-high-read-face ((t (:bold t :foreground "#666"))))\r
+     (gnus-summary-high-ticked-face ((t (:bold t :foreground "#777"))))\r
+     (gnus-summary-high-unread-face ((t (:bold t :foreground "#888"))))\r
+     (gnus-summary-low-ancient-face ((t (:foreground "#444"))))\r
+     (gnus-summary-low-read-face ((t (:foreground "#555"))))\r
+     (gnus-summary-low-ticked-face ((t (:foreground "#666"))))\r
+     (gnus-summary-low-unread-face ((t (:foreground "#777"))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "#555"))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "#666"))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "#777"))))\r
+     (gnus-summary-normal-unread-face ((t (:foreground "#888"))))\r
+     (gnus-summary-selected-face ((t (:background "#333"))))\r
+     (message-cited-text-face ((t (:foreground "#aaa"))))\r
+     (message-header-cc-face ((t (:foreground "#888"))))\r
+     (message-header-name-face ((t (:bold t :foreground "#777"))))\r
+     (message-header-newsgroups-face ((t (:bold t :foreground "#777"))))\r
+     (message-header-other-face ((t (:foreground "#666"))))\r
+     (message-header-subject-face ((t (:bold t :foreground "#999"))))\r
+     (message-header-to-face ((t (:bold t :foreground "#777"))))\r
+     (message-header-xheader-face ((t (:foreground "#666"))))\r
+     (message-separator-face ((t (:foreground "#999")))))))\r
+\r
+(defun color-theme-blue-eshell ()\r
+  "Color theme for eshell faces only.\r
+This is intended for other color themes to use (eg. `color-theme-gnome2')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-blue-eshell\r
+     nil\r
+     (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))\r
+     (eshell-ls-backup-face ((t (:foreground "Grey"))))\r
+     (eshell-ls-clutter-face ((t (:foreground "DimGray"))))\r
+     (eshell-ls-directory-face ((t (:bold t :foreground "MediumSlateBlue"))))\r
+     (eshell-ls-executable-face ((t (:foreground "Coral"))))\r
+     (eshell-ls-missing-face ((t (:foreground "black"))))\r
+     (eshell-ls-picture-face ((t (:foreground "Violet")))) ; non-standard face\r
+     (eshell-ls-product-face ((t (:foreground "LightSalmon"))))\r
+     (eshell-ls-readonly-face ((t (:foreground "Aquamarine"))))\r
+     (eshell-ls-special-face ((t (:foreground "Gold"))))\r
+     (eshell-ls-symlink-face ((t (:foreground "White"))))\r
+     (eshell-ls-text-face ((t (:foreground "medium aquamarine")))) ; non-standard face\r
+     (eshell-ls-todo-face ((t (:bold t :foreground "aquamarine")))) ; non-standard face\r
+     (eshell-ls-unreadable-face ((t (:foreground "DimGray"))))\r
+     (eshell-prompt-face ((t (:foreground "powder blue")))))))\r
+\r
+(defun color-theme-salmon-font-lock ()\r
+  "Color theme for font-lock faces only.\r
+This is intended for other color themes to use (eg. `color-theme-gnome2')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-salmon-font-lock\r
+     nil\r
+     (font-lock-builtin-face ((t (:bold t :foreground "PaleGreen"))))\r
+     (font-lock-comment-face ((t (:foreground "LightBlue"))))\r
+     (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+     (font-lock-doc-string-face ((t (:foreground "LightSalmon"))))\r
+     (font-lock-function-name-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (font-lock-keyword-face ((t (:foreground "Salmon"))))\r
+     (font-lock-preprocessor-face ((t (:foreground "Salmon"))))\r
+     (font-lock-reference-face ((t (:foreground "pale green"))))\r
+     (font-lock-string-face ((t (:foreground "LightSalmon"))))\r
+     (font-lock-type-face ((t (:bold t :foreground "YellowGreen"))))\r
+     (font-lock-variable-name-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "red")))))))\r
+\r
+(defun color-theme-dark-font-lock ()\r
+  "Color theme for font-lock faces only.\r
+This is intended for other color themes to use (eg. `color-theme-late-night')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-dark-font-lock\r
+     nil\r
+     (font-lock-builtin-face ((t (:bold t :foreground "#777"))))\r
+     (font-lock-comment-face ((t (:foreground "#555"))))\r
+     (font-lock-constant-face ((t (:foreground "#777"))))\r
+     (font-lock-doc-string-face ((t (:foreground "#777"))))\r
+     (font-lock-doc-face ((t (:foreground "#777"))))\r
+     (font-lock-function-name-face ((t (:bold t :foreground "#777"))))\r
+     (font-lock-keyword-face ((t (:foreground "#777"))))\r
+     (font-lock-preprocessor-face ((t (:foreground "#777"))))\r
+     (font-lock-reference-face ((t (:foreground "#777"))))\r
+     (font-lock-string-face ((t (:foreground "#777"))))\r
+     (font-lock-type-face ((t (:bold t))))\r
+     (font-lock-variable-name-face ((t (:bold t :foreground "#888"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "#999")))))))\r
+\r
+(defun color-theme-dark-info ()\r
+  "Color theme for info, help and apropos faces.\r
+This is intended for other color themes to use (eg. `color-theme-late-night')."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-dark-info\r
+     nil\r
+     (info-header-node ((t (:foreground "#666"))))\r
+     (info-header-xref ((t (:foreground "#666"))))\r
+     (info-menu-5 ((t (:underline t))))\r
+     (info-menu-header ((t (:bold t :foreground "#666"))))\r
+     (info-node ((t (:bold t :foreground "#888"))))\r
+     (info-xref ((t (:bold t :foreground "#777")))))))\r
+\r
+(defun color-theme-gnome2 ()\r
+  "Wheat on darkslategrey scheme.\r
+`color-theme-gnome' started it all.\r
+\r
+This theme supports standard faces, font-lock, eshell, info, message,\r
+gnus, custom, widget, woman, diary, cperl, bbdb, and erc.  This theme\r
+includes faces for Emacs and XEmacs.\r
+\r
+The theme does not support w3 faces because w3 faces can be controlled\r
+by your default style sheet.\r
+\r
+This is what you should put in your .Xdefaults file, if you want to\r
+change the colors of the menus in Emacs 20 as well:\r
+\r
+emacs*Background:              DarkSlateGray\r
+emacs*Foreground:              Wheat"\r
+  (interactive)\r
+  (color-theme-blue-gnus)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-blue-erc)\r
+    (color-theme-blue-eshell)\r
+    (color-theme-salmon-font-lock)\r
+    (color-theme-salmon-diff)\r
+    (color-theme-install\r
+     '(color-theme-gnome2\r
+       ((foreground-color . "wheat")\r
+       (background-color . "darkslategrey")\r
+       (mouse-color . "Grey")\r
+       (cursor-color . "LightGray")\r
+       (border-color . "black")\r
+       (background-mode . dark))\r
+       ((apropos-keybinding-face . underline)\r
+       (apropos-label-face . italic)\r
+       (apropos-match-face . secondary-selection)\r
+       (apropos-property-face . bold-italic)\r
+       (apropos-symbol-face . info-xref)\r
+       (goto-address-mail-face . message-header-to-face)\r
+       (goto-address-mail-mouse-face . secondary-selection)\r
+       (goto-address-url-face . info-xref)\r
+       (goto-address-url-mouse-face . highlight)\r
+       (list-matching-lines-face . bold)\r
+       (view-highlight-face . highlight))\r
+       (default ((t (nil))))\r
+       (bbdb-company ((t (:foreground "pale green"))))\r
+       (bbdb-name ((t (:bold t :foreground "pale green"))))\r
+       (bbdb-field-name ((t (:foreground "medium sea green"))))\r
+       (bbdb-field-value ((t (:foreground "dark sea green"))))\r
+       (bold ((t (:bold t))))\r
+       (bold-italic ((t (:italic t :bold t :foreground "beige"))))\r
+       (calendar-today-face ((t (:underline t))))\r
+       (comint-highlight-prompt ((t (:foreground "medium aquamarine"))))\r
+       (cperl-array-face ((t (:foreground "Yellow"))))\r
+       (cperl-hash-face ((t (:foreground "White"))))\r
+       (cperl-nonoverridable-face ((t (:foreground "SkyBlue"))))\r
+       (custom-button-face ((t (:underline t :foreground "MediumSlateBlue"))))\r
+       (custom-documentation-face ((t (:foreground "Grey"))))\r
+       (custom-group-tag-face ((t (:foreground "MediumAquamarine"))))\r
+       (custom-state-face ((t (:foreground "LightSalmon"))))\r
+       (custom-variable-tag-face ((t (:foreground "Aquamarine"))))\r
+       (diary-face ((t (:foreground "IndianRed"))))\r
+       (dired-face-directory ((t (:bold t :foreground "sky blue"))))\r
+       (dired-face-permissions ((t (:foreground "aquamarine"))))\r
+       (dired-face-flagged ((t (:foreground "tomato"))))\r
+       (dired-face-marked ((t (:foreground "light salmon"))))\r
+       (dired-face-executable ((t (:foreground "green yellow"))))\r
+       (fringe ((t (:background "darkslategrey"))))\r
+       (highlight ((t (:background "PaleGreen" :foreground "DarkGreen"))))\r
+       (highline-face ((t (:background "SeaGreen"))))\r
+       (holiday-face ((t (:background "DimGray"))))\r
+       (hyper-apropos-hyperlink ((t (:bold t :foreground "DodgerBlue1"))))\r
+       (hyper-apropos-documentation ((t (:foreground "LightSalmon"))))\r
+       (info-header-xref ((t (:foreground "DodgerBlue1" :bold t))))\r
+       (info-menu-5 ((t (:underline t))))\r
+       (info-node ((t (:underline t :bold t :foreground "DodgerBlue1"))))\r
+       (info-xref ((t (:bold t :foreground "DodgerBlue1"))))\r
+       (isearch ((t (:background "sea green"))))\r
+       (italic ((t (:italic t))))\r
+       (menu ((t (:foreground "wheat" :background "darkslategrey"))))\r
+       (modeline ((t (:background "dark olive green" :foreground "wheat"))))\r
+       (modeline-buffer-id ((t (:background "dark olive green" :foreground "beige"))))\r
+       (modeline-mousable ((t (:background "dark olive green" :foreground "yellow green"))))\r
+       (modeline-mousable-minor-mode ((t (:background "dark olive green" :foreground "wheat"))))\r
+       (region ((t (:background "dark cyan" :foreground "cyan"))))\r
+       (secondary-selection ((t (:background "Aquamarine" :foreground "SlateBlue"))))\r
+       (show-paren-match-face ((t (:bold t :background "Aquamarine" :foreground "steel blue"))))\r
+       (show-paren-mismatch-face ((t (:background "Red" :foreground "White"))))\r
+       (underline ((t (:underline t))))\r
+       (widget-field-face ((t (:foreground "LightBlue"))))\r
+       (widget-inactive-face ((t (:foreground "DimGray"))))\r
+       (widget-single-line-field-face ((t (:foreground "LightBlue"))))\r
+       (w3m-anchor-face ((t (:bold t :foreground "DodgerBlue1"))))\r
+       (w3m-arrived-anchor-face ((t (:bold t :foreground "DodgerBlue3"))))\r
+       (w3m-header-line-location-title-face ((t (:foreground "beige" :background "dark olive green"))))\r
+       (w3m-header-line-location-content-face ((t (:foreground "wheat" :background "dark olive green"))))\r
+       (woman-bold-face ((t (:bold t))))\r
+       (woman-italic-face ((t (:foreground "beige"))))\r
+       (woman-unknown-face ((t (:foreground "LightSalmon"))))\r
+       (zmacs-region ((t (:background "dark cyan" :foreground "cyan"))))))))\r
+\r
+(defun color-theme-simple-1 ()\r
+  "Black background.\r
+Doesn't mess with most faces, but does turn on dark background mode."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-simple-1\r
+     ((foreground-color . "white")\r
+      (background-color . "black")\r
+      (cursor-color    . "indian red")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "black" :background "white"))))\r
+     (modeline-buffer-id ((t (:foreground "black" :background "white"))))\r
+     (modeline-mousable ((t (:foreground "black" :background "white"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "black" :background "white"))))\r
+     (underline ((t (:underline t))))\r
+     (region ((t (:background "grey")))))))\r
+\r
+(defun color-theme-jonadabian ()\r
+  "Dark blue background.\r
+Supports standard faces, font-lock, highlight-changes, widget and\r
+custom."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-jonadabian\r
+     ((foreground-color . "#CCBB77")\r
+      (cursor-color . "medium turquoise")\r
+      (background-color . "#000055")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "cyan" :background "#007080"))))\r
+     (modeline-buffer-id ((t (:foreground "cyan" :background "#007080"))))\r
+     (modeline-mousable ((t (:foreground "cyan" :background "#007080"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "cyan" :background "#007080"))))\r
+     (underline ((t (:underline t))))\r
+     (region ((t (:background "#004080"))))\r
+     (font-lock-keyword-face ((t (:foreground "#00BBBB"))))\r
+     (font-lock-comment-face ((t (:foreground "grey50" :bold t :italic t))))\r
+     (font-lock-string-face ((t (:foreground "#10D010"))))\r
+     (font-lock-constant-face ((t (:foreground "indian red"))))\r
+     (highlight-changes-face ((t (:background "navy"))))\r
+     (highlight-changes-delete-face ((t (:foreground "red" :background "navy"))))\r
+     (widget-field-face ((t (:foreground "black" :background "grey35"))))\r
+     (widget-inactive-face ((t (:foreground "gray"))))\r
+     (custom-button-face ((t (:foreground "yellow" :background "dark blue"))))\r
+     (custom-state-face ((t (:foreground "mediumaquamarine"))))\r
+     (custom-face-tag-face ((t (:foreground "goldenrod" :underline t))))\r
+     (custom-documentation-face ((t (:foreground "#10D010"))))\r
+     (custom-set-face ((t (:foreground "#2020D0")))))))\r
+\r
+(defun color-theme-ryerson ()\r
+  "White on midnightblue scheme.\r
+Used at Ryerson Polytechnic University in the Electronic Engineering department."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-ryerson\r
+     ((foreground-color . "white")\r
+      (background-color . "midnightblue")\r
+      (cursor-color    . "red")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "black" :background "slategray3"))))\r
+     (modeline-buffer-id ((t (:foreground "black" :background "slategray3"))))\r
+     (modeline-mousable ((t (:foreground "black" :background "slategray3"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "black" :background "slategray3"))))\r
+     (underline ((t (:underline t))))\r
+     (region ((t (:foreground "black" :background "slategray3")))))))\r
+\r
+(defun color-theme-wheat ()\r
+  "Default colors on a wheat background.\r
+Calls the standard color theme function `color-theme-standard' in order\r
+to reset all faces."\r
+  (interactive)\r
+  (color-theme-standard)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-install\r
+     '(color-theme-wheat\r
+       ((background-color . "Wheat"))))))\r
+\r
+(defun color-theme-standard ()\r
+  "Emacs default colors.\r
+If you are missing standard faces in this theme, please notify the maintainer."\r
+  (interactive)\r
+  ;; Note that some of the things that make up a color theme are\r
+  ;; actually variable settings!\r
+  (color-theme-install\r
+   '(color-theme-standard\r
+     ((foreground-color . "black")\r
+      (background-color . "white")\r
+      (mouse-color . "black")\r
+      (cursor-color . "black")\r
+      (border-color . "black")\r
+      (background-mode . light))\r
+     ((Man-overstrike-face . bold)\r
+      (Man-underline-face . underline)\r
+      (apropos-keybinding-face . underline)\r
+      (apropos-label-face . italic)\r
+      (apropos-match-face . secondary-selection)\r
+      (apropos-property-face . bold-italic)\r
+      (apropos-symbol-face . bold)\r
+      (goto-address-mail-face . italic)\r
+      (goto-address-mail-mouse-face . secondary-selection)\r
+      (goto-address-url-face . bold)\r
+      (goto-address-url-mouse-face . highlight)\r
+      (help-highlight-face . underline)\r
+      (list-matching-lines-face . bold)\r
+      (view-highlight-face . highlight))\r
+     (default ((t (nil))))\r
+     (bold ((t (:bold t))))\r
+     (bold-italic ((t (:bold t :italic t))))\r
+     (calendar-today-face ((t (:underline t))))\r
+     (cperl-array-face ((t (:foreground "Blue" :background "lightyellow2" :bold t))))\r
+     (cperl-hash-face ((t (:foreground "Red" :background "lightyellow2" :bold t :italic t))))\r
+     (cperl-nonoverridable-face ((t (:foreground "chartreuse3"))))\r
+     (custom-button-face ((t (nil))))\r
+     (custom-changed-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-documentation-face ((t (nil))))\r
+     (custom-face-tag-face ((t (:underline t))))\r
+     (custom-group-tag-face ((t (:foreground "blue" :underline t))))\r
+     (custom-group-tag-face-1 ((t (:foreground "red" :underline t))))\r
+     (custom-invalid-face ((t (:foreground "yellow" :background "red"))))\r
+     (custom-modified-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-rogue-face ((t (:foreground "pink" :background "black"))))\r
+     (custom-saved-face ((t (:underline t))))\r
+     (custom-set-face ((t (:foreground "blue" :background "white"))))\r
+     (custom-state-face ((t (:foreground "dark green"))))\r
+     (custom-variable-button-face ((t (:bold t :underline t))))\r
+     (custom-variable-tag-face ((t (:foreground "blue" :underline t))))\r
+     (diary-face ((t (:foreground "red"))))\r
+     (ediff-current-diff-face-A ((t (:foreground "firebrick" :background "pale green"))))\r
+     (ediff-current-diff-face-Ancestor ((t (:foreground "Black" :background "VioletRed"))))\r
+     (ediff-current-diff-face-B ((t (:foreground "DarkOrchid" :background "Yellow"))))\r
+     (ediff-current-diff-face-C ((t (:foreground "Navy" :background "Pink"))))\r
+     (ediff-even-diff-face-A ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-even-diff-face-Ancestor ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-even-diff-face-B ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-even-diff-face-C ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-fine-diff-face-A ((t (:foreground "Navy" :background "sky blue"))))\r
+     (ediff-fine-diff-face-Ancestor ((t (:foreground "Black" :background "Green"))))\r
+     (ediff-fine-diff-face-B ((t (:foreground "Black" :background "cyan"))))\r
+     (ediff-fine-diff-face-C ((t (:foreground "Black" :background "Turquoise"))))\r
+     (ediff-odd-diff-face-A ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-odd-diff-face-Ancestor ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-odd-diff-face-B ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-odd-diff-face-C ((t (:foreground "White" :background "Grey"))))\r
+     (eshell-ls-archive-face ((t (:foreground "Orchid" :bold t))))\r
+     (eshell-ls-backup-face ((t (:foreground "OrangeRed"))))\r
+     (eshell-ls-clutter-face ((t (:foreground "OrangeRed" :bold t))))\r
+     (eshell-ls-directory-face ((t (:foreground "Blue" :bold t))))\r
+     (eshell-ls-executable-face ((t (:foreground "ForestGreen" :bold t))))\r
+     (eshell-ls-missing-face ((t (:foreground "Red" :bold t))))\r
+     (eshell-ls-product-face ((t (:foreground "OrangeRed"))))\r
+     (eshell-ls-readonly-face ((t (:foreground "Brown"))))\r
+     (eshell-ls-special-face ((t (:foreground "Magenta" :bold t))))\r
+     (eshell-ls-symlink-face ((t (:foreground "DarkCyan" :bold t))))\r
+     (eshell-ls-unreadable-face ((t (:foreground "Grey30"))))\r
+     (eshell-prompt-face ((t (:foreground "Red" :bold t))))\r
+     (eshell-test-failed-face ((t (:foreground "OrangeRed" :bold t))))\r
+     (eshell-test-ok-face ((t (:foreground "Green" :bold t))))\r
+     (excerpt ((t (:italic t))))\r
+     (fixed ((t (:bold t))))\r
+     (flyspell-duplicate-face ((t (:foreground "Gold3" :bold t :underline t))))\r
+     (flyspell-incorrect-face ((t (:foreground "OrangeRed" :bold t :underline t))))\r
+     (font-lock-builtin-face ((t (:foreground "Orchid"))))\r
+     (font-lock-comment-face ((t (:foreground "Firebrick"))))\r
+     (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+     (font-lock-function-name-face ((t (:foreground "Blue"))))\r
+     (font-lock-keyword-face ((t (:foreground "Purple"))))\r
+     (font-lock-string-face ((t (:foreground "RosyBrown"))))\r
+     (font-lock-type-face ((t (:foreground "ForestGreen"))))\r
+     (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+     (font-lock-warning-face ((t (:foreground "Red" :bold t))))\r
+     (fringe ((t (:background "grey95"))))\r
+     (gnus-cite-attribution-face ((t (:italic t))))\r
+     (gnus-cite-face-1 ((t (:foreground "MidnightBlue"))))\r
+     (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+     (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+     (gnus-cite-face-2 ((t (:foreground "firebrick"))))\r
+     (gnus-cite-face-3 ((t (:foreground "dark green"))))\r
+     (gnus-cite-face-4 ((t (:foreground "OrangeRed"))))\r
+     (gnus-cite-face-5 ((t (:foreground "dark khaki"))))\r
+     (gnus-cite-face-6 ((t (:foreground "dark violet"))))\r
+     (gnus-cite-face-7 ((t (:foreground "SteelBlue4"))))\r
+     (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+     (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+     (gnus-emphasis-bold ((t (:bold t))))\r
+     (gnus-emphasis-bold-italic ((t (:bold t :italic t))))\r
+     (gnus-emphasis-italic ((t (:italic t))))\r
+     (gnus-emphasis-underline ((t (:underline t))))\r
+     (gnus-emphasis-underline-bold ((t (:bold t :underline t))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:bold t :italic t :underline t))))\r
+     (gnus-emphasis-underline-italic ((t (:italic t :underline t))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+     (gnus-group-mail-1-face ((t (:foreground "DeepPink3" :bold t))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+     (gnus-group-mail-2-face ((t (:foreground "HotPink3" :bold t))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+     (gnus-group-mail-3-face ((t (:foreground "magenta4" :bold t))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+     (gnus-group-mail-low-face ((t (:foreground "DeepPink4" :bold t))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+     (gnus-group-news-1-face ((t (:foreground "ForestGreen" :bold t))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+     (gnus-group-news-2-face ((t (:foreground "CadetBlue4" :bold t))))\r
+     (gnus-group-news-3-empty-face ((t (nil))))\r
+     (gnus-group-news-3-face ((t (:bold t))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+     (gnus-group-news-low-face ((t (:foreground "DarkGreen" :bold t))))\r
+     (gnus-header-content-face ((t (:foreground "indianred4" :italic t))))\r
+     (gnus-header-from-face ((t (:foreground "red3"))))\r
+     (gnus-header-name-face ((t (:foreground "maroon"))))\r
+     (gnus-header-newsgroups-face ((t (:foreground "MidnightBlue" :italic t))))\r
+     (gnus-header-subject-face ((t (:foreground "red4"))))\r
+     (gnus-signature-face ((t (:italic t))))\r
+     (gnus-splash-face ((t (:foreground "ForestGreen"))))\r
+     (gnus-summary-cancelled-face ((t (:foreground "yellow" :background "black"))))\r
+     (gnus-summary-high-ancient-face ((t (:foreground "RoyalBlue" :bold t))))\r
+     (gnus-summary-high-read-face ((t (:foreground "DarkGreen" :bold t))))\r
+     (gnus-summary-high-ticked-face ((t (:foreground "firebrick" :bold t))))\r
+     (gnus-summary-high-unread-face ((t (:bold t))))\r
+     (gnus-summary-low-ancient-face ((t (:foreground "RoyalBlue" :italic t))))\r
+     (gnus-summary-low-read-face ((t (:foreground "DarkGreen" :italic t))))\r
+     (gnus-summary-low-ticked-face ((t (:foreground "firebrick" :italic t))))\r
+     (gnus-summary-low-unread-face ((t (:italic t))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "firebrick"))))\r
+     (gnus-summary-normal-unread-face ((t (nil))))\r
+     (gnus-summary-selected-face ((t (:underline t))))\r
+     (highlight ((t (:background "darkseagreen2"))))\r
+     (highlight-changes-delete-face ((t (:foreground "red" :underline t))))\r
+     (highlight-changes-face ((t (:foreground "red"))))\r
+     (highline-face ((t (:background "paleturquoise"))))\r
+     (holiday-face ((t (:background "pink"))))\r
+     (info-menu-5 ((t (:underline t))))\r
+     (info-node ((t (:bold t :italic t))))\r
+     (info-xref ((t (:bold t))))\r
+     (italic ((t (:italic t))))\r
+     (makefile-space-face ((t (:background "hotpink"))))\r
+     (message-cited-text-face ((t (:foreground "red"))))\r
+     (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+     (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+     (message-header-newsgroups-face ((t (:foreground "blue4" :bold t :italic t))))\r
+     (message-header-other-face ((t (:foreground "steel blue"))))\r
+     (message-header-subject-face ((t (:foreground "navy blue" :bold t))))\r
+     (message-header-to-face ((t (:foreground "MidnightBlue" :bold t))))\r
+     (message-header-xheader-face ((t (:foreground "blue"))))\r
+     (message-separator-face ((t (:foreground "brown"))))\r
+     (modeline ((t (:foreground "white" :background "black"))))\r
+     (modeline-buffer-id ((t (:foreground "white" :background "black"))))\r
+     (modeline-mousable ((t (:foreground "white" :background "black"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "white" :background "black"))))\r
+     (region ((t (:background "gray"))))\r
+     (secondary-selection ((t (:background "paleturquoise"))))\r
+     (show-paren-match-face ((t (:background "turquoise"))))\r
+     (show-paren-mismatch-face ((t (:foreground "white" :background "purple"))))\r
+     (speedbar-button-face ((t (:foreground "green4"))))\r
+     (speedbar-directory-face ((t (:foreground "blue4"))))\r
+     (speedbar-file-face ((t (:foreground "cyan4"))))\r
+     (speedbar-highlight-face ((t (:background "green"))))\r
+     (speedbar-selected-face ((t (:foreground "red" :underline t))))\r
+     (speedbar-tag-face ((t (:foreground "brown"))))\r
+     (term-black ((t (:foreground "black"))))\r
+     (term-blackbg ((t (:background "black"))))\r
+     (term-blue ((t (:foreground "blue"))))\r
+     (term-bluebg ((t (:background "blue"))))\r
+     (term-bold ((t (:bold t))))\r
+     (term-cyan ((t (:foreground "cyan"))))\r
+     (term-cyanbg ((t (:background "cyan"))))\r
+     (term-default-bg ((t (nil))))\r
+     (term-default-bg-inv ((t (nil))))\r
+     (term-default-fg ((t (nil))))\r
+     (term-default-fg-inv ((t (nil))))\r
+     (term-green ((t (:foreground "green"))))\r
+     (term-greenbg ((t (:background "green"))))\r
+     (term-invisible ((t (nil))))\r
+     (term-invisible-inv ((t (nil))))\r
+     (term-magenta ((t (:foreground "magenta"))))\r
+     (term-magentabg ((t (:background "magenta"))))\r
+     (term-red ((t (:foreground "red"))))\r
+     (term-redbg ((t (:background "red"))))\r
+     (term-underline ((t (:underline t))))\r
+     (term-white ((t (:foreground "white"))))\r
+     (term-whitebg ((t (:background "white"))))\r
+     (term-yellow ((t (:foreground "yellow"))))\r
+     (term-yellowbg ((t (:background "yellow"))))\r
+     (underline ((t (:underline t))))\r
+     (vcursor ((t (:foreground "blue" :background "cyan" :underline t))))\r
+     (vhdl-font-lock-attribute-face ((t (:foreground "Orchid"))))\r
+     (vhdl-font-lock-directive-face ((t (:foreground "CadetBlue"))))\r
+     (vhdl-font-lock-enumvalue-face ((t (:foreground "Gold4"))))\r
+     (vhdl-font-lock-function-face ((t (:foreground "Orchid4"))))\r
+     (vhdl-font-lock-prompt-face ((t (:foreground "Red" :bold t))))\r
+     (vhdl-font-lock-reserved-words-face ((t (:foreground "Orange" :bold t))))\r
+     (vhdl-font-lock-translate-off-face ((t (:background "LightGray"))))\r
+     (vhdl-speedbar-architecture-face ((t (:foreground "Blue"))))\r
+     (vhdl-speedbar-architecture-selected-face ((t (:foreground "Blue" :underline t))))\r
+     (vhdl-speedbar-configuration-face ((t (:foreground "DarkGoldenrod"))))\r
+     (vhdl-speedbar-configuration-selected-face ((t (:foreground "DarkGoldenrod" :underline t))))\r
+     (vhdl-speedbar-entity-face ((t (:foreground "ForestGreen"))))\r
+     (vhdl-speedbar-entity-selected-face ((t (:foreground "ForestGreen" :underline t))))\r
+     (vhdl-speedbar-instantiation-face ((t (:foreground "Brown"))))\r
+     (vhdl-speedbar-instantiation-selected-face ((t (:foreground "Brown" :underline t))))\r
+     (vhdl-speedbar-package-face ((t (:foreground "Grey50"))))\r
+     (vhdl-speedbar-package-selected-face ((t (:foreground "Grey50" :underline t))))\r
+     (viper-minibuffer-emacs-face ((t (:foreground "Black" :background "darkseagreen2"))))\r
+     (viper-minibuffer-insert-face ((t (:foreground "Black" :background "pink"))))\r
+     (viper-minibuffer-vi-face ((t (:foreground "DarkGreen" :background "grey"))))\r
+     (viper-replace-overlay-face ((t (:foreground "Black" :background "darkseagreen2"))))\r
+     (viper-search-face ((t (:foreground "Black" :background "khaki"))))\r
+     (widget-button-face ((t (:bold t))))\r
+     (widget-button-pressed-face ((t (:foreground "red"))))\r
+     (widget-documentation-face ((t (:foreground "dark green"))))\r
+     (widget-field-face ((t (:background "gray85"))))\r
+     (widget-inactive-face ((t (:foreground "dim gray"))))\r
+     (widget-single-line-field-face ((t (:background "gray85")))))))\r
+\r
+(defun color-theme-fischmeister ()\r
+  "The light colors on a grey blackground.\r
+Sebastian Fischmeister <sfischme@nexus.lzk.tuwien.ac.at>"\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-fischmeister\r
+     ((foreground-color . "black")\r
+      (background-color . "gray80")\r
+      (mouse-color . "red")\r
+      (cursor-color . "yellow")\r
+      (border-color . "black")\r
+      (background-mode . light))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "gray80" :background "black"))))\r
+     (modeline-buffer-id ((t (:foreground "gray80" :background "black"))))\r
+     (modeline-mousable ((t (:foreground "gray80" :background "black"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "gray80" :background "black"))))\r
+     (highlight ((t (:background "darkseagreen2"))))\r
+     (bold ((t (:bold t))))\r
+     (italic ((t (:italic t))))\r
+     (bold-italic ((t (:bold t :italic t))))\r
+     (region ((t (:background "gray"))))\r
+     (secondary-selection ((t (:background "paleturquoise"))))\r
+     (underline ((t (:underline t))))\r
+     (show-paren-match-face ((t (:foreground "yellow" :background "darkgreen"))))\r
+     (show-paren-mismatch-face ((t (:foreground "white" :background "red"))))\r
+     (font-lock-comment-face ((t (:foreground "FireBrick" :bold t :italic t))))\r
+     (font-lock-string-face ((t (:foreground "DarkSlateBlue" :italic t))))\r
+     (font-lock-keyword-face ((t (:foreground "navy"))))\r
+     (font-lock-builtin-face ((t (:foreground "white"))))\r
+     (font-lock-function-name-face ((t (:foreground "Blue"))))\r
+     (font-lock-variable-name-face ((t (:foreground "Darkblue"))))\r
+     (font-lock-type-face ((t (:foreground "darkgreen"))))\r
+     (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+     (font-lock-warning-face ((t (:foreground "Orchid" :bold t))))\r
+     (font-lock-reference-face ((t (:foreground "SteelBlue")))))))\r
+\r
+(defun color-theme-sitaramv-solaris ()\r
+  "White on a midnight blue background.  Lots of yellow and orange.\r
+Includes faces for font-lock, widget, custom, speedbar, message, gnus,\r
+eshell."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-sitaramv-solaris\r
+     ((foreground-color . "white")\r
+      (background-color . "MidnightBlue")\r
+      (mouse-color . "yellow")\r
+      (cursor-color . "magenta2")\r
+      (border-color . "black")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-buffer-id ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-mousable ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "black" :background "gold2"))))\r
+     (highlight ((t (:foreground "black" :background "Aquamarine"))))\r
+     (bold ((t (:bold t))))\r
+     (italic ((t (:italic t))))\r
+     (bold-italic ((t (:bold t :italic t))))\r
+     (region ((t (:foreground "black" :background "snow3"))))\r
+     (secondary-selection ((t (:foreground "black" :background "aquamarine"))))\r
+     (underline ((t (:underline t))))\r
+     (lazy-highlight-face ((t (:foreground "yellow"))))\r
+     (font-lock-comment-face ((t (:foreground "orange" :italic t))))\r
+     (font-lock-string-face ((t (:foreground "orange"))))\r
+     (font-lock-keyword-face ((t (:foreground "green"))))\r
+     (font-lock-builtin-face ((t (:foreground "LightSteelBlue"))))\r
+     (font-lock-function-name-face ((t (:foreground "cyan" :bold t))))\r
+     (font-lock-variable-name-face ((t (:foreground "white"))))\r
+     (font-lock-type-face ((t (:foreground "cyan"))))\r
+     (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+     (font-lock-warning-face ((t (:foreground "Pink" :bold t))))\r
+     (widget-documentation-face ((t (:foreground "lime green"))))\r
+     (widget-button-face ((t (:bold t))))\r
+     (widget-field-face ((t (:background "dim gray"))))\r
+     (widget-single-line-field-face ((t (:background "dim gray"))))\r
+     (widget-inactive-face ((t (:foreground "light gray"))))\r
+     (widget-button-pressed-face ((t (:foreground "red"))))\r
+     (custom-invalid-face ((t (:foreground "yellow" :background "red"))))\r
+     (custom-rogue-face ((t (:foreground "pink" :background "black"))))\r
+     (custom-modified-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-set-face ((t (:foreground "blue" :background "white"))))\r
+     (custom-changed-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-saved-face ((t (:underline t))))\r
+     (custom-button-face ((t (nil))))\r
+     (custom-documentation-face ((t (nil))))\r
+     (custom-state-face ((t (:foreground "lime green"))))\r
+     (custom-variable-tag-face ((t (:foreground "light blue" :underline t))))\r
+     (custom-variable-button-face ((t (:bold t :underline t))))\r
+     (custom-face-tag-face ((t (:underline t))))\r
+     (custom-group-tag-face-1 ((t (:foreground "pink" :underline t))))\r
+     (custom-group-tag-face ((t (:foreground "light blue" :underline t))))\r
+     (speedbar-button-face ((t (:foreground "green3"))))\r
+     (speedbar-file-face ((t (:foreground "cyan"))))\r
+     (speedbar-directory-face ((t (:foreground "light blue"))))\r
+     (speedbar-tag-face ((t (:foreground "yellow"))))\r
+     (speedbar-selected-face ((t (:foreground "red" :underline t))))\r
+     (speedbar-highlight-face ((t (:background "sea green"))))\r
+     (font-lock-doc-string-face ((t (:foreground "Plum1" :bold t))))\r
+     (font-lock-exit-face ((t (:foreground "green"))))\r
+     (ff-paths-non-existant-file-face ((t (:foreground "NavyBlue" :bold t))))\r
+     (show-paren-match-face ((t (:background "red"))))\r
+     (show-paren-mismatch-face ((t (:foreground "white" :background "purple"))))\r
+     (message-header-to-face ((t (:foreground "green2" :bold t))))\r
+     (message-header-cc-face ((t (:foreground "LightGoldenrod" :bold t))))\r
+     (message-header-subject-face ((t (:foreground "green3"))))\r
+     (message-header-newsgroups-face ((t (:foreground "yellow" :bold t :italic t))))\r
+     (message-header-other-face ((t (:foreground "Salmon"))))\r
+     (message-header-name-face ((t (:foreground "green3"))))\r
+     (message-header-xheader-face ((t (:foreground "GreenYellow"))))\r
+     (message-separator-face ((t (:foreground "Tan"))))\r
+     (message-cited-text-face ((t (:foreground "Gold"))))\r
+     (message-mml-face ((t (:foreground "ForestGreen"))))\r
+     (gnus-group-news-1-face ((t (:foreground "PaleTurquoise" :bold t))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "PaleTurquoise"))))\r
+     (gnus-group-news-2-face ((t (:foreground "turquoise" :bold t))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "turquoise"))))\r
+     (gnus-group-news-3-face ((t (:bold t))))\r
+     (gnus-group-news-3-empty-face ((t (nil))))\r
+     (gnus-group-news-4-face ((t (:bold t))))\r
+     (gnus-group-news-4-empty-face ((t (nil))))\r
+     (gnus-group-news-5-face ((t (:bold t))))\r
+     (gnus-group-news-5-empty-face ((t (nil))))\r
+     (gnus-group-news-6-face ((t (:bold t))))\r
+     (gnus-group-news-6-empty-face ((t (nil))))\r
+     (gnus-group-news-low-face ((t (:foreground "DarkTurquoise" :bold t))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+     (gnus-group-mail-1-face ((t (:foreground "aquamarine1" :bold t))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "aquamarine1"))))\r
+     (gnus-group-mail-2-face ((t (:foreground "aquamarine2" :bold t))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "aquamarine2"))))\r
+     (gnus-group-mail-3-face ((t (:foreground "aquamarine3" :bold t))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "aquamarine3"))))\r
+     (gnus-group-mail-low-face ((t (:foreground "aquamarine4" :bold t))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine4"))))\r
+     (gnus-summary-selected-face ((t (:underline t))))\r
+     (gnus-summary-cancelled-face ((t (:foreground "yellow" :background "black"))))\r
+     (gnus-summary-high-ticked-face ((t (:foreground "pink" :bold t))))\r
+     (gnus-summary-low-ticked-face ((t (:foreground "pink" :italic t))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "pink"))))\r
+     (gnus-summary-high-ancient-face ((t (:foreground "SkyBlue" :bold t))))\r
+     (gnus-summary-low-ancient-face ((t (:foreground "SkyBlue" :italic t))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+     (gnus-summary-high-unread-face ((t (:bold t))))\r
+     (gnus-summary-low-unread-face ((t (:italic t))))\r
+     (gnus-summary-normal-unread-face ((t (nil))))\r
+     (gnus-summary-high-read-face ((t (:foreground "PaleGreen" :bold t))))\r
+     (gnus-summary-low-read-face ((t (:foreground "PaleGreen" :italic t))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+     (gnus-splash-face ((t (:foreground "Brown"))))\r
+     (eshell-ls-directory-face ((t (:foreground "SkyBlue" :bold t))))\r
+     (eshell-ls-symlink-face ((t (:foreground "Cyan" :bold t))))\r
+     (eshell-ls-executable-face ((t (:foreground "Green" :bold t))))\r
+     (eshell-ls-readonly-face ((t (:foreground "Pink"))))\r
+     (eshell-ls-unreadable-face ((t (:foreground "DarkGrey"))))\r
+     (eshell-ls-special-face ((t (:foreground "Magenta" :bold t))))\r
+     (eshell-ls-missing-face ((t (:foreground "Red" :bold t))))\r
+     (eshell-ls-archive-face ((t (:foreground "Orchid" :bold t))))\r
+     (eshell-ls-backup-face ((t (:foreground "LightSalmon"))))\r
+     (eshell-ls-product-face ((t (:foreground "LightSalmon"))))\r
+     (eshell-ls-clutter-face ((t (:foreground "OrangeRed" :bold t))))\r
+     (eshell-prompt-face ((t (:foreground "Pink" :bold t))))\r
+     (term-default-fg ((t (nil))))\r
+     (term-default-bg ((t (nil))))\r
+     (term-default-fg-inv ((t (nil))))\r
+     (term-default-bg-inv ((t (nil))))\r
+     (term-bold ((t (:bold t))))\r
+     (term-underline ((t (:underline t))))\r
+     (term-invisible ((t (nil))))\r
+     (term-invisible-inv ((t (nil))))\r
+     (term-black ((t (:foreground "black"))))\r
+     (term-red ((t (:foreground "red"))))\r
+     (term-green ((t (:foreground "green"))))\r
+     (term-yellow ((t (:foreground "yellow"))))\r
+     (term-blue ((t (:foreground "blue"))))\r
+     (term-magenta ((t (:foreground "magenta"))))\r
+     (term-cyan ((t (:foreground "cyan"))))\r
+     (term-white ((t (:foreground "white"))))\r
+     (term-blackbg ((t (:background "black"))))\r
+     (term-redbg ((t (:background "red"))))\r
+     (term-greenbg ((t (:background "green"))))\r
+     (term-yellowbg ((t (:background "yellow"))))\r
+     (term-bluebg ((t (:background "blue"))))\r
+     (term-magentabg ((t (:background "magenta"))))\r
+     (term-cyanbg ((t (:background "cyan"))))\r
+     (term-whitebg ((t (:background "white"))))\r
+     (gnus-emphasis-bold ((t (:bold t))))\r
+     (gnus-emphasis-italic ((t (:italic t))))\r
+     (gnus-emphasis-underline ((t (:underline t))))\r
+     (gnus-emphasis-underline-bold ((t (:bold t :underline t))))\r
+     (gnus-emphasis-underline-italic ((t (:italic t :underline t))))\r
+     (gnus-emphasis-bold-italic ((t (:bold t :italic t))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:bold t :italic t :underline t))))\r
+     (gnus-emphasis-highlight-words ((t (:foreground "yellow" :background "black"))))\r
+     (gnus-signature-face ((t (:italic t))))\r
+     (gnus-header-from-face ((t (:foreground "spring green"))))\r
+     (gnus-header-subject-face ((t (:foreground "yellow" :bold t))))\r
+     (gnus-header-newsgroups-face ((t (:foreground "SeaGreen3" :bold t :italic t))))\r
+     (gnus-header-name-face ((t (:foreground "pink"))))\r
+     (gnus-header-content-face ((t (:foreground "lime green" :italic t))))\r
+     (gnus-cite-attribution-face ((t (:italic t))))\r
+     (gnus-cite-face-1 ((t (:foreground "light blue"))))\r
+     (gnus-cite-face-2 ((t (:foreground "light cyan"))))\r
+     (gnus-cite-face-3 ((t (:foreground "light yellow"))))\r
+     (gnus-cite-face-4 ((t (:foreground "light pink"))))\r
+     (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+     (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+     (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+     (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+     (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+     (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+     (gnus-cite-face-11 ((t (:foreground "turquoise")))))))\r
+\r
+(defun color-theme-sitaramv-nt ()\r
+  "Black foreground on white background.\r
+Includes faces for font-lock, widget, custom, speedbar."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-sitaramv-nt\r
+     ((foreground-color . "black")\r
+      (background-color . "white")\r
+      (mouse-color . "sienna3")\r
+      (cursor-color . "HotPink")\r
+      (border-color . "Blue")\r
+      (background-mode . light))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-buffer-id ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-mousable ((t (:foreground "black" :background "gold2"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "black" :background "gold2"))))\r
+     (highlight ((t (:foreground "black" :background "darkseagreen2"))))\r
+     (bold ((t (:bold t))))\r
+     (italic ((t (:italic t))))\r
+     (bold-italic ((t (:bold t :italic t))))\r
+     (region ((t (:foreground "black" :background "snow3"))))\r
+     (secondary-selection ((t (:background "paleturquoise"))))\r
+     (underline ((t (:underline t))))\r
+     (lazy-highlight-face ((t (:foreground "dark magenta" :bold t))))\r
+     (font-lock-comment-face ((t (:foreground "ForestGreen" :italic t))))\r
+     (font-lock-string-face ((t (:foreground "red"))))\r
+     (font-lock-keyword-face ((t (:foreground "blue" :bold t))))\r
+     (font-lock-builtin-face ((t (:foreground "black"))))\r
+     (font-lock-function-name-face ((t (:foreground "dark magenta" :bold t))))\r
+     (font-lock-variable-name-face ((t (:foreground "black"))))\r
+     (font-lock-type-face ((t (:foreground "blue"))))\r
+     (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+     (font-lock-warning-face ((t (:foreground "Red" :bold t))))\r
+     (widget-documentation-face ((t (:foreground "dark green"))))\r
+     (widget-button-face ((t (:bold t))))\r
+     (widget-field-face ((t (:background "gray85"))))\r
+     (widget-single-line-field-face ((t (:background "gray85"))))\r
+     (widget-inactive-face ((t (:foreground "dim gray"))))\r
+     (widget-button-pressed-face ((t (:foreground "red"))))\r
+     (custom-invalid-face ((t (:foreground "yellow" :background "red"))))\r
+     (custom-rogue-face ((t (:foreground "pink" :background "black"))))\r
+     (custom-modified-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-set-face ((t (:foreground "blue" :background "white"))))\r
+     (custom-changed-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-saved-face ((t (:underline t))))\r
+     (custom-button-face ((t (nil))))\r
+     (custom-documentation-face ((t (nil))))\r
+     (custom-state-face ((t (:foreground "dark green"))))\r
+     (custom-variable-tag-face ((t (:foreground "blue" :underline t))))\r
+     (custom-variable-button-face ((t (:bold t :underline t))))\r
+     (custom-face-tag-face ((t (:underline t))))\r
+     (custom-group-tag-face-1 ((t (:foreground "red" :underline t))))\r
+     (custom-group-tag-face ((t (:foreground "blue" :underline t))))\r
+     (speedbar-button-face ((t (:foreground "green4"))))\r
+     (speedbar-file-face ((t (:foreground "cyan4"))))\r
+     (speedbar-directory-face ((t (:foreground "blue4"))))\r
+     (speedbar-tag-face ((t (:foreground "brown"))))\r
+     (speedbar-selected-face ((t (:foreground "red" :underline t))))\r
+     (speedbar-highlight-face ((t (:background "green"))))\r
+     (ff-paths-non-existant-file-face ((t (:foreground "NavyBlue" :bold t))))\r
+     (show-paren-match-face ((t (:background "light blue"))))\r
+     (show-paren-mismatch-face ((t (:foreground "white" :background "purple")))))))\r
+\r
+(defun color-theme-billw ()\r
+  "Cornsilk on black.\r
+Includes info, diary, font-lock, eshell, sgml, message, gnus,\r
+widget, custom, latex, ediff."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-billw\r
+     ((foreground-color . "cornsilk")\r
+      (background-color . "black")\r
+      (mouse-color . "black")\r
+      (cursor-color . "white")\r
+      (border-color . "black")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "black" :background "wheat"))))\r
+     (modeline-buffer-id ((t (:foreground "black" :background "wheat"))))\r
+     (modeline-mousable ((t (:foreground "black" :background "wheat"))))\r
+     (modeline-mousable-minor-mode ((t (:foreground "black" :background "wheat"))))\r
+     (highlight ((t (:foreground "wheat" :background "darkslategray"))))\r
+     (bold ((t (:bold t))))\r
+     (italic ((t (:italic t))))\r
+     (bold-italic ((t (:bold t :italic t))))\r
+     (region ((t (:background "dimgray"))))\r
+     (secondary-selection ((t (:background "deepskyblue4"))))\r
+     (underline ((t (:underline t))))\r
+     (info-node ((t (:foreground "yellow" :bold t :italic t))))\r
+     (info-menu-5 ((t (:underline t))))\r
+     (info-xref ((t (:foreground "yellow" :bold t))))\r
+     (diary-face ((t (:foreground "orange"))))\r
+     (calendar-today-face ((t (:underline t))))\r
+     (holiday-face ((t (:background "red"))))\r
+     (show-paren-match-face ((t (:background "deepskyblue4"))))\r
+     (show-paren-mismatch-face ((t (:foreground "white" :background "red"))))\r
+     (font-lock-comment-face ((t (:foreground "gold"))))\r
+     (font-lock-string-face ((t (:foreground "orange"))))\r
+     (font-lock-keyword-face ((t (:foreground "cyan1"))))\r
+     (font-lock-builtin-face ((t (:foreground "LightSteelBlue"))))\r
+     (font-lock-function-name-face ((t (:foreground "mediumspringgreen"))))\r
+     (font-lock-variable-name-face ((t (:foreground "light salmon"))))\r
+     (font-lock-type-face ((t (:foreground "yellow1"))))\r
+     (font-lock-constant-face ((t (:foreground "salmon"))))\r
+     (font-lock-warning-face ((t (:foreground "gold" :bold t))))\r
+     (blank-space-face ((t (:background "LightGray"))))\r
+     (blank-tab-face ((t (:foreground "black" :background "cornsilk"))))\r
+     (highline-face ((t (:background "gray35"))))\r
+     (eshell-ls-directory-face ((t (:foreground "green" :bold t))))\r
+     (eshell-ls-symlink-face ((t (:foreground "Cyan" :bold t))))\r
+     (eshell-ls-executable-face ((t (:foreground "orange" :bold t))))\r
+     (eshell-ls-readonly-face ((t (:foreground "gray"))))\r
+     (eshell-ls-unreadable-face ((t (:foreground "DarkGrey"))))\r
+     (eshell-ls-special-face ((t (:foreground "Magenta" :bold t))))\r
+     (eshell-ls-missing-face ((t (:foreground "Red" :bold t))))\r
+     (eshell-ls-archive-face ((t (:foreground "Orchid" :bold t))))\r
+     (eshell-ls-backup-face ((t (:foreground "LightSalmon"))))\r
+     (eshell-ls-product-face ((t (:foreground "LightSalmon"))))\r
+     (eshell-ls-clutter-face ((t (:foreground "blue" :bold t))))\r
+     (sgml-start-tag-face ((t (:foreground "mediumspringgreen"))))\r
+     (custom-button-face ((t (:foreground "white"))))\r
+     (sgml-ignored-face ((t (:foreground "gray20" :background "gray60"))))\r
+     (sgml-doctype-face ((t (:foreground "orange"))))\r
+     (sgml-sgml-face ((t (:foreground "yellow"))))\r
+     (vc-annotate-face-0046FF ((t (:foreground "wheat" :background "black"))))\r
+     (custom-documentation-face ((t (:foreground "white"))))\r
+     (sgml-end-tag-face ((t (:foreground "greenyellow"))))\r
+     (linemenu-face ((t (:background "gray30"))))\r
+     (sgml-entity-face ((t (:foreground "gold"))))\r
+     (message-header-to-face ((t (:foreground "floral white" :bold t))))\r
+     (message-header-cc-face ((t (:foreground "ivory"))))\r
+     (message-header-subject-face ((t (:foreground "papaya whip" :bold t))))\r
+     (message-header-newsgroups-face ((t (:foreground "lavender blush" :bold t :italic t))))\r
+     (message-header-other-face ((t (:foreground "pale turquoise"))))\r
+     (message-header-name-face ((t (:foreground "light sky blue"))))\r
+     (message-header-xheader-face ((t (:foreground "blue"))))\r
+     (message-separator-face ((t (:foreground "sandy brown"))))\r
+     (message-cited-text-face ((t (:foreground "plum1"))))\r
+     (message-mml-face ((t (:foreground "ForestGreen"))))\r
+     (gnus-group-news-1-face ((t (:foreground "white" :bold t))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "white"))))\r
+     (gnus-group-news-2-face ((t (:foreground "lightcyan" :bold t))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "lightcyan"))))\r
+     (gnus-group-news-3-face ((t (:foreground "tan" :bold t))))\r
+     (gnus-group-news-3-empty-face ((t (:foreground "tan"))))\r
+     (gnus-group-news-4-face ((t (:foreground "white" :bold t))))\r
+     (gnus-group-news-4-empty-face ((t (:foreground "white"))))\r
+     (gnus-group-news-5-face ((t (:foreground "wheat" :bold t))))\r
+     (gnus-group-news-5-empty-face ((t (:foreground "wheat"))))\r
+     (gnus-group-news-6-face ((t (:foreground "tan" :bold t))))\r
+     (gnus-group-news-6-empty-face ((t (:foreground "tan"))))\r
+     (gnus-group-news-low-face ((t (:foreground "DarkTurquoise" :bold t))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+     (gnus-group-mail-1-face ((t (:foreground "white" :bold t))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "gray80"))))\r
+     (gnus-group-mail-2-face ((t (:foreground "lightcyan" :bold t))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "lightcyan"))))\r
+     (gnus-group-mail-3-face ((t (:foreground "tan" :bold t))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "tan"))))\r
+     (gnus-group-mail-low-face ((t (:foreground "aquamarine4" :bold t))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine4"))))\r
+     (gnus-summary-selected-face ((t (:background "deepskyblue4" :underline t))))\r
+     (gnus-summary-cancelled-face ((t (:foreground "black" :background "gray"))))\r
+     (gnus-summary-high-ticked-face ((t (:foreground "gray70" :bold t))))\r
+     (gnus-summary-low-ticked-face ((t (:foreground "gray70" :bold t))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "gray70" :bold t))))\r
+     (gnus-summary-high-ancient-face ((t (:foreground "SkyBlue" :bold t))))\r
+     (gnus-summary-low-ancient-face ((t (:foreground "SkyBlue" :italic t))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+     (gnus-summary-high-unread-face ((t (:bold t))))\r
+     (gnus-summary-low-unread-face ((t (:italic t))))\r
+     (gnus-summary-normal-unread-face ((t (nil))))\r
+     (gnus-summary-high-read-face ((t (:foreground "PaleGreen" :bold t))))\r
+     (gnus-summary-low-read-face ((t (:foreground "PaleGreen" :italic t))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+     (gnus-splash-face ((t (:foreground "gold"))))\r
+     (font-latex-bold-face ((t (nil))))\r
+     (font-latex-italic-face ((t (nil))))\r
+     (font-latex-math-face ((t (nil))))\r
+     (font-latex-sedate-face ((t (:foreground "Gray85"))))\r
+     (font-latex-string-face ((t (:foreground "orange"))))\r
+     (font-latex-warning-face ((t (:foreground "gold"))))\r
+     (widget-documentation-face ((t (:foreground "lime green"))))\r
+     (widget-button-face ((t (:bold t))))\r
+     (widget-field-face ((t (:background "gray20"))))\r
+     (widget-single-line-field-face ((t (:background "gray20"))))\r
+     (widget-inactive-face ((t (:foreground "wheat"))))\r
+     (widget-button-pressed-face ((t (:foreground "red"))))\r
+     (custom-invalid-face ((t (:foreground "yellow" :background "red"))))\r
+     (custom-rogue-face ((t (:foreground "pink" :background "black"))))\r
+     (custom-modified-face ((t (:foreground "white" :background "blue"))))\r
+     (custom-set-face ((t (:foreground "blue"))))\r
+     (custom-changed-face ((t (:foreground "wheat" :background "skyblue"))))\r
+     (custom-saved-face ((t (:underline t))))\r
+     (custom-state-face ((t (:foreground "light green"))))\r
+     (custom-variable-tag-face ((t (:foreground "skyblue" :underline t))))\r
+     (custom-variable-button-face ((t (:bold t :underline t))))\r
+     (custom-face-tag-face ((t (:foreground "white" :underline t))))\r
+     (custom-group-tag-face-1 ((t (:foreground "pink" :underline t))))\r
+     (custom-group-tag-face ((t (:foreground "skyblue" :underline t))))\r
+     (swbuff-current-buffer-face ((t (:foreground "red" :bold t))))\r
+     (ediff-current-diff-face-A ((t (:foreground "firebrick" :background "pale green"))))\r
+     (ediff-current-diff-face-B ((t (:foreground "DarkOrchid" :background "Yellow"))))\r
+     (ediff-current-diff-face-C ((t (:foreground "white" :background "indianred"))))\r
+     (ediff-current-diff-face-Ancestor ((t (:foreground "Black" :background "VioletRed"))))\r
+     (ediff-fine-diff-face-A ((t (:foreground "Navy" :background "sky blue"))))\r
+     (ediff-fine-diff-face-B ((t (:foreground "Black" :background "cyan"))))\r
+     (ediff-fine-diff-face-C ((t (:foreground "Black" :background "Turquoise"))))\r
+     (ediff-fine-diff-face-Ancestor ((t (:foreground "Black" :background "Green"))))\r
+     (ediff-even-diff-face-A ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-even-diff-face-B ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-even-diff-face-C ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-even-diff-face-Ancestor ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-odd-diff-face-A ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-odd-diff-face-B ((t (:foreground "Black" :background "light grey"))))\r
+     (ediff-odd-diff-face-C ((t (:foreground "White" :background "Grey"))))\r
+     (ediff-odd-diff-face-Ancestor ((t (:foreground "Black" :background "light grey"))))\r
+     (gnus-emphasis-bold ((t (:bold t))))\r
+     (gnus-emphasis-italic ((t (:italic t))))\r
+     (gnus-emphasis-underline ((t (:foreground "white" :background "goldenrod4"))))\r
+     (gnus-emphasis-underline-bold ((t (:foreground "black" :background "yellow" :bold t :underline t))))\r
+     (gnus-emphasis-underline-italic ((t (:foreground "black" :background "yellow" :italic t :underline t))))\r
+     (gnus-emphasis-bold-italic ((t (:bold t :italic t))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:foreground "black" :background "yellow" :bold t :italic t :underline t))))\r
+     (gnus-emphasis-highlight-words ((t (:foreground "yellow" :background "black"))))\r
+     (gnus-signature-face ((t (:italic t))))\r
+     (gnus-header-from-face ((t (:foreground "wheat"))))\r
+     (gnus-header-subject-face ((t (:foreground "wheat" :bold t))))\r
+     (gnus-header-newsgroups-face ((t (:foreground "wheat" :italic t))))\r
+     (gnus-header-name-face ((t (:foreground "white"))))\r
+     (gnus-header-content-face ((t (:foreground "tan" :italic t))))\r
+     (gnus-filterhist-face-1 ((t (nil))))\r
+     (gnus-splash ((t (:foreground "Brown"))))\r
+     (gnus-cite-attribution-face ((t (:italic t))))\r
+     (gnus-cite-face-1 ((t (:foreground "light blue"))))\r
+     (gnus-cite-face-2 ((t (:foreground "light cyan"))))\r
+     (gnus-cite-face-3 ((t (:foreground "light yellow"))))\r
+     (gnus-cite-face-4 ((t (:foreground "light pink"))))\r
+     (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+     (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+     (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+     (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+     (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+     (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+     (gnus-cite-face-11 ((t (:foreground "turquoise")))))))\r
+\r
+(defun color-theme-retro-green (&optional color func)\r
+  "Plain green on black faces for those longing for the good old days."\r
+  (interactive)\r
+  ;; Build a list of faces without parameters\r
+  (let ((old-faces (face-list))\r
+       (faces)\r
+       (face)\r
+       (foreground (or color "green")))\r
+    (dolist (face old-faces)\r
+      (cond ((memq face '(bold bold-italic))\r
+            (add-to-list 'faces `(,face (( t (:bold t))))))\r
+           ((memq face '(italic underline show-paren-mismatch-face))\r
+            (add-to-list 'faces `(,face (( t (:underline t))))))\r
+           ((memq face '(modeline modeline-buffer-id modeline-mousable\r
+                         modeline-mousable-minor-mode highlight region\r
+                         secondary-selection show-paren-match-face))\r
+            (add-to-list 'faces `(,face (( t (:foreground "black"\r
+                                              :background ,foreground\r
+                                              :inverse t))))))\r
+           (t\r
+            (add-to-list 'faces `(,face (( t (nil))))))))\r
+    (color-theme-install\r
+     (append\r
+      (list (or func 'color-theme-retro-green)\r
+           (list (cons 'foreground-color foreground)\r
+                 (cons 'background-color "black")\r
+                 (cons 'mouse-color foreground)\r
+                 (cons 'cursor-color foreground)\r
+                 (cons 'border-color foreground)\r
+                 (cons 'background-mode 'dark)))\r
+      faces))))\r
+\r
+(defun color-theme-retro-orange ()\r
+  "Plain orange on black faces for those longing for the good old days."\r
+  (interactive)\r
+  (color-theme-retro-green "orange" 'color-theme-retro-orange))\r
+\r
+(defun color-theme-subtle-hacker ()\r
+  "Subtle Hacker Color Theme.\r
+Based on gnome2, but uses white for important things like comments,\r
+and less of the unreadable tomato.  By Colin Walters <levanti@verbum.org>"\r
+  (interactive)\r
+  (color-theme-gnome2)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-install\r
+     '(color-theme-subtle-hacker\r
+       nil\r
+       nil\r
+       (custom-state-face ((t (:foreground "Coral"))))\r
+       (diary-face ((t (:bold t :foreground "IndianRed"))))\r
+       (eshell-ls-clutter-face ((t (:bold t :foreground "DimGray"))))\r
+       (eshell-ls-executable-face ((t (:bold t :foreground "Coral"))))\r
+       (eshell-ls-missing-face ((t (:bold t :foreground "black"))))\r
+       (eshell-ls-special-face ((t (:bold t :foreground "Gold"))))\r
+       (eshell-ls-symlink-face ((t (:bold t :foreground "White"))))\r
+       (font-lock-comment-face ((t (:foreground "White"))))\r
+       (font-lock-constant-face ((t (:bold t :foreground "Aquamarine"))))\r
+       (font-lock-function-name-face ((t (:bold t :foreground "MediumSlateBlue"))))\r
+       (font-lock-string-face ((t (:italic t :foreground "LightSalmon"))))\r
+       (font-lock-variable-name-face ((t (:italic t :bold t :foreground "Aquamarine"))))\r
+       (gnus-cite-face-1 ((t (:foreground "dark khaki"))))\r
+       (gnus-cite-face-2 ((t (:foreground "chocolate"))))\r
+       (gnus-cite-face-3 ((t (:foreground "tomato"))))\r
+       (gnus-group-mail-1-empty-face ((t (:foreground "light cyan"))))\r
+       (gnus-group-mail-1-face ((t (:bold t :foreground "light cyan"))))\r
+       (gnus-group-mail-2-empty-face ((t (:foreground "turquoise"))))\r
+       (gnus-group-mail-2-face ((t (:bold t :foreground "turquoise"))))\r
+       (gnus-group-mail-3-empty-face ((t (:foreground "tomato"))))\r
+       (gnus-group-mail-3-face ((t (:bold t :foreground "tomato"))))\r
+       (gnus-group-mail-low-empty-face ((t (:foreground "dodger blue"))))\r
+       (gnus-group-mail-low-face ((t (:bold t :foreground "dodger blue"))))\r
+       (gnus-group-news-1-empty-face ((t (:foreground "green yellow"))))\r
+       (gnus-group-news-1-face ((t (:bold t :foreground "green yellow"))))\r
+       (gnus-group-news-2-empty-face ((t (:foreground "dark orange"))))\r
+       (gnus-group-news-2-face ((t (:bold t :foreground "dark orange"))))\r
+       (gnus-group-news-3-empty-face ((t (:foreground "tomato"))))\r
+       (gnus-group-news-3-face ((t (:bold t :foreground "tomato"))))\r
+       (gnus-group-news-low-empty-face ((t (:foreground "yellow green"))))\r
+       (gnus-group-news-low-face ((t (:bold t :foreground "yellow green"))))\r
+       (gnus-header-name-face ((t (:bold t :foreground "DodgerBlue1"))))\r
+       (gnus-header-newsgroups-face ((t (:italic t :bold t :foreground "LightSkyBlue3"))))\r
+       (gnus-signature-face ((t (:foreground "salmon"))))\r
+       (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+       (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+       (gnus-summary-high-read-face ((t (:bold t :foreground "forest green"))))\r
+       (gnus-summary-high-ticked-face ((t (:bold t :foreground "burlywood"))))\r
+       (gnus-summary-high-unread-face ((t (:italic t :bold t :foreground "cyan"))))\r
+       (gnus-summary-low-ancient-face ((t (:italic t :foreground "chocolate"))))\r
+       (gnus-summary-low-read-face ((t (:foreground "light sea green"))))\r
+       (gnus-summary-low-ticked-face ((t (:italic t :foreground "chocolate"))))\r
+       (gnus-summary-low-unread-face ((t (:italic t :foreground "light sea green"))))\r
+       (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+       (gnus-summary-normal-read-face ((t (:foreground "khaki"))))\r
+       (gnus-summary-normal-ticked-face ((t (:foreground "sandy brown"))))\r
+       (gnus-summary-normal-unread-face ((t (:foreground "aquamarine"))))\r
+       (message-cited-text-face ((t (:foreground "White"))))\r
+       (message-header-name-face ((t (:foreground "DodgerBlue1"))))\r
+       (message-header-newsgroups-face ((t (:italic t :bold t :foreground "LightSkyBlue3"))))\r
+       (message-header-other-face ((t (:foreground "LightSkyBlue3"))))\r
+       (message-header-xheader-face ((t (:foreground "DodgerBlue3"))))))))\r
+\r
+(defun color-theme-pok-wog ()\r
+  "Low-contrast White-on-Gray by S.Pokrovsky.\r
+\r
+The following might be a good addition to your .Xdefaults file:\r
+\r
+Emacs.pane.menubar.background: darkGrey\r
+Emacs.pane.menubar.foreground: black"\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-pok-wog\r
+     ((foreground-color . "White")\r
+      (background-color . "DarkSlateGray")\r
+      (mouse-color . "gold")\r
+      (cursor-color . "Cyan")\r
+      (border-color . "black")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (bold ((t (:bold t :foreground "Wheat"))))\r
+     (bold-italic ((t (:italic t :bold t :foreground "wheat"))))\r
+     (calendar-today-face ((t (:underline t :foreground "white"))))\r
+     (diary-face ((t (:foreground "red"))))\r
+     (font-lock-builtin-face ((t (:bold t :foreground "cyan"))))\r
+     (font-lock-comment-face ((t (:foreground "Gold"))))\r
+     (font-lock-constant-face ((t (:bold t :foreground "LightSteelBlue"))))\r
+     (font-lock-function-name-face ((t (:bold t :foreground "Yellow"))))\r
+     (font-lock-keyword-face ((t (:bold t :foreground "Cyan"))))\r
+     (font-lock-string-face ((t (:foreground "Khaki"))))\r
+     (font-lock-type-face ((t (:bold t :foreground "Cyan"))))\r
+     (font-lock-variable-name-face ((t (:foreground "LightGoldenrod"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+     (gnus-cite-attribution-face ((t (:bold t :foreground "Wheat"))))\r
+     (gnus-cite-face-1 ((t (:foreground "wheat"))))\r
+     (gnus-cite-face-10 ((t (:foreground "wheat"))))\r
+     (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+     (gnus-cite-face-2 ((t (:foreground "cyan"))))\r
+     (gnus-cite-face-3 ((t (:foreground "light yellow"))))\r
+     (gnus-cite-face-4 ((t (:foreground "light pink"))))\r
+     (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+     (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+     (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+     (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+     (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+     (gnus-emphasis-bold ((t (:bold t :foreground "wheat"))))\r
+     (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+     (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+     (gnus-emphasis-italic ((t (:italic t :foreground "white"))))\r
+     (gnus-emphasis-underline ((t (:underline t :foreground "white"))))\r
+     (gnus-emphasis-underline-bold ((t (:underline t :bold t :foreground "wheat"))))\r
+     (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t))))\r
+     (gnus-emphasis-underline-italic ((t (:underline t :italic t :foreground "white"))))\r
+     (gnus-group-mail-1-empty-face ((t (:foreground "aquamarine1"))))\r
+     (gnus-group-mail-1-face ((t (:bold t :foreground "aquamarine1"))))\r
+     (gnus-group-mail-2-empty-face ((t (:foreground "aquamarine2"))))\r
+     (gnus-group-mail-2-face ((t (:bold t :foreground "aquamarine2"))))\r
+     (gnus-group-mail-3-empty-face ((t (:foreground "Salmon"))))\r
+     (gnus-group-mail-3-face ((t (:bold t :foreground "gold"))))\r
+     (gnus-group-mail-low-empty-face ((t (:foreground "Wheat"))))\r
+     (gnus-group-mail-low-face ((t (:bold t :foreground "aquamarine4"))))\r
+     (gnus-group-news-1-empty-face ((t (:foreground "PaleTurquoise"))))\r
+     (gnus-group-news-1-face ((t (:bold t :foreground "PaleTurquoise"))))\r
+     (gnus-group-news-2-empty-face ((t (:foreground "turquoise"))))\r
+     (gnus-group-news-2-face ((t (:bold t :foreground "turquoise"))))\r
+     (gnus-group-news-3-empty-face ((t (nil))))\r
+     (gnus-group-news-3-face ((t (:bold t :foreground "Wheat"))))\r
+     (gnus-group-news-4-empty-face ((t (nil))))\r
+     (gnus-group-news-4-face ((t (:bold t))))\r
+     (gnus-group-news-5-empty-face ((t (nil))))\r
+     (gnus-group-news-5-face ((t (:bold t))))\r
+     (gnus-group-news-6-empty-face ((t (nil))))\r
+     (gnus-group-news-6-face ((t (:bold t))))\r
+     (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+     (gnus-group-news-low-face ((t (:bold t :foreground "DarkTurquoise"))))\r
+     (gnus-header-content-face ((t (:italic t :foreground "Wheat"))))\r
+     (gnus-header-from-face ((t (:foreground "light yellow"))))\r
+     (gnus-header-name-face ((t (:foreground "cyan"))))\r
+     (gnus-header-newsgroups-face ((t (:italic t :foreground "yellow"))))\r
+     (gnus-header-subject-face ((t (:bold t :foreground "Gold"))))\r
+     (gnus-signature-face ((t (:italic t :foreground "wheat"))))\r
+     (gnus-splash-face ((t (:foreground "orange"))))\r
+     (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+     (gnus-summary-high-ancient-face ((t (:bold t :foreground "SkyBlue"))))\r
+     (gnus-summary-high-read-face ((t (:bold t :foreground "PaleGreen"))))\r
+     (gnus-summary-high-ticked-face ((t (:bold t :foreground "pink"))))\r
+     (gnus-summary-high-unread-face ((t (:bold t :foreground "gold"))))\r
+     (gnus-summary-low-ancient-face ((t (:italic t :foreground "SkyBlue"))))\r
+     (gnus-summary-low-read-face ((t (:italic t :foreground "PaleGreen"))))\r
+     (gnus-summary-low-ticked-face ((t (:italic t :foreground "pink"))))\r
+     (gnus-summary-low-unread-face ((t (:italic t))))\r
+     (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+     (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+     (gnus-summary-normal-ticked-face ((t (:foreground "pink"))))\r
+     (gnus-summary-normal-unread-face ((t (:foreground "wheat"))))\r
+     (gnus-summary-selected-face ((t (:underline t :foreground "white"))))\r
+     (highlight ((t (:background "Blue" :foreground "white"))))\r
+     (highline-face ((t (:background "black" :foreground "white"))))\r
+     (holiday-face ((t (:background "pink" :foreground "white"))))\r
+     (info-menu-5 ((t (:underline t))))\r
+     (info-node ((t (:italic t :bold t :foreground "white"))))\r
+     (info-xref ((t (:bold t :foreground "wheat"))))\r
+     (italic ((t (:italic t :foreground "white"))))\r
+     (makefile-space-face ((t (:background "hotpink"))))\r
+     (message-cited-text-face ((t (:foreground "green"))))\r
+     (message-header-cc-face ((t (:bold t :foreground "Aquamarine"))))\r
+     (message-header-name-face ((t (:foreground "Gold"))))\r
+     (message-header-newsgroups-face ((t (:italic t :bold t :foreground "yellow"))))\r
+     (message-header-other-face ((t (:foreground "lightGray"))))\r
+     (message-header-subject-face ((t (:foreground "Yellow"))))\r
+     (message-header-to-face ((t (:bold t :foreground "green2"))))\r
+     (message-header-xheader-face ((t (:foreground "blue"))))\r
+     (message-mml-face ((t (:bold t :foreground "khaki"))))\r
+     (message-separator-face ((t (:background "aquamarine" :foreground "black"))))\r
+     (modeline ((t (:background "DarkGray" :foreground "Black"))))\r
+     (modeline-buffer-id ((t (:background "DarkGray" :foreground "Black"))))\r
+     (modeline-mousable ((t (:background "DarkGray" :foreground "Black"))))\r
+     (modeline-mousable-minor-mode ((t (:background "DarkGray" :foreground "Black"))))\r
+     (paren-mismatch-face ((t (:background "DeepPink" :foreground "white"))))\r
+     (paren-no-match-face ((t (:background "yellow" :foreground "white"))))\r
+     (region ((t (:background "MediumSlateBlue" :foreground "white"))))\r
+     (secondary-selection ((t (:background "Sienna" :foreground "white"))))\r
+     (show-paren-match-face ((t (:background "turquoise" :foreground "white"))))\r
+     (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+     (speedbar-button-face ((t (:bold t :foreground "magenta"))))\r
+     (speedbar-directory-face ((t (:bold t :foreground "orchid"))))\r
+     (speedbar-file-face ((t (:foreground "pink"))))\r
+     (speedbar-highlight-face ((t (:background "black"))))\r
+     (speedbar-selected-face ((t (:underline t :foreground "cyan"))))\r
+     (speedbar-tag-face ((t (:foreground "yellow"))))\r
+     (swbuff-current-buffer-face ((t (:bold t :foreground "red"))))\r
+     (underline ((t (:underline t :foreground "white"))))\r
+     (widget-button-face ((t (:bold t :foreground "wheat"))))\r
+     (widget-button-pressed-face ((t (:foreground "red"))))\r
+     (widget-documentation-face ((t (:foreground "lime green"))))\r
+     (widget-field-face ((t (:background "dim gray" :foreground "white"))))\r
+     (widget-inactive-face ((t (:foreground "light gray"))))\r
+     (widget-single-line-field-face ((t (:background "dim gray" :foreground "white")))))))\r
+\r
+(defun color-theme-pok-wob ()\r
+  "White-on-Black by S. Pokrovsky.\r
+\r
+The following might be a good addition to your .Xdefaults file:\r
+\r
+Emacs.pane.menubar.background: darkGrey\r
+Emacs.pane.menubar.foreground: black"\r
+  (interactive)\r
+;  (setq term-default-fg-color "white"\r
+;       term-default-bg "black")\r
+  (color-theme-install\r
+   '(color-theme-pok-wob\r
+     ((foreground-color . "white")\r
+      (background-color . "black")\r
+      (mouse-color . "gold")\r
+      (cursor-color . "yellow")\r
+      (border-color . "black")\r
+      (background-mode . dark))\r
+   (default ((t (nil))))\r
+   (bold ((t (:bold t :foreground "light gray"))))\r
+   (bold-italic ((t (:italic t :bold t :foreground "cyan"))))\r
+   (calendar-today-face ((t (:underline t :foreground "white"))))\r
+   (custom-button-face ((t (nil))))\r
+   (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+   (custom-documentation-face ((t (nil))))\r
+   (custom-face-tag-face ((t (:underline t))))\r
+   (custom-group-tag-face ((t (:underline t))))\r
+   (custom-group-tag-face-1 ((t (:underline t))))\r
+   (custom-invalid-face ((t (:background "red" :foreground "white"))))\r
+   (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+   (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+   (custom-saved-face ((t (:underline t))))\r
+   (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+   (custom-state-face ((t (nil))))\r
+   (custom-variable-button-face ((t (:underline t :bold t))))\r
+   (custom-variable-tag-face ((t (:underline t))))\r
+   (diary-face ((t (:foreground "gold"))))\r
+   (font-lock-builtin-face ((t (:bold t :foreground "cyan"))))\r
+   (font-lock-comment-face ((t (:foreground "Gold"))))\r
+   (font-lock-constant-face ((t (:bold t :foreground "LightSteelBlue"))))\r
+   (font-lock-function-name-face ((t (:bold t :foreground "gold"))))\r
+   (font-lock-keyword-face ((t (:bold t :foreground "Cyan"))))\r
+   (font-lock-string-face ((t (:foreground "Khaki"))))\r
+   (font-lock-type-face ((t (:bold t :foreground "Cyan"))))\r
+   (font-lock-variable-name-face ((t (:italic t :foreground "gold"))))\r
+   (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+   (gnus-cite-attribution-face ((t (:underline t :foreground "beige"))))\r
+   (gnus-cite-face-1 ((t (:foreground "gold"))))\r
+   (gnus-cite-face-10 ((t (:foreground "coral"))))\r
+   (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+   (gnus-cite-face-2 ((t (:foreground "wheat"))))\r
+   (gnus-cite-face-3 ((t (:foreground "light pink"))))\r
+   (gnus-cite-face-4 ((t (:foreground "khaki"))))\r
+   (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+   (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+   (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+   (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+   (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+   (gnus-emphasis-bold ((t (:bold t :foreground "light gray"))))\r
+   (gnus-emphasis-bold-italic ((t (:italic t :bold t :foreground "cyan"))))\r
+   (gnus-emphasis-highlight-words ((t (:background "black" :foreground "gold"))))\r
+   (gnus-emphasis-italic ((t (:italic t :foreground "cyan"))))\r
+   (gnus-emphasis-underline ((t (:underline t :foreground "white"))))\r
+   (gnus-emphasis-underline-bold ((t (:underline t :bold t :foreground "white"))))\r
+   (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t :foreground "white"))))\r
+   (gnus-emphasis-underline-italic ((t (:underline t :italic t :foreground "white"))))\r
+   (gnus-group-mail-1-empty-face ((t (:foreground "Magenta"))))\r
+   (gnus-group-mail-1-face ((t (:bold t :foreground "Magenta"))))\r
+   (gnus-group-mail-2-empty-face ((t (:foreground "aquamarine2"))))\r
+   (gnus-group-mail-2-face ((t (:bold t :foreground "aquamarine2"))))\r
+   (gnus-group-mail-3-empty-face ((t (:foreground "Cyan"))))\r
+   (gnus-group-mail-3-face ((t (:bold t :foreground "Cyan"))))\r
+   (gnus-group-mail-low-empty-face ((t (:foreground "Wheat"))))\r
+   (gnus-group-mail-low-face ((t (:foreground "aquamarine4"))))\r
+   (gnus-group-news-1-empty-face ((t (:foreground "PaleTurquoise"))))\r
+   (gnus-group-news-1-face ((t (:bold t :foreground "PaleTurquoise"))))\r
+   (gnus-group-news-2-empty-face ((t (:foreground "turquoise"))))\r
+   (gnus-group-news-2-face ((t (:bold t :foreground "turquoise"))))\r
+   (gnus-group-news-3-empty-face ((t (:foreground "wheat"))))\r
+   (gnus-group-news-3-face ((t (:bold t :foreground "Wheat"))))\r
+   (gnus-group-news-4-empty-face ((t (nil))))\r
+   (gnus-group-news-4-face ((t (:bold t))))\r
+   (gnus-group-news-5-empty-face ((t (nil))))\r
+   (gnus-group-news-5-face ((t (:bold t))))\r
+   (gnus-group-news-6-empty-face ((t (nil))))\r
+   (gnus-group-news-6-face ((t (:bold t))))\r
+   (gnus-group-news-low-empty-face ((t (:foreground "MediumAquamarine"))))\r
+   (gnus-group-news-low-face ((t (:bold t :foreground "MediumAquamarine"))))\r
+   (gnus-header-content-face ((t (:italic t :foreground "Wheat"))))\r
+   (gnus-header-from-face ((t (:foreground "light yellow"))))\r
+   (gnus-header-name-face ((t (:foreground "Wheat"))))\r
+   (gnus-header-newsgroups-face ((t (:italic t :foreground "gold"))))\r
+   (gnus-header-subject-face ((t (:bold t :foreground "Gold"))))\r
+   (gnus-signature-face ((t (:italic t :foreground "white"))))\r
+   (gnus-splash-face ((t (:foreground "orange"))))\r
+   (gnus-summary-cancelled-face ((t (:background "black" :foreground "orange"))))\r
+   (gnus-summary-high-ancient-face ((t (:bold t :foreground "SkyBlue"))))\r
+   (gnus-summary-high-read-face ((t (:bold t :foreground "red"))))\r
+   (gnus-summary-high-ticked-face ((t (:bold t :foreground "coral"))))\r
+   (gnus-summary-high-unread-face ((t (:bold t :foreground "gold"))))\r
+   (gnus-summary-low-ancient-face ((t (:italic t :foreground "SkyBlue"))))\r
+   (gnus-summary-low-read-face ((t (:italic t :foreground "red"))))\r
+   (gnus-summary-low-ticked-face ((t (:italic t :foreground "coral"))))\r
+   (gnus-summary-low-unread-face ((t (:italic t :foreground "white"))))\r
+   (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+   (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+   (gnus-summary-normal-ticked-face ((t (:foreground "pink"))))\r
+   (gnus-summary-normal-unread-face ((t (:foreground "white"))))\r
+   (gnus-summary-selected-face ((t (:underline t :foreground "white"))))\r
+   (highlight ((t (:background "Blue" :foreground "white"))))\r
+   (highline-face ((t (:background "dark slate gray" :foreground "white"))))\r
+   (holiday-face ((t (:background "red" :foreground "white"))))\r
+   (info-menu-5 ((t (:underline t))))\r
+   (info-node ((t (:italic t :bold t :foreground "white"))))\r
+   (info-xref ((t (:bold t :foreground "light gray"))))\r
+   (italic ((t (:italic t :foreground "cyan"))))\r
+   (makefile-space-face ((t (:background "hotpink" :foreground "white"))))\r
+   (message-cited-text-face ((t (:foreground "green"))))\r
+   (message-header-cc-face ((t (:bold t :foreground "Aquamarine"))))\r
+   (message-header-name-face ((t (:foreground "Gold"))))\r
+   (message-header-newsgroups-face ((t (:italic t :bold t :foreground "gold"))))\r
+   (message-header-other-face ((t (:foreground "lightGray"))))\r
+   (message-header-subject-face ((t (:foreground "Yellow"))))\r
+   (message-header-to-face ((t (:bold t :foreground "green2"))))\r
+   (message-header-xheader-face ((t (:foreground "sky blue"))))\r
+   (message-mml-face ((t (:bold t :foreground "khaki"))))\r
+   (message-separator-face ((t (:background "aquamarine" :foreground "black"))))\r
+   (modeline ((t (:background "dark gray" :foreground "black"))))\r
+   (modeline-buffer-id ((t (:background "dark gray" :foreground "black"))))\r
+   (modeline-mousable ((t (:background "dark gray" :foreground "black"))))\r
+   (modeline-mousable-minor-mode ((t (:background "dark gray" :foreground "black"))))\r
+   (paren-mismatch-face ((t (:bold t :background "white" :foreground "red"))))\r
+   (paren-no-match-face ((t (:bold t :background "white" :foreground "red"))))\r
+   (region ((t (:background "MediumSlateBlue" :foreground "white"))))\r
+   (secondary-selection ((t (:background "Sienna" :foreground "white"))))\r
+   (show-paren-match-face ((t (:background "purple" :foreground "white"))))\r
+   (show-paren-mismatch-face ((t (:bold t :background "white" :foreground "red"))))\r
+   (speedbar-button-face ((t (nil))))\r
+   (speedbar-directory-face ((t (nil))))\r
+   (speedbar-file-face ((t (:bold t))))\r
+   (speedbar-highlight-face ((t (nil))))\r
+   (speedbar-selected-face ((t (:underline t))))\r
+   (speedbar-tag-face ((t (nil))))\r
+   (swbuff-current-buffer-face ((t (:bold t :foreground "red"))))\r
+   (underline ((t (:underline t :foreground "white"))))\r
+   (widget-button-face ((t (:bold t :foreground "coral"))))\r
+   (widget-button-pressed-face ((t (:foreground "red"))))\r
+   (widget-documentation-face ((t (:foreground "lime green"))))\r
+   (widget-field-face ((t (:background "dim gray" :foreground "white"))))\r
+   (widget-inactive-face ((t (:foreground "light gray"))))\r
+   (widget-single-line-field-face ((t (:background "dim gray" :foreground "white")))))))\r
+\r
+(defun color-theme-blue-sea ()\r
+  "The grey on midnight blue theme.\r
+\r
+Includes faces for apropos, font-lock (Emacs and XEmacs), speedbar,\r
+custom, widget, info, flyspell, gnus, message, man, woman, dired.\r
+\r
+This is what you should put in your .Xdefaults file, if you want to\r
+change the colors of the menus:\r
+\r
+emacs*Background:              DarkSlateGray\r
+emacs*Foreground:              Wheat"\r
+  (interactive)\r
+  (color-theme-blue-gnus)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-blue-erc)\r
+    (color-theme-install\r
+     '(color-theme-blue-sea\r
+       ((background-color . "MidnightBlue")\r
+       (background-mode . dark)\r
+       (border-color . "Grey")\r
+       (cursor-color . "Grey")\r
+       (foreground-color . "Grey")\r
+       (mouse-color . "Grey"))\r
+       ((Man-overstrike-face . woman-bold-face)\r
+       (Man-underline-face . woman-italic-face))\r
+       (default ((t (nil))))\r
+       (bold ((t (:bold t))))\r
+       (bold-italic ((t (:bold t :foreground "beige"))))\r
+       (calendar-today-face ((t (:underline t))))\r
+       (cperl-array-face ((t (:foreground "light salmon" :bold t))))\r
+       (cperl-hash-face ((t (:foreground "beige" :bold t :italic t))))\r
+       (cperl-nonoverridable-face ((t (:foreground "aquamarine"))))\r
+       (custom-button-face ((t (:foreground "gainsboro"))))\r
+       (custom-changed-face ((t (:foreground "white" :background "blue"))))\r
+       (custom-documentation-face ((t (:foreground "light blue"))))\r
+       (custom-face-tag-face ((t (:underline t))))\r
+       (custom-group-tag-face ((t (:foreground "pale turquoise" :bold t))))\r
+       (custom-group-tag-face-1 ((t (:foreground "pale turquoise" :underline t))))\r
+       (custom-invalid-face ((t (:foreground "yellow" :background "red"))))\r
+       (custom-modified-face ((t (:foreground "white" :background "blue"))))\r
+       (custom-rogue-face ((t (:foreground "pink" :background "black"))))\r
+       (custom-saved-face ((t (:underline t))))\r
+       (custom-set-face ((t (:foreground "blue" :background "white"))))\r
+       (custom-state-face ((t (:foreground "light salmon"))))\r
+       (custom-variable-button-face ((t (:bold t :underline t))))\r
+       (custom-variable-tag-face ((t (:foreground "turquoise" :bold t))))\r
+       (diary-face ((t (:foreground "red"))))\r
+       (dired-face-directory ((t (:bold t :foreground "sky blue"))))\r
+       (dired-face-permissions ((t (:foreground "aquamarine"))))\r
+       (dired-face-flagged ((t (:foreground "tomato"))))\r
+       (dired-face-marked ((t (:foreground "light salmon"))))\r
+       (dired-face-executable ((t (:foreground "green yellow"))))\r
+       (eshell-ls-archive-face ((t (:bold t :foreground "medium purple"))))\r
+       (eshell-ls-backup-face ((t (:foreground "dim gray"))))\r
+       (eshell-ls-clutter-face ((t (:foreground "dim gray"))))\r
+       (eshell-ls-directory-face ((t (:bold t :foreground "medium slate blue"))))\r
+       (eshell-ls-executable-face ((t (:bold t :foreground "aquamarine"))))\r
+       (eshell-ls-missing-face ((t (:foreground "black"))))\r
+       (eshell-ls-picture-face ((t (:foreground "violet"))))\r
+       (eshell-ls-product-face ((t (:foreground "light steel blue"))))\r
+       (eshell-ls-readonly-face ((t (:foreground "aquamarine"))))\r
+       (eshell-ls-special-face ((t (:foreground "gold"))))\r
+       (eshell-ls-symlink-face ((t (:foreground "white"))))\r
+       (eshell-ls-unreadable-face ((t (:foreground "dim gray"))))\r
+       (eshell-prompt-face ((t (:foreground "light sky blue" :bold t))))\r
+       (excerpt ((t (:italic t))))\r
+       (fixed ((t (:bold t))))\r
+       (flyspell-duplicate-face ((t (:foreground "Gold3" :bold t :underline t))))\r
+       (flyspell-incorrect-face ((t (:foreground "OrangeRed" :bold t :underline t))))\r
+       (font-lock-builtin-face ((t (:foreground "aquamarine"))))\r
+       (font-lock-comment-face ((t (:foreground "light blue"))))\r
+       (font-lock-constant-face ((t (:foreground "pale green"))))\r
+       (font-lock-doc-string-face ((t (:foreground "sky blue"))))\r
+       (font-lock-function-name-face ((t (:bold t :foreground "aquamarine"))))\r
+       (font-lock-keyword-face ((t (:foreground "pale turquoise" :bold t))))\r
+       (font-lock-reference-face ((t (:foreground "pale green"))))\r
+       (font-lock-string-face ((t (:foreground "light sky blue"))))\r
+       (font-lock-type-face ((t (:foreground "sky blue" :bold t))))\r
+       (font-lock-variable-name-face ((t (:foreground "turquoise" :bold t))))\r
+       (font-lock-warning-face ((t (:foreground "Red" :bold t))))\r
+       (fringe ((t (:background "MidnightBlue"))))\r
+       (header-line ((t (:background "#002" :foreground "cornflower blue"))))\r
+       (highlight ((t (:background "dark slate blue" :foreground "light blue"))))\r
+       (highline-face ((t (:background "DeepSkyBlue4"))))\r
+       (holiday-face ((t (:background "pink"))))\r
+       (info-menu-5 ((t (:underline t))))\r
+       (info-node ((t (:bold t))))\r
+       (info-xref ((t (:bold t :foreground "sky blue"))))\r
+       (isearch ((t (:background "slate blue"))))\r
+       (italic ((t (:foreground "sky blue"))))\r
+       (makefile-space-face ((t (:background "hotpink"))))\r
+       (menu ((t (:background "MidnightBlue" :foreground "Grey"))))\r
+       (modeline ((t (:foreground "wheat" :background "slate blue"))))\r
+       (mode-line-inactive ((t (:background "dark slate blue" :foreground "wheat"))))\r
+       (modeline-buffer-id ((t (:foreground "beige" :background "slate blue"))))\r
+       (modeline-mousable ((t (:foreground "light cyan" :background "slate blue"))))\r
+       (modeline-mousable-minor-mode ((t (:foreground "wheat" :background "slate blue"))))\r
+       (region ((t (:background "DarkSlateBlue"))))\r
+       (secondary-selection ((t (:background "steel blue"))))\r
+       (show-paren-match-face ((t (:foreground "white" :background "light slate blue"))))\r
+       (show-paren-mismatch-face ((t (:foreground "white" :background "red"))))\r
+       (speedbar-button-face ((t (:foreground "seashell2"))))\r
+       (speedbar-directory-face ((t (:foreground "seashell3"))))\r
+       (speedbar-file-face ((t (:foreground "seashell4"))))\r
+       (speedbar-highlight-face ((t (:background "dark slate blue" :foreground "wheat"))))\r
+       (speedbar-selected-face ((t (:foreground "seashell1" :underline t))))\r
+       (speedbar-tag-face ((t (:foreground "antique white"))))\r
+       (tool-bar ((t (:background "MidnightBlue" :foreground "Grey" :box (:line-width 1 :style released-button)))))\r
+       (underline ((t (:underline t))))\r
+       (widget-button-face ((t (:bold t))))\r
+       (widget-button-pressed-face ((t (:foreground "red"))))\r
+       (widget-documentation-face ((t (:foreground "light blue"))))\r
+       (widget-field-face ((t (:background "RoyalBlue4" :foreground "wheat"))))\r
+       (widget-inactive-face ((t (:foreground "dim gray"))))\r
+       (widget-single-line-field-face ((t (:background "slate blue" :foreground "wheat"))))\r
+       (woman-bold-face ((t (:foreground "sky blue" :bold t))))\r
+       (woman-italic-face ((t (:foreground "deep sky blue"))))\r
+       (woman-unknown-face ((t (:foreground "LightSalmon"))))\r
+       (zmacs-region ((t (:background "DarkSlateBlue"))))))))\r
+\r
+(defun color-theme-rotor ()\r
+  "Black on Beige color theme by Jinwei Shen, created 2000-06-08.\r
+Supports default faces, font-lock, custom, widget, message, man,\r
+show-paren, viper."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-rotor\r
+     ((background-color . "Beige")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "Maroon")\r
+      (foreground-color . "Black")\r
+      (mouse-color . "Black"))\r
+     ((Man-overstrike-face . font-lock-function-name-face)\r
+      (Man-underline-face . font-lock-type-face)\r
+      (list-matching-lines-face . bold)\r
+      (rmail-highlight-face . font-lock-function-name-face)\r
+      (watson-attribution-face . italic)\r
+      (watson-url-face . bold)\r
+      (watson-url-mouse-face . highlight))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t :background "grey40" :foreground "yellow"))))\r
+    (bold-italic ((t (:italic t :bold t :foreground "yellow green"))))\r
+    (custom-button-face ((t (nil))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "blue"))))\r
+    (font-lock-builtin-face ((t (:foreground "Orchid"))))\r
+    (font-lock-comment-face ((t (:foreground "MediumBlue"))))\r
+    (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+    (font-lock-function-name-face ((t (:foreground "MediumSlateBlue"))))\r
+    (font-lock-keyword-face ((t (:foreground "#80a0ff"))))\r
+    (font-lock-string-face ((t (:foreground "red"))))\r
+    (font-lock-type-face ((t (:foreground "ForestGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (highlight ((t (:background "PaleGreen" :foreground "black"))))\r
+    (italic ((t (:italic t :foreground "yellow3"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "wheat" :foreground "DarkOliveGreen"))))\r
+    (modeline-buffer-id ((t (:background "wheat" :foreground "DarkOliveGreen"))))\r
+    (modeline-mousable ((t (:background "wheat" :foreground "DarkOliveGreen"))))\r
+    (modeline-mousable-minor-mode ((t (:background "wheat" :foreground "DarkOliveGreen"))))\r
+    (nil ((t (nil))))\r
+    (region ((t (:background "dark cyan" :foreground "cyan"))))\r
+    (secondary-selection ((t (:background "Turquoise" :foreground "black"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (underline ((t (:underline t))))\r
+    (viper-minibuffer-emacs-face ((t (:background "darkseagreen2" :foreground "Black"))))\r
+    (viper-minibuffer-insert-face ((t (:background "pink" :foreground "Black"))))\r
+    (viper-minibuffer-vi-face ((t (:background "grey" :foreground "DarkGreen"))))\r
+    (viper-replace-overlay-face ((t (:background "darkseagreen2" :foreground "Black"))))\r
+    (viper-search-face ((t (:background "khaki" :foreground "Black"))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (widget-single-line-field-face ((t (:background "gray85")))))))\r
+\r
+(defun color-theme-pierson ()\r
+  "Black on White color theme by Dan L. Pierson, created 2000-06-08.\r
+Supports default faces, font-lock, show-paren."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-pierson\r
+     ((background-color . "AntiqueWhite")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "Orchid")\r
+      (foreground-color . "black")\r
+      (mouse-color . "Orchid"))\r
+     ((list-matching-lines-face . bold))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (font-lock-builtin-face ((t (:foreground "Orchid"))))\r
+    (font-lock-comment-face ((t (:foreground "ForestGreen"))))\r
+    (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+    (font-lock-function-name-face ((t (:foreground "blue3"))))\r
+    (font-lock-keyword-face ((t (:foreground "Blue"))))\r
+    (font-lock-string-face ((t (:foreground "Firebrick"))))\r
+    (font-lock-type-face ((t (:foreground "Purple"))))\r
+    (font-lock-variable-name-face ((t (:foreground "blue3"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (italic ((t (:italic t))))\r
+    (modeline ((t (:foreground "antiquewhite" :background "black"))))\r
+    (modeline-mousable-minor-mode ((t (:foreground "antiquewhite" :background "black"))))\r
+    (modeline-mousable ((t (:foreground "antiquewhite" :background "black"))))\r
+    (modeline-buffer-id ((t (:foreground "antiquewhite" :background "black"))))\r
+    (region ((t (:background "gray"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (underline ((t (:underline t)))))))\r
+\r
+(defun color-theme-xemacs ()\r
+  "XEmacs standard colors.\r
+If you are missing standard faces in this theme, please notify the maintainer.\r
+Currently, this theme includes the standard faces and font-lock faces, including\r
+some faces used in Emacs only but which are needed to recreate the look of the\r
+XEmacs color theme."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-xemacs\r
+     ((background-color . "gray80")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#cf3ccf3ccf3c")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#79e77df779e7")\r
+      (cursor-color . "Red3")\r
+      (foreground-color . "black")\r
+      (top-toolbar-shadow-color . "#fffffbeeffff"))\r
+    (default ((t (nil))))\r
+    (blue ((t (:foreground "blue"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (border-glyph ((t (nil))))\r
+    (custom-button-face ((t (:bold t))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "blue"))))\r
+    (dired-face-boring ((t (:foreground "Gray65"))))\r
+    (dired-face-directory ((t (:bold t))))\r
+    (dired-face-executable ((t (:foreground "SeaGreen"))))\r
+    (dired-face-flagged ((t (:background "LightSlateGray"))))\r
+    (dired-face-marked ((t (:background "PaleVioletRed"))))\r
+    (dired-face-permissions ((t (:background "grey75" :foreground "black"))))\r
+    (dired-face-setuid ((t (:foreground "Red"))))\r
+    (dired-face-socket ((t (:foreground "magenta"))))\r
+    (dired-face-symlink ((t (:foreground "cyan"))))\r
+    (font-lock-builtin-face ((t (:foreground "red3"))))\r
+    (font-lock-comment-face ((t (:foreground "blue4"))))\r
+    (font-lock-constant-face ((t (:foreground "red3"))))\r
+    (font-lock-doc-string-face ((t (:foreground "green4"))))\r
+    (font-lock-function-name-face ((t (:foreground "brown4"))))\r
+    (font-lock-keyword-face ((t (:foreground "red4"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "blue3"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-string-face ((t (:foreground "green4"))))\r
+    (font-lock-type-face ((t (:foreground "steelblue"))))\r
+    (font-lock-variable-name-face ((t (:foreground "magenta4"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (green ((t (:foreground "green"))))\r
+    (gui-button-face ((t (:background "grey75" :foreground "black"))))\r
+    (gui-element ((t (:background "Gray80"))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (info-node ((t (:italic t :bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (isearch ((t (:background "paleturquoise"))))\r
+    (italic ((t (:italic t))))\r
+    (left-margin ((t (nil))))\r
+    (list-mode-item-selected ((t (:background "gray68"))))\r
+    (modeline ((t (:background "Gray80"))))\r
+    (modeline-buffer-id ((t (:background "Gray80" :foreground "blue4"))))\r
+    (modeline-mousable ((t (:background "Gray80" :foreground "firebrick"))))\r
+    (modeline-mousable-minor-mode ((t (:background "Gray80" :foreground "green4"))))\r
+    (paren-blink-off ((t (:foreground "gray80"))))\r
+    (paren-match ((t (:background "darkseagreen2"))))\r
+    (paren-mismatch ((t (:background "DeepPink" :foreground "black"))))\r
+    (pointer ((t (nil))))\r
+    (primary-selection ((t (:background "gray65"))))\r
+    (red ((t (:foreground "red"))))\r
+    (region ((t (:background "gray65"))))\r
+    (right-margin ((t (nil))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (text-cursor ((t (:background "Red3" :foreground "gray80"))))\r
+    (toolbar ((t (:background "Gray80"))))\r
+    (underline ((t (:underline t))))\r
+    (vertical-divider ((t (:background "Gray80"))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (yellow ((t (:foreground "yellow"))))\r
+    (zmacs-region ((t (:background "gray65")))))))\r
+\r
+(defun color-theme-jsc-light ()\r
+  "Color theme by John S Cooper, created 2000-06-08."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-jsc-light\r
+     ((background-color . "white")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "Red")\r
+      (foreground-color . "black")\r
+      (mouse-color . "black"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (view-highlight-face . highlight))\r
+     (default ((t (nil))))\r
+    (bold ((t (:bold t :foreground "red3"))))\r
+    (bold-italic ((t (:italic t :bold t :foreground "red"))))\r
+    (custom-button-face ((t (nil))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "blue"))))\r
+    (font-lock-builtin-face ((t (:foreground "Orchid"))))\r
+    (font-lock-comment-face ((t (:italic t :bold t :foreground "Red3"))))\r
+    (font-lock-constant-face ((t (:foreground "navy"))))\r
+    (font-lock-function-name-face ((t (:bold t :foreground "Blue"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "Purple"))))\r
+    (font-lock-string-face ((t (:foreground "Green4"))))\r
+    (font-lock-type-face ((t (:foreground "Navy"))))\r
+    (font-lock-variable-name-face ((t (:foreground "Tan4"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (gnus-cite-attribution-face ((t (:italic t))))\r
+    (gnus-cite-face-1 ((t (:foreground "MidnightBlue"))))\r
+    (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+    (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+    (gnus-cite-face-2 ((t (:foreground "firebrick"))))\r
+    (gnus-cite-face-3 ((t (:foreground "dark green"))))\r
+    (gnus-cite-face-4 ((t (:foreground "OrangeRed"))))\r
+    (gnus-cite-face-5 ((t (:foreground "dark khaki"))))\r
+    (gnus-cite-face-6 ((t (:foreground "dark violet"))))\r
+    (gnus-cite-face-7 ((t (:foreground "SteelBlue4"))))\r
+    (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+    (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+    (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "blue2"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "blue2"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "blue"))))\r
+    (gnus-header-from-face ((t (:foreground "red3"))))\r
+    (gnus-header-name-face ((t (:foreground "red3"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :foreground "MidnightBlue"))))\r
+    (gnus-header-subject-face ((t (:bold t :foreground "red"))))\r
+    (gnus-signature-face ((t (:foreground "pink"))))\r
+    (gnus-splash-face ((t (:foreground "Brown"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "navy"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t :foreground "blue"))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "red3"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "black"))))\r
+    (gnus-summary-normal-unread-face ((t (:bold t :foreground "red3"))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (highlight ((t (:background "antiquewhite" :foreground "blue"))))\r
+    (italic ((t (:italic t))))\r
+    (makefile-space-face ((t (:background "hotpink"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "plum" :foreground "black"))))\r
+    (modeline-buffer-id ((t (:background "plum" :foreground "black"))))\r
+    (modeline-mousable ((t (:background "plum" :foreground "black"))))\r
+    (modeline-mousable-minor-mode ((t (:background "plum" :foreground "black"))))\r
+    (region ((t (:background "plum"))))\r
+    (secondary-selection ((t (:background "palegreen"))))\r
+    (show-paren-match-face ((t (:background "plum"))))\r
+    (show-paren-mismatch-face ((t (:background "navy" :foreground "white"))))\r
+    (speedbar-button-face ((t (:foreground "green4"))))\r
+    (speedbar-directory-face ((t (:foreground "blue4"))))\r
+    (speedbar-file-face ((t (:foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "green"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (underline ((t (:underline t))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (widget-single-line-field-face ((t (:background "gray85")))))))\r
+\r
+(defun color-theme-jsc-dark ()\r
+  "Color theme by John S Cooper, created 2000-06-11."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-jsc-dark\r
+     ((background-color . "black")\r
+      (background-mode . dark)\r
+      (border-color . "black")\r
+      (cursor-color . "white")\r
+      (foreground-color . "cornsilk")\r
+      (mouse-color . "black"))\r
+     ((gnus-mouse-face . highlight)\r
+      (goto-address-mail-face . italic)\r
+      (goto-address-mail-mouse-face . secondary-selection)\r
+      (goto-address-url-face . bold)\r
+      (goto-address-url-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (view-highlight-face . highlight))\r
+    (blank-space-face ((t (:background "LightGray"))))\r
+    (blank-tab-face ((t (:background "cornsilk" :foreground "black"))))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t :foreground "white"))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (cperl-array-face ((t (:bold t :background "lightyellow2" :foreground "Blue"))))\r
+    (cperl-hash-face ((t (:italic t :bold t :background "lightyellow2" :foreground "Red"))))\r
+    (cperl-nonoverridable-face ((t (:foreground "chartreuse3"))))\r
+    (custom-button-face ((t (:foreground "white"))))\r
+    (custom-changed-face ((t (:background "skyblue" :foreground "wheat"))))\r
+    (custom-documentation-face ((t (:foreground "white"))))\r
+    (custom-face-tag-face ((t (:underline t :foreground "white"))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "skyblue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "pink"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "light green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "skyblue"))))\r
+    (diary-face ((t (:bold t :foreground "orange"))))\r
+    (font-lock-builtin-face ((t (:bold t :foreground "LightSteelBlue"))))\r
+    (font-lock-comment-face ((t (:italic t :foreground "red"))))\r
+    (font-lock-constant-face ((t (:bold t :foreground "salmon"))))\r
+    (font-lock-function-name-face ((t (:bold t :foreground "orange"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "gold"))))\r
+    (font-lock-string-face ((t (:italic t :foreground "orange"))))\r
+    (font-lock-type-face ((t (:bold t :foreground "gold"))))\r
+    (font-lock-variable-name-face ((t (:italic t :bold t :foreground "light salmon"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "gold"))))\r
+    (gnus-cite-attribution-face ((t (:italic t))))\r
+    (gnus-cite-face-1 ((t (:foreground "light cyan"))))\r
+    (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+    (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+    (gnus-cite-face-2 ((t (:foreground "light blue"))))\r
+    (gnus-cite-face-3 ((t (:foreground "light yellow"))))\r
+    (gnus-cite-face-4 ((t (:foreground "light pink"))))\r
+    (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+    (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+    (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+    (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+    (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+    (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:background "goldenrod4" :foreground "white"))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t :background "yellow" :foreground "black"))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t :background "yellow" :foreground "black"))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t :background "yellow" :foreground "black"))))\r
+    (gnus-filterhist-face-1 ((t (nil))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "gray80"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "white"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "lightcyan"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "lightcyan"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "tan"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "tan"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "aquamarine4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "white"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "white"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "lightcyan"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "lightcyan"))))\r
+    (gnus-group-news-3-empty-face ((t (:foreground "tan"))))\r
+    (gnus-group-news-3-face ((t (:bold t :foreground "tan"))))\r
+    (gnus-group-news-4-empty-face ((t (:foreground "white"))))\r
+    (gnus-group-news-4-face ((t (:bold t :foreground "white"))))\r
+    (gnus-group-news-5-empty-face ((t (:foreground "wheat"))))\r
+    (gnus-group-news-5-face ((t (:bold t :foreground "wheat"))))\r
+    (gnus-group-news-6-empty-face ((t (:foreground "tan"))))\r
+    (gnus-group-news-6-face ((t (:bold t :foreground "tan"))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkTurquoise"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "plum1"))))\r
+    (gnus-header-from-face ((t (:bold t :foreground "wheat"))))\r
+    (gnus-header-name-face ((t (:bold t :foreground "gold"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :bold t :foreground "wheat"))))\r
+    (gnus-header-subject-face ((t (:bold t :foreground "red"))))\r
+    (gnus-signature-face ((t (:italic t :foreground "maroon"))))\r
+    (gnus-splash ((t (:foreground "Brown"))))\r
+    (gnus-splash-face ((t (:foreground "gold"))))\r
+    (gnus-summary-cancelled-face ((t (:background "gray" :foreground "black"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "SkyBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "PaleGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "gray70"))))\r
+    (gnus-summary-high-unread-face ((t (:italic t :bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "SkyBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "PaleGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :bold t :foreground "gray70"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:bold t :foreground "gray70"))))\r
+    (gnus-summary-normal-unread-face ((t (:bold t))))\r
+    (gnus-summary-selected-face ((t (:underline t :background "deepskyblue4"))))\r
+    (highlight ((t (:background "darkslategray" :foreground "wheat"))))\r
+    (highlight-changes-delete-face ((t (:underline t :foreground "red"))))\r
+    (highlight-changes-face ((t (:foreground "red"))))\r
+    (highline-face ((t (:background "gray35"))))\r
+    (holiday-face ((t (:background "red"))))\r
+    (info-menu-5 ((t (:underline t))))\r
+    (info-node ((t (:italic t :bold t :foreground "yellow"))))\r
+    (info-xref ((t (:bold t :foreground "plum"))))\r
+    (italic ((t (:italic t))))\r
+    (lazy-highlight-face ((t (:bold t :foreground "dark magenta"))))\r
+    (linemenu-face ((t (:background "gray30"))))\r
+    (makefile-space-face ((t (:background "hotpink"))))\r
+    (message-cited-text-face ((t (:foreground "plum1"))))\r
+    (message-header-cc-face ((t (:bold t :foreground "ivory"))))\r
+    (message-header-name-face ((t (:foreground "light sky blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "lavender blush"))))\r
+    (message-header-other-face ((t (:foreground "pale turquoise"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "papaya whip"))))\r
+    (message-header-to-face ((t (:bold t :foreground "floral white"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "sandy brown"))))\r
+    (modeline ((t (:background "tan" :foreground "black"))))\r
+    (modeline-buffer-id ((t (:background "tan" :foreground "black"))))\r
+    (modeline-mousable ((t (:background "tan" :foreground "black"))))\r
+    (modeline-mousable-minor-mode ((t (:background "tan" :foreground "black"))))\r
+    (paren-mismatch-face ((t (:bold t :background "white" :foreground "red"))))\r
+    (paren-no-match-face ((t (:bold t :background "white" :foreground "red"))))\r
+    (region ((t (:background "slategrey"))))\r
+    (secondary-selection ((t (:background "deepskyblue4"))))\r
+    (sgml-doctype-face ((t (:foreground "orange"))))\r
+    (sgml-end-tag-face ((t (:foreground "greenyellow"))))\r
+    (sgml-entity-face ((t (:foreground "gold"))))\r
+    (sgml-ignored-face ((t (:background "gray60" :foreground "gray20"))))\r
+    (sgml-sgml-face ((t (:foreground "yellow"))))\r
+    (sgml-start-tag-face ((t (:foreground "mediumspringgreen"))))\r
+    (show-paren-match-face ((t (:background "deepskyblue4"))))\r
+    (show-paren-mismatch-face ((t (:bold t :background "red" :foreground "white"))))\r
+    (speedbar-button-face ((t (:foreground "green4"))))\r
+    (speedbar-directory-face ((t (:foreground "blue4"))))\r
+    (speedbar-file-face ((t (:bold t :foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "green"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (underline ((t (:underline t))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "lime green"))))\r
+    (widget-field-face ((t (:background "gray20"))))\r
+    (widget-inactive-face ((t (:foreground "wheat"))))\r
+    (widget-single-line-field-face ((t (:background "gray20"))))\r
+    (woman-bold-face ((t (:bold t))))\r
+    (woman-italic-face ((t (:foreground "beige"))))\r
+    (woman-unknown-face ((t (:foreground "LightSalmon")))))))\r
+\r
+(defun color-theme-greiner ()\r
+  "Color theme by Kevin Greiner, created 2000-06-13.\r
+Black on Beige, supports default, font-lock, speedbar, custom, widget\r
+faces.  Designed to be easy on the eyes, particularly on Win32\r
+computers which commonly have white window backgrounds."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-greiner\r
+     ((background-color . "beige")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "black")\r
+      (foreground-color . "black")\r
+      (mouse-color . "black"))\r
+     ((list-matching-lines-face . bold))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (custom-button-face ((t (nil))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "blue"))))\r
+    (font-lock-builtin-face ((t (:foreground "blue4"))))\r
+    (font-lock-comment-face ((t (:foreground "Firebrick"))))\r
+    (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+    (font-lock-function-name-face ((t (:foreground "Blue"))))\r
+    (font-lock-keyword-face ((t (:foreground "royal blue"))))\r
+    (font-lock-string-face ((t (:foreground "RosyBrown"))))\r
+    (font-lock-type-face ((t (:foreground "ForestGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (info-menu-5 ((t (:underline t))))\r
+    (info-node ((t (:italic t :bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (italic ((t (:italic t))))\r
+    (modeline ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable-minor-mode ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable ((t (:background "black" :foreground "white"))))\r
+    (modeline-buffer-id ((t (:background "black" :foreground "white"))))\r
+    (region ((t (:background "gray"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (speedbar-button-face ((t (:foreground "green4"))))\r
+    (speedbar-directory-face ((t (:foreground "blue4"))))\r
+    (speedbar-file-face ((t (:foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "green"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (underline ((t (:underline t))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (widget-single-line-field-face ((t (:background "gray85")))))))\r
+\r
+(defun color-theme-jb-simple ()\r
+  "Color theme by jeff, created 2000-06-14.\r
+Uses white background and bold for many things"\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-jb-simple\r
+     ((background-color . "white")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#cf3ccf3ccf3c")\r
+      (border-color . "black")\r
+      (bottom-toolbar-shadow-color . "#79e77df779e7")\r
+      (cursor-color . "black")\r
+      (foreground-color . "black")\r
+      (mouse-color . "black")\r
+      (top-toolbar-shadow-color . "#fffffbeeffff"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (rmail-highlight-face . font-lock-function-name-face)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (blank-space-face ((t (nil))))\r
+    (blank-tab-face ((t (nil))))\r
+    (blue ((t (nil))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (border-glyph ((t (nil))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (cperl-array-face ((t (:bold t :background "lightyellow2" :foreground "Blue"))))\r
+    (cperl-hash-face ((t (:italic t :bold t :background "lightyellow2" :foreground "Red"))))\r
+    (cperl-nonoverridable-face ((t (:foreground "chartreuse3"))))\r
+    (custom-button-face ((t (:bold t))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :bold t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :bold t :foreground "blue"))))\r
+    (diary-face ((t (:bold t :foreground "red"))))\r
+    (ediff-current-diff-face-A ((t (:background "pale green" :foreground "firebrick"))))\r
+    (ediff-current-diff-face-Ancestor ((t (:background "VioletRed" :foreground "Black"))))\r
+    (ediff-current-diff-face-B ((t (:background "Yellow" :foreground "DarkOrchid"))))\r
+    (ediff-current-diff-face-C ((t (:background "Pink" :foreground "Navy"))))\r
+    (ediff-even-diff-face-A ((t (:background "light grey" :foreground "Black"))))\r
+    (ediff-even-diff-face-Ancestor ((t (:background "Grey" :foreground "White"))))\r
+    (ediff-even-diff-face-B ((t (:background "Grey" :foreground "White"))))\r
+    (ediff-even-diff-face-C ((t (:background "light grey" :foreground "Black"))))\r
+    (ediff-fine-diff-face-A ((t (:background "sky blue" :foreground "Navy"))))\r
+    (ediff-fine-diff-face-Ancestor ((t (:background "Green" :foreground "Black"))))\r
+    (ediff-fine-diff-face-B ((t (:background "cyan" :foreground "Black"))))\r
+    (ediff-fine-diff-face-C ((t (:background "Turquoise" :foreground "Black"))))\r
+    (ediff-odd-diff-face-A ((t (:background "Grey" :foreground "White"))))\r
+    (ediff-odd-diff-face-Ancestor ((t (:background "light grey" :foreground "Black"))))\r
+    (ediff-odd-diff-face-B ((t (:background "light grey" :foreground "Black"))))\r
+    (ediff-odd-diff-face-C ((t (:background "Grey" :foreground "White"))))\r
+    (erc-action-face ((t (:bold t))))\r
+    (erc-bold-face ((t (:bold t))))\r
+    (erc-default-face ((t (nil))))\r
+    (erc-direct-msg-face ((t (nil))))\r
+    (erc-error-face ((t (:bold t))))\r
+    (erc-input-face ((t (nil))))\r
+    (erc-inverse-face ((t (nil))))\r
+    (erc-notice-face ((t (nil))))\r
+    (erc-pal-face ((t (nil))))\r
+    (erc-prompt-face ((t (nil))))\r
+    (erc-underline-face ((t (nil))))\r
+    (eshell-ls-archive-face ((t (:bold t :foreground "Orchid"))))\r
+    (eshell-ls-backup-face ((t (:foreground "OrangeRed"))))\r
+    (eshell-ls-clutter-face ((t (:bold t :foreground "OrangeRed"))))\r
+    (eshell-ls-directory-face ((t (:bold t :foreground "Blue"))))\r
+    (eshell-ls-executable-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (eshell-ls-missing-face ((t (:bold t :foreground "Red"))))\r
+    (eshell-ls-picture-face ((t (nil))))\r
+    (eshell-ls-product-face ((t (:foreground "OrangeRed"))))\r
+    (eshell-ls-readonly-face ((t (:foreground "Brown"))))\r
+    (eshell-ls-special-face ((t (:bold t :foreground "Magenta"))))\r
+    (eshell-ls-symlink-face ((t (:bold t :foreground "DarkCyan"))))\r
+    (eshell-ls-unreadable-face ((t (:foreground "Grey30"))))\r
+    (eshell-prompt-face ((t (:bold t :foreground "Red"))))\r
+    (eshell-test-failed-face ((t (:bold t :foreground "OrangeRed"))))\r
+    (eshell-test-ok-face ((t (:bold t :foreground "Green"))))\r
+    (excerpt ((t (:italic t))))\r
+    (ff-paths-non-existant-file-face ((t (:bold t :foreground "NavyBlue"))))\r
+    (fixed ((t (:bold t))))\r
+    (flyspell-duplicate-face ((t (:underline t :bold t :foreground "Gold3"))))\r
+    (flyspell-incorrect-face ((t (:underline t :bold t :foreground "OrangeRed"))))\r
+    (font-latex-bold-face ((t (nil))))\r
+    (font-latex-italic-face ((t (nil))))\r
+    (font-latex-math-face ((t (nil))))\r
+    (font-latex-sedate-face ((t (nil))))\r
+    (font-latex-string-face ((t (nil))))\r
+    (font-latex-warning-face ((t (nil))))\r
+    (font-lock-builtin-face ((t (:bold t :foreground "Orchid"))))\r
+    (font-lock-comment-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (font-lock-constant-face ((t (:bold t :foreground "CadetBlue"))))\r
+    (font-lock-doc-string-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (font-lock-exit-face ((t (nil))))\r
+    (font-lock-function-name-face ((t (:bold t :foreground "brown4"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "black"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "blue3"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-string-face ((t (:italic t :bold t :foreground "green4"))))\r
+    (font-lock-type-face ((t (:bold t :foreground "steelblue"))))\r
+    (font-lock-variable-name-face ((t (:italic t :bold t :foreground "magenta4"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (gnus-cite-attribution-face ((t (:italic t :bold t))))\r
+    (gnus-cite-face-1 ((t (:foreground "MidnightBlue"))))\r
+    (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+    (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+    (gnus-cite-face-2 ((t (:foreground "firebrick"))))\r
+    (gnus-cite-face-3 ((t (:foreground "dark green"))))\r
+    (gnus-cite-face-4 ((t (:foreground "OrangeRed"))))\r
+    (gnus-cite-face-5 ((t (:foreground "dark khaki"))))\r
+    (gnus-cite-face-6 ((t (:foreground "dark violet"))))\r
+    (gnus-cite-face-7 ((t (:foreground "SteelBlue4"))))\r
+    (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+    (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+    (gnus-emphasis-highlight-words ((t (nil))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t))))\r
+    (gnus-filterhist-face-1 ((t (nil))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "indianred4"))))\r
+    (gnus-header-from-face ((t (:bold t :foreground "red3"))))\r
+    (gnus-header-name-face ((t (:bold t :foreground "maroon"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :bold t :foreground "MidnightBlue"))))\r
+    (gnus-header-subject-face ((t (:bold t :foreground "red4"))))\r
+    (gnus-signature-face ((t (:italic t))))\r
+    (gnus-splash ((t (nil))))\r
+    (gnus-splash-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:italic t :bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :bold t :foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-normal-unread-face ((t (:bold t))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (green ((t (nil))))\r
+    (gui-button-face ((t (:background "grey75"))))\r
+    (gui-element ((t (:background "Gray80"))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (highlight-changes-delete-face ((t (:underline t :foreground "red"))))\r
+    (highlight-changes-face ((t (:foreground "red"))))\r
+    (highline-face ((t (:background "paleturquoise"))))\r
+    (holiday-face ((t (:background "pink"))))\r
+    (html-helper-italic-face ((t (:italic t))))\r
+    (info-menu-5 ((t (:underline t))))\r
+    (info-node ((t (:italic t :bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (isearch ((t (nil))))\r
+    (italic ((t (:italic t))))\r
+    (lazy-highlight-face ((t (:bold t :foreground "dark magenta"))))\r
+    (left-margin ((t (nil))))\r
+    (linemenu-face ((t (nil))))\r
+    (list-mode-item-selected ((t (nil))))\r
+    (makefile-space-face ((t (:background "hotpink"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:bold t))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "darkblue" :foreground "yellow"))))\r
+    (modeline-buffer-id ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable-minor-mode ((t (:background "black" :foreground "white"))))\r
+    (nil ((t (nil))))\r
+    (paren-mismatch-face ((t (:bold t))))\r
+    (paren-no-match-face ((t (:bold t))))\r
+    (pointer ((t (nil))))\r
+    (primary-selection ((t (nil))))\r
+    (red ((t (nil))))\r
+    (region ((t (:background "gray"))))\r
+    (right-margin ((t (nil))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (sgml-doctype-face ((t (nil))))\r
+    (sgml-end-tag-face ((t (nil))))\r
+    (sgml-entity-face ((t (nil))))\r
+    (sgml-ignored-face ((t (nil))))\r
+    (sgml-sgml-face ((t (nil))))\r
+    (sgml-start-tag-face ((t (nil))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:bold t :background "purple" :foreground "white"))))\r
+    (speedbar-button-face ((t (:bold t :foreground "green4"))))\r
+    (speedbar-directory-face ((t (:bold t :foreground "blue4"))))\r
+    (speedbar-file-face ((t (:bold t :foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "green"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (swbuff-current-buffer-face ((t (:bold t))))\r
+    (term-black ((t (:foreground "black"))))\r
+    (term-blackbg ((t (:background "black"))))\r
+    (term-blue ((t (:foreground "blue"))))\r
+    (term-bluebg ((t (:background "blue"))))\r
+    (term-bold ((t (:bold t))))\r
+    (term-cyan ((t (:foreground "cyan"))))\r
+    (term-cyanbg ((t (:background "cyan"))))\r
+    (term-default-bg ((t (nil))))\r
+    (term-default-bg-inv ((t (nil))))\r
+    (term-default-fg ((t (nil))))\r
+    (term-default-fg-inv ((t (nil))))\r
+    (term-green ((t (:foreground "green"))))\r
+    (term-greenbg ((t (:background "green"))))\r
+    (term-invisible ((t (nil))))\r
+    (term-invisible-inv ((t (nil))))\r
+    (term-magenta ((t (:foreground "magenta"))))\r
+    (term-magentabg ((t (:background "magenta"))))\r
+    (term-red ((t (:foreground "red"))))\r
+    (term-redbg ((t (:background "red"))))\r
+    (term-underline ((t (:underline t))))\r
+    (term-white ((t (:foreground "white"))))\r
+    (term-whitebg ((t (:background "white"))))\r
+    (term-yellow ((t (:foreground "yellow"))))\r
+    (term-yellowbg ((t (:background "yellow"))))\r
+    (text-cursor ((t (nil))))\r
+    (toolbar ((t (nil))))\r
+    (underline ((t (:underline t))))\r
+    (vc-annotate-face-0046FF ((t (nil))))\r
+    (vcursor ((t (:underline t :background "cyan" :foreground "blue"))))\r
+    (vertical-divider ((t (nil))))\r
+    (vhdl-font-lock-attribute-face ((t (:foreground "Orchid"))))\r
+    (vhdl-font-lock-directive-face ((t (:foreground "CadetBlue"))))\r
+    (vhdl-font-lock-enumvalue-face ((t (:foreground "Gold4"))))\r
+    (vhdl-font-lock-function-face ((t (:foreground "Orchid4"))))\r
+    (vhdl-font-lock-prompt-face ((t (:bold t :foreground "Red"))))\r
+    (vhdl-font-lock-reserved-words-face ((t (:bold t :foreground "Orange"))))\r
+    (vhdl-font-lock-translate-off-face ((t (:background "LightGray"))))\r
+    (vhdl-speedbar-architecture-face ((t (:foreground "Blue"))))\r
+    (vhdl-speedbar-architecture-selected-face ((t (:underline t :foreground "Blue"))))\r
+    (vhdl-speedbar-configuration-face ((t (:foreground "DarkGoldenrod"))))\r
+    (vhdl-speedbar-configuration-selected-face ((t (:underline t :foreground "DarkGoldenrod"))))\r
+    (vhdl-speedbar-entity-face ((t (:foreground "ForestGreen"))))\r
+    (vhdl-speedbar-entity-selected-face ((t (:underline t :foreground "ForestGreen"))))\r
+    (vhdl-speedbar-instantiation-face ((t (:foreground "Brown"))))\r
+    (vhdl-speedbar-instantiation-selected-face ((t (:underline t :foreground "Brown"))))\r
+    (vhdl-speedbar-package-face ((t (:foreground "Grey50"))))\r
+    (vhdl-speedbar-package-selected-face ((t (:underline t :foreground "Grey50"))))\r
+    (viper-minibuffer-emacs-face ((t (:background "darkseagreen2" :foreground "Black"))))\r
+    (viper-minibuffer-insert-face ((t (:background "pink" :foreground "Black"))))\r
+    (viper-minibuffer-vi-face ((t (:background "grey" :foreground "DarkGreen"))))\r
+    (viper-replace-overlay-face ((t (:background "darkseagreen2" :foreground "Black"))))\r
+    (viper-search-face ((t (:background "khaki" :foreground "Black"))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (widget-single-line-field-face ((t (:background "gray85"))))\r
+    (woman-bold-face ((t (:bold t))))\r
+    (woman-italic-face ((t (nil))))\r
+    (woman-unknown-face ((t (nil))))\r
+    (yellow ((t (nil))))\r
+    (zmacs-region ((t (nil)))))))\r
+\r
+(defun color-theme-beige-diff ()\r
+  "Brownish faces for diff and change-log modes.\r
+This is intended for other color themes to use (eg. `color-theme-gnome2'\r
+and `color-theme-blue-sea')."\r
+  (color-theme-install\r
+   '(color-theme-beige-diff\r
+     nil\r
+     (change-log-acknowledgement-face ((t (:foreground "firebrick"))))\r
+     (change-log-conditionals-face ((t (:foreground "khaki" :background "sienna"))))\r
+     (change-log-date-face ((t (:foreground "gold"))))\r
+     (change-log-email-face ((t (:foreground "khaki" :underline t))))\r
+     (change-log-file-face ((t (:bold t :foreground "lemon chiffon"))))\r
+     (change-log-function-face ((t (:foreground "khaki" :background "sienna"))))\r
+     (change-log-list-face ((t (:foreground "wheat"))))\r
+     (change-log-name-face ((t (:bold t :foreground "light goldenrod"))))\r
+     (diff-added-face ((t (nil))))\r
+     (diff-changed-face ((t (nil))))\r
+     (diff-context-face ((t (:foreground "grey50"))))\r
+     (diff-file-header-face ((t (:bold t :foreground "lemon chiffon"))))\r
+     (diff-function-face ((t (:foreground "grey50"))))\r
+     (diff-header-face ((t (:foreground "lemon chiffon"))))\r
+     (diff-hunk-header-face ((t (:foreground "light goldenrod"))))\r
+     (diff-index-face ((t (:bold t :underline t))))\r
+     (diff-nonexistent-face ((t (:bold t :background "grey70" :weight bold))))\r
+     (diff-removed-face ((t (nil))))\r
+     (log-view-message-face ((t (:foreground "lemon chiffon")))))))\r
+\r
+(defun color-theme-standard-ediff ()\r
+  "Standard colors for ediff faces.\r
+This is intended for other color themes to use\r
+\(eg. `color-theme-goldenrod')."\r
+  (color-theme-install\r
+   '(color-theme-beige-diff\r
+     nil\r
+     (ediff-current-diff-face-A ((t (:background "pale green" :foreground "firebrick"))))\r
+     (ediff-current-diff-face-Ancestor ((t (:background "VioletRed" :foreground "Black"))))\r
+     (ediff-current-diff-face-B ((t (:background "Yellow" :foreground "DarkOrchid"))))\r
+     (ediff-current-diff-face-C ((t (:background "Pink" :foreground "Navy"))))\r
+     (ediff-even-diff-face-A ((t (:background "light grey" :foreground "Black"))))\r
+     (ediff-even-diff-face-Ancestor ((t (:background "Grey" :foreground "White"))))\r
+     (ediff-even-diff-face-B ((t (:background "Grey" :foreground "White"))))\r
+     (ediff-even-diff-face-C ((t (:background "light grey" :foreground "Black"))))\r
+     (ediff-fine-diff-face-A ((t (:background "sky blue" :foreground "Navy"))))\r
+     (ediff-fine-diff-face-Ancestor ((t (:background "Green" :foreground "Black"))))\r
+     (ediff-fine-diff-face-B ((t (:background "cyan" :foreground "Black"))))\r
+     (ediff-fine-diff-face-C ((t (:background "Turquoise" :foreground "Black"))))\r
+     (ediff-odd-diff-face-A ((t (:background "Grey" :foreground "White"))))\r
+     (ediff-odd-diff-face-Ancestor ((t (:background "light grey" :foreground "Black"))))\r
+     (ediff-odd-diff-face-B ((t (:background "light grey" :foreground "Black"))))\r
+     (ediff-odd-diff-face-C ((t (:background "Grey" :foreground "White")))))))\r
+\r
+(defun color-theme-beige-eshell ()\r
+  "Brownish colors for eshell faces only.\r
+This is intended for other color themes to use (eg. `color-theme-goldenrod')."\r
+  (color-theme-install\r
+   '(color-theme-beige-eshell\r
+     nil\r
+     (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))\r
+     (eshell-ls-backup-face ((t (:foreground "Grey"))))\r
+     (eshell-ls-clutter-face ((t (:foreground "DimGray"))))\r
+     (eshell-ls-directory-face ((t (:bold t :foreground "dark khaki"))))\r
+     (eshell-ls-executable-face ((t (:foreground "Coral"))))\r
+     (eshell-ls-missing-face ((t (:foreground "black"))))\r
+     (eshell-ls-picture-face ((t (:foreground "gold")))) ; non-standard face\r
+     (eshell-ls-product-face ((t (:foreground "dark sea green"))))\r
+     (eshell-ls-readonly-face ((t (:foreground "light steel blue"))))\r
+     (eshell-ls-special-face ((t (:foreground "gold"))))\r
+     (eshell-ls-symlink-face ((t (:foreground "peach puff"))))\r
+     (eshell-ls-text-face ((t (:foreground "moccasin")))) ; non-standard face\r
+     (eshell-ls-todo-face ((t (:bold t :foreground "yellow green")))) ; non-standard face\r
+     (eshell-ls-unreadable-face ((t (:foreground "DimGray"))))\r
+     (eshell-prompt-face ((t (:foreground "lemon chiffon")))))))\r
+\r
+(defun color-theme-goldenrod ()\r
+  "Brown color theme.  Very different from the others.\r
+Supports standard, font-lock and info faces, and it uses\r
+`color-theme-blue-gnus', `color-theme-blue-erc' , and\r
+`color-theme-beige-diff'."\r
+  (interactive)\r
+  (color-theme-blue-gnus)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-blue-erc)\r
+    (color-theme-beige-diff)\r
+    (color-theme-beige-eshell)\r
+    (color-theme-install\r
+     '(color-theme-goldenrod\r
+       ((background-color . "black")\r
+       (background-mode . dark)\r
+       (border-color . "black")\r
+       (cursor-color . "light goldenrod")\r
+       (foreground-color . "goldenrod")\r
+       (mouse-color . "goldenrod"))\r
+       ((goto-address-mail-face . info-xref)\r
+       (list-matching-lines-face . bold)\r
+       (view-highlight-face . highlight))\r
+       (default ((t (nil))))\r
+       (bold ((t (:bold t))))\r
+       (bold-italic ((t (:italic t :bold t :foreground "lavender"))))\r
+       (font-lock-builtin-face ((t (:foreground "pale goldenrod"))))\r
+       (font-lock-comment-face ((t (:foreground "indian red"))))\r
+       (font-lock-constant-face ((t (:foreground "pale green"))))\r
+       (font-lock-function-name-face ((t (:bold t :foreground "lemon chiffon"))))\r
+       (font-lock-keyword-face ((t (:foreground "wheat"))))\r
+       (font-lock-string-face ((t (:foreground "gold"))))\r
+       (font-lock-type-face ((t (:foreground "dark khaki" :bold t))))\r
+       (font-lock-variable-name-face ((t (:bold t :foreground "khaki"))))\r
+       (font-lock-warning-face ((t (:bold t :foreground "orange red"))))\r
+       (fringe ((t (:background "gray25"))))\r
+       (header-line ((t (:background "gray20" :foreground "gray70"))))\r
+       (highlight ((t (:background "dark slate blue"))))\r
+       (info-menu-5 ((t (:underline t))))\r
+       (info-node ((t (:bold t))))\r
+       (info-xref ((t (:bold t :foreground "pale goldenrod"))))\r
+       (isearch ((t (:background "SeaGreen4"))))\r
+       (isearch-lazy-highlight-face ((t (:background "DarkOliveGreen4"))))\r
+       (italic ((t (:italic t :foreground "lavender"))))\r
+       (menu ((t (:background "gray25" :foreground "lemon chiffon"))))\r
+       (modeline ((t (:background "gray40" :foreground "lemon chiffon" :box (:line-width 1 :style released-button)))))\r
+       (modeline-buffer-id ((t (:background "AntiqueWhite4" :foreground "lemon chiffon"))))\r
+       (modeline-mousable ((t (:background "AntiqueWhite4" :foreground "lemon chiffon"))))\r
+       (modeline-mousable-minor-mode ((t (:background "wheat" :foreground "lemon chiffon"))))\r
+       (mode-line-inactive ((t (:background "gray20" :foreground "lemon chiffon" :box (:line-width 1 :style released-button)))))\r
+       (region ((t (:background "dark olive green"))))\r
+       (secondary-selection ((t (:background "dark green"))))\r
+       (tool-bar ((t (:background "gray25" :foreground "lemon chiffon" :box (:line-width 1 :style released-button)))))\r
+       (underline ((t (:underline t))))))))\r
+\r
+(defun color-theme-ramangalahy ()\r
+  "Color theme by Solofo Ramangalahy, created 2000-10-18.\r
+Black on light grey, includes faces for vm, ispell, gnus,\r
+dired, display-time, cperl, font-lock, widget, x-symbol."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-ramangalahy\r
+     ((background-color . "lightgrey")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#bfbfbfbfbfbf")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#737373737373")\r
+      (cursor-color . "blue")\r
+      (foreground-color . "black")\r
+      (top-toolbar-shadow-color . "#e6e6e6e6e6e6"))\r
+     ((gnus-mouse-face . highlight)\r
+      (goto-address-mail-face . info-xref)\r
+      (ispell-highlight-face . highlight)\r
+      (notes-bold-face . notes-bold-face)\r
+      (setnu-line-number-face . bold)\r
+      (tinyreplace-:face . highlight)\r
+      (vm-highlight-url-face . bold-italic)\r
+      (vm-highlighted-header-face . bold)\r
+      (vm-mime-button-face . gui-button-face)\r
+      (vm-summary-highlight-face . bold))\r
+    (default ((t (nil))))\r
+    (bbdb-company ((t (nil))))\r
+    (blue ((t (:foreground "blue"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (border-glyph ((t (nil))))\r
+    (cperl-here-face ((t (:foreground "green4"))))\r
+    (cperl-pod-face ((t (:foreground "brown4"))))\r
+    (cperl-pod-head-face ((t (:foreground "steelblue"))))\r
+    (custom-button-face ((t (:bold t))))\r
+    (custom-changed-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (nil))))\r
+    (custom-face-tag-face ((t (:underline t))))\r
+    (custom-group-tag-face ((t (:underline t :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :foreground "red"))))\r
+    (custom-invalid-face ((t (:background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t))))\r
+    (custom-set-face ((t (:background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t :bold t))))\r
+    (custom-variable-tag-face ((t (:underline t :foreground "blue"))))\r
+    (dired-face-boring ((t (:foreground "Gray65"))))\r
+    (dired-face-directory ((t (:bold t))))\r
+    (dired-face-executable ((t (:foreground "SeaGreen"))))\r
+    (dired-face-flagged ((t (:background "LightSlateGray"))))\r
+    (dired-face-marked ((t (:background "PaleVioletRed"))))\r
+    (dired-face-permissions ((t (:background "grey75" :foreground "black"))))\r
+    (dired-face-setuid ((t (:foreground "Red"))))\r
+    (dired-face-socket ((t (:foreground "magenta"))))\r
+    (dired-face-symlink ((t (:foreground "blue"))))\r
+    (display-time-mail-balloon-enhance-face ((t (:background "orange"))))\r
+    (display-time-mail-balloon-gnus-group-face ((t (:foreground "blue"))))\r
+    (display-time-time-balloon-face ((t (:foreground "red"))))\r
+    (ff-paths-non-existant-file-face ((t (:bold t :foreground "NavyBlue"))))\r
+    (font-lock-comment-face ((t (:bold t :foreground "purple"))))\r
+    (font-lock-doc-string-face ((t (:bold t :foreground "slateblue"))))\r
+    (font-lock-emphasized-face ((t (:bold t :background "lightyellow2"))))\r
+    (font-lock-function-name-face ((t (:bold t :foreground "blue"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "violetred"))))\r
+    (font-lock-other-emphasized-face ((t (:italic t :bold t :background "lightyellow2"))))\r
+    (font-lock-other-type-face ((t (:bold t :foreground "orange3"))))\r
+    (font-lock-preprocessor-face ((t (:bold t :foreground "mediumblue"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-string-face ((t (:foreground "green4"))))\r
+    (font-lock-type-face ((t (:bold t :foreground "steelblue"))))\r
+    (font-lock-variable-name-face ((t (:foreground "magenta4"))))\r
+    (font-lock-warning-face ((t (:bold t :background "yellow" :foreground "Red"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (nil))))\r
+    (gnus-emphasis-italic ((t (nil))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-news-3-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-header-content-face ((t (:foreground "indianred4"))))\r
+    (gnus-header-from-face ((t (:foreground "red3"))))\r
+    (gnus-header-name-face ((t (:foreground "maroon"))))\r
+    (gnus-header-newsgroups-face ((t (:foreground "MidnightBlue"))))\r
+    (gnus-header-subject-face ((t (:foreground "red4"))))\r
+    (gnus-signature-face ((t (:bold t))))\r
+    (gnus-splash-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (nil))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "firebrick"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (gnus-x-face ((t (:background "lightgrey" :foreground "black"))))\r
+    (green ((t (:foreground "green"))))\r
+    (gui-button-face ((t (:background "grey75" :foreground "black"))))\r
+    (gui-element ((t (:background "lightgrey"))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (info-node ((t (:underline t :bold t :foreground "mediumpurple"))))\r
+    (info-xref ((t (:underline t :bold t :foreground "#0000ee"))))\r
+    (isearch ((t (:background "paleturquoise"))))\r
+    (italic ((t (:italic t))))\r
+    (left-margin ((t (nil))))\r
+    (list-mode-item-selected ((t (:background "gray68" :foreground "black"))))\r
+    (message-cited-text ((t (:foreground "slategrey"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-contents ((t (:italic t))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-headers ((t (:bold t))))\r
+    (message-highlighted-header-contents ((t (:bold t))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (message-url ((t (:bold t))))\r
+    (modeline ((t (:bold t :background "Gray75" :foreground "Black"))))\r
+    (modeline-buffer-id ((t (:bold t :background "Gray75" :foreground "blue4"))))\r
+    (modeline-mousable ((t (:bold t :background "Gray75" :foreground "firebrick"))))\r
+    (modeline-mousable-minor-mode ((t (:bold t :background "Gray75" :foreground "green4"))))\r
+    (paren-blink-off ((t (:foreground "lightgrey"))))\r
+    (paren-match ((t (:background "darkseagreen2"))))\r
+    (paren-mismatch ((t (:background "DeepPink" :foreground "black"))))\r
+    (pointer ((t (:foreground "blue"))))\r
+    (primary-selection ((t (:background "gray65"))))\r
+    (red ((t (:foreground "red"))))\r
+    (region ((t (:background "black" :foreground "white"))))\r
+    (right-margin ((t (nil))))\r
+    (searchm-buffer ((t (:bold t :background "white" :foreground "red"))))\r
+    (searchm-button ((t (:bold t :background "CadetBlue" :foreground "white"))))\r
+    (searchm-field ((t (:background "grey89"))))\r
+    (searchm-field-label ((t (:bold t))))\r
+    (searchm-highlight ((t (:bold t :background "darkseagreen2" :foreground "black"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (template-message-face ((t (:bold t))))\r
+    (text-cursor ((t (:background "blue" :foreground "lightgrey"))))\r
+    (toolbar ((t (nil))))\r
+    (underline ((t (:underline t))))\r
+    (vertical-divider ((t (nil))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (x-face ((t (:background "white" :foreground "black"))))\r
+    (x-symbol-adobe-fontspecific-face ((t (nil))))\r
+    (x-symbol-face ((t (nil))))\r
+    (x-symbol-heading-face ((t (:underline t :bold t :foreground "green4"))))\r
+    (x-symbol-info-face ((t (:foreground "green4"))))\r
+    (x-symbol-invisible-face ((t (nil))))\r
+    (x-symbol-revealed-face ((t (:background "pink"))))\r
+    (yellow ((t (:foreground "yellow"))))\r
+    (zmacs-region ((t (:background "yellow")))))))\r
+\r
+(defun color-theme-raspopovic ()\r
+  "Color theme by Pedja Raspopovic, created 2000-10-19.\r
+Includes faces for dired, font-lock, info, paren."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-raspopovic\r
+     ((background-color . "darkblue")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#bfbfbfbfbfbf")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#737373737373")\r
+      (cursor-color . "Red3")\r
+      (foreground-color . "yellow")\r
+      (top-toolbar-shadow-color . "#e6e6e6e6e6e6"))\r
+     ((setnu-line-number-face . bold)\r
+      (goto-address-mail-face . info-xref))\r
+    (default ((t (nil))))\r
+    (blue ((t (:background "darkblue" :foreground "blue"))))\r
+    (bold ((t (:bold t :background "darkblue" :foreground "yellow"))))\r
+    (bold-italic ((t (:bold t :background "darkblue" :foreground "red3"))))\r
+    (comint-input-face ((t (:foreground "deepskyblue"))))\r
+    (dired-face-boring ((t (:foreground "Gray65"))))\r
+    (dired-face-directory ((t (:foreground "lightgreen"))))\r
+    (dired-face-executable ((t (:foreground "indianred"))))\r
+    (dired-face-flagged ((t (:background "LightSlateGray"))))\r
+    (dired-face-marked ((t (:background "darkblue" :foreground "deepskyblue"))))\r
+    (dired-face-permissions ((t (:background "darkblue" :foreground "white"))))\r
+    (dired-face-setuid ((t (:foreground "Red"))))\r
+    (dired-face-socket ((t (:foreground "magenta"))))\r
+    (dired-face-symlink ((t (:foreground "grey95"))))\r
+    (font-lock-comment-face ((t (:background "darkblue" :foreground "lightgreen"))))\r
+    (font-lock-doc-string-face ((t (:background "darkblue" :foreground "darkseagreen"))))\r
+    (font-lock-function-name-face ((t (:bold t :background "darkblue" :foreground "indianred"))))\r
+    (font-lock-keyword-face ((t (:background "darkblue" :foreground "skyblue"))))\r
+    (font-lock-preprocessor-face ((t (:background "darkblue" :foreground "orange"))))\r
+    (font-lock-reference-face ((t (:background "darkblue" :foreground "deepskyblue"))))\r
+    (font-lock-string-face ((t (:background "darkblue" :foreground "lightgrey"))))\r
+    (font-lock-type-face ((t (:background "darkblue" :foreground "orange"))))\r
+    (font-lock-variable-name-face ((t (:background "darkblue" :foreground "white"))))\r
+    (green ((t (:background "darkblue" :foreground "green"))))\r
+    (gui-button-face ((t (:background "grey75" :foreground "black"))))\r
+    (highlight ((t (:background "yellow" :foreground "darkblue"))))\r
+    (info-node ((t (:bold t :background "darkblue" :foreground "red3"))))\r
+    (info-xref ((t (:bold t :background "darkblue" :foreground "yellow"))))\r
+    (isearch ((t (:background "yellow" :foreground "darkblue"))))\r
+    (isearch-secondary ((t (:foreground "red3"))))\r
+    (italic ((t (:background "darkblue" :foreground "red3"))))\r
+    (left-margin ((t (:background "darkblue" :foreground "yellow"))))\r
+    (list-mode-item-selected ((t (:background "gray68" :foreground "yellow"))))\r
+    (makefile-space-face ((t (:background "hotpink"))))\r
+    (modeline ((t (:background "Gray75" :foreground "Black"))))\r
+    (modeline-buffer-id ((t (:background "Gray75" :foreground "blue"))))\r
+    (modeline-mousable ((t (:background "Gray75" :foreground "red"))))\r
+    (modeline-mousable-minor-mode ((t (:background "Gray75" :foreground "green4"))))\r
+    (paren-blink-off ((t (:foreground "darkblue"))))\r
+    (paren-match ((t (:background "yellow" :foreground "darkblue"))))\r
+    (paren-mismatch ((t (:background "DeepPink" :foreground "yellow"))))\r
+    (pointer ((t (:background "darkblue" :foreground "red3"))))\r
+    (primary-selection ((t (:background "yellow" :foreground "darkblue"))))\r
+    (red ((t (:background "darkblue" :foreground "red"))))\r
+    (right-margin ((t (:background "darkblue" :foreground "yellow"))))\r
+    (secondary-selection ((t (:background "darkblue" :foreground "yellow"))))\r
+    (shell-option-face ((t (:background "darkblue" :foreground "cyan2"))))\r
+    (shell-output-2-face ((t (:background "darkblue" :foreground "darkseagreen"))))\r
+    (shell-output-3-face ((t (:background "darkblue" :foreground "lightgrey"))))\r
+    (shell-output-face ((t (:background "darkblue" :foreground "white"))))\r
+    (shell-prompt-face ((t (:background "darkblue" :foreground "red"))))\r
+    (text-cursor ((t (:background "Red3" :foreground "white"))))\r
+    (underline ((t (:underline t :background "darkblue" :foreground "yellow"))))\r
+    (vvb-face ((t (:background "pink" :foreground "black"))))\r
+    (yellow ((t (:background "darkblue" :foreground "yellow"))))\r
+    (zmacs-region ((t (:background "gray" :foreground "black")))))))\r
+\r
+(defun color-theme-taylor ()\r
+  "Color theme by Art Taylor, created 2000-10-20.\r
+Wheat on black.  Includes faces for font-lock, gnus, paren."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-taylor\r
+     ((background-color . "black")\r
+      (background-mode . dark)\r
+      (border-color . "black")\r
+      (cursor-color . "red")\r
+      (foreground-color . "wheat")\r
+      (mouse-color . "black"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t :background "grey40" :foreground "yellow"))))\r
+    (bold-italic ((t (:italic t :bold t :foreground "yellow green"))))\r
+    (fl-comment-face ((t (:foreground "medium purple"))))\r
+    (fl-function-name-face ((t (:foreground "green"))))\r
+    (fl-keyword-face ((t (:foreground "LightGreen"))))\r
+    (fl-string-face ((t (:foreground "light coral"))))\r
+    (fl-type-face ((t (:foreground "cyan"))))\r
+    (font-lock-builtin-face ((t (:foreground "LightSteelBlue"))))\r
+    (font-lock-comment-face ((t (:foreground "OrangeRed"))))\r
+    (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+    (font-lock-function-name-face ((t (:foreground "LightSkyBlue"))))\r
+    (font-lock-keyword-face ((t (:foreground "Cyan"))))\r
+    (font-lock-string-face ((t (:foreground "LightSalmon"))))\r
+    (font-lock-type-face ((t (:foreground "PaleGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "LightGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "aquamarine1"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "aquamarine1"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "aquamarine2"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "aquamarine2"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "aquamarine3"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "aquamarine3"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "aquamarine4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "PaleTurquoise"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "PaleTurquoise"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "turquoise"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "turquoise"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkTurquoise"))))\r
+    (gnus-splash-face ((t (:foreground "Brown"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "SkyBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "PaleGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "pink"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "SkyBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "PaleGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "pink"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "pink"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (highlight ((t (:background "black" :foreground "black"))))\r
+    (italic ((t (:italic t :foreground "yellow3"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:bold t :foreground "green4"))))\r
+    (message-header-name-face ((t (:foreground "DarkGreen"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "yellow"))))\r
+    (message-header-other-face ((t (:foreground "#b00000"))))\r
+    (message-header-subject-face ((t (:foreground "green3"))))\r
+    (message-header-to-face ((t (:bold t :foreground "green2"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "blue3"))))\r
+    (modeline ((t (:background "wheat" :foreground "black"))))\r
+    (modeline-buffer-id ((t (:background "wheat" :foreground "black"))))\r
+    (modeline-mousable ((t (:background "wheat" :foreground "black"))))\r
+    (modeline-mousable-minor-mode ((t (:background "wheat" :foreground "black"))))\r
+    (region ((t (:background "blue"))))\r
+    (secondary-selection ((t (:background "darkslateblue" :foreground "black"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (underline ((t (:underline t))))\r
+    (xref-keyword-face ((t (:foreground "blue"))))\r
+    (xref-list-default-face ((t (nil))))\r
+    (xref-list-pilot-face ((t (:foreground "navy"))))\r
+    (xref-list-symbol-face ((t (:foreground "navy")))))))\r
+\r
+(defun color-theme-marquardt ()\r
+  "Color theme by Colin Marquardt, created 2000-10-25.\r
+Black on bisque, a light color. Based on some settings from Robin S. Socha.\r
+Features some color changes to programming languages, especially vhdl-mode.\r
+You might also want to put something like\r
+   Emacs*Foreground:          Black\r
+   Emacs*Background:          bisque2\r
+in your ~/.Xdefaults."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-marquardt\r
+     ((background-color . "bisque")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "bisque")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#909099999999")\r
+      (cursor-color . "Red3")\r
+      (foreground-color . "black")\r
+      (top-toolbar-shadow-color . "#ffffffffffff"))\r
+    (default ((t (nil))))\r
+    (blue ((t (:foreground "blue"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:bold t))))\r
+    (border-glyph ((t (nil))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (diary-face ((t (:foreground "red"))))\r
+    (display-time-mail-balloon-enhance-face ((t (:background "orange"))))\r
+    (display-time-mail-balloon-gnus-group-face ((t (:foreground "blue"))))\r
+    (display-time-time-balloon-face ((t (:foreground "red"))))\r
+    (ff-paths-non-existant-file-face ((t (:bold t :foreground "NavyBlue"))))\r
+    (font-lock-comment-face ((t (:foreground "gray50"))))\r
+    (font-lock-doc-string-face ((t (:foreground "green4"))))\r
+    (font-lock-function-name-face ((t (:foreground "darkorange"))))\r
+    (font-lock-keyword-face ((t (:foreground "blue3"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "blue3"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-special-comment-face ((t (:foreground "blue4"))))\r
+    (font-lock-special-keyword-face ((t (:foreground "red4"))))\r
+    (font-lock-string-face ((t (:foreground "green4"))))\r
+    (font-lock-type-face ((t (:foreground "steelblue"))))\r
+    (font-lock-variable-name-face ((t (:foreground "black"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (green ((t (:foreground "green"))))\r
+    (gui-button-face ((t (:background "grey75" :foreground "black"))))\r
+    (gui-element ((t (:background "azure1" :foreground "Black"))))\r
+    (highlight ((t (:background "darkseagreen2" :foreground "blue"))))\r
+    (holiday-face ((t (:background "pink" :foreground "black"))))\r
+    (info-node ((t (:bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (isearch ((t (:background "yellow" :foreground "red"))))\r
+    (italic ((t (:bold t))))\r
+    (left-margin ((t (nil))))\r
+    (list-mode-item-selected ((t (:background "gray68" :foreground "black"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "bisque2" :foreground "steelblue4"))))\r
+    (modeline-buffer-id ((t (:background "bisque2" :foreground "blue4"))))\r
+    (modeline-mousable ((t (:background "bisque2" :foreground "firebrick"))))\r
+    (modeline-mousable-minor-mode ((t (:background "bisque2" :foreground "green4"))))\r
+    (paren-blink-off ((t (:foreground "azure1"))))\r
+    (paren-face ((t (:background "lightgoldenrod"))))\r
+    (paren-match ((t (:background "bisque2"))))\r
+    (paren-mismatch ((t (:background "DeepPink" :foreground "black"))))\r
+    (paren-mismatch-face ((t (:background "DeepPink"))))\r
+    (paren-no-match-face ((t (:background "yellow"))))\r
+    (pointer ((t (:background "white" :foreground "blue"))))\r
+    (primary-selection ((t (:background "gray65"))))\r
+    (red ((t (:foreground "red"))))\r
+    (right-margin ((t (nil))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (shell-option-face ((t (:foreground "gray50"))))\r
+    (shell-output-2-face ((t (:foreground "green4"))))\r
+    (shell-output-3-face ((t (:foreground "green4"))))\r
+    (shell-output-face ((t (:bold t))))\r
+    (shell-prompt-face ((t (:foreground "blue3"))))\r
+    (speedbar-button-face ((t (:foreground "green4"))))\r
+    (speedbar-directory-face ((t (:foreground "blue4"))))\r
+    (speedbar-file-face ((t (:foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "green"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (text-cursor ((t (:background "Red3" :foreground "bisque"))))\r
+    (toolbar ((t (:background "Gray80"))))\r
+    (underline ((t (:underline t))))\r
+    (vertical-divider ((t (nil))))\r
+    (vhdl-font-lock-attribute-face ((t (:foreground "Orchid"))))\r
+    (vhdl-font-lock-directive-face ((t (:foreground "CadetBlue"))))\r
+    (vhdl-font-lock-enumvalue-face ((t (:foreground "SaddleBrown"))))\r
+    (vhdl-font-lock-function-face ((t (:foreground "DarkCyan"))))\r
+    (vhdl-font-lock-generic-/constant-face ((t (:foreground "Gold3"))))\r
+    (vhdl-font-lock-prompt-face ((t (:bold t :foreground "Red"))))\r
+    (vhdl-font-lock-reserved-words-face ((t (:bold t :foreground "Orange"))))\r
+    (vhdl-font-lock-translate-off-face ((t (:background "LightGray"))))\r
+    (vhdl-font-lock-type-face ((t (:foreground "ForestGreen"))))\r
+    (vhdl-font-lock-variable-face ((t (:foreground "Grey50"))))\r
+    (vhdl-speedbar-architecture-face ((t (:foreground "Blue"))))\r
+    (vhdl-speedbar-architecture-selected-face ((t (:underline t :foreground "Blue"))))\r
+    (vhdl-speedbar-configuration-face ((t (:foreground "DarkGoldenrod"))))\r
+    (vhdl-speedbar-configuration-selected-face ((t (:underline t :foreground "DarkGoldenrod"))))\r
+    (vhdl-speedbar-entity-face ((t (:foreground "ForestGreen"))))\r
+    (vhdl-speedbar-entity-selected-face ((t (:underline t :foreground "ForestGreen"))))\r
+    (vhdl-speedbar-instantiation-face ((t (:foreground "Brown"))))\r
+    (vhdl-speedbar-instantiation-selected-face ((t (:underline t :foreground "Brown"))))\r
+    (vhdl-speedbar-package-face ((t (:foreground "Grey50"))))\r
+    (vhdl-speedbar-package-selected-face ((t (:underline t :foreground "Grey50"))))\r
+    (vhdl-speedbar-subprogram-face ((t (:foreground "Orchid4"))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (yellow ((t (:foreground "yellow"))))\r
+    (zmacs-region ((t (:background "steelblue" :foreground "yellow")))))))\r
+\r
+(defun color-theme-parus ()\r
+  "Color theme by Jon K Hellan, created 2000-11-01.\r
+White on dark blue color theme.\r
+\r
+There is some redundancy in the X resources, but I do not have time to\r
+find out which should go or which should stay:\r
+\r
+Emacs*dialog*Background:       midnightblue\r
+Emacs*dialog*Foreground:       white\r
+Emacs*popup*Background:                midnightblue\r
+Emacs*popup*Foreground:                white\r
+emacs*background:              #00005a\r
+emacs*cursorColor:             gray90\r
+emacs*foreground:              White\r
+emacs.dialog*.background:      midnightblue\r
+emacs.menu*.background:                midnightblue\r
+emacs.pane.menubar.background: midnightblue"\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-parus\r
+     ((background-color . "#00005a")\r
+      (background-mode . dark)\r
+      (border-color . "black")\r
+      (cursor-color . "yellow")\r
+      (foreground-color . "White")\r
+      (mouse-color . "yellow"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (paren-face . bold)\r
+      (paren-mismatch-face . paren-mismatch-face)\r
+      (paren-no-match-face . paren-no-match-face)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (font-latex-bold-face ((t (:bold t :foreground "OliveDrab"))))\r
+    (font-latex-italic-face ((t (:italic t :foreground "OliveDrab"))))\r
+    (font-latex-math-face ((t (:foreground "burlywood"))))\r
+    (font-latex-sedate-face ((t (:foreground "LightGray"))))\r
+    (font-latex-string-face ((t (:foreground "LightSalmon"))))\r
+    (font-latex-warning-face ((t (:foreground "Pink"))))\r
+    (font-lock-builtin-face ((t (:foreground "#e0e0ff"))))\r
+    (font-lock-reference-face ((t (:foreground "#e0e0ff"))))\r
+    (font-lock-comment-face ((t (:foreground "#FFd1d1"))))\r
+    (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "Aquamarine"))))\r
+    (font-lock-function-name-face ((t (:foreground "#b2e4ff"))))\r
+    (font-lock-keyword-face ((t (:foreground "#a0ffff"))))\r
+    (font-lock-string-face ((t (:foreground "#efca10"))))\r
+    (font-lock-doc-string-face ((t (:foreground "#efca10"))))\r
+    (font-lock-type-face ((t (:foreground "PaleGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "LightGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+    (gnus-cite-attribution-face ((t (:italic t))))\r
+    (gnus-cite-face-1 ((t (:foreground "#dfdfff"))))\r
+    (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+    (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+    (gnus-cite-face-2 ((t (:foreground "light cyan"))))\r
+    (gnus-cite-face-3 ((t (:foreground "light yellow"))))\r
+    (gnus-cite-face-4 ((t (:foreground "light pink"))))\r
+    (gnus-cite-face-5 ((t (:foreground "pale green"))))\r
+    (gnus-cite-face-6 ((t (:foreground "beige"))))\r
+    (gnus-cite-face-7 ((t (:foreground "orange"))))\r
+    (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+    (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+    (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "aquamarine1"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "aquamarine1"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "aquamarine2"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "aquamarine2"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "aquamarine3"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "aquamarine3"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "aquamarine4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "aquamarine4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "PaleTurquoise"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "PaleTurquoise"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "turquoise"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "turquoise"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkTurquoise"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkTurquoise"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "#90f490"))))\r
+    (gnus-header-from-face ((t (:foreground "#aaffaa"))))\r
+    (gnus-header-name-face ((t (:foreground "#c7e3c7"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :foreground "yellow"))))\r
+    (gnus-header-subject-face ((t (:foreground "#a0f0a0"))))\r
+    (gnus-signature-face ((t (:italic t))))\r
+    (gnus-splash-face ((t (:foreground "Brown"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "SkyBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "PaleGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "pink"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "SkyBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "PaleGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "pink"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "SkyBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "PaleGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "pink"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (highlight ((t (:background "darkolivegreen"))))\r
+    (italic ((t (:italic t))))\r
+    (message-cited-text-face ((t (:foreground "#dfdfff"))))\r
+    (message-header-cc-face ((t (:bold t :foreground "#a0f0a0"))))\r
+    (message-header-name-face ((t (:foreground "#c7e3c7"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "yellow"))))\r
+    (message-header-other-face ((t (:foreground "#db9b9b"))))\r
+    (message-header-subject-face ((t (:foreground "#a0f0a0"))))\r
+    (message-header-to-face ((t (:bold t :foreground "#aaffaa"))))\r
+    (message-header-xheader-face ((t (:foreground "#e2e2ff"))))\r
+    (message-mml-face ((t (:foreground "#abdbab"))))\r
+    (message-separator-face ((t (:foreground "#dfdfff"))))\r
+    (modeline ((t (:background "White" :foreground "#00005a"))))\r
+    (modeline-buffer-id ((t (:background "White" :foreground "#00005a"))))\r
+    (modeline-mousable ((t (:background "White" :foreground "#00005a"))))\r
+    (modeline-mousable-minor-mode ((t (:background "White" :foreground "#00005a"))))\r
+    (paren-mismatch-face ((t (:background "DeepPink"))))\r
+    (paren-no-match-face ((t (:background "yellow"))))\r
+    (region ((t (:background "blue"))))\r
+    (primary-selection ((t (:background "blue"))))\r
+    (isearch ((t (:background "blue"))))\r
+    (secondary-selection ((t (:background "darkslateblue"))))\r
+    (underline ((t (:underline t))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "lime green"))))\r
+    (widget-field-face ((t (:background "dim gray"))))\r
+    (widget-inactive-face ((t (:foreground "light gray"))))\r
+    (widget-single-line-field-face ((t (:background "dim gray")))))))\r
+\r
+(defun color-theme-high-contrast ()\r
+  "High contrast color theme, maybe for the visually impaired.\r
+Watch out!  This will set a very large font-size!\r
+\r
+If you want to modify the font as well, you should customize variable\r
+`color-theme-legal-frame-parameters' to \"\\(color\\|mode\\|font\\|height\\|width\\)$\".\r
+The default setting will prevent color themes from installing specific\r
+fonts."\r
+  (interactive)\r
+  (color-theme-standard)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-install\r
+     '(color-theme-high-contrast\r
+       ((cursor-color . "red")\r
+       (width . 60)\r
+       (height . 25)\r
+       (background . dark))\r
+       (default ((t (:stipple nil :background "white" :foreground "black" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :weight bold :height 240 :width normal :family "adobe-courier"))))\r
+\r
+       (bold ((t (:bold t :underline t))))\r
+       (bold-italic ((t (:bold t :underline t))))\r
+       (font-lock-builtin-face ((t (:bold t :foreground "Red"))))\r
+       (font-lock-comment-face ((t (:bold t :foreground "Firebrick"))))\r
+       (font-lock-constant-face ((t (:bold t :underline t :foreground "Blue"))))\r
+       (font-lock-function-name-face ((t (:bold t :foreground "Blue"))))\r
+       (font-lock-keyword-face ((t (:bold t :foreground "Purple"))))\r
+       (font-lock-string-face ((t (:bold t :foreground "DarkGreen"))))\r
+       (font-lock-type-face ((t (:bold t :foreground "ForestGreen"))))\r
+       (font-lock-variable-name-face ((t (:bold t :foreground "DarkGoldenrod"))))\r
+       (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+       (highlight ((t (:background "black" :foreground "white" :bold 1))))\r
+       (info-menu-5 ((t (:underline t :bold t))))\r
+       (info-node ((t (:bold t))))\r
+       (info-xref ((t (:bold t ))))\r
+       (italic ((t (:bold t :underline t))))\r
+       (modeline ((t (:background "black" :foreground "white" :bold 1))))\r
+       (modeline-buffer-id ((t (:background "black" :foreground "white" :bold 1))))\r
+       (modeline-mousable ((t (:background "black" :foreground "white" :bold 1))))\r
+       (modeline-mousable-minor-mode ((t (:background "black" :foreground "white" :bold 1))))\r
+       (region ((t (:background "black" :foreground "white" :bold 1))))\r
+       (secondary-selection ((t (:background "black" :foreground "white" :bold 1))))\r
+       (underline ((t (:bold t :underline t))))))))\r
+\r
+(defun color-theme-infodoc ()\r
+  "Color theme by Frederic Giroud, created 2001-01-18.\r
+Black on wheat scheme.  Based on infodoc (xemacs variant distribution),\r
+with my favorit fontlock color."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-infodoc\r
+     ((background-color . "wheat")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#000000000000")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#000000000000")\r
+      (cursor-color . "red")\r
+      (foreground-color . "black")\r
+      (top-toolbar-shadow-color . "#ffffffffffff"))\r
+     nil\r
+    (default ((t (:bold t))))\r
+    (blue ((t (:bold t :foreground "blue"))))\r
+    (bold ((t (:background "wheat" :foreground "black"))))\r
+    (bold-italic ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (border-glyph ((t (:bold t))))\r
+    (calendar-today-face ((t (:underline t :bold t))))\r
+    (custom-button-face ((t (nil))))\r
+    (custom-changed-face ((t (:bold t :background "blue" :foreground "white"))))\r
+    (custom-documentation-face ((t (:bold t :background "wheat" :foreground "purple4"))))\r
+    (custom-face-tag-face ((t (:underline t :bold t))))\r
+    (custom-group-tag-face ((t (:underline t :bold t :background "wheat" :foreground "blue"))))\r
+    (custom-group-tag-face-1 ((t (:underline t :bold t :background "wheat" :foreground "red"))))\r
+    (custom-invalid-face ((t (:bold t :background "red" :foreground "yellow"))))\r
+    (custom-modified-face ((t (:bold t :background "blue" :foreground "white"))))\r
+    (custom-rogue-face ((t (:bold t :background "black" :foreground "pink"))))\r
+    (custom-saved-face ((t (:underline t :bold t))))\r
+    (custom-set-face ((t (:bold t :background "white" :foreground "blue"))))\r
+    (custom-state-face ((t (:bold t :background "wheat" :foreground "dark green"))))\r
+    (custom-variable-button-face ((t (:underline t))))\r
+    (custom-variable-tag-face ((t (:underline t :bold t :background "wheat" :foreground "blue"))))\r
+    (diary-face ((t (:bold t :foreground "red"))))\r
+    (display-time-mail-balloon-enhance-face ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (display-time-mail-balloon-gnus-group-face ((t (:bold t :background "wheat" :foreground "blue"))))\r
+    (display-time-time-balloon-face ((t (:bold t :background "light salmon" :foreground "dark green"))))\r
+    (font-lock-comment-face ((t (:bold t :background "wheat" :foreground "turquoise4"))))\r
+    (font-lock-doc-string-face ((t (:bold t :background "wheat" :foreground "purple4"))))\r
+    (font-lock-function-name-face ((t (:bold t :background "wheat" :foreground "blue4"))))\r
+    (font-lock-keyword-face ((t (:bold t :background "wheat" :foreground "dark orchid"))))\r
+    (font-lock-preprocessor-face ((t (:bold t :background "wheat" :foreground "orchid4"))))\r
+    (font-lock-reference-face ((t (:bold t :background "wheat" :foreground "red3"))))\r
+    (font-lock-string-face ((t (:bold t :background "wheat" :foreground "dark goldenrod"))))\r
+    (font-lock-type-face ((t (:bold t :background "wheat" :foreground "brown"))))\r
+    (font-lock-variable-name-face ((t (:bold t :background "wheat" :foreground "chocolate"))))\r
+    (font-lock-warning-face ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (gdb-arrow-face ((t (:bold t :background "LightGreen" :foreground "black"))))\r
+    (green ((t (:bold t :foreground "green"))))\r
+    (gui-button-face ((t (:bold t :background "wheat" :foreground "red"))))\r
+    (gui-element ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (highlight ((t (:bold t :background "darkseagreen2" :foreground "dark green"))))\r
+    (holiday-face ((t (:bold t :background "pink" :foreground "black"))))\r
+    (hproperty:but-face ((t (:bold t :background "wheat" :foreground "medium violet red"))))\r
+    (hproperty:flash-face ((t (:bold t :background "wheat" :foreground "gray80"))))\r
+    (hproperty:highlight-face ((t (:bold t :background "wheat" :foreground "red"))))\r
+    (hproperty:item-face ((t (:bold t))))\r
+    (isearch ((t (:bold t :background "pale turquoise" :foreground "blue"))))\r
+    (italic ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (left-margin ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (list-mode-item-selected ((t (:bold t :background "gray68" :foreground "black"))))\r
+    (message-cited-text ((t (:bold t :background "wheat" :foreground "brown"))))\r
+    (message-header-contents ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (message-headers ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (message-highlighted-header-contents ((t (:bold t :background "wheat" :foreground "blue"))))\r
+    (message-url ((t (nil))))\r
+    (modeline ((t (:bold t :background "light salmon" :foreground "dark green"))))\r
+    (modeline-buffer-id ((t (:bold t :background "light salmon" :foreground "blue4"))))\r
+    (modeline-mousable ((t (:bold t :background "light salmon" :foreground "firebrick"))))\r
+    (modeline-mousable-minor-mode ((t (:bold t :background "light salmon" :foreground "green4"))))\r
+    (pointer ((t (:bold t :background "wheat" :foreground "red"))))\r
+    (primary-selection ((t (:bold t :background "medium sea green"))))\r
+    (red ((t (:bold t :foreground "red"))))\r
+    (right-margin ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (secondary-selection ((t (:bold t :background "paleturquoise" :foreground "black"))))\r
+    (shell-input-face ((t (:bold t :background "wheat" :foreground "blue"))))\r
+    (shell-option-face ((t (:bold t :background "wheat" :foreground "turquoise4"))))\r
+    (shell-output-2-face ((t (:bold t :background "wheat" :foreground "dark goldenrod"))))\r
+    (shell-output-3-face ((t (:bold t :background "wheat" :foreground "dark goldenrod"))))\r
+    (shell-output-face ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (shell-prompt-face ((t (:bold t :background "wheat" :foreground "dark orchid"))))\r
+    (text-cursor ((t (:bold t :background "red" :foreground "wheat"))))\r
+    (toolbar ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (underline ((t (:underline t :bold t :background "wheat" :foreground "black"))))\r
+    (vertical-divider ((t (:bold t))))\r
+    (widget-button-face ((t (nil))))\r
+    (widget-button-pressed-face ((t (:bold t :background "wheat" :foreground "red"))))\r
+    (widget-documentation-face ((t (:bold t :background "wheat" :foreground "dark green"))))\r
+    (widget-field-face ((t (:bold t :background "gray85"))))\r
+    (widget-inactive-face ((t (:bold t :background "wheat" :foreground "dim gray"))))\r
+    (x-face ((t (:bold t :background "wheat" :foreground "black"))))\r
+    (yellow ((t (:bold t :foreground "yellow"))))\r
+    (zmacs-region ((t (:bold t :background "lightyellow" :foreground "darkgreen")))))))\r
+\r
+(defun color-theme-classic ()\r
+  "Color theme by Frederic Giroud, created 2001-01-18.\r
+AntiqueWhite on darkslategrey scheme.  Based on Gnome 2, with my favorit\r
+color foreground-color and fontlock color."\r
+  (interactive)\r
+  (color-theme-blue-gnus)\r
+  (let ((color-theme-is-cumulative t))\r
+    (color-theme-install\r
+     '(color-theme-classic\r
+       ((foreground-color . "AntiqueWhite")\r
+       (background-color . "darkslategrey")\r
+       (mouse-color . "Grey")\r
+       (cursor-color . "Red")\r
+       (border-color . "black")\r
+       (background-mode . dark))\r
+       ((apropos-keybinding-face . underline)\r
+       (apropos-label-face . italic)\r
+       (apropos-match-face . secondary-selection)\r
+       (apropos-property-face . bold-italic)\r
+       (apropos-symbol-face . info-xref)\r
+       (goto-address-mail-face . message-header-to-face)\r
+       (goto-address-mail-mouse-face . secondary-selection)\r
+       (goto-address-url-face . info-xref)\r
+       (goto-address-url-mouse-face . highlight)\r
+       (list-matching-lines-face . bold)\r
+       (view-highlight-face . highlight))\r
+       (default ((t (nil))))\r
+       (bold ((t (:bold t))))\r
+       (bold-italic ((t (:italic t :bold t :foreground "beige"))))\r
+       (calendar-today-face ((t (:underline t))))\r
+       (cperl-array-face ((t (:foreground "Yellow"))))\r
+       (cperl-hash-face ((t (:foreground "White"))))\r
+       (cperl-nonoverridable-face ((t (:foreground "SkyBlue"))))\r
+       (custom-button-face ((t (:underline t :foreground "MediumSlateBlue"))))\r
+       (custom-documentation-face ((t (:foreground "Grey"))))\r
+       (custom-group-tag-face ((t (:foreground "MediumAquamarine"))))\r
+       (custom-state-face ((t (:foreground "LightSalmon"))))\r
+       (custom-variable-tag-face ((t (:foreground "Aquamarine"))))\r
+       (diary-face ((t (:foreground "IndianRed"))))\r
+       (erc-action-face ((t (:bold t))))\r
+       (erc-bold-face ((t (:bold t))))\r
+       (erc-default-face ((t (nil))))\r
+       (erc-direct-msg-face ((t (:foreground "LightSalmon"))))\r
+       (erc-error-face ((t (:bold t :foreground "IndianRed"))))\r
+       (erc-input-face ((t (:foreground "Beige"))))\r
+       (erc-inverse-face ((t (:background "wheat" :foreground "darkslategrey"))))\r
+       (erc-notice-face ((t (:foreground "MediumAquamarine"))))\r
+       (erc-pal-face ((t (:foreground "pale green"))))\r
+       (erc-prompt-face ((t (:foreground "MediumAquamarine"))))\r
+       (erc-underline-face ((t (:underline t))))\r
+       (eshell-ls-archive-face ((t (:bold t :foreground "IndianRed"))))\r
+       (eshell-ls-backup-face ((t (:foreground "Grey"))))\r
+       (eshell-ls-clutter-face ((t (:foreground "DimGray"))))\r
+       (eshell-ls-directory-face ((t (:bold t :foreground "MediumSlateBlue"))))\r
+       (eshell-ls-executable-face ((t (:foreground "Coral"))))\r
+       (eshell-ls-missing-face ((t (:foreground "black"))))\r
+       (eshell-ls-picture-face ((t (:foreground "Violet"))))\r
+       (eshell-ls-product-face ((t (:foreground "LightSalmon"))))\r
+       (eshell-ls-readonly-face ((t (:foreground "Aquamarine"))))\r
+       (eshell-ls-special-face ((t (:foreground "Gold"))))\r
+       (eshell-ls-symlink-face ((t (:foreground "White"))))\r
+       (eshell-ls-unreadable-face ((t (:foreground "DimGray"))))\r
+       (eshell-prompt-face ((t (:foreground "MediumAquamarine"))))\r
+       (font-lock-builtin-face ((t (:bold t :foreground "PaleGreen"))))\r
+       (font-lock-comment-face ((t (:foreground "tomato3"))))\r
+       (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+       (font-lock-doc-string-face ((t (:foreground "LightSalmon3"))))\r
+       (font-lock-function-name-face ((t (:foreground "SteelBlue1"))))\r
+       (font-lock-keyword-face ((t (:foreground "cyan1"))))\r
+       (font-lock-reference-face ((t (:foreground "LightSalmon2"))))\r
+       (font-lock-string-face ((t (:foreground "LightSalmon3"))))\r
+       (font-lock-type-face ((t (:foreground "PaleGreen3"))))\r
+       (font-lock-variable-name-face ((t (:foreground "khaki1"))))\r
+       (font-lock-warning-face ((t (:bold t :foreground "IndianRed"))))\r
+       (font-lock-preprocessor-face ((t (:foreground "SkyBlue3"))))\r
+       (widget-field-face ((t (:background "DarkCyan"))))\r
+       (custom-group-tag-face ((t(:foreground "brown" :underline t))))\r
+       (custom-state-face ((t (:foreground "khaki"))))\r
+       (highlight ((t (:background "PaleGreen" :foreground "DarkGreen"))))\r
+       (highline-face ((t (:background "SeaGreen"))))\r
+       (holiday-face ((t (:background "DimGray"))))\r
+       (info-menu-5 ((t (:underline t))))\r
+       (info-node ((t (:underline t :bold t :foreground "DodgerBlue1"))))\r
+       (info-xref ((t (:underline t :foreground "DodgerBlue1"))))\r
+       (isearch ((t (:foreground "red" :background "CornflowerBlue"))))\r
+       (italic ((t (:italic t))))\r
+       (modeline ((t (:background "LightSlateGray" :foreground "AntiqueWhite"))))\r
+       (modeline-buffer-id ((t (:background "LightSlateGray" :foreground "DarkBlue"))))\r
+       (modeline-mousable ((t (:background "LightSlateGray" :foreground "firebrick"))))\r
+       (modeline-mousable-minor-mode ((t (:background "LightSlateGray" :foreground "wheat"))))\r
+       (region ((t (:background "dark cyan" :foreground "cyan"))))\r
+       (secondary-selection ((t (:background "Aquamarine" :foreground "SlateBlue"))))\r
+       (show-paren-match-face ((t (:background "Aquamarine" :foreground "SlateBlue"))))\r
+       (show-paren-mismatch-face ((t (:background "Red" :foreground "White"))))\r
+       (underline ((t (:underline t))))\r
+       (widget-field-face ((t (:foreground "LightBlue"))))\r
+       (widget-inactive-face ((t (:foreground "DimGray"))))\r
+       (widget-single-line-field-face ((t (:foreground "LightBlue"))))\r
+       (woman-bold-face ((t (:bold t))))\r
+       (woman-italic-face ((t (:foreground "beige"))))\r
+       (woman-unknown-face ((t (:foreground "LightSalmon"))))))))\r
+\r
+(defun color-theme-scintilla ()\r
+  "Color theme by Gordon Messmer, created 2001-02-07.\r
+Based on the Scintilla editor.\r
+\r
+If you want to modify the font as well, you should customize variable\r
+`color-theme-legal-frame-parameters' to \"\\(color\\|mode\\|font\\|height\\|width\\)$\".\r
+The default setting will prevent color themes from installing specific\r
+fonts."\r
+  (interactive)\r
+  (color-theme-install\r
+   ;; The light editor style doesn't seem to look right with\r
+   ;; the same font that works in the dark editor style.\r
+   ;; Dark letters on light background just isn't as visible.\r
+   '(color-theme-scintilla\r
+     ((font . "-monotype-courier new-bold-r-normal-*-*-140-*-*-m-*-iso8859-1")\r
+      (width  . 95)\r
+      (height . 40)\r
+      (background-color . "white")\r
+      (foreground-color . "black")\r
+      (background-mode . light)\r
+      (mouse-color . "grey15")\r
+      (cursor-color . "grey15"))\r
+     (default ((t nil)))\r
+     (font-lock-comment-face ((t (:italic t :foreground "ForestGreen"))))\r
+     (font-lock-string-face ((t (:foreground "DarkMagenta"))))\r
+     (font-lock-keyword-face ((t (:foreground "NavyBlue"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "VioletRed"))))\r
+     (font-lock-constant-face ((t (:foreground "Blue"))))\r
+     (font-lock-type-face ((t (:foreground "NavyBlue"))))\r
+     (font-lock-variable-name-face ((t (:foreground "DarkCyan"))))\r
+     (font-lock-function-name-face ((t (:foreground "DarkCyan"))))\r
+     (font-lock-builtin-face ((t (:foreground "NavyBlue"))))\r
+     (highline-face ((t (:background "Grey95"))))\r
+     (show-paren-match-face ((t (:background "Grey80"))))\r
+     (region ((t (:background "Grey80"))))\r
+     (highlight ((t (:foreground "ForestGreen"))))\r
+     (secondary-selection ((t (:background "NavyBlue" :foreground "white"))))\r
+     (widget-field-face ((t (:background "NavyBlue"))))\r
+     (widget-single-line-field-face ((t (:background "RoyalBlue")))))) )\r
+\r
+(defun color-theme-gtk-ide ()\r
+  "Color theme by Gordon Messmer, created 2001-02-07.\r
+Inspired by a GTK IDE whose name I've forgotten.\r
+\r
+If you want to modify the font as well, you should customize variable\r
+`color-theme-legal-frame-parameters' to \"\\(color\\|mode\\|font\\|height\\|width\\)$\".\r
+The default setting will prevent color themes from installing specific\r
+fonts."\r
+  ;; The light editor style doesn't seem to look right with\r
+  ;; the same font that works in the dark editor style.\r
+  ;; Dark letters on light background just isn't as visible.\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-gtk-ide\r
+     ((font . "-monotype-courier new-medium-r-normal-*-*-120-*-*-m-*-iso8859-15")\r
+      (width  . 95)\r
+      (height . 45)\r
+      (background-color . "white")\r
+      (foreground-color . "black")\r
+      (background-mode . light)\r
+      (mouse-color . "grey15")\r
+      (cursor-color . "grey15"))\r
+     (default ((t nil)))\r
+     (font-lock-comment-face ((t (:italic t :foreground "grey55"))))\r
+     (font-lock-string-face ((t (:foreground "DarkRed"))))\r
+     (font-lock-keyword-face ((t (:foreground "DarkBlue"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "VioletRed"))))\r
+     (font-lock-constant-face ((t (:foreground "OliveDrab"))))\r
+     (font-lock-type-face ((t (:foreground "SteelBlue4"))))\r
+     (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+     (font-lock-function-name-face ((t (:foreground "SlateBlue"))))\r
+     (font-lock-builtin-face ((t (:foreground "ForestGreen"))))\r
+     (highline-face ((t (:background "grey95"))))\r
+     (show-paren-match-face ((t (:background "grey80"))))\r
+     (region ((t (:background "grey80"))))\r
+     (highlight ((t (:background "LightSkyBlue"))))\r
+     (secondary-selection ((t (:background "grey55"))))\r
+     (widget-field-face ((t (:background "navy"))))\r
+     (widget-single-line-field-face ((t (:background "royalblue")))))) )\r
+\r
+(defun color-theme-midnight ()\r
+  "Color theme by Gordon Messmer, created 2001-02-07.\r
+A color theme inspired by a certain IDE for Windows.  It's all from memory,\r
+since I only used that software in college.\r
+\r
+If you want to modify the font as well, you should customize variable\r
+`color-theme-legal-frame-parameters' to \"\\(color\\|mode\\|font\\|height\\|width\\)$\".\r
+The default setting will prevent color themes from installing specific\r
+fonts."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-midnight\r
+     ((font . "fixed")\r
+      (width . 130)\r
+      (height . 50)\r
+      (background-color . "black")\r
+      (foreground-color . "grey85")\r
+      (background-mode . dark)\r
+      (mouse-color . "grey85")\r
+      (cursor-color . "grey85"))\r
+     (default ((t (nil))))\r
+     (font-lock-comment-face ((t (:italic t :foreground "grey60"))))\r
+     (font-lock-string-face ((t (:foreground "Magenta"))))\r
+     (font-lock-keyword-face ((t (:foreground "Cyan"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+     (font-lock-constant-face ((t (:foreground "OliveDrab"))))\r
+     (font-lock-type-face ((t (:foreground "DarkCyan"))))\r
+     (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+     (font-lock-function-name-face ((t (:foreground "SlateBlue"))))\r
+     (font-lock-builtin-face ((t (:foreground "SkyBlue"))))\r
+     (highline-face ((t (:background "grey12"))))\r
+     (setnu-line-number-face ((t (:background "Grey15" :foreground "White" :bold t))))\r
+     (show-paren-match-face ((t (:background "grey30"))))\r
+     (region ((t (:background "grey15"))))\r
+     (highlight ((t (:background "blue"))))\r
+     (secondary-selection ((t (:background "navy"))))\r
+     (widget-field-face ((t (:background "navy"))))\r
+     (widget-single-line-field-face ((t (:background "royalblue")))))) )\r
+\r
+(defun color-theme-jedit-grey ()\r
+  "Color theme by Gordon Messmer, created 2001-02-07.\r
+Based on a screenshot of jedit.\r
+\r
+If you want to modify the font as well, you should customize variable\r
+`color-theme-legal-frame-parameters' to \"\\(color\\|mode\\|font\\|height\\|width\\)$\".\r
+The default setting will prevent color themes from installing specific\r
+fonts."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-jedit-grey\r
+     ((font . "fixed")\r
+      (width . 130)\r
+      (height . 50)\r
+      (background-color . "grey77")\r
+      (foreground-color . "black")\r
+      (background-mode . light)\r
+      (mouse-color . "black")\r
+      (cursor-color . "black"))\r
+     (default ((t (nil))))\r
+     (font-lock-comment-face ((t (:italic t :foreground "RoyalBlue4"))))\r
+     (font-lock-string-face ((t (:foreground "Gold4"))))\r
+     (font-lock-keyword-face ((t (:bold t :foreground "DarkRed"))))\r
+     (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+     (font-lock-constant-face ((t (:foreground "DarkCyan"))))\r
+     (font-lock-type-face ((t (:foreground "DarkRed"))))\r
+     (font-lock-function-name-face ((t (:foreground "Green4"))))\r
+     (font-lock-builtin-face ((t (:bold t :foreground "DarkRed"))))\r
+     (highline-face ((t (:background "grey84"))))\r
+     (setnu-line-number-face ((t (:background "White" :foreground "MediumPurple3" :italic t))))\r
+     (show-paren-match-face ((t (:background "grey60"))))\r
+     (region ((t (:background "grey70"))))\r
+     (highlight ((t (:background "grey90"))))\r
+     (secondary-selection ((t (:background "white"))))\r
+     (widget-field-face ((t (:background "royalblue"))))\r
+     (widget-single-line-field-face ((t (:background "royalblue")))))) )\r
+\r
+(defun color-theme-snow ()\r
+  "Color theme by Nicolas Rist, created 2001-03-08.\r
+Black on gainsboro.  In Emacs, the text background is a shade darker\r
+than the frame background: Gainsboro instead of snow.  This makes the\r
+structure of the text clearer without being too agressive on the eyes.\r
+On XEmacs, this doesn't really work as the frame and the default face\r
+allways use the same foreground and background colors.\r
+The color theme includes gnus, message, font-lock, sgml, and speedbar."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-snow\r
+     ((background-color . "snow2")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "RoyalBlue2")\r
+      (foreground-color . "black")\r
+      (mouse-color . "black"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (:background "gainsboro" :foreground "dark slate gray"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (custom-button-face ((t (:background "gainsboro" :foreground "dark cyan"))))\r
+    (custom-documentation-face ((t (:background "gainsboro"))))\r
+    (diary-face ((t (:foreground "red"))))\r
+    (fg:black ((t (:foreground "black"))))\r
+    (font-lock-builtin-face ((t (:background "gainsboro" :foreground "medium orchid"))))\r
+    (font-lock-comment-face ((t (:background "gainsboro" :foreground "SteelBlue3"))))\r
+    (font-lock-constant-face ((t (:background "gainsboro" :foreground "orange3"))))\r
+    (font-lock-function-name-face ((t (:background "gainsboro" :foreground "blue3"))))\r
+    (font-lock-keyword-face ((t (:background "gainsboro" :foreground "red3"))))\r
+    (font-lock-string-face ((t (:background "gainsboro" :foreground "SpringGreen3"))))\r
+    (font-lock-type-face ((t (:background "gainsboro" :foreground "dark cyan"))))\r
+    (font-lock-variable-name-face ((t (:background "gainsboro" :foreground "purple2"))))\r
+    (font-lock-warning-face ((t (:bold t :background "gainsboro" :foreground "red"))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-splash-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "firebrick"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (gui-button-face ((t (:foreground "light grey"))))\r
+    (highlight ((t (:background "LightSteelBlue1"))))\r
+    (holiday-face ((t (:background "pink"))))\r
+    (ibuffer-marked-face ((t (:foreground "red"))))\r
+    (italic ((t (:italic t))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "dark slate gray" :foreground "gainsboro"))))\r
+    (modeline-buffer-id ((t (:background "dark slate gray" :foreground "gainsboro"))))\r
+    (modeline-mousable ((t (:background "dark slate gray" :foreground "gainsboro"))))\r
+    (modeline-mousable-minor-mode ((t (:background "dark slate gray" :foreground "gainsboro"))))\r
+    (region ((t (:background "lavender"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (sgml-comment-face ((t (:foreground "dark green"))))\r
+    (sgml-doctype-face ((t (:foreground "maroon"))))\r
+    (sgml-end-tag-face ((t (:foreground "blue2"))))\r
+    (sgml-entity-face ((t (:foreground "red2"))))\r
+    (sgml-ignored-face ((t (:background "gray90" :foreground "maroon"))))\r
+    (sgml-ms-end-face ((t (:foreground "maroon"))))\r
+    (sgml-ms-start-face ((t (:foreground "maroon"))))\r
+    (sgml-pi-face ((t (:foreground "maroon"))))\r
+    (sgml-sgml-face ((t (:foreground "maroon"))))\r
+    (sgml-short-ref-face ((t (:foreground "goldenrod"))))\r
+    (sgml-start-tag-face ((t (:foreground "blue2"))))\r
+    (show-paren-match-face ((t (:background "SlateGray1"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (speedbar-button-face ((t (:foreground "green4"))))\r
+    (speedbar-directory-face ((t (:foreground "blue4"))))\r
+    (speedbar-file-face ((t (:foreground "cyan4"))))\r
+    (speedbar-highlight-face ((t (:background "dark turquoise" :foreground "white"))))\r
+    (speedbar-selected-face ((t (:underline t :foreground "red"))))\r
+    (speedbar-tag-face ((t (:foreground "brown"))))\r
+    (underline ((t (:underline t)))))))\r
+\r
+(defun color-theme-montz ()\r
+  "Color theme by Brady Montz, created 2001-03-08.\r
+Black on Gray.\r
+Includes dired, bbdb, font-lock, gnus, message, viper, and widget."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-montz\r
+     ((background-color . "gray80")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#cccccccccccc")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#7a7a7a7a7a7a")\r
+      (cursor-color . "Red3")\r
+      (foreground-color . "black")\r
+      (top-toolbar-shadow-color . "#f5f5f5f5f5f5")\r
+      (viper-saved-cursor-color-in-replace-mode . "Red3"))\r
+     ((gnus-mouse-face . highlight)\r
+      (paren-match-face . paren-face-match)\r
+      (paren-mismatch-face . paren-face-mismatch)\r
+      (paren-no-match-face . paren-face-no-match)\r
+      (smiley-mouse-face . highlight))\r
+    (default ((t (nil))))\r
+    (bbdb-company ((t (:italic t))))\r
+    (bbdb-field-name ((t (:bold t))))\r
+    (bbdb-field-value ((t (nil))))\r
+    (bbdb-name ((t (:underline t))))\r
+    (blue ((t (:foreground "blue"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (border-glyph ((t (nil))))\r
+    (dired-face-boring ((t (:foreground "Gray65"))))\r
+    (dired-face-directory ((t (:bold t))))\r
+    (dired-face-executable ((t (:foreground "SeaGreen"))))\r
+    (dired-face-flagged ((t (:background "LightSlateGray"))))\r
+    (dired-face-marked ((t (:background "PaleVioletRed"))))\r
+    (dired-face-permissions ((t (:background "grey75" :foreground "black"))))\r
+    (dired-face-setuid ((t (:foreground "Red"))))\r
+    (dired-face-socket ((t (:foreground "magenta"))))\r
+    (dired-face-symlink ((t (:foreground "cyan"))))\r
+    (display-time-mail-balloon-enhance-face ((t (:background "orange"))))\r
+    (display-time-mail-balloon-gnus-group-face ((t (:foreground "blue"))))\r
+    (display-time-time-balloon-face ((t (:foreground "red"))))\r
+    (font-lock-builtin-face ((t (:foreground "red3"))))\r
+    (font-lock-comment-face ((t (:foreground "blue"))))\r
+    (font-lock-constant-face ((t (:foreground "red3"))))\r
+    (font-lock-doc-string-face ((t (:foreground "mediumvioletred"))))\r
+    (font-lock-function-name-face ((t (:foreground "firebrick"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "black"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "blue3"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-string-face ((t (:foreground "mediumvioletred"))))\r
+    (font-lock-type-face ((t (:foreground "darkgreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "black"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (gnus-cite-attribution-face ((t (:italic t))))\r
+    (gnus-cite-face-1 ((t (:foreground "MidnightBlue"))))\r
+    (gnus-cite-face-10 ((t (:foreground "medium purple"))))\r
+    (gnus-cite-face-11 ((t (:foreground "turquoise"))))\r
+    (gnus-cite-face-2 ((t (:foreground "firebrick"))))\r
+    (gnus-cite-face-3 ((t (:foreground "dark green"))))\r
+    (gnus-cite-face-4 ((t (:foreground "OrangeRed"))))\r
+    (gnus-cite-face-5 ((t (:foreground "dark khaki"))))\r
+    (gnus-cite-face-6 ((t (:foreground "dark violet"))))\r
+    (gnus-cite-face-7 ((t (:foreground "SteelBlue4"))))\r
+    (gnus-cite-face-8 ((t (:foreground "magenta"))))\r
+    (gnus-cite-face-9 ((t (:foreground "violet"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:bold t))))\r
+    (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "indianred4"))))\r
+    (gnus-header-from-face ((t (:foreground "red3"))))\r
+    (gnus-header-name-face ((t (:foreground "maroon"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :foreground "MidnightBlue"))))\r
+    (gnus-header-subject-face ((t (:foreground "red4"))))\r
+    (gnus-picons-face ((t (:background "white" :foreground "black"))))\r
+    (gnus-picons-xbm-face ((t (:background "white" :foreground "black"))))\r
+    (gnus-signature-face ((t (:italic t))))\r
+    (gnus-splash-face ((t (:foreground "Brown"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "firebrick"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (gnus-x-face ((t (:background "white" :foreground "black"))))\r
+    (green ((t (:foreground "green"))))\r
+    (gui-button-face ((t (:background "grey75" :foreground "black"))))\r
+    (gui-element ((t (nil))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (info-node ((t (:bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (isearch ((t (:background "paleturquoise"))))\r
+    (italic ((t (:italic t))))\r
+    (left-margin ((t (nil))))\r
+    (list-mode-item-selected ((t (:background "gray68" :foreground "black"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (nil))))\r
+    (modeline-buffer-id ((t (:background "Gray80" :foreground "blue4"))))\r
+    (modeline-mousable ((t (:background "Gray80" :foreground "firebrick"))))\r
+    (modeline-mousable-minor-mode ((t (:background "Gray80" :foreground "green4"))))\r
+    (paren-face-match ((t (:background "turquoise"))))\r
+    (paren-face-mismatch ((t (:background "purple" :foreground "white"))))\r
+    (paren-face-no-match ((t (:background "yellow" :foreground "black"))))\r
+    (pointer ((t (nil))))\r
+    (primary-selection ((t (:background "gray65"))))\r
+    (red ((t (:foreground "red"))))\r
+    (right-margin ((t (nil))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (text-cursor ((t (:background "Red3" :foreground "gray80"))))\r
+    (toolbar ((t (nil))))\r
+    (underline ((t (:underline t))))\r
+    (vertical-divider ((t (nil))))\r
+    (viper-minibuffer-emacs-face ((t (:background "gray80" :foreground "black"))))\r
+    (viper-minibuffer-insert-face ((t (:background "gray80" :foreground "black"))))\r
+    (viper-minibuffer-vi-face ((t (:background "gray80" :foreground "black"))))\r
+    (viper-replace-overlay-face ((t (:background "black" :foreground "white"))))\r
+    (viper-search-face ((t (:background "black" :foreground "white"))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (yellow ((t (:foreground "yellow"))))\r
+    (zmacs-region ((t (:background "black" :foreground "white")))))))\r
+\r
+(defun color-theme-aalto-light ()\r
+  "Color theme by Jari Aalto, created 2001-03-08.\r
+Black on light yellow.\r
+Used for Win32 on a Nokia446Xpro monitor.\r
+Includes cvs, font-lock, gnus, message, sgml, widget"\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-aalto-light\r
+     ((background-color . "#FFFFE0")\r
+      (background-mode . light)\r
+      (border-color . "black")\r
+      (cursor-color . "black")\r
+      (foreground-color . "black")\r
+      (mouse-color . "LawnGreen"))\r
+     ((gnus-mouse-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (tinyreplace-:face . highlight)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (cvs-filename-face ((t (:foreground "blue4"))))\r
+    (cvs-handled-face ((t (:foreground "pink"))))\r
+    (cvs-header-face ((t (:bold t :foreground "blue4"))))\r
+    (cvs-marked-face ((t (:bold t :foreground "green3"))))\r
+    (cvs-msg-face ((t (:italic t))))\r
+    (cvs-need-action-face ((t (:foreground "orange"))))\r
+    (cvs-unknown-face ((t (:foreground "red"))))\r
+    (diary-face ((t (:foreground "red"))))\r
+    (eshell-test-failed-face ((t (:bold t :foreground "OrangeRed"))))\r
+    (eshell-test-ok-face ((t (:bold t :foreground "Green"))))\r
+    (font-lock-builtin-face ((t (:foreground "Orchid"))))\r
+    (font-lock-comment-face ((t (:foreground "Firebrick"))))\r
+    (font-lock-constant-face ((t (:foreground "CadetBlue"))))\r
+    (font-lock-function-name-face ((t (:foreground "Blue"))))\r
+    (font-lock-keyword-face ((t (:foreground "Purple"))))\r
+    (font-lock-string-face ((t (:foreground "RosyBrown"))))\r
+    (font-lock-type-face ((t (:foreground "ForestGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "DarkGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (gnus-emphasis-bold ((t (:bold t))))\r
+    (gnus-emphasis-bold-italic ((t (:italic t :bold t))))\r
+    (gnus-emphasis-highlight-words ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-emphasis-italic ((t (:italic t))))\r
+    (gnus-emphasis-underline ((t (:underline t))))\r
+    (gnus-emphasis-underline-bold ((t (:underline t :bold t))))\r
+    (gnus-emphasis-underline-bold-italic ((t (:underline t :italic t :bold t))))\r
+    (gnus-emphasis-underline-italic ((t (:underline t :italic t))))\r
+    (gnus-group-mail-1-empty-face ((t (:foreground "DeepPink3"))))\r
+    (gnus-group-mail-1-face ((t (:bold t :foreground "DeepPink3"))))\r
+    (gnus-group-mail-2-empty-face ((t (:foreground "HotPink3"))))\r
+    (gnus-group-mail-2-face ((t (:bold t :foreground "HotPink3"))))\r
+    (gnus-group-mail-3-empty-face ((t (:foreground "magenta4"))))\r
+    (gnus-group-mail-3-face ((t (:bold t :foreground "magenta4"))))\r
+    (gnus-group-mail-low-empty-face ((t (:foreground "DeepPink4"))))\r
+    (gnus-group-mail-low-face ((t (:bold t :foreground "DeepPink4"))))\r
+    (gnus-group-news-1-empty-face ((t (:foreground "ForestGreen"))))\r
+    (gnus-group-news-1-face ((t (:bold t :foreground "ForestGreen"))))\r
+    (gnus-group-news-2-empty-face ((t (:foreground "CadetBlue4"))))\r
+    (gnus-group-news-2-face ((t (:bold t :foreground "CadetBlue4"))))\r
+    (gnus-group-news-3-empty-face ((t (nil))))\r
+    (gnus-group-news-3-face ((t (:bold t))))\r
+    (gnus-group-news-4-empty-face ((t (nil))))\r
+    (gnus-group-news-4-face ((t (:bold t))))\r
+    (gnus-group-news-5-empty-face ((t (nil))))\r
+    (gnus-group-news-5-face ((t (:bold t))))\r
+    (gnus-group-news-6-empty-face ((t (nil))))\r
+    (gnus-group-news-6-face ((t (:bold t))))\r
+    (gnus-group-news-low-empty-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-group-news-low-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-header-content-face ((t (:italic t :foreground "indianred4"))))\r
+    (gnus-header-from-face ((t (:foreground "red3"))))\r
+    (gnus-header-name-face ((t (:foreground "maroon"))))\r
+    (gnus-header-newsgroups-face ((t (:italic t :foreground "MidnightBlue"))))\r
+    (gnus-header-subject-face ((t (:foreground "red4"))))\r
+    (gnus-signature-face ((t (:italic t))))\r
+    (gnus-splash-face ((t (:foreground "Brown"))))\r
+    (gnus-summary-cancelled-face ((t (:background "black" :foreground "yellow"))))\r
+    (gnus-summary-high-ancient-face ((t (:bold t :foreground "RoyalBlue"))))\r
+    (gnus-summary-high-read-face ((t (:bold t :foreground "DarkGreen"))))\r
+    (gnus-summary-high-ticked-face ((t (:bold t :foreground "firebrick"))))\r
+    (gnus-summary-high-unread-face ((t (:bold t))))\r
+    (gnus-summary-low-ancient-face ((t (:italic t :foreground "RoyalBlue"))))\r
+    (gnus-summary-low-read-face ((t (:italic t :foreground "DarkGreen"))))\r
+    (gnus-summary-low-ticked-face ((t (:italic t :foreground "firebrick"))))\r
+    (gnus-summary-low-unread-face ((t (:italic t))))\r
+    (gnus-summary-normal-ancient-face ((t (:foreground "RoyalBlue"))))\r
+    (gnus-summary-normal-read-face ((t (:foreground "DarkGreen"))))\r
+    (gnus-summary-normal-ticked-face ((t (:foreground "firebrick"))))\r
+    (gnus-summary-normal-unread-face ((t (nil))))\r
+    (gnus-summary-selected-face ((t (:underline t))))\r
+    (highlight ((t (:background "darkseagreen2"))))\r
+    (holiday-face ((t (:background "pink"))))\r
+    (info-menu-5 ((t (:underline t))))\r
+    (info-node ((t (:italic t :bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (italic ((t (:italic t))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "black" :foreground "white"))))\r
+    (modeline-buffer-id ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable ((t (:background "black" :foreground "white"))))\r
+    (modeline-mousable-minor-mode ((t (:background "black" :foreground "white"))))\r
+    (region ((t (:background "gray"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (sgml-comment-face ((t (:foreground "dark turquoise"))))\r
+    (sgml-doctype-face ((t (:foreground "red"))))\r
+    (sgml-end-tag-face ((t (:foreground "blue"))))\r
+    (sgml-entity-face ((t (:foreground "magenta"))))\r
+    (sgml-ignored-face ((t (:background "gray60" :foreground "gray40"))))\r
+    (sgml-ms-end-face ((t (:foreground "green"))))\r
+    (sgml-ms-start-face ((t (:foreground "green"))))\r
+    (sgml-pi-face ((t (:foreground "lime green"))))\r
+    (sgml-sgml-face ((t (:foreground "brown"))))\r
+    (sgml-short-ref-face ((t (:foreground "deep sky blue"))))\r
+    (sgml-start-tag-face ((t (:foreground "blue"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (underline ((t (:underline t))))\r
+    (widget-button-face ((t (:bold t))))\r
+    (widget-button-pressed-face ((t (:foreground "red"))))\r
+    (widget-documentation-face ((t (:foreground "dark green"))))\r
+    (widget-field-face ((t (:background "gray85"))))\r
+    (widget-inactive-face ((t (:foreground "dim gray"))))\r
+    (widget-single-line-field-face ((t (:background "gray85")))))))\r
+\r
+(defun color-theme-aalto-dark ()\r
+  "Color theme by Jari Aalto, created 2001-03-08.\r
+White on Deep Sky Blue 3.\r
+Used for Unix Exceed on a Nokia446Xpro monitor.\r
+Includes font-lock, info, and message."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-aalto-dark\r
+     ((background-color . "DeepSkyBlue3")\r
+      (background-mode . dark)\r
+      (border-color . "black")\r
+      (cursor-color . "yellow")\r
+      (foreground-color . "white")\r
+      (mouse-color . "black"))\r
+     ((ispell-highlight-face . highlight)\r
+      (list-matching-lines-face . bold)\r
+      (tinyreplace-:face . highlight)\r
+      (view-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (bold ((t (:bold t :background "blue3" :foreground "white"))))\r
+    (bold-italic ((t (:italic t :bold t :foreground "blue3"))))\r
+    (calendar-today-face ((t (:underline t))))\r
+    (diary-face ((t (:foreground "red"))))\r
+    (font-lock-builtin-face ((t (:foreground "LightSteelBlue"))))\r
+    (font-lock-comment-face ((t (:foreground "OrangeRed"))))\r
+    (font-lock-constant-face ((t (:foreground "Aquamarine"))))\r
+    (font-lock-function-name-face ((t (:foreground "LightSkyBlue"))))\r
+    (font-lock-keyword-face ((t (:foreground "Cyan"))))\r
+    (font-lock-string-face ((t (:foreground "LightSalmon"))))\r
+    (font-lock-type-face ((t (:foreground "PaleGreen"))))\r
+    (font-lock-variable-name-face ((t (:foreground "LightGoldenrod"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Pink"))))\r
+    (highlight ((t (:background "blue3" :foreground "white"))))\r
+    (holiday-face ((t (:background "pink"))))\r
+    (info-menu-5 ((t (:underline t))))\r
+    (info-node ((t (:italic t :bold t))))\r
+    (info-xref ((t (:bold t))))\r
+    (italic ((t (:italic t :background "gray"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:bold t :foreground "green4"))))\r
+    (message-header-name-face ((t (:foreground "DarkGreen"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "yellow"))))\r
+    (message-header-other-face ((t (:foreground "#b00000"))))\r
+    (message-header-subject-face ((t (:foreground "green3"))))\r
+    (message-header-to-face ((t (:bold t :foreground "green2"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "blue3"))))\r
+    (modeline ((t (:background "white" :foreground "DeepSkyBlue3"))))\r
+    (modeline-buffer-id ((t (:background "white" :foreground "DeepSkyBlue3"))))\r
+    (modeline-mousable ((t (:background "white" :foreground "DeepSkyBlue3"))))\r
+    (modeline-mousable-minor-mode ((t (:background "white" :foreground "DeepSkyBlue3"))))\r
+    (region ((t (:background "gray"))))\r
+    (secondary-selection ((t (:background "darkslateblue"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (underline ((t (:underline t)))))))\r
+\r
+(defun color-theme-blippblopp ()\r
+  "Color theme by Thomas Sicheritz-Ponten, created 2001-03-12.\r
+Used by researchers at Uppsala University and the Center for Biological\r
+Sequence Analysis at the Technical University of Denmark. (As some of my\r
+swedish friends couldn't pronounce Sicheritz - they choose to transform\r
+it to something more \"swedish\": Blippblopp :-)\r
+Includes font-lock and message."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-blippblopp\r
+     ((background-color . "white")\r
+      (background-mode . light)\r
+      (background-toolbar-color . "#cf3ccf3ccf3c")\r
+      (border-color . "#000000000000")\r
+      (bottom-toolbar-shadow-color . "#79e77df779e7")\r
+      (cursor-color . "Red3")\r
+      (foreground-color . "black")\r
+      (mouse-color . "black")\r
+      (top-toolbar-shadow-color . "#fffffbeeffff")\r
+      (viper-saved-cursor-color-in-replace-mode . "Red3"))\r
+     ((ispell-highlight-face . highlight))\r
+    (default ((t (nil))))\r
+    (blue ((t (:foreground "blue"))))\r
+    (bold ((t (:bold t))))\r
+    (bold-italic ((t (:italic t :bold t))))\r
+    (excerpt ((t (:italic t))))\r
+    (ff-paths-non-existant-file-face ((t (:bold t :foreground "NavyBlue"))))\r
+    (fg:black ((t (:foreground "black"))))\r
+    (fixed ((t (:bold t))))\r
+    (font-lock-builtin-face ((t (:foreground "red3"))))\r
+    (font-lock-comment-face ((t (:foreground "orange"))))\r
+    (font-lock-constant-face ((t (:foreground "red3"))))\r
+    (font-lock-doc-string-face ((t (:foreground "darkgreen"))))\r
+    (font-lock-exit-face ((t (:foreground "green"))))\r
+    (font-lock-function-name-face ((t (:bold t :foreground "red"))))\r
+    (font-lock-keyword-face ((t (:bold t :foreground "steelblue"))))\r
+    (font-lock-preprocessor-face ((t (:foreground "blue3"))))\r
+    (font-lock-reference-face ((t (:foreground "red3"))))\r
+    (font-lock-string-face ((t (:foreground "green4"))))\r
+    (font-lock-type-face ((t (:bold t :foreground "blue"))))\r
+    (font-lock-variable-name-face ((t (:foreground "black"))))\r
+    (font-lock-warning-face ((t (:bold t :foreground "Red"))))\r
+    (green ((t (:foreground "green"))))\r
+    (message-cited-text-face ((t (:foreground "red"))))\r
+    (message-header-cc-face ((t (:foreground "MidnightBlue"))))\r
+    (message-header-name-face ((t (:foreground "cornflower blue"))))\r
+    (message-header-newsgroups-face ((t (:italic t :bold t :foreground "blue4"))))\r
+    (message-header-other-face ((t (:foreground "steel blue"))))\r
+    (message-header-subject-face ((t (:bold t :foreground "navy blue"))))\r
+    (message-header-to-face ((t (:bold t :foreground "MidnightBlue"))))\r
+    (message-header-xheader-face ((t (:foreground "blue"))))\r
+    (message-mml-face ((t (:foreground "ForestGreen"))))\r
+    (message-separator-face ((t (:foreground "brown"))))\r
+    (modeline ((t (:background "dimgray" :foreground "lemonchiffon"))))\r
+    (modeline-buffer-id ((t (:background "dimgray" :foreground "green3"))))\r
+    (modeline-mousable ((t (:background "dimgray" :foreground "orange"))))\r
+    (modeline-mousable-minor-mode ((t (:background "dimgray" :foreground "blue4"))))\r
+    (primary-selection ((t (:background "gray65"))))\r
+    (red ((t (:foreground "red"))))\r
+    (region ((t (:background "gray65"))))\r
+    (secondary-selection ((t (:background "paleturquoise"))))\r
+    (show-paren-match-face ((t (:background "turquoise"))))\r
+    (show-paren-mismatch-face ((t (:background "purple" :foreground "white"))))\r
+    (text-cursor ((t (:background "Red3" :foreground "white"))))\r
+    (toolbar ((t (:background "Gray80"))))\r
+    (underline ((t (:underline t))))\r
+    (vcursor ((t (:underline t :background "cyan" :foreground "blue"))))\r
+    (vertical-divider ((t (:background "Gray80"))))\r
+    (xref-keyword-face ((t (:foreground "blue"))))\r
+    (xref-list-pilot-face ((t (:foreground "navy"))))\r
+    (xref-list-symbol-face ((t (:foreground "navy"))))\r
+    (yellow ((t (:foreground "yellow"))))\r
+    (zmacs-region ((t (:background "gray65")))))))\r
+\r
+(defun color-theme-hober (&optional preview)\r
+  "Does all sorts of crazy stuff.\r
+Originally based on color-theme-standard, so I probably still have some\r
+setting that I haven't changed. I also liberally copied settings from\r
+the other themes in this package. The end result isn't much like the\r
+other ones; I hope you like it."\r
+  (interactive)\r
+  (color-theme-install\r
+   '(color-theme-hober\r
+     ((foreground-color . "#c0c0c0")\r
+      (background-color . "black")\r
+      (mouse-color . "black")\r
+      (cursor-color . "medium turquoise")\r
+      (border-color . "black")\r
+      (background-mode . dark))\r
+     (default ((t (nil))))\r
+     (modeline ((t (:foreground "white" :background "darkslateblue"))))\r
+     (modeline-buffer-id ((t (:foreground "white" :background "darkslateblue"))))\r
+     (modeline-mousable ((t (:foreground "white" :background "darkslateblue"))))\r