1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2024-11-25 16:42:55 +01:00
Commit Graph

1603 Commits

Author SHA1 Message Date
filipp
d89fbeea62 Fix(VIM-2930): vim-multiple-cursors + ReplaceWithRegister issue 2023-05-07 23:51:05 +03:00
filipp
a1d0c3ebf4 Remove println 2023-05-05 09:41:27 +03:00
filipp
2088c1ce00 Move more methods to engine 2023-05-05 09:41:27 +03:00
Martin Yzeiri
bcf10a0b8e Matchit: Ignore JS comparison operators
In files that mix HTML and JavaScript, arrow functions or forms like (x > y)
conflict with the brackets on HTML tags. We can ignore those JS elements
using PSI checks like we do for some Ruby keywords.
2023-04-26 11:14:06 +03:00
Martin Yzeiri
546137c0f5 Matchit: Correct HTML regex
A final closing > is required on the search pair, otherwise tags with a
shared prefix in their names will conflict.
2023-04-26 11:14:06 +03:00
Martin Yzeiri
92bc691e1f Matchit: Improve comment handling
Since the cursor can come before the start of the matching pair, we need
to check the PSI element at the first match offset, not the caret offset,
when deciding if we need to skip comments.

This fix makes the special isHtmlAttribute check unnecessary. If the caret
is in an HTML attribute, the first match offset will point to the start
of the tag.
2023-04-26 11:14:06 +03:00
Matt Ellis
77ad9deeba Use interface for IJ specific options 2023-04-26 10:26:06 +03:00
Matt Ellis
330d92116c Refine inheritance of IJ specific option classes 2023-04-26 10:26:06 +03:00
Matt Ellis
899adfc1b0 More refactoring to use new API 2023-04-26 10:26:06 +03:00
Matt Ellis
23535a6ad5 Remove OptionValueAccessor 2023-04-26 10:26:06 +03:00
Matt Ellis
e8b7f00370 Remove accessor from new API 2023-04-26 10:26:06 +03:00
Matt Ellis
3f2c5070ee Migrate local option access to new API 2023-04-26 10:26:06 +03:00
Matt Ellis
a2352525c5 Migrate global option access to new API
Also fixes some incorrect usages of local options as global, e.g. 'ideajoin' and 'scroll'. There are some options that should be local that are only ever accessed at global scope. These need fixing in the future, e.g. 'iskeyword', 'matchpairs' and 'virtualedit'
2023-04-26 10:26:06 +03:00
Matt Ellis
50384a526b Introduce option accessor delegated properties
Also migrates tests to use new properties
2023-04-26 10:26:06 +03:00
Matt Ellis
9ade3365ff Extract StringListOption
While it is conceptually very similar to StringOption, the implementation of list vs not-list operations are very different, and having a separate type will allow us to do more interesting things with overloading when we introduce delegate properties
2023-04-26 10:26:06 +03:00
filipp
8107f669cd Fix ReplaceWithRegister with single caret 2023-04-19 15:22:49 +03:00
filipp
2f55d92d83 Move more methods to engine 2023-04-19 15:07:06 +03:00
Alex Plate
f4be162aea
Fix issue with missing key-repeat dialog on new mac machine 2023-04-14 23:14:01 +03:00
Alex Plate
c64810509f
Fix(VIM-2909): Fix incorrect file detection while closing diff window 2023-04-13 15:58:56 +03:00
Alex Plate
a8f0145333
Fix(VIM-2912): Fix focus after :q 2023-04-12 11:01:03 +03:00
Stzx
26ed6670d5 Fix dispose operation 2023-04-04 08:02:03 +03:00
Alex Plate
260bb47434
Different approach for getting editor during bookmarks initialization in order to get rid of slow operations exception 2023-04-01 09:01:19 +03:00
Alex Plate
9d7872e64e
Update initialization instructions 2023-03-31 17:39:06 +03:00
filipp
31bdc23b3c Add support for variables in exists function 2023-03-31 17:37:57 +03:00
Matt Ellis
f803c0aa72 Add deterministic initialisation of options 2023-03-31 17:37:48 +03:00
Matt Ellis
531b0e3537 Provide an API to override option default value
This is specifically to support ideaput in 'clipboard'
2023-03-31 17:37:48 +03:00
Matt Ellis
18d52c2459 Make addListener more strongly typed 2023-03-31 17:37:48 +03:00
Matt Ellis
b7dcff79ae Improve modifyOptionValue 2023-03-31 17:37:48 +03:00
Matt Ellis
8f8c05e451 Remove string based option helper functions 2023-03-31 17:37:48 +03:00
Matt Ellis
af3ebe60f4 Use strongly typed options instead of constants 2023-03-31 17:37:48 +03:00
Matt Ellis
be64d24c00 Introduce strongly typed properties for options 2023-03-31 17:37:48 +03:00
Matt Ellis
8f04575efd Extract IJ specific options to own file 2023-03-31 17:37:48 +03:00
Matt Ellis
4e1b8f3ec4 Extract IJ specific options to own class 2023-03-31 17:37:48 +03:00
Matt Ellis
88f0d2e532 Replace constants with strongly typed properties 2023-03-31 17:37:48 +03:00
Matt Ellis
d042ee3058 Move octopushandler option out of vim-engine 2023-03-31 17:37:48 +03:00
Alex Plate
24df3be8f1
Print more logging in case the vim shortcut is disabled 2023-03-31 17:13:25 +03:00
Alex Plate
0f07e4bdc3
Fix(VIM-2896): Correct ordering of handlers 2023-03-31 12:45:54 +03:00
filipp
f4068301ff Add information about text range in original script for executable 2023-03-31 11:00:39 +03:00
Alex Plate
832c1c0be3
Revert "Update formatting"
This reverts commit bf0fba9c58.
2023-03-27 11:32:59 +03:00
Alex Plate
bf0fba9c58 Update formatting 2023-03-27 08:27:13 +00:00
Alex Plate
0f8b67e6ce
Reformat files 2023-03-27 11:14:00 +03:00
Alex Plate
1e17db6d21
Add lorem ipsum tests to dictionary 2023-03-20 17:42:28 +02:00
Alex Plate
f0505b8919
Fix(VIM-2433): Do not clear clipboard after inserting with ideaput 2023-03-17 13:26:13 +02:00
Alex Plate
db12fbe725
Get rid of test clipboard manager 2023-03-17 11:56:50 +02:00
Alex Plate
0ae57af270
Do not track action ids for vim actions 2023-03-16 10:52:53 +02:00
Alex Plate
0510fe8530
Ktlint format 2023-03-16 10:52:52 +02:00
Alex Plate
3ebaf38486
Fix bug in nerdtree 2023-03-16 10:52:51 +02:00
filipp
84fc962bb0 ReplaceWithRegister 2023-03-15 18:42:22 +02:00
Alex Plate
6b76270d51
Reformat code 2023-03-15 07:59:25 +02:00
filipp
21162ba34e Fix(VIM-2286): Set surround not working for me as expected 2023-03-14 15:24:11 +02:00
filipp
0fea44f735 Fix(VIM-1750): Surround with tag wrong position 2023-03-14 01:14:35 +02:00
filipp
b383706bfb Fix(VIM-1746): IdeaVim Surround removes unwanted characters 2023-03-14 00:23:45 +02:00
filipp
a78f66fd36 Better multiple caret support for surround 2023-03-14 00:23:44 +02:00
filipp
48ec19d9bf Fix(VIM-1551): Surround: line surround not working 2023-03-13 23:45:05 +02:00
filipp
9454ebcb35 Move some methods to engine 2023-03-13 19:34:14 +02:00
Alex Plate
441721b63f
Reformat source code 2023-03-13 11:44:02 +02:00
Alex Plate
01e4c80adb
Remove traces of the experimental API 2023-03-13 10:29:09 +02:00
Alex Plate
ae18ccb8cd
Add new word to the doc 2023-03-13 09:35:24 +02:00
Alex Plate
ad63afc242
Add more info to the issue report 2023-03-13 09:35:24 +02:00
Alex Plate
8210b122bc
Update version of kt lint and reformat files 2023-03-13 09:01:38 +02:00
Alex Plate
a0d3cf561b
Apply ktlint reformat 2023-03-13 08:43:52 +02:00
filipp
f385c3fa21 Fix(VIM-795): Ctrl-w + h doesn't alway work (window navigation to the left window) 2023-03-12 00:20:08 +02:00
filipp
3ddd4a1a58 Fix(VIM-2868): Pasting in visual mode with P should not replace yank register like when pasting with p 2023-03-10 23:30:35 +02:00
filipp
4c7c3dba00 Fix(VIM-2733): vim-surround emulation interacts incorrectly with unmatched quotes on previous lines 2023-03-10 21:20:18 +02:00
Alex Plate
119975c313
Remove experimental API 2023-03-10 18:30:07 +02:00
Alex Plate
d5eaf85473
Better support for esc in octopus mode 2023-03-10 14:33:31 +02:00
Alex Plate
66172c843d
Enable explicit api mode for IdeaVim 2023-03-10 13:20:29 +02:00
Alex Plate
88b3373e5c
Add option to enable octopus handler 2023-03-10 12:11:17 +02:00
Alex Plate
320d91d639
Add esc to octopus handler 2023-03-10 12:00:41 +02:00
Matt Ellis
c192f319d1 Simplify setting known options a little 2023-03-10 10:17:45 +02:00
Matt Ellis
097dfa06a6 Add a couple of convenience functions 2023-03-10 10:17:45 +02:00
Matt Ellis
90ca544d0a Move getter helpers out of the options interface
The interface now has a simple setter and getter, as well as other functions for managing options. More friendly functions for getting and setting values are available as extension functions
2023-03-10 10:17:45 +02:00
Matt Ellis
2bc9640b88 Remove last of 'set' validation code 2023-03-10 10:17:45 +02:00
Matt Ellis
40ffddf5ef Push toggle option validation into ':set' command 2023-03-10 10:17:45 +02:00
Matt Ellis
bd28c9da23 Push more ':set' command validation into command 2023-03-10 10:17:45 +02:00
Matt Ellis
11ef024779 Move ':set' command validation out of interface
Moves functions that require validation parameters to extension functions. Core interface should not require additional user facing paramter
2023-03-10 10:17:45 +02:00
Matt Ellis
40d9a201ea Use bundle for exception messages 2023-03-10 10:17:45 +02:00
Matt Ellis
91c8e7ebda Rename getOptionByNameOrAbbrev 2023-03-10 10:17:45 +02:00
Matt Ellis
3c3014fdc6 Remove unused getAbbrevs function 2023-03-10 10:17:45 +02:00
Matt Ellis
d97e4c44ee Rename "token" and remove default argument 2023-03-10 10:17:45 +02:00
Matt Ellis
1b88c514da Move IjVimOptionGroup to correct package & rename 2023-03-10 10:17:45 +02:00
Matt Ellis
96c1094a61 Replace OptionService with VimOptionGroup
Leaves a skeleton, deprecated implementation of OptionService for existing external use by plugins
2023-03-10 10:17:45 +02:00
Matt Ellis
4232d3d8a2 Remove unused local options types 2023-03-10 10:17:45 +02:00
Matt Ellis
73b64c19ff Move OptionValueAccessor to options package 2023-03-10 10:17:45 +02:00
Matt Ellis
15ccdb2055 Remove unnecessary getOptionServiceImpl 2023-03-10 10:17:45 +02:00
Matt Ellis
418067b077 Remove unused deprecated method
No external usages
2023-03-10 10:17:45 +02:00
Matt Ellis
88b29d1a14 Isolate and remove deprecated code
Moves ToggleOption to the proper package, leaving behind a skeleton class to keep ideavim-sneak and IdeaVim-EasyMotion happy.

