diff --git a/doom.d/config.el b/doom.d/config.el index 556231a..4849f9e 100644 --- a/doom.d/config.el +++ b/doom.d/config.el @@ -151,8 +151,13 @@ (use-package! deadgrep :bind ("C-c s r" . deadgrep)) -(after! flyspell - (add-hook 'prog-mode-hook #'flyspell-prog-mode)) +(after! spell-fu + (add-hook 'spell-fu-mode + (lambda () + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en")) + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en-science")) + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en-computers")))) + (bind-key "C-." #'+spell/correct)) (setq org-hide-emphasis-markers t org-pretty-entities t) @@ -319,7 +324,9 @@ work if it thinks it needs to." lsp-rust-analyzer-experimental-proc-attr-macros t lsp-rust-analyzer-proc-macro-enable t lsp-rust-analyzer-use-rustc-wrapper-for-build-scripts t - lsp-rust-analyzer-import-enforce-granularity t)) + lsp-rust-analyzer-import-enforce-granularity t + lsp-rust-analyzer-diagnostics-enable-experimental t + lsp-rust-analyzer-display-chaining-hints t)) (use-package! markdown-mode :mode ("README\\.md" . gfm-mode) diff --git a/doom.d/config.org b/doom.d/config.org index f5fc148..186a9a7 100644 --- a/doom.d/config.org +++ b/doom.d/config.org @@ -223,10 +223,15 @@ Ripgrep, but from within emacs :bind ("C-c s r" . deadgrep)) #+end_src ** Spell Checking -Hook ~flyspell-prog-mode~ into ~prog-mode~ +Add in all of our dictionaries #+begin_src emacs-lisp -(after! flyspell - (add-hook 'prog-mode-hook #'flyspell-prog-mode)) +(after! spell-fu + (add-hook 'spell-fu-mode + (lambda () + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en")) + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en-science")) + (spell-fu-dictionary-add (spell-fu-get-ispell-dictionary "en-computers")))) + (bind-key "C-." #'+spell/correct)) #+end_src * Org Mode Improvements to the best mode in emacs @@ -499,7 +504,9 @@ Most of these are defaults, but I like having them explicit for my sanity lsp-rust-analyzer-experimental-proc-attr-macros t lsp-rust-analyzer-proc-macro-enable t lsp-rust-analyzer-use-rustc-wrapper-for-build-scripts t - lsp-rust-analyzer-import-enforce-granularity t)) + lsp-rust-analyzer-import-enforce-granularity t + lsp-rust-analyzer-diagnostics-enable-experimental t + lsp-rust-analyzer-display-chaining-hints t)) #+end_src * Composition Modes for handling plain text and prose diff --git a/doom.d/init.el b/doom.d/init.el index 23a8383..bd596b4 100644 --- a/doom.d/init.el +++ b/doom.d/init.el @@ -55,7 +55,7 @@ :checkers (syntax +childframe) ; tasing you for every semicolon you forget - (spell +flyspell +hunspell +everywhere) ; tasing you for misspelling mispelling + (spell +aspell +everywhere) ; tasing you for misspelling mispelling :tools (debugger +lsp) ; stepping through code, to help you add bugs diff --git a/home-manager/programs/emacs.nix b/home-manager/programs/emacs.nix index dc93344..8399b26 100644 --- a/home-manager/programs/emacs.nix +++ b/home-manager/programs/emacs.nix @@ -17,6 +17,11 @@ libnotify # For flash cards anki + # For spelling + aspell + aspellDicts.en + aspellDicts.en-science + aspellDicts.en-computers # Desktop file for org-protocol (makeDesktopItem { name = "org-protocol";