First we unbind all existing key mappings and then we slowly build up
our own again. May be somewhat unnecessary but I have been getting
_very_ confused with neomutt mappings just popping up all over the place
and never quite sure if they were from me or default settings or where
exactly they were configured.
This provides a clean slate to build upon.
Unmap the custom set Debug overlay mapping since I haven't had to use it
in absolute ages. Additionally we also unmap the default mapping for the
debug overlay - which frees up the key combination to be passed through
to TUIs.
As mentioned in
https://github.com/carapace-sh/carapace-bin/issues/2819#issuecomment-3092307945,
fzf-tab directory completes are empty if you try to complete on a
directory without any prior input.
I.e.:
`ls -hal ~/.config/a<tab>` shows output (dirs starting with a).
`ls -hal ~/.config/<tab>` is empty.
This fixes the issue by making the query string use the full inserted
value.
In its default pre- and post-hooks, `neomutt-syncmail` now checks if
`imapfilter` and `notmuch` exist before invoking them.
Similarly, it defaults to `pass open` opening a pass coffin if
`pass-coffin` exists.
Renamed `mutt2task` to `neomutt-2task`, and renamed `sync-mail` to
`neomutt-syncmail`.
Changed key maps accordingly. Also systemd service even though I don't
think I'll use it again.
We have differentiated views of new (italic) and unread (underline, and
a bit of highlight on the author) messages.
Additionally the indicator highlighting works better with the rest of
the colors, and we have a better paperclip icon icon for attachments.
E-Mails have 2-staged flag options for levels of 'seen':
Unseen/Seen and Unread/Read.
A message is unseen if it has arrived since the last time we had mutt
open. We do not have to have had the actual message open for it to be
marked seen (or 'old'). In other words, whichever messages we have seen
once on the index alone are not 'new' to us anymore, they have been
seen.
On the other hand, a message is only read if it is actually opened. So
even if we have seen it on the index page, or moved it to a different
mailbox or anything else, it can still be unread if we did not open it.
Additionally, I have it set up now so that the message only gets set to
'read' by neomutt after it has been open for 1 second.
This gives a tiny grace period if we are scrubbing through mails or
accidentally opened one we did not want.
This used to be default (and according to the docs still is?) but I had
to set it manually to still show all models to select from. Perhaps
because we explicitly set 'show_defaults' we also have to be explicit
about this.
Will paste and try to integrate _anything_ into the curent buffer. Wrong
programming language, no formatting, pseudo code, natural language instructions, anything.
For any files under my WIKIROOT directory I am sure that they are
textual (if they fall into the wrapping.nvim allowlist).
So we do not need to undertake the 'nontextual' file heuristic that uses
the capabilities of the language server connected. Especially since our
ZK lsp, or markdown lsp would always return the capability.
Unfortunately wrapping.nvim does not currently have the ability to
provide your own 'nontextual' heuristic, so I instead use a fork which
does and provide the correct function in the options.
By default we wrap the contents.
This will slightly worsen some coding previews, but greatly improve the
default preview for text files.
We will see if it makes sense to keep over time but this makes more
sense to me right now -- especially with zk.nvim using fzf-lua as
preview provider.
We found the correct option and it does not instant-select single result
search anymore.
So we can remove the FIXME since it is indeed fixed.
WIP: ZK workflow improvements