Weird themes for Emacs.
I happen to like certain colors more than others and figured I’d just skip the painful process of selecting different colors, and instead pick two colors I like and pick colors out of a certain number of stops between them. Make a “dim” variant, a “dark” variant and a “light” variant and you have a color palette from just two colors!
Mostly. It is completely legible to me, but I don’t mind weird / bad contrast ratios.
- Digitalsear
- I did tweak the two primary colors with the ACPA Contrast Calculator to get a half-satisfactory score on most of the color stops and between the different variants.
- Digitalsear
- The theme I use the most is Sculpture-themes-dark. The light variant is undermaintained, because I know I’ll have to modify a lot of colors and will end up maintaining two very different versions of the same theme. The dark version is what I really set out to make. So, I decided to make a theme that’s primarily a light theme, but can be inverted to be a dark theme.
Digitalsear has two versions: Digitalsear and Digitalsear Inverted.
Digitalsear works between #0000FF and #FF4000. The background is off-white and dim enough to be gentle (for a light theme).
From top to bottom:
- Background / Foreground
- “Light” variant
- “Dim” variant
- Base variant
- “Dark” variant
Because we only have 7 distinguishable colors, many faces utilize both :foreground
and :background
properties to ensure distinguishability.
Distinguishability was important, because I was going to invert the theme.
Digitalsear Inverted uses an inverted palette. I’ve only duplicated the primary theme, inverted all the colors and changed the name.
- Something forest-green
- Something sun-yellow
AKA What you’re really here for.
Base faces | Popup | Font-lock |
Header line | Mode line | Info mode |
Eldoc | Evil | Diredfl |
Dired-subtree | Ivy | Swiper |
Rainbow-delimiter | line Numbers | Isearch, occur |
Xref | Imenu-list | outline |
Markdown | Org | Org-agenda |
Org-block | Org-checkbox | Org-level |
Paren | Shr | Git-gutter |
Diff-hl | Which-key | Company |
Message | Elfeed | Transient |
Magit | Diff | Orderless |
Ediff | Vertico | Olivetti |
Flycheck | Flymake | Highlight-indent-guides |
Tree-sitter | Tabs | Highlight-indentation |
Writegood | Eglot | Lsp-mode |
Rjsx | Web-mode | Corfu |
Evil-goggles | Vundo | Eldoc-box |
Tuareg | Merlin |
If you’re trying to make your own theme, these resources might be helpful. They were very helpful for me.
hexrgb.el by Drew Adams - useful color manipulation functions
Colorkit - Generate Stepped Gradients, Shades and Tints
Canva Color Wheel - Generate Complementary / Monochromatic / Analogous colors