(oni home services emacs): Move yasnippet-capf config into emacs

This commit is contained in:
Tom Willemse 2025-02-12 22:52:06 -08:00
parent d199525e1b
commit bee8b7008c
Signed by: ryuslash
GPG key ID: 7D5C407B435025C1
2 changed files with 32 additions and 40 deletions

View file

@ -86,7 +86,7 @@
#:select (home-emacs-service-type
home-emacs-configuration
home-emacs-helpful-configuration
home-emacs-yasnippet-capf-service-type
home-emacs-yasnippet-capf-configuration
home-emacs-dashboard-service-type
home-emacs-dashboard-configuration
home-emacs-eros-service-type
@ -415,6 +415,8 @@
(configurations
(list
(local-file "../services/emacs/oni-helpful.el")))))
(yasnippet-capf
(home-emacs-yasnippet-capf-configuration))
(configurations
(list
(local-file "../services/emacs/init.el")
@ -427,7 +429,6 @@
"(load custom-file)\n"
"(provide 'init)\n"
";;; init.el ends here\n")))))
(service home-emacs-yasnippet-capf-service-type)
(service home-emacs-dashboard-service-type
(home-emacs-dashboard-configuration
(configurations

View file

@ -52,8 +52,6 @@
#:export (home-emacs-service-type
home-emacs-configuration
home-emacs-helpful-configuration
home-emacs-yasnippet-capf-service-type
home-emacs-yasnippet-capf-configuration
home-emacs-dashboard-service-type
@ -118,6 +116,16 @@
(define-maybe home-emacs-helpful-configuration)
(define-configuration/no-serialization home-emacs-yasnippet-capf-configuration
(package
(package emacs-yasnippet-capf)
"Package to use for setting emacs-yasnippet-capf.")
(configurations
(text-config '())
"Configuration for emacs-yasnippet-capf."))
(define-maybe home-emacs-yasnippet-capf-configuration)
(define-configuration/no-serialization home-emacs-configuration
(package
(package emacs)
@ -128,6 +136,9 @@
(helpful-configuration
maybe-home-emacs-helpful-configuration
"Configuration for helpful.")
(yasnippet-capf
maybe-home-emacs-yasnippet-capf-configuration
"Configuration for yasnippet-capf.")
(configurations
(text-config '())
"A list of other configuration files to autoload"))
@ -139,7 +150,12 @@
(home-emacs-configuration-helpful-configuration config))
(home-emacs-helpful-configuration-package
(maybe-value
(home-emacs-configuration-helpful-configuration config)))))))
(home-emacs-configuration-helpful-configuration config))))
(when (maybe-value-set?
(home-emacs-configuration-yasnippet-capf config))
(home-emacs-yasnippet-capf-configuration-package
(maybe-value
(home-emacs-configuration-yasnippet-capf config)))))))
(define (home-emacs-extensions original-config extension-configs)
(home-emacs-configuration
@ -173,6 +189,16 @@
(maybe-value
(home-emacs-configuration-helpful-configuration config))))
"")
(if (maybe-value-set?
(home-emacs-configuration-yasnippet-capf config))
(serialize-text-config
config (append
(list (mixed-text-file "yasnippet-capf-config"
"(with-eval-after-load 'minibuffer (add-to-list 'completion-at-point-functions #'yasnippet-capf))\n"))
(home-emacs-yasnippet-capf-configuration-configurations
(maybe-value
(home-emacs-configuration-yasnippet-capf config)))))
"")
(format #f "(setq custom-file (expand-file-name ~s user-emacs-directory))~%"
(home-emacs-configuration-custom-file config))
"(load custom-file :noerror)\n"
@ -197,41 +223,6 @@
(default-value (home-emacs-configuration))
(description "Install and configure Emacs.")))
;;; Emacs Yasnippet Capf
(define-configuration/no-serialization home-emacs-yasnippet-capf-configuration
(package
(package emacs-yasnippet-capf)
"Package to use for setting emacs-yasnippet-capf.")
(configurations
(text-config '())
"Configuration for emacs-yasnippet-capf."))
(define (add-emacs-yasnippet-capf config)
(home-emacs-extension
(configurations
(append
(list (mixed-text-file "yasnippet-capf-config"
"(with-eval-after-load 'minibuffer (add-to-list 'completion-at-point-functions #'yasnippet-capf))\n"))
(home-emacs-yasnippet-capf-configuration-configurations config)))))
(define (add-emacs-yasnippet-capf-packages config)
(list (home-emacs-yasnippet-capf-configuration-package config)))
(define home-emacs-yasnippet-capf-service-type
(service-type
(name 'home-yasnippet-capf)
(extensions
(list (service-extension
home-emacs-service-type
add-emacs-yasnippet-capf)
(service-extension
home-profile-service-type
add-emacs-yasnippet-capf-packages)))
(compose identity)
(default-value (home-emacs-yasnippet-capf-configuration))
(description "Install and configure emacs-yasnippet-capf.")))
;;; Emacs Dashboard
(define-configuration/no-serialization home-emacs-dashboard-configuration