If you install evil-collection to site-lisp/, it's getting picked by
Emacs and added to `subdirs.el` in order to populate the `load-path`
at startup. To quote the official documentation:
> For each directory in load-path, Emacs then checks to see if it contains
> a file subdirs.el, and if so, loads it. The subdirs.el file is created when
> Emacs is built/installed, and contains code that causes Emacs to add any
> subdirectories of those directories to load-path. Both immediate subdirectories
> and subdirectories multiple levels down are added. But it excludes subdirectories
> whose names do not start with a letter or digit, and subdirectories named RCS
> or CVS, and subdirectories containing a file named .nosearch.
There are legitimate reasons why one may add evil-collection to
site-lisp/: Linux distributions packaging it as native distro packages
may lead to this for example.
In my case, I'm using Nix and "Emacs Overlay", which is more or less a
standard way to manage Emacs and its configuration under Nix. I've
noticed that my Emacs starts slower than needed (0.6 seconds with
configuration under Nix, and 0.2 seconds with configuration not managed
by Nix). I've pin-pointed the issue to an explosion of `load-path`,
which is one of the biggest performance hogs on Emacs startup.
It seems that:
- Many other packages add `.nosearch` to their subdirs to prevent
automatic addition to load-path
- There is no risk in introducing this to evil-collection, as it loads
modules by absolute paths from the basedir of the main file.
I've patched evil-collection and on my system it keeps working, while
achieving a nice load speedup (almost 0.4 seconds). Please consider
merging this.
Before mu4e-1.7.0, using SHR to render HTML emails in mu4e-view-mode was
an option. This was removed in mu4e-1.7.0, and mu4e-view-mode now uses
Gnus to render HTML emails. This change broke Evil Collection's tab
navigation in mu4e-view-mode.
Evil users expect to be able to yank to named registers, but pdf-view
only gives us `pdf-view-kill-ring-save'. So we implement our own version
of evil-yank for pdf-view buffers.
This commit adds a few commands to the mu4e-thread-mode-map. The purpose
is to bind these commads to the normal state map so that they don't get
overridden by motion state commands.
The commands `mu4e-compose-begin` and `mu4e-compose-end` were removed in
commit
85bfe76336
of version 1.12.0 of mu. This commit re-adds these commands to the evil
collection for mu4e.
Corfu already binds up/down in emacs state, but not in insert state.
Normally this is not a problem, but when using corfu in comint-mode like
with chatgpt-shell, up/down moves in the history instead of moving in
the corfu completions.
evil-collection-vterm-append doesn't work, and evil-collection-vterm-append-line
doesn't correctly display where the cursor is located. This fixes both
issues.
mu4e-headers-toggle-property replaced the following three toggle
commands (which are now aliases for the new command) in v1.9.5. It
provides its own menu with a key binding for each property, so bind it
to a one-key binding.
The obsolete command bindings are not removed because mu4e is typically
installed with mu via the system package manager and is therefore harder
to upgrade than a typical Emacs package. mu4e-headers-toggle-property
was also renamed to mu4e-search-toggle-property in 1.9.11, but the old
name (which remains as an alias) is preferred for the same reason.