diff options
author | Ashton Wiersdorf <mail@wiersdorf.dev> | 2023-07-25 18:54:52 -0600 |
---|---|---|
committer | Ashton Wiersdorf <mail@wiersdorf.dev> | 2023-07-25 18:54:52 -0600 |
commit | 9943e143d7a581535a61eb3ce3e0a7aef56a7c39 (patch) | |
tree | 32923ccacaea51eac64d4dd2d297d8d967c34b63 | |
parent | c784ff61c302017085586075e775dbdbc8735f63 (diff) |
Expand modus config; improve Elgot, vertico config; fix corfu load
-rw-r--r-- | init.el | 23 | ||||
-rw-r--r-- | mixins/base.el | 32 | ||||
-rw-r--r-- | mixins/dev.el | 12 |
3 files changed, 52 insertions, 15 deletions
@@ -184,11 +184,26 @@ If the new path's directories does not exist, create them." ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; -;; We just use the built-in high contrast theme modus-vivendi -(load-theme 'modus-vivendi) +(use-package emacs + :config + (require-theme 'modus-themes) + + (setq modus-themes-italic-constructs nil + modus-themes-bold-constructs nil + modus-themes-disable-other-themes t + modus-themes-prompts '(italic bold) + modus-themes-org-blocks 'gray-background + modus-themes-completion '((matches . (extrabold)) + (selection . (semibold italic text-also))) + modus-themes-syntax '(green-strings) + modus-themes-region '(bg-only)) + + (setq modus-themes-common-palette-overrides + '((border-mode-line-active unspecified) + (border-mode-line-inactive unspecified))) + + (load-theme 'modus-vivendi)) ; for light theme, use modus-operandi -;; If you like light-mode themes instead, use this: -;(load-theme 'modus-operandi) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; diff --git a/mixins/base.el b/mixins/base.el index cf2c0ce..20bb957 100644 --- a/mixins/base.el +++ b/mixins/base.el @@ -72,9 +72,14 @@ (use-package vertico :ensure t :init - (fido-mode -1) + ;; You'll want to make sure that e.g. fido-mode isn't enabled (vertico-mode)) +(use-package vertico-directory + :after vertico + :bind (:map vertico-map + ("M-DEL" . vertico-directory-delete-word))) + ;; Marginalia: annotations for minibuffer (use-package marginalia :ensure t @@ -84,18 +89,23 @@ ;; Popup completion-at-point (use-package corfu :ensure t - :config - (global-corfu-mode)) + :init + (global-corfu-mode) + :bind + (:map corfu-map + ("SPC" . corfu-insert-separator) + ("C-n" . corfu-next) + ("C-p" . corfu-previous))) ;; Part of corfu -;; (use-package corfu-popupinfo -;; :after corfu -;; :hook (corfu-mode . corfu-popupinfo-mode) -;; :custom -;; (corfu-popupinfo-delay '(0.25 . 0.1)) -;; (corfu-popupinfo-hide nil) -;; :config -;; (corfu-popupinfo-mode)) +(use-package corfu-popupinfo + :after corfu + :hook (corfu-mode . corfu-popupinfo-mode) + :custom + (corfu-popupinfo-delay '(0.25 . 0.1)) + (corfu-popupinfo-hide nil) + :config + (corfu-popupinfo-mode)) ;; Make corfu popup come up in terminal overlay (use-package corfu-terminal diff --git a/mixins/dev.el b/mixins/dev.el index c92075e..29db907 100644 --- a/mixins/dev.el +++ b/mixins/dev.el @@ -10,12 +10,23 @@ ;;; Contents: ;;; +;;; - Built-in config for developers ;;; - Version Control ;;; - Common file types ;;; - Eglot, the built-in LSP client for Emacs ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;; +;;; Built-in config for developers +;;; +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; + +(use-package emacs + :hook + ((prog-mode . electric-pair-mode))) + +;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; +;;; ;;; Version Control ;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; @@ -60,6 +71,7 @@ (eglot-send-changes-idle-time 0.1) :config + (fset #'jsonrpc--log-event #'ignore) ; massive perf boost---don't log every event ;; Sometimes you need to tell Eglot where to find the language server ; (add-to-list 'eglot-server-programs ; '(haskell-mode . ("haskell-language-server-wrapper" "--lsp"))) |