<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/tests/test-mail-config--account-search-queries.el, branch main</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-07-14T04:13:30+00:00</updated>
<entry>
<title>fix(mail): repair account nav, send fallback, and reply handling</title>
<updated>2026-07-14T04:13:30+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-07-14T04:13:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=9927367c02c4e8723af27efb1dedbb8f89149c85'/>
<id>urn:sha1:9927367c02c4e8723af27efb1dedbb8f89149c85</id>
<content type='text'>
Seven config-audit findings in mail-config, each verified against the installed mu4e 1.14 source before changing anything:

- The C-; e account nav commands now require mu4e before searching. The maps register eagerly at startup, but mu4e-search has no autoload cookie, so a nav key pressed before mu4e's first launch signaled void-function.
- With msmtp absent, both send variables now get cj/mail--send-mail-unavailable, which signals a user-error naming msmtp. The old fallback left message-send-mail-function nil (the top-level defvar pre-empts message.el's default), so the first send died with "invalid function: nil".
- I removed the unconditional org-msg-edit-mode advice on the two reply commands. org-msg-post-setup already runs on mu4e-compose-mode-hook and applies org-msg-default-alternatives itself, so the advice forced org-msg onto text-only replies and re-ran a major mode org-msg had already set up.
- I dropped the save-attachment headers action: mu4e-view-save-attachments takes no message argument and reads MIME parts from the view buffer, so it never worked from headers.
- I deleted the obsolete HTML view knobs (mu4e-view-prefer-html and both mu4e-html2text-command sets): the shr-based view has ignored them since mu4e 1.7.
- I reordered the contexts so cjennings.net comes first: with pick-first, gmail-first made gmail the silent default account for the first compose.
- I dropped mu4e-starred-folder (not a mu4e variable, never had an effect) and the obsolete mu4e-maildir alias.

New tests cover the nav-command mu4e load and the msmtp-absent fallback.
</content>
</entry>
<entry>
<title>refactor(mail-config): build the account-nav keymaps from one template</title>
<updated>2026-06-20T16:06:37+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-20T16:06:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=e0060790c1bcd0bbac156a1566da93465fccdabf'/>
<id>urn:sha1:e0060790c1bcd0bbac156a1566da93465fccdabf</id>
<content type='text'>
The cmail/dmail/gmail navigation maps were three near-identical defvar-keymap blocks differing only by maildir prefix, with the unread/flagged/large query clauses repeated in each. Add cj/--mail-account-search-queries (account -&gt; the four search strings) and cj/--mail-make-account-map (builds the keymap), wrapped in eval-and-compile so org-msg's :preface can call the builder during byte-compilation. The three maps become one-line builder calls. Adds direct coverage of the query strings and the per-account closures.
</content>
</entry>
</feed>
