Files
.emacs.d/lisp/init-workspace.el

63 lines
2.2 KiB
EmacsLisp
Raw Normal View History

2025-12-20 15:13:13 +11:00
;; -*- lexical-binding: t; -*-
2025-12-21 12:57:53 +11:00
2026-03-14 11:42:48 +11:00
;; (use-package project)
(use-package projectile
:hook elpaca-after-init
:config
;; Recommended keymap prefix on macOS
(define-key projectile-mode-map (kbd "s-p") 'projectile-command-map)
;; Recommended keymap prefix on Windows/Linux
(define-key projectile-mode-map (kbd "C-x p") 'projectile-command-map))
2026-01-30 03:52:15 +11:00
2026-03-22 20:26:17 +11:00
(use-package ibuffer-projectile
:config
(add-hook 'ibuffer-hook
2026-03-24 22:21:29 +11:00
(lambda ()
(ibuffer-projectile-set-filter-groups)
(unless (eq ibuffer-sorting-mode 'alphabetic)
(ibuffer-do-sort-by-alphabetic)))))
2026-03-22 20:26:17 +11:00
(use-package consult-projectile
:bind (([remap projectile-find-file] . consult-projectile-find-file)
([remap projectile-recentf] . consult-projectile-recentf)
([remap projectile-switch-project] . consult-projectile-switch-project)
([remap projectile-switch-to-buffer] . consult-projectile-switch-to-buffer)
([remap projectile-find-dir] . consult-projectile-find-dir)))
2026-03-11 21:08:31 +11:00
(global-set-key (kbd "C-x C-b") #'ibuffer)
2026-03-14 11:42:48 +11:00
(use-package eyebrowse
:hook elpaca-after-init
:custom
2026-03-24 22:21:29 +11:00
(eyebrowse-new-workspace t)
2026-03-14 20:30:40 +11:00
:bind (("s-1" . eyebrowse-switch-to-window-config-1)
("s-2" . eyebrowse-switch-to-window-config-2)
("s-3" . eyebrowse-switch-to-window-config-3)
("s-4" . eyebrowse-switch-to-window-config-4)
("s-5" . eyebrowse-switch-to-window-config-5)
("s-6" . eyebrowse-switch-to-window-config-6)
("s-7" . eyebrowse-switch-to-window-config-7)
2026-03-24 22:21:29 +11:00
("s-8" . eyebrowse-switch-to-window-config-8)))
2026-03-20 00:44:25 +11:00
2026-03-24 22:21:29 +11:00
(use-package easysession
:diminish
:demand t
:bind (("C-c C-s l" . easysession-switch-to)
("C-c C-s L" . easysession-switch-to-and-restore-geometry)
("C-c C-s s" . easysession-save)
("C-c C-s r" . easysession-rename)
("C-c C-s R" . easysession-reset)
("C-c C-s u" . easysession-unload)
("C-c C-s d" . easysession-delete))
2026-03-14 19:46:30 +11:00
:custom
(easysession-switch-to-save-session t)
(easysession-switch-to-exclude-current nil)
:config
(setq easysession-setup-load-session t)
2026-03-20 00:44:25 +11:00
(easysession-setup)
(easysession-magit-mode)
(easysession-scratch-mode))
2026-03-14 19:46:30 +11:00
2025-12-20 15:13:13 +11:00
(provide 'init-workspace)