fix(workspaces): "none" workspace

Doom removes the "none" workspace from persp-mode's default list of
perspectives, because it is a special case that doesn't behave
identically to other persps in the list, making it a pain to deal with.

This worked fine up until a change to `persp-update-names-cache` (in
Bad-ptr/persp-mode.el@0d6cacc) made it re-insert this "none" workspace
into `persp-names-cache` whenever it is called, undoing our hack; this
commit adapts to that change.

Ref: Bad-ptr/persp-mode.el@0d6caccab3
Ref: Bad-ptr/persp-mode.el@b2e68f97cb
Fix: #7986
Amend: 7f3412e317
This commit is contained in:
Henrik Lissner 2024-08-09 15:42:54 -04:00
parent 7f3412e317
commit b3bea23331
No known key found for this signature in database
GPG key ID: B60957CA074D39A3
2 changed files with 12 additions and 15 deletions

View file

@ -73,10 +73,6 @@ stored in `persp-save-dir'.")
"Ensure a main workspace exists."
(when persp-mode
(let (persp-before-switch-functions)
;; Try our best to hide the nil perspective.
(when (equal (car persp-names-cache) persp-nil-name)
(pop persp-names-cache))
;; ...and create a *real* main workspace to fill this role.
(unless (or (persp-get-by-name +workspaces-main)
;; Start from 2 b/c persp-mode counts the nil workspace
(> (hash-table-count *persp-hash*) 2))