GNU ELPA - ef-themes


Colorful and legible themes
ef-themes-1.4.1.tar (.sig), 2023-Dec-08, 710 KiB
Ef-Themes Development <~protesilaos/>
Browse ELPA's repository
CGit or Gitweb

To install this package from Emacs, use package-install or list-packages.

Full description

Ef (εὖ) themes for GNU Emacs


The ef-themes are a collection of light and dark themes for GNU Emacs whose goal is to provide colorful ("pretty") yet legible options for users who want something with a bit more flair than the modus-themes (also designed by me).

Old versions

ef-themes-1.4.0.tar.lz2023-Oct-26 100 KiB
ef-themes-1.3.0.tar.lz2023-Aug-0998.2 KiB
ef-themes-1.2.0.tar.lz2023-Jun-3096.2 KiB
ef-themes-1.1.1.tar.lz2023-Jun-0893.7 KiB
ef-themes-1.0.2.tar.lz2023-May-2290.7 KiB
ef-themes-0.11.0.tar.lz2023-Mar-1386.9 KiB
ef-themes-0.9.0.tar.lz2022-Oct-2875.0 KiB
ef-themes-0.8.0.tar.lz2022-Oct-1970.8 KiB
ef-themes-0.7.0.tar.lz2022-Oct-0868.6 KiB
ef-themes-0.6.0.tar.lz2022-Sep-2664.0 KiB
ef-themes-0.5.0.tar.lz2022-Sep-1154.1 KiB
ef-themes-0.4.2.tar.lz2022-Aug-3149.0 KiB
ef-themes-0.4.0.tar.lz2022-Aug-2948.6 KiB
ef-themes-0.3.4.tar.lz2022-Aug-2342.2 KiB
ef-themes-0.3.3.tar.lz2022-Aug-2137.5 KiB
ef-themes-0.3.0.tar.lz2022-Aug-2037.6 KiB
ef-themes-0.2.1.tar.lz2022-Aug-1930.2 KiB
ef-themes-0.2.0.tar.lz2022-Aug-1829.5 KiB
ef-themes-0.1.0.tar.lz2022-Aug-1727.2 KiB
ef-themes-0.0.4.tar.lz2022-Aug-1727.2 KiB


This document contains the release notes for each tagged commit on the project's main git repository:

The newest release is at the top. For further details, please consult the manual:

Version 1.4.0 on 2023-10-26

Experience the "Melissa" variants

The ef-melissa-dark and ef-melissa-light are the new members of the Ef themes collection. They form a pair of warmly coloured palettes that have a strong emphasis on yellow hues against a soft background. In my opinion, these themes (as well as the "Elea" and "Maris" variants) are best used when environmental light is neither too intense nor too dim.

The blog post where I announced these new themes and showed screen shots of them:

Screen shots for the entire collection are available on my website:

There now are 28 themes in the ef-themes package, covering a broad range of preferences and needs. They all are highly legible (typically well above the WCAG AA standard) and very customisable (consult their manual).

Use palette overrides instead of ef-themes-region

The user option ef-themes-region is no more. It used to provide an intense variant to the region highlight colour. I am discontinuing this as the themes have a powerful mechanism of overriding any entry in their palette, with the benefit of semantic colour mappings, to affect the style of the theme.

Palette overrides exist for each theme, but also as a common variable, with the former taking precedence. A theme-specific variable looks like ef-summer-palette-overrides while the common variable is ef-themes-common-palette-overrides. Preview palette entries with the command ef-themes-preview-colors or ef-themes-preview-colors-current.

The manual describes all the details, though here is a simple snippet to change the region of all themes to an intense yellow colour with an equally pronounced foreground (i.e. overriding the colour of any underlying text):

;; Evaluate and then reload the theme for changes to take effect.  Use
;; the command `ef-themes-preview-colors' to discover the names of
;; palette entries to override/remap.
(setq ef-themes-common-palette-overrides
      '((bg-region bg-yellow-intense)
	(fg-region fg-intense)))

Git commit messages have more refined warnings

While composing a Git commit message with either the magit package or the built-in vc-git, the summary line can display text in a different colour to denote that it exceeds a certain character limit. Such a limit is a convention to keep logs readable, though it is not an error per se.

The Ef themes used to apply a background to those warnings, though they now use only a foreground. The reason is that the styles I have picked are carefully designed to be unambiguous, without needing to exaggerate their mutual differences.

The breadcrumb package uses appropriate styles

breadcrumb is a new contribution by João Távora: It displays information about the context of the current code form or document heading in either the mode line or the header line. The styles it uses are now consistent with the aesthetics of each of the Ef themes.

Theme metadata for new Emacs versions is as intended

:PROPERTIES: :CUSTOMID: h:3d9b951f-ce5b-409e-9dc5-4324fed6fa5c … …