018d29007c
Add option to invert behavior of holding Shift when searching, and toggle with Enter
2024-10-31 03:57:33 +01:00
1fc06e8120
Update for latest IdeaVim
2024-09-05 09:10:21 +02:00
6c8f19e311
Fix edge case where generated tags may have a double character tag that is the only tag starting with its first character
2024-09-05 06:43:41 +02:00
ce4f3b5f03
Fix IntelliJ SDK warning about services in class initializer
2024-09-05 02:44:39 +02:00
46f42c88eb
Optimize screen visibility checks during search
...
Search results are tested for visibility on the screen. There is already an optimization that only checks results on visible lines, but the number of offset-to-XY conversions still scales linearly with the number of results, which can be very large in files with long lines.
A simple observation is that every line has a first and last offset that is visible on the screen (which may be different for each line due to proportional fonts).
This commit caches the visible offset range for every line involved in one search query, so testing visibility of a search result becomes a check if its offset is inside its line's visible offset range. Finding the visible offset range requires two XY-to-offset conversions per line, so the total number of conversions is bounded by the number of lines that can fit on the screen.
The worst case for this optimization is when every line has exactly one search result; before, this would lead to one offset-to-XY conversion per line, whereas now it leads to two XY-to-offset conversions per line. However, the maximum number of conversions is twice the number of visible lines, which will generally be very small.
2024-09-05 02:12:48 +02:00
abe06ec7be
Increase width of editor fade opacity slider
2024-09-04 11:39:59 +02:00
3fc3cbc7f8
Optimize tagging
2024-09-04 11:33:26 +02:00
ea61d49aa6
Refactor TagMarker to reduce allocations during rendering
2024-09-04 08:50:13 +02:00
dbc6db108d
Redo tag generation (eliminate explicit prefix chars)
2024-09-04 08:44:52 +02:00
01c38df82a
Search in the middle of words again unless pressing an uppercase letter, and rebind Space to cycling search boundaries
2024-09-03 21:50:03 +02:00
a3a86cf447
Update for IDEA 2024.2
2024-09-03 20:58:08 +02:00
6e08d56cdf
Update for IDEA 2024.1 & latest IdeaVim
2024-07-15 13:45:39 +02:00
d22bcc220e
Update IdeaVim integration
2024-03-27 13:53:25 +01:00
2e31ddd504
Use top row remapping only for tags
2023-12-29 21:45:12 +01:00
47a34f6f14
Disable searching in the middle of a word unless Space is pressed when typing tag
2023-12-29 21:45:12 +01:00
8bb34d7f75
Make editor fade opacity configurable
2023-12-18 05:24:57 +01:00
a9375ec414
Remove unused code
2023-12-18 03:44:01 +01:00
b42112cc9e
Do not try to tag folded regions
2023-12-18 02:36:41 +01:00
8e42c82821
Use distance from current caret for tag order
2023-12-18 02:32:54 +01:00
48bcf9f284
Add QWERTZ (CZ) layout that remaps top row to digits
2023-12-18 00:58:37 +01:00
2681d9901f
Change priority order of two-character tags
2023-12-18 00:45:28 +01:00
b13d629046
Add option to set different colors for two-character tags
2023-12-17 22:41:36 +01:00
92dcd033fb
Make priority of unknown characters lower than known characters
2023-12-17 21:49:24 +01:00
dacac684f0
Make two-character tag prefixes customizable
2023-12-14 00:09:27 +01:00
e627db3a24
Fix Shift mode not working when accepting a tag
2023-12-13 22:52:18 +01:00
e01edccb5b
Redesign tags to look like easymotion vim plugin
2023-12-13 20:16:13 +01:00
655ccde60e
Work around IntelliJ terminal plugin stealing Enter keys
2023-12-13 17:48:23 +01:00
eb2ea55fb8
Rework tagging to match easymotion (no search query refinement, no double letter tags)
2023-12-13 15:19:57 +01:00
8f4d9748ad
Scroll after jumping in vim mode
2023-11-17 08:55:49 +01:00
76c6458ef4
Re-add action to go to declaration after jump
2023-11-17 08:52:46 +01:00
184896a6cb
Update for IdeaVIM chylex-16
2023-10-04 02:41:05 +02:00
a07c61a384
Fully depend on IdeaVIM and remake actions
2023-07-28 07:50:39 +02:00
e072003c5c
Update dependency versions and gitignore
2023-07-27 22:07:17 +02:00
19ce1c69fd
Improve tag order for non-QWERTY layouts
2022-07-06 15:46:35 +02:00
f2a053505c
Remove no longer necessary actions
2022-07-06 15:46:35 +02:00
647cfb14f1
Remove unused code
2022-07-06 15:46:35 +02:00
c31ba60909
Implement a customized Vim easymotion plugin
2022-07-06 15:46:35 +02:00
9157ce19b0
Remove all special modes introduced in the rework
2021-11-14 14:35:54 +01:00
9a435feccc
Fix broken special actions in Rider
2021-09-29 08:56:15 +02:00
0b6ba62cda
Simplify existing modes and add new vim shortcuts
2021-05-15 20:58:58 +02:00
dfd5b122a0
Optimizations
2021-05-15 20:30:18 +02:00
98997b4d86
[WIP] Fix tests
2021-05-08 03:54:27 +02:00
1e172e9c49
[WIP] Implement jumping across splitters
2021-05-08 02:39:27 +02:00
01b37c878e
[WIP] Add more vim-friendly jump actions (declaration, usages)
2021-04-11 08:34:52 +02:00
1630c706a9
[WIP] Fix easymotion-like actions in visual mode
2021-04-08 13:57:11 +02:00
041a130c5f
[WIP] Add a few easymotion-like actions
2021-04-07 03:05:11 +02:00
7561bfde36
[WIP] Make quick jump the default mode and rename non-quick jump to advanced mode
2021-04-07 00:16:50 +02:00
724e469f21
[WIP] Remove 'From Caret' mode
2021-04-06 02:09:29 +02:00
bce9a5f636
[WIP] Add quick jump mode
2021-03-29 18:43:00 +02:00
bfe0aa536e
[WIP] Change plugin version
2021-03-29 18:42:40 +02:00