Package autoloads should be assembled in the order they're
installed/built, so that dependencies between them (such as the case
where geiser-* packages call geiser-activate-implementation, which is
defined in geiser.el's autoloads file -- see #7472) don't throw errors.
Fix: #7472
Amend: 87f6f7ab91
317cea5 assumed Emacs 28, but Doom still tries to support 27.
Attempting to use the undefined emoji script on 27 results in an error.
Prior to 28, emoji are part of the symbol script, which the following
`set-fontset-font` call already handles.
Amend: 317cea5eef
Ref: #7448Fix: #7505
helpful-set-variable-function defaults to setopt if it's available, setq
otherwise. `setopt` is superior for this use case because it uses
custom.el's mechanism for setting variables (thus respecting custom.el's
setters and type checks), however, it is unavailable in Emacs 28 and
earlier (`setopt` was introduced in 29).
Doom defines `setq!`, which is a drop-in replacement for setopt, and is
functional in Emacs 28, so it is the better option here.
Ref: #7527
These are undocumented internal variables for basic platform-specific
fallbacks. Now that doom-symbol-font and doom-emoji-font exist, make
them constant.
No font supports all of Unicode or anywhere near it. It’s not even
really possible with current font formats. Therefore, rename
`doom-unicode-font` to `doom-symbol-font`. Only set it as a fallback for
characters in the `symbol` and `mathematical` scripts.
Nerd Fonts assign icons to code points in these Unicode Private Use
Areas. `doom-unicode-font` is now available again as a user-defined
fallback of last resort for non-PUA Unicode code points.
Ref: f12c615e4d (overview)
I'm using Emacs30 and on my version,
doom-apply-ansi-color-to-compilation-buffer-h does not colorize all the
escape sequences. Using ansi-color-compilation-filter instead fixes this
for me.
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`.
BREAKING CHANGE: This commit replaces all-the-icons with nerd-fonts. Any
all-the-icons-* function calls or variable references in your private
config will break and should be replaced with their nerd-icons-*
equivalent. That said, Doom will continue to install all-the-icons for
a while, so feel free to load it if you don't want to fully commit to
the change yet.
This change is happening because nerd-icon has wider support for GUI and
TUI Emacs; has a larger, more consistent selection of symbols; plus unicode
coverage.
Fix: #7368Close: #6675Close: #7364
Includes a minor optimization: reading the current level from an
org-element object, rather than relying on (org-current-level), which
resorts to walking the buffer with regex.
Now that 29.1 is stable, support for it is official. This updates or
docs and doctor checks to take this into account. I've also included a
link to a Discourse post where I track support for Emacs HEAD.
Emacs can unpredictably prompt the user to "Select coding
system (default utf-8):" in some cases. The exact cause is a little
different for every user, but it can be suppressed by explicitly setting
a default language environment. This is not desirable in interactive
sessions, however.
Ref: #3042Close: #7330
Co-authored-by: bennyip <bennyip@users.noreply.github.com>