A theme megapack for GNU Emacs, inspired by community favorites. Special attention is given for Doom Emacs and solaire-mode support, but will work fine anywhere else.
Table of Contents
The built-in :ui doom
module installs and configures doom-themes
for you,
and loads doom-one
by default. To change the theme, change doom-theme
:
;; in ~/.doom.d/config.el
(setq doom-theme 'doom-city-lights)
doom-themes
is available on MELPA. Here is an example configuration with some
common defaults laid out:
(use-package doom-themes
:ensure t
:config
;; Global settings (defaults)
(setq doom-themes-enable-bold t ; if nil, bold is universally disabled
doom-themes-enable-italic t) ; if nil, italics is universally disabled
(load-theme 'doom-one t)
;; Enable flashing mode-line on errors
(doom-themes-visual-bell-config)
;; Enable custom neotree theme (all-the-icons must be installed!)
(doom-themes-neotree-config)
;; or for treemacs users
(setq doom-themes-treemacs-theme "doom-atom") ; use "doom-colors" for less minimal icon theme
(doom-themes-treemacs-config)
;; Corrects (and improves) org-mode's native fontification.
(doom-themes-org-config))
These themes were written by the author of this package and are most maintained:
Name | Description |
---|---|
doom-one |
Flagship theme based on atom One Dark |
doom-one-light |
Flagship theme based on atom One Light |
doom-vibrant |
A more vibrant version of doom-one |
These themes were submitted to us by the community. We welcome PRs to help us maintain them and address inconsistencies:
Name | Description |
---|---|
doom-1337 |
ported from VSCode's 1337 Theme |
doom-acario-dark |
an original dark theme (thanks to gagbo) |
doom-acario-light |
an original light theme (thanks to gagbo) |
doom-ayu-mirage |
Mirage variant from Ayu themes (thanks to LoveSponge) |
doom-ayu-dark |
Dark variant from Ayu themes (thanks to LoveSponge) |
doom-ayu-light |
Light variant from Ayu themes(thanks to LoveSponge) |
doom-badger |
Based on original Badger theme |
doom-challenger-deep |
based on Vim's Challenger deep theme (thanks to fuxialexander) |
doom-city-lights |
based on Atom's City lights (thanks to fuxialexander) |
doom-dark+ |
ported from VS Code's Dark+ theme (thanks to ema2159) |
doom-dracula |
an implementation of Dracula theme (thanks to fuxialexander) |
doom-ephemeral |
inspired in the Ephemeral Theme from elenapan's dotfiles (thanks to karetsu) |
doom-fairy-floss |
a candy colored Sublime theme by sailorhg (thanks to ema2159) |
doom-flatwhite |
a unique light theme ported from Flatwhite Syntax (thanks to ShaneKilkelly) |
doom-gruvbox-light |
adapted from Morhetz's Gruvbox light variant (thanks for jsoa) |
doom-gruvbox |
adapted from Morhetz's Gruvbox (thanks to JongW) |
doom-henna |
based on VS Code's Henna (thanks to jsoa) |
doom-homage-black |
dark variant of doom-homage white. (thanks to mskorzhinskiy) |
doom-homage-white |
a minimalistic, colorless theme, inspired by eziam, tao and jbeans themes. (thanks to mskorzhinskiy) |
doom-horizon |
ported from VS Code's Horizon (thanks to karetsu) |
doom-Iosvkem |
adapted from Iosvkem (thanks to neutaaaaan) |
doom-laserwave |
a clean 80's synthwave / outrun theme inspired by VS Code's laserwave (thanks to hyakt) |
doom-manegarm |
an original autumn-inspired dark theme (thanks to kenranunderscore) |
doom-material |
adapted from Material Themes (thanks to tam5) |
doom-miramare |
a port of Franbach's Miramare, a variant of gruvbox theme (thanks to sagittaros) |
doom-molokai |
a theme based on Texmate's Monokai |
doom-monokai-classic |
port of Monokai's Classic variant (thanks to ema2159) |
doom-monokai-pro |
port of Monokai's Pro variant (thanks to kadenbarlow) |
doom-moonlight |
ported from VS Code's Moonlight Theme (thanks to Brettm12345) |
doom-nord-light |
light variant of Nord (thanks to fuxialexander) |
doom-nord |
dark variant of Nord (thanks to fuxialexander) |
doom-nova |
adapted from Nova (thanks to bigardone) |
doom-oceanic-next |
adapted from Oceanic Next theme (thanks to juanwolf) |
doom-old-hope |
based on An Old Hope theme (thanks to teesloane) |
doom-opera-light |
an original light theme (thanks to jwintz) |
doom-opera |
an original dark theme (thanks to jwintz) |
doom-outrun-electric |
a neon colored theme inspired in VS Code's Outrun Electric (thanks to ema2159) |
doom-palenight |
adapted from Material Themes (thanks to Brettm12345) |
doom-peacock |
based on Peacock from daylerees' themes (thanks to teesloane) |
doom-plain-dark |
based on plain (thanks to das-s) |
doom-plain |
based on plain (thanks to mateossh) |
doom-rouge |
ported from VSCode's Rouge Theme (thanks to JordanFaust) |
doom-shades-of-purple |
a purple and vibrant theme inspired by VSCode's Shades of Purple (thanks to [jwbaldwin]) |
doom-snazzy |
a dark theme inspired in Atom's Hyper Snazzy (thanks to ar1a) |
doom-solarized-dark |
dark variant of Solarized (thanks to ema2159) |
doom-solarized-light |
light variant of Solarized (thanks to fuxialexander) |
doom-sourcerer |
based on Sourcerer (thanks to defphil) |
doom-spacegrey |
I'm sure you've heard of it (thanks to teesloane) |
doom-tomorrow-day |
Tomorrow's light variant (thanks to emacswatcher) |
doom-tomorrow-night |
one of the dark variants of Tomorrow (thanks to emacswatcher) |
doom-wilmersdorf |
port of Ian Pan's Wilmersdorf (thanks to ema2159) |
doom-xcode |
Based off of Apple's Xcode Dark theme (thanks to kadenbarlow) |
doom-zenburn |
port of the popular Zenburn theme (thanks to jsoa) |
Name | Description |
---|---|
doom-mono-dark / doom-mono-light |
a minimalistic, monochromatic theme |
doom-tron |
based on Tron Legacy from daylerees' themes |
Check out the wiki for details on customizing our neotree/treemacs/etc extensions.
-
(doom-themes-visual-bell-config)
: flash the mode-line when the Emacs bell rings (i.e. an error occurs). May not be compatible with all mode line plugins. -
(doom-themes-neotree-config)
: a neotree theme that takes after Atom's file drawer; a more minimalistic icon theme plus variable pitch file/directory labels, as seen in the doom-one screenshot.(This requires
all-the-icons
' fonts to be installed:M-x all-the-icons-install-fonts
) -
(doom-themes-treemacs-config)
: two treemacs icon themes, one that takes after Atom's, and a second more colorful implementation. -
(doom-themes-org-config)
: corrects and improves some of org-mode's native fontification issues.- Re-set
org-todo
&org-headline-done
faces to make them respect underlying faces (i.e. don't override the :height or :background of underlying faces). - Make statistic cookies respect underlying faces.
- Fontify item bullets (make them stand out)
- Fontify item checkboxes (and when they're marked done), like TODOs that are marked done.
- Fontify dividers/separators (5+ dashes)
- Fontify #hashtags and @at-tags, for personal convenience; see
doom-org-special-tags
to disable this.
- Re-set
The following plugins compliment our themes:
- To get dimmed sidebars and brighter source buffers (like in the screenshots), see solaire-mode.
- AnthonyDiGirolamo added doom-one (screenshot) and doom-molokai (screenshot) skins to airline-themes.
- The modeline in the screenshots is doom-modeline.
-
I don't like X in theme Y, can I change it? Yes. Several themes have variable customization options. Use
C-h v ^doom-
orM-x customize-group RET doom-themes
to explore them.Alternatively, use
custom-set-faces
(Doom users should usecustom-set-faces!
instead) to customize any face. e.g.;; Must be used *after* the theme is loaded (custom-set-faces `(mode-line ((t (:background ,(doom-color 'dark-violet))))) `(font-lock-comment-face ((t (:foreground ,(doom-color 'base6))))))
-
These themes don't look good in the terminal. Why? Many of our themes don't degrade well into 256 colors, so expect a different experience in terminal Emacs vs GUI Emacs. In order to enjoy these themes as they're intended, either use the GUI or set up your shell to display 24bit color, if it is capable of it.
There are multiple guides for setting up 24bit color in your terminal, for example.
PRs are welcome to maintain our themes, including additional theme and plugin support.