This commit fixes several Doom mu4e functions which are broken on later
versions of mu4e due to the variable prefix change from mu4e~ to mu4e--.
I also added them to the forwards-compatibility aliases.
- several all-the-icons references were missed, and some code points are
different in nerd-fonts. the variable icon became a folder, the
package icon became a scissors, and the file-icons font icon is not
available
- make face link type face passthrough work
- remove extraneous rear-nonsticky and height properties that nerd-icons
already sets
- generally improve consistency across link types
- material design icons, underlines, and font lock faces for symbols,
shadow if unbound
- octicons for packages, modules, and executables, blue links if
installed, shadow if not. color coded icon based on status
- refactor and remove extraneous code
Looks like the doom-module one was partially renamed to follow naming
conventions, and that didn’t propagate to the corresponding doom-package
function.
resetting font-ligatures means passing `nil` as the second argument
of `(set-font-ligatures!)`
Using `ligatures-ignored-major-modes` to cancel ligatures is too
brittle, because "resetting ligatures for `prog-mode`" would have bad
semantics with all its derived modes. The user probably just wants to
remove the default ligatures and then configure `foo-mode`, but pushing
`prog-mode` to `ignored-major-modes` might just disable ligatures across
all modes _derived from_ `prog-mode`.
This commit changes things in 2 ways:
- resetting ligatures now directly manipulates ligature.el internal
state (the `ligature-composition-table` alist)
- in order to work, Doom must maintain an extra invariant on that alist,
multi-modes keys (`'(foo-mode bar-mode)`), cannot be used, only single
modes.
That mostly means that users should _not_ use
`ligature-set-ligatures` themselves in private config, but instead
always rely on `set-font-ligatures!` which does splicing behind
curtains. Failing to do so would be mostly harmless though (it would
just make "resetting ligatures" only partially remove set ligatures).
Fix: #7433
magit/magit@97a95f7007 -> magit/magit@4881835572
The pinned version of `magit` in `:tools magit` needs be the same
as that of `git-commit` in `:emacs vc`.
`straight.el` prepares the repo only once, and if `git-commit` is
processed first, its pinned version wins out and the more recent
pinning of `magit` is ignored.
As noted in #7363, processing order may be non-deterministic, so the
inconsistent pinning may not be apparent on every system.
Fix: #7363
Amend: #7277
Amend: 7c63b353d2
Fixes an upstream issue in pcomplete where completion after quotes fails
with the following message:
Completion function pcomplete-completions-at-point uses a deprecated
calling convention
This issue is fixed in 29+, but I backport this fix for 27-28
users (credit for the fix goes minad/cape, which is where I adapted this
fix from).
Fix: #3817
Co-authored-by: minad <minad@users.noreply.github.com>
Previously, loading the `ocaml` module and opening a file in Tuareg mode
would result in every buffer having its formatter set to `ocp-indent`.
This now restricts the formatter override to the current buffer.
As `+emacs-lisp-non-package-mode` handles both flymake and flycheck,
making two internal modes that then `+emacs-lisp-non-package-mode`
calls, makes the code cleaner
A package's autoloads aren't expunged from Doom's profile init file,
even after that package has been disabled. If a package's autoloads has
side-effects, this can lead to void references/function errors. One such
case is with php-extras, which will try to call
`php-extras-company-setup` after company loads from its autoloads, but
this function naturally won't be loaded if the package is disabled.
This change fixes this, fully expunging orphaned autoloads on `doom
sync`.
These modules tend to conflict if more than one of them are enabled at
once. More systematic compatibility tests are in the works, but for now
this will do.