diff --git a/modules/completion/siren-cape.el b/modules/completion/siren-cape.el index ba05808..5f303e5 100644 --- a/modules/completion/siren-cape.el +++ b/modules/completion/siren-cape.el @@ -21,8 +21,11 @@ (siren-cape-capf-add-hooks t)) (defun siren-cape-capf-add-hooks (&optional local) - (add-hook 'completion-at-point-functions 'siren-yasnippet-capf -65 local) - (add-hook 'completion-at-point-functions 'cape-file -10 local)) + (if local (make-local-variable 'completion-at-point-functions)) + ;; Use `siren-prepend' function instead of `add-hook' to ensure our custom + ;; completion functions are listed before `lsp-completion-at-point'. + (siren-prepend completion-at-point-functions 'cape-file) + (siren-prepend completion-at-point-functions 'siren-yasnippet-capf)) (defun siren-cape-capf-remove-hooks (&optional local) (remove-hook 'completion-at-point-functions 'siren-yasnippet-capf local)