Doom's narrow/widen commands will now narrow/widen incrementally (using
indirect buffer clones). If the prefix arg is passed to the widen
command, kill all indirect buffers and widen the parent buffer.
If you byte-compile your config, the expanded forms of this library's
macros (like print! or format!) will use internal functions that aren't
autoloaded (like `doom--format`, mentioned in #1768), causing
void-function errors.
It takes one argument in later versions of Emacs. This file really
shouldn't be visible to Emacs 25.x and earlier, but there has been one
case of it being indexed by Doom's autoload scanner.
Also marks the library with the new DEPRECATED tag. It will be removed
once Doom removes 25.x support.
Prior to this change, scratch buffers were saved only when Emacs is
killed. In cases where Emacs doesn't die properly, you'd lose your
scratch contents. Now, they are persisted as soon as you close them.
The former is more reliable (and faster, with the fd/rg hack in the next
commit).
Also (hopefully) fixes the "cl-no-applicable-method: No applicable
method: project-roots" error emitted when project-find-file-in fails to
identify the target as a project root.
Because it's not loaded for some reason.
Also, require is not a big problem IMO: if you run this interactively, the
require cost probably doesn't matter much already.
Fixes#1618.
Calling this pivotal macro "def-package!" has frequently been a source
of confusion. It is a thin wrapper around use-package, and it should be
obvious that it is so. For this reason, and to match the naming
convention used with other convenience macros/wrappers, it is now
use-package!.
Also changes def-package-hook! -> use-package-hook!
The old macros are now marked obsolete and will be removed when straight
integration is merged.
- Eager-load all core autoloaded libraries if autoloads file isn't
present.
- Renames functions to be more descriptive of their true purpose:
- doom-initialize-autoloads -> doom-load-autoloads-file
- doom-load-env-vars -> doom-load-envvars-file
- Use doom-module-p instead of featurep! for backend use (the latter is
mainly syntax sugar for module use, and evaluates at compile/expansion
time, which may cause hash-table-p errors early in the startup
process).
- Reorder plist library to prevent load order race condition with the
functions using the macros that haven't been defined yet.