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,93 +38,44 @@
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; 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 "Operator Mono Light" :font themes/preferred-font
:wallpaper "forest_8k.jpg" :wallpaper "forest_8k.jpg"
:colorscheme 'doom-peacock)) :colorscheme 'doom-peacock))
(dotted/new (dotted/new "Geometry"
"Geometry"
(make-theme (make-theme
:font "Input Mono Medium" :font themes/preferred-font
:wallpaper "geometric_4k.jpg" :wallpaper "geometric_4k.jpg"
:colorscheme 'doom-molokai)) :colorscheme 'doom-molokai))
(dotted/new (dotted/new "Shapely Patterns"
"Ice"
(make-theme (make-theme
:font "Go Mono" :font themes/preferred-font
: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" :wallpaper "geometric_dark_4k.jpg"
:colorscheme 'doom-vibrant)) :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 "JetBrainsMono" :font themes/preferred-font
:wallpaper "geometric_dark_4k.jpg" :wallpaper "forest_8k.jpg"
:colorscheme 'doom-gruvbox)) :colorscheme 'doom-gruvbox))
(dotted/new (dotted/new "Solarized Light"
"Solarized Light"
(make-theme (make-theme
:font "JetBrainsMono" :font themes/preferred-font
:wallpaper "solarized_light_thinkpad.jpg" :wallpaper "solarized_light_thinkpad.jpg"
:colorscheme 'doom-solarized-light)) :colorscheme 'doom-solarized-light))
(dotted/new (dotted/new "Fantasy Tree"
"Lightness"
(make-theme (make-theme
:font "Input Mono Medium" :font themes/preferred-font
: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" :wallpaper "fantasy_tree_4k.jpg"
:colorscheme 'doom-outrun-electric))) :colorscheme 'doom-outrun-electric)))
"Predefined themes to suit my whims.") "Predefined themes to suit my whims.")