+ Fix recursive find-file-in-project prompt with counsel-projectile.
+ Fix duplicate-workspace error (just switches to that workspace, rather
than trying to create one).
+ Fix dashboard replacing current buffer when switching to
a pre-existing project workspace.
Initialization of the popup rules now happens later (on
doom-init-ui-hook). The two new options are:
+ +popup-enable-fallback-rules: the popup module defines two catch-all
fallback rules for buffers that match "^ \\*" and "^\\*". By setting
this option to nil, you can disable that behavior, in case you want to
set them yourself.
+ +popup-enable-default-rules: setting this to nil disable all default
popup rules for various essential Emacs and Doom buffers that should be
treated as popups.
As much as possible, I'd prefer flags to be additive rather than
subtractive. Meaning, specifying a flag should add features, rather than
disable them; simply as a general Doom convention.
Because persp-mode initializes differently (and later) in daemon/noninteractive
Emacs, +workspaces|init would fail while trying to use persp-mode features in a
broken state.
+ Rewrite projectile integration.
+ Fix per-frame workspaces not cleaning up after itself when an
frame-associated workspace (or its frame) is destroyed.
+ Alias +workspace-p to perspective-p instead of persp-p (which isn't as
accurate, because it counts nil as a valid perspective).
+ Extract orphaned-buffer list functionality in +workspace-buffer-list
into seperate function: +workspace-orphaned-buffer-list.
+ Allow toggle-debug-on-error to catch workspace errors.
+ Remove +workspace/kill-session-and-quit (never used)
+ Ensure persp-mode is loaded as late as possible.
The package wasn't set up properly to autoload until evil-snipe did,
making its functionality inaccessible without an explicit (require
'evil-easymotion)
persp-mode provides the following hooks already (among many others):
+ persp-{before,after}-switch-functions
+ persp-renamed-functions
+ persp-created-functions
+ persp-before-kill-functions
This makes +workspace-change-hook redundant.
Now when saving, you get a message like:
"modules/feature/evil/config.el" 435L, 16678C written
Instead of
Wrote /home/hlissner/work/conf/doom-emacs/modules/feature/evil/config.el
PEDANTRY INTENSIFIES
Adds support for `slot` and `vslot`, allowing for two dimensional
control over where popups may spawn. Highly experimental.
It's upsetting that I have to set `window--sides-inhibit-check`, I'd
like to find a way around that, if possible.
Allows you to ignore certain buffers. Helpful for plugins that manage
their own windows, like magit.
To use:
(set! :popup "^\\*magit" :ignore)
Relevant to #337