43 lines
1.6 KiB
EmacsLisp
43 lines
1.6 KiB
EmacsLisp
;;; module-consult-projectile.el --- consult/projectile integration
|
|
;;;
|
|
;;; Commentary:
|
|
;;;
|
|
;;; Integrate consult with projectile.
|
|
;;;
|
|
;;; Code:
|
|
|
|
(require 'module-pkg)
|
|
(require 'module-consult)
|
|
(require 'module-projectile)
|
|
|
|
(pkg/require 'consult-projectile)
|
|
|
|
(with-eval-after-load 'consult-projectile
|
|
(defun my-consult-projectile-find-file ()
|
|
"Use consult-projectile-find-file, consult-find-file outside of project."
|
|
(interactive)
|
|
(if (projectile-project-p)
|
|
(consult-projectile-find-file)
|
|
(consult-projectile)))
|
|
|
|
(pkg/with-eval-after-load
|
|
(consult projectile)
|
|
|
|
(advice-add 'projectile-find-file :override #'consult-projectile-find-file)
|
|
(advice-add 'projectile-find-dir :override #'consult-projectile-find-dir)
|
|
(advice-add 'projectile-switch-to-buffer :override #'consult-projectile-switch-to-buffer)
|
|
(advice-add 'projectile-switch-project :override #'consult-projectile-switch-project))
|
|
|
|
(global-set-key (kbd "C-x p") projectile-command-map)
|
|
(define-key projectile-command-map (kbd "f") #'consult-projectile-find-file)
|
|
(define-key projectile-command-map (kbd "d") #'consult-projectile-find-dir)
|
|
(define-key projectile-command-map (kbd "b") #'consult-projectile-switch-to-buffer)
|
|
(define-key projectile-command-map (kbd "s") #'consult-projectile-switch-project)
|
|
(define-key projectile-command-map (kbd "p") #'consult-projectile)
|
|
(define-key projectile-command-map (kbd "/") #'consult-ripgrep)
|
|
(define-key projectile-command-map (kbd "f") #'my-consult-projectile-find-file))
|
|
|
|
(provide 'module-consult-projectile)
|
|
|
|
;;; module-consult-projectile.el ends here.
|