Commit graph

123 commits

Author SHA1 Message Date
Henrik Lissner
037b018cdd
feat: add .doommodule files
These optional dotfiles indicate the root of a module or module
group (:lang), and will later contain module metadata. They will also
serve as an alternative to packages.el and doctor.el, and will aide the
parts of the v3.0 module API concerned with resolving the current module
from a path (`doom-module-from-path`), which currently rely too heavily
on parsing path strings.

For now, however, they're simply placeholders.
2024-09-14 20:47:39 -04:00
Chenty
b835e7b6ec
fix(workspaces): don't overwrite previously workspaces on save
Otherwise, each time `+workspace-save` is called, all prior saved
workspaces would be deleted from `+workspaces-data-file` before
inserting the new one.
2024-08-22 12:20:17 -04:00
Henrik Lissner
b3bea23331
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
2024-08-09 15:42:54 -04:00
Henrik Lissner
7f3412e317
bump: :ui
Alexander-Miller/treemacs@54ef590b76 -> Alexander-Miller/treemacs@202d7f01d6
Bad-ptr/persp-mode.el@345baaa520 -> Bad-ptr/persp-mode.el@40e9993a97
dgutov/diff-hl@57d9d4e3e1 -> dgutov/diff-hl@b80ff9b4a7
ema2159/centaur-tabs@d6009c295a -> ema2159/centaur-tabs@063534bd00
emacs-lsp/lsp-treemacs@1d43e9e030 -> emacs-lsp/lsp-treemacs@fb1a07ae0a
emacs-straight/minimap@4898d27768 -> emacs-straight/minimap@5aa0df40bc
seagle0128/doom-modeline@1505c13564 -> seagle0128/doom-modeline@9920ef5116
tarsius/hl-todo@dd46d426c0 -> tarsius/hl-todo@82eba6b8f7
2024-08-08 17:26:58 -04:00
Henrik Lissner
9cdcfdac36
feat(workspaces): add +workspace/delete
For deleting saved workspaces (saved with `+workspace/save` or
`+workspace-save`).

Also binds `SPC TAB D` (for evil users) and `C-c w K` (for non-evil
users) to it.

Fix: #4399
Close: #7869
Co-authored-by: sriramsk1999 <sriramsk1999@users.noreply.github.com>
2024-07-29 20:57:56 -04:00
Henrik Lissner
5289861109
refactor(workspaces): +workspace/delete: rename to +workspace/kill
To be more consistent with other uses of the verb in the Emacs
ecosystem. Also done in preparation for a new +workspaces/delete command
for #7869.

Ref: #7869
2024-07-05 18:05:15 -04:00
Henrik Lissner
69bc471722
fix(workspaces): dual *Warnings* windows at startup
At some point, either Emacs, persp-mode, or I fixed what caused #319,
which swallows the *Warnings* popup when the new main workspace is
created. Until I can determine what fixed it (so I can determine whether
the whole hack should go), I'll simply add this guard.

Ref: #319
2024-04-06 12:55:01 -04:00
Henrik Lissner
90070c639a
fix(workspaces): remove ivy integration
Due to upstream changes in ivy-rich, +workspace/switch-to throws a
`wrong-type-argument listp leaf` error. As I plan to phase out Ivy
support (and the Ivy module) in the long term, I'll simply remove
ivy (and ivy-rich) integration in the workspaces module, rather than
update it.

