branch: externals/modus-themes commit 5e834b6fcfc56cb9cd32f45a5c2cd953b4e6d2fa Author: Protesilaos Stavrou <i...@protesilaos.com> Commit: Protesilaos Stavrou <i...@protesilaos.com>
Add explicit support for howm package --- doc/modus-themes.info | 304 ++++++++++++++++++++++---------------------------- doc/modus-themes.org | 40 +------ modus-themes.el | 24 ++++ 3 files changed, 157 insertions(+), 211 deletions(-) diff --git a/doc/modus-themes.info b/doc/modus-themes.info index bb7a8df0bb..85cd8430ad 100644 --- a/doc/modus-themes.info +++ b/doc/modus-themes.info @@ -149,7 +149,6 @@ Advanced customization * DIY Add support for solaire-mode:: * DIY Add support for meow-mode:: * DIY Add support for combobulate:: -* DIY Add support for howm:: * DIY Use a hook at the post-load-theme phase:: DIY Stylistic variants using palette overrides @@ -1647,7 +1646,6 @@ such, they are labeled as “do-it-yourself” or “DIY”. * DIY Add support for solaire-mode:: * DIY Add support for meow-mode:: * DIY Add support for combobulate:: -* DIY Add support for howm:: * DIY Use a hook at the post-load-theme phase:: @@ -4144,7 +4142,7 @@ styles to use. The following is but a basic attempt to get started. the post-load-theme phase. -File: modus-themes.info, Node: DIY Add support for combobulate, Next: DIY Add support for howm, Prev: DIY Add support for meow-mode, Up: Advanced customization +File: modus-themes.info, Node: DIY Add support for combobulate, Next: DIY Use a hook at the post-load-theme phase, Prev: DIY Add support for meow-mode, Up: Advanced customization 7.23 DIY Add support for combobulate ==================================== @@ -4195,47 +4193,9 @@ try this instead: the post-load-theme phase. -File: modus-themes.info, Node: DIY Add support for howm, Next: DIY Use a hook at the post-load-theme phase, Prev: DIY Add support for combobulate, Up: Advanced customization +File: modus-themes.info, Node: DIY Use a hook at the post-load-theme phase, Prev: DIY Add support for combobulate, Up: Advanced customization -7.24 DIY Add support for howm -============================= - -The ‘howm’ package is a note-taking solution for Emacs. Users can add -support for its faces with something like the following. - - (defun my-modus-themes-custom-faces (&rest _) - (modus-themes-with-colors - (custom-set-faces - `(action-lock-face ((,c :inherit button))) - `(howm-mode-keyword-face (( ))) - `(howm-mode-ref-face ((,c :inherit link))) - `(howm-mode-title-face ((,c :inherit modus-themes-heading-0))) - `(howm-mode-wiki-face ((,c :inherit link))) - `(howm-reminder-deadline-face ((,c :foreground ,date-deadline))) - `(howm-reminder-late-deadline-face ((,c :inherit bold :foreground ,date-deadline))) - `(howm-reminder-defer-face ((,c :foreground ,date-scheduled))) - `(howm-reminder-scheduled-face ((,c :foreground ,date-scheduled))) - `(howm-reminder-done-face ((,c :foreground ,prose-done))) - `(howm-reminder-todo-face ((,c :foreground ,prose-todo))) - `(howm-reminder-normal-face ((,c :foreground ,date-common))) - `(howm-reminder-today-face ((,c :inherit bold :foreground ,date-common))) - `(howm-reminder-tomorrow-face ((,c :inherit bold :foreground ,date-scheduled))) - `(howm-simulate-todo-mode-line-face ((,c :inherit bold))) - `(howm-view-empty-face (( ))) - `(howm-view-hilit-face ((,c :inherit match))) - `(howm-view-name-face ((,c :inherit bold))) - `(iigrep-counts-face1 ((,c :foreground ,rainbow-1))) - `(iigrep-counts-face2 ((,c :foreground ,rainbow-2))) - `(iigrep-counts-face3 ((,c :foreground ,rainbow-3))) - `(iigrep-counts-face4 ((,c :foreground ,rainbow-4))) - `(iigrep-counts-face5 ((,c :foreground ,rainbow-5)))))) - - (add-hook 'enable-theme-functions #'my-modus-themes-custom-faces) - - -File: modus-themes.info, Node: DIY Use a hook at the post-load-theme phase, Prev: DIY Add support for howm, Up: Advanced customization - -7.25 DIY Use a hook at the post-load-theme phase +7.24 DIY Use a hook at the post-load-theme phase ================================================ Many of the Do-It-Yourself (DIY) snippets provided herein make use of a @@ -4283,7 +4243,7 @@ it will not use them (in plain terms, the code works with or without File: modus-themes.info, Node: DIY A theme-agnostic hook for theme loading, Up: DIY Use a hook at the post-load-theme phase -7.25.1 DIY A theme-agnostic hook for theme loading +7.24.1 DIY A theme-agnostic hook for theme loading -------------------------------------------------- [ NOTE: The following is for versions of Emacs before 29. For Emacs 29 @@ -4472,6 +4432,7 @@ have lots of extensions, so the “full support” may not be 100% true… • hl-fill-column • hl-line-mode • hl-todo + • howm [ Part of 4.7.0-dev. ] • hydra • ibuffer • icomplete @@ -6632,134 +6593,133 @@ B.3 Concept index Tag Table: Node: Top872 -Node: Overview8675 -Node: How do the themes look like11447 -Node: Learn about the latest changes11806 -Node: Installation12194 -Node: Install manually from source13124 -Node: Install from the archives13949 -Node: Install on GNU/Linux14548 -Node: Debian 11 Bullseye15041 -Node: GNU Guix15451 -Node: Dealing with byte compilation errors15734 -Node: Enable and load16892 -Node: The require-theme for built-in Emacs themes20836 -Node: Sample configuration with and without use-package21956 -Node: Differences between loading and enabling24804 -Node: Customization options26935 -Node: Custom reload theme30844 -Node: Disable other themes31764 -Node: Bold constructs33006 -Node: Italic constructs33878 -Node: Option for which themes to toggle34706 -Node: Option for which themes to rotate35469 -Node: Mixed fonts36245 -Node: Command prompts37299 -Node: Completion UIs39142 -Node: Org mode blocks41993 -Node: Heading styles42638 -Node: UI typeface47068 -Node: Palette overrides48041 -Node: Palette extension52431 -Node: Preview theme colors54907 -Node: Use colors from the Modus themes palette56603 -Node: Get a single color from the palette with modus-themes-get-color-value57467 -Node: Use theme colors in code with modus-themes-with-colors59829 -Node: Advanced customization62085 -Node: DIY Palette override presets63881 -Node: DIY Add support for engrave-faces66723 -Node: DIY Stylistic variants using palette overrides76706 -Node: DIY Make the mode line borderless78765 -Node: DIY Make the active mode line colorful80140 -Node: DIY Make the tab bar more or less colorful82358 -Node: DIY Make the fringe invisible or another color84295 -Node: DIY Make links use subtle or no underlines85496 -Node: DIY Make prompts more or less colorful86614 -Node: DIY Make completion matches more or less colorful87937 -Node: DIY Make comments yellow and strings green91496 -Node: DIY Make code syntax use the old alt-syntax style93205 -Node: DIY Make use of alternative styles for code syntax96328 -Node: DIY Make matching parenthesis more or less intense99790 -Node: DIY Make box buttons more or less gray101162 -Node: DIY Make TODO and DONE more or less intense102175 -Node: DIY Make headings more or less colorful103676 -Node: DIY Make Org block colors more or less colorful105793 -Node: DIY Make Org agenda more or less colorful110167 -Node: DIY Make inline code in prose use alternative styles113342 -Node: DIY Make mail citations and headers more or less colorful115584 -Node: DIY Make the region preserve text colors plus other styles117984 -Node: DIY Make mouse highlights more or less colorful119540 -Node: DIY Make language underlines less colorful120553 -Node: DIY Make line numbers use alternative styles121705 -Node: DIY Make diffs use only a foreground123348 -Node: DIY Make deuteranopia diffs red and blue instead of yellow and blue126239 -Node: DIY More accurate colors in terminal emulators128719 -Node: DIY Range of color with terminal emulators130031 -Node: DIY Per-theme customization settings132824 -Node: DIY Do not extend the region background134257 -Node: DIY Add padding to the mode line135061 -Node: DIY Remap face with local value137995 -Node: DIY Font configurations for Org and others140542 -Ref: DIY Font configurations for Org and others-Footnote-1143527 -Node: DIY Configure bold and italic faces143714 -Node: DIY Custom Org todo keyword and priority faces148336 -Node: DIY Custom Org emphasis faces152079 -Node: DIY Use colored Org source blocks per language156960 -Node: DIY Measure color contrast161600 -Node: DIY Load theme depending on time of day164320 -Node: DIY Backdrop for pdf-tools165350 -Node: DIY Toggle themes without reloading them168519 -Node: DIY Use more spacious margins or padding in Emacs frames169828 -Node: DIY Custom hl-todo colors174085 -Node: DIY Add support for solaire-mode175902 -Node: DIY Add support for meow-mode179008 -Node: DIY Add support for combobulate180788 -Node: DIY Add support for howm184392 -Node: DIY Use a hook at the post-load-theme phase186462 -Node: DIY A theme-agnostic hook for theme loading188578 -Node: Face coverage191209 -Node: Supported packages191661 -Node: Indirectly covered packages197566 -Node: Notes on individual packages198922 -Node: Note on calendarel weekday and weekend colors200022 -Node: Note on git-gutter in Doom Emacs201170 -Node: Note on php-mode multiline comments203670 -Node: Note on underlines in compilation buffers204430 -Node: Note on inline Latex in Org buffers205302 -Node: Note on dimmerel205912 -Node: Note on display-fill-column-indicator-mode207397 -Node: Note on highlight-parenthesesel208850 -Node: Note on mmm-modeel background colors214931 -Node: Note for prism217285 -Node: Note on company-mode overlay pop-up220507 -Ref: Note on company-mode overlay pop-up-Footnote-1221237 -Ref: Note on company-mode overlay pop-up-Footnote-2221304 -Node: Note on ERC escaped color sequences221359 -Ref: Note on ERC escaped color sequences-Footnote-1222787 -Node: Note on powerline or spaceline222897 -Node: Note on SHR colors223311 -Node: Note on SHR fonts223735 -Node: Note on Ement colors and fonts224422 -Node: Note on pdf-tools link hints225932 -Node: Note on the Notmuch logo228392 -Node: Note on goto-address-mode faces228930 -Node: Frequently Asked Questions230048 -Node: Is the contrast ratio about adjacent colors?230681 -Node: What does it mean to avoid exaggerations?232190 -Node: Why are colors mostly variants of blue magenta cyan?234042 -Node: What is the best setup for legibility?238376 -Node: Are these color schemes?241024 -Node: Port the Modus themes to other platforms?244708 -Node: Contributing247554 -Node: Sources of the themes247953 -Node: Issues you can help with248849 -Node: Patches require copyright assignment to the FSF250242 -Node: Acknowledgements252464 -Node: GNU Free Documentation License256785 -Node: Indices282149 -Node: Function index282328 -Node: Variable index283924 -Node: Concept index287424 +Node: Overview8646 +Node: How do the themes look like11418 +Node: Learn about the latest changes11777 +Node: Installation12165 +Node: Install manually from source13095 +Node: Install from the archives13920 +Node: Install on GNU/Linux14519 +Node: Debian 11 Bullseye15012 +Node: GNU Guix15422 +Node: Dealing with byte compilation errors15705 +Node: Enable and load16863 +Node: The require-theme for built-in Emacs themes20807 +Node: Sample configuration with and without use-package21927 +Node: Differences between loading and enabling24775 +Node: Customization options26906 +Node: Custom reload theme30815 +Node: Disable other themes31735 +Node: Bold constructs32977 +Node: Italic constructs33849 +Node: Option for which themes to toggle34677 +Node: Option for which themes to rotate35440 +Node: Mixed fonts36216 +Node: Command prompts37270 +Node: Completion UIs39113 +Node: Org mode blocks41964 +Node: Heading styles42609 +Node: UI typeface47039 +Node: Palette overrides48012 +Node: Palette extension52402 +Node: Preview theme colors54878 +Node: Use colors from the Modus themes palette56574 +Node: Get a single color from the palette with modus-themes-get-color-value57438 +Node: Use theme colors in code with modus-themes-with-colors59800 +Node: Advanced customization62056 +Node: DIY Palette override presets63823 +Node: DIY Add support for engrave-faces66665 +Node: DIY Stylistic variants using palette overrides76648 +Node: DIY Make the mode line borderless78707 +Node: DIY Make the active mode line colorful80082 +Node: DIY Make the tab bar more or less colorful82300 +Node: DIY Make the fringe invisible or another color84237 +Node: DIY Make links use subtle or no underlines85438 +Node: DIY Make prompts more or less colorful86556 +Node: DIY Make completion matches more or less colorful87879 +Node: DIY Make comments yellow and strings green91438 +Node: DIY Make code syntax use the old alt-syntax style93147 +Node: DIY Make use of alternative styles for code syntax96270 +Node: DIY Make matching parenthesis more or less intense99732 +Node: DIY Make box buttons more or less gray101104 +Node: DIY Make TODO and DONE more or less intense102117 +Node: DIY Make headings more or less colorful103618 +Node: DIY Make Org block colors more or less colorful105735 +Node: DIY Make Org agenda more or less colorful110109 +Node: DIY Make inline code in prose use alternative styles113284 +Node: DIY Make mail citations and headers more or less colorful115526 +Node: DIY Make the region preserve text colors plus other styles117926 +Node: DIY Make mouse highlights more or less colorful119482 +Node: DIY Make language underlines less colorful120495 +Node: DIY Make line numbers use alternative styles121647 +Node: DIY Make diffs use only a foreground123290 +Node: DIY Make deuteranopia diffs red and blue instead of yellow and blue126181 +Node: DIY More accurate colors in terminal emulators128661 +Node: DIY Range of color with terminal emulators129973 +Node: DIY Per-theme customization settings132766 +Node: DIY Do not extend the region background134199 +Node: DIY Add padding to the mode line135003 +Node: DIY Remap face with local value137937 +Node: DIY Font configurations for Org and others140484 +Ref: DIY Font configurations for Org and others-Footnote-1143469 +Node: DIY Configure bold and italic faces143656 +Node: DIY Custom Org todo keyword and priority faces148278 +Node: DIY Custom Org emphasis faces152021 +Node: DIY Use colored Org source blocks per language156902 +Node: DIY Measure color contrast161542 +Node: DIY Load theme depending on time of day164262 +Node: DIY Backdrop for pdf-tools165292 +Node: DIY Toggle themes without reloading them168461 +Node: DIY Use more spacious margins or padding in Emacs frames169770 +Node: DIY Custom hl-todo colors174027 +Node: DIY Add support for solaire-mode175844 +Node: DIY Add support for meow-mode178950 +Node: DIY Add support for combobulate180730 +Node: DIY Use a hook at the post-load-theme phase184353 +Node: DIY A theme-agnostic hook for theme loading186476 +Node: Face coverage189107 +Node: Supported packages189559 +Node: Indirectly covered packages195500 +Node: Notes on individual packages196856 +Node: Note on calendarel weekday and weekend colors197956 +Node: Note on git-gutter in Doom Emacs199104 +Node: Note on php-mode multiline comments201604 +Node: Note on underlines in compilation buffers202364 +Node: Note on inline Latex in Org buffers203236 +Node: Note on dimmerel203846 +Node: Note on display-fill-column-indicator-mode205331 +Node: Note on highlight-parenthesesel206784 +Node: Note on mmm-modeel background colors212865 +Node: Note for prism215219 +Node: Note on company-mode overlay pop-up218441 +Ref: Note on company-mode overlay pop-up-Footnote-1219171 +Ref: Note on company-mode overlay pop-up-Footnote-2219238 +Node: Note on ERC escaped color sequences219293 +Ref: Note on ERC escaped color sequences-Footnote-1220721 +Node: Note on powerline or spaceline220831 +Node: Note on SHR colors221245 +Node: Note on SHR fonts221669 +Node: Note on Ement colors and fonts222356 +Node: Note on pdf-tools link hints223866 +Node: Note on the Notmuch logo226326 +Node: Note on goto-address-mode faces226864 +Node: Frequently Asked Questions227982 +Node: Is the contrast ratio about adjacent colors?228615 +Node: What does it mean to avoid exaggerations?230124 +Node: Why are colors mostly variants of blue magenta cyan?231976 +Node: What is the best setup for legibility?236310 +Node: Are these color schemes?238958 +Node: Port the Modus themes to other platforms?242642 +Node: Contributing245488 +Node: Sources of the themes245887 +Node: Issues you can help with246783 +Node: Patches require copyright assignment to the FSF248176 +Node: Acknowledgements250398 +Node: GNU Free Documentation License254719 +Node: Indices280083 +Node: Function index280262 +Node: Variable index281858 +Node: Concept index285358 End Tag Table diff --git a/doc/modus-themes.org b/doc/modus-themes.org index 62df448c60..78a9b4b9c7 100644 --- a/doc/modus-themes.org +++ b/doc/modus-themes.org @@ -4048,45 +4048,6 @@ the theme level. Users can try this instead: [[#h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24][Using a hook at the post-load-theme phase]]. -** DIY Add support for howm -:PROPERTIES: -:CUSTOM_ID: h:7ea8fa66-1cd8-47b0-92b4-9998a3068f85 -:END: - -The ~howm~ package is a note-taking solution for Emacs. Users can add -support for its faces with something like the following. - -#+begin_src emacs-lisp -(defun my-modus-themes-custom-faces (&rest _) - (modus-themes-with-colors - (custom-set-faces - `(action-lock-face ((,c :inherit button))) - `(howm-mode-keyword-face (( ))) - `(howm-mode-ref-face ((,c :inherit link))) - `(howm-mode-title-face ((,c :inherit modus-themes-heading-0))) - `(howm-mode-wiki-face ((,c :inherit link))) - `(howm-reminder-deadline-face ((,c :foreground ,date-deadline))) - `(howm-reminder-late-deadline-face ((,c :inherit bold :foreground ,date-deadline))) - `(howm-reminder-defer-face ((,c :foreground ,date-scheduled))) - `(howm-reminder-scheduled-face ((,c :foreground ,date-scheduled))) - `(howm-reminder-done-face ((,c :foreground ,prose-done))) - `(howm-reminder-todo-face ((,c :foreground ,prose-todo))) - `(howm-reminder-normal-face ((,c :foreground ,date-common))) - `(howm-reminder-today-face ((,c :inherit bold :foreground ,date-common))) - `(howm-reminder-tomorrow-face ((,c :inherit bold :foreground ,date-scheduled))) - `(howm-simulate-todo-mode-line-face ((,c :inherit bold))) - `(howm-view-empty-face (( ))) - `(howm-view-hilit-face ((,c :inherit match))) - `(howm-view-name-face ((,c :inherit bold))) - `(iigrep-counts-face1 ((,c :foreground ,rainbow-1))) - `(iigrep-counts-face2 ((,c :foreground ,rainbow-2))) - `(iigrep-counts-face3 ((,c :foreground ,rainbow-3))) - `(iigrep-counts-face4 ((,c :foreground ,rainbow-4))) - `(iigrep-counts-face5 ((,c :foreground ,rainbow-5)))))) - -(add-hook 'enable-theme-functions #'my-modus-themes-custom-faces) -#+end_src - ** DIY Use a hook at the post-load-theme phase :PROPERTIES: :CUSTOM_ID: h:d87673fe-2ce1-4c80-a4b8-be36ca9f2d24 @@ -4314,6 +4275,7 @@ have lots of extensions, so the "full support" may not be 100% true… + hl-fill-column + hl-line-mode + hl-todo ++ howm [ Part of {{{development-version}}}. ] + hydra + ibuffer + icomplete diff --git a/modus-themes.el b/modus-themes.el index b9f46662b6..3772c0fbcc 100644 --- a/modus-themes.el +++ b/modus-themes.el @@ -2686,6 +2686,30 @@ FG and BG are the main colors." `(hl-fill-column-face ((,c :background ,bg-active))) ;;;;; hl-todo `(hl-todo ((,c :inherit (bold font-lock-comment-face) :foreground ,err))) +;;;;; howm + `(action-lock-face ((,c :inherit button))) + `(howm-mode-keyword-face (( ))) + `(howm-mode-ref-face ((,c :inherit link))) + `(howm-mode-title-face ((,c :inherit modus-themes-heading-0))) + `(howm-mode-wiki-face ((,c :inherit link))) + `(howm-reminder-deadline-face ((,c :foreground ,date-deadline))) + `(howm-reminder-late-deadline-face ((,c :inherit bold :foreground ,date-deadline))) + `(howm-reminder-defer-face ((,c :foreground ,date-scheduled))) + `(howm-reminder-scheduled-face ((,c :foreground ,date-scheduled))) + `(howm-reminder-done-face ((,c :foreground ,prose-done))) + `(howm-reminder-todo-face ((,c :foreground ,prose-todo))) + `(howm-reminder-normal-face ((,c :foreground ,date-common))) + `(howm-reminder-today-face ((,c :inherit bold :foreground ,date-common))) + `(howm-reminder-tomorrow-face ((,c :inherit bold :foreground ,date-scheduled))) + `(howm-simulate-todo-mode-line-face ((,c :inherit bold))) + `(howm-view-empty-face (( ))) + `(howm-view-hilit-face ((,c :inherit match))) + `(howm-view-name-face ((,c :inherit bold))) + `(iigrep-counts-face1 ((,c :foreground ,rainbow-1))) + `(iigrep-counts-face2 ((,c :foreground ,rainbow-2))) + `(iigrep-counts-face3 ((,c :foreground ,rainbow-3))) + `(iigrep-counts-face4 ((,c :foreground ,rainbow-4))) + `(iigrep-counts-face5 ((,c :foreground ,rainbow-5))) ;;;;; hydra `(hydra-face-amaranth ((,c :inherit bold :foreground ,yellow-warmer))) `(hydra-face-blue ((,c :inherit bold :foreground ,blue)))