aboutsummaryrefslogblamecommitdiff
path: root/home/programs/emacs/site-lisp/init-completion.el
blob: 260175613053989c4fb622e0f65fb7e8119c4f2f (plain) (tree)
1
2
3
4
5
6
7
8
9








                                                                          


                              




























                                                          












                                           
;;; init-completion.el --- Configure completion -*- lexical-binding: t -*-
;; Author: Franck Cuny <franck@fcuny.net>

;;; Commentary:

;; Configure completions

;;; Code:

;; default completion behavior
(fido-mode 1)

(use-package consult
  :commands (consult-ripgrep consult-buffer consult-imenu)
  :bind (("C-c m"   . consult-mode-command)
	 ("C-x b"   . consult-buffer)
	 ("C-x r b" . consult-bookmark)
	 ("C-x p b" . consult-project-buffer)
	 ("C-c i"   . consult-imenu)
	 ("M-g e"   . consult-compile-error)
	 ("M-g M-g" . consult-goto-line)
	 ("M-g m"   . consult-mark)
	 ("M-g k"   . consult-global-mark)))

(use-package corfu
  :custom
  (corfu-auto t)
  :bind ("M-/" . completion-at-point)
  :hook ((after-init . global-corfu-mode)
         (global-corfu-mode . corfu-popupinfo-mode)))

(use-package cape)

(use-package marginalia
  :hook (after-init . marginalia-mode))

(use-package orderless
  :custom
  (completion-styles '(orderless basic))
  (completion-category-defaults nil))

(use-package consult-imenu
  :after (consult))

(use-package corfu-popupinfo
  :after corfu
  :hook (corfu-mode . corfu-popupinfo-mode)
  :custom
  (corfu-popupinfo-delay '(0.25 . 0.1))
  (corfu-popupinfo-hide nil))

(provide 'init-completion)

;;; init-completion.el ends here