Commit graph

157 commits

Author SHA1 Message Date
Henrik Lissner
ad6a3d0f33
refactor: deprecate featurep! for modulep!
featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.

featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
2022-08-14 20:43:35 +02:00
Henrik Lissner
0407621aff
refactor: deprecate EMACS2[89]+, NATIVECOMP, MODULES
To reduce redundancy, remove the maintenance hassle that version
constants would impose later on, and rely on built-in
facilities (featurep) more over global variables or doomisms, these
global constants have been deprecated in favor of Emacs "features":

- EMACS28+   -- replace with (> emacs-major-version 27)
- EMACS29+   -- replace with (> emacs-major-version 28)
- NATIVECOMP -- replace with (featurep 'native-compile)
- MODULES    -- replace with (featurep 'dynamic-modules)

(These constants will be formally removed when v3 is released. The IS-*
constants are likely next, but I haven't decided on their substitutes
yet)

I also decided to follow native-compile's example and provide features
for Emacs' system features (since system-configuration-features' docs
outs itself as a poor method to detect features):

- dynamic-modules
- jansson
- native-compile -- this one already exists, but will instead be removed
  if it's non-functional; i.e. (native-comp-available-p) returns nil.

These are now detectable using featurep, which is fast and built-in.
2022-08-14 20:43:35 +02:00
Henrik Lissner
118f0c416a
refactor(evil): replace evil-visual-update-x-selection advice
With the new evil-visual-update-x-selection-p setting.

Also adds a more descriptive comment to this design choice.
2022-08-10 13:18:34 +02:00
Henrik Lissner
27a448b04b
feat(vc-gutter): add +diff-hl backend
This adds an alternative backend to the :ui vc-gutter module, enabled
with the +diff-hl flag. In the future, I intend for diff-hl to replace
git-gutter, as it is slightly faster and depends on more native
functionality (vc.el), but it's still a little buggy. It will remain
opt-in until those issues are sorted out.
2022-08-08 18:23:47 +02:00
ivanbrennan
90c510caca refactor(evil): remove evil-want-C-w-scroll
This appears to have been added accidentally in the following commit:
8b9d4a94bb

The codebase contains no references to it.
2022-08-02 20:36:59 +02:00
Henrik Lissner
31519d393a
bump: :editor evil
emacs-evil/evil-collection@e557188692 -> emacs-evil/evil-collection@6cc02b238c
emacs-evil/evil@3e41a82333 -> emacs-evil/evil@157af04d2c
hlissner/evil-snipe@a79177df40 -> hlissner/evil-snipe@c07788c35c
redguardtoo/evil-nerd-commenter@42ba1a473b -> redguardtoo/evil-nerd-commenter@386cd758a4
2022-06-17 18:21:23 +02:00
Quoc Huy Vu
0352ade454 fix(evil): correct typesetting quotations in latex
Use `evil-embrace` for typsetting quotations in latex instead of
`evil-surround`.
2021-11-30 14:05:57 +01:00
Artem Smaznov
68c5336972
fix(evil): disable evil-snipe in dired (#5417)
Fix #3359
2021-10-07 03:11:03 +02:00
Henrik Lissner
06392a723f refactor: rename orig-fn arg in advice to fn
A minor tweak to our naming conventions for the first argument of an
:around advice.
2021-08-04 01:53:12 -04:00
Wetlize
e12519d250 editor/evil: Add gr keybinding to refresh helpful buffers 2021-07-25 22:36:01 +03:00
Henrik Lissner
39e39d7f3f Bind gO -> imenu
In Neovim, gO is bound to "open outline for current buffer". Emacs'
analogue for this is imenu. Plus, evil has no default keybind for gO.
2021-07-23 15:44:12 -04:00
Henrik Lissner
751569f545 Fix +tabs:previous-or-goto typo 2021-06-06 17:49:26 -04:00
Henrik Lissner
47bce8856d Fix gr in compilation buffers (for evil users) 2021-06-06 01:19:49 -04:00
Henrik Lissner
ea80826fd2 gt/gT = add goto Nth tab behavior
As it does in vim.
2021-06-05 14:24:17 -04:00
Henrik Lissner
d32698b326 editor/evil: remove redundant put & add comment
evil-define-key* now declares its own indentation, so I don't have to.
2021-05-29 12:48:44 -04:00
Henrik Lissner
d1bed29680 Half-revert 69ea5c202
Fix cursor color stickiness when toggling emacs state.
2021-05-29 12:45:17 -04:00
Henrik Lissner
69ea5c2020 editor/evil: simplify cursor color change logic
Fixes race conditions where the cached cursor's color doesn't match the
loaded theme's.
2021-05-28 14:06:16 -04:00
Henrik Lissner
3ba364ae10 Minor refactoring across the board 2021-05-23 22:09:07 -04:00
Henrik Lissner
b029fdfc9c evil-respect-visual-line-mode = nil
Reverts f0eb015

The conflicts are not resolved. This also breaks propagated edits on
visual line + I/A. A more convoluted fix is needed.

Relevant to #2447
2021-05-10 03:12:31 -04:00
Henrik Lissner
437c33a8b2 Fix #4949: evil-want-visual-char-semi-exclusive = nil
This setting is _old_. Why it was set has been long forgotten, so I will
revert it to its default value of nil (which also fixes #4949).
2021-04-29 18:18:17 -04:00
Henrik Lissner
065d06edbb Bump :editor evil
emacs-evil/evil@d998a81 -> emacs-evil/evil@1b3db63
cute-jumper/evil-embrace.el@4379ade -> cute-jumper/evil-embrace.el@464e8ec

cute-jumper/evil-embrace.el#7 was merged, so our hack is no longer
needed.
2021-04-18 22:25:45 -04:00
Henrik Lissner
1ebfa35b71 editor/evil: fix csw, csW, css, & csp text objects
Until cute-jumper/evil-embrace.el#7 is merged.
2021-04-18 01:21:41 -04:00
Henrik Lissner
ce65645fb8 Minor refactors & comment revision 2021-03-27 18:27:19 -04:00
Henrik Lissner
f0eb0151f6 evil-respect-visual-line-mode = t
Reverts c733a6a

The previously reported issues seem to be resolved? Just have to wait
and see...

Closes #2447
2021-03-06 14:00:48 -05:00
Henrik Lissner
2a4509c42a editor/evil: fix typo in +evil-window-split-and-follow
And conform these commands to naming conventions.
2021-03-06 10:31:10 -05:00
Henrik Lissner
0917187f20 editor/evil: bind C-w {S,V} to split-and-follow 2021-03-06 09:59:50 -05:00
Henrik Lissner
f1d89bf9c2 Bind gI and gA to new +lookup commands
Since these aren't used otherwise.
2021-02-26 21:33:00 -05:00
Henrik Lissner
c049480cbd Fix evil-join filling non-comments poorly 2021-02-25 13:59:43 -05:00
Henrik Lissner
16a495c97d Fix #4548: global TAB overwritten by evil keybind 2021-02-06 06:54:18 -05:00
Dan LaManna
08354f3316 Fix various broken links 2021-01-17 15:08:21 -05:00
Henrik Lissner
6970903a43
Fix #4465: >,< not shifting whole lines
This fixes make > and < behave as it does in vim in regular visual mode.
2021-01-03 17:18:43 -05:00
Henrik Lissner
9490d42cd3
Comment revision 2020-12-14 15:48:29 -05:00
Henrik Lissner
96d7e50f3e
Distinguish <C-i> from "C-i" 2020-12-11 15:50:02 -05:00
Henrik Lissner
d88e0795b6
Allow eldoc after doom/escape or evil state change 2020-12-02 17:58:10 -05:00
Henrik Lissner
16344d0f5e
Fix #4286: incorrect cursor color 2020-11-21 01:39:25 -05:00
Henrik Lissner
a14fb64c0c
Fix #4268: off-by-one region on double-click 2020-11-14 13:58:57 -05:00
Henrik Lissner
a68b49a98e
Append evil cursor color init hooks
Makes it easier for users to add their own customizations to the cursor
before this fires.
2020-11-10 18:36:48 -05:00
Henrik Lissner
e574c3470d
Limit evil-textobj-anyblock to non-quotes
Now that we have a dedicated q text object.
2020-10-27 23:20:22 -04:00
Henrik Lissner
164b997cb0
Add q text-object for all quotes 2020-10-27 23:18:06 -04:00
Henrik Lissner
1c6ea87832
Remap comment-line to evilnc-comment-or-uncomment-lines 2020-10-20 16:52:48 -04:00
Henrik Lissner
923e8c88ee
Extend g s {w,W,e,E,ge,gE} scope to visible buffer
Instead of only the current line.
2020-10-15 18:13:42 -04:00
Henrik Lissner
1757dd1700
Bump :editor evil
emacs-evil/evil@1e7aa5b -> emacs-evil/evil@373a57e
redguardtoo/evil-nerd-commenter@87734b9 -> redguardtoo/evil-nerd-commenter@b670f69
emacs-evil/evil-collection@c136589 -> emacs-evil/evil-collection@a21725f
2020-10-09 04:41:45 -04:00
Henrik Lissner
7b56a5310a
Merge pull request #3992 from rushsteve1/tear-off
Bind C-w T / SPC w T to tear-off-window
2020-10-04 20:04:45 -04:00
Henrik Lissner
385e3c20da
Move +spell/add-word from zq -> zg
I misread the key that this functionality is on in vim.
2020-10-04 16:15:26 -04:00
Steven vanZyl
84f26e287b Add keybinding for tear-off-window
Added they Evil keybinding `SPC w T` for `tear-off-window` since that is a
fairly useful windowing function.
2020-09-28 08:23:54 -04:00
Henrik Lissner
91c1e705e6
checkers/spell: add add/remove word & next/prev error commands
So both spell-fu and flyspell users have a more consistent interface.
2020-09-02 13:58:27 -04:00
Henrik Lissner
75cca3586d
Fix gq/gw squeezing spaces across filled lines
"   abcdef" would be changed to "abcdef". Vim doesn't do this. Evil
shouldn't either.
2020-08-24 23:00:32 -04:00
Jakub Darul
f6bae75bff Disable spell-fu keybinding if +flyspell enabled 2020-08-24 20:25:49 +02:00
Henrik Lissner
e730cd030b
editor/evil: move ]s/[s keybinds to motion state
The original keybinds these are meant to override are bound in motion
state.
2020-08-21 20:09:36 -04:00
Henrik Lissner
d5e64d0586
Add zq, zw, ]s and [s keybinds for spell-fu
These are canonical vim keybinds for interacting with the dictionary and
navigating spelling errors.
2020-08-21 18:57:10 -04:00