This snippet is courtesy of Basil L. Contovounesios. It is meant to
make the themes load their main library regardless of version or setup,
as discussed in issue 162:
<https://gitlab.com/protesilaos/modus-themes/-/issues/162>.
The themes are already in Emacs, but we have to use a new function for
things to work as intended with the new version of the files (check the
Emacs source code for the technicalities of 'require-theme').
This is in preparation of the imminent release of version 1.2.0.
This means that it will inherit 'fixed-pitch' by default, unless
'modus-themes-no-mixed-fonts' is non-nil.
Also makes the face consistent with org-code, as seen in commit 37e0400.
This partially addresses the wishlist entry to provide options that
account for color diffiency (thanks to Hörmetjan Yiltiz):
<https://gitlab.com/protesilaos/modus-themes/-/issues/118>.
I was also inspired to implement this feature after reading Sam
Kleinman's blog post on "Editor Themes" (2021-02-24):
<https://tychoish.com/post/editor-themes/>.
Apart from what this new option provides, please consider this a
statement of intent: to make the themes cope well with such
requirements. There is more work to be done on that front and any user
feedback would be most welcome.
This fixes an issue where it would inherit the overline of level 1
headings when 'modus-themes-headings' had a value for those headings
equal to 'line', 'section', and variants. Like this:
(setq modus-themes-headings
'((1 . section)
...))
It also make the face behave like that of Org document titles.
The idea is to improve the output of the manual in Texinfo, so that it
is easier for me to send it to upstream Emacs with the proper markup.
While core Emacs should be covered, there still are some issues I need
to deal with, as those 'kbd' and 'file' macros do not export any markup
for the HTML backend. Ideally, those should be interpreted as <code>,
though I do not really mind if that is not doable because I only publish
the HTML on my website where this lack of markup does not really affect
the meaning of the instructions.
This is done in response to Emacs bug#45143.
+ Reorganise the "enable and load" section.
+ Add manual installation instructions.
+ Add section on "Per-theme customization settings (DIY)".
+ Add section on "A theme-agnostic hook for theme loading (DIY)". This
addresses issue 131, by incorporating feedback from Daniel Mendler,
Nicolas De Jaeghere, Gustavo Barros:
<https://gitlab.com/protesilaos/modus-themes/-/issues/131>.
+ Recompile Info file.
The 'selectrum-primary-highlight' and 'selectrum-secondary-highlight'
are deprecated upstream in favour of their new 'selectrum-prescient-*'
counterparts.[1]
This issue was brought to my attention by Manuel Uberti, to whom I am
most thankful.
[1]: <https://github.com/raxod502/prescient.el/pull/97>.
This is to ensure consistency between those face groups when users opt
for options like 'modus-themes-syntax', 'modus-themes-bold-constructs',
'modus-themes-slanted-constructs'.