Minimalist themes for GNU Emacs
  • Emacs Lisp 100%
Find a file
Protesilaos Stavrou 03c73b9250
Update to Doric themes version 1.0.0
Two new themes
--------------

'doric-jade' is a light theme with a predominantly green feel.

'doric-copper' is a dark theme with orange, magenta, and cyan colours.

I have update all screenshots: <https://protesilaos.com/emacs/doric-themes-pictures>.

Revised styles for Org TODO and DONE
------------------------------------

The relevant faces now use a colour-coding scheme where TODO states
are rendered in red while DONE are green.

This is done to ensure cross-theme consistency. Those faces
communicate a certain state and, therefore, it is better to not have
to relearn which colour means what while switching between the Doric
themes.

Org ~code~ faces stand out more
-------------------------------

This is done to differentiate them from =verbatim=. It is especially
important for users who choose to hide the markup with the user option
'org-hide-emphasis-markers' (I used to do that but realised that the
ambiguity was a problem in many cases, because ~code~ and =verbatim=
have different semantics in some exported formats).

Refinements to all Org heading or heading-like faces
----------------------------------------------------

This covers the regular Org headings as well as anything that performs
the same function, such as in the Org agenda buffer.

All regular headings use the main foreground value. The document title
and the Org agenda equivalent of that are rendered in an accent colour
for greater effect.

Combined with the aforementioned revision of the TODO and DONE
states, Org buffers are easier to read and work with.

Tweaks for the Org agenda faces
-------------------------------

The faces that communicate the current time and applicable filters are
made more intense. The idea is to spot them more quickly.

Faces that pertain to diary or diary-style events no longer use
italics to avoid exaggerations.

Blocked tasks are easier to spot.

The applicable query in the structure header is made more prominent.

Overall, Org agenda buffers should be easier to scan.

More obvious style for Org exporting
------------------------------------

The active/available keys in the Org export dispatcher use more
intense colours and have greater padding around them. This is what I
also do with the Modus themes (and all derivatives) to improve the
legibility of those keys.

Magit branch and author faces are redone
----------------------------------------

The authors in log views and elsewhere have a distinct colour to stand
out a bit more. Branches use consistent typography, while the current
branch stands out more than the others.

New colours for transient faces with background values
------------------------------------------------------

Enabled and disabled keys use a green-red coding scheme.

Active values and arguments have a style that is the same across
themes for the same reason as Org TODO and DONE.

Transient headings use the main foreground colour to not draw more
attention than they need to.

Git commit faces follow the aforementioned patterns
---------------------------------------------------

Those are seen when writing a commit message in Magit.

VC logs better differentiate the commit author
----------------------------------------------

The relevant face uses a distinct foreground. It no longer applies a
bold weight, as that had the effect of making the buffers much busier
than necessary.

Colour-coded styles for Dired marks
-----------------------------------

Items that are marked for selection are rendered in a green style,
while those marked for deletion are red.

This is done for cross-theme consistency, so that users do not have to
think twice before performing the relevant operations.

The 'doric-themes-with-colors' macro for advanced users
-------------------------------------------------------

This macro is effectively the same as a 'let' for binding the colours
of the active Doric theme. Advanced users can rely on this macro to
write functions that, for example, set the theme-specific red colour
value of a given face.

Miscellaneous
-------------

Symlinks in Dired buffers are easier to spot. Same for visited links
in Info buffers.

Org definitions no longer override the foreground of any other face
present in them. Same for the notmuch header in view buffers.
2026-02-09 10:03:40 +02:00
tests Add doric-themes-success-background-faces to the tests 2026-02-07 09:08:33 +02:00
.elpaignore Add the elpaignore file 2025-05-15 11:09:48 +03:00
contrasts.org doric-pine: tweak the fg-blue value 2026-02-07 09:56:29 +02:00
COPYING Update the copyright years 2026-01-11 12:51:16 +02:00
doric-beach-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-cherry-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-copper-theme.el doric-copper: refine the bg-red and bg-green values 2026-02-06 22:53:50 +02:00
doric-dark-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-earth-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-fire-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-jade-theme.el doric-jade: refine the bg-accent value 2026-02-06 23:02:07 +02:00
doric-light-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-marble-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-mermaid-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-oak-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-obsidian-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-pine-theme.el doric-pine: tweak the fg-blue value 2026-02-07 09:56:29 +02:00
doric-plum-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-siren-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-themes.el Update to Doric themes version 1.0.0 2026-02-09 10:03:40 +02:00
doric-valley-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-water-theme.el Update the copyright years 2026-01-11 12:51:16 +02:00
doric-wind-theme.el doric-wind: tweak the fg-green value 2026-02-07 09:47:52 +02:00
README.md Update the sample configuration 2025-05-27 09:37:55 +03:00

Doric themes for GNU Emacs

These are my minimalist themes. They use few colours and will appear mostly monochromatic in many contexts. Styles involve the careful use of typography, such as italics and bold italics.

If you want maximalist themes in terms of colour, check my ef-themes package. For something in-between, which I would consider the best "default theme" for a text editor, opt for my modus-themes.

Sample configuration

(use-package doric-themes
  :ensure t
  :demand t
  :config
  ;; These are the default values.
  (setq doric-themes-to-toggle '(doric-light doric-dark))
  (setq doric-themes-to-rotate doric-themes-collection)

  (doric-themes-select 'doric-light)

  ;; ;; To load a random theme instead, use something like one of these:
  ;;
  ;; (doric-themes-load-random)
  ;; (doric-themes-load-random 'light)
  ;; (doric-themes-load-random 'dark)

  ;; ;; For optimal results, also define your preferred font family (or use my `fontaine' package):
  ;;
  ;; (set-face-attribute 'default nil :family "Aporetic Sans Mono" :height 160)
  ;; (set-face-attribute 'variable-pitch nil :family "Aporetic Sans" :height 1.0)
  ;; (set-face-attribute 'fixed-pitch nil :family "Aporetic Sans Mono" :height 1.0)

  :bind
  (("<f5>" . doric-themes-toggle)
   ("C-<f5>" . doric-themes-select)
   ("M-<f5>" . doric-themes-rotate)))