+ Load flyspell-mode a little later, to allow file/dir-local variables
to customize flyspell.
+ Ensure setters (in merlin's config) are used as late as possible, by
making merlin's (and all the other packages) config run after tuareg
is loaded.
+ As discussed, installing packages locally is a bit unreliable, so I'm
commenting out the +ocaml-site-lisp flag, and rely solely on packages
from MELPA.
+ Add optional ocamlformat check in doctor.el and conditionally load the
ocamlformat package (if editor/format is enabled).
+ Add docstrings to init hooks.
Also removes evil-normalize-keymaps on cider-repl-mode-hook, because cider-repl-mode isn't a minor mode. The purpose of evil-normalize-keymaps is to ensure evil is aware of evil keybinds in minor-mode keymaps when it is first enabled.
I prefer that fuzzy search is disabled by default, for consistency and performance. Fuzzy search tends to be much significantly slower, and no other company backend offers a fuzzy search mechanism (or should).
Fuzzy search is usually gated behind variables and flags, but since opting in here is a trivial one-liner, I don't think it needs one.
- Add a popup rule for the history buffer, since we want to see the REPL change while it's open
- Add hooks to enable company fuzzy completion
- Add more cider configuration options
- Configure Shift-Return to insert a newline and indent in the REPL without submitting the result
- Bind normal state keybindings for the CIDER history buffer
cider-quit kills cider-mode, rendering cider-mode-map keybinds
unavailable, so these commands have been moved to clojure-mode-map, to
ensure they're always available.
Reported by @mfiano
(set-pretty-symbols! '(c-mode c++-mode objc-mode) RULES*)
This fixes a logic bug that prevented RULES from applying to any but the
first mode in the list (e.g. only c-mode will be affected).
which-key labels are registered globally, and will not work for
buffer-local keybinds. Until general is brought in, we'll have to suffer
label-less localleader keybinds.
Since ProofGenerals abbreviation usage interfers with
evil-mode, this empties the abbreviation table of coq-mode.
The abbreviations got transformed into yasnippet snippets
and put into hlissner/emacs-snippets#4.