Henrik Lissner
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
Henrik Lissner
1ed8894826
+workspace/delete: error if workspace doesn't exist
2018-08-26 14:14:53 +02:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
1a068f82f1
Add +workspace/load-last-session
...
And fix the load last session button on dashboard.
2018-07-07 11:41:24 +02:00
Henrik Lissner
eebe852de4
Fix workspace cleaning up visible popups
...
On :cleanup or doom/cleanup-session
2018-06-30 23:16:48 +02:00
Henrik Lissner
91c4448ed2
Refactor +workspaces|associate-frame
...
No need to set current frame on first frame.
2018-06-30 02:29:19 +02:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
863fa16bcc
Refactor +workspace/new: use persp-copy
...
Instead of manually adding buffers to new workspace.
2018-06-23 19:59:17 +02:00
Henrik Lissner
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
Henrik Lissner
d5adf4ccbc
Minor refactor of feature/workspaces
...
Improve error handling and update docstrings+comments
2018-06-19 15:00:15 +02:00
Henrik Lissner
d979c46ea2
Make +workspaces-load-session replace current
...
It should not merge with the current session.
2018-06-19 14:53:45 +02:00
Henrik Lissner
e703d3ec8a
Fix default workspace tab faces
...
The inherited faces were double-quoted
2018-06-19 14:18:31 +02:00
Henrik Lissner
e2979e5b82
Fix +workspace/delete when one workspace is left
2018-05-29 00:42:33 +02:00
James Conroy-Finn
217ff2cd54
Fix use of +workspaces-data-file in +workspace/load
2018-05-19 15:02:54 +01:00
Henrik Lissner
0bd88b8414
Add restart-emacs package & commands
2018-05-14 13:05:03 +02:00
Henrik Lissner
5426fe072c
feature/workspaces: autoload faces
2018-05-10 21:09:54 +02:00
Henrik Lissner
776886a0a4
feature/workspaces: restore missing +workspace/{save,load} commands
2018-04-26 05:10:58 -04:00
Henrik Lissner
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
Amos Bird
b2b603240f
fix workspace switch-left cycle.
2018-04-05 21:24:13 +08:00
Henrik Lissner
54c6301f45
feature/workspaces: reduce redundancy in +workspace/kill-session
2018-04-02 05:51:01 -04:00
Henrik Lissner
aad653d913
feature/workspaces: clear last workspace instead of erroring out
2018-04-02 05:50:39 -04:00
Henrik Lissner
3f4c2c81d9
feature/workspaces: if universal arg, don't prompt for file on project switch
2018-03-23 16:03:29 -04:00
Henrik Lissner
61206a553d
feature/workspaces: add sharp-quote
2018-03-22 06:28:00 -04:00
Henrik Lissner
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
Henrik Lissner
d84222b6d0
feature/workspaces: use new switch-buffer hooks
2018-03-14 18:31:48 -04:00
Henrik Lissner
a17fc86761
feature/workspaces: fix buffer getting killed across workspaces
2018-03-12 13:33:50 -04:00
Henrik Lissner
e659ab0609
feature/workspaces: refactor switch-project integration
2018-02-20 17:56:38 -05:00
Henrik Lissner
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
Henrik Lissner
f2a4028f30
feature/workspaces: refactor +workspace-buffer-list
2018-02-10 02:16:50 -05:00
Henrik Lissner
f35a49dc7e
feature/workspaces: redefine +workspace/kill-session-and-quit
2018-02-07 19:27:41 -05:00
Henrik Lissner
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
Henrik Lissner
1db29a951e
feature/workspaces: fix counsel-projectile-switch-project actions
2018-02-06 13:50:26 -05:00
Henrik Lissner
b6ee578cda
feature/workspace: fix new frames with unreal buffers + no buffer predicate
2018-02-04 02:21:35 -05:00
Henrik Lissner
cbd6bf190a
feature/workspaces: minor refactor
2018-02-02 20:47:33 -05:00
Henrik Lissner
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
Henrik Lissner
c319b606cd
feature/workspaces: don't pollute *Messages* with tabbar output
2018-02-02 20:47:32 -05:00
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
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
Henrik Lissner
3578d433c2
Integrate counsel-projectile-switch-project & restore file prompt when switching projects
2018-01-28 03:34:18 -05:00
Henrik Lissner
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
Henrik Lissner
45c2221316
General update for docstrings and comments & minor refactor
2018-01-15 00:43:28 -05:00
Henrik Lissner
10167b85b5
feature/workspaces: remove +workspace-change-hook
...
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.
2018-01-14 16:21:22 -05:00
Henrik Lissner
48b0a468d1
THOU SHALT NOT WORSHIP FALSE IDOLS, said the byte compiler
...
And I obeyed.
2018-01-06 04:24:38 -05:00
Henrik Lissner
88f8c27a7d
Fix doom/cleanup-session & +workspaces|cleanup-unassociated-buffers
...
Resolve void n variable errors and silent message.
2018-01-04 16:16:44 -05:00
Henrik Lissner
e9b5ab2385
Fix +workspace/close-window-or-workspace treating everything as a popup
2018-01-04 16:16:44 -05:00