Fix: #7499
Fix: #7173
2024-03-26 10:11:34 -04:00
Henrik Lissner
210a5d4162
bump: :ui
Alexander-Miller/treemacs@56691a530a -> Alexander-Miller/treemacs@df26b6ab9a
Bad-ptr/persp-mode.el@df95ea710e -> Bad-ptr/persp-mode.el@345baaa520
dgutov/diff-hl@b5651f1c57 -> dgutov/diff-hl@b8b2727a72
edkolev/evil-goggles@0070c9d844 -> edkolev/evil-goggles@34ca276a85
emacs-lsp/lsp-treemacs@e66ae21965 -> emacs-lsp/lsp-treemacs@e54e74deb8
emacsorphanage/anzu@5abb37455e -> emacsorphanage/anzu@26fb50b429
joostkremers/writeroom-mode@1fd52848eb -> joostkremers/writeroom-mode@f4d035e91d
mickeynp/ligature.el@0e5d0a8554 -> mickeynp/ligature.el@6ac1634612
rolandwalker/unicode-fonts@44d0a22420 -> rolandwalker/unicode-fonts@6245b97d8d
tarsius/hl-todo@70ce48470c -> tarsius/hl-todo@f1fef158f9
2024-02-04 18:58:53 -05:00
roife
1a2789c922
fix(workspaces): check before loading tab configuration
Fix: #7139
2023-10-05 17:46:46 +02:00
Henrik Lissner
88bb045388
docs(*): replace all-the-icons with nerd-icons
Also colorizes the leading icon in notices.
2023-09-16 20:19:11 +02:00
Emily Bourke
fd98b44e6a tweak(workspaces): prefill current name on rename
This change uses completing-read to get the new name from the user when
renaming workspaces, to allow them to more easily make a small change to
the existing name of a workspace.
2023-09-12 21:23:48 +02:00
Henrik Lissner
1eb3fd3449
bump: :ui
Alexander-Miller/treemacs@76807bef3c -> Alexander-Miller/treemacs@9986d6cd3d
Bad-ptr/persp-mode.el@7a594a3d8f -> Bad-ptr/persp-mode.el@df95ea710e
abo-abo/ace-window@0577c426a9 -> abo-abo/ace-window@77115afc1b
abo-abo/hydra@9e9e00cb24 -> abo-abo/hydra@317e1de330
dgutov/diff-hl@dabb7be628 -> dgutov/diff-hl@d20f16bf5e
dimitri/switch-window@8d9fe251d8 -> dimitri/switch-window@71ef2f54c9
ema2159/centaur-tabs@f4cef95acb -> ema2159/centaur-tabs@a2890d968d
emacs-lsp/lsp-treemacs@2894e6dec5 -> emacs-lsp/lsp-treemacs@a48763ba5d
joostkremers/writeroom-mode@eac1da790f -> joostkremers/writeroom-mode@1fd52848eb
k-talo/volatile-highlights.el@9a20091f0c -> k-talo/volatile-highlights.el@513c8b73cd
rolandwalker/nav-flash@2e31f32085 -> rolandwalker/nav-flash@5d4b485678
rolandwalker/unicode-fonts@47f2397ade -> rolandwalker/unicode-fonts@44d0a22420
seagle0128/doom-modeline@b66d5e5006 -> seagle0128/doom-modeline@6125309c2c
tarsius/hl-todo@e52285965b -> tarsius/hl-todo@a627d33214
2023-02-20 22:47:23 -05:00
Henrik Lissner
086e9a9322
feat(workspaces): +workspace/switch-to: add buffer list column
To offer more context for ivy users while switching between workspaces.

Close: #3006
Co-authored-by: rgrinberg <rgrinberg@users.noreply.github.com>~
2023-02-18 15:27:47 -05:00
roife
d12b0ebc80 fix(workspaces): save current tab-bar tabs to file 2023-02-18 01:01:49 -05:00
Antonio Ruiz
191745424b feat(workspaces): make tab-bar tabs workspace-local 2022-10-05 15:14:44 +02:00
TEC
5ac2a5258b docs: change link format 2022-10-05 01:01:19 +02:00
Henrik Lissner
aa54383b5d
refactor: deprecate doom-etc-dir for doom-data-dir
doom-etc-dir will be renamed to doom-data-dir, to better reflect its
purpose, and align it with XDG_DATA_HOME (where it will be moved to in
v3, where Doom will begin to obey XDG directory conventions more
closely).
2022-08-14 20:43:35 +02:00
Henrik Lissner
ad6a3d0f33
refactor: deprecate featurep! for modulep!
featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.

featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
2022-08-14 20:43:35 +02:00
Henrik Lissner
1abcf913aa
revert: fix(docs): set mode in file-local vars
emacs-straight/org-mode@e22b4eb7aa introduced a breaking change that
made it impossible to rely on .dir-locals.el to change org-mode buffers
in $EMACSDIR to doom-docs-org-mode (without infinite recursion), so we
used file-local variables in 7e400ab.

emacs-straight/org-mode@215de6176b reverted that change, so we can use
.dir-locals.el again, and this is my preference, since it requires less
boilerplate across our hundreds of org files.

Ref: emacs-straight/org-mode@215de6176b
Ref: emacs-straight/org-mode@e22b4eb7aa
Revert: 7e400abdc0
2022-08-07 19:08:07 +02:00
Henrik Lissner
1f8bf7accb
merge: rewrite-docs
I've omitted docs/*.org from this merge, as there is still work left to
do there, but I am pushing the module docs early so folks can benefit
from the new docs sooner.
2022-08-03 03:27:50 +02:00
Henrik Lissner
7e400abdc0
fix(docs): set mode in file-local vars
Due to emacs-straight/org-mode@e22b4eb, a replacement major mode (for
org-mode) can no longer be specified from .dir-locals.el, as it spirals
into infinite recursion. Therefore, a mode: line is needed in all Doom
docs.

