+ Instead of remapping delete-backward-char to doom/delete-backward-char
(which was unreliable, depending on the mode), it is now overridden
with it, without sacrificing its original functionality. The new
behavior is as follows:
+ Fall back to sp-backward-delete-char when it makes sense to delete
the adjacent pair: {|} => |
+ Collapse an indented pair block, if at bolp in between: {
|
} => {|}
+ Refresh a pair's :post-handlers when deleting into pair: {
|
} => {|} => {
|
} (can be repeated)
+ When cursor is preceded by whitespace, delete in increments of
tab-width.
+ newline-and-indent has been advised to:
+ Only newline when in a string.
+ Continue comment lines consistently (needs more testing!)
+ Falls back to basic newline-and-indent, without affecting whitespace
in the origin line (it would originally delete-horizontal-space
before creating a new line).
+ Incorporates a set of reasonable defaults for brace expansion on RET
or SPC, as mentioned in #343 and #413.
Affects #343, #413
These two are now doom/open-scratch-buffer. If you're in a project,
a (persistent) scratch buffer is opened. Otherwise, a non-persistent,
transient scratch buffer is opened.
If ARG (universal argument) is non-nil, then use the current window
instead of a new window (or popup, if feature/popup is enabled).
Also, the ex command :x[!] is improved. The BANG = open in current
window.
doom/{next,previous}-buffer was implemented so that these commands could
skip over unreal buffers, and land us on either a real one or the
dashboard. Using the frame's buffer-predicate parameter accomplishes
exactly this, natively.
+ 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)
This is a breaking change! Update your :popup settings. Old ones will
throw errors!
Doom's new popup management system casts off its shackles (hur hur) and
replaces them with the monster that is `display-buffer-alist`, and
window parameters.
However, this is highly experimental! Expect edge cases. Particularly
with org-mode and magit (or anything that does its own window
management).
Relevant to #261, #263, #325