summaryrefslogtreecommitdiff
path: root/emacs
diff options
context:
space:
mode:
authorFranck Cuny <franck@fcuny.net>2022-09-17 18:05:15 -0700
committerFranck Cuny <franck@fcuny.net>2022-09-17 19:36:58 -0700
commit87f4197f234ef838843f0df175d0c5834e58b76e (patch)
treeccad1db45f13fb493c175b11becee8d6f0d881a3 /emacs
parentfeat(lang/nix): configure Emacs for nix (diff)
downloademacs.d-87f4197f234ef838843f0df175d0c5834e58b76e.tar.gz
ref(completion): add more packages for completion
Get LSP to work with cape and corfu for the completion. Change-Id: Id8f01b1dee77957ff5ba27ed471707b7b9c7dc93
Diffstat (limited to 'emacs')
-rw-r--r--emacs/custom/my-completion.el22
-rw-r--r--emacs/custom/my-lsp.el9
-rw-r--r--emacs/custom/my-packages.el3
-rw-r--r--emacs/custom/my-settings.el2
-rw-r--r--emacs/custom/my-text.el4
5 files changed, 28 insertions, 12 deletions
diff --git a/emacs/custom/my-completion.el b/emacs/custom/my-completion.el
index 818355b..ecc5adb 100644
--- a/emacs/custom/my-completion.el
+++ b/emacs/custom/my-completion.el
@@ -9,6 +9,11 @@
(require 'marginalia)
(require 'corfu)
(require 'consult)
+(require 'savehist)
+(require 'cape)
+(require 'tempel)
+
+(savehist-mode t)
(setq vertico-multiform-categories
'((consult-grep buffer)))
@@ -22,13 +27,18 @@
(setq completion-styles '(orderless basic))
(setq completion-category-defaults nil)
-(setq corfu-cycle t) ;; Enable cycling for `corfu-next/previous'
-(setq corfu-auto t) ;; Enable auto completion
+(setq corfu-cycle t) ;; Enable cycling for `corfu-next/previous'
+(setq corfu-auto t) ;; Enable auto completion
+(setq corfu-max-width 80) ;; Default is 100 and is too wide
+
+(vertico-mode t) ;; Enable vertico globally
+(vertico-multiform-mode t) ;; Enable vertico globally
+(marginalia-mode t) ;; Enable marginalia globally
+(global-corfu-mode) ;; Enable corfu globally
-(vertico-mode)
-(vertico-multiform-mode 1)
-(marginalia-mode)
-(global-corfu-mode)
+(add-to-list 'completion-at-point-functions #'cape-file)
+(add-to-list 'completion-at-point-functions #'cape-abbrev)
+(add-to-list 'completion-at-point-functions #'cape-ispell)
(global-set-key (kbd "C-c m") 'consult-mode-command)
(global-set-key (kbd "C-x b") 'consult-buffer)
diff --git a/emacs/custom/my-lsp.el b/emacs/custom/my-lsp.el
index 0cb62bd..98c061a 100644
--- a/emacs/custom/my-lsp.el
+++ b/emacs/custom/my-lsp.el
@@ -22,6 +22,15 @@
(add-hook 'lsp-mode-hook #'lsp-ui-mode)
+(require 'consult-lsp)
+(define-key lsp-mode-map [remap xref-find-apropos] #'consult-lsp-symbols)
+
+(require 'lsp-completion)
+(setq lsp-completion-provider :none) ;; I use corfu
+(add-hook 'lsp-completion-mode-hook
+ (lambda ()
+ (setf (alist-get 'lsp-capf completion-category-defaults) '((styles . (orderless flex))))))
+
(provide 'my-lsp)
;;; my-lsp.el ends here
diff --git a/emacs/custom/my-packages.el b/emacs/custom/my-packages.el
index 67bb510..569fb40 100644
--- a/emacs/custom/my-packages.el
+++ b/emacs/custom/my-packages.el
@@ -60,10 +60,13 @@
(straight-use-package 'tree-sitter-langs)
;; packages for navigation
+(straight-use-package 'cape)
(straight-use-package 'consult)
+(straight-use-package 'consult-lsp)
(straight-use-package 'corfu)
(straight-use-package 'marginalia)
(straight-use-package 'orderless)
+(straight-use-package 'tempel)
(straight-use-package 'vertico)
(straight-use-package 'which-key)
diff --git a/emacs/custom/my-settings.el b/emacs/custom/my-settings.el
index e6c1ce9..39140a3 100644
--- a/emacs/custom/my-settings.el
+++ b/emacs/custom/my-settings.el
@@ -45,8 +45,6 @@
(customize-set-variable 'history-length 1000)
(customize-set-variable 'history-delete-duplicates t)
-(customize-set-variable 'savehist-save-minibuffer-history t)
-(add-hook 'after-init-hook #'savehist-mode)
(add-hook 'after-init-hook 'midnight-mode)
diff --git a/emacs/custom/my-text.el b/emacs/custom/my-text.el
index 0c99ba6..99961d8 100644
--- a/emacs/custom/my-text.el
+++ b/emacs/custom/my-text.el
@@ -20,10 +20,6 @@
(when (executable-find "pandoc")
(customize-set-variable 'markdown-command "pandoc -f markdown -t html"))
-;; https://www.masteringemacs.org/article/text-expansion-hippie-expand
-;; replace default keybinding for `dabbrev' with `hippie-expand'
-(global-set-key (kbd "M-/") 'hippie-expand)
-
(setq only-global-abbrevs nil)
(eval-after-load 'abbrev
(let ((table text-mode-abbrev-table))