doomemacs/modules/tools/prodigy/config.el
Rudi Grinberg 0e9ae176be Set initial state in prodigy to normal
This allows using evil-collection's bindings for this mode.

Signed-off-by: Rudi Grinberg <me@rgrinberg.com>
2021-05-03 16:12:17 -07:00

19 lines
806 B
EmacsLisp

;;; tools/prodigy/config.el -*- lexical-binding: t; -*-
(after! prodigy
(defadvice! +prodigy--add-project-property-a (orig-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 orig-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))