Ref: emacs-straight/org-mode@e22b4eb7aa
2022-08-03 02:46:33 +02:00
Henrik Lissner
1255315bfc
refactor(docs): replace nav menus with virtual one
Now that the header is dynamically generated (when doom-docs-mode is
active), a literal header is unnecessary.
2022-08-02 19:37:07 +02:00
Henrik Lissner
e77a45bc22
docs: use lowercase keywords
As per Org's new defaults, which we're adopting elsewhere, so may as
well adopt it here.
2022-08-02 16:23:43 +02:00
Henrik Lissner
d212f3bd13
bump: :ui
Alexander-Miller/treemacs@1820db42c6 -> Alexander-Miller/treemacs@b18a05b1f6
Bad-ptr/persp-mode.el@298df111f0 -> Bad-ptr/persp-mode.el@7a594a3d8f
abo-abo/ace-window@c7cb315c14 -> abo-abo/ace-window@0577c426a9
abo-abo/hydra@2d553787ac -> abo-abo/hydra@9e9e00cb24
doomemacs/themes@56e8a93b2d -> doomemacs/themes@83fd9545c2
edkolev/evil-goggles@08a22058fd -> edkolev/evil-goggles@8f20a16e74
ema2159/centaur-tabs@5860a5c40c -> ema2159/centaur-tabs@f4cef95acb
emacs-lsp/lsp-treemacs@c40a381730 -> emacs-lsp/lsp-treemacs@355e468b7f
seagle0128/doom-modeline@84573ae5e7 -> seagle0128/doom-modeline@ce9899f00a
tarsius/hl-todo@42f744ffb5 -> tarsius/hl-todo@e52285965b

Close: #6228
2022-03-31 21:08:31 +02:00
Henrik Lissner
7246db457c docs: replace doom-source with doom-repo links
I will later use "source" to refer to module sources, so better we avoid
the terminology for now.
2022-02-01 18:55:27 +01:00
Henrik Lissner
88844e9cec docs: simplify internal docs links
Fewer links means less confusion.

- Merge doom-issue and doom-commit links into doom-ref (for auto-linking
  Issue/PR/commit references).
- Merge doom-module-source and doom-docs-source links into doom-source.
- Rename doom-report-issue to doom-report.
- Use '!' as the icon for module issues link.
- Remove doom-repo (replaced with "doom:*" in :lang org module).
- Add doomdir and emacsdir links to :lang org module.
2021-11-21 20:04:28 +01:00
Henrik Lissner
b5a2aa48fe docs(:ui): update READMEs to new format 2021-11-21 20:04:28 +01:00
Henrik Lissner
02850dd6d7 fix(workspaces): wrong-type-argument list error on kill emacs
Amend: 1db18f6e1390
Fix: #5687
2021-11-21 18:49:21 +01:00
Henrik Lissner
e431dbc138 fix(doom-dashboard,workspaces): module init order
Change (and simplify) the load order of Doom's dashboard and persp-mode
so that the dashboard always initializes later. This and 0ab6aba should
fix #5643.

