General code and comment improvements.
Also, removed the :desc's for csv-mode because map! is currently unable
to set which-key descriptions mode-locally, and should be avoided for
anything but global keybinds. This will be fixed when General is
introduced into Doom.
I know this is redundant with the pre-command-hook hook, but the hook
allows us to lazy load the package, and the mode allows other modes (or
the user) to interactively disable it.
For example, evil-mc disabled it while cursors are active due to
incompatibility. This isn't possible if the mode isn't enabled to begin
with.
Due to a bug crossing over from +evil-want-o/O-continue-comments
functionality. It has also been refactored for performance. This also
fixes an issue where smartparens functions could be called before
smartparens was loaded, making o/O inoperable.
+ Adds :add/:remove support.
+ Adds conditional docset support through nested vectors
+ Removes support for setting docsets on a minor-mode basis (mostly for
performance reasons, but now that we have conditional docsets, it's
unnecessary).
+ Uses alist variable to store config, rather than hooks
+ Added check for installed docsets in +lookup/documentation
+ Set docsets for various language modules (c-mode, c++-mode, css-mode,
scss-mode, sass-mode, web-mode, go-mode, racket-mode, emacs-lisp-mode,
js2-mode, rjsx-mode, typescript-mode, rust-mode, and php-mode)
+ Made *eww* popups for dash docsets larger
+ Renamed set-docset! => set-docsets! (set-docset! is aliased to
set-docsets!)
+ New +lookup/install-docset alias
New snippets (created with yas-new-snippet) may not yet be associated
with a file when it is passed to the functions in yas-prompt-functions.
One of those functions, +snippets-prompt-private, prioritizes private
snippets over default ones, but determines which is which with
`file-in-directory-p`, which expects string arguments.
To fix this, we can safely assume that if a snippet has no associated
file, it is a private snippet.
devdocs-lookup is broken at the moment. devdocs search is still
available through +lookup/online as a provider however. This may be
reversed later, when (and if) we find a better devdocs backend.
This would run indent-according-to-mode after creating a new line, which
would often throw new comment lines out of whack. Now it preserves the
indentation of the originating line.
Also fixes continuation whitespace issues with evil-open-above on
C-style block comments.
In the case of snippet conflicts, you'd normally be prompted to select
which snippet you want. Built-in snippets are now disregarded if
conflicting private ones exist.
This makes it easier for users to add overriding snippets to
DOOMDIR/snippets.
In likely case where (bounds-of-thing-at-point 'symbol) returns nil,
cl-destructuring-bind would throw a wrong-number-of-args error we don't
care about.
+ Improve error handling when no PATTERN is given (reported by @ar1a)
+ Report correct number of resulting cursors
+ Handle edge case where only one cursor is created
+ Report edge case where no cursors are created