 (eval-when-compile
   (require 'color-theme))
 
-(defcustom color-theme-solarized-degrade nil
-  "For test purposes only; forces Solarized to use the 256 degraded color mode to test the approximate color values for accuracy."
+(defcustom solarized-degrade nil
+  "For test purposes only; forces Solarized to use the 256 degraded color mode
+to test the approximate color values for accuracy."
   :type 'boolean
-  :group 'color-theme-solarized)
-
-(defvar color-theme-solarized-colors
+  :group 'solarized)
+
+(defcustom solarized-bold t
+  "Stops Solarized from displaying bold when nil."
+  :type 'boolean
+  :group 'solarized)
+
+(defcustom solarized-underline t
+  "Stops Solarized from displaying underlines when nil."
+  :type 'boolean
+  :group 'solarized)
+
+(defcustom solarized-italic t
+  "Stops Solarized from displaying italics when nil."
+  :type 'boolean
+  :group 'solarized)
+
+(defvar solarized-colors
   ;; name    ideal     256
   '((base03  "#002b36" "#1c1c1c")
     (base02  "#073642" "#262626")

         (message-header-name ((t (:foreground ,cyan))))
         (message-header-other ((t (:foreground ,red))))
         (message-header-newsgroups
          ((t (:foreground ,yellow :bold t :italic t))))
         (message-header-subject ((t (:foreground ,base00))))
         (message-header-cc ((t (:foreground ,green :bold t))))
         (message-header-to ((t (:foreground ,base1 :bold t)))))))))

;;;###autoload
(defun color-theme-solarized-dark ()

         (gnus-cite-9 ((t (:foreground ,base2))))
         (gnus-cite-10 ((t (:foreground ,base3))))
         (gnus-cite-11 ((t (:foreground ,blue))))
         (gnus-group-mail-1 ((t (:foreground ,base3 :weight ,bold))))
         (gnus-group-mail-1-empty ((t (:foreground ,base3))))
         (gnus-group-mail-2 ((t (:foreground ,base2 :weight ,bold))))
         (gnus-group-mail-2-empty ((t (:foreground ,base2))))
         (gnus-group-mail-3 ((t (:foreground ,magenta :weight ,bold))))
         (gnus-group-mail-3-empty ((t (:foreground ,magenta))))
         (gnus-group-mail-low ((t (:foreground ,base00 :weight ,bold))))
         (gnus-group-mail-low-empty ((t (:foreground ,base00))))
         (gnus-group-news-1 ((t (:foreground ,base1 :weight ,bold))))
         (gnus-group-news-1-empty ((t (:foreground ,base1))))
         (gnus-group-news-2 ((t (:foreground ,blue :weight ,bold))))
         (gnus-group-news-2-empty ((t (:foreground ,blue))))
         (gnus-group-news-low ((t (:foreground ,violet :weight ,bold))))
         (gnus-group-news-low-empty ((t (:foreground ,violet))))
         (gnus-header-content ((t (:foreground ,cyan :slant ,italic))))
         (gnus-header-from ((t (:foreground ,base2))))
         (gnus-header-name ((t (:foreground ,blue))))
         (gnus-header-newsgroups ((t (:foreground ,green :slant ,italic))))
         (gnus-header-subject ((t (:foreground ,base1))))
         (gnus-server-agent ((t (:foreground ,base3 :weight ,bold))))
         (gnus-server-closed ((t (:foreground ,base1 :slant ,italic))))
         (gnus-server-denied ((t (:foreground ,base2 :weight ,bold))))
         (gnus-server-offline ((t (:foreground ,green :weight ,bold))))
         (gnus-server-opened ((t (:foreground ,cyan :weight ,bold))))
         (gnus-splash ((t (:foreground ,base2))))
         (gnus-summary-high-ancient ((t (:foreground ,magenta :weight ,bold))))
         (gnus-summary-high-read ((t (:foreground ,base1 :weight ,bold))))
         (gnus-summary-high-ticked ((t (:foreground ,base3 :weight ,bold))))
         (gnus-summary-high-undownloaded
          ((t (:foreground ,base2 :weight ,bold))))
         (gnus-summary-low-ancient ((t (:foreground ,magenta :slant ,italic))))
         (gnus-summary-low-read ((t (:foreground ,base1 :slant ,italic))))
         (gnus-summary-low-ticked ((t (:foreground ,base3 :slant ,italic))))
         (gnus-summary-low-undownloaded
          ((t (:foreground ,base2 :slant ,italic))))
         (gnus-summary-normal-ancient ((t (:foreground ,magenta))))
         (gnus-summary-normal-read ((t (:foreground ,base1))))
         (gnus-summary-normal-ticked ((t (:foreground ,base3))))
