summaryrefslogtreecommitdiff
path: root/init.el
diff options
context:
space:
mode:
authorSzymon Szukalski <szymon@szymonszukalski.com>2026-04-09 10:53:27 +1000
committerSzymon Szukalski <szymon@szymonszukalski.com>2026-04-09 10:53:27 +1000
commitbc75732b9d37b77945a977ee9f7892cf6efc79c3 (patch)
tree4d9273ccc12c29eccc44fdc12372bea047414353 /init.el
parent12a5b1464bb919ba23f2aa6c22d44de81e382151 (diff)
Refactor Emacs config into modules
Diffstat (limited to 'init.el')
-rw-r--r--init.el53
1 files changed, 53 insertions, 0 deletions
diff --git a/init.el b/init.el
new file mode 100644
index 0000000..c63d477
--- /dev/null
+++ b/init.el
@@ -0,0 +1,53 @@
+;;; init.el --- Main Emacs entry point -*- lexical-binding: t; -*-
+
+;;; Commentary:
+
+;; Hand-edited runtime entry point for this Emacs configuration.
+
+;;; Code:
+
+(add-to-list
+ 'load-path
+ (expand-file-name "lisp" (file-name-directory (or load-file-name user-init-file))))
+
+(setq ss-enabled-features
+ '(ui org agenda denote capture crm gptel keys))
+
+(require 'ss-core)
+(ss-core-setup)
+
+(when (memq 'ui ss-enabled-features)
+ (require 'ss-ui)
+ (ss-ui-setup))
+
+(when (memq 'org ss-enabled-features)
+ (require 'ss-org)
+ (ss-org-setup))
+
+(when (memq 'agenda ss-enabled-features)
+ (require 'ss-agenda)
+ (ss-agenda-setup))
+
+(when (memq 'denote ss-enabled-features)
+ (require 'ss-denote)
+ (ss-denote-setup))
+
+(when (memq 'capture ss-enabled-features)
+ (require 'ss-capture)
+ (ss-capture-setup))
+
+(when (memq 'crm ss-enabled-features)
+ (require 'ss-crm)
+ (ss-crm-setup))
+
+(when (memq 'gptel ss-enabled-features)
+ (require 'ss-gptel)
+ (ss-gptel-setup))
+
+(when (memq 'keys ss-enabled-features)
+ (require 'ss-keys)
+ (ss-keys-setup))
+
+(ss-core-load-custom-file)
+
+;;; init.el ends here