Fix #5643
Ref 0ab6aba056
2021-10-18 01:15:20 +02:00
Henrik Lissner
2f100fef04 fix(workspaces): persist magit-status buffers
Fix #3558
Co-authored-by: Mikhail Levchenko <Mishkun@users.noreply.github.com>
2021-09-29 17:59:51 +02:00
Henrik Lissner
045ea7460d nit: revise and reformat code comments 2021-08-04 01:53:12 -04:00
Henrik Lissner
06392a723f refactor: rename orig-fn arg in advice to fn
A minor tweak to our naming conventions for the first argument of an
:around advice.
2021-08-04 01:53:12 -04:00
Itai Y. Efrat
0e9864d308 selectrum: fix project switching with workspaces
Replicates ivy behavior of opening file in the new workspace
2021-07-25 02:49:41 +03:00
Henrik Lissner
3aeb0c060f Fix #5195: workspace is killed on magit commit
Due to magit now using server-done instead of server-edit as of
magit/magit@5c02910, which calls server-done-hook, which the workspaces
module has a hook on to kill auto-generated, daemon-spawned frames,
causing workspaces to be prematurely killed when commiting in magit.
2021-07-10 16:32:53 -04:00
Colin Woodbury
42ff369142
SPC TAB N binding (#5173)
* Introduce `SPC TAB N` binding

* Add vanilla Emacs binding
2021-07-09 01:13:13 -04:00
Henrik Lissner
84e1554f14 Fix #5109: startup files not added to main persp 2021-05-28 11:43:40 -04:00
Henrik Lissner
87e209badc Remove vestigial mentions of the :feature category
It was removed long, long ago.
2021-03-06 00:49:36 -05:00
Henrik Lissner
fa29a3cf1d Ensure associated workspace is deleted on server-done too
Should catch more corner cases where workspaces are surviving their
emacsclient-spawned frames.
2021-03-05 20:09:22 -05:00
Henrik Lissner
cde7a06bdf
Bump :ui
Alexander-Miller/treemacs@6c00fe7 -> Alexander-Miller/treemacs@389bca1
Bad-ptr/persp-mode.el@c132efe -> Bad-ptr/persp-mode.el@298df11
abo-abo/hydra@112e689 -> abo-abo/hydra@2d55378
dimitri/switch-window@277706b -> dimitri/switch-window@5bba780
ema2159/centaur-tabs@5453317 -> ema2159/centaur-tabs@b172646
emacsorphanage/anzu@7b8688c -> emacsorphanage/anzu@b3d15fb
hlissner/emacs-doom-themes@e55d9a2 -> hlissner/emacs-doom-themes@74ebd77
iqbalansari/emacs-emojify@d886069 -> iqbalansari/emacs-emojify@9fc2277
jaypei/emacs-neotree@5e12716 -> jaypei/emacs-neotree@98fe213
joostkremers/writeroom-mode@8a226a3 -> joostkremers/writeroom-mode@92c47df
seagle0128/doom-modeline@538017a -> seagle0128/doom-modeline@fb34eb5
2020-11-29 14:33:31 -05:00
Henrik Lissner
00b370fdc6
ui/workspaces: persp-local winner-mode history 2020-11-19 00:44:16 -05:00
Henrik Lissner
807f00a470
Fix #4205: void-function (setf persp-buffers) 2020-11-02 23:56:43 -05:00
Henrik Lissner
7d603185e1
Filter dead buffers from persp-mode workspaces
Fix #4196
Fix #1525
2020-11-02 14:43:12 -05:00
Henrik Lissner
8afba81b02
Fix #4037: persp-mode failure at daemon startup
Due to upstream changes.
2020-10-06 14:19:36 -04:00
Henrik Lissner
3f4eaec1af
Fix void-variable bb error when saving workspace 2020-10-05 16:35:58 -04:00
RobinMarchart
9f6cb1a1b4
fix #4025
function was renamed in persp-mode
2020-10-05 12:17:59 +02:00
Henrik Lissner
5b2b660eeb
Bump :ui
Alexander-Miller/treemacs@027e03b -> Alexander-Miller/treemacs@6c00fe7
Bad-ptr/persp-mode.el@14325c1 -> Bad-ptr/persp-mode.el@c132efe
DarthFennec/highlight-indent-guides@a4f7714 -> DarthFennec/highlight-indent-guides@cf352c8
dimitri/switch-window@8710f63 -> dimitri/switch-window@277706b
ema2159/centaur-tabs@7e0332b -> ema2159/centaur-tabs@5453317
emacs-straight/minimap@d8850be -> emacs-straight/minimap@37a0200
hlissner/emacs-doom-themes@24023de -> hlissner/emacs-doom-themes@d6ee47d
hlissner/emacs-solaire-mode@cd63b67 -> hlissner/emacs-solaire-mode@d751c1c
jabranham/mixed-pitch@1cad46f -> jabranham/mixed-pitch@d305108
seagle0128/doom-modeline@ffbaaee -> seagle0128/doom-modeline@538017a

Fix #4023
2020-10-04 23:25:53 -04:00
Henrik Lissner
ea35023765
Fix prefix arg for +workspace/new 2020-10-04 23:17:50 -04:00
t-e-r-m
b632cbaa5c Add projectile dired action in workspaces module
"open project in dired"
2020-08-19 17:37:00 +05:30
Henrik Lissner
08e5b8535a
ui/workspaces: don't persist TRAMP buffers
They're too slow to restore.
2020-08-11 20:53:12 -04:00