I just published version 0.7.0 of the Modus themes. These are my highly-accessible themes for GNU Emacs. They conform with the WCAG AAA standard for colour contrast accessibility (a minimum contrast ratio of 7:1 between the foreground and background values). You can find the packages on ELPA, MELPA, MELPA stable:

Below are the release notes copied verbatim.


Modus Operandi and Modus Vivendi version 0.7.0

By Protesilaos Stavrou info@protesilaos.com on 2020-03-30

This entry documents the changes since version 0.6.0 (2020-03-01). The present release is the largest to date containing 110 commits.

All changes conform with the primary objective of this project, which is conformance with the WCAG AAA accessibility standard for colour contrast. This represents a minimum contrast ratio of 7:1 between a given combination of foreground and background colours.

All customisation options mentioned herein are off (nil) by default. The project’s policy is to offer such features on an “opt-in” basis. Refer to the README or each theme’s source code for the names of these user-facing symbols.

Major refinements to existing face groups

Added support for packages (A-Z)

Note about VC-annotate

Quoting from the relevant note in the project’s README:

Due to the unique way `vc-annotate' (`C-x v g') applies colours,
support for its background mode (`vc-annotate-background-mode') is
disabled at the theme level.

Normally, such a drastic measure should not belong in a theme:
assuming the user's preferences is bad practice.  However, it has
been deemed necessary in the interest of preserving colour contrast
accessibility while still supporting a useful built-in tool.

If there actually is a way to avoid such a course of action, without
prejudice to the accessibility standard of this project, then please
report as much (or contribute as per the information in the
Contributing section).

Overview of refinements to already supported packages

In this section the notion of “dedicated colours” pertains to colour values that are reserved for special faces. They are never used for syntax highlighting or other common scenaria.

Miscellaneous changes and concluding remarks

Special thanks to Manuel Uberti for reporting several issues and offering feedback where appropriate. I was able to add support for lots of new packages. While a few among the already supported face groups underwent tweaks and refinements. The helm ecosystem benefited the most.

Thanks to Anders Johansson for the patch that introduced the fringes-related customisation option. It inspired me to reconsider the use of this particular area of the interface, which eventually led to the barrage of commits that refashioned the fringe indicators. A major win overall.

Thanks to Jonathan Otsuka for fixing an error of mine on the naming of some symbols. My apologies for missing it: I will be more careful from now on.

Note: both patches were small, requiring no copyright assignment. Larger contributions are always welcome, though make sure you read the section in the README with regard to assigning copyright to the Free Software Foundation.


For more information, check the git repository of the modus-themes.