19 lines
796 B
EmacsLisp
19 lines
796 B
EmacsLisp
;;; tools/prodigy/config.el -*- lexical-binding: t; -*-
|
|
|
|
(after! prodigy
|
|
(defadvice! +prodigy--add-project-property-a (fn &rest args)
|
|
"Adds a new :project property to prodigy services, which hides the service
|
|
unless invoked from the relevant project."
|
|
:around #'prodigy-services
|
|
(let ((project-root (downcase (or (doom-project-root) default-directory)))
|
|
(services (apply fn args)))
|
|
(if current-prefix-arg
|
|
services
|
|
(cl-remove-if-not (lambda (service)
|
|
(let ((project (plist-get service :project)))
|
|
(or (not project)
|
|
(file-in-directory-p project-root project))))
|
|
services))))
|
|
|
|
(define-key prodigy-mode-map "d" #'+prodigy/delete))
|
|
|