Removes NumberOption and related number OptionsManager properties which are only used by which-key 0.6.2, because this plugin is already broken due to a separate API change. (The plugin is expecting the command trie to use `CommandPartNode<ActionBeanClass>`, but it's actually using `CommandPartNode<VimActionsInitiator>`). Also removes `ToggleOption.value`, used by which-key
2023-03-10 10:17:45 +02:00
Matt Ellis
4540d216cb Move StrictMode out of options package 2023-03-10 10:17:45 +02:00
kawagh
1bd6defc84 Include escaped character in search target 2023-03-10 09:37:46 +02:00
Alex Plate
181d76ae7b
Improvements for octopus handler 2023-03-09 16:45:06 +02:00
filipp
72be9845fa Fix(VIM-2885): "v:searchforward" does't work for IdeaVim 2023-03-09 15:56:34 +02:00
filipp
00901f60dc Add get() function 2023-03-08 20:06:43 +02:00
filipp
21aaf06a63 Add split function 2023-03-08 19:21:02 +02:00
Alex Plate
d81774c9a7
Add octopus connector that attaches IdeaVim to IJ using EditorActionHandlers 2023-03-08 13:56:31 +02:00
Alex Plate
2cb6fb041e
Use injector to create execution context 2023-03-08 13:06:36 +02:00
Alex Plate
b7d5ee9a75
Add doc why we can move to project activity at the moment 2023-03-08 12:59:48 +02:00
Alex Plate
24dd84b31c
Revert "Migrate to project activity"
This reverts commit fc7efd5484.
2023-03-08 12:57:13 +02:00
Alex Plate
0e96819e86
Update creation of execution context 2023-03-08 11:35:01 +02:00
Alex Plate
fc7efd5484
Migrate to project activity 2023-03-08 09:30:33 +02:00
filipp
2c9aa8e30e FIX(VIM-2881): ReplaceRegister does no longer worker with MultiCursor 2023-03-07 17:24:19 +02:00
Alex Plate
a3039e05d4
Fix(VIM-1735): Fix enabling mulple carets after line selection 2023-03-07 09:44:01 +02:00
Alex Plate
bed078213b
Fix some qodana issues 2023-03-07 09:44:01 +02:00
Alex Plate
b413c8e715 Update formatting 2023-03-05 00:20:18 +00:00
Alex Plate
5b636b2b5e
Perform code cleanup 2023-03-03 17:57:42 +02:00
Alex Plate
6db4874acd
Migrate NerdTree to new startup activity 2023-03-03 17:57:41 +02:00
Alex Plate
c5f8eaf1cf
Run ktlinter 2023-03-03 17:57:41 +02:00
Alex Plate
c9568b4301
Switch to AnActionWrapper instead of deprecated EmptyAction 2023-03-03 17:57:41 +02:00
Alex Plate
e1c712abb7
Include the original editor context into our custom editor context
Bug reference: https://youtrack.jetbrains.com/issue/VIM-2315/Bug-in-leader-key-handling-in-ideavim#focus=Comments-27-6918383.0-0
2023-03-03 17:57:41 +02:00
Dominic Palmer
dd69d0fad2 Prevent viewport displacement on undo 2023-03-01 17:41:59 +02:00
filipp
8fe6c8bde7 Jumps refactoring 2023-02-28 13:11:08 +02:00
Alex Plate
ec4684c336
Fix qodana inspections 2023-02-28 10:10:24 +02:00
Alex Plate
ec05ca11ba
Fix possible NPE 2023-02-28 10:00:42 +02:00
Dominic Palmer
7ebd604390 Include empty lines in the selection when dragging backwards from EOL 2023-02-28 09:52:23 +02:00
Alex Plate
7bc50df300
Fix possible npe 2023-02-28 09:31:38 +02:00
Alex Plate
6e854eb889 Update formatting 2023-02-26 00:19:08 +00:00
filipp
d009ece391 Fix jumps 2023-02-24 15:22:31 +02:00
filipp
266d164a34 Add option to turn off using IDE jumps by JumpService 2023-02-24 14:48:50 +02:00
filipp
aaf957a3c2 Fix(VIM-44): Unify navigation history between ideavim and idea 2023-02-24 14:44:53 +02:00
Alex Plate
dd35c4907e
Update minimal version of IJ
Build based on 231 has tons of incompatibilities with 223
2023-02-23 10:26:30 +02:00
filipp
ec80a20146 Rename method 2023-02-13 13:05:34 +02:00
filipp
cd46497829 Fix(VIM-282): Cursor line wrapping support (whichwrap) 2023-02-13 13:04:53 +02:00
Alex Plate
138dc7082e Update formatting 2023-02-05 00:18:21 +00:00
filipp
0accfbd65f Fix(VIM-1768): Delete surrounding character while in multiple cursors mode 2023-02-01 23:06:25 +02:00
filipp
e112d87e28 Register FunctionStorage as service 2023-02-01 21:08:35 +02:00
Alex Plate
d01e804b24
Fix(VIM-658): Stop macro on error 2023-02-01 20:47:15 +02:00
Alex Plate
72ca9a2297
Reuse potemkin progress for internal macros 2023-02-01 20:26:06 +02:00
Alex Plate
007a1694d7
Remove useless parameter 2023-02-01 19:50:48 +02:00
Alex Plate
74dd307318
Convert macro group to kotlin 2023-02-01 19:46:09 +02:00
Alex Plate
4bf5f6dcc1
Rename .java to .kt 2023-02-01 19:46:08 +02:00
Alex Plate
9b56fbc3ed
Convert more tests from java to kotlin 2023-01-28 08:48:23 +02:00
Alex Plate
bdcdfda8c4
Rename .java to .kt 2023-01-28 08:48:22 +02:00
Alex Plate
17c248eda0
Fix(VIM-2787): Save ideavimrc loading 2023-01-27 10:55:51 +02:00
Alex Plate
bee82a1941
Adding experimental inspection 2023-01-27 10:55:49 +02:00
filipp
772c574149 VimMarkServiceImpl refactoring 2023-01-27 00:20:40 +02:00
filipp
d577411e72 Fix(VIM-2850) 2023-01-27 00:20:40 +02:00
filipp
da75da6791 Fix easymotion compatibility 2023-01-23 14:36:31 +02:00
filipp
d50daad918 Fix easymotion compatibility 2023-01-23 12:57:44 +02:00
Alex Plate
484a1f264b Update formatting 2023-01-22 00:18:31 +00:00
filipp
e79821385d Remove caret from method signatures in CaretRegisterStorage 2023-01-20 17:24:28 +02:00
filipp
44336460c5 Fix IDEA compatibility 2023-01-20 16:50:58 +02:00
filipp
46f0309171 VIM-2840 Replace with register does not work with count 2023-01-20 16:33:16 +02:00
Matt Ellis
308e8bfbc3 Replace default interface methods with extensions 2023-01-18 17:47:32 +02:00
Matt Ellis
42b8b5814f Simplify check for option existence 2023-01-18 17:47:32 +02:00
Matt Ellis
11fcb17c29 Replace appendValue with :set in tests 2023-01-18 17:47:32 +02:00
Matt Ellis
9c54fbe733 Migrate isSet to option value accessor API 2023-01-18 17:47:32 +02:00
Matt Ellis
9cc206d548 Introduce friendly API for consuming options 2023-01-18 17:47:32 +02:00
Matt Ellis
a97cf8a3ec Remove unnecessarily cached list field 2023-01-18 17:47:32 +02:00
Matt Ellis
f0ea5f3968 Extract IDEA specific option constants 2023-01-18 17:47:32 +02:00
Matt Ellis
8d44afc8e6 Sort option name constants 2023-01-18 17:47:32 +02:00
Matt Ellis
62ed3bd7f2 Rename option name constants 2023-01-18 17:47:32 +02:00
Matt Ellis
bb44044956 Move IJ specific options out of engine 2023-01-18 17:47:32 +02:00
Matt Ellis
d95810f6e5 Sort options 2023-01-18 17:47:32 +02:00
filipp
341dc6c58b Post-merge fixes 2023-01-17 16:15:34 +02:00
filipp
a2364b7512 Pull request polishing 2023-01-16 19:23:13 +02:00
filipp
350e1c08d0 Add loading marks and jumps states to VimPlugin 2023-01-16 19:23:00 +02:00
filipp
d2c849fceb Post-merge fixes 2023-01-16 19:21:10 +02:00
filipp
c4e9d5d14f Multiple carets support for marks 2023-01-16 19:19:46 +02:00
filipp
a8d225f812 Save jumps after IDE close 2023-01-16 18:51:11 +02:00
filipp
bdfb8c7ee4 Fix exchange 2023-01-16 18:51:11 +02:00
filipp
9ab9d88eb5 VimJumpService implementation 2023-01-16 18:51:11 +02:00
filipp
a4c7b38b7a Update formatting 2023-01-16 18:51:11 +02:00
filipp
fe1ae29fa3 Better selection marks 2023-01-16 18:40:31 +02:00
filipp
af497e6906 Post-merge fixes 2023-01-16 18:40:30 +02:00
filipp
ce77148a38 Multiple carets support for marks 2023-01-16 18:40:24 +02:00
Alex Plate
0ee6ce0a55
Remove some forEachCaret methods 2023-01-16 11:43:00 +02:00
Alex Plate
39f0e14fee
Remove one of the unused methods 2023-01-16 09:53:52 +02:00
Alex Plate
dc09907f93
Remove dynamic loader stopper 2023-01-16 09:38:38 +02:00
Alex Plate
e674d8ac3a
Remove more usages of runForEachNative 2023-01-12 10:31:14 +02:00
Alex Plate
141af4f097
Remove one of for each methods 2023-01-12 10:19:11 +02:00
Alex Plate
908c978242
Global copyright update 2023-01-10 10:09:25 +02:00
Alex Plate
6419279514
Prepare to 2.1.0 release 2023-01-10 09:59:51 +02:00
Alex Plate
0ecfdc5cf3
Fix issue with incorrect position of the caret after put 2023-01-09 10:52:29 +02:00
Patrick Elmquist
831e335b5d Fixed typos in Tutor 2023-01-09 10:17:31 +02:00
Alex Plate
337c526e23
Fix(VIM-2833): Fix rare deadlock during put in insert mode from clipboard 2023-01-06 09:58:52 +02:00
Alex Plate
fb46993a05
Reformat sources 2023-01-06 09:26:05 +02:00
Alex Plate
ef2738838f
Update copyright rules 2023-01-06 09:26:05 +02:00
Alex Plate
b9669e452c
Add some information to issue template 2023-01-06 09:26:04 +02:00
Matt Ellis
3be6acf5b5 Restore type qualifiers for some static methods 2023-01-06 09:22:08 +02:00
Matt Ellis
b5619adf45 Cleanup MotionGroup.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
62540fe1b2 Reformat MotionGroup.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
fd85fdf0ac Convert MotionGroup to Kotlin 2023-01-06 09:22:08 +02:00
Matt Ellis
e09208c757 Rename MotionGroup.java to MotionGroup.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
753f2110c6 Clean up ScrollGroup.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
7917e8417b Import EditorHelper methods 2023-01-06 09:22:08 +02:00
Matt Ellis
a0447b4840 Convert ScrollGroup from Java to Kotlin 2023-01-06 09:22:08 +02:00
Matt Ellis
2e561a2af4 Rename ScrollGroup.java to ScrollGroup.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
a330a3e472 Make editor converter property accessors inline 2023-01-06 09:22:08 +02:00
Matt Ellis
6df695f650 Cleanup ScrollViewHelper.kt 2023-01-06 09:22:08 +02:00
Matt Ellis
d77edaa056 Convert ScrollViewHelper to Kotlin 2023-01-06 09:22:08 +02:00
Matt Ellis
4f78246c7f Rename ScrollViewHelper.java to .kt 2023-01-06 09:22:08 +02:00
Matt Ellis
8d3ccdaf9c Extract scroll functionality into ScrollGroup 2023-01-06 09:22:08 +02:00
Matt Ellis
17e1061866 Extract scrollCaretIntoView to helper class
This file is licensed under the Vim license, so that scrolling the caret into view can be based on the Vim implementation
2023-01-06 09:22:08 +02:00
Matt Ellis
30d4b06393 Fix dangling doc comment 2023-01-06 09:22:08 +02:00
Martin Yzeiri
bb67584cba Matchit: Add more Rider file types 2023-01-04 08:56:41 +02:00
Alex Plate
e28ec93c80
Reformat project 2023-01-04 08:44:28 +02:00
Alex Plate
1e58ead126
Move scripts into the separate module 2022-12-29 09:26:45 +02:00
Alex Plate
fafa7572d0
Extract plugin dependencies check into the separate file 2022-12-29 08:27:12 +02:00
Martin Yzeiri
28ba36dddb Matchit: Support cshtml files
Enables HTML jumps in Razor (.cshtml) templates.
2022-12-29 07:51:59 +02:00
Alex Plate
34dd332f0b
Create an entry point for kotlin scripts 2022-12-28 18:04:36 +02:00
Alex Plate
672601b028
Do not check updates for dev version of the plugin 2022-12-28 14:41:10 +02:00
Alex Plate
e5045f28ab
Update tutor a bit 2022-12-28 12:21:36 +02:00
Runinho
faebf66065 improve formating 2022-12-28 08:58:14 +02:00
Runinho
dc030d6895 Fix(VIM-2760) notebookCommandMode detection 2022-12-28 08:58:14 +02:00
Matt Ellis
c0e17a6c61 Fix issue with lastColumn not being invalidated 2022-12-27 15:45:18 +02:00
Matt Ellis
b5046b089e Fix incsearch not scrolling to current match 2022-12-27 15:45:18 +02:00
Alex Plate
1075112bfa
Add IdeaVim tutor 2022-12-27 10:48:58 +02:00
Alex Plate
2091a59897
Temp fix for VIM-2808: disable formatting after paste for rider 2022-12-22 15:49:04 +02:00
Alex Plate
654a443d4b
Fix compatibility with plugins 2022-12-21 10:59:23 +02:00
Alex Plate
a6ec2d5ed7
Update changelog 2022-12-21 10:34:55 +02:00
Alex Plate
a88263874a
Do not check for updates if the plugin is disabled 2022-12-21 10:06:46 +02:00
Alex Plate
8e8efe4862
Fix(VIM-2813): Migrate update checker to VimStandalonePluginUpdateChecker 2022-12-19 10:06:52 +02:00
Alex Plate
b154e31a28 Update formatting 2022-12-04 00:16:36 +00:00
Alex Plate
42eefb763b
Add an editor to the action executor 2022-12-02 11:52:39 +02:00
Alex Plate
27be351636
Adopt immutable caret around the source code 2022-12-02 11:36:46 +02:00
Alex Plate
dcac3be0da
Pass editor to the message service 2022-12-01 14:29:54 +02:00
Alex Plate
fb5177633a
More uses of ImmutableVimCaret 2022-12-01 08:38:52 +02:00
Alex Plate
743b978e6f
Update engine 2022-11-30 13:11:16 +02:00
Alex Plate
1fd877c597
Small refactoring of vim caret 2022-11-30 11:49:09 +02:00
Alex Plate
2b1198dfd9
Rename extensions to plugins to be more consistent 2022-11-30 08:11:39 +02:00
Alex Plate
8db23fba43
Extract ImmutableVimCaret interface 2022-11-29 20:02:26 +02:00
Alex Plate
75516a7217
Fix track action ids 2022-11-28 18:06:20 +02:00
Alex Plate
fd0819ca30
Add link to plugins 2022-11-28 17:36:57 +02:00
Alex Plate
fd3e32eaa8
Move some calls to vim engine 2022-11-28 13:29:41 +02:00
Alex Plate
a8bebb88b1
Move vimLeadSelectionOffset to the engine 2022-11-28 13:19:16 +02:00
Alex Plate
db95804eeb
Move caret method now returns VimCaret instance
This is important for Fleet because the carets in Fleet are immutable
2022-11-25 16:53:19 +02:00
Alex Plate
34426ae32d
Pass editor to undo redo 2022-11-25 13:35:29 +02:00
Alex Plate
c3cd207b2b
Add some logging 2022-11-25 09:40:48 +02:00
Alex Plate
ac1d334bf1
Fix(VIM-2797): Introduce variable to mute default argtextobj mappings 2022-11-23 11:44:47 +02:00
Alex Plate
7324ee5e8d Update formatting 2022-11-20 00:18:56 +00:00
Alex Plate
54c2299654
Remove several methods from VimCaret 2022-11-18 14:37:32 +01:00
Alex Plate
b2cfb6d6ed
Refactor visual mode entering 2022-11-18 13:08:27 +01:00
Alex Plate
e8a11b8f79
Remove unused method 2022-11-18 12:28:42 +01:00
Alex Plate
f16890f9a7
Remove unused method 2022-11-17 16:35:33 +01:00
Alex Plate
e881bec45d
Move more change group methods to engine 2022-11-17 16:14:26 +01:00
Alex Plate
18eea7ca2d
Move change group methods to the engine 2022-11-17 16:03:41 +01:00
Alex Plate
316410a561
Move some methods from put group to the engine 2022-11-17 14:57:19 +01:00
Alex Plate
76a1a190f6
Refactor change group 2022-11-17 14:08:07 +01:00
Alex Plate
c243ae9cef
Add refactoring to simplify change group 2022-11-17 14:07:57 +01:00
Matt Ellis
101dc355ba Rename parameters in Mark and Jump 2022-11-17 14:07:46 +01:00
Matt Ellis
f5f3d0b827 Rename line parameters and variables
Buffer lines are just called "line", but visual lines (or where things are ambiguous) are explicitly named
2022-11-17 14:07:46 +01:00
Matt Ellis
53cb5d1fe9 Rename more logical position helper functions 2022-11-17 14:07:46 +01:00
Matt Ellis
0978ca616f Rename caret logical position helper functions 2022-11-17 14:07:46 +01:00
Matt Ellis
bbf42c0a28 Rename editor logical position helper functions 2022-11-17 14:07:46 +01:00
Matt Ellis
7df04c6e2e Rename VimLogicalPosition to BufferPosition 2022-11-17 14:07:46 +01:00
Alex Plate
309197781e
Fix some tests 2022-11-17 10:14:03 +01:00
Alex Plate
5a3ee970a0
Move editor helper functions to engine 2022-11-17 09:37:22 +01:00
Alex Plate
7cbe63e484
Move some editor functions to engine 2022-11-16 23:21:22 +01:00
filipp
5342b02091 Converted MacOS chars to ASCII for statistics 2022-11-16 21:26:41 +02:00
Alex Plate
7eeca57135
A few fixes 2022-11-16 13:22:40 +01:00
Alex Plate
2162985e4a
Move more methods to engine 2022-11-16 13:05:59 +01:00
Alex Plate
5d53f4c13a
Move some methods from editor helper to engine 2022-11-16 12:37:03 +01:00
Alex Plate
829a228d79
Revert "Remove contributions of Piotr Mikulski <piotr@near.org>"
This reverts commit 860592291f.
2022-11-16 09:45:08 +01:00
Alex Plate
4c589c9610
Revert "Refactor commands output"
This reverts commit 05852b07
2022-11-16 09:45:08 +01:00
Alex Plate
b9fc58ec45
Move some methods to engine 2022-11-16 09:45:07 +01:00
Alex Plate
193a84dafd
Move method to engine 2022-11-16 09:43:53 +01:00
Alex Plate
3880a33208
Refactoring 2022-11-16 09:43:53 +01:00
Alex Plate
2edf897e39
Move getMotionRange to base method 2022-11-16 09:43:51 +01:00
Matt Ellis
27d1170c75 Move creating adjusted offset out of action 2022-11-16 09:41:59 +01:00
Matt Ellis
11c850a41e Remove unused property 2022-11-16 09:41:59 +01:00
Matt Ellis
ff4ee06a1f Remove unnecessary setting of vimLastColumn 2022-11-16 09:41:59 +01:00
Matt Ellis
c5ab3490b3 Remove preOffsetComputation hook
Cached intended column is invalidated and recalculated if the caret has moved (intentionally or outside IdeaVim's control)
2022-11-16 09:41:59 +01:00
Matt Ellis
b5aba454ae Remove more postMove overrides 2022-11-16 09:41:59 +01:00
Matt Ellis
3257cc82dc Rename functions to indicate target motion
I.e. line number (currently buffer, should be Vim logical line), current line, or relative to current line
2022-11-15 10:34:12 +02:00
Matt Ellis
ef73733596 Remove unnecessary method from VimCaret 2022-11-15 10:34:12 +02:00
Matt Ellis
e0b3e1db24 Move StrictMode to engine 2022-11-15 10:34:12 +02:00
Matt Ellis
e0b51d653a Move action to correct package 2022-11-15 10:34:12 +02:00
Matt Ellis
c17ebbf4d7 Rename various scroll functions 2022-11-15 10:34:12 +02:00
Matt Ellis
44a26d59a4 Rename screen line functions to "display" 2022-11-15 10:34:12 +02:00
Matt Ellis
6b8f81f7eb Rename screen column functions to "display"
Two reasons:
1. It is good if the engine uses Vim terminology. A "screen" in Vim includes all window/display lines from all windows in the terminal screen, including the status and command line. IntelliJ doesn't have this concept. A display line is most similar to IntelliJ's visual lines, but describes the window/display's character grid, not the buffer contents.
2. moveCaretToMiddleColumn needs renaming to indicate that it's for a display line, not a logical line, and to make way for an implementation of `gM`, which does work on logical lines
2022-11-15 10:34:12 +02:00
Matt Ellis
89548d132a Remove obsolete helper method 2022-11-15 10:34:12 +02:00
Alex Plate
785f29abf8
Fix some qodana inspections 2022-11-10 13:38:18 +02:00
Alex Plate
7791c0b7be
Get rid of runForEachCaret in DeleteJoinLinesAction 2022-11-08 13:45:21 +02:00
Alex Plate
2cfbff5cf6
Move nerdtree action to background thread 2022-11-08 10:02:47 +02:00
Alex Plate
3df637b265
Remove macrodelay option 2022-11-08 09:42:11 +02:00
Alex Plate
ea220d2514 Update formatting 2022-11-06 00:20:06 +00:00
Alex Plate
8bb75fc376
Add ThirdPartyLicenses.md file 2022-11-04 10:15:42 +02:00
Alex Plate
d461fe555d
Refactor status bar icon 2022-11-04 09:55:34 +02:00
Alex Plate
2355435275
Update copyright 2022-11-04 09:24:03 +02:00
Alex Plate
4781d29d67
Prepare to 2.0.0 version 2022-11-01 20:08:27 +02:00
Alex Plate
f5b6ca50f4
Update IdeaVim license to MIT
VIM-2782
2022-11-01 20:00:07 +02:00
Alex Plate
05852b07c6
Refactor commands output 2022-11-01 19:47:27 +02:00
Alex Plate
689aa4cf95
[VIM-570] Fix for chinese characters 2022-11-01 19:47:27 +02:00
Alex Plate
ac69c0d9c6
Fix search with offset 2022-11-01 19:47:27 +02:00
Alex Plate
860592291f
Remove contributions of Piotr Mikulski <piotr@near.org>
6a4bb7395b
9b4825db77
2022-11-01 19:47:26 +02:00
Alex Plate
113597333c
Remove contributions of kk <kevinz@weghst.com>
4849992ca9
2022-11-01 19:47:26 +02:00
Alex Plate
a83d71aa39
Remove contributions of Marquis Wang <marquis@marquiswang.com> 2022-11-01 19:47:26 +02:00
Alex Plate
93299ae843
Remove contributions of Marcel Hild <hild@b4mad.net> 2022-11-01 19:47:25 +02:00
Alex Plate
4300cf5330
Prepare to 1.12.0 release 2022-11-01 19:11:28 +02:00
Matt Ellis
45908f2a84 Remove unnecessary scroll method 2022-10-28 08:15:32 +03:00
Matt Ellis
8648220e21 Fix(VIM-2778) Remove override of editor scroll setting
Let user decide how editor scrolls when IntelliJ performs navigation, e.g. go to file member
2022-10-28 08:15:32 +03:00
Alex Plate
68e285b514
Update plugin.xml 2022-10-27 11:25:43 +03:00
Alex Plate
9d049b06c3
Use java pattern matching in the code 2022-10-27 10:58:14 +03:00
Alex Plate
1105529e91
Update minimal IJ version to 223 2022-10-27 10:29:58 +03:00
Alex Plate
f54fd84de3
Fix(VIM-2776): Use filename index for file search 2022-10-25 09:47:50 +03:00
Alex Plate
da3d83ecc6 Update formatting 2022-10-23 00:26:59 +00:00
filipp
4af8e574c4 Log keystrokes only in ASCII 2022-10-19 14:59:09 +03:00
Alex Plate
bdcb5c4f33
Update colors 2022-10-18 16:56:43 +03:00
Alex Plate
6c0cc7285f
Fix(VIM-2766): Move NERDTree update to background thread 2022-10-18 11:31:15 +03:00
Alex Plate
d3424021c8
Fix(VIM-2768): Refactor listeners 2022-10-17 17:39:40 +03:00
Alex Plate
c131cb338e
Update description in plugin.xml 2022-10-17 15:45:14 +03:00
filipp
14d242a233 Disable logging undefined handlers 2022-10-17 14:56:16 +03:00
Alex Plate
a131b7d29a
Update IdeaVim motto 2022-10-17 12:35:05 +03:00
Alex Plate
e3d3b73903
Fix incompatiility with futur versions of IJ 2022-10-04 09:48:18 +03:00
Alex Plate
45f18ff91c Update formatting 2022-10-02 00:26:29 +00:00
filipp
19dd49670c Statistic 2022-09-26 11:51:56 +03:00
filipp
6e0f301fb8 Fix(VIM-2757) Wrong gv behavior 2022-09-22 04:08:39 +03:00
filipp
c76b8db293 Fix(VIM-2718) Copied value is not inserted 2022-09-21 03:00:53 +03:00
Alex Plate
871b60fe8d
Revert "[New Typing Handler]: Switch j command to new typing handler"
This reverts commit 43a79dba
2022-09-12 09:30:22 +03:00
Alex Plate
6715a5b61f
Revert "[New Typing Handler]: Support d"
This reverts commit c32c62ea
2022-09-12 09:29:46 +03:00
Alex Plate
9f00dbd6f4 Update formatting 2022-09-11 00:19:01 +00:00
filipp
7fbc17624f Fix(VIM-2718): Fixed case where the primary caret was changed 2022-09-11 00:24:06 +03:00
Alex Plate
ca0db15e01
Fix(VIM-2749): Fix :tabn and :tabN commands 2022-09-09 17:20:09 +03:00
Alex Plate
c32c62eacc
[New Typing Handler]: Support d 2022-09-06 13:13:31 +03:00
Alex Plate
43a79dbad4
[New Typing Handler]: Switch j command to new typing handler 2022-09-05 15:22:10 +03:00
Alex Plate
183ed10592
Fix(VIM-2744): Fix undo from ex line 2022-08-29 09:31:55 +03:00
Alex Plate
f6e7d04fd5
Fix accessing bookmarks
Tests were failing because IdeaVim group is created by default by project name
2022-08-25 11:59:05 +03:00
Alex Plate
f8fa8b73fa
Move some methods to vim engine 2022-08-23 15:26:55 +03:00
Alex Plate
aee126b625
Formatting 2022-08-23 15:26:53 +03:00
Alex Plate
396ac86939
Fix strange issue on ideavimrc reload 2022-08-23 15:26:50 +03:00
Alex Plate
81816f903f Update formatting 2022-08-21 00:17:52 +00:00
Alex Plate
7f1e3bb155
Fix(VIM-1758): Commentary plugin in rider 2022-08-17 10:13:04 +03:00
Alex Plate
241f554133
Fix(VIM-1903): Autoindent now works in rider 2022-08-17 10:11:19 +03:00
Alex Plate
9498d0779c
Revert "Refactoring IdeaVim to use editor actions instead of registering shortcuts in the editor"
This reverts commit b12fd5100f.
2022-08-15 18:59:35 +03:00
Alex Plate
b12fd5100f
Refactoring IdeaVim to use editor actions instead of registering shortcuts in the editor 2022-08-15 18:42:32 +03:00
Alex Plate
92f622430d
Revert "Add a hidden gem"
This reverts commit 362b9a5c3a.
2022-08-15 17:22:31 +03:00
Alex Plate
ef518f5b23
Revert "Rename hidden gem to neovim"
This reverts commit 4fd1a25557.
2022-08-15 17:22:31 +03:00
Alex Plate
7acb17ebdb
Small update 2022-08-15 17:22:31 +03:00
Alex Plate
4fd1a25557
Rename hidden gem to neovim 2022-08-12 12:14:17 +03:00
Alex Plate
f32d42e625
Nice knowledge popup 2022-08-12 12:10:57 +03:00
Alex Plate
362b9a5c3a
Add a hidden gem 2022-08-12 10:49:55 +03:00
Alex Plate
12903066b9
Workaround for VIM-2487 2022-08-12 09:45:07 +03:00
Alex Plate
89623b04d6
Update changelog 2022-08-09 10:25:14 +03:00
Alex Plate
162d7b021f
Update reference to changes 2022-08-09 09:50:02 +03:00
Alex Plate
b14e59ab5b
Disable removing selection after undo 2022-08-09 09:49:28 +03:00
Alex Plate
47dcefcfbf Update formatting 2022-08-07 00:20:00 +00:00
Alex Plate
91f580771d
Fix test with closing buffer 2022-08-04 19:18:26 +03:00
Alex Plate
6711f1dbab
Specify update thread for actions 2022-08-01 13:09:23 +03:00
Alex Plate
0b7a883efb
Fix(VIM-2723): Move focus to editor after :q 2022-08-01 09:29:44 +03:00
c7b51b7fa5 Implement partial code completion support in macros
Works ok with insertions (Enter, Ctrl+Enter) but not with replacements (Tab)
2022-07-22 10:02:23 +03:00
Alex Plate
33d3f270a3
Fix(VIM-2710): Show options value on set opt 2022-07-20 09:56:23 +03:00
Alex Plate
8bc616cc55
New vim behaviour: ci( searches for brackets
Change in vim:
b9115da4be
https://github.com/vim/vim/pull/8670

VIM-2699
2022-07-14 12:08:26 +03:00
Alex Plate
1998221a0b
Remove useless @NotNull annotations 2022-07-13 10:26:57 +03:00
Alex Plate
a9b1625749
Update deprecated action listeners 2022-07-13 10:26:16 +03:00
Alex Plate
b411836570
Hide macos notification during UI testing 2022-07-13 09:23:35 +03:00
Alex Plate
ee4ce5033a
Fix tests 2022-07-11 11:09:43 +03:00
Alex Plate
97f5c9225e
Cleanup the sources 2022-07-08 11:24:10 +03:00
Alex Plate
c011628420
Reformat code 2022-07-08 09:14:43 +03:00
Alex Plate
bc6c726a45
Fix macro with count execution 2022-07-07 14:35:49 +03:00
Alex Plate
dfc3df713e
Update changelog 2022-07-07 12:22:46 +03:00
Alex Plate
0d9b81eab3
Update minimal version of IJ 2022-07-07 10:02:14 +03:00
Alex Plate
2b32cb26b1
Set since version in config 2022-07-06 20:39:30 +03:00
Alex Plate
0746dcc686
Fix some neovim tests 2022-07-06 19:41:05 +03:00
filipp
3bf68a2bb8 Update formatting 2022-07-06 13:11:11 +06:00
Alex Plate
3cf8ae52ed
Add link to the docs 2022-07-06 09:30:25 +03:00
Matt Ellis
62632a4514 Improve handling of fractional width fonts 2022-07-06 09:29:36 +03:00
Alex Plate
249bd3778a
Add a note about refactoring 2022-07-06 09:14:52 +03:00
filipp
ab9e5d7a4a Fix selection issue with oldundo set 2022-07-06 12:12:55 +06:00
filipp
083b7dc952 Fix(VIM-2698) Undo causes confirmation dialog to reappear forever 2022-07-06 11:35:29 +06:00
Alex Plate
ba23c9ab5e
Rename variable service 2022-07-05 11:27:53 +03:00
Alex Plate
51e7c745ea
Move number option to a different package 2022-07-05 10:26:14 +03:00
Alex Plate
7eae7a98e8
Command state compatibility 2022-07-05 10:05:02 +03:00
Alex Plate
fe9566eebd
Convert helper to kt 2022-07-04 10:59:24 +03:00
Alex Plate
b69756730f
Rename .java to .kt 2022-07-04 10:59:23 +03:00
Alex Plate
6cd1a60b53
More compatibility 2022-07-04 10:33:31 +03:00
Alex Plate
9d935e47b5
Move compatibility 2022-07-04 09:49:50 +03:00
Alex Plate
a7d5372d06
Move classes to a different package 2022-07-04 09:49:50 +03:00
Alex Plate
a575942c81
Compatibility 2022-07-04 09:49:50 +03:00
Alex Plate
6f5def0abf Update formatting 2022-07-03 00:19:25 +00:00
filipp
f0fcd7f133 Better offset for multiple carets with surround 2022-07-02 18:59:21 +06:00
filipp
6115adb72e Add registers to carets 2022-07-02 18:51:10 +06:00
filipp
bfd0b5fd91 Merge remote-tracking branch 'origin/master' 2022-07-02 11:21:33 +06:00
Alex Plate
c7ebce39bf
Make options compatible 2022-07-01 16:10:13 +03:00
Alex Plate
a0dc7a792f
Add more compatibility methods 2022-07-01 15:55:07 +03:00
Alex Plate
5c82d112c9
More compatibility methods 2022-07-01 10:05:13 +03:00
Alex Plate
40fd50d7f1
Add midding import 2022-07-01 09:27:07 +03:00
Alex Plate
f7b948fee2
Add CommandState compatibility layer and rename our main CommandState to VimStateMachine 2022-07-01 09:04:27 +03:00
filipp
f3025757b6 Merge remote-tracking branch 'origin/master' 2022-06-30 11:02:41 +06:00
Alex Plate
2ac4b265d1
Add compatibility method 2022-06-29 16:30:26 +03:00
Alex Plate
46e994b563
Fix incorrect inheritance 2022-06-29 11:42:21 +03:00
Alex Plate
81482bd298
Add more compatibility changes 2022-06-29 11:25:11 +03:00
Alex Plate
f1a239c085
Make compatibility function public 2022-06-29 10:42:04 +03:00
Alex Plate
a48e38de7b
Make function static 2022-06-29 10:25:41 +03:00
Alex Plate
0aaacee117
Add more classes for compatibility 2022-06-29 09:54:50 +03:00
Alex Plate
b8373af69f
Move MappingMode to a different package 2022-06-29 09:54:49 +03:00
Alex Plate
e99b2ee73d
Add new method for compatibility 2022-06-29 09:54:49 +03:00
Alex Plate
7e79d5a960
Add method for compatibility 2022-06-28 11:13:54 +03:00
filipp
4dc7982baa (EA-480768) Better exception message 2022-06-27 16:19:45 +06:00
Alex Plate
d77c5bb5cf Update formatting 2022-06-26 00:20:17 +00:00
Alex Plate
a3ca1b965b
Fix(VIM-2691): Save file on :w 2022-06-24 08:26:02 +03:00
filipp
46ea752164 Add tolower(), toupper(), join() 2022-06-24 02:58:41 +06:00
b50197f7ce Fix(VIM-2227): Wrong behavior when deleting / changing surround with invalid character 2022-06-23 18:19:28 +03:00
Alex Plate
9eaf8b5d2d
Move some other methods to vim-engine 2022-06-22 18:36:08 +03:00
filipp
e365d0b07c Unsubscribe document listener in UndoRedoHelper 2022-06-20 03:26:40 +06:00
filipp
69c273c4a5 Track more actions 2022-06-19 01:07:18 +06:00
filipp
7c1ae9812e Update formatting 2022-06-18 06:26:11 +06:00
filipp
5c794ac40e Fix(VIM-749) Support for :let command 2022-06-18 06:21:26 +06:00
filipp
9dbe3c3363 Fix(VIM-308) Undo requires one more step if the cursor is not at the position where it was after undo 2022-06-16 18:50:42 +06:00
filipp
8a98f46235 Move mapDepth to MappingState 2022-06-15 16:22:31 +06:00
filipp
9ed8db4d4a Add oldundo option 2022-06-15 16:06:47 +06:00
Alex Plate
5b94276836
Move more methods to vim-engine 2022-06-15 12:58:15 +03:00
filipp
f1e427e2ff Fix command history 2022-06-14 22:10:04 +06:00
filipp
412b60d6b4 Fix selection after undo 2022-06-14 18:36:14 +06:00
Alex Plate
11d9ef7507
Partially move change group to vim-engine 2022-06-14 10:31:23 +03:00
Alex Plate
38ed9c206a
Fix compilation 2022-06-13 12:53:05 +03:00
Alex Plate
8235a649a1
Move VisualMotionGroup to vim-engine 2022-06-13 12:53:05 +03:00
Alex Plate
09efdd076e
Remove unused method 2022-06-13 12:53:05 +03:00
Alex Plate
350e9cfca2
Fix(VIM-2595): Support plugins in macro execution 2022-06-10 15:27:03 +03:00
Alex Plate
5639edf173
Refactor mapping stack 2022-06-10 15:27:03 +03:00
Alex Plate
f72313df9c
Fix(VIM-2671): Fix using plugins from mappings 2022-06-10 15:27:03 +03:00
filipp
f52eb5e124 Update formatting 2022-06-10 00:07:27 +06:00
filipp
5da9c5e1cd Move variableService logic to base class 2022-06-09 23:54:43 +06:00
filipp
53fdd891fb Move optionService logic to base class 2022-06-09 02:17:40 +06:00
Alex Plate
fe66d06ce2
Move VimMark to vim-injector 2022-06-08 12:06:45 +03:00
Alex Plate
b6e917a2d7
Get rid of DialogDataContext
Actually, it was removed for some time already.
Caused this exception: https://web.ea.pages.jetbrains.team/#/issue/533401
2022-06-07 16:40:38 +03:00
Alex Plate
a6a39d249b
Move key group to vim-engine 2022-06-07 15:53:31 +03:00
Alex Plate
518784c371
Use ShortcutOwnerInfo in savedShortcuts 2022-06-07 15:53:30 +03:00
filipp
51c50cb902 Update formatting 2022-06-07 04:00:06 +06:00
filipp
6355d7765e Add documentation to OptionService.kt and fix some exception messages 2022-06-07 03:59:23 +06:00
filipp
f62575c870 Fix bugs with appending/prepending/removing value from string option 2022-06-07 01:09:19 +06:00
filipp
01e367cadf Delete deprecated OptionsManager.kt 2022-06-07 01:08:10 +06:00
Alex Plate
e248bb5565 Update formatting 2022-06-05 00:23:42 +00:00
filipp
3b3a036806 Remove StringHelper.kt & CommonStringHelper.kt 2022-06-03 22:22:49 +06:00
Alex Plate
ccf48d1e53
Add some more notes to injector about it's status 2022-06-01 13:59:51 +03:00
filipp
eb536766db Fix exception during parsing of empty stings 2022-05-30 15:34:17 +06:00
Alex Plate
f3b6687d79
Update kotlin version 2022-05-30 11:22:24 +03:00
Alex Plate
7332cd1ed1
Start implementing Troubleshooter 2022-05-30 09:52:11 +03:00
Alex Plate
7726f4347b
Unmap removed mappings after using ReloadVimRc action 2022-05-30 09:52:11 +03:00
Alex Plate
ee092d988b Update formatting 2022-05-29 00:17:16 +00:00
filipp
f3b4933ef2 Fix number options 2022-05-25 19:33:40 +06:00
Alex Plate
c6fdf9cdf4
[VIM-2643]: Implement a redo-register feature 2022-05-25 11:30:55 +03:00
Matt Ellis
d7c4e4a8dd Add support for "-Command" flag for powershell
Fixes VIM-2622
2022-05-25 11:30:36 +03:00
Matt Ellis
b7c54d02cb Fix minor scroll bug
If caret is less than 'sidescrolloff' columns from the left of the screen, moving down one line will animate. Greater than 'sidescrolloff' does not animate. This is because the scroll model tries to scroll to a negative horizontal offset, to try and put the caret in the middle of the screen. This isn't possible, but the scroll model sees a large enough distance to trigger an animation.
2022-05-25 11:30:36 +03:00
Alex Plate
831e4e8c42
Fix services initialization in VimInjectorBase 2022-05-24 13:49:01 +03:00
Alex Plate
329722f338
Turn off experimental api 2022-05-24 13:05:12 +03:00
filipp
47d4aee986 Support return without expression 2022-05-23 22:47:47 +06:00
filipp
938325b93e Update formatting 2022-05-23 21:02:39 +06:00
filipp
4ff7e9aefa Move some logic to base classes 2022-05-23 21:00:32 +06:00
filipp
f52792e7f0 Move Regexp from engine 2022-05-23 00:10:57 +06:00
filipp
cbc6662ef7 Update formatting 2022-05-08 21:10:40 +06:00
filipp
26ffc2ad32 Move some classes to vim-engine 2022-05-08 21:09:52 +06:00
filipp
df32e573b0 Move some classes to vim-engine 2022-05-08 15:49:53 +06:00
filipp
19647d96b2 Move some classes to vim-engine 2022-05-08 12:23:14 +06:00
Alex Plate
b1714a2fc1 Update formatting 2022-05-08 00:16:10 +00:00
filipp
83199d5475 Move some classes to vim-engine 2022-05-07 22:45:52 +06:00
Alex Plate
4c0af66dff Update formatting 2022-05-01 00:20:06 +00:00
Alex Plate
b82f1e6602
Move more classes to vim-engine 2022-04-27 10:40:44 +03:00
Alex Plate
4104258219
Move playbackregister to vim-engine 2022-04-26 14:21:10 +03:00
Alex Plate
11054f908b
Move some classes from file package to vim-engine 2022-04-26 10:02:23 +03:00
Alex Plate
385bcbc383
fix(VIM-2604): Update action execution rules 2022-04-25 14:41:32 +03:00
Alex Plate
62c79e1470
Move yank package to vim-engine 2022-04-25 09:45:48 +03:00
Alex Plate
1a99918819
Move some put actions to vim-engine 2022-04-25 09:45:48 +03:00
Alex Plate
7e3a9e0b38
Move window actions to vim-engine 2022-04-25 09:45:48 +03:00
Alex Plate
f51d74f2b8
Use correct name of notifications toolwindow for Track Action Ids 2022-04-25 09:45:24 +03:00
Alex Plate
987cba6072
Change implementation of configurable for lazy loading 2022-04-25 09:45:24 +03:00
Alex Plate
770e6371df
Rename .java to .kt 2022-04-25 09:45:24 +03:00
filipp
3ef86186eb Fix parsing strings with \r in the end 2022-04-25 00:30:56 +06:00
Alex Plate
ac41890759 Update formatting 2022-04-24 00:15:29 +00:00
Matt Ellis
9a06ee97c4 Refactor CaretVisualAttributesHelper 2022-04-21 10:36:15 +03:00
Matt Ellis
d7dfc6dc05 Remove pre-212 caret attribute helpers 2022-04-21 10:36:15 +03:00
Alex Pláte
5a6de3afaa
Merge pull request #493 from citizenmatt/feature/commentary
Improvements to Commentary extension
2022-04-21 10:28:30 +03:00
Matt Ellis
cd242511a8
Fallback to line comment if block is unavailable
Fixes VIM-2381
2022-04-20 12:37:11 +01:00
Matt Ellis
acc7d0954d
Maintain old mappings for compatibility 2022-04-20 00:16:22 +01:00
Alex Plate
330d64c7cb
Move mark package to vim-engine 2022-04-19 18:43:33 +03:00
Alex Plate
673e43dd77
Move scroll package to vim-engine 2022-04-19 10:20:15 +03:00
Alex Plate
c2c5c60899
Move select package to vim-engine 2022-04-19 09:56:38 +03:00
Matt Ellis
7d5176829b
Merge branch 'master' into feature/commentary 2022-04-18 17:12:02 +01:00
Matt Ellis
fd0dc0d445
Remove unnecessary setting of sub mode 2022-04-15 13:36:44 +01:00
Matt Ellis
be11317667
Use comment actions instead of low level handlers 2022-04-13 10:53:25 +01:00
Matt Ellis
22fce51640
Fix Exchange tests after operator changes
OperatorAction no longer normalises linewise ranges, but Exchange doesn't need this
2022-04-12 23:47:46 +01:00
Matt Ellis
4223da47d6
Refactor and simplify Commentary objects
Also introduces Visual support for the `g@` operator action
2022-04-12 22:05:48 +01:00
Matt Ellis
64100fea59
Add Commentary command 2022-04-12 16:53:21 +01:00
Matt Ellis
2244c65233
Reposition caret after commenting 2022-04-12 16:26:28 +01:00
Matt Ellis
e08bffd7ba
Add gcu mapping 2022-04-12 15:33:24 +01:00
Matt Ellis
0d5aa52af2
Add gc text object
Fixes VIM-2589
2022-04-12 15:33:23 +01:00
filipp
e617fc4c34 Move some classes from vimscript package to engine 2022-04-10 15:57:46 +06:00
Alex Plate
c34a7f123d Update formatting 2022-04-10 00:15:21 +00:00
Matt Ellis
cc029fc98e
Implement gcc as gc_ motion
gcc now respects count

Fixes VIM-1687
2022-04-08 16:50:10 +01:00
Matt Ellis
feae15c48c
Use same mapping as Commentary plugin 2022-04-08 16:47:54 +01:00
Matt Ellis
07485727c4
Use Kotlin helper functions 2022-04-08 16:46:08 +01:00
Matt Ellis
8b0ad7680b
Rearrange code 2022-04-08 16:44:04 +01:00
Matt Ellis
43d70cd467
Convert to Kotlin 2022-04-08 16:35:03 +01:00
Matt Ellis
d73b605ef0
Rename Java to Kotlin 2022-04-08 16:32:59 +01:00
Alex Plate
2fbab395f1
Fix incorrect code 2022-04-08 09:54:43 +03:00
filipp
a9fd32f64e Move some actions from change.insert 2022-04-07 23:49:18 +06:00
filipp
da7a2226d4 Move actions from change.shift 2022-04-07 23:49:18 +06:00
filipp
44b37339dc Moved actions from change.delete 2022-04-07 23:49:18 +06:00
filipp
713c3f0a3c Moved some actions from change.change package 2022-04-07 17:50:10 +06:00
Martin Yzeiri
8ab3664992 Matchit: Add CMake Patterns 2022-04-07 11:55:31 +03:00
Martin Yzeiri
03e6101747 Matchit: Add GNU Make Patterns 2022-04-07 11:55:31 +03:00
Martin Yzeiri
9f47995c10 Matchit: Add C patterns 2022-04-07 11:55:31 +03:00
Martin Yzeiri
d58f36ea1a Matchit: Enhance pattern creation
The new LanguagePatterns class lets us easily configure the patterns for
a language in a similar way to the original plugin. Most language
features can be configured by passing strings to the alternate
constructor. And the overloaded + operator makes combining patterns easy.

findMatchingPair() was refactored to work with the new class.

In addition, the concept of prefixes was removed. The cursor should jump
if it's anywhere inside or before an extended pair (excluding the
default pairs). Instead of appending a prefix to each regex, we simply
check in findMatchingPair() what the closest pair to the cursor is. The
original plugin behaves the same way.

We prefer matches containing the cursor over matches after the cursor.
If the cursor in inside multiple patterns, we pick the smaller one. And
a default pair after the cursor is preferred over any extended pairs
after the cursor.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
442970a986 Matchit: Refactor parsePatternAtOffset()
The ending offset of the initial match isn't enough information for some
language features. For example, if the cursor is on "i" in the "else if"
of a Makefile, the previous implementation would jump to the "else" on a
reverse jump instead of treating "else if" as a single structure.

parsePatternAtOffset() needs to return both the match start and end for
us to correctly handle such a distinction.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
fcc6c8a3c5 Matchit: Simplify findClosingPair() and findOpeningPair()
findClosingPair() always moves forward and findOpeningPair() always
moves backwards. That fact lets us simplify both implementations.

Using a stack of Pairs to track the match starts and ends is unnecessary 
since we know ahead of time whether the jump needs to go to the start or
end of the target pair.

findOpeningPair() can be further simplified since it doesn't need to
check the isInOpPending flag -- the distinction between operator pending
mode and regular jumps only matters when moving forward in the buffer.
2022-04-07 11:55:31 +03:00
Martin Yzeiri
1dbd4b4391 Matchit: Use setOf for sets 2022-04-07 11:55:31 +03:00
Alex Plate
4ecfb796d4
Move some classes of scroll package to vim-engine 2022-04-04 23:53:14 +03:00
Alex Plate
de9fa81da3
Move objects to vim-engine 2022-04-04 23:53:14 +03:00
Alex Plate
351e3b15ea
Move leftright package to vim-engine 2022-04-04 22:48:41 +03:00
Alex Plate
2b9b48ac2f
Split PutGroup into base class 2022-04-03 23:48:21 +03:00
Alex Plate
7c4ac5f561
Move toggle recording to vim-engine 2022-04-03 23:39:41 +03:00
Alex Plate
def09b0be8 Update formatting 2022-04-03 00:15:00 +00:00
Simon Rainer
dfc7aef07d Fix(VIM-2553): Substitute consecutive matches
We need to set newend after the content of match is final, otherwise we
can end up in an endless loop. This allows us to remove the
startoff != latestOff check that previously prevented this endless
loop and caused this bug.
2022-04-02 13:52:58 +06:00
Alex Plate
276ad276ec
Move few more classes to vim-engine 2022-03-30 18:44:38 +03:00
Alex Plate
83da2d304e
Move some actions to vim-engine 2022-03-30 18:36:32 +03:00
Alex Plate
6ddc40d080
Move folder actions to vim-engine 2022-03-30 13:52:27 +03:00
Alex Plate
42fb5487e5
Move gn package to vim-engine 2022-03-30 13:48:06 +03:00
Alex Plate
1ce35ac233
Move updown package to vim-engine 2022-03-30 13:20:40 +03:00
Alex Plate
2734202e12
Move visual package to vim-engine 2022-03-29 19:10:19 +03:00
Alex Plate
6a31fd2732
Move text package to vim-engine 2022-03-29 17:54:17 +03:00
Alex Plate
5d84aa6939
Move some actions to engine 2022-03-29 17:43:43 +03:00
Alex Plate
7173b7960d
Move MotionSentenceEndAction to vim-engine 2022-03-29 16:17:14 +03:00
Alex Plate
bb1c30d6c8
Move paragraph action to vim-engine 2022-03-29 15:01:11 +03:00
Alex Plate
d70abf6e27
Move an action to a different module 2022-03-29 14:48:43 +03:00
Alex Plate
25ba72e46b
Reformat code 2022-03-29 12:25:37 +03:00
Alex Plate
4b49bb4737
Fix ]] and ][ commands
Discussion: 486
2022-03-29 12:12:48 +03:00
Alex Plate
c4254dc6dd
Refactor history group 2022-03-29 11:08:21 +03:00
Alex Plate
d73cb274b4
Refactoring of some methods 2022-03-28 18:06:05 +03:00
Alex Plate
6cb6afe032
Fix(VIM-2590): Fix caret shape in PyCharm 2022-03-28 17:01:49 +03:00
Alex Plate
3686f0eb24
Update some usages 2022-03-28 16:10:58 +03:00
Alex Plate
6cc24fe99e
Convert VimActionHandler to using VimEditor 2022-03-28 16:10:58 +03:00
Alex Plate
3784f1957f
Some refactoring of change group 2022-03-28 16:09:25 +03:00
Alex Plate
69fd8d68af
Small refactoring of change group 2022-03-28 16:09:25 +03:00
Alex Plate
301d72c169
Refactor Direction class 2022-03-28 16:09:24 +03:00
Alex Plate
ca11974b12
Move all methods to the base class 2022-03-28 16:09:24 +03:00
Alex Plate
8917dbf4bb Update formatting 2022-03-27 00:15:32 +00:00
Alex Plate
56afa6d564
Move some methods of marks group to engine 2022-03-26 01:38:03 +03:00
Alex Plate
8ecac1a8cf
Start moving mark group to vim-engine 2022-03-26 01:05:05 +03:00
Alex Plate
f742e414e6
Extract vim mark constants into the separate file 2022-03-25 16:44:10 +03:00
Alex Plate
c97f5be3fa
Small refactoring of VimRegisterGroupBase.kt 2022-03-25 16:11:08 +03:00
Alex Plate
c4d35849fd
Move listener to base 2022-03-25 15:30:45 +03:00
Alex Plate
88c191bc61
Move some methods from RegisterGroup to clipboard 2022-03-24 18:07:13 +03:00
Alex Plate
a1e6318bce
Move register classes into the separate package 2022-03-24 17:42:03 +03:00
Alex Plate
3606f5ea14
Move a lot of methods to RegisterBase 2022-03-24 17:07:23 +03:00
Alex Plate
38c3b206e2
Move a method to RegisterGroupBase 2022-03-24 16:21:04 +03:00
Alex Plate
e69bf9760d
Move a method to RegisterGroupBase 2022-03-24 16:08:21 +03:00
Alex Plate
0b763e23cf
Move Register to vim-engine 2022-03-24 14:39:13 +03:00
Alex Plate
311cb0bada
Get rid of TransferableData 2022-03-24 14:25:40 +03:00
Alex Plate
a78782b73a
Extract VimClipboardManager 2022-03-24 14:17:10 +03:00
Alex Plate
54df803ee1
Move some code from register group to base class 2022-03-23 19:32:03 +03:00
Alex Plate
2819b782c9
Move isCloseKeyStroke to extension method 2022-03-23 19:00:37 +03:00
Alex Plate
38c12660b0
Update usages of vimLogger 2022-03-23 18:40:48 +03:00
Alex Plate
3917a8c5e3
Move KeyHandler to vim-engine 2022-03-22 19:20:17 +03:00
Alex Plate
17c642d5ed
Move some classes to vim-engine 2022-03-22 19:17:31 +03:00
Alex Plate
2d84e2d788
Move argument capturing to vim engine 2022-03-22 19:09:09 +03:00
Alex Plate
ca19d2bfd5
Move injector fully to vim-engine 2022-03-22 16:20:28 +03:00
Alex Plate
7290edd3ae
Move all members of injector to vim-engine 2022-03-22 15:47:34 +03:00
Alex Plate
8d4e9b8514
Move VimChangeGroup to vim-engine 2022-03-22 15:46:20 +03:00
Alex Plate
db87b51784
Move some base classes to vim-engine 2022-03-22 15:44:33 +03:00
Alex Plate
96dc9af1e3
Move NativeActionManager to injectorBasfe 2022-03-22 12:36:32 +03:00
Alex Plate
a453cb2582
Move DigraphSequence to vim-engine 2022-03-21 19:04:33 +03:00
Alex Plate
b0d53330bb
Move some classes to vim-engine 2022-03-21 19:04:33 +03:00
Alex Plate
99ebcacf31
Extract injector base for easier refactoring 2022-03-21 19:04:33 +03:00
Alex Plate
3ec90194d7
Move VimStringParser.kt to a different package 2022-03-21 19:04:33 +03:00
Alex Plate
d163837d8d
fix(VIM-2587): Use ctrl-6 as ctrl-^ 2022-03-21 17:31:39 +03:00
Alex Plate
81811530de
Extract StringParser from IJ API 2022-02-28 12:00:05 +03:00
Alex Plate
7276bc49a7
Move runWrite/Read actions to VimApplication 2022-02-28 12:00:05 +03:00
Alex Plate
90cff7e574
Unbind concrete actions from keyHandler 2022-02-28 12:00:05 +03:00
Alex Plate
c673550901
Initialize injector in VimPlugin 2022-02-28 12:00:05 +03:00
Alex Plate
5b360b6de2
Move ExException to vim-engine 2022-02-28 12:00:05 +03:00
Alex Plate
8e2783962f
Move OptionService to vim-engine 2022-02-28 12:00:04 +03:00
Alex Plate
866b319c5b
Move VimDataType to vim-engine 2022-02-28 12:00:04 +03:00
Alex Plate
6eb47567e8
Unbind VimDataType from Variable 2022-02-28 12:00:04 +03:00
Alex Plate
d27f87fbb8
Push down addOption 2022-02-28 12:00:03 +03:00
Alex Plate
b2a2299347
Move OptionListener to vim-engine 2022-02-28 11:59:36 +03:00
Alex Plate
905862ab9f
Move some classes to vim-engine 2022-02-28 11:58:44 +03:00
Alex Plate
5c307fd22c
Rename .java to .kt 2022-02-28 11:58:43 +03:00
Alex Plate
e92b69ad3f Update formatting 2022-02-27 00:16:40 +00:00
Thomas Schouten
4b2ed33cdd Implement UserDataHolder for EditorDataContext, so that handlers like AutoHardWrapHandler can store user data in the context delegate. 2022-02-24 10:38:33 +03:00
Alex Plate
5fa48fc7dd
Extract KeyMappingLayer and MappingInfoLayer 2022-02-22 18:45:38 +03:00
Alex Plate
e028c269b7
Move VimRegisterGroup to vim-engine 2022-02-22 18:11:05 +03:00
Alex Plate
9798c7aca2
Rename .java to .kt 2022-02-22 17:58:14 +03:00
Alex Plate
b5bca78ef4
Move register group to vim-engine 2022-02-22 17:12:15 +03:00
Alex Plate
1c619cfc74
Rename .java to .kt 2022-02-22 17:12:14 +03:00
Alex Plate
dc5832a44c
Convert TextObjectAction to new API 2022-02-22 16:40:57 +03:00
Alex Plate
8fd64afc90
Move CommandFlags to vim-engine 2022-02-22 15:45:04 +03:00
Alex Plate
1484f4e370
Use VimCaret api in MotionActionHandler 2022-02-22 15:44:05 +03:00
Alex Plate
32df1597c4
Move noneOfEnum to engine 2022-02-22 14:44:22 +03:00
Alex Plate
707b750ff1
Unbind VimSelection from IJ 2022-02-22 12:39:11 +03:00
Alex Plate
3388c8517b
Remove unused OptionService import 2022-02-22 12:39:11 +03:00
Alex Plate
60a8e0d5f5
Rename Scope to OptionsScope and move it to vim-engine 2022-02-22 12:39:10 +03:00
Alex Plate
5a757a58b5
Move OptionConstants.kt to vim-engine 2022-02-22 12:39:10 +03:00
Alex Plate
2e555b6eaa
Move CommandState.kt to injector 2022-02-22 12:39:10 +03:00
Alex Plate
c57277cc15
Move Nodes.kt to vim-engine 2022-02-22 12:39:09 +03:00
Alex Plate
bf035d42af
Add some methods to VimEditor 2022-02-22 12:39:09 +03:00
Alex Plate
8cb6f9b65f
Move MessageHelper to injector 2022-02-22 12:39:09 +03:00
Alex Plate
fcbc4a0688
Rename some methods in messages 2022-02-22 12:39:09 +03:00
Alex Plate
42bc15c8ea
Remove VimPlugin from DigraphSequence 2022-02-22 12:39:09 +03:00
Alex Plate
992231bcad
Use services in vim injector 2022-02-22 12:39:09 +03:00
Alex Plate
6d494c99e3
Use vimlogger and injector in MappingState 2022-02-22 12:39:08 +03:00
Alex Plate
a848f2175a
Move CurrentCommandState to vim-engine 2022-02-22 12:39:08 +03:00
Alex Plate
4e6a2f951b
Move MappingMode to vim-engine 2022-02-22 12:39:08 +03:00
Alex Plate
5a41bbe806
Update usage of toUpperCase 2022-02-22 12:39:08 +03:00
lippfi
066e6619af Fix ActionTracker rule 2022-02-21 18:53:00 +03:00
Alex Plate
f0dbabd20f
Update formatting 2022-02-21 11:56:52 +03:00
Alex Plate
35c0e33ec4
Upgrade API to kotlin 1.5 2022-02-21 11:56:26 +03:00
Alex Plate
a5715dac7d
Inline capitalize function 2022-02-21 11:56:26 +03:00
Alex Plate
cdb9af5ab6
Convert StringHelper to kotlin 2022-02-21 11:56:25 +03:00
Alex Plate
19c05c23f3
Rename .java to .kt 2022-02-21 11:56:25 +03:00
Alex Plate
12c744c1ba Update formatting 2022-02-20 00:15:01 +00:00
Alex Plate
604a6a5140
Convert DigraphSequence.kt to kotlin 2022-02-18 19:21:50 +03:00
Alex Plate
62aae7b7c4
Rename .java to .kt 2022-02-18 19:21:50 +03:00
Alex Plate
2ea899330c
Move DigraphResult.kt to vim-engine 2022-02-18 19:12:29 +03:00
Alex Plate
3574db020f
Convert DigraphResult.kt to kotlin 2022-02-18 19:10:19 +03:00
Alex Plate
b2ae2a38ec
Rename .java to .kt 2022-02-18 19:10:19 +03:00
Alex Plate
04ebb6077a
Move some classes to vim engine 2022-02-18 19:08:07 +03:00
Alex Plate
d5062944d0
Rename vim-engin folder to kotlin and change VimEditor package 2022-02-18 18:21:49 +03:00
Alex Plate
042e3388b0
Move VimEditor to vim-engine 2022-02-17 19:00:35 +03:00
Alex Plate
d4a1ffa9a9
Update package structure 2022-02-17 19:00:35 +03:00
Alex Plate
54927d0af7
Move VimLogger to vim-engine 2022-02-17 19:00:35 +03:00
Alex Plate
d26765e217
Create vim-engine module 2022-02-17 19:00:35 +03:00
Alex Plate
277b4e63c3
Introduce ActionInitiator 2022-02-17 19:00:34 +03:00
Alex Plate
848514405b
Remove usages of VimPlugin from keyHandler 2022-02-17 19:00:34 +03:00
Alex Plate
7b8fd0ee55
Extract vim messages into a separate service 2022-02-17 19:00:34 +03:00
Alex Plate
d373ebac58
Use optionService from injector 2022-02-17 19:00:34 +03:00
lippfi
370ccc5254 Hardcode extension names 2022-02-17 14:31:25 +03:00
lippfi
9272fc8cd7 Fix parseKeys 2022-02-17 14:24:57 +03:00
Alex Plate
118c12e7fe
Prepare to 1.10.0 release 2022-02-17 11:44:55 +03:00
Alex Plate
954e1a9099
Remove IJ api from MotionActionHandler 2022-02-16 18:28:38 +03:00
Alex Plate
5aeff6f914
Remove IJ api from EditorActionHandlerBase 2022-02-16 17:16:01 +03:00
Alex Plate
fb15049fbf
Include forEachCaret to VimEditor 2022-02-16 16:39:31 +03:00
Alex Plate
6f3a9c210e
Convert Argument to new API 2022-02-16 14:21:17 +03:00
Alex Plate
6fdd6d839e
Remove IJ API from CommandBuilder 2022-02-16 14:00:03 +03:00
Alex Plate
ac1101a410
Update wrapInsertedTextWithVisualMarks code 2022-02-16 12:53:40 +03:00
Alex Plate
2fd33e6ec2
Unbind command state from IJ api 2022-02-15 21:46:20 +03:00
Alex Plate
779c69a982
Abstract action executor 2022-02-15 21:46:20 +03:00
Alex Plate
3494286e66
Rename .java to .kt 2022-02-15 21:46:20 +03:00
Alex Plate
139b78d7f4
Add a protection from an accidental usage of equals in VimCaret and VimEditor 2022-02-15 21:46:19 +03:00
Alex Plate
daee2f615c
Remove IjVimEditor usages from KeyHandler 2022-02-15 21:46:19 +03:00
Alex Plate
710825ec28
Fix incorrect usage of template presentation 2022-02-15 21:46:19 +03:00
Alex Plate
478539911b
Update MappingInfo to use new api 2022-02-15 21:46:19 +03:00
Alex Plate
b21d984cf8
Switch from application service to singleton 2022-02-15 21:46:19 +03:00
Alex Plate
1a92cebf6b
Reformat KeyHandler 2022-02-15 21:46:18 +03:00
Alex Plate
fd3f939526
Remove few dependencies to IJ API 2022-02-15 21:46:18 +03:00
Alex Plate
7d28760fa1
Inline several methods into beforHandleKey 2022-02-15 21:46:18 +03:00
Alex Plate
4a0a1c95a9
Remove a few IJ classes from KeyHandler 2022-02-15 21:46:18 +03:00
Alex Plate
9da0c10141
Remove Ref from KeyHandler 2022-02-15 21:46:18 +03:00
Alex Plate
43b9ecdf3c
Get rid of Editor in KeyHandler.kt 2022-02-15 21:46:18 +03:00
Alex Plate
987952a2f2
Get rid of DataContext in KeyHandler.kt 2022-02-15 21:46:17 +03:00
Alex Plate
92f6ac57ad
Remove usages of flushDelayedKeyEvents
I'm not sure about this commit, but currently it seems like this method does nothing because of fixes in JBR

See 39265c4773de6a8e26e7ac376428687e1332dffe in IJ repository
2022-02-15 21:46:17 +03:00
Alex Plate
b4af51f3cc
Add vim implementation of logger 2022-02-15 21:46:17 +03:00
lippfi
4ba6e62ada Fix gv 2022-02-15 13:42:40 +03:00
lippfi
8f55551339 Mocked tests for tabmove 2022-02-14 13:11:58 +03:00
Alex Plate
f03d574e86 Update formatting 2022-02-13 00:12:41 +00:00
lippfi
cbb5fbe92e Add vimscript statistic 2022-02-11 14:54:34 +03:00
lippfi
6a376ad62c Add shortcut conflict statistic 2022-02-11 14:53:09 +03:00
lippfi
8e61853459 Add PluginState statistic 2022-02-11 14:51:44 +03:00
lippfi
b17bc1bb3e Add ActionTracker statistic 2022-02-11 14:48:15 +03:00
lippfi
1343c7603b Rename VimStatistic to OptionState 2022-02-11 14:46:18 +03:00
Alex Plate
62fb3f9c5a
Make IdeaVim compatible with 213+ only 2022-02-11 10:58:38 +03:00
Alex Plate
ce99c26c03
Introduce ExecutionContext - abstract context holder 2022-02-10 18:03:40 +03:00
Alex Plate
3571595838
Use VimEditor in Local scope of options 2022-02-10 17:10:30 +03:00
Alex Plate
aa62022218
Reorder functions 2022-02-10 16:26:36 +03:00
Alex Plate
2ff93270d7
Konvert keyHandler to kotlin 2022-02-10 16:17:59 +03:00
Alex Plate
c07719dd3d
Rename KeyHandler.java to KeyHandler.kt 2022-02-10 16:17:41 +03:00
Alex Plate
ee9f12180d
Extract VimActionExecutor 2022-02-10 13:18:23 +03:00
Alex Plate
8df3bc57c5
Execute action execution to a separate class 2022-02-10 13:15:54 +03:00
Alex Plate
0aabb2971e
Support extension handlers with a callback
After the refactoring of AceJump, the current approach is not synchronous anymore.
So, it's needed to explicitly notify IdeaVim that the motion was finished and IdeaVim can continue the execution
2022-02-10 12:55:44 +03:00
Alex Plate
e8f1dff61c
Add some comments for handler injector 2022-02-09 11:46:04 +03:00
Alex Plate
e5460d7a31
Extract keyHandlerKeeper 2022-02-08 18:20:12 +03:00
Alex Plate
2bb44c414f
Refactoring for the new api 2022-02-08 14:20:35 +03:00
Alex Plate
ef7442c488
Create carets() method in VimEditor 2022-02-08 14:20:34 +03:00
Alex Plate
775bde62c8
VimEditor update 2022-02-08 14:20:34 +03:00
Alex Plate
c5a504bde3
Top level editor is hidden behind VimEditor 2022-02-08 14:20:34 +03:00
Alex Plate
f7f7e010c4
Update dic 2022-02-08 14:20:34 +03:00
Matt Ellis
aed2d1159d fix(VIM-2470): Fix incorrect reset of cursor shape 2022-02-08 14:13:49 +03:00
lippfi
d2500df05e Better digraph support 2022-02-07 13:47:02 +03:00
lippfi
8922303a72 Fix paste 2022-02-07 13:45:11 +03:00
lippfi
cea4de03cd Add tabmove command 2022-02-07 13:44:56 +03:00
Alex Plate
9529c19b9b Update formatting 2022-01-30 00:11:14 +00:00
Alex Plate
b0f5c502d9
Inject VimEditor into keyHandler 2022-01-27 13:17:39 +03:00
Alex Plate
c3fc369bc4
[VIM-1028] Support global state
Not yet documented and enabled
2022-01-27 12:34:28 +03:00
lippfi
a5ef0d5edf Fix tab character for StringHelper.stringToKeys() 2022-01-26 21:37:10 +03:00
Alex Plate
1553aa774b
Add docs to VimPlugin 2022-01-26 17:01:36 +03:00
Alex Plate
2ebdbc5ac4
Do not update carets in notebook command mode 2022-01-26 16:57:46 +03:00
Alex Plate
e3ca172101
Update changes in plugin.xml 2022-01-26 16:57:46 +03:00
lippfi
17d4ec6c29 Fix option listeners 2022-01-26 16:43:28 +03:00
lippfi
bec317615d Better map <expr> context 2022-01-26 16:42:44 +03:00
Alex Plate
d00fd767ff
Add some docs regarding plugin initialization 2022-01-26 11:20:03 +03:00
Alex Plate
557652c526
Use executeNonCancelableSection for macro execution 2022-01-25 14:44:21 +03:00
Alex Plate
e138541495
Enable experimental api by default 2022-01-25 11:06:10 +03:00
Alex Plate
2518be2704
Fix(VIM-2504): Fix esc with using python notebooks 2022-01-25 10:52:39 +03:00
Alex Plate
42ec2b9dce
Disable new api for o commands 2022-01-25 10:28:23 +03:00
Alex Plate
9484599bfd
Remove duplicating copyright 2022-01-25 09:42:38 +03:00
Lonre Wang
dbbcf3860a Update VimVisualTimer.kt 2022-01-24 12:57:37 +03:00
Lonre Wang
ae983be0a8 Update OptionsManager.kt 2022-01-24 12:57:37 +03:00
Lonre Wang
f8156fbbca Update NotificationService.kt 2022-01-24 12:57:37 +03:00
lippfi
1909547543 Make OptionConstants non-internal 2022-01-24 12:53:07 +03:00
lippfi
1a122337fe Replace deprecated option data classes with constants 2022-01-24 02:27:33 +03:00
lippfi
bcf2578da9 Replace hardcoded option names with string constants 2022-01-24 00:52:28 +03:00
lippfi
06cd41ba0e Make VimScriptGlobalEnvironment deprecated 2022-01-23 02:35:53 +03:00
lippfi
64ec421cfc Rename parent to vimContext 2022-01-23 02:28:35 +03:00
lippfi
86fcda5afc Fix beep in source command 2022-01-23 02:05:23 +03:00
lippfi
e799d40803 Fix built-in functions with global context 2022-01-23 02:00:26 +03:00
lippfi
c84325a37c Replace Executable with VimLContext 2022-01-23 01:53:07 +03:00
Piotr Mikulski
9b4825db77 String colors that aren't supported properly 2022-01-21 15:04:51 +03:00
Piotr Mikulski
6a4bb7395b Print stderr when running a command just like vim does 2022-01-21 15:04:51 +03:00
Alex Plate
c8463d9b3e
Update dependencies and reformat 2022-01-21 14:17:13 +03:00
Michael Schertenleib
05414276f2 Support custom element names in vim-surround 2022-01-21 14:05:27 +03:00
Alex Plate
bec73749c2
[VIM-2494] Add logs for registers reading/writing 2022-01-21 11:50:26 +03:00
Alex Plate
0d4f9891c3
Fix(VIM-2471): Fix incorrectness 2022-01-19 17:24:19 +03:00
Alex Plate
d4f4765ffd
Fix(VIM-2471): Multiple [{ and ]} actions 2022-01-19 16:25:45 +03:00