diff options
author | Tom Willemse | 2024-04-19 22:58:03 -0700 |
---|---|---|
committer | Tom Willemse | 2024-04-19 22:58:03 -0700 |
commit | fc494ab25bfe60fb3680b105092ec66e8498631c (patch) | |
tree | 8ff0c478dca35a4f808301e1b8d2b502b0ac83a7 /oni/home/services/emacs.scm | |
parent | cf72a2ebc84be475995ebfc2850a8bbe3c3e1c88 (diff) | |
download | new-dotfiles-fc494ab25bfe60fb3680b105092ec66e8498631c.tar.gz new-dotfiles-fc494ab25bfe60fb3680b105092ec66e8498631c.zip |
feat(emacs): Add ‘org-modern’ configuration
Diffstat (limited to 'oni/home/services/emacs.scm')
-rw-r--r-- | oni/home/services/emacs.scm | 47 |
1 files changed, 44 insertions, 3 deletions
diff --git a/oni/home/services/emacs.scm b/oni/home/services/emacs.scm index 2155b4c..2018be5 100644 --- a/oni/home/services/emacs.scm +++ b/oni/home/services/emacs.scm @@ -15,7 +15,8 @@ emacs-eros emacs-ace-link emacs-pinentry - emacs-vterm)) + emacs-vterm + emacs-org-modern)) #:use-module ((gnu home services) #:select (service-type service-extension @@ -67,7 +68,10 @@ home-emacs-pinentry-configuration home-emacs-vterm-service-type - home-emacs-vterm-configuration)) + home-emacs-vterm-configuration + + home-emacs-org-modern-service-type + home-emacs-org-modern-configuration)) (define-maybe string) @@ -475,7 +479,7 @@ (format #f "(setq vterm-buffer-name-string ~s)\n" buffer-name-string) "")) ";;;;; vterm-config ends here.\n")) - (home-emacs-vterm-configuration-extra-content config))))) + (home-emacs-vterm-configuration-extra-content config))))) (define (add-emacs-vterm-zsh-configuration config) (home-zsh-extension @@ -538,3 +542,40 @@ (compose identity) (default-value (home-emacs-vterm-configuration)) (description "Install and configure emacs-vterm."))) + +;;; Org-modern + +(define-configuration/no-serialization home-emacs-org-modern-configuration + (package + (package emacs-org-modern) + "Package to use for setting emacs-org-modern.") + (extra-content + (text-config '()) + "Extra content for emacs-org-modern configuration.")) + +(define (add-emacs-org-modern-configuration config) + (home-emacs-extension + (configurations + (append + (list (mixed-text-file "org-modern-config" + ";;;;; org-modern-config starts here.\n" + "(with-eval-after-load 'org (global-org-modern-mode))" + ";;;;; org-modern-config ends here.\n")) + (home-emacs-org-modern-configuration-extra-content config))))) + +(define (add-emacs-org-modern-packages config) + (list (home-emacs-org-modern-configuration-package config))) + +(define home-emacs-org-modern-service-type + (service-type + (name 'home-emacs-org-modern) + (extensions + (list (service-extension + home-emacs-service-type + add-emacs-org-modern-configuration) + (service-extension + home-profile-service-type + add-emacs-org-modern-packages))) + (compose identity) + (default-value (home-emacs-org-modern-configuration)) + (description "Install and configure emacs-org-modern."))) |