Commit Graph

98 Commits

Author SHA1 Message Date
db9bc3848d feature/workspaces: Fix +workspace-delete to match docstring 2018-10-30 19:10:16 +01:00
6515efa19e feature/workspaces: add +workspaces-on-switch-project-behavior #836
To control when a new workspace is created when switching projectile
projects.
2018-10-03 00:00:56 -04:00
e7fc1d3290 Fix wrong-type-arg: stringp, nocache errors
Fix old usage of doom-project-name and doom-project-root.
2018-09-28 23:49:18 -04:00
7d3ffdff06 Remove third line in section headers
This is truly important stuff. We've saved many lives with this update.
2018-09-09 09:58:19 -04:00
bd7f1f6d17 Fix wrong-type-arg on project switch #836
A regression caused by e40a58c4, which made +workspace-new return
something other than a perspective struct.
2018-08-27 20:07:17 +02:00
1ed8894826 +workspace/delete: error if workspace doesn't exist 2018-08-26 14:14:53 +02:00
e40a58c423 Optimize +workspace-new & workspace creation
This is much faster than the old method of switching to the persp to
modify them.
2018-08-26 14:12:50 +02:00
34de826ac4 +workspace-contains-buffer-p -> persp-contain-buffer-p
Wrapper is unnecessary.

Also remove unnecessary type checking.
2018-07-09 21:53:50 +02:00
1a068f82f1 Add +workspace/load-last-session
And fix the load last session button on dashboard.
2018-07-07 11:41:24 +02:00
eebe852de4 Fix workspace cleaning up visible popups
On :cleanup or doom/cleanup-session
2018-06-30 23:16:48 +02:00
91c4448ed2 Refactor +workspaces|associate-frame
No need to set current frame on first frame.
2018-06-30 02:29:19 +02:00
83ba527afd Refactor auto-add-buffer functionality
Use built-in mechanism for auto-adding buffers to current workspace,
rather than reinvent the wheel.
2018-06-30 02:29:18 +02:00
537cc9e1ed Rewrite doom-real-buffer-p; require first arg
Because of how widely used this function is, I'd rather it be as
explicit as possible to avoid bugs and to make it faster.
2018-06-30 01:57:51 +02:00
863fa16bcc Refactor +workspace/new: use persp-copy
Instead of manually adding buffers to new workspace.
2018-06-23 19:59:17 +02:00
fbf7834d93 Don't delete workspace if visible in another frame
This leaves persp-mode in a semi-broken state.
2018-06-23 19:53:58 +02:00
d5adf4ccbc Minor refactor of feature/workspaces
Improve error handling and update docstrings+comments
2018-06-19 15:00:15 +02:00
d979c46ea2 Make +workspaces-load-session replace current
It should not merge with the current session.
2018-06-19 14:53:45 +02:00
e703d3ec8a Fix default workspace tab faces
The inherited faces were double-quoted
2018-06-19 14:18:31 +02:00
e2979e5b82 Fix +workspace/delete when one workspace is left 2018-05-29 00:42:33 +02:00
217ff2cd54 Fix use of +workspaces-data-file in +workspace/load 2018-05-19 15:02:54 +01:00
0bd88b8414 Add restart-emacs package & commands 2018-05-14 13:05:03 +02:00
5426fe072c feature/workspaces: autoload faces 2018-05-10 21:09:54 +02:00
776886a0a4 feature/workspaces: restore missing +workspace/{save,load} commands 2018-04-26 05:10:58 -04:00
39836fc15d feature/workspace: disable autosave on manual autosave
+workspace/save-session without a name = autosaves the current session.
Doing so now disables autosaving on kill-emacs, otherwise your autosave
would be overwritten when closing Emacs.
2018-04-21 21:03:23 -04:00
b2b603240f fix workspace switch-left cycle. 2018-04-05 21:24:13 +08:00
54c6301f45 feature/workspaces: reduce redundancy in +workspace/kill-session 2018-04-02 05:51:01 -04:00
aad653d913 feature/workspaces: clear last workspace instead of erroring out 2018-04-02 05:50:39 -04:00
3f4c2c81d9 feature/workspaces: if universal arg, don't prompt for file on project switch 2018-03-23 16:03:29 -04:00
61206a553d feature/workspaces: add sharp-quote 2018-03-22 06:28:00 -04:00
d5683ba681 feature/workspaces: fix recursive load errors on 25.x #470
+workspaces|protect-buffers-in-other-persps was unnecessary, in any
case.
2018-03-22 06:26:42 -04:00
d84222b6d0 feature/workspaces: use new switch-buffer hooks 2018-03-14 18:31:48 -04:00
a17fc86761 feature/workspaces: fix buffer getting killed across workspaces 2018-03-12 13:33:50 -04:00
e659ab0609 feature/workspaces: refactor switch-project integration 2018-02-20 17:56:38 -05:00
7707aec28a Remove doom group
Not really useful, and Doom doesn't encourage using the Emacs Customize
interface.
2018-02-18 03:04:58 -05:00
f2a4028f30 feature/workspaces: refactor +workspace-buffer-list 2018-02-10 02:16:50 -05:00
f35a49dc7e feature/workspaces: redefine +workspace/kill-session-and-quit 2018-02-07 19:27:41 -05:00
68a4c85088 feature/workspaces: have switch-project recycle empty workspaces
If you're in an empty workspace, reuse it, rather than spawning a new
one. This lets you create a new workspace *then* switch project.
2018-02-06 17:49:55 -05:00
1db29a951e feature/workspaces: fix counsel-projectile-switch-project actions 2018-02-06 13:50:26 -05:00
b6ee578cda feature/workspace: fix new frames with unreal buffers + no buffer predicate 2018-02-04 02:21:35 -05:00
cbd6bf190a feature/workspaces: minor refactor 2018-02-02 20:47:33 -05:00
d9a80a9520 feature/workspaces: fix buffer-bleedover from other workspaces
The frame buffer-predicate wasn't discriminating against buffers that
were in other perspectives, allowing you to `next-buffer` into them.
UNACCEPTABLE.
2018-02-02 20:47:33 -05:00
c319b606cd feature/workspaces: don't pollute *Messages* with tabbar output 2018-02-02 20:47:32 -05:00
2989296521 Use frame's buffer-predicate instead of doom/{next,previous}-buffer
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.
2018-02-01 19:58:43 -05:00
c97c460ce2 feature/workspaces: fix switch-project #388
+ 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.
2018-01-31 04:54:48 -05:00
81bba9c0bc feature/workspace: fix frames incorrectly initialized via emacsclient
A new workspace is now correctly created for files opened via
emacsclient. This fixes #119. Again.
2018-01-31 01:13:59 -05:00
22f4404210 feature/workspace: improve daemon/frame compatibility
This update fixes issues with frame-local perspectives, and ensures that
a workspace is always selected in a daemon session's frames.
2018-01-28 20:32:10 -05:00
38c0a85155 feature/workspaces: display tab line in minibuffer
This prevents the tabline from being mirrored across all frames.
2018-01-28 20:30:44 -05:00
3578d433c2 Integrate counsel-projectile-switch-project & restore file prompt when switching projects 2018-01-28 03:34:18 -05:00
381a4416ed feature/workspaces: major refactor & various fixes
+ 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.
2018-01-20 15:38:59 -05:00
45c2221316 General update for docstrings and comments & minor refactor 2018-01-15 00:43:28 -05:00