diff --git a/core/siren-core-performance.el b/core/siren-core-performance.el index 65cb432..6991724 100644 --- a/core/siren-core-performance.el +++ b/core/siren-core-performance.el @@ -8,13 +8,16 @@ ;; Setup and use gcmh-mode for improved garbage collection. (use-package gcmh + :demand :hook - (emacs-startup . (lambda() (gcmh-mode +1))) (focus-out-hook . gcmh-idle-garbage-collect) :custom (gcmh-idle-delay 10) - (gcmh-high-cons-threshold 104857600)) + (gcmh-high-cons-threshold 104857600) + + :config + (gcmh-mode +1)) (provide 'siren-core-performance) ;;; siren-core-performance.el ends here diff --git a/modules/editor/siren-doom-modeline.el b/modules/editor/siren-doom-modeline.el index a54042f..951e94d 100644 --- a/modules/editor/siren-doom-modeline.el +++ b/modules/editor/siren-doom-modeline.el @@ -7,8 +7,6 @@ ;;; Code: (use-package doom-modeline - :hook (emacs-startup . doom-modeline-mode) - :custom (doom-modeline-bar-width 3) (doom-modeline-buffer-encoding nil) @@ -22,7 +20,10 @@ (doom-modeline-minor-modes t) (doom-modeline-persp-name nil) (doom-modeline-vcs-max-length 24) - (doom-modeline-workspace-name nil)) + (doom-modeline-workspace-name nil) + + :config + (doom-modeline-mode)) (provide 'siren-doom-modeline) ;;; siren-doom-modeline.el ends here diff --git a/modules/editor/siren-edit-server.el b/modules/editor/siren-edit-server.el index ff6213a..38740d1 100644 --- a/modules/editor/siren-edit-server.el +++ b/modules/editor/siren-edit-server.el @@ -8,7 +8,6 @@ (use-package edit-server :if window-system - :hook (emacs-startup . edit-server-start) :custom (edit-server-default-major-mode 'markdown-mode) @@ -17,7 +16,10 @@ (width . 90) (height . 45) (minibuffer . t) - (menu-bar-lines . t)))) + (menu-bar-lines . t))) + + :config + (edit-server-start)) (provide 'siren-edit-server) ;;; siren-edit-server.el ends here diff --git a/modules/editor/siren-undo-tree.el b/modules/editor/siren-undo-tree.el index 0c43eff..dc6618f 100644 --- a/modules/editor/siren-undo-tree.el +++ b/modules/editor/siren-undo-tree.el @@ -7,9 +7,7 @@ ;;; Code: (use-package undo-tree - :hook - (emacs-startup . global-undo-tree-mode) - + :demand :bind (:map undo-tree-map ("C-x u" . undo-tree-visualize) @@ -30,6 +28,8 @@ (undo-tree-auto-save-history nil) :config + (global-undo-tree-mode) + ;; Unbind keys that I don't use. (unbind-key "C-/" undo-tree-map) (unbind-key "C-?" undo-tree-map) diff --git a/modules/projects/siren-projectile.el b/modules/projects/siren-projectile.el index e958bf2..52c5572 100644 --- a/modules/projects/siren-projectile.el +++ b/modules/projects/siren-projectile.el @@ -7,9 +7,6 @@ ;;; Code: (use-package projectile - :hook - (emacs-startup . projectile-mode) - :bind ("C-c p p" . projectile-switch-project) ("C-c p k" . projectile-kill-buffers) @@ -58,7 +55,9 @@ (push "Rakefile" projectile-project-root-files) ;; Treat separate directories with Gemfiles within a single git repo as ;; separate projects. - (push "Gemfile" projectile-project-root-files-bottom-up)) + (push "Gemfile" projectile-project-root-files-bottom-up) + + (projectile-mode)) (provide 'siren-projectile) ;;; siren-projectile.el ends here diff --git a/modules/text-editing/siren-yasnippet.el b/modules/text-editing/siren-yasnippet.el index d54503b..61f2ad3 100644 --- a/modules/text-editing/siren-yasnippet.el +++ b/modules/text-editing/siren-yasnippet.el @@ -8,15 +8,13 @@ (use-package yasnippet :diminish yas-minor-mode - :hook - (emacs-startup . yas-global-mode) :config + (yas-global-mode) (yas-reload-all)) (use-package yasnippet-snippets - :defer t - :after (yasnippet)) + :after yasnippet) (provide 'siren-yasnippet) ;;; siren-yasnippet.el ends here diff --git a/modules/version-control/siren-diff-hl.el b/modules/version-control/siren-diff-hl.el index 4904aca..1cbd949 100644 --- a/modules/version-control/siren-diff-hl.el +++ b/modules/version-control/siren-diff-hl.el @@ -10,10 +10,15 @@ (use-package diff-hl :hook - (emacs-startup . global-diff-hl-mode) - (emacs-startup . diff-hl-flydiff-mode) + (prog-mode . siren-turn-on-diff-hl-mode) + (text-mode . siren-turn-on-diff-hl-mode) (dired-mode . diff-hl-dired-mode) - (magit-post-refresh . diff-hl-magit-post-refresh)) + (magit-post-refresh . diff-hl-magit-post-refresh) + + :init + (defun siren-turn-on-diff-hl-mode () + (turn-on-diff-hl-mode) + (diff-hl-flydiff-mode 1))) (provide 'siren-diff-hl) ;;; siren-diff-hl.el ends here diff --git a/modules/workspaces/siren-desktop.el b/modules/workspaces/siren-desktop.el index cbaf927..fe9d95d 100644 --- a/modules/workspaces/siren-desktop.el +++ b/modules/workspaces/siren-desktop.el @@ -10,10 +10,8 @@ (use-package desktop :straight (:type built-in) - :demand t :hook - (emacs-startup . siren-desktop-setup) (desktop-after-read . siren-desktop-after-read-hook) :custom @@ -24,6 +22,8 @@ (desktop-restore-frames t) :config + (siren-desktop-setup) + (add-to-list 'desktop-clear-preserve-buffers "\\*straight-process\\*") (add-to-list 'desktop-clear-preserve-buffers "\\*Async-native-compile-log\\*") (push '(alpha . :never) frameset-filter-alist) @@ -71,9 +71,6 @@ :force-onscreen desktop-restore-forces-onscreen))) (use-package desktop+ - :hook - (emacs-startup . siren-desktop+-setup) - :bind (:map siren-workspace-map ("C-z c" . desktop+-create) @@ -85,6 +82,9 @@ ("C-z l" . desktop+-load) ("C-z C-l" . desktop+-load)) + :config + (siren-desktop+-setup) + :init (defvar siren-desktop+-base-dir (expand-file-name "desktops" siren-dir)) diff --git a/modules/workspaces/siren-persp-mode.el b/modules/workspaces/siren-persp-mode.el index c705abf..dfa3772 100644 --- a/modules/workspaces/siren-persp-mode.el +++ b/modules/workspaces/siren-persp-mode.el @@ -10,9 +10,6 @@ (require 'siren-workspace-map) (use-package persp-mode - :hook - (emacs-startup . persp-mode) - :bind ("s-}" . persp-next) ("s-{" . persp-prev) @@ -180,6 +177,8 @@ ARG counts from 1." (if name (persp-switch name)))) :config + (persp-mode) + (add-hook 'persp-common-buffer-filter-functions 'siren-persp-mode-filter-magit-buffers) diff --git a/modules/workspaces/siren-tab-bar.el b/modules/workspaces/siren-tab-bar.el index b360218..5e33949 100644 --- a/modules/workspaces/siren-tab-bar.el +++ b/modules/workspaces/siren-tab-bar.el @@ -11,9 +11,6 @@ (use-package tab-bar :straight (:type built-in) - :hook - (emacs-startup . siren-tab-bar-setup) - :bind ("s-}" . tab-next) ("s-{" . tab-previous) @@ -59,6 +56,9 @@ (tab-bar-new-tab-choice "*scratch*") (tab-bar-tab-hints nil) + :config + (siren-tab-bar-setup) + :init (defun siren-tab-bar-setup () (tab-bar-mode)