Tidy up themes.el

TL;DR:
- Prune unused themes
- Prefer "JetBrainsMono" font for all themes
- Remove TODOs that I've either supported or that I'm uninterested in supporting
This commit is contained in:
William Carroll 2020-04-02 14:36:12 +01:00
parent 8fa3140253
commit be13644f1c

View file

@ -3,7 +3,6 @@
;;; Commentary: ;;; Commentary:
;; Because I couldn't get cycle-themes to work, I'm writing my own version. ;; Because I couldn't get cycle-themes to work, I'm writing my own version.
;; ;;
;; Terminology: ;; Terminology:
@ -13,9 +12,6 @@
;; (see above), font, wallpaper. "theme" is a superset of "colorscheme". ;; (see above), font, wallpaper. "theme" is a superset of "colorscheme".
;; ;;
;; Wishlist: ;; Wishlist:
;; - TODO: Find a way to update the terminal (e.g. terminator) theme.
;; - TODO: Ensure terminal font is updated when Emacs font changes.
;; - TODO: Support a light theme.
;; - TODO: Support Rick & Morty theme. ;; - TODO: Support Rick & Morty theme.
;; - TODO: Support retro/arcade/80s theme. ;; - TODO: Support retro/arcade/80s theme.
@ -42,95 +38,46 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; The theme struct couples a font, a wallpaper, and a colorschemes. ;; The theme struct couples a font, a wallpaper, and a colorschemes.
(cl-defstruct theme (cl-defstruct theme font wallpaper colorscheme)
font
wallpaper
colorscheme)
(defvar themes/current nil (defvar themes/current nil
"Store the name of the currently enabled theme.") "Store the name of the currently enabled theme.")
(defconst themes/preferred-font "JetBrainsMono"
"The font I currently favor.")
(defconst themes/themes (defconst themes/themes
(list (dotted/new (list (dotted/new "Forest"
"Forest" (make-theme
(make-theme :font themes/preferred-font
:font "Operator Mono Light" :wallpaper "forest_8k.jpg"
:wallpaper "forest_8k.jpg" :colorscheme 'doom-peacock))
:colorscheme 'doom-peacock)) (dotted/new "Geometry"
(dotted/new (make-theme
"Geometry" :font themes/preferred-font
(make-theme :wallpaper "geometric_4k.jpg"
:font "Input Mono Medium" :colorscheme 'doom-molokai))
:wallpaper "geometric_4k.jpg" (dotted/new "Shapely Patterns"
:colorscheme 'doom-molokai)) (make-theme
(dotted/new :font themes/preferred-font
"Ice" :wallpaper "geometric_dark_4k.jpg"
(make-theme :colorscheme 'doom-vibrant))
:font "Go Mono"
:wallpaper "construction_paper_iceberg_4k.jpg"
:colorscheme 'doom-dracula))
(dotted/new
"Lego Manhattan"
(make-theme
:font "Input Mono Medium"
:wallpaper "lego_manhattan.jpg"
:colorscheme 'base16-atelier-sulphurpool))
(dotted/new
"Shapely Patterns"
(make-theme
:font "Operator Mono Light"
:wallpaper "geometric_dark_4k.jpg"
:colorscheme 'doom-vibrant))
;; TODO: Support setting backgrounds as solid colors. ;; TODO: Support setting backgrounds as solid colors.
(dotted/new (dotted/new "Gruvbox"
"Gruvbox" (make-theme
(make-theme :font themes/preferred-font
:font "JetBrainsMono" :wallpaper "forest_8k.jpg"
:wallpaper "geometric_dark_4k.jpg" :colorscheme 'doom-gruvbox))
:colorscheme 'doom-gruvbox)) (dotted/new "Solarized Light"
(dotted/new (make-theme
"Solarized Light" :font themes/preferred-font
(make-theme :wallpaper "solarized_light_thinkpad.jpg"
:font "JetBrainsMono" :colorscheme 'doom-solarized-light))
:wallpaper "solarized_light_thinkpad.jpg" (dotted/new "Fantasy Tree"
:colorscheme 'doom-solarized-light)) (make-theme
(dotted/new :font themes/preferred-font
"Lightness" :wallpaper "fantasy_tree_4k.jpg"
(make-theme :colorscheme 'doom-outrun-electric)))
:font "Input Mono Medium"
:wallpaper "construction_paper_iceberg_4k.jpg"
:colorscheme 'doom-one-light))
(dotted/new
"Edison Lightbulb"
(make-theme
:font "Mononoki Medium"
:wallpaper "lightbulb_4k.jpg"
:colorscheme 'base16-atelier-cave))
(dotted/new
"Wall-E"
(make-theme
:font "Input Mono Medium"
:wallpaper "walle_4k.jpg"
:colorscheme 'doom-material))
(dotted/new
"Galaxy"
(make-theme
:font "Source Code Pro"
:wallpaper "galaxy_4k.jpg"
:colorscheme 'doom-moonlight))
(dotted/new
"Underwater"
(make-theme
:font "Go Mono"
;; TODO: Change this wallpaper to an oceanic scene.
:wallpaper "galaxy_4k.jpg"
:colorscheme 'doom-solarized-dark))
(dotted/new
"Fantasy Tree"
(make-theme
:font "Go Mono"
:wallpaper "fantasy_tree_4k.jpg"
:colorscheme 'doom-outrun-electric)))
"Predefined themes to suit my whims.") "Predefined themes to suit my whims.")
;; TODO: Choose between plural and singular names for Elisp modules. For ;; TODO: Choose between plural and singular names for Elisp modules. For