Matt Ellis
70a45f3dc8
Treat use block caret option as caret override
2021-07-29 21:20:28 +01:00
Matt Ellis
d63e3dadbc
Merge branch 'master' into feature/guicursor
2021-07-28 23:07:47 +01:00
Alex Plate
93109f1e19
Add additional logging for keys execution
2021-07-28 11:26:09 +03:00
Alex Plate
534fbe1a6b
Tests: reset repeat between tests
2021-07-26 19:07:46 +03:00
Alex Plate
19b51a4a69
Add docs for types of motion
2021-07-22 11:13:58 +03:00
Alex Plate
f64439dab9
Remove unused function
2021-07-01 22:24:39 +03:00
Alex Plate
5018b0e9ff
Change action place for IdeaVim actions
2021-07-01 19:52:20 +03:00
Alex Plate
81076d9c43
Several improvements
2021-07-01 19:30:37 +03:00
Alex Plate
df9d5bfe25
Fix GlobalHandlerTest
2021-07-01 18:13:01 +03:00
Alex Plate
afbfacb462
Format code
2021-07-01 17:36:28 +03:00
Michal Placek
408cd0e037
vim-2335 Support for navigation to previous buffer with :b#
2021-07-01 13:41:15 +03:00
Michal Placek
c15eccf49a
vim-1062 -fixes
2021-07-01 13:31:27 +03:00
Michal Placek
ddb159eec8
vim-1062
2021-07-01 13:31:27 +03:00
Matt Ellis
91585e1059
Run linters
2021-06-30 21:41:59 +01:00
Matt Ellis
0d840b2c41
Merge branch 'master' into feature/guicursor
2021-06-30 18:39:03 +01:00
Matt Ellis
0288a0f2b5
Use insert caret for select mode
2021-06-30 17:26:44 +01:00
Matt Ellis
fe7dc4902b
Make ExShortcutKeyAction dumb aware
2021-06-30 17:17:55 +01:00
Matt Ellis
1caf380505
Improve caret painting in command line
2021-06-30 17:15:52 +01:00
Alex Plate
31e633f55e
Update formatting
2021-06-30 07:42:22 +00:00
Alex Plate
e3aa3e24f5
Create a job for automatic formatting
2021-06-30 10:39:39 +03:00
Alex Plate
b7396fdf8c
Fix formatting
2021-06-30 10:31:27 +03:00
Alex Plate
e8f0e31a27
Correct caret for selecting from the end for 212+ versions of IJ
2021-06-30 10:29:51 +03:00
Matt Ellis
64be75142e
Use guicursor options to draw ex caret
2021-06-29 17:05:11 +01:00
Matt Ellis
f05123123c
Use guicursor instead of editor cursor settings
...
This changes VIM-1475 and ignores IntelliJ's "use block cursor" setting in favour of guicursor. Also affects caret placement around inlays and handling of template hotspots via idearefactormode
2021-06-29 00:21:19 +01:00
Matt Ellis
2f73dac57a
Force the caret visible when updating attributes
...
Changing EditorSettings.setBlockCursor does this via EditorImpl.updateCaretCursor
2021-06-28 23:48:27 +01:00
Matt Ellis
a6087dd08f
Use replace mode caret for change character action
2021-06-28 23:42:36 +01:00
Matt Ellis
ad19dc0100
Use guicursor options to draw caret
2021-06-28 23:09:21 +01:00
Matt Ellis
d19c776ec3
Minor refactor
2021-06-28 23:08:29 +01:00
Matt Ellis
ccd792bf62
Provide hook for resetting cached values
2021-06-28 23:08:22 +01:00
Matt Ellis
9cf0a1ac26
Report errors while parsing guicursor option
2021-06-28 23:06:49 +01:00
Matt Ellis
43620c280d
Add guicursor option
2021-06-28 23:04:58 +01:00
Alex Plate
98ffb3bf9e
[VIM-1672] IdeaVim correctly populates clipboard history
2021-06-28 11:48:09 +03:00
Alex Plate
4cc4fb4d3c
[VIM-1192] Fix dollar motion from single-command
2021-06-28 09:21:32 +03:00
Alex Plate
16d9a3ba8b
Join till character motions into the single file
2021-06-28 08:19:27 +03:00
Alex Plate
a01fc5d72c
Remove useless condition
2021-06-28 07:24:30 +03:00
Alex Plate
f4e777b8df
[VIM-2336] Fix repeat for 'T' movement
2021-06-28 07:24:15 +03:00
Alex Plate
232dd34717
[VIM-2317] Fix memory leak
2021-06-24 10:38:15 +03:00
Matt Ellis
982d6921cb
Fix formatting
2021-06-24 10:13:36 +03:00
Matt Ellis
bb28b76a5b
Support % as shortcut for file name in filter
2021-06-24 10:13:36 +03:00
Matt Ellis
67fed0da9e
[VIM-1566] Use OS shell to execute filter command
2021-06-24 10:13:36 +03:00
Matt Ellis
e3cf50b4c9
[VIM-1357] Invoke shell filter commands with proper path and argument handling
...
Also moves the filter command out of a write action, and under a cancellable modal progress dialog. Any errors are substituted into the text, as per Vim.
Fixes #VIM-1357
2021-06-24 10:13:36 +03:00
Matt Ellis
9f46e1960e
Fix typo
2021-06-10 13:51:43 +01:00
Matt Ellis
e93a619859
Make ListOption generic + create StringListOption
2021-06-10 13:51:23 +01:00
Matt Ellis
287ba7055e
Simplify BoundedListOption
2021-06-10 11:29:20 +01:00
Matt Ellis
dfbec1f23a
Rename "bound" options to "bounded"
2021-06-10 11:18:57 +01:00
Matt Ellis
55dedb4c4d
Remove resetShape method
...
We should avoid setting the shape explicitly, and let it update when the mode changes.
Note that shape can affect the visual position of the caret around inlays (e.g. 'a' at the end of a rename hotspot with a trailing inlay for options will remain in between the text and the inlay, while 'l' in command mode will move after the inlay. Both positions are at the same text offset). We should still avoid explicitly setting shape before moving the caret. We can't guarantee the order of changing mode and moving the caret, so we update the visual position at the current offset when changing mode. (We're also currently using mode as an assumption of shape)
2021-06-10 11:05:41 +01:00
Matt Ellis
9c71b444c6
Update caret visual attributes when mode changes
...
Removes updateCaretState and unnecessary usages
2021-06-05 01:04:01 +01:00
Matt Ellis
e859b1c131
Remove resetCaret
2021-06-05 00:33:04 +01:00
Matt Ellis
6c4bd9cc10
Refactor caret shape functions
2021-06-05 00:21:58 +01:00
Matt Ellis
b50281f8d5
Extract caret shape methods to helper
2021-06-05 00:14:10 +01:00
Matt Ellis
2be0f5cedb
Reset caret visual position after mode changes
...
Fixes an issue where the caret was incorrectly positioned because it was moved before the mode was changed. This wasn't visible in 211 because a couple of bugs in the platform combined to put the caret in the right place.
See #280 , IDEA-262153 and KTIJ-3768
2021-06-04 17:05:03 +01:00
Matt Ellis
646a89d52a
Refactor showMode update
2021-06-04 16:45:07 +01:00
Alex Plate
b5b6c8f37a
fix(sethandler): Correct presentation on settings page
2021-06-03 10:44:23 +03:00
Alex Plate
067aaa798d
setHandler: fix parsing of a
mapping
2021-06-03 10:12:38 +03:00
Alex Plate
c85d7dcd7a
Do not save the executed command to history
2021-06-02 10:54:11 +03:00
Alex Plate
c1b1f1efd8
Add tests for nested global commands
2021-06-02 10:31:49 +03:00
Alex Plate
06fc25cf3b
Remove TODO
2021-06-01 16:31:40 +03:00
Alex Plate
91139005dc
Suppress some deprecated methods
2021-05-29 11:21:05 +03:00
Alex Plate
08f29bacfd
feat: Support :print command
2021-05-28 11:51:54 +03:00
Alex Plate
5a6803551b
Fix typo
2021-05-28 10:29:34 +03:00
Alex Plate
e1f0098164
Add custom inspection to use vimRunForEachCaret
2021-05-27 22:33:05 +03:00
Alex Plate
14428aaf49
Formatting
2021-05-27 22:01:49 +03:00
Alex Plate
f9ebfcc467
Use RangeMarker for marking lines
2021-05-27 12:50:48 +03:00
Alex Plate
07446309d3
Finish command even after an exception
2021-05-27 12:50:48 +03:00
Alex Plate
d2de23481a
Add clarification what is weird
2021-05-27 12:50:47 +03:00
Alex Plate
d8ead10c0f
Add gotInt variable
2021-05-27 12:50:47 +03:00
Alex Plate
6a38188602
Add tests for incorrect :g command
2021-05-27 12:50:47 +03:00
Alex Plate
13884e9524
Add error message about failed search command
2021-05-27 12:50:47 +03:00
Alex Plate
1ff629e257
Add tests for global command
2021-05-27 12:50:47 +03:00
Alex Plate
67649a1746
Extract search_regcomp function
2021-05-27 12:50:47 +03:00
Alex Plate
3a2f370c8c
Show message on missing pattern in global command
2021-05-27 12:50:46 +03:00
Alex Plate
7850508cfe
Add global busy
2021-05-27 12:50:46 +03:00
Alex Plate
e55fbe9159
Fix formatting
2021-05-26 13:47:32 +03:00
Alex Plate
8a3af47b35
Support vglobal and global!
2021-05-26 11:58:03 +03:00
Alex Plate
11dc8cf982
Execute global command
2021-05-26 10:58:27 +03:00
Alex Plate
661a6563b0
Start implementing global handler to support :g command
2021-05-25 22:38:30 +03:00
Alex Pláte
5a855659b0
Merge pull request #308 from citizenmatt/VIM-2308
...
Fix unnecessary caret movement when switching tabs
2021-05-24 11:03:08 +03:00
Alex Pláte
86296e4066
Merge pull request #261 from sharat87/extension/textobjindent
...
New extension: Indentation based text objects
2021-05-24 10:35:21 +03:00
Alex Plate
79cb90e642
Reformat update checker
2021-05-17 18:17:46 +03:00
Matt Ellis
0bde71d4dd
Merge branch 'master' into VIM-2308
2021-05-14 11:51:25 +01:00
Alex Plate
aa51dcddc6
Rename updateChecker
2021-05-14 12:16:53 +03:00
Alex Plate
8ca865e5aa
Remove redundant SAM constructors
2021-05-14 10:52:32 +03:00
Alex Plate
018e5cba83
Enable copy action only if there are things to copy
2021-05-14 09:41:55 +03:00
Alex Plate
df52f37b69
Add reset handlers action for configurable table
2021-05-14 09:27:54 +03:00
Alex Plate
bb5632c98d
Update ktlint and detekt formatting
2021-05-13 19:36:33 +03:00
Alex Plate
879a73494b
Run formatters
2021-05-13 19:34:13 +03:00
Alex Plate
edf6a04a36
Run ktlint
2021-05-13 13:55:31 +03:00
Alex Plate
b0bfd0f56e
Updates for qodana
2021-05-13 11:59:52 +03:00
Alex Plate
4312aceae7
Do not save per-mode info
2021-05-13 11:05:24 +03:00
Alex Plate
a646a59d8d
Move toolbar to the right
2021-05-13 10:51:48 +03:00
Matt Ellis
7300d252f8
Rename go to tab actions
2021-05-13 01:18:31 +01:00
Matt Ellis
9b73cc16e6
Move tab actions out of motion package
2021-05-13 01:12:24 +01:00
Matt Ellis
b7da57d6d1
[VIM-2308] Fix caret and scroll position after gt
2021-05-13 00:05:06 +01:00
Alex Plate
383e1d5245
Keep compatibility with easymotion plugin
2021-05-12 11:51:33 +03:00
Alex Plate
4fdd9b4710
Fix issue with global sethandler
2021-05-12 10:56:49 +03:00
Alex Plate
43eba0aa1d
Update help link
2021-05-12 09:49:48 +03:00
Alex Plate
ad6b5719d2
Update copy action description
2021-05-12 09:45:20 +03:00
Alex Plate
5d344e3193
Rename setkeydev to sethandler
2021-05-12 09:45:19 +03:00
Alex Plate
0cd86282d2
Use setHtmlText for label
2021-05-12 09:45:19 +03:00
Alex Plate
85aae4d408
Fix issues with Track action IDs notification
2021-05-11 10:54:20 +03:00
Shrikant Sharat Kandula
92b0a3abb2
Merge branch 'master' into extension/textobjindent
...
# Conflicts:
# resources/META-INF/includes/VimExtensions.xml
2021-05-09 18:56:34 +05:30
Shrikant Sharat Kandula
444a48f2a1
More tests and fixes
2021-05-09 18:53:50 +05:30
Shrikant Sharat Kandula
039b44b07a
Added more tests and fixes for the tests
2021-05-09 18:35:53 +05:30
Shrikant Sharat Kandula
d7ed33c351
Add test for basic tiny buffer, and fix it
2021-05-08 21:35:47 +05:30
Alex Plate
2139e31754
Add help lines for the table
2021-05-04 14:51:19 +03:00
Alex Plate
3752d35229
Trigger readonly handler when perform editing operations
2021-04-30 16:08:04 +03:00
Alex Plate
5d3ec771c4
Adding ideavim.dic file where IdeaVim-specific words can be defined
2021-04-30 13:48:21 +03:00
Alex Plate
6785d17ab3
Remove warning
2021-04-29 23:02:39 +03:00
Alex Plate
99a0415235
Do not expire the notification after help link pressing
2021-04-29 22:56:08 +03:00
Alex Plate
0fe3f50d93
Make helper text gray
2021-04-29 11:01:35 +03:00
Alex Plate
06647a4cf6
[VIM-2295] Fix s-space in insert mode with an existing mapping
2021-04-29 10:12:16 +03:00
Alex Plate
a5e1a8116f
Add copy action for conflicts table
2021-04-28 11:53:37 +03:00
Alex Plate
038f0a5135
Sort key owners modes
2021-04-28 10:17:42 +03:00
Alex Plate
e7d4dde9d9
Helper text with an example
2021-04-28 10:17:23 +03:00
michal
96dbbcff3e
VIM-1476 Store last inserted text in ". register
2021-04-28 10:15:14 +03:00
Alex Plate
1479742fe8
Add helper message for the shortcut conflicts table
2021-04-27 11:58:11 +03:00
Alex Plate
2f99cf81fc
Use default renderer for per-mode shortcut owners
2021-04-26 12:05:56 +03:00
Alex Plate
0aa5450dc6
Expire the notification after pressing the action
2021-04-26 11:01:57 +03:00
Alex Plate
5cdca0b7c1
Change wording for undefined shortcut notification
2021-04-25 19:57:02 +03:00
Alex Plate
58ed857724
Use correct check mark for EAP
2021-04-25 19:34:25 +03:00
Alex Plate
66536a59a9
Add an .ideavimrc file template
2021-04-25 15:52:45 +03:00
Alex Plate
35ab292c9f
Show "create ~/.ideavimrc" if this file is missing
2021-04-25 15:22:22 +03:00
Alex Plate
6ce9330d3b
Rename EAP to Early Access Program
2021-04-25 14:55:07 +03:00
Alex Plate
c251ee2d22
Update shortcuts conflict notification
2021-04-25 00:52:43 +03:00
Alex Plate
fd5c6d0024
Show full settings dialog instead of only part of it
2021-04-25 00:25:01 +03:00
Alex Plate
3d5a962332
Disable editing for PerMode keyowner
2021-04-25 00:14:46 +03:00
Alex Plate
f096b290a7
Parsing of setkey command
2021-04-24 23:44:10 +03:00
Alex Plate
b1367ec0a9
Split ShortcutOwnerInfo into two subclasses
2021-04-24 16:02:02 +03:00
Alex Plate
e73d919ed7
Continuation of experiments with mode-specific key handlers
2021-04-24 13:34:39 +03:00
Alex Plate
9bcb5e73ba
Fix vim exchange with backward selection
2021-04-24 13:05:47 +03:00
Alex Plate
814e3d8ee7
Refactoring shortcut owner to add an information about applied mode
2021-04-24 12:05:10 +03:00
Alex Plate
d2cc6cca36
Convert ShortcutOwner to kt
2021-04-23 21:37:08 +03:00
Alex Plate
ea5a95d536
Rename .java to .kt
2021-04-23 21:37:08 +03:00
Alex Plate
a845eb3942
Rename ShortcutOwner variable name
2021-04-23 21:33:44 +03:00
Alex Plate
f87fb34943
Fix actions popup place issue
2021-04-23 20:34:41 +03:00
Matt Ellis
4dc9c1f433
Fix scrolling at end of file with folds
...
Caret must be within scrolloff lines of the bottom of the file
Fixes VIM-2291
2021-04-23 20:03:13 +03:00
Alex Plate
62833f2fa9
Update formatting
2021-04-22 12:43:53 +03:00
Alex Plate
76f06170ad
[VIM-2290] Support vim-paragraph-motion plugin
2021-04-22 12:08:17 +03:00
Alex Plate
5f71198c88
[VIM-2289] Fix <End>
command behavior
2021-04-22 09:54:22 +03:00
Alex Plate
8d941913aa
Qodana cleanup
2021-04-21 10:46:38 +03:00
Alex Plate
599571e6ea
Update formatting
2021-04-21 10:23:14 +03:00
Alex Plate
90709ef4d0
[CWM-2643] Create function for get list of editors of the current host
2021-04-21 10:04:04 +03:00
Alex Plate
378aa1026d
[VIM-2284] Set command doesn't duplicate options
2021-04-20 11:13:14 +03:00
Alex Plate
4fb1761fa5
Execute action listeners when call for IDE action
2021-04-20 10:44:56 +03:00
Alex Plate
d0d9535d2f
Big refactoring of MotionHandler
2021-04-19 11:32:16 +03:00
michal
cfe34733e9
VIM-2276 ls returns "absolute path" for files on Microsoft Windows.
2021-04-19 10:40:04 +03:00
Alex Pláte
a8a4142cef
Merge pull request #280 from citizenmatt/ideavim-sidescroll
...
Caret position and view scrolling fixes
2021-04-16 11:21:42 +03:00
Alex Plate
05e547edb5
Fix toRegex
function for keyword option
2021-04-09 11:19:13 +03:00
Alex Plate
278dc6880c
Add an option to trace actions execution time
2021-04-02 10:26:39 +03:00
Alex Plate
b1ae964ca3
Fix SearchGroup parsing in case of broken data
2021-04-01 11:20:19 +03:00
Alex Plate
69a045c144
Fix formatting
2021-03-31 10:47:06 +03:00
Alex Plate
8f7b609c7c
Remove wildcard import
2021-03-31 10:40:22 +03:00
Alex Plate
0019dd6c7a
Do not try to compare text for vim reloading in non .ideavimrc file
2021-03-31 10:32:13 +03:00
Matt Ellis
76f28ef94a
Update formatting
2021-03-23 14:25:59 +00:00
Matt Ellis
3b89d96553
Handle scrolling page with virtual space
2021-03-23 01:01:15 +00:00
Matt Ellis
0fba78f885
[VIM-2177] Do not scroll end of file to bottom of screen
2021-03-22 14:20:28 +00:00
Matt Ellis
ee38944cf9
Fix caret position at end of file with scrolloff
2021-03-22 10:10:36 +00:00
Shrikant Sharat Kandula
c24cbcfbc0
Refactor implementation and test
2021-03-21 11:13:48 +05:30
Shrikant Sharat Kandula
28c01f0a43
Handle outer selection for lower boundary
2021-03-21 10:52:55 +05:30
Shrikant Sharat Kandula
182f671e35
Handle inner selection for upper boundary
2021-03-21 10:46:02 +05:30
Shrikant Sharat Kandula
788495aac8
Merge branch 'master' into extension/textobjindent
...
# Conflicts:
# resources/META-INF/includes/VimExtensions.xml
2021-03-21 10:02:52 +05:30
Shrikant Sharat Kandula
7cbeb821f5
Upper boundary functional
2021-03-21 09:59:34 +05:30
Matt Ellis
36901194dc
Scroll last line to bottom of screen with G
2021-03-18 21:26:42 +00:00
Matt Ellis
58071007bd
Ignore sidescrolloff with caret at start of line
2021-03-18 21:20:48 +00:00
Matt Ellis
f7bb5ec500
Scroll view with Enter in insert mode
2021-03-17 12:17:51 +00:00
Matt Ellis
b92114fec6
Scroll view when inserting new line above
2021-03-17 12:17:51 +00:00
Matt Ellis
fe9bb2a712
Scroll view when inserting new line below
2021-03-17 12:17:51 +00:00
Matt Ellis
81996f8051
Do not beep when removing highlights with Escape
2021-03-17 12:17:51 +00:00
Matt Ellis
a0a976c345
Scroll view for <Del> and <BS> in insert mode
2021-03-17 12:17:51 +00:00
Matt Ellis
9315f36f16
Scroll view for <Tab> in insert mode
...
Note that this doesn't actually work, as we ignore <Tab> in insert mode, so that other actions, specifically the live template action, can handle it. Without this, Emmet doesn't work (VIM-674). The scrolling does work with <C-I>
2021-03-17 12:17:51 +00:00
Matt Ellis
cdc03836d2
Scroll view when moving up/down in insert mode
2021-03-17 12:17:50 +00:00
Matt Ellis
a14e95ad6c
Scroll view when deleting text
2021-03-17 12:17:50 +00:00
Matt Ellis
dd230f720f
[VIM-2230] Caret and inlay with preceding text
2021-03-17 12:17:50 +00:00
Matt Ellis
fa781de76f
Simplify inserting register text
2021-03-17 12:17:50 +00:00
Matt Ellis
3642b32ed6
Fix range handling
2021-03-10 10:30:33 +00:00
Alex Plate
78bc4060b3
Update after rebase
2021-03-05 10:38:39 +03:00
Matt Ellis
16b901ea9e
Update formatting
2021-03-05 10:38:39 +03:00
Matt Ellis
26a3974477
Stop multiple-cursors affecting search state
...
Searching no longer uses the high level search APIs that affect state such as saved searches, history and highlighting. Also conforms better to vim-multiple-cursors behaviour:
* Searches are now case sensitive
* Regular expressions in search text are ignored
* "Select all" works with nowrapscan
* Next occurrence based on existing selection no longer uses word boundary flag
* "No more matches" message shown at more appropriate times
2021-03-05 10:38:39 +03:00
Matt Ellis
9a10d6fe6c
Remove usage of deprecated API
2021-03-05 10:38:38 +03:00
Matt Ellis
eb72def6d0
Remove unnecessary caret move
2021-03-05 10:38:38 +03:00
Matt Ellis
3fe2a2e3b0
Fix updating last search/sub patterns
2021-03-05 10:38:38 +03:00
Matt Ellis
d22d0f67b5
Remove duplication in invalid command message
2021-03-05 10:38:38 +03:00
Matt Ellis
e56e944309
Simplify writing state
2021-03-05 10:38:38 +03:00
Matt Ellis
2d853d8d28
Rename searchAndReplace processSubstituteCommand
2021-03-05 10:38:38 +03:00
Matt Ellis
e5d086dace
Introduce test method to set state
2021-03-05 10:38:38 +03:00
Matt Ellis
eccdd725b7
Introduce processSearchRange
2021-03-05 10:38:37 +03:00
Matt Ellis
284e0b4bf5
Rename search to processSearchCommand
...
The method is doing more than just searching, such as parsing the search command and state management
2021-03-05 10:38:37 +03:00
Matt Ellis
47becb2721
Remove unused count for main search method
...
This method is the main implementation for '/' and '?' and does not support a count. It is currently being used incorrectly in places that should be using a simpler find helper.
2021-03-05 10:38:37 +03:00
Matt Ellis
0b64e26235
Replace search command flags with Direction enum
2021-03-05 10:38:37 +03:00
Matt Ellis
d90db8157c
Remove overload that assumes primary caret offset
2021-03-05 10:38:37 +03:00
Matt Ellis
11da530151
Remove overload that takes a caret
2021-03-05 10:38:37 +03:00
Matt Ellis
c067c67e34
Remove unused code to move caret
2021-03-05 10:38:37 +03:00
Matt Ellis
89913ad4d7
Remove unused search handling from ProcessExEntry
2021-03-05 10:38:36 +03:00
Matt Ellis
e0e80d2ea8
Update after running ktlintFormatter
2021-03-03 10:56:50 +03:00
Matt Ellis
adab2326ed
Add 'startofline' to count percent motion
2021-03-03 10:56:50 +03:00
Matt Ellis
4ef629950d
Add 'startofline' support for shift operations
2021-03-03 10:56:50 +03:00
Matt Ellis
39197df0c7
Add 'startofline' support for scrolling actions
2021-03-03 10:56:50 +03:00
Matt Ellis
1d3d6f0ea1
Add 'startofline' support to G, gg and i_<C-Home>
2021-03-03 10:56:50 +03:00
Matt Ellis
9272ffa52c
Add 'startofline' support to goto line action
2021-03-03 10:56:50 +03:00
Matt Ellis
187e5864ac
Add tests and introduce 'startofline' option
...
Update behaviour of H, L and M to handle 'scrolloff' correctly, operator pending mode and 'startofline' caret placement. Also implemented 'startofline' support for delete motion action.
2021-03-03 10:56:50 +03:00
Matt Ellis
e0711248a0
[VIM-2238] Correctly place cursor at mid line of short files
2021-03-03 10:56:50 +03:00
Alex Plate
291ea3bfb0
Enable fail on warning for java
2021-02-24 05:09:34 +03:00
Alex Plate
62a309cba6
Update annotations
2021-02-20 18:20:29 +03:00
Alex Plate
b7c0e4725d
Suppress code duplicate
2021-02-20 16:26:58 +03:00
Alex Plate
53a21fb5fe
Qodana cleanup
2021-02-20 13:14:27 +03:00
Alex Plate
b6a5e60b68
Fix qodana issues
2021-02-20 12:08:06 +03:00
Alex Plate
f0166dd18f
Fix compatibility issues
2021-02-20 11:36:20 +03:00
Alex Plate
5b8fe2393e
Qodana fixes
2021-02-20 11:26:53 +03:00
Alex Plate
eedc50b4fe
Fix deprecation issue
2021-02-19 19:53:59 +03:00
Alex Plate
d7a636e4de
Add qodana inspection profile
2021-02-19 19:34:42 +03:00
Alex Plate
9e9319f117
Remove some warnings from the code
2021-02-19 19:14:33 +03:00
Alex Plate
7ab53edbbf
Code reformatting to avoid issues between IJ and ktlint formatting
2021-02-19 11:31:41 +03:00
Alex Plate
624c3bf223
A massive code reformatting using intellij
2021-02-19 11:12:36 +03:00
Alex Plate
cf28312740
A massive code reformatting using ktlint
2021-02-19 10:42:28 +03:00
Alex Plate
76f14fc4ba
Preparation for the 0.65 release
2021-02-17 11:06:23 +03:00
Alex Plate
923c0fee7a
[VIM-2153] Always store data as base64 encoded
2021-02-16 10:19:14 +03:00
Alex Plate
c9fd0782ae
Use a different method for compatibility
2021-02-08 12:41:30 +03:00
Alex Plate
c5779935d3
Extract escape key code
2021-02-08 12:28:34 +03:00
Alex Plate
70154d4526
Add log line about NERDTree
2021-02-08 12:16:37 +03:00
Alex Plate
070dfae93d
Fix nerdtree for multiple opened projects
2021-02-08 12:11:54 +03:00
Alex Plate
4e5fc734e2
Fix quick search in NERDTree
2021-02-08 11:22:53 +03:00
Alex Plate
9004749754
Update compatibility with ActionPromoter
2021-02-08 10:19:06 +03:00
Alex Plate
e788221099
[VIM-2220] Do not try to get a command state for null editor
2021-02-02 11:37:39 +03:00
Alex Plate
e63044e72f
[VIM-2217] Fix AppCode specific code
2021-02-01 11:14:30 +03:00
Alex Plate
fd0d010908
Update the link to ideajoin examples
2021-02-01 10:27:30 +03:00
Alex Plate
de159d6e3a
Add IdeaVim actions promoter to promote vim actions
2021-02-01 10:17:33 +03:00
Alex Plate
27293c3d36
Deprecate EditorDataContext construction instead of making it private
2021-01-29 12:15:16 +03:00
Alex Plate
d3b9a5af37
Update todo list of the NERDTree plugin
2021-01-29 11:38:41 +03:00
Alex Plate
544f268ab8
Update extension so they register key mappings only if there isn't already registered another mapping
2021-01-26 10:52:26 +03:00
Alex Plate
f851794cf2
Reduce mapping depth to 20
2021-01-25 03:06:13 +03:00
Alex Plate
0ccc0f0846
Use existing variable to track recursion
2021-01-25 02:52:57 +03:00
Alex Plate
40d1b2ddd5
Reduce size of maxmapdepth
2021-01-25 00:24:01 +03:00
Alex Plate
62128a14e7
Support mapping recursion preventing
2021-01-24 23:59:14 +03:00
Alex Plate
47b604c6a7
Update EditorDataContext to avoid recursion
2021-01-24 23:27:46 +03:00
Alex Plate
5daa654d10
[VIM-1337] Fix mapping processing after timeout
2021-01-24 22:00:58 +03:00
Alex Plate
8c51c699e9
Enable mappings delay for tests
2021-01-24 20:46:34 +03:00
Alex Plate
913fb0648b
Remove unused argument
2021-01-24 20:32:50 +03:00
Alex Plate
1eacb09f3c
Add notion why we don't map plugin mappings
2021-01-23 03:11:25 +03:00
Alex Plate
efcfceef39
Join some delete actions into a single file
2021-01-23 03:04:58 +03:00
Alex Plate
e977ae9e88
Remove testing character
2021-01-23 03:04:58 +03:00
Alex Plate
51f1e6f866
Fix characters yanking
2021-01-23 02:18:04 +03:00
Alex Plate
c63a0200b3
Load extensions after vim script loading
2021-01-22 20:41:10 +03:00
Alex Plate
5fdb817bfd
Support t and T
2021-01-22 20:20:24 +03:00
Alex Plate
1b5bdf5db3
Make varible private
2021-01-22 18:18:13 +03:00
Alex Plate
8022ed450c
Support more nerdtree ex commands
2021-01-22 17:50:32 +03:00
Alex Plate
34b0c93ecd
Update docs
2021-01-22 16:15:53 +03:00
Alex Plate
2221e5234d
Support A, q
2021-01-22 16:14:17 +03:00
Alex Plate
8dd8cce491
Support r, R, and m
2021-01-22 16:06:04 +03:00
Alex Plate
d74965d36d
Add scrolling command for existing commands
2021-01-22 15:54:06 +03:00
Alex Plate
cb9e6c4c69
Support C-K and C-J commands
2021-01-22 15:51:26 +03:00
Alex Plate
1d93edd35b
Update docs
2021-01-22 15:48:41 +03:00
Alex Plate
4c071b9d97
Update P command implementation
2021-01-22 15:47:58 +03:00
Alex Plate
570eceb653
Support P, p, J, K commands
2021-01-22 15:39:19 +03:00
Alex Plate
a34a01745c
Support x and X commands
2021-01-22 14:25:15 +03:00
Alex Plate
a4b9fa0f69
Support O command
2021-01-22 13:59:04 +03:00
Alex Plate
2da18fe59f
Support variables in NERDTree
2021-01-22 12:50:59 +03:00
Alex Plate
5a969d573a
Add list of commands
2021-01-22 12:41:10 +03:00
Alex Plate
0eff36a38e
Implement s, i, gs, gi commands
2021-01-22 12:39:07 +03:00
Alex Plate
241bacfd49
Support s command
2021-01-21 20:48:00 +03:00
Alex Plate
b292644531
Support go command
2021-01-21 20:34:14 +03:00
Alex Plate
3264837478
Use trie to store keys
2021-01-21 20:21:27 +03:00
Alex Plate
70bf5033b5
Extract logic of adding leafs
2021-01-21 19:48:04 +03:00
Alex Plate
9ffe114aeb
Generalize existing Node for building a trie
2021-01-21 18:06:53 +03:00
Alex Plate
75f6e08d85
Support o command
2021-01-21 17:30:14 +03:00
Alex Plate
3b0c19fbfc
Implement node opening/closing
2021-01-21 16:24:40 +03:00
Alex Plate
e4d10eb622
Implement up/down motions
2021-01-21 10:17:55 +03:00
Alex Plate
6afdfb55ca
Start implementing NERDTree support. Support focus command
2021-01-20 10:40:48 +03:00
Alex Plate
cb3508b30d
Support command aliases to function
2021-01-20 10:26:44 +03:00
Alex Plate
171ffc6862
Refactor command aliases
2021-01-20 10:19:02 +03:00
Alex Plate
38019cdb91
Convert command parser to kt
2021-01-20 09:58:40 +03:00
Alex Plate
89bcb43271
Rename .java to .kt
2021-01-20 09:58:39 +03:00
Alex Plate
5101dc00b3
Name for extension is not deprecated
2021-01-20 03:09:04 +03:00
Alex Plate
a7774349e5
Update copyright year
2021-01-20 03:07:13 +03:00
Alex Plate
8901ba0128
[VIM-2202] Fix issues with search command macro recording
2021-01-11 13:48:20 +03:00
Alex Plate
07abc2e2e0
Disable "always inverted" inspection
2020-12-29 11:01:14 +03:00
Alex Plate
7eba54f09a
Disable LightEdit support for IdeaVim
2020-12-29 10:37:55 +03:00
Sergei Vorobyov
1eac924291
fixed: don't show reload vimrc floating toolbar in non-file editors
...
for example in editor from `Preferences | Editor | Font`
2020-12-29 09:49:23 +03:00
Alex Plate
15d173e628
Assert register type with neovim
2020-12-26 04:39:52 +03:00
Sergei Vorobyov
e56f63dc0f
migrated: New floating toolbar API
2020-12-25 10:56:53 +03:00
Shrikant Sharat Kandula
82e39c9236
Fix handling when caret line has no indentation
2020-12-24 21:10:21 +05:30
Shrikant Sharat Kandula
1e69e98b92
Initial working implementation of indent objects
2020-12-24 20:59:55 +05:30
Alex Plate
d0888a063f
Refactor code
2020-12-24 10:58:58 +03:00
Alex Plate
bd5781a039
Optimize imports
2020-12-24 10:46:42 +03:00
Alex Plate
665adaa44b
Fix last line calculation
2020-12-24 10:22:11 +03:00
Alex Plate
9f19ee9586
Include neovim registers check into tests
2020-12-24 09:32:06 +03:00
Alex Plate
bb84b0e368
Refactor deleting
2020-12-24 09:32:06 +03:00
Alex Plate
40ec6c53fa
Revert "Add statistic collection for some options"
...
Classes of the collector are incompatible with 202
This reverts commit b7cb3c09
2020-12-18 11:57:06 +03:00
Alex Plate
b7cb3c0945
Add statistic collection for some options
2020-12-17 23:13:54 +03:00
Alex Plate
69d3c7b754
resetCaset function should not change the shape of other editors
...
This commit fixes the following issues:
1) Windows splitting
- Start insert mode in editor
- Split editor
- Go back to the previous editor. The caret has a block shape, but insert mode
2) VCS updates
In 2021.1 VCS creates a diff window right after the file was changed.
So, the case described above happens here as well.
2020-12-17 10:53:43 +03:00
Alex Plate
93700bddc7
Update deprecated methods according to the new minimal IJ requirements
2020-12-17 10:04:52 +03:00
Matt Ellis
494500041b
Rearrange and document the public search API
...
No code changes, just moved everything
2020-12-17 10:02:16 +03:00
Matt Ellis
011a5a3b23
Remove unnecessary UNSET direction enum value
2020-12-17 10:02:16 +03:00
Matt Ellis
03726858f0
Move find methods to SearchHelper
2020-12-17 10:02:16 +03:00
vladimir.petrenko
f4fe03c582
CWM-927 disable vim for client's hidden editor on host
...
to provide compatibility with Code With Me plugin
2020-12-16 12:27:34 +03:00
Alex Plate
ace584d294
Fix settings saving issues because of NPE
2020-12-15 09:35:35 +03:00
Alex Plate
5cd669202b
Remove time calculation for isIdeavimDisabledHere
2020-12-10 10:06:29 +03:00
Alex Plate
3352bdfabb
Remove some deprecations in code
2020-12-10 09:50:05 +03:00
Alex Plate
440a0bf393
Remove incorrect link in package-info.java
2020-12-10 09:36:59 +03:00
Alex Plate
64a7555f42
[VIM-2188] Remove deprecated configuration store
2020-12-10 09:35:07 +03:00
Alex Plate
f6c3d27bbc
Reset caret shape after <C-O> command
2020-12-08 10:50:06 +03:00
Alex Plate
21daf83fbd
Include caret shape assertions into checks
2020-12-08 10:50:05 +03:00
Shaun Patterson
7f1203c207
VIM-1756: startSel works in insert mode
2020-12-08 10:49:19 +03:00
Alex Plate
89b1f90973
Fix detekt issues
2020-12-04 11:21:40 +03:00
Alex Plate
770d12d79b
[VIM-1913] Enable enter for AppCode templates
2020-12-04 11:05:32 +03:00
Alex Plate
7e4ac22d23
[VIM-1913] Enable tab for AppCode templates
2020-12-04 10:45:56 +03:00
Matt Ellis
4ea7c421a8
Extract and use common Direction enum
2020-12-04 09:53:58 +03:00
Matt Ellis
3c8b7e2de4
Convert SearchHighlightsHelper to Kotlin
2020-12-04 09:53:58 +03:00
Matt Ellis
b13acaf823
Rename .java to .kt
2020-12-04 09:53:58 +03:00
Matt Ellis
709cd6ad6e
Extract SearchHighlightsHelper
2020-12-04 09:53:58 +03:00
Matt Ellis
1316ccc56f
Update default for history to match Vim
2020-12-04 09:53:58 +03:00
Matt Ellis
881ddd0e11
Refactor setting special registers
2020-12-04 09:53:58 +03:00
Matt Ellis
49611ee6b9
Show the correct handler class in :map
2020-12-04 09:33:14 +03:00
Alex Plate
557e47650f
Disable octal for nrformats
2020-12-03 10:07:27 +03:00
Alex Plate
7a164d6d5f
Updates to block caret in insert mode
2020-12-02 10:58:04 +03:00
Alex Plate
60bc936cd9
Take back: VIM-1475: Respect the "use block caret" when in insert mode
2020-12-02 10:31:01 +03:00
Alex Plate
4926d2554e
Revert "VIM-1475: Respect the "use block caret" when in insert mode"
...
Reverting this commit due to VIM-2182
This reverts commit 62c828d7
2020-12-02 09:45:08 +03:00
Alex Plate
eae135acba
Fix detekt issues
2020-12-01 12:19:08 +03:00
Alex Plate
8ce3801b87
[VIM-1913] Improve interaction with AppCode templates
2020-12-01 11:55:47 +03:00
Alex Plate
e3079912ae
Remove unused handlers
2020-11-26 10:24:22 +03:00
Alex Plate
52da3ed0e4
Update info file
2020-11-26 09:44:48 +03:00
Alex Plate
cda85169ea
Add new line for ExEditorKit.kt
2020-11-25 17:22:26 +03:00
Alex Plate
f90d22cc20
Refactoring of ex actions
2020-11-25 10:49:50 +03:00
Alex Plate
bae69d92ae
Rename .java to .kt
2020-11-25 10:49:50 +03:00
Alex Plate
b910239825
Put ex panels into the separate package
2020-11-25 10:49:50 +03:00
sumoooru2
5c9faba7f4
Implement cmap
2020-11-25 10:00:15 +03:00
Alex Plate
23a80a9260
[VIM-2170] Fix alternative range format for s command
2020-11-23 11:49:30 +03:00
Alex Plate
1292c7d1ae
Remove unused import
2020-11-20 11:17:40 +03:00
Alex Plate
69f07967b5
Fix compilation issus for <203
2020-11-20 11:00:29 +03:00
Alex Plate
aedd427c07
Optimize imports
2020-11-20 10:45:26 +03:00
Alex Plate
9b6c3dc511
Fix unresolved references
2020-11-20 10:17:52 +03:00
Alex Plate
b4fa7f4317
Replace @NlsSafe annotation from utils with our own
2020-11-20 09:58:43 +03:00
Alex Plate
f053d305d5
Remove neovim from implementation
2020-11-20 09:35:48 +03:00
Alex Plate
d661f96a9b
Reformat for MessageHelper.kt
2020-11-19 11:26:27 +03:00
Alex Plate
c79fae8ab3
[i18n] Mark some strings as @NonNls
2020-11-19 11:22:11 +03:00
Alex Plate
da9a0a414a
[i18n] Extract more starting for localization
2020-11-19 00:26:17 +03:00
Alex Plate
6fc5b3189a
[i18n] More extracted strings
2020-11-18 18:49:55 +03:00
Alex Plate
7ad131b448
[i18n] More extracted strings
2020-11-18 13:03:35 +03:00
Alex Plate
3e7186bd60
[i18n] Update @Nls annotations
2020-11-18 13:03:35 +03:00
Alex Plate
132f8cce53
[i18n] Extract more strings
2020-11-18 13:03:35 +03:00
Alex Plate
1f7a2594c8
Convert some strings to properties
2020-11-18 11:26:03 +03:00
Alex Plate
c03f01a96a
Update MessageHelper.kt
2020-11-18 03:09:57 +03:00
Alex Plate
26b67a43ae
Fix formatting
2020-11-17 19:55:09 +03:00
Alex Plate
a93ca3a205
Support mapclear commands
2020-11-17 19:47:56 +03:00
Alex Plate
dcc647ba3c
[VIM-1491] Support unmap
2020-11-17 19:38:22 +03:00
Alex Plate
fe44f59239
Refactor map handler
2020-11-17 19:36:41 +03:00
Alex Plate
80dba0babf
Move MapHandler into the separate package
2020-11-17 19:36:17 +03:00
Yaohui Wang
34acf9a91e
Add CJK characterType for delimiting caret movement
...
- Add unicode CJK Unified Ideographs type
- Stop caret movement for CJK chars (as VIM does). Similar to VIM-58
2020-11-17 10:21:49 +03:00
Grzegorz Antoniak
62c828d722
VIM-1475: Respect the "use block caret" when in insert mode
...
The "use block caret" IDEA option controls the style of the cursor: when
it's enabled, the cursor is drawn as a block, and when it's disabled,
it's drawn as a bar. However, after installing IdeaVIM, this option
isn't respected; the plugin always uses a block cursor when in command
mode, and always uses a bar cursor when in insert mode.
This commit changes the behavior so that when the "use block caret"
option is enabled, IdeaVIM's insert mode uses a block cursor instead of
a bar cursor. The cursor in normal mode is always drawn as a block
cursor. If the "use block caret" option is disabled, the behavior is the
same as in previous versions of IdeaVIM (block cursor in normal mode,
bar cursor in insert mode).
Fixes VIM-1475 (on YouTrack)
2020-11-17 10:06:32 +03:00
Jan Palus
75a1bb7cc5
VIM-2114 Do not override registers when deleting empty range
2020-11-13 12:34:04 +03:00
Jan Palus
2758071d31
VIM-2113 Increase tag range only in visual mode
2020-11-13 11:54:08 +03:00
Alex Plate
b6adf9f7a9
Rename ideaenabledbufs to ideavimsupport
2020-11-12 09:45:29 +03:00
Matt Ellis
c38b18e16b
Prevent inlays causing scrolling to stick
2020-11-12 09:37:55 +03:00
Matt Ellis
8d65c3ed26
Limit how much of an inlay is shown when scrolling
2020-11-12 09:37:55 +03:00
Matt Ellis
995bb966ad
Reposition cursor when scrolloff changes
2020-11-12 09:37:55 +03:00
Matt Ellis
dbda1a76ca
[VIM-2158] Fix scrolling when scrolloff is greater than half screen height, but less than full screen height
2020-11-12 09:37:55 +03:00
Alex Plate
4f86d9cc77
Correct visual mode exiting when after line end
2020-11-06 20:26:26 +03:00
Alex Plate
d55774abab
Use vimForEachCaret
2020-11-06 20:21:05 +03:00
Alex Plate
f26ddd4a27
Fix exception in aW
2020-11-06 19:12:40 +03:00
Alex Plate
0539e39977
Fix <C-\><C-N>
2020-11-06 11:16:13 +03:00
Alex Plate
65235d32a1
Fix exception for ]b command
2020-11-06 10:36:03 +03:00
Alex Plate
1fba77d925
Update getName description
2020-11-05 11:31:41 +03:00
Alex Plate
6a3d606032
New extension registration process
...
The new process gives as lazy loading of extension classes
2020-11-01 03:30:00 +03:00
Alex Plate
612a86c4d9
Add new option to enable extensions
2020-11-01 00:51:22 +03:00
Alex Plate
52673d1a02
Remove unnecessary semicolon
2020-10-31 22:04:20 +03:00
Alex Plate
a148446912
Change order of checks
2020-10-31 19:43:19 +03:00
Alex Plate
1ee9075976
Inline findParentByCondition
2020-10-31 19:40:48 +03:00
Alex Plate
0720431c91
More cleanup
2020-10-31 14:29:26 +03:00
Alex Plate
6f1ac1de97
Add more time checks for is db cell
2020-10-31 14:03:11 +03:00
Alex Plate
99d2d4b594
Update the color of yank highlighting after laf changing
2020-10-31 13:46:08 +03:00
Alex Plate
2bf9b97e49
Continuation of qodana cleanup
2020-10-31 13:11:13 +03:00
Alex Plate
c6600f3348
Fixes base of qodana run
2020-10-30 19:54:26 +03:00
Alex Plate
e29ab54b0e
Make default register in RegisterGroup non static field
2020-10-30 19:18:46 +03:00
Alex Plate
197565d4cb
Get rid of info logs
2020-10-30 16:47:44 +03:00
Alex Plate
3d570d2020
Make property private
2020-10-30 15:59:56 +03:00
Alex Plate
fe364dc6dc
Reduce the depth of "parentByCondition" function
2020-10-30 11:56:50 +03:00
Alex Plate
1743c08091
Update isIdeaVimdisableHere logging
2020-10-29 12:40:30 +03:00
Alex Plate
81b095c899
Update detekt configuration
2020-10-29 11:43:47 +03:00
Alex Plate
0b41bd30cd
Rename dialogescape and oneline to ideaenabledbufs
2020-10-29 10:44:34 +03:00
Alex Plate
7c79615c6a
[VIM-2144] Correct caret position after block insert with inlays
2020-10-29 10:19:51 +03:00
Alex Plate
10be7354cd
[VIM-2156] Fix up/down motions with inlays
2020-10-29 09:46:21 +03:00
Alex Plate
1e9925f092
[VIM-2157] Fix tab for active templates
2020-10-28 11:37:28 +03:00
Alex Plate
d4ec7e1f69
Remove some detekt warnings
2020-10-27 10:01:57 +03:00
Alex Plate
7bccaa8717
Remove deprecated methods and options
2020-10-23 11:18:46 +03:00
Alex Plate
319874b973
Update message
2020-10-22 12:11:14 +03:00
Alex Plate
daf8799c39
Update isIdeavimDisabled here report
2020-10-22 12:02:03 +03:00
Alex Plate
f45d4e1451
[VIM-2150] Shift-D should not delete an empty line
2020-10-21 10:26:50 +03:00
Alex Plate
0d0f326c26
Catch exception instead of NumberFormatException
2020-10-18 21:21:37 +03:00
Alex Plate
2072fa1e13
Add detekt to the project
2020-10-18 21:06:51 +03:00
Alex Plate
fd98274e78
EditorDataContext can now accept a delegate data context
2020-10-16 11:03:05 +03:00
Alex Plate
e72c7d6cb7
Convert EditorDataContext to kotlin
2020-10-16 10:53:49 +03:00
Alex Plate
5860c0031b
Rename .java to .kt
2020-10-16 10:53:49 +03:00
Alex Plate
a43232ba6c
Move execution of mapping to MappingInfo
2020-10-16 10:27:12 +03:00
Alex Plate
b20bec610a
Move converting to presentable string to MappingInfo classes
2020-10-16 10:08:42 +03:00
Alex Plate
3a9f5ea33a
Add ability to map actions via <Action> keyword
2020-10-16 10:00:46 +03:00
Alex Plate
b2a6d0e687
Do now show "Copy action id" action in the notification if there is no id
2020-10-15 10:40:48 +03:00
Alex Plate
c9d0d7aef6
[VIM-2140] Downgrade java version to 1.8
2020-10-09 11:06:38 +02:00
Alex Plate
b19e11b5b6
Use proper access syntax
2020-10-09 10:16:30 +02:00
Alex Plate
2d002c044d
Report if time for calculation of isIdeaVimDisabledHere take more than 10ms
2020-10-08 11:39:49 +02:00
Alex Plate
9a7b2bd158
Update the implementation of disabled IdeaVim editors
2020-10-08 11:25:47 +02:00
Alex Plate
461c874de6
Reformat some code
2020-10-08 10:31:21 +02:00
Alex Pláte
0dd47c192b
Merge pull request #252 from citizenmatt/VIM-2104
...
Fixes for scrolling
2020-09-24 09:45:32 +03:00
Alex Plate
5875ce58fb
Update notification about missing action id
2020-09-23 10:46:21 +03:00
Alex Pláte
1c21968259
Merge branch 'master' into VIM-2104
2020-09-23 09:51:10 +03:00
Alex Plate
1d8ac4fc02
Move scroll data objects up to avoid conflicts
2020-09-23 09:50:00 +03:00
Alex Plate
0a863f32b2
Small formatting
2020-09-22 10:48:15 +03:00
Alex Plate
cd0d503402
Convert test to option test
2020-09-22 10:41:03 +03:00
Alex Plate
6436a59528
Rename "ideawaonw" to "ideawrite"
2020-09-18 10:11:01 +03:00
Matt Ellis
63db148aae
Merge branch 'master' into VIM-2104
2020-09-17 15:29:05 +01:00
Matt Ellis
26dae9b4e0
Add zH scroll half screen width action
2020-09-17 14:35:43 +01:00
Alex Plate
43810ba730
Rename moveCaretHorizontal to getOffsetOfHorizontalMotion
2020-09-17 11:18:27 +03:00
Alex Pláte
5bf2818b2a
Merge pull request #242 from i-e-b/master
...
Partial implementation of virtualedit config
2020-09-17 11:15:14 +03:00
Alex Plate
76587d672f
Refactor tests according to IdeaVim practices
2020-09-17 11:13:02 +03:00
Alex Plate
890d48769f
Get rid of unused variables
2020-09-17 10:30:56 +03:00
Alex Plate
fffe8e2499
Add static import of EditorHelper
2020-09-17 10:15:09 +03:00
Alex Plate
fffc2d3b11
Use amountOfInlaysBeforeCaret function
2020-09-17 10:13:53 +03:00
Matt Ellis
007f33be0b
Add zL scroll half screen width action
2020-09-17 00:01:24 +01:00
Matt Ellis
fa17af8d33
Fix keeping caret on screen with preceding inlay
2020-09-16 18:58:21 +01:00
Matt Ellis
eabe43061c
Add tests and fixes for ScrollColumnLeftAction
2020-09-16 16:59:14 +01:00
Matt Ellis
d693906905
Add tests and fixes for ScrollColumnRightAction
2020-09-16 11:47:28 +01:00
Alex Plate
cf25f7e201
Refactor processing of vimLastColumn
2020-09-16 12:42:43 +03:00
Matt Ellis
df3a533515
Fix arithmetic for scrolling columns
2020-09-16 09:29:43 +01:00
Matt Ellis
53a687fd53
Fix issues with side scrolling and inline inlays
...
Fixes VIM-1556, fixes VIM-1770, fixes VIM-2110
2020-09-15 17:07:42 +01:00
Matt Ellis
2091bbc025
Improve cursor position handling with inlay hints
...
E.g. navigation around Kotlin type annotations, replacing a character with a preceding parameter hint
2020-09-08 17:45:44 +01:00
Alex Plate
eb46ed8f00
Small refactorings based on inspections
2020-09-08 10:18:44 +03:00
Alex Plate
f8d66f354a
Fix typos in file
2020-09-08 09:56:28 +03:00
Alex Pláte
67c5601fdc
Merge pull request #248 from yaohui-wyh/master
...
Check if project is disposed when editorDeinit
2020-09-08 09:55:58 +03:00
Matt Ellis
62601686aa
Add internal action to show inline inlays
2020-09-08 00:20:54 +01:00
Alex Plate
e92c0d5098
[VIM-1968] Create and enable option to execute :wa command on :w
2020-09-07 10:55:47 +03:00
Matt Ellis
7321099a0f
Add tests for ScrollMiddleScreenLine actions
...
z. and zz
2020-09-03 10:10:57 +01:00
Matt Ellis
63d9a33d80
Add tests for ScrollLastScreenLine actions
...
z- and zb
2020-09-03 09:57:32 +01:00
Matt Ellis
a7ba6d6004
Add tests for ScrollFirstScreenLine actions
...
z<CR> and zt
2020-09-03 09:55:53 +01:00
Alex Plate
5008d5c8c4
Make better notifications about tracked action id
2020-09-03 11:35:40 +03:00
Alex Plate
33f8a00679
VIM-2099 Fix operations with backward inclusive motions
2020-09-03 10:16:16 +03:00
Matt Ellis
be0adb833f
Add tests for ScrollLastScreenLinePageStartAction
2020-09-03 01:10:58 +01:00
Matt Ellis
8f90ff8a65
Add tests for ScrollFirstScreenLinePageStartAction
2020-09-03 00:05:01 +01:00
Matt Ellis
c8a1938155
Add tests for ScrollPageUpAction
2020-09-02 23:27:16 +01:00
Matt Ellis
3cf42c86f3
Add tests for ScrollPageDownAction
2020-09-02 23:11:53 +01:00
Matt Ellis
632e9fad2e
Remove incorrect mappings for page up/down
...
i_<C-Down> and i_<C-Up> are not standard Vim mappings, but can be set up in .ideavimrc if required
2020-09-02 17:18:03 +01:00
Matt Ellis
a5de935192
Add tests for ScrollLineDownAction
2020-09-02 17:05:01 +01:00
Matt Ellis
111c1ebe32
Add tests for ScrollLineUpAction
2020-09-02 15:09:11 +01:00
Matt Ellis
8a42bff6ad
Add tests for scrolloff and scrolljump
...
Behaviour matches Vim, apart from soft wraps
2020-09-02 14:11:04 +01:00
Matt Ellis
d878c3e05d
Improve handling of scrolljump
...
Now very closely follows Vim's somewhat unintuitive handling. Doesn't work properly with soft wraps (like a lot of other parts of IdeaVim)
2020-09-01 17:46:18 +01:00
Matt Ellis
d08da77b2f
Split scrollPositionIntoView method into two
2020-09-01 17:44:24 +01:00
Alex Plate
a7985e1e9b
VIM-2080 Fix S command with count
2020-09-01 12:08:24 +03:00
Alex Plate
879ca456f7
Do not apply mappings in REGISTER_PENDING submode
2020-09-01 12:08:23 +03:00
Alex Plate
1863cbdef0
Add functionality to track action ids
2020-08-31 10:30:10 +03:00
Alex Plate
ac4755a6ff
VIM-2071 Fix unexpected moving of caret
...
#VIM-2071 Request State {Ready To Release}
2020-08-28 10:17:08 +03:00
Alex Plate
61600b07a4
VIM-2084 Fix execution of plugins with existing mappings
...
#VIM-2084 State {Ready To Release}
2020-08-27 12:26:50 +03:00
Iain Ballard
6be6e7f173
Partial implementation of virtualedit config
...
This does not support all config settings,
but does add the 'onemore' option.
This partly addresses https://youtrack.jetbrains.com/issue/VIM-844
2020-08-26 08:35:00 +01:00
Matt Ellis
4cebaa865b
Fix scrolljump
2020-08-20 14:21:53 +01:00
Matt Ellis
589e43f825
[VIM-2104] Use side scroll offset for horizontal scrolling
2020-08-20 11:45:39 +01:00
Yaohui Wang
61a70704c5
Check if project is disposed when editorDeinit
2020-08-03 07:21:19 +08:00
Alex Pláte
35863581e9
Merge pull request #245 from KostkaBrukowa/VIM-1970
...
VIM-1970 | Working solution of plugin vim-highlightedyank
2020-07-27 20:34:18 +03:00
Alex Plate
041f6af607
Add insert listener; small refactorings
2020-07-27 20:25:03 +03:00
Alex Plate
47bb155989
Replace IJ pair with kotlin Pair
2020-07-26 19:09:35 +03:00
Alex Plate
e01327ab29
Update implementation for inc/dec
2020-07-26 19:04:46 +03:00
Alex Plate
2a10247653
Update implementation for inc/dec actions
2020-07-24 21:50:04 +03:00
kostkabrukowa
e3b7ed7657
VIM-1970 | Adds yank listeners, updates tests
2020-07-24 13:36:23 +02:00
Alex Plate
5bdeaed416
Fix number change for an incorrect oct number
2020-07-24 13:53:16 +03:00
Alex Plate
a44d93283f
Refactor ChangeNumberIncAction.kt
2020-07-24 10:17:36 +03:00
Alex Plate
804f69e9c8
Fix Ctrl-A for selections
2020-07-23 21:12:28 +03:00
kostkabrukowa
086c2f201b
VIM-1970 | Adds feature to change highlight background color
2020-07-22 17:29:54 +02:00
Alex Plate
808fb24bbc
Remove unused methods
2020-07-22 10:40:35 +03:00
Alex Plate
22b1209eb5
Revert the behaviour of :reg
command
2020-07-22 10:21:57 +03:00
Alex Plate
485c5501b3
[VIM-2075] Fix zR command
2020-07-22 10:20:54 +03:00
Alex Plate
81ceba8926
Optimize imports
2020-07-22 10:20:54 +03:00
Alex Pláte
3edd95da4e
Merge pull request #240 from rieonke/VIM-2059
...
add support for putting & editing macros
2020-07-22 10:20:23 +03:00
kostkabrukowa
c1bb364cbe
VIM-1970 | Removes box around yank highlight
2020-07-21 15:18:00 +02:00
kostkabrukowa
dccc793fc7
VIM-1970 | Tries to remove thread related test failure
2020-07-19 16:54:05 +02:00
kostkabrukowa
e0fef4f017
VIM-1970 | Adds some tests and updates plugins docs
2020-07-19 13:30:49 +02:00
kostkabrukowa
3a40b9689c
VIM-1970 | Fixes register bug
2020-07-18 19:12:08 +02:00
kostkabrukowa
3937a395b7
VIM-1970 | Moves functionality to extension class, adds possibility to dynamically set highlight duration
2020-07-18 18:51:07 +02:00
kostkabrukowa
7e3d532075
VIM-1970 | Clears highlighters after its removal
2020-07-18 11:30:52 +02:00
kostkabrukowa
4f658c4734
VIM-1970 | Draft of working solution to plugin vim-highlightedyank
2020-07-18 10:14:45 +02:00
Alex Plate
26aa753d9e
Update syntax of TabCloseHandler.kt
2020-07-16 11:13:20 +03:00
Alex Pláte
008edc7e33
Merge pull request #244 from rieonke/VIM-2068
...
Implement tabc[lose] ex command
2020-07-16 10:57:59 +03:00
Alex Plate
24e7f655fc
Add linewise motion type
2020-07-14 11:31:29 +03:00
Alex Plate
ab8de509d9
Create visual type for the text objects
2020-07-14 02:37:54 +03:00
Alex Plate
4fc4ed7675
Remove FLAG_MOT_CHARACTERWISE flag
2020-07-14 02:10:20 +03:00
Alex Plate
b35ad2bb9d
Remove FLAG_MOT_BLOCKWISE
2020-07-14 02:03:08 +03:00
Alex Plate
895c7f1af1
Remove deprecated class
2020-07-14 01:37:08 +03:00
Alex Plate
a42a19a174
Add converting mode to vim notation
2020-07-13 11:21:53 +03:00
Alex Plate
bbe39d5942
Convert command state to kt
2020-07-13 10:42:43 +03:00
Alex Plate
f5fb844442
Rename .java to .kt
2020-07-13 10:42:42 +03:00
Alex Plate
0c22bb2f4f
Add logging for used ideavimrc file
2020-07-13 10:05:16 +03:00
Alex Plate
c4a3cc6718
Disable neovim test for tests that are marked with VimBehaviourDiffers
2020-07-11 17:32:00 +03:00
Alex Plate
a53ed1705a
Extract NeovimTesting to the separate class
2020-07-11 16:58:27 +03:00
Alex Plate
bd942e2ea1
Add initial implementation of neovim integration for tests
2020-07-09 17:36:57 +03:00
Alex Plate
f54fc09a37
Make modes the same as in vanilla vim
2020-07-09 12:45:34 +03:00
Alex Pláte
e222294c6e
Merge pull request #237 from adriafarres/master
...
Reset operator-pending commands on escape
2020-07-09 11:01:03 +03:00
Alex Plate
2a0bd8722e
Check is project is disposed in isTemplateActive
2020-07-07 17:56:52 +03:00
Alex Plate
aece559400
Remove unused deprecated methods
2020-07-07 12:07:11 +03:00
Alex Plate
28ae3a104a
Revert "Create neovim helper"
...
This reverts commit bc08839b
2020-07-06 16:05:55 +03:00
Alex Plate
bc08839b16
Create neovim helper
2020-07-06 15:47:15 +03:00
Alex Plate
60315744d1
Fix exceptions in word under caret search
2020-07-03 12:35:43 +03:00
Alex Plate
40a6617816
Reset last search during property based tests
2020-07-03 12:11:23 +03:00
Alex Plate
a6964a37ac
Fix exception during sentence start search
2020-07-03 11:54:25 +03:00
Alex Plate
9249ae073c
Fix bug in anyNonWhitespace
2020-07-03 11:21:03 +03:00
Alex Plate
ddb502acb3
Fix exception for d]] command
2020-07-02 13:48:36 +03:00
Alex Plate
7172faf7b5
Revert strict mode for all normalization methods
...
This should be done in a more smooth way
2020-07-02 12:09:56 +03:00
Rieon Ke
6e1761a1f5
impl tabc[lose] ex command
2020-07-02 15:21:19 +08:00
Alex Plate
baa7d4f098
Fix big word motion for last word
2020-07-01 20:49:34 +03:00
Alex Plate
baa5557010
Fix bug in dollar motion at the end
2020-07-01 20:47:16 +03:00
Alex Plate
5ce25ebc23
Fix deleting from the start of document
2020-07-01 20:47:14 +03:00
Alex Plate
ddd1a0a5f0
Reset digraph during propertyBased tests
2020-07-01 19:01:08 +03:00
Alex Plate
e15fd8fa24
Add initial implementation of property based tests
2020-07-01 15:46:52 +03:00
Alex Plate
034cc3a725
Fix sentence motion with two new lines at start
2020-07-01 15:43:24 +03:00
Alex Plate
bd52eb12bd
Fix star search on the last dot
2020-06-30 23:08:09 +03:00
Alex Plate
2d9a0a7559
Fix case yk
for first line
2020-06-30 22:47:19 +03:00
Alex Plate
7b40281875
Use strict mode in normalize
methods
2020-06-30 20:27:41 +03:00
Alex Plate
dc1d01c91d
Use ifEmpty method
2020-06-30 19:48:53 +03:00
Alex Plate
85194b772b
Vim.showMessage should show localized string
2020-06-30 10:22:12 +03:00
Alex Plate
7809842348
Remove unused command flags
2020-06-30 09:55:52 +03:00
Alex Plate
c7948374fd
Cleanup
2020-06-29 13:30:23 +03:00
Alex Plate
f8afdf304b
Use @TestFor instead of custom annotation
2020-06-29 12:21:06 +03:00
Alex Plate
0e7b05e360
Continue cleanup
2020-06-29 10:57:53 +03:00
Alex Plate
5f18e99128
Action is not nullable for Command
2020-06-29 10:49:46 +03:00
Alex Plate
b2e0af587f
Continue code cleanup
2020-06-29 10:42:02 +03:00
Alex Plate
b0b0817668
Code cleanup
2020-06-29 10:29:52 +03:00
Alex Plate
e428b9fa0a
IdeaVim should save to unnamed register, not default one
2020-06-26 10:34:06 +03:00
Alex Plate
e4bbc7b962
Change type of string
2020-06-26 09:27:25 +03:00
Alex Plate
2d1fee0516
Add [version update] marks
2020-06-24 18:17:42 +03:00
Alex Plate
9904de1946
Use fold action names from platform
2020-06-24 17:54:04 +03:00
Alex Plate
583988034b
Fix incompatibility for 202 eap
2020-06-23 09:55:06 +03:00
Rieon Ke
55e553c2a0
add support for putting & editing macros
2020-06-22 22:47:35 +08:00
Alex Plate
ca15c60d52
Remove the ability to download EAP from notification (access to plugin download mechanism was restricted)
2020-06-22 11:16:43 +03:00
Alex Pláte
8be075b36a
Merge pull request #239
...
Use new API for relative line numbers
2020-06-22 11:16:30 +03:00
Matt Ellis
5d95917727
Do not add line numbers when caret moves
...
Fixes VIM-2021
2020-06-20 19:00:59 +01:00
Alex Plate
a53b67f0ef
Add option to disable IdeaVim in dialogs
2020-06-20 18:20:27 +03:00
Matt Ellis
eff13180b3
Update to new line number API
...
Fixes VIM-1934, fixes VIM-1852
2020-06-19 23:51:46 +01:00
Alex Plate
354aec4713
Disable IdeaVim in database table cells
2020-06-19 18:55:49 +03:00
Alex Plate
d2acb88dd4
Add experimental options to disable IdeaVim in one-line editors and enable escape in dialogs
2020-06-19 16:46:37 +03:00
Alex Plate
e96ece23b8
Add strictMode to enable additional checks in dev mode
2020-06-19 09:45:46 +03:00
Alex Plate
a3a3db9bc8
Extract ListenerSuppressor from ListenerManager
2020-06-19 09:29:49 +03:00
Alex Plate
c350650f9c
Commands work on the last line
2020-06-09 03:41:38 +03:00
Alex Plate
786b7193d0
getLineCount does now respect last new line character
2020-06-09 03:04:48 +03:00
Alex Plate
2a6acba07f
S is now a synonym of cc and doesn't have a separate logic
2020-06-09 03:01:45 +03:00
Alex Plate
e5a5d112ca
Deprecate getFileSize method
2020-06-07 20:47:15 +03:00
Alex Plate
9e2cfe548b
[WIP] Removing usages of deprecated getFileSize
2020-06-07 19:50:32 +03:00
Alex Plate
f4d595f5c2
[WIP] Removing usages of deprecated getFileSize for SearchHelper
2020-06-07 19:42:01 +03:00
Alex Plate
c1e5b7d111
Remove deprecated usage in different files
2020-06-07 19:35:25 +03:00
Alex Plate
1eccc60cb3
Remove deprecated usage in moveTextHandler
2020-06-07 19:19:29 +03:00
Alex Plate
9f8095ae52
Formatting for MoveTextHandler.kt
2020-06-07 19:17:19 +03:00
Alex Plate
3674cf4aad
[WIP] Removing usages of deprecated getFileSize for MotionGroup
2020-06-07 19:17:05 +03:00
Alex Plate
6b0d2157c8
[WIP] Removing usages of deprecated getFileSize for go
command
2020-06-07 19:06:04 +03:00
Alex Plate
5a629d6256
[WIP] Removing usages of deprecated getFileSize in getting file info
2020-06-07 18:37:15 +03:00
Alex Plate
b8909f97aa
[WIP] Removing usages of depracated getFileSize
2020-06-07 14:13:07 +03:00
Alex Plate
8c83ed6b55
Remove usage of deprecated getFileSize
2020-06-06 18:24:24 +03:00
Alex Plate
b161346171
Trying to get rid of getFileSize with allowEnd
2020-06-06 18:07:15 +03:00
Alex Plate
330e717518
Fix offset bounds
2020-06-04 10:24:18 +03:00
Alex Plate
dafc031ef6
Add checks for selectWord
2020-06-04 10:03:43 +03:00
Alex Plate
b00a2d3b79
Do not get findManager for nullable project
...
Fixes EA-231806
2020-06-04 09:36:53 +03:00
Alex Plate
c64ec34a1f
Fix let mapleader="\<SPACE>"
2020-06-03 11:42:39 +03:00
Alex Plate
8ed709c7bb
Use different file for storing local configs
2020-06-03 11:14:37 +03:00
Alex Plate
8e8e52c6f9
Create configuration migrators for IdeaVim
2020-06-03 11:05:48 +03:00
Alex Plate
f3e806c4a6
Create config package
2020-05-28 11:14:53 +03:00
Alex Plate
5f28a22666
Notes about unsupported features of exchange plugin
2020-05-22 15:06:20 +03:00
Alex Plate
98aee5d0ab
Fixes and more tests for vim exchange
2020-05-22 09:59:53 +03:00
Alex Plate
7203cc5cb3
Revert "Remove dynamic loader stopper"
...
This reverts commit 03493e23
2020-05-15 09:48:41 +03:00
Alex Plate
028423cf58
Make exchange extension repeatable
2020-05-14 10:37:37 +03:00
Alex Plate
2ead6af96a
Fix visual operator with dot command
2020-05-14 10:37:16 +03:00
Adrià Farrés
660b243056
Reset operator-pending commands on escape
...
Suppose we have the text "|Hello, world", with | being the position of
the cursor. Pressing `d<Esc>dw` simply moves the cursor on top of the
comma instead of leaving the text as ", world".
This fixes issue VIM-1421.
2020-05-13 05:03:49 +02:00
Alex Plate
c85f41e65b
Fix tests
2020-05-12 10:43:04 +03:00
Alex Pláte
89c2a8ec9b
Merge pull request #229 from fan-tom/VIM-921_exchange
...
VIM-921 vim-exchange plugin emulation
2020-05-12 10:08:53 +03:00
Alexey Gerasimov
f9fa15b7ac
Parenthesize command names
2020-05-10 14:51:16 +05:00
Alex Plate
de5ce5f635
Update ideavimrc reload implementation
2020-05-09 22:56:10 +03:00
Alex Plate
2eb6fd6819
Convert VimParser to kt
2020-05-09 22:56:10 +03:00
Alex Plate
22ea4e7ffa
Rename .java to .kt
2020-05-09 22:56:10 +03:00
Alex Plate
3d98f3035f
Reload vimrc
2020-05-09 22:56:10 +03:00
Alex Pláte
0dc236cb5b
Merge pull request #231 from citizenmatt/feature/smooth-scrolling
...
Support smooth scrolling
2020-05-08 11:44:18 +03:00
Alex Plate
ab8be2cada
Update changes
2020-05-08 10:35:28 +03:00
Alex Pláte
b8c22d0928
Merge pull request #230 from fan-tom/VIM-1924_select_next_occurrence
...
VIM-1924
2020-05-08 10:30:34 +03:00
Alex Plate
6c0511a898
Update IdeaVim icons class
2020-05-06 09:38:47 +03:00
Alex Plate
03493e2390
Remove dynamic loader stopper
2020-05-06 09:36:41 +03:00
Alex Plate
11beb1e331
Add Piotr Mikulski to contributors list
2020-05-06 08:47:10 +03:00
Alex Pláte
01b4dc233a
Merge pull request #227 from angelbot/buffer_command
...
Add support for buffer command
2020-05-06 08:46:41 +03:00
Alex Pláte
9f1e80e969
Merge pull request #224 from pmnoxx/master
...
Populate intelij navigation history together with ideavim jumplist
2020-05-06 08:30:06 +03:00
Alex Plate
d11bf1c4d2
Update api
2020-05-06 08:14:34 +03:00
Alex Pláte
61677aa811
Merge pull request #233
...
Fix #VIM-1994
2020-05-06 08:13:40 +03:00
Alex Plate
fb04e835ef
Update vimBehaviourDiffers annotation description
2020-05-02 13:13:51 +03:00
Alex Plate
bb133922d6
Update scheduledForRemoval because of quickfix release
2020-05-01 11:30:26 +03:00
Alex Plate
44dd5ef872
Convert VimExtensionRegistrar to kt
2020-05-01 11:16:28 +03:00
Alex Plate
bcc8e1c055
Rename .java to .kt
2020-05-01 11:13:54 +03:00
Alex Plate
71117ed335
Update registration of extension pointers
2020-05-01 11:06:29 +03:00
Alex Plate
de07fb3b74
Well, the status bar icon should be configurable
2020-05-01 10:38:23 +03:00
Alex Plate
e31d5a4dcf
Initial cleanup after IJ requirements update
2020-04-30 11:43:24 +03:00
Alex Plate
e449bb9692
Refactor ChangeGroup listeners
2020-04-30 10:41:29 +03:00
Alex Plate
b8fc72b6a7
Do not create project manager if it doesn't exist yet
2020-04-30 10:28:03 +03:00
Alex Plate
0a0e3df42b
Extract statistic reporter into the separate file
2020-04-28 11:41:33 +03:00
Alex Plate
949c69a7e9
Refactor EditorGroup listeners
2020-04-28 11:41:33 +03:00
Alex Plate
69caf7a604
Refactor MotionGroup listeners
2020-04-28 11:41:32 +03:00
Alex Plate
23860ad5f9
Use project-level service as parent disposable
2020-04-28 11:41:32 +03:00
Alex Plate
ace5234d8d
Update showcmd widget
2020-04-28 11:41:32 +03:00
Alex Plate
4654f821a9
Fix issue with listener removing
2020-04-28 11:41:32 +03:00
Alex Plate
927e0e7865
Update status bar widget to the new API
2020-04-28 11:41:32 +03:00
Alex Plate
d47c9735b5
Use concurrent list to store listeners
2020-04-28 11:41:31 +03:00
Alex Plate
6100433636
Move StatusBar.kt to a different package
2020-04-28 11:41:31 +03:00
Alex Plate
ca8d05ff13
Clear keymap on reset
2020-04-28 11:41:30 +03:00
Alex Plate
626871e34d
Register topics via xml file
2020-04-28 11:41:29 +03:00
Alex Plate
1b18065e68
Small refactoring of handlers
2020-04-18 17:43:50 +03:00
Alex Plate
053dc02152
EditorActionHandlerBase doesn't take null as caret
2020-04-18 16:40:07 +03:00
Alex Pláte
4ec0bac275
Merge pull request #234 from runforprogram/master
...
[VIM-1991] fix >0 number register not work
2020-04-17 10:19:49 +03:00
Alex Plate
83dca71f69
[VIM-1992] Fix shift-letter mappings
2020-04-16 11:20:26 +03:00
run
962cfb7ae2
[VIM-1991] fix >0 number register not work
2020-04-16 15:45:57 +08:00
Valery Isaev
9bc2ec7d8a
Fix #VIM-1994
2020-04-13 15:02:49 +03:00
Alex Plate
0a4683d908
Clean up repository for the release
2020-04-09 11:06:21 +03:00
Alex Plate
e88a3deafd
Fix replace with clipboard register
2020-04-09 10:25:42 +03:00
Matt Ellis
7de08e08d0
Support smooth scrolling
2020-04-07 17:30:18 +01:00
Alex Plate
95c7a13cb5
Turning plugin on should be performed after commands registration
2020-04-07 11:27:24 +03:00
Alex Plate
a83c326736
Add logging for activating ex panel
2020-04-03 08:23:55 +03:00
Alex Plate
b1acb56247
Fix exception for ciw on last char in file
2020-03-28 15:57:54 +03:00
Alex Plate
caa4731a13
Fix exception when using text objects on empty files
2020-03-28 15:39:06 +03:00
Alex Plate
5b0ece7a91
ReplaceWithRegister for clipboard registers
2020-03-23 10:34:53 +03:00
Alexey Gerasimov
a4cd94847e
Return VISUAL_BLOCK submode from autodetect only if 'Add Selection for NextOccurrence' was not performed previously
2020-03-22 16:45:45 +05:00
Alexey Gerasimov
a0a7386b51
Remove highlight after command is executed or canceled
2020-03-21 20:08:57 +05:00
Alexey Gerasimov
535a72000f
Cleanup
2020-03-21 20:08:37 +05:00
Alexey Gerasimov
60531b9cd2
Add methods in RegisterGroup and VimExtensionFacade to setRegister with specified selection type
2020-03-21 20:04:30 +05:00
Alexey Gerasimov
9ea08da133
Add VimExchange extension
2020-03-21 17:09:02 +05:00
Alexey Gerasimov
7db74460fa
Fix marks range end position handling, as excluded
2020-03-21 17:09:02 +05:00
Alex Plate
4bbbdf8108
Fix ReplaceWithRegister to the empty line
2020-03-20 10:35:08 +03:00
Alex Pláte
04a193309d
Merge pull request #228 from kevin70/master
...
fixed #VIM-570
2020-03-20 10:34:58 +03:00
Alex Plate
f106ffa176
Support ReplaceWithRegister plugin emulation
2020-03-19 11:25:30 +03:00
Alex Plate
8d5d099542
Update icon on ideastatusicon option change
2020-03-19 09:13:49 +03:00
kk
4849992ca9
fixed #VIM-570
2020-03-18 18:49:55 +08:00
Alex Plate
623105650e
PutTextAction refactor
2020-03-17 09:43:40 +03:00
Alex Plate
5e2c01daa6
Rename PutTextAction.kt
2020-03-17 09:32:46 +03:00
Alex Plate
58bf3a4d30
Merge Put actions into one file
2020-03-17 09:28:49 +03:00
Alex Plate
246f5cd8cf
VIM-1911 Lookup keys respect IDE handler
2020-03-14 23:03:42 +03:00
Alex Plate
e632c653f6
Add showcmd text to widget label
2020-03-14 18:05:38 +03:00
Alex Plate
174d17b088
VIM-1958 Fix X command for linewise selection
2020-03-14 18:00:45 +03:00
Alex Plate
b768b26c85
Remove some warnings
2020-03-14 17:28:14 +03:00
Alex Plate
123ce6ebaf
Get rid of deprecated KeyEvents
2020-03-14 15:55:01 +03:00
Alex Plate
f898b8d181
Fix mappings to <S-Space>
2020-03-12 11:25:14 +03:00
Alex Plate
e9f9e531e4
Convert vim typed action to kt
2020-03-12 11:04:35 +03:00
Alex Plate
a7d813cb86
Rename .java to .kt
2020-03-12 11:04:35 +03:00
Alex Plate
75b6eedb12
Remove unused class
2020-03-12 10:33:52 +03:00
Alex Plate
ec6860aa90
Change the label of showcmd widget
2020-03-12 10:03:39 +03:00
Alex Plate
5cf661c6ae
Fix exception during command typing
2020-03-10 14:58:35 +03:00
Alex Plate
8c62caae7c
Fix compilation errors
2020-03-10 11:30:10 +03:00
Alex Pláte
b7af1e6289
Merge branch 'master' into feature/showcmd
2020-03-10 10:24:06 +03:00
Alex Plate
0c77b320db
VIM-570 Print non-ascii characters in ex panel
2020-03-06 13:03:28 +03:00
Alex Pláte
93462d7505
Merge pull request #221 from igrekster/master
...
argtextobj: support bracket pairs configuration via let g:argtextobj_pairs="..."
2020-03-06 09:54:33 +03:00
Alex Plate
7cdb7dc308
Fix some tests for older versions of IDE
2020-03-04 10:32:05 +03:00
John Weigel
2f148255f7
Cleanup
2020-03-03 23:14:11 -06:00
John Weigel
cb00b8b335
Merge remote-tracking branch 'upstream/master' into buffer_command
2020-03-03 23:10:00 -06:00
John Weigel
559b56c8a2
Minor updates
2020-03-03 23:05:32 -06:00
Alex Plate
2820decb5e
Rename variable
2020-03-03 11:07:07 +03:00
Alex Pláte
c64f368e6a
Merge pull request #217 from angelbot/master
...
Add support for buffer list (buffers, files, ls)
2020-03-03 11:05:43 +03:00
Alex Plate
b7c8e84f5e
Minor cleanup
2020-03-03 11:03:36 +03:00
Alex Plate
5acf6c9158
Convert VimPlugin to service
2020-02-28 21:11:12 +03:00
Alex Plate
a8197b0c84
Convert runnableHelper to kt
2020-02-28 18:15:40 +03:00
Alex Plate
2e03062c24
Rename .java to .kt
2020-02-28 18:15:39 +03:00
Alex Plate
0327ea972b
Make Open ideavimrc
dumb aware
2020-02-28 10:29:38 +03:00
Alex Plate
561cc77ecc
Move related methods closer to each other
2020-02-28 09:42:22 +03:00
Alex Pláte
730ce3aca9
Merge pull request #226 from agrison/master
...
Implement the vim-textobj-entire plugin emulation.
2020-02-27 14:23:31 +03:00
Alexandre Grison
1893dc6afd
Fixes from feedback.
...
Renamed `entiretextobj` to `textobj-entire` including packages and class name.
Renamed `<Plug>IncludingLeadingTrailing` to `<Plug>textobj-entire-a`.
Renamed `<Plug>IgnoringLeadingTrailing` to `<Plug>textobj-entire-i`.
Avoid iterating too much the buffer content.
2020-02-27 11:46:23 +01:00
igrekster
6ec39314ee
argtextobj: support bracket pairs configuration via let g:argtextobj_pairs="..."
...
argtextobj by default only handles arguments inside parenthesis. This is
very limiting when editing C++ source files. This change allows the list
of bracket pairs to be configurable via a global IdeaVim variable. The
variable takes effect immediately.
2020-02-26 10:32:21 +11:00
John Weigel
33d34f35e9
Merge branch 'master' into buffer_command
2020-02-23 21:49:22 -06:00
John Weigel
1f4f40fd7c
Merge remote-tracking branch 'upstream/master'
2020-02-23 21:48:30 -06:00
John Weigel
7c908b247e
Merge branch 'master' into buffer_command
2020-02-23 21:14:21 -06:00
John Weigel
c87528939b
Fix buffer numbering bug with filters.
...
Update test to cover fix.
2020-02-23 21:11:36 -06:00
John Weigel
41c822fde1
Add support for buffer command.
2020-02-23 20:45:06 -06:00
Alex Plate
b8a40d93f7
Now every service handles it's state separately. VimLocalConfig is a service
2020-02-21 12:03:02 +03:00
Alexandre Grison
36f6027b0e
Implement the vim-textobj-entire plugin emulation.
2020-02-20 12:13:55 +01:00
Alex Plate
929eee4a12
Add comments for NotificationService.kt
2020-02-20 10:13:47 +03:00
Alex Plate
48927b1207
Small corrections after merge
2020-02-19 11:58:37 +03:00
Alex Plate
0820893dc6
Update annotations to java 8 style
2020-02-19 11:58:27 +03:00
Alex Pláte
dd6079cfa6
Merge pull request #219 from fan-tom/bugifx/1008
...
Fix block actions (i.e ci{) in presence of quotes (VIM-1008)
2020-02-19 11:53:19 +03:00
Piotr Mikulski
2a6569742d
populate intelij navigation history together with ideavim jumplist
2020-02-17 17:55:45 -08:00
John Weigel
3d7d75bae4
Merge remote-tracking branch 'upstream/master'
2020-02-16 21:11:02 -06:00
John Weigel
6da4d0ce5e
Rework buffer list to more closely mimic vim.
2020-02-16 20:40:17 -06:00
Alex Plate
c873081dc3
Merge pull request #133 from igrekster/master
...
Add argtextobj.vim plugin emulation
2020-02-14 12:30:13 +03:00
Alex Plate
eb01b25f35
Fix some cases by disabling [, { and < support (what is not supported in the original plugin)
2020-02-14 12:23:32 +03:00
Alex Plate
c0c9cfaf86
Get rid of several getText
methods
2020-02-14 10:54:22 +03:00
Alex Plate
304f860eb2
Use java 8 JetBrains annotations
2020-02-14 10:32:18 +03:00
Matt Ellis
14c8b6a248
Fix nullability compile error on 2019.2
2020-02-11 10:29:02 +00:00
Matt Ellis
9b71215cde
Merge branch 'master' into feature/showcmd
2020-02-11 00:24:29 +00:00
Matt Ellis
4f43bcffb9
Replace SelectRegisterAction with direct parsing
...
It's not a command, but part of a command
2020-02-11 00:08:08 +00:00
Matt Ellis
29e4dc5fb5
Show digraph entry in showcmd
2020-02-10 23:38:02 +00:00
Matt Ellis
0dc95cb13c
[VIM-434] Display showcmd in status bar
...
IdeaVim has showcmd enabled by default. Vim has it enabled by default, but disabled for Unix, with concerns about slow terminals. It is enabled by defaults.vim
2020-02-10 11:35:52 +00:00
igrekster
5ee0a93675
Add argtextobj.vim plugin emulation
2020-02-09 11:57:54 +11:00
Alex Plate
767b3c4a39
Add some scheduled for removal annotations
2020-02-08 20:57:44 +03:00
Alex Plate
bb948a463c
Add option to make status bar icon gray
2020-02-08 20:56:13 +03:00
Alex Plate
e4e9a03d0a
Add information about why EPs are used to register actions and ex handlers.
2020-02-08 18:14:04 +03:00
Alex Plate
50ba386f59
Write tests for dynamic extensions
2020-02-08 18:07:20 +03:00
Alex Plate
bcc9b0a7b1
Remove plugin owner after extension removal
2020-02-08 15:38:54 +03:00
Alex Plate
2c8f4940b9
Support EasyMotion extension
2020-02-08 15:25:24 +03:00
Alex Plate
41876cf8fd
Make vimExtension dynamic
2020-02-08 14:56:39 +03:00
Alex Plate
f6fd0b52f0
Rename RequiredShortcutOwner to MappingOwner
2020-02-08 14:36:35 +03:00
Alex Plate
843faa7cc6
Make plugins disposable
2020-02-08 14:36:01 +03:00
Alexey Gerasimov
a8af2c3242
Fix Set creation
2020-02-07 22:24:46 +05:00
Alexey Gerasimov
e5bfad974e
Copyright and comment
2020-02-07 21:50:06 +05:00
Alexey Gerasimov
50c2d04503
Migrate to new checkInString
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
480de62686
Improve existing checkInString
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
955b501058
Make Direction enum public
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
d985527624
Rewrite checkInString in Kotlin
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
afbe7f0e69
Add findPositionOfFirstCharacter function
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
94e65ddce6
Use isQuoteWithoutEscape when findCharacterPosition to detect escaped char
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
cb9f144255
isQuoteWithoutEscape small improvement
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
ac84624faa
Use Direction enum instead of int
2020-02-07 19:48:40 +05:00
Alexey Gerasimov
30097fbae6
Assume that caret is in string/char only if there is closing char
2020-02-07 19:48:40 +05:00
Alex Plate
c295dd5c62
Use special class for storing requiredShortcuts
2020-02-07 16:07:14 +03:00
Alex Plate
373fef2824
Refactor MappingInfo
2020-02-07 12:42:36 +03:00
Alex Plate
cfc255bf2b
Rename .java to .kt
2020-02-07 12:41:57 +03:00
Alex Plate
ea7e58535b
Fix tests
2020-02-07 12:41:47 +03:00
Alex Plate
0b67dd1d05
Merge pull request #218 from citizenmatt/feature/registers
...
Macros record input keystrokes, not mapped keystrokes
This PR fixes VIM-1835 by recording input keystrokes for macros instead of the mapped keystrokes.
This PR is also required as a stepping stone for showcmd support (VIM-434), as both issues require refactoring KeyHandler#handleKey, and I thought it best to separate the issues.
A few other things were fixed as part of this PR:
VIM-1899 - support an argument to the :registers command
VIM-1900 - improve output of :registers, :marks, :jumps and :ascii
2020-02-04 18:46:15 +03:00
Alex Plate
1519faef81
Fix compatibility with the IdeaVim-EasyMotion
2020-02-04 11:13:38 +03:00
Matt Ellis
9fad4a74ed
Remove keys from Command
...
Also refactors PutVisualTextAction
2020-02-04 00:36:59 +00:00
Matt Ellis
3eb46114f8
Remove Shortcut class
2020-02-03 23:35:04 +00:00
Matt Ellis
6a5fd30531
Remove unnecessary empty shortcut registration
2020-02-03 23:31:18 +00:00
Matt Ellis
96e83150e5
Ensure :jumps formats non-printable characters correctly
...
Also ensures long output lines are truncated
2020-02-03 22:50:39 +00:00
Matt Ellis
b2b65c65b9
Ensure :ascii formats non-printable characters correctly
2020-02-03 22:50:38 +00:00
Matt Ellis
5b028b4fa3
Ensure :marks formats non-printable characters correctly
...
Also adds a bunch of tests, and fixes offset for ^ and ] registers
2020-02-03 22:50:38 +00:00
Matt Ellis
8f4e1b3409
[VIM-1900] Ensure :reg formats non-printable characters correctly
2020-02-03 22:50:38 +00:00
John Weigel
ff209d0120
Merge remote-tracking branch 'origin/master'
2020-02-01 22:38:18 -06:00
John Weigel
ea2fe618b5
Add support for buffer list (buffers, files, ls).
2020-02-01 22:33:12 -06:00
Matt Ellis
3403cdf84b
[VIM-1835] Macros record actual keystrokes not mapped
2020-02-01 11:36:40 +00:00
Alex Plate
4f9a6f3a7b
Make vimExCommand EP dynamic
2020-01-31 19:14:11 +03:00
Alex Plate
c8d6d233e5
Revert [Make vimExCommand EP dynamic]
2020-01-31 18:15:55 +03:00
Alex Plate
0cfb65a19a
Make vimExCommand EP dynamic
2020-01-31 17:59:07 +03:00
Alex Plate
384d917021
Make vimAction EP dynamic
2020-01-31 12:05:46 +03:00
Alex Plate
f1c8c67789
Use enumMap to store key roots
2020-01-31 10:17:56 +03:00
Alex Plate
75e8f4ec6d
Deny vimAction extension point contributions from other plugins
2020-01-30 21:23:23 +03:00
Matt Ellis
d1d0323112
[VIM-1899] Add argument to :registers command
...
Also introduce testable clipboard handling
2020-01-27 10:47:37 +00:00
Alex Plate
ab31dae582
Add todo for VimLocalConfig
2020-01-27 12:25:45 +03:00
Alex Plate
64f176cedb
Control dynamic loading of plugin via the application component
2020-01-27 11:45:26 +03:00
Alex Plate
0d190e4a63
Update copyright
2020-01-27 11:35:00 +03:00
Alex Plate
13cdb7cc35
Merge pull request #215 from citizenmatt/refactor/command-state
...
Refactor key handler state
2020-01-27 11:34:48 +03:00
Alex Plate
80074177fc
Make ascii doc a bit clearer
2020-01-27 11:11:05 +03:00
Alex Plate
b2267c4b6c
Add information about non-released actions
2020-01-24 13:41:47 +03:00
Alex Plate
1b7c3f0da3
Merge pull request #214 from sumoooru2/master
...
Implement c_CTRL-N/P
2020-01-22 10:56:37 +03:00
Alex Plate
50c04ce71c
Change LookupKeys implementation
2020-01-20 15:29:40 +03:00
Alex Plate
bc6ff6bc8e
Convert characterHelper to kt
2020-01-19 17:55:15 +03:00
Alex Plate
93bcf2a7e8
Rename .java to .kt
2020-01-19 17:55:14 +03:00
Alex Plate
c3b503adff
Set up a mechanism to define the KeyStrokes that should work with active lookup
2020-01-19 17:34:12 +03:00
Alex Plate
ecdcbdda10
Put all range files into the ranges directory
2020-01-16 15:13:56 +03:00
Alex Plate
b97c9a5ed0
Rename .java to .kt
2020-01-16 15:13:55 +03:00
Alex Plate
84a6843a7b
Convert ExOutputModel to kt
2020-01-16 12:26:39 +03:00
Alex Plate
17eed7467c
Rename .java to .kt
2020-01-16 12:26:39 +03:00
Alex Plate
310ffc849c
Convert ExCommand to kt
2020-01-16 12:23:43 +03:00
Alex Plate
3e6756160a
Rename .java to .kt
2020-01-16 12:23:43 +03:00
Alex Plate
563e809a2d
Put all exceptions to single kt file
2020-01-16 12:18:20 +03:00
Alex Plate
86ec3f3bcd
Rename .java to .kt
2020-01-16 12:17:54 +03:00
Matt Ellis
7b225cb824
Remove CHAR_OR_DIGRAPH state
2020-01-07 20:14:56 +00:00
Matt Ellis
562e0b06df
Refactor expected argument type
2020-01-07 19:54:20 +00:00
Matt Ellis
51ce064507
Simplify and document handling of EX_STRING
2020-01-07 19:09:58 +00:00
Matt Ellis
ebaeff9b4d
Merge branch 'master' into refactor/command-state
2019-12-30 16:31:24 +00:00
Matt Ellis
8889e799ca
Refactor setting command argument
2019-12-30 16:26:32 +00:00
Matt Ellis
668705e475
Refactor handling of duplicate operator chars
2019-12-30 16:08:04 +00:00
Matt Ellis
e428e909bf
Simplify handling of count editing characters
2019-12-30 16:08:00 +00:00
Matt Ellis
d755c751c2
Move fix up of command/motion count
2019-12-30 15:36:52 +00:00
Matt Ellis
312c547412
Rearrange methods
2019-12-30 15:30:33 +00:00
Matt Ellis
48d30f2a3c
Extract CommandBuilder
2019-12-30 15:28:15 +00:00
Matt Ellis
d8ed30df14
Encapsulate command node state
2019-12-27 18:09:50 +00:00
Matt Ellis
50176cb267
Move mapping mode to mapping state
2019-12-27 16:19:57 +00:00
Matt Ellis
5898d21857
Remove unnecessary annotations
2019-12-27 12:44:13 +00:00
Matt Ellis
e3839bc0b2
Remove unused command flags override
2019-12-27 12:42:00 +00:00
Matt Ellis
f97555d4a8
Rename executing command
2019-12-27 12:34:13 +00:00
Matt Ellis
79bdca9769
Move command stack to per-editor state
2019-12-27 12:26:10 +00:00
sumoooru2
138c2956ac
Implement c_CTRL-N/P
2019-12-27 19:37:01 +09:00
Matt Ellis
ced457dd94
Move command state to per editor state
2019-12-27 10:33:22 +00:00
Matt Ellis
784fc6c6fa
Rename mode state class and make immutable
2019-12-27 10:10:39 +00:00
Alex Plate
b4e0ec282f
Convert vim surround plugin to kt
2019-12-26 16:45:42 +03:00
Alex Plate
cbf7dfabcb
Rename .java to .kt
2019-12-26 16:45:42 +03:00
Alex Plate
69a273982f
Fix 183 capability
2019-12-24 10:34:57 +03:00
Matt Ellis
f817e6cb7f
Extract mapping state
2019-12-23 16:49:27 +00:00
Alex Plate
eef1b25e9f
Convert common package to kt
2019-12-23 17:20:15 +03:00
Alex Plate
622de851fe
Rename .java to .kt
2019-12-23 17:20:15 +03:00
Alex Plate
8cecb61d28
Convert selection type to kt
2019-12-23 16:21:39 +03:00
Alex Plate
77d8d27dfa
Rename .java to .kt
2019-12-23 16:21:39 +03:00
Alex Plate
340f259b17
[VIM-1884] Add CTRL-J to the list of keys working with lookup
2019-12-23 15:54:52 +03:00
Alex Plate
5cf68a7f06
[VIM-1878] Update submode in case of active template
2019-12-23 12:54:57 +03:00
Matt Ellis
6a622565ca
Move mapping availability check
2019-12-19 17:00:38 +00:00
Alex Plate
0ae5abcd0c
[VIM-1874] Add possibility to execute option listener after adding
2019-12-19 18:54:51 +03:00
Alex Plate
b6cecb2125
Refactor options change listener
2019-12-19 18:54:50 +03:00
Alex Plate
3aa3a9c9a8
Get rid of unused name sorter
2019-12-19 18:13:51 +03:00
Alex Plate
2c11ed43e4
[VIM-1875] Fix isk loading on startup
2019-12-19 17:12:29 +03:00
Matt Ellis
23126aeb6d
Extract abandoned mapping sequence handling
2019-12-19 11:49:53 +00:00
Matt Ellis
61fd67472b
Extract completed mapping sequence handling
2019-12-19 11:39:34 +00:00
Matt Ellis
105c073e1f
Extract unfinished mapping sequence handling
2019-12-19 01:11:24 +00:00
Rafał Hajdacki
b695e3c646
Fix usage of invalid path separator
2019-12-18 14:09:40 +01:00
Matt Ellis
200f3484b6
Move current arg type state to per-editor
2019-12-10 20:20:13 +00:00
Matt Ellis
6a40eb48fe
Remove forward search state
2019-12-10 20:14:32 +00:00
Matt Ellis
fb3e9ce9f3
Move captured keys to per-editor state
2019-12-10 20:11:08 +00:00
Matt Ellis
91865460a2
Move DigraphResult to top level class
2019-12-10 20:05:12 +00:00
Matt Ellis
644afe541e
Move <BS> digraph state to DigraphSequence
2019-12-10 20:01:42 +00:00
Matt Ellis
232303f06a
Refactor to maintain digraph state at all times
...
Also allows <C-K> and <C-V>/<C-Q> to be remapped
2019-12-10 19:59:11 +00:00
Matt Ellis
280845610b
Move digraph sequence state to per-editor
2019-12-10 19:32:25 +00:00
Matt Ellis
6108c9d6d2
[VIM-1284] Allow mapping numbers
...
Includes special case for 0 while entering counts. See :help :map-modes.
Also fixes issues when both operator and motion have a count - value should be multiplied, not appended (e.g. 3d2w is the same as 6dw, no 32dw!). See :help operator
2019-12-10 19:31:38 +00:00
Matt Ellis
ce04e995ee
Move command count state per editor
2019-12-10 19:31:23 +00:00
Alex Plate
917b77c8ad
Remove unused ifs
2019-12-10 10:18:54 +03:00
Alex Plate
a2cd8ec19c
Add left/right to the list of keys working with lookup
2019-12-10 10:12:51 +03:00
Alex Plate
6300d39065
Another approach to handle with warnings
2019-12-06 18:52:15 +03:00
Alex Plate
2457079724
Fix some code smells
2019-12-06 18:31:06 +03:00
Alex Plate
ba84e723e8
Remove unused option type
2019-12-06 18:23:27 +03:00
Alex Plate
bf75e75d6f
ListOption can't return null anymore
2019-12-06 18:17:42 +03:00
Alex Plate
c3183a8bd7
Replace string buffer with string builder
2019-12-06 18:14:59 +03:00
Alex Plate
7c162fc7ed
Fix some possible exceptions
2019-12-06 18:14:35 +03:00
Alex Plate
529c5ac8d7
Fix isPuncf method
2019-12-06 18:11:42 +03:00
Alex Plate
60e619e45e
ExPanel doesn't return null
2019-12-06 17:55:59 +03:00
Alex Plate
a89bdcdd3b
Fix exception with d:
2019-12-06 16:36:28 +03:00
Alex Plate
0b517671cb
Make some argument collections immutable
2019-12-05 17:27:14 +03:00
Alex Plate
a15dc3ed60
Suppress some inspections
2019-12-05 12:58:32 +03:00
Alex Plate
b7d60f4cb5
Fix tests
2019-12-04 16:19:16 +03:00
Alex Plate
82a331a940
VIM-1362 Search with confirm scroll down far enough
2019-12-04 16:05:11 +03:00
Alex Plate
c31e688f11
Suppress deprecation
2019-12-04 15:49:47 +03:00
Alex Plate
0c887027d3
Suppress some deprecations
2019-12-04 12:44:18 +03:00
Alex Plate
7c7df85d1a
Perform partial reset after autocomplete
2019-12-03 13:22:09 +03:00
Alex Plate
a7c025d927
Add Enter to the list of keys that are not processed with active lookup
2019-12-03 12:50:33 +03:00
Alex Plate
dc713c477b
Disable down/up keys for lookup
2019-12-02 15:57:08 +03:00
Alex Plate
7e71edaee2
Suppress wrong error
2019-12-02 15:49:20 +03:00
Alex Plate
3f8925cbb0
VIM-1853 Fix marks for disposable projects
2019-12-02 15:47:02 +03:00
Alex Plate
5f9e24b314
VIM-1855 Fix initialization error
2019-12-02 10:56:08 +03:00
Alex Plate
dcd799ad85
Comment deprecated method
2019-12-02 10:48:30 +03:00
Alex Plate
ff0d7a4345
Update initialization logic
2019-12-02 10:47:33 +03:00
Alex Plate
d68bad313e
VIM-1854 Fix i_Ctrl-T
...
Refactor shift left/right classes as well
2019-11-29 12:33:08 +03:00
Alex Plate
bd09917396
Remove async startup and different small optimizations
2019-11-29 11:46:34 +03:00
Alex Plate
17a87f80e3
All keys are allowed during the lookup except TAB
2019-11-28 19:38:46 +03:00
Alex Plate
59f4dc8c78
Surround and Commentary extensions can be repeated with a dot command
...
VIM-1118
2019-11-28 18:58:58 +03:00
Alex Plate
572a96328a
CTRL-A accepts all sizes of number
...
VIM-1424
2019-11-28 18:08:02 +03:00
Alex Plate
a7ac3bec7f
Reset keyHandler state before the command execution
2019-11-28 15:56:06 +03:00
Alex Plate
3e78f50a76
Create commandState
helper function
2019-11-28 14:42:57 +03:00
Alex Plate
a4843e57cb
Remove REPEAT mode
...
Replace it with `isDotRepeatInProgress()` method
2019-11-28 13:31:57 +03:00
Alex Plate
d6d90dda58
Rename FLAG_NO_REPEAT to FLAG_NO_REPEAT_INSERT
2019-11-28 13:02:49 +03:00
Alex Plate
c92c5e234c
Convert some classes to kt
2019-11-28 12:13:29 +03:00
Alex Plate
987f06d518
Rename .java to .kt
2019-11-28 12:13:29 +03:00
Alex Plate
eaf7476785
Refactor repeat action
2019-11-28 12:13:29 +03:00
Alex Plate
5c559f921d
[VIM-1847] Add option to remove the status bar icon
2019-11-27 11:00:42 +03:00
Alex Plate
77f6b3fcb8
Show the plugin version for internal mode
2019-11-26 15:55:33 +03:00
Alex Plate
f56ed7fd50
Update status bar popup location
2019-11-26 13:22:20 +03:00
Alex Plate
a470b579a9
Fix exception
2019-11-26 11:55:54 +03:00
Alex Plate
a2eb7d44c0
Fix turn off and on plugin
2019-11-26 11:29:32 +03:00
Alex Plate
dfc83a7aea
Update ktdocs
2019-11-25 19:38:04 +03:00
Alex Plate
71686e45e3
[EA-211536] Fix exception by aliasing
2019-11-25 19:31:17 +03:00
Alex Plate
d836320b31
[VIM-1845] Show action group popups
2019-11-25 18:50:00 +03:00
Alex Plate
19e7c058c3
Convert VimShortcutKeyAction to kt
2019-11-25 14:16:58 +03:00
Alex Plate
f1ae3607e4
Rename .java to .kt
2019-11-25 14:16:57 +03:00
Alex Plate
d03bfaeb53
Convert action package to kt
2019-11-25 14:05:23 +03:00
Alex Plate
33f363cb31
Rename .java to .kt
2019-11-25 14:05:23 +03:00
Alex Plate
cdb87b6a70
Convert file package to kt
2019-11-25 13:59:27 +03:00
Alex Plate
b5497d83a9
Rename .java to .kt
2019-11-25 13:59:26 +03:00
Alex Plate
802b7c33b6
Convert copy package to kt
2019-11-25 13:36:00 +03:00
Alex Plate
bb4f81fb84
Rename .java to .kt
2019-11-25 13:35:59 +03:00
Alex Plate
998073ac7f
Convert shift package to kt
2019-11-25 12:13:55 +03:00
Alex Plate
93c7a5bdd2
Rename .java to .kt
2019-11-25 12:13:55 +03:00
Alex Plate
3fb2ce47e9
Convert insert package to kt
2019-11-25 12:04:57 +03:00
Alex Plate
61a8217d83
Rename .java to .kt
2019-11-25 12:04:56 +03:00
Alex Plate
ad5e4341fa
Convert delete package to kt
2019-11-25 11:57:42 +03:00
Alex Plate
5b192795e6
Rename .java to .kt
2019-11-25 11:57:42 +03:00
Alex Plate
5db9c5d31e
Convert change package to kt
2019-11-25 11:36:29 +03:00
Alex Plate
ff469a386e
Rename .java to .kt
2019-11-25 11:36:29 +03:00
Alex Plate
3a90cf0e7b
Convert number package to kt
2019-11-25 11:31:27 +03:00
Alex Plate
07dbad8c70
Rename .java to .kt
2019-11-25 11:31:27 +03:00
Alex Plate
390d92b16f
Fix bindings for active lookup
...
VIM-1325
2019-11-22 19:37:52 +03:00
Alex Plate
d45d56f330
Find action by id without all actions initiation
2019-11-22 17:35:20 +03:00
Alex Plate
2e7cde3ca5
Replace TODO with TO BE IMPLEMENTED in info file
2019-11-22 16:55:49 +03:00
Alex Plate
0594ea0b98
Convert macro package to kt
2019-11-22 16:26:05 +03:00
Alex Plate
37d09781b4
Rename .java to .kt
2019-11-22 16:25:43 +03:00
Alex Plate
b0f3a0ea30
Convert motion package to kt
2019-11-22 15:54:57 +03:00
Alex Plate
8282abf264
Rename .java to .kt
2019-11-22 15:53:22 +03:00
Alex Plate
e863ffd949
Update getKeyStroke for Neo layouts
...
VIM-987
2019-11-21 17:06:00 +03:00
Alex Plate
d3d35bbea1
Fix incapability with <193
2019-11-20 18:12:20 +03:00
Alex Plate
8eff6d80a2
Fix after update
2019-11-20 18:09:11 +03:00
Alex Plate
77c8947ccd
Fix after update
2019-11-20 18:00:54 +03:00
Alex Plate
48556f6917
Update first plugin initialization
2019-11-20 17:59:08 +03:00
Alex Plate
2e8dc4234f
Do not connect to the EditorAcgtionManager before the first editor is created
2019-11-20 17:59:07 +03:00
Alex Plate
a6a60b6e71
Do not start project manager
2019-11-20 17:59:05 +03:00
Alex Plate
eba9eaf37a
Faster command parser
2019-11-20 17:59:04 +03:00
Alex Plate
ae31b1c23d
Faster keys parsing
2019-11-20 17:59:02 +03:00
Alex Plate
535a0532df
Use ArrayList implementation for KeyMapping
2019-11-20 17:59:01 +03:00
Alex Plate
0579d242f6
Lazy loading of KeywordOption
2019-11-20 17:58:59 +03:00
Alex Plate
b4910ed8f4
Refactor key parsing
2019-11-20 17:58:58 +03:00
Alex Plate
2bb1399ae7
Remove unnecessary reset
2019-11-20 17:58:56 +03:00
Alex Plate
062ada96ff
Do not initialize some services on first startup
2019-11-20 17:58:56 +03:00
Alex Plate
bb94238e9c
Remove invertMap function
2019-11-20 17:58:55 +03:00
Alex Plate
43a40c1f6b
Update keyparser to accept « brackets
2019-11-20 17:58:53 +03:00
Alex Plate
639866a9e1
Remove unused name property
2019-11-20 17:58:53 +03:00
Alex Plate
05bbe6b799
Rename name to names
2019-11-20 17:58:51 +03:00
Alex Plate
e19b1c8bf0
Create interface for complicated commands
2019-11-20 17:58:49 +03:00
Alex Plate
0648d621b5
Move handler names to plugin.xml
2019-11-20 17:58:47 +03:00
Alex Plate
93c0de9ebb
Create bean class for ex commandsï¿¿
2019-11-20 17:58:45 +03:00
Alex Plate
1af7f9388d
Create a ktdoc for ActionBeanClass
2019-11-20 17:58:42 +03:00
Alex Plate
76f0eaebce
Remove keyStrokesSet field
2019-11-20 17:58:41 +03:00
Alex Plate
ae71957236
Remove usages of getKeyStrokesSet
2019-11-20 17:58:40 +03:00
Alex Plate
5004f0280e
Refactor duplicable commands
2019-11-20 17:58:27 +03:00
Alex Plate
8a63fa42ae
Reformat actions source code
2019-11-20 17:36:49 +03:00
Alex Plate
05ecb92a88
Use plugin.xml to define mappings for actions
2019-11-20 17:36:10 +03:00
Alex Plate
d05cc3cd35
Merge pull request #210 from igrekster/format-motion
...
Implement `gq<motion>` code formatting command for motions
2019-11-20 15:51:39 +03:00
Alex Plate
96dff832ba
Merge pull request #209 from igrekster/multicaret-ignorecase-fix
...
Fix multiple cursors selection getting stuck with ignorecase
2019-11-20 15:47:23 +03:00
Alex Plate
e43339613c
Add Rafał Hajdacki to contributors list
2019-11-20 15:32:23 +03:00
Rafał Hajdacki
28d9bd0c73
Read ideavimrc from XDG config home directory
2019-11-19 22:20:52 +01:00
Alex Plate
8e12c9bef0
Fix backward motion for ex commands
2019-11-19 14:31:30 +03:00
Alex Plate
46cf112378
Revert user statistic
2019-11-14 13:12:50 +03:00
Alex Plate
a6ea89162a
Change collector option
2019-11-08 14:50:02 +03:00
Alex Plate
1039cf661d
Fix capability with 183
2019-11-08 14:41:18 +03:00
Alex Plate
eaf9f0bbfa
Fix compatibility with older IDEA versions
2019-11-07 18:24:34 +03:00
Alex Plate
31e1edcc72
Add userstatistic info
2019-11-07 16:26:22 +03:00
Alex Plate
7d9d8d4a02
Fix execution of actions in visual mode with incsearch enabled
2019-11-07 11:14:16 +03:00
Alex Plate
71cb43e751
Remove garbage
2019-11-05 17:40:15 +03:00
Alex Plate
76634e3eed
Fix "wrap with if"
2019-11-05 15:53:33 +03:00
igrekster
21536fb3ef
Implement gq<motion>
code formatting command for motions
2019-11-02 17:17:09 +11:00
igrekster
7c0ee2429d
Allow duplicable commands with g
prefix key
...
Change the implementation for `dd`, `yy`, etc. to support commands with
`g` prefix key - (`gqq`, `guu`, `g~~`).
2019-11-02 17:17:09 +11:00
Alex Plate
9d6f43cfeb
Fix problem with lookup selection
2019-11-01 13:55:32 +03:00
Alex Plate
316cd2c02c
Rename refactoring to ideaselection
2019-10-31 13:05:22 +03:00
Alex Plate
bfdf54db67
Add tests for idearefactormode option
2019-10-30 17:46:25 +03:00
Alex Plate
4ca9e74249
Refactor controlNonVimSelection
2019-10-30 16:43:54 +03:00
Alex Plate
33caeeaf1d
Fix log
2019-10-30 16:02:12 +03:00
Alex Plate
53a8c3ecc8
Move all mode exit methods to the same place
2019-10-30 16:00:03 +03:00
igrekster
0ddb7f971d
Fix multiple cursors selection getting stuck with ignorecase
...
With `ignorecase` enabled, select next (`<A-n>`) would get stuck on the
second occurrence even though there are more occurrences to select. This
was happening because part of logic was still doing case sensitive
comparison against the current pattern. The fix is to use case
insensitive comparator everywhere the pattern is used, if `ignorecase`
option is set.
2019-10-30 23:59:32 +11:00
Alex Plate
fabe066f94
Move selection control methods to the separate file
2019-10-30 14:45:40 +03:00
Alex Plate
5672bc0fb2
Rename function
2019-10-30 14:29:51 +03:00
Alex Plate
c77f43e7c7
Initial idearefactormode support
2019-10-30 13:00:04 +03:00
Alex Plate
d47ad34909
Fix removed vimstate saving
2019-10-30 12:38:06 +03:00
Alex Plate
96f731e9c9
Refactor MotionUp/Down actions
2019-10-29 15:37:48 +03:00
Alex Plate
1b9376a9f5
Rename motion up/down actions
2019-10-29 15:31:54 +03:00
Alex Plate
1425ee0048
Ctrl-N and Ctrl-P actions for lookup in normal mode
2019-10-29 15:28:54 +03:00
Alex Plate
3a014b2a13
Convert VimPluginToggleAction to kotlin
2019-10-29 14:39:55 +03:00
Alex Plate
38c4e6bebc
Rename .java to .kt
2019-10-29 14:39:05 +03:00
Alex Plate
171404bf43
Change the superclass of VimPluginToggleAction
2019-10-29 14:33:14 +03:00
Alex Plate
73b1adce1b
Make common action for enabling/disabling IdeaVim
2019-10-28 18:42:37 +03:00
Alex Plate
fee8009f38
Make vim actions popup as a separate action
2019-10-28 14:59:35 +03:00
Alex Plate
8d698aeacd
Update the Join EAP dialog
2019-10-28 13:50:21 +03:00
Alex Plate
fbd588444f
Hide some icon actions to sublist
2019-10-26 16:06:21 +03:00
Alex Plate
5735769ee7
null save marks restoring
2019-10-25 20:19:40 +03:00
Alex Plate
150f9190d5
Add customisation for surround with for
2019-10-25 19:58:00 +03:00
Alex Plate
6a1e8a0c22
Fix template with multiple variables
2019-10-25 17:14:23 +03:00
Alex Plate
66fca4a921
[VIM-1819] Fix execution of some rider actions
2019-10-25 15:26:33 +03:00
Alex Plate
9a2accc74b
Use the correct action for next variable
2019-10-25 14:33:52 +03:00
Alex Plate
5584b5ec3a
Refactor selection correction during the template
2019-10-24 16:17:34 +03:00
Alex Plate
3b4121f59a
Reformat code
2019-10-24 16:15:11 +03:00
Alex Plate
c9bb160291
Add savemodefor option
2019-10-23 13:17:02 +03:00
Alex Plate
586979644c
Add inNormalMode helper function
2019-10-23 13:15:09 +03:00
Alex Plate
0d376eaa1d
Update icon list labels
2019-10-22 12:44:25 +03:00
Alex Plate
086c3d1a24
Update the join EAP dialog
2019-10-22 12:33:45 +03:00
Alex Plate
91e75561a3
Remove the default shortcut
2019-10-21 17:35:55 +03:00
Alex Plate
979bf26441
Change the implementation of system marks
2019-10-21 16:58:22 +03:00
Alex Plate
49844ddd9b
Refactor fileLocation classes
2019-10-21 15:30:46 +03:00
Alex Plate
d095ebb2f3
Rename .java to .kt
2019-10-21 15:07:14 +03:00
Alex Plate
36f473508a
Disable mappings for the second part of multikey commands
2019-10-21 13:40:53 +03:00
Alex Plate
5eb2810352
Add new corrections for caret vertical motion
2019-10-18 15:15:35 +03:00
Alex Plate
ee9e3a6673
Covert DocumentManager.kt to kotlin
2019-10-18 10:24:48 +03:00
Alex Plate
81a6bd528d
WIP: Renaming file 'DocumentManager' with Kotlin extension
2019-10-18 10:09:20 +03:00
Alex Plate
9bef55c63e
Correct selection processing
...
The last character in the line is not selected if the selection was started from the middle of this character and has a negative direction
2019-10-17 19:17:38 +03:00
Alex Plate
9b8686c25f
Reset caret on escape
2019-10-17 17:43:37 +03:00
Alex Plate
7130760114
Fix vertical caret movements with inlays
2019-10-17 17:34:10 +03:00
Alex Plate
2258ffa5eb
Fix incompatibilities with older version of IJ
2019-10-17 15:38:14 +03:00
Alex Plate
20b8e8db8b
Add icon to status bar
2019-10-17 15:20:01 +03:00
Alex Plate
0738d965fd
Add ideavim icon for actions
2019-10-16 15:05:45 +03:00
Alex Plate
a3a421410f
[VIM-1749] Tag surround is finished on >
2019-10-15 19:52:48 +03:00
Alex Plate
03c38e3454
[VIM-1804] Correct disabling and enabling IdeaVim
2019-10-15 18:14:13 +03:00
Alex Plate
be7d632cba
Disable IdeaVim while AceJump is active.
...
https://github.com/acejump/AceJump/issues/266
2019-10-14 17:05:18 +03:00
Alex Plate
8c0a85abf4
Vim script supports evaluating of integers
2019-10-14 12:44:08 +03:00
Alex Plate
497e8c06f1
Create getter for last direction
2019-10-10 19:35:04 +03:00
Alex Plate
c1bf84605c
Make findAll function public
2019-10-10 18:44:37 +03:00
Alex Plate
e362f12394
Add comment for toRegex function
2019-10-10 16:29:51 +03:00
Alex Plate
02d201a2f1
Parse the scope of let expression
2019-10-10 16:28:27 +03:00
Alex Plate
48915cc6ad
Print iskeyword value as a regex string
2019-10-09 18:20:16 +03:00
Alex Plate
02b065cc2c
Extensions can use linewise selection
2019-10-08 14:36:20 +03:00
Alex Plate
a255597bc0
Fix exception
2019-10-08 10:37:11 +03:00
Alex Plate
29858e8b10
Do not handle plugin incomplete mappings
2019-10-08 10:31:47 +03:00
Alex Plate
972cfb265b
Change MapHandler formatting
2019-10-04 18:46:30 +03:00
Alex Plate
5e8a3afe61
Provide correct mapping names
...
vmap - mapping for visual and select mode
xmap - mapping for visual mode
2019-10-04 18:45:46 +03:00
Alex Plate
700decb2e0
Update mappings handler for properly handler intersecting mappings.
2019-10-02 18:44:43 +03:00
Alex Plate
8368055397
Registrar should be written in java due to capability problems
2019-10-01 20:33:00 +03:00
Alex Plate
0d0f1f1c0c
External plugins can now contribute to vimExtension
2019-10-01 19:59:41 +03:00
Alex Plate
db68ae5cea
Add tests for extension in op mode
2019-10-01 10:15:44 +03:00
Alex Plate
0fd7c4aa4f
Clean up
2019-09-30 19:46:40 +03:00
Alex Plate
8592e6ef60
Plugins can act as an operator
2019-09-30 19:46:03 +03:00
Alex Plate
e9fb02220a
Update api of ListenerSuppressor
2019-09-30 19:46:03 +03:00
Alex Plate
aa54a0cd98
Execute mapping in sync way
2019-09-30 19:46:02 +03:00
Alex Plate
eb724c8753
Fix yy command
2019-09-27 22:11:28 +03:00
Alex Plate
1bb0caa704
Fix dd for empty line
2019-09-27 17:46:00 +03:00
Alex Plate
5bf2bc4a7b
Reformat Command
2019-09-27 14:56:24 +03:00
Alex Plate
70fd7ef89d
operator-W doesn't affect the next line
2019-09-26 15:31:05 +03:00
Alex Plate
c236ddd967
Add docs to Nodes
2019-09-26 11:25:49 +03:00
Alex Plate
b551518911
Add additional checks for command consistency
2019-09-25 20:09:21 +03:00
Alex Plate
1be49b06f3
Fix processing of / and ? commands
2019-09-25 20:01:20 +03:00
Alex Plate
200a9c6318
Update key handling process
2019-09-25 20:01:19 +03:00
Alex Plate
9f10106d75
Use only one handler to process @@ and @: commands
2019-09-25 20:00:23 +03:00
Alex Plate
6d4ff752a0
Double commands are processed in original way
2019-09-25 16:22:54 +03:00
Alex Plate
29ecae66a9
Make baseExecute as final method
2019-09-25 13:20:16 +03:00
Alex Plate
9c5f50d0a6
Move change motion tests to the separate file
2019-09-25 13:02:49 +03:00
Alex Plate
8fcc9ac1e2
Some fixes on change motion actions.
2019-09-24 17:53:36 +03:00
Alex Plate
8d83b3b1e7
Remove parameter from getMotionRange
2019-09-24 17:13:20 +03:00
Alex Plate
155570b6bf
Remove unused flag
2019-09-24 16:44:12 +03:00
Alex Plate
831dc35935
Update processing of text objects
2019-09-24 16:42:46 +03:00
Alex Plate
b641f1b67c
Motion command should explicit define inclusive / exclusive
2019-09-24 15:24:39 +03:00
Alex Plate
3c4906b8ac
Get rid of useless FLAG_MOT_EXCLUSIVE
2019-09-23 17:31:17 +03:00
Alex Plate
a575bc92cc
Correctly process d_ command
2019-09-18 22:40:29 +03:00
Alex Plate
7794e9ccd2
Fix undo mapping
2019-09-18 21:28:28 +03:00
Alex Plate
4f5301a7e0
Fix mapping for undo action
2019-09-17 18:42:41 +03:00
Alex Plate
6842936a75
Add state for awaiting for digraph (or char) input
2019-09-17 18:42:41 +03:00
Alex Plate
a0bf6599fa
Add comment for command flags option
2019-09-17 18:42:41 +03:00
Alex Plate
c0384949a3
Add javadoc for key mapping
2019-09-17 18:42:41 +03:00
Alex Plate
371f4b128e
Rename EX_ENTRY to CMD_LINE mode
2019-09-17 18:42:41 +03:00
Alex Plate
29fc776293
Remove NONE argument
2019-09-17 18:42:40 +03:00
Alex Plate
bbdf87190c
Extract node argument into the separate variable
2019-09-17 18:42:40 +03:00
Alex Plate
02a448f284
Convert command nodes to kt
2019-09-17 18:42:40 +03:00
Alex Plate
8665878b04
Remove useless FLAG_OP_PEND flag
2019-09-17 18:42:40 +03:00
Alex Plate
c23812941b
Clean up Argument class
2019-09-17 18:42:40 +03:00
Alex Plate
fdac774745
Convert FilterMotionAction to kt
2019-09-17 18:42:40 +03:00
Alex Plate
0a38b65ded
WIP: Renaming file 'FilterMotionAction' with Kotlin extension
2019-09-17 18:42:39 +03:00
Alex Plate
a7f44c8dd1
Revert "Temporally disable multithread startup"
...
This reverts commit bef3b3ba
2019-09-17 18:32:12 +03:00
Alex Plate
bef3b3ba62
Temporally disable multithread startup
2019-09-17 17:49:11 +03:00
Alex Plate
037aee7c59
Make kotlin jvm 1.8 compatible.
2019-09-17 11:07:09 +03:00
Alex Plate
0e3c13099b
Do not use external APP_CONFIG variable
2019-09-17 10:36:18 +03:00
Alex Plate
c736de7875
Deprecate local storage due to bug in storage settings
2019-09-06 18:45:12 +03:00
Alex Plate
42375d143e
[VIM-1772] Fix last character for :y command
2019-09-04 17:30:34 +03:00
Alex Plate
7e6d7aed20
Add some docs to controlNonVimSelection method
2019-09-04 16:07:31 +03:00
Alex Plate
ea68d0c28f
Enter correct caret shape after new mode entering
2019-09-04 16:00:14 +03:00
Alex Plate
9cc82aedf2
Join exit visual functions
2019-09-04 15:13:10 +03:00
Alex Plate
c52abce656
Fix small problem with "wrap with if"
2019-09-04 13:07:22 +03:00
Alex Plate
cf2f223ad4
[VIM-1781] Fix yanking with $ motion
2019-09-04 11:30:24 +03:00
Alex Plate
daae1aec6c
[VIM-1785][VIM-1731] Fix yanking to clipboard
2019-09-03 18:41:38 +03:00
Alex Plate
59bcd24c47
Make actions loading async
2019-09-03 14:07:36 +03:00
Alex Plate
44e224489b
Update action registration
2019-09-03 14:07:35 +03:00
Alex Plate
8134e0223f
Disable async initialization
2019-09-03 14:07:35 +03:00
Alex Plate
482249a05b
Convert ex commands to extension points
2019-09-03 14:07:35 +03:00
Alex Plate
d0998dc093
Do not register sticky balloon
2019-09-03 14:07:35 +03:00
Alex Plate
848bb01c10
Get rid of VimActionBean
2019-09-03 14:07:35 +03:00
Alex Plate
e39eb76aca
Remove id and text from actions
2019-09-03 14:07:35 +03:00
Alex Plate
d6d2a55747
Use handlers directly (without actions)
2019-09-03 14:07:35 +03:00
Alex Plate
355fa1a622
Migrate methods from VimCommandAction to handlers
2019-09-03 14:07:34 +03:00
Alex Plate
fb007b8835
Move action settings to handler
2019-09-03 14:07:34 +03:00
Alex Plate
256f5fcd0e
Handlers do not execute EditorActionHandler anymore
2019-09-03 14:07:34 +03:00
Alex Plate
e698c950a3
VimCommandActionBase doesn't extend EditorAction anymore
2019-09-03 14:07:34 +03:00
Alex Plate
d0b9c3c118
Make action in command not nullable
2019-09-03 14:07:34 +03:00
Alex Plate
24358ca1a9
[A2EP] Add method to find vim action by id
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
6a21c94a0c
[A2EP] Execute actions w/o using executeAction
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
2d39a1e4b8
[A2EP] Move some actions to the level of VimActionBase
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
e97a8da721
[A2EP] Remove action id from command tree
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
665aaa3af9
[A2EP] Create "native actions"
...
A2EP - Process of convertation actions to extension points
2019-09-03 14:07:33 +03:00
Alex Plate
17fe1da4ed
[A2EP] Convert actions into extension point
...
A2EP - Process of convertation actions to extenstion points
2019-09-03 14:07:33 +03:00
Alex Plate
cb6c94b4f9
Transform all groups into application services
2019-09-03 14:07:33 +03:00
Alex Plate
6fd6765bee
Initialize IdeaVim components on non-EDT
2019-09-03 14:07:32 +03:00
Matt Ellis
261911f6de
[VIM-1773] Provide fall back error stripe colour
2019-09-02 17:37:44 +01:00
Matt Ellis
fe714a9003
Move caret during incsearch to match Vim behaviour
2019-09-02 17:05:27 +01:00
Matt Ellis
e8501a658b
Merge branch 'master' into bug/search-highlights
2019-09-02 12:31:28 +01:00
Alex Plate
39982b507a
[VIM-1685] Correct shape of caret in case of zero-width selection
2019-08-26 16:52:01 +03:00
Alex Plate
bd6d61c8c7
Merge pull request #201 from jorgengranseth/support-surround-function-name
...
Support f and F surround commands (function name)
2019-08-26 12:32:09 +03:00
Alex Plate
7045ffbdb8
Fix global marks removing
2019-08-26 12:27:23 +03:00
Alex Plate
c886e49682
Add comment for different types of marks
2019-08-26 12:13:35 +03:00
Alex Plate
8fdec8e816
Merge pull request #202 from jorgengranseth/implement-delmarks-command
...
VIM-1720 Implement Ex command :delm[arks]
2019-08-26 12:12:24 +03:00
Alex Plate
131387d0ff
Add comment about changes that should be performed on version update
2019-08-23 16:57:20 +03:00
Alex Plate
1c02ad6b4c
Merge pull request #204 from citizenmatt/feature/line-numbers
...
Improve relative line numbers and VCS annotations
2019-08-23 16:12:55 +03:00
Alex Plate
d93890ddcb
Merge pull request #205 from citizenmatt/bug/ex-caret
...
[VIM-1766] Fix ex caret rendering on Linux
2019-08-23 15:14:27 +03:00
sumoooru2
67896b7d3a
Fix jump between files with moveCaretToJump
2019-08-22 16:26:26 +09:00
Alex Plate
62466123ff
Change URLs to https
...
TPV-3480
2019-08-20 13:10:19 +03:00
Matt Ellis
14163a0791
[VIM-1766] Fix ex caret rendering on Linux
2019-08-13 20:28:22 +01:00
Jørgen Granseth
52a8a175a6
Move constants for :delmarks to MarkGroup
...
Reduce, reuse, recycle.
2019-08-12 20:19:14 +02:00
Matt Ellis
0a83b0826a
Use line number converter for relative line numbers
...
Fixes most problems with relative line numbers and VCS annotations. Only downside is that the current line is shown as blank unless :set number is set as well as :set relativenumber. There is also a chance some other plugin could install a different line number converter without us knowing, although there are no known examples of this.
Resolves VIM-1032, fixes VIM-1671, fixes VIM-1762
2019-08-10 14:26:16 +01:00
Matt Ellis
d854cd7024
Improve relative line numbers and VCS annotations
...
Improves TextAnnotationGutterProvider implementation, but still has issues. Relative line numbers can display alongside VCS annotations, but 183 and 191 treats the relative line number provider as a VCS annotation, so the VCS toggle is enabled incorrectly, and toggling incorrectly closes the relative line provider. 192 works much better - VCS annotations ignores the relative line numbers, but disabling relative line numbers also closes VCS annotations because we’re not using a 192 specific API.
Resolves VIM-1032, fixes VIM-1671, fixes VIM-1762
2019-08-09 23:39:02 +01:00
Matt Ellis
7ac8d7a43a
Fix moving caret while confirming replace
2019-08-08 12:13:38 +01:00
Alex Plate
b012618968
Add readonly marker
2019-08-07 17:24:19 +03:00
Alex Plate
fba59ff347
[EA-134791] Fix yank in motion
2019-08-07 17:24:18 +03:00
Matt Ellis
27d2742386
Fix bug with search updates getting stuck off
2019-08-07 09:42:45 +01:00
Matt Ellis
5ef25cfa6f
Keep scroll location when adding incsearch offset
2019-08-06 23:24:39 +01:00
Matt Ellis
17e3dfe2bb
[VIM-1757] Improve handling of search offsets
2019-08-06 22:32:47 +01:00
Alex Plate
307e438a1e
[EA-128752] Fix NPE on isPrimaryEditor
2019-08-06 15:38:33 +03:00
Alex Plate
89489f7c7f
[EA-144484] Fix NPE on panel activation
2019-08-06 15:15:31 +03:00
Alex Plate
923a4706a0
[EA-137898] Fix file is invalid exception
2019-08-06 14:23:03 +03:00
Alex Plate
2594c7179e
[EA-138502] Control-flow exceptions (like ProcessCanceledException) should never be logged
2019-08-06 14:21:33 +03:00
Matt Ellis
a334ff33cd
[VIM-1717] Reset scroll position correctly if no incsearch match
2019-08-06 00:33:58 +01:00
Alex Plate
0e2289caa6
[EA-129083] Fix OOBE for # action
2019-08-05 20:39:07 +03:00
Alex Plate
be26968237
[EA-138309] Fix possible exception
2019-08-05 20:20:44 +03:00
Jørgen Granseth
b0c1ecfdc5
Add access flag
2019-08-05 19:09:59 +02:00
Alex Plate
b4d5dcbf57
Reformat code
2019-08-05 19:06:27 +02:00
Jørgen Granseth
3161ba8983
Implement Ex command :delm[arks]
...
Deletes existing marks. See
http://vimdoc.sourceforge.net/htmldoc/motion.html#:delmarks
for details.
2019-08-05 19:06:19 +02:00
Alex Plate
022f1ededc
Fix caret shape after enabling of plugin
2019-08-05 19:50:32 +03:00
Alex Plate
70a19dd95d
Fix positioning on the end line in insert mode
2019-08-05 19:19:46 +03:00
Alex Plate
8b0bb413d8
Merge pull request #198 from citizenmatt/bug/ex-dead-keys
...
Fix exception with dead keys in ex entry
2019-08-05 13:14:14 +03:00
Matt Ellis
bd5e7d94fe
Fix tests
2019-08-02 21:21:32 +01:00
Matt Ellis
d43b2364a0
Reset ex entry panel when emulation is disabled
2019-08-02 16:49:00 +01:00
Matt Ellis
610e73d9e3
Merge branch 'master' into bug/ex-dead-keys
2019-08-02 13:55:31 +01:00
Alex Plate
6f2a454d46
[EA-141098] Fix exception during surround
2019-08-02 15:30:45 +03:00
Alex Plate
4edce29d53
[EA-209287] Fix exception on file close
2019-08-02 15:25:40 +03:00
Alex Plate
ed2b8dd129
Fix ex search for japanese language
2019-08-02 14:03:30 +03:00
Alex Plate
159c22ac21
[EA-117268 2352322] Fix OOBE for check in string function
2019-08-01 18:34:50 +03:00
Alex Plate
75b6833245
[EA-117268 2386601] Fix OOBE for sentence detection
2019-08-01 18:34:49 +03:00
Alex Plate
b567717c75
[EA-117268 2394021] Fix OOBE for isEmptyLine function
2019-08-01 18:34:49 +03:00
Alex Plate
b2af829e2e
[EA-117268 5135780] Fix OOBE for display ascii info
2019-08-01 18:34:49 +03:00
Alex Plate
6e81714937
[EA-117268 5154892] Fix OOBE for motion outer word
2019-08-01 18:34:49 +03:00
Alex Plate
cb9474d8d0
[EA-117268 5159449] Fix exception for inser character around cursor
2019-08-01 18:34:49 +03:00
Alex Plate
be47e4c050
[EA-117268 5165327] Fix a'
for last caret position
2019-08-01 18:34:45 +03:00
Alex Plate
c301898147
[EA-117268 5167045] Fix das for empty file
2019-08-01 17:35:51 +03:00
Alex Plate
8324561022
Remove code comments
2019-08-01 17:17:06 +03:00
Alex Plate
834d630ef7
[EA-117268] Fix exception with w action
2019-08-01 17:09:43 +03:00
Alex Plate
c6259adad1
[VIM-1743] Do not show ideaput notification during surround
2019-08-01 16:03:11 +03:00
Alex Plate
9d1be34958
[VIM-1648] Make S&R self synchronized
2019-08-01 13:20:00 +03:00
Alex Plate
ce4e64ec40
Create annotations to annotate whenever a function require write/read lock
2019-07-31 21:15:32 +03:00
Alex Plate
b017466270
Clean up searchAndReplace method
2019-07-31 20:35:10 +03:00
Alex Plate
568d2304ea
Ex commands should define write/read access explicitly
2019-07-31 20:15:09 +03:00
Alex Plate
5dc1b245d0
Get rid of OTHER_READ_WRITE flag because technically it's right action
2019-07-31 16:56:57 +03:00
Alex Plate
978d95b351
Clean up ex command processing
2019-07-31 16:47:19 +03:00
Alex Plate
90079c9dfe
Remove legacy DONT_REOPEN flag
...
It's not used since 18cd7547
2019-07-31 16:26:48 +03:00
Alex Plate
57dec7e211
Fix mouse click appearance
2019-07-30 19:32:54 +03:00
Alex Plate
fa75c853a7
Update mouse pressed caret rules
2019-07-30 18:53:03 +03:00
Alex Plate
0887a57e29
[VIM-1725] Enable selection adjustment with a small delay
2019-07-30 17:52:34 +03:00
Alex Plate
18901dcd44
[EA-104755] Fix "Editor is disposed" exception with CTRL-O command
2019-07-29 20:11:20 +03:00
Jørgen Granseth
a6e0fbd5e6
Add the s surround action (preceding space)
...
https://github.com/tpope/vim-surround/blob/master/doc/surround.txt#L148
2019-07-27 02:12:52 +02:00
Jørgen Granseth
c07d0353f0
Support f and F surround commands (function name)
...
https://github.com/tpope/vim-surround/blob/master/doc/surround.txt#L138
2019-07-26 22:14:10 +02:00
Alex Plate
caecbe5b63
Reformat isEndAllowed method
2019-07-26 20:24:54 +03:00
Alex Plate
077cab656b
[EA-209305] Fix SO exception on enabling disabled plugin
2019-07-26 19:57:09 +03:00
Alex Plate
95d7a7e860
Insert some inferred annotations
2019-07-26 16:10:30 +03:00
Alex Plate
77a77c34b8
Fix possible NPE
2019-07-26 16:09:25 +03:00
Alex Plate
4e21145808
Merge pull request #200 from NOLFXceptMe/master
...
Fix ideajoin examples URL
2019-07-26 15:59:39 +03:00
Alex Plate
258557ee5d
[VIM-1713] Add possibility to get ExEntryPanel without shortcuts
2019-07-26 15:27:30 +03:00
Naveen Kumar Molleti
4828e40f0d
Fix ideajoin examples URL
2019-07-25 17:49:34 -07:00
Alex Plate
5be29f5a07
Convert ExKeyBindings to kotlin
2019-07-25 18:29:31 +03:00
Alex Plate
48ac99a29b
WIP: Renaming file 'ExKeyBindings' with Kotlin extension
2019-07-25 17:20:59 +03:00
Alex Plate
2c4f2139dd
Fix warnings
2019-07-25 13:52:07 +03:00
Alex Plate
9feff84125
[VIM-1710] Fix opening empty file with "relative number" enabled
2019-07-24 16:34:42 +03:00
Alex Plate
c0fc62a1d6
[VIM-1712] Fix Y command for visual mode
2019-07-24 15:56:19 +03:00
Alex Plate
6b06d58759
[VIM-1711] Search is not triggered during surround action
2019-07-24 15:10:48 +03:00
Alex Plate
7c5dca202e
Preparation to 0.52 version
2019-07-23 14:18:31 +03:00
Alex Plate
180c870208
Add notification for enabling select mode while template editing
2019-07-18 17:13:02 +03:00
Alex Plate
5a81d02271
Create doc with explanation of handlers and commands structure
2019-07-18 14:18:11 +03:00
Alex Plate
465abf47c8
Use enum for parser state machine
2019-07-18 13:24:04 +03:00
Alex Plate
54544c2683
[VIM-1359] Fix behavior of i_Ctrl-W action
2019-07-18 12:32:54 +03:00
Alex Plate
cf41b8745a
Fixing execution actions from visual mode
2019-07-17 20:14:51 +03:00
Alex Plate
1a1fc8604a
Remove unused arguments from some methods
2019-07-17 18:19:15 +03:00
Alex Plate
68ae03ef85
Replace behaviour to the american-style behavior
2019-07-17 14:39:09 +03:00
Alex Plate
8750c30b7d
Move to selection start/end in select mode if template is active
2019-07-17 14:34:54 +03:00
Alex Plate
869945e68c
Extract template checking into separate file
2019-07-17 13:41:10 +03:00
Alex Plate
c263881586
Log about new shape of caret
2019-07-17 13:26:09 +03:00
Alex Plate
7d936041c0
Create toSimpleString function for CommandState.State
2019-07-16 19:12:12 +03:00
Alex Plate
8208def57a
Add logging to entering visual mode
2019-07-16 17:22:10 +03:00
Alex Plate
95e7464962
Remove mnemonics for actions
2019-07-16 15:41:10 +03:00
Alex Plate
4f644ee1fe
Add notification about ideaput option
2019-07-16 13:36:48 +03:00
Alex Plate
0f7528b73b
Create VimState class and move isIdeaJoinNotified to it
2019-07-16 12:25:32 +03:00
Alex Plate
354262ba9b
Update ideajoin notification
2019-07-15 19:50:52 +03:00
Alex Plate
707fb53dda
Move all notifications to notification service
2019-07-15 16:23:40 +03:00
Alex Plate
6f356f8390
Replace some java methods with kotlin functions
2019-07-15 14:25:26 +03:00
Alex Plate
dc2530957f
Rename smartjoin with ideajoin
2019-07-15 14:22:36 +03:00
Alex Plate
e88dcae1a0
Rename idemarks to ideamarks
2019-07-15 14:19:48 +03:00
Alex Plate
90eda82045
[VIM-1698] Paste clears clipboard
2019-07-12 19:04:56 +03:00
Alex Plate
c17ad0ef2d
Fix back search in texts with tabs
2019-07-12 16:11:59 +03:00
Alex Plate
3f71f58454
Reformat CharPointer class
2019-07-12 14:34:25 +03:00
Alex Plate
41baee7b43
Add VimFunctionMark and VimTestFunction annotations
2019-07-11 16:22:53 +03:00
Alex Plate
e0e94e482a
Add logs to controlSelection
2019-07-11 14:24:02 +03:00
Alex Plate
c5964c270d
Add logging to search process
2019-07-11 14:24:00 +03:00
Alex Plate
69c850d1ac
Move toCharacterPosition and fromCharPositionToOffset methods to CharacterPosition class
2019-07-11 12:25:26 +03:00
Alex Plate
004d0146b7
WIP: Renaming file 'CharacterPosition' with Kotlin extension
2019-07-11 12:16:33 +03:00
Alex Plate
cee9c81496
[VIM-1697] Fix wrong search with tab characters
2019-07-10 19:07:10 +03:00
Alex Plate
1c01097491
Add new options test
2019-07-10 16:44:06 +03:00
Alex Plate
e1f582bcfc
Register new actions in info file
2019-07-09 19:01:24 +03:00
Alex Plate
e50f95abb3
Reset modeBeforeEnteringNonVimVisual before each action
2019-07-09 18:41:33 +03:00
Alex Plate
4e16a8b6f9
Revert "Remove mode restoring after unexpected selection"
...
This reverts commit e23f5cb1
2019-07-09 15:18:46 +03:00
Alex Plate
cf1ec16fdd
Fix macro replay
2019-07-08 17:04:18 +03:00
Alex Plate
e23f5cb159
Remove mode restoring after unexpected selection
2019-07-08 16:54:47 +03:00
Alex Plate
4d07171aaa
Convert UndoRedoHelper to kotlin
2019-07-08 11:48:23 +03:00
Alex Plate
7c50662ef6
WIP: Renaming file 'UndoRedoHelper' with Kotlin extension
2019-07-08 11:46:44 +03:00
Alex Plate
90126b4d29
Remove unused action
2019-07-05 16:21:33 +03:00
Alex Plate
7580af1b5f
Support ctrl-up and ctrl-down jumps
2019-07-05 16:07:57 +03:00
Alex Plate
8188203aed
Remove version from javadocs
2019-07-05 14:17:17 +03:00
Alex Plate
d91f5461d5
Plugin listeners are not loaded if plugin is disabled
2019-07-05 13:24:39 +03:00
Alex Plate
066b18c792
Do not move one char back in insert mode
2019-07-05 12:40:47 +03:00
Alex Plate
91de1004e6
Fix small code smells
2019-07-05 12:22:25 +03:00
Alex Plate
fecd2d7111
Use BaseComponent instead of deprecated ApplicationComponent
2019-07-05 12:17:54 +03:00
Alex Plate
07dd0884f3
Fix "explicit type" inspection
2019-07-04 18:39:29 +03:00
Alex Plate
a1fb97bd90
Remove some deprecations
2019-07-04 17:52:29 +03:00
Alex Plate
2e002d76b2
Replace deprecated getTopLevelEditor method
2019-07-04 17:40:13 +03:00
Alex Plate
aa13742c9a
Remove deprecated rightJustify and leftJustify methods
2019-07-04 17:09:56 +03:00
Alex Plate
7effcb3aac
Define action place for executable actions
2019-07-04 16:48:23 +03:00
Alex Plate
6d1869af61
[VIM-1668] Fix smart step into
2019-07-02 14:22:15 +03:00
Alex Plate
6e005a0c62
Fir exception in paste via IDE
2019-07-02 13:18:48 +03:00
Alex Plate
2770634627
Protection against wrong handlers
2019-07-01 20:14:27 +03:00
Alex Plate
1602ab2355
Add logs to controlNonVimSelectionChange
2019-07-01 17:30:28 +03:00
Alex Plate
7a37cb6f0b
Checking whether current mode is command before entering insert mode
2019-07-01 16:21:55 +03:00
Alex Plate
4d6de7500e
[VIM-752] Finish template from normal mode
2019-07-01 15:33:09 +03:00
Alex Plate
13d36de121
WIP: Renaming file 'MotionDownFirstNonSpaceAction' with Kotlin extension
2019-07-01 15:05:22 +03:00
Alex Plate
ae992ed366
Convert Argument.java to kotlin
2019-07-01 14:48:27 +03:00
Alex Plate
c03b16a6e8
WIP: Renaming file 'Argument' with Kotlin extension
2019-07-01 14:39:40 +03:00
Alex Plate
7823291b44
Fix NPE while moving caret
2019-07-01 14:31:44 +03:00
Alex Plate
59d79cc329
Add debug info about pushing and popping state
2019-07-01 14:24:32 +03:00
Alex Plate
c24ebf3427
Create test for validating info file
2019-06-28 14:22:50 +03:00
Alex Plate
434d5be26c
Enable identity checker for unit test mode
2019-06-28 12:38:39 +03:00
Alex Plate
f904ceae7a
Remove bad test
2019-06-28 12:21:02 +03:00
Alex Plate
9e62eefee0
Write better logs during execution
2019-06-27 19:57:30 +03:00
Alex Plate
7fdb31abf0
Fix problems of actions registration
...
Different vim tree were build by different orders of command registering
2019-06-27 19:34:15 +03:00
Alex Plate
e1d4e2f526
Fix few caret position problems
2019-06-27 15:50:46 +03:00
Alex Plate
f18e317dcf
Reformat all listeners in project
2019-06-27 12:19:14 +03:00
Alex Plate
e143a286ef
Do not reset caret on small mouse dragging
2019-06-26 19:31:56 +03:00
Alex Plate
faa9c26283
Reformat resetCursor function
2019-06-26 19:21:45 +03:00
Alex Plate
da182f5539
Add protection for cases when vimSelectionStart is null in visual mode
2019-06-26 19:08:21 +03:00
Alex Plate
ced51e37b4
Convert all commands to VimCommandAction
2019-06-26 18:51:55 +03:00
Alex Plate
f61134fd69
Use VimCommandAction for insert commands
2019-06-26 15:43:01 +03:00
Alex Plate
578f60ba91
WIP: Renaming file 'ShiftRightLinesAction' with Kotlin extension
2019-06-26 15:29:42 +03:00
Alex Plate
02effac75c
WIP: Renaming file 'ShiftLeftLinesAction' with Kotlin extension
2019-06-26 15:26:11 +03:00
Alex Plate
72f4b21aea
Use VimCommandAction for COPY/PASTE actions
2019-06-26 13:53:58 +03:00
Alex Plate
1aa59afaf0
WIP: Renaming file 'YankLineAction' with Kotlin extension
2019-06-26 13:46:18 +03:00
Alex Plate
45df3ed168
Use VimCommandAction for NVO actions
2019-06-26 13:33:20 +03:00
Alex Plate
b344972931
WIP: Renaming file 'MotionScrollPageUpAction' with Kotlin extension
2019-06-26 13:24:33 +03:00
Alex Plate
7886a816b2
WIP: Renaming file 'MotionScrollPageDownAction' with Kotlin extension
2019-06-26 13:12:21 +03:00
Alex Plate
4722730aff
Move userData functions to UserDataManager.kt
2019-06-26 12:29:11 +03:00
Alex Plate
27a2c6192f
Rename CaretData to UserDataManager
2019-06-25 16:49:15 +03:00
Alex Plate
db77d133dc
Use userData() for managing editor's user data
2019-06-25 16:48:46 +03:00
Alex Plate
000ebfaf2f
Fix all missing @Override annotations
2019-06-25 15:20:31 +03:00
Alex Plate
a47001516d
Reformat HandlerBase
2019-06-25 15:18:37 +03:00
Alex Plate
fa9901271a
WIP: Renaming file 'EditorActionHandlerBase' with Kotlin extension
2019-06-25 15:18:37 +03:00
Alex Plate
913e8c355b
Fix tests after reformat
2019-06-25 15:18:36 +03:00
Alex Plate
aeef2f8948
Reformat ChangeEditorActionHandler
2019-06-25 15:18:36 +03:00
Alex Plate
9be8e2b5b9
WIP: Renaming file 'ChangeEditorActionHandler' with Kotlin extension
2019-06-25 15:18:36 +03:00
Alex Plate
99b68801d9
Remove CaretOrder
2019-06-25 15:18:36 +03:00
Alex Plate
4c766298f1
Change hierarchy of handlers
2019-06-25 15:18:36 +03:00
Alex Plate
2618d09ef8
VimCommandAction accepts EditorActionHandlerBase
2019-06-25 15:18:36 +03:00
Alex Plate
2bef98408c
MotionEditorAction new inherits VimCommandAction
2019-06-25 15:18:35 +03:00
Alex Plate
dbf90d4f37
Rename .java to .kt
2019-06-25 15:18:35 +03:00
Alex Plate
1e378dd1dd
Fix duplicated key mappings
2019-06-25 15:18:35 +03:00
Alex Plate
fa51c25919
TextObjects have now always MOTION type
2019-06-25 15:18:35 +03:00
Alex Plate
c880f49b81
Convert registerCommandLineActions to VimCommandAction
2019-06-25 15:18:35 +03:00
Alex Plate
1835220ba3
Convert registerVariousModesActions to VimCommandAction
2019-06-25 15:18:35 +03:00
Matt Ellis
86dbd3a03a
Correctly recognise abbreviated command in incsearch
2019-06-22 15:08:31 +02:00
Matt Ellis
948c2cd021
Only show one set of search results
...
Don't allow both IntelliJ and IdeaVim highlights to be visible at the same time
2019-06-22 15:08:20 +02:00
Matt Ellis
2aa45b8794
Merge branch 'master' into feature/search
2019-06-20 12:14:55 +02:00
Alex Plate
2b2fc27899
[VIM-608] Call save actions for :w commands
2019-06-19 16:06:21 +03:00
Alex Plate
35d5eb1713
Fix tests for idea marks
2019-06-19 15:30:37 +03:00
Alex Plate
86fab38407
[VIM-959] Add idemarks option
2019-06-19 13:45:18 +03:00
Matt Ellis
866fe5cc8d
Merge branch 'master' into feature/search
2019-06-18 20:07:21 +02:00
Alex Plate
2845f8543c
Use objects for options
2019-06-18 20:08:02 +03:00
Alex Plate
011699d58f
Add notification about smartjoin option
2019-06-18 17:23:52 +03:00
Alex Plate
ddd37f5bee
Reformat Options file
2019-06-18 16:27:40 +03:00
Alex Plate
44202b5c4d
Rename .java to .kt
2019-06-18 16:11:09 +03:00
Matt Ellis
b157d07b6d
Improve handling of Delete and Backspace in ex entry
2019-06-18 13:27:32 +01:00
Matt Ellis
31d30a9115
Only close ex entry with backspace if no text
2019-06-18 11:49:55 +01:00
Matt Ellis
cc7ee5acc0
Remove unused action
2019-06-18 11:44:44 +01:00
Matt Ellis
35bcb627c2
Correctly start/reset highlighting with :s command
2019-06-15 11:21:02 +01:00
Matt Ellis
a7882fadba
Reorder methods. No other changes
2019-06-15 10:39:59 +01:00
Alex Plate
fe4525b441
Add smartjoin option
2019-06-14 19:05:53 +03:00
Matt Ellis
416357bf27
Incsearch highlights current match if nohlsearch
...
This also fixes a bug which would return an incorrect range when searching backwards, and two matches are found on a line, one before and one after the search position. This is due to reusing a reference, rather than making a copy. This was never discovered because we only used the start offset, not the end!
2019-06-14 15:43:20 +01:00
Matt Ellis
32735a5e06
Fix start offset for incsearch with :s command
2019-06-14 12:20:07 +01:00
Matt Ellis
5b1d26263b
Add incsearch highlights for :substitute command
...
Includes support for :global and :vglobal for when IdeaVim adds them
2019-06-14 10:39:07 +01:00
Alex Plate
84be5bc732
Reformat Motion and Visual handlers
2019-06-13 19:28:43 +03:00
Alex Plate
bf1dee2bc4
Reformat CommandHandler
2019-06-13 18:43:49 +03:00
Alex Plate
e0aadacf93
Remove flags
function
2019-06-13 17:30:20 +03:00
Alex Plate
35481682a9
Fix NPE on text preprocessing during insert
2019-06-13 16:09:27 +03:00
Alex Plate
64291d336c
Fix selection with mouse on line end
2019-06-13 15:21:00 +03:00
Alex Plate
3fe1ee4bd8
Fix problems with vertical movement
2019-06-13 15:01:31 +03:00
Matt Ellis
130a8d0f00
Disable search highlights when disabling plugin
2019-06-13 11:51:25 +01:00
Matt Ellis
36c4596a08
Fix exception with dead keys in ex entry
...
Will also highlight composed text on Mac
2019-06-11 19:57:11 +01:00
Alex Plate
ebad3812e4
Add docs for TextObjectActionHandler
2019-06-11 19:52:31 +03:00
Alex Plate
004c1c915f
Rename VimActionCommand to VimCommands
2019-06-11 19:52:25 +03:00
Alex Plate
39bd13a6ca
Migrate text object to new registration model
2019-06-11 19:42:52 +03:00
Alex Plate
f10ac679e2
Rename .java to .kt
2019-06-11 19:36:55 +03:00
Alex Plate
8d49012d64
Reformat VimCommandAction: get handler from makeHandler method
2019-06-11 16:00:37 +03:00
Alex Plate
91392c1e83
Convert VimActionHandler to kotlin
2019-06-11 14:10:43 +03:00
Alex Plate
65bb31e92a
Rename .java to .kt
2019-06-11 14:10:43 +03:00
Alex Plate
c06fa72936
Remove empty javadocs
2019-06-11 13:20:53 +03:00
Alex Plate
a1adb1eb43
Create noneOfEnum helper function
2019-06-11 13:15:52 +03:00
Alex Plate
778ddb0e75
Support gn text objects
2019-06-11 13:06:36 +03:00
Alex Plate
e919a026b7
Remove secondary carets on gn search
2019-06-11 12:01:56 +03:00
Alex Plate
a78f78604a
Move gn commands to motion package
2019-06-11 11:58:06 +03:00
Alex Plate
eeea093bb8
Improve performance of gn command
2019-06-11 11:49:59 +03:00
Alex Plate
b795c62ab7
Reformat SearchGroup file
2019-06-10 16:29:17 +03:00
Alex Plate
4e205d078d
Merge branch 'master' into pull/134
...
# Conflicts:
# src/com/maddyhome/idea/vim/group/MotionGroup.java
2019-06-10 14:48:50 +03:00
Alex Plate
16016cb13d
[VIM-714] Fix caret vertical movements problems
2019-06-10 13:27:20 +03:00
Alex Plate
4754fff89b
Use primary caret for post move in case of block selection
2019-06-10 13:15:32 +03:00
Matt Ellis
60f9403657
Incsearch highlights all matches + current match
2019-06-07 23:33:05 +01:00
Alex Plate
eace5c5543
Fix typo
2019-06-07 16:19:34 +03:00
Alex Plate
f6d16ea4d9
Protection for empty file
2019-06-07 15:15:11 +03:00
Alex Plate
ac2f11360c
Extract some methods to CommandStateExtensions
2019-06-07 15:04:57 +03:00
Alex Plate
d4cd8a228f
Move ideaput
option to 'clipboard options'
2019-06-06 14:48:19 +03:00
Alex Plate
6081f1d5ff
Merge pull request #197 from JetBrains/IdeaPut
...
VIM-25 Smart put operations (via IJ)
2019-06-06 14:08:06 +03:00
Alex Plate
0139967b29
Avoid dragging when select a word with double click
2019-06-06 13:27:06 +03:00
Alex Plate
0a30a42b2e
Avoid dragging when put caret on the line end
2019-06-06 13:16:41 +03:00
Matt Ellis
ff54bfa5b3
Merge branch 'master' into feature/search
2019-06-05 20:47:34 +01:00
Matt Ellis
22445f6df9
Add tests for hlsearch and incsearch
2019-06-05 20:24:38 +01:00
Alex Plate
b3130f38f2
Add logs for put and copy
2019-06-05 18:50:38 +03:00
Alex Plate
32fdbaccc3
VIM-25 Smart put operations (via IJ)
2019-06-05 15:49:31 +03:00
Alex Plate
8a4d3f5d80
Use 2-space indentation for kotlin files
2019-06-05 15:26:18 +03:00
Alex Plate
7d13d22650
Merge pull request #161 from thecodewarrior/unnamed-register-selection-type
...
VIM-1473 Fixed incorrect selection type for unnamed registers
2019-06-04 17:54:33 +03:00
Alex Plate
6c17725823
[VIM-438] Enable <C-N> and <C-P> for lookups
2019-06-03 20:00:17 +03:00
Matt Ellis
f3b1ddf439
Merge branch 'master' into feature/search
2019-06-03 16:42:39 +01:00
Matt Ellis
c7de374943
Refactor highlighting API calls
2019-06-03 16:39:01 +01:00
Alex Plate
1bb6345fcb
Refactor put group
2019-05-31 19:27:43 +03:00
Alex Plate
cbc5e8aea1
Make visual put single-executable
...
Preparation for VIM-25
2019-05-31 19:27:43 +03:00
Alex Plate
7ebb888c31
WIP: Renaming file 'PutVisualTextNoIndentAction' with Kotlin extension
2019-05-31 19:27:43 +03:00
Alex Plate
93c6a03287
WIP: Renaming file 'PutVisualTextMoveCursorAction' with Kotlin extension
2019-05-31 19:27:43 +03:00
Alex Plate
ae97fbbcc3
WIP: Renaming file 'PutVisualTextAction' with Kotlin extension
2019-05-31 19:27:42 +03:00
Alex Plate
cb8d253dc5
Fix compilation for IC-2019.1
2019-05-31 16:48:54 +03:00
Alex Plate
cacab1e039
Make companion object private in VisualOperatorActionHandler
2019-05-31 16:40:38 +03:00
Alex Plate
0bf49ebe9a
Event could be null in IdeaSpecifics
2019-05-31 16:31:38 +03:00
Alex Plate
fa9b1933fa
Merge pull request #186 from JetBrains/VIM-510
...
This huge branch was created as a result of VIM-510. It provides many
changes aiming to solve the problems associated with selection.
Main changes:
Introducing select mode.
[VIM-510] Structural selection enables visual mode.
[VIM-274] During refactoring, select mode is enabled (which works almost
like normal IntelliJ IDEA selection).
2019-05-31 12:24:33 +03:00
Alex Plate
444f676d2d
Move connection to message but in IdeaSpecifics to EventFacade
2019-05-30 12:39:03 +03:00
Alex Plate
2ccba4b345
Remove @Deprecated from TextRange class
2019-05-30 12:34:25 +03:00
Alex Plate
0b76e86ace
Create different method for isVisualBlock and isBlockSubMode
2019-05-30 12:26:13 +03:00
Alex Plate
f40a86e744
Refactorings after review
2019-05-30 12:18:42 +03:00
Alex Plate
5b594a4a7b
Fix bad visual -> motion refactoring
2019-05-30 12:16:59 +03:00
Alex Plate
ea857b9c7b
Fix single execution for visual operation
2019-05-28 15:44:04 +03:00
Matt Ellis
987c89774c
VIM-1061 Explicitly register shortcuts for digraphs
2019-05-24 15:34:21 +01:00
Alex Plate
52d0c44014
Fix enter action for select mode
2019-05-24 15:43:21 +03:00
Alex Plate
e70d188b82
Add logging for visual operations
2019-05-24 15:13:37 +03:00
Alex Plate
9419c4b796
Fix gq (reformat code) action
2019-05-24 14:52:36 +03:00
Alex Plate
58c6aba6af
Move all special keys handlers to single file
2019-05-24 12:00:40 +03:00
Alex Plate
d09ae1a66e
Fix bad refactoring
2019-05-24 11:54:05 +03:00
Alex Plate
12717d13de
Make VisualStartFinishWrapper private
2019-05-24 11:52:04 +03:00
Alex Plate
b363a05a7d
Remove caretMergingListener in finally block
2019-05-24 11:51:12 +03:00
Alex Plate
318515db6f
Rename Util to Helper
2019-05-24 11:46:08 +03:00
Alex Plate
da7ff06734
Rename acontinue* to acontinue*
2019-05-24 11:41:40 +03:00
Alex Plate
f86a1a0002
Hide alwaysBatchExecution
property from inheritors
2019-05-24 11:01:15 +03:00
Alex Plate
e5d4a5f061
Put ShiftedArrowKeyHandler to ShiftedSpecialKeyHandler
2019-05-23 22:23:52 +03:00
Alex Plate
7be884b138
Remove FLAG_FORCE_LINEWISE and FLAG_FORCE_VISUAL flags
2019-05-23 18:06:11 +03:00
Alex Plate
4eacdeec5e
Check if caret valid before adjusting selection
2019-05-23 16:09:28 +03:00
Alex Plate
8a9a5919f2
Reset handler after exiting visual mode during tab switch
2019-05-23 15:46:51 +03:00
Alex Plate
442883c377
Make Command data class
2019-05-23 15:26:49 +03:00
Alex Plate
33939917c0
Print actionId of visual command to log
2019-05-22 14:59:51 +03:00
Alex Plate
e1721bf337
Handle backspace via vim with active lookup
2019-05-21 16:53:52 +03:00
Alex Plate
5081ede268
[VIM-1666] properly handling of digraphs after pressing backspace
2019-05-21 15:52:17 +03:00
Alex Plate
393416a925
Format KeyHandler file
2019-05-21 15:49:00 +03:00
Alex Plate
4d971be732
Support End and Shift-End motions
2019-05-20 13:21:24 +03:00
Alex Plate
deff56db29
Extract handler for shifted arrows
2019-05-20 12:54:05 +03:00
Matt Ellis
9c5420c79c
Fix exception highlighting last CR in file
...
Custom implementation of offsetToCharacterPosition failed when the text range of the last CR in the file wrapped to a line that didn't exist in the editor. This caused an exception when search highlights included the last CR in the file
2019-05-19 19:40:26 +02:00
Matt Ellis
bd58802ed6
Make incsearch work with entering digraphs
2019-05-17 23:19:02 +01:00
Matt Ellis
71504d0ded
Merge branch 'master' into ideavim-search
...
# Conflicts:
# src/com/maddyhome/idea/vim/ui/ExEntryPanel.java
2019-05-17 23:00:22 +01:00
Matt Ellis
3aff7693c7
Use same formatting as Find for search/replace
2019-05-17 22:29:59 +01:00
Matt Ellis
b46f426f30
Reset highlights when options change
2019-05-17 22:29:59 +01:00
Matt Ellis
70652d445c
Fix next/prev after search word and smartcase
...
Makes sure that search word forward/backward ignores smartcase for first and subsequent searches.
2019-05-17 22:29:58 +01:00
Matt Ellis
35f96b28bc
VIM-128 Substitute works with ignorecase and smartcase
2019-05-17 22:28:40 +01:00
Matt Ellis
dd40bb3850
Move current line during incsearch
2019-05-17 11:26:36 +01:00
Alex Plate
849c0cbd49
Support shifted and non-shifter Home key
2019-05-16 17:22:47 +02:00
Alex Plate
201d613ac1
Extract handler for non-shifted special keys
2019-05-16 16:11:40 +02:00
Alex Plate
8897ecd0d5
Extract handler for shifted special keys
2019-05-16 16:09:39 +02:00
Alex Plate
784a8e625f
Set log level to info for VisualCommands
2019-05-16 13:40:05 +02:00
Alex Plate
34893e7847
Support the rest of selectmodel options
2019-05-15 18:55:56 +02:00
Alex Plate
c49d5b4ffa
Move packages to better location
2019-05-15 15:47:29 +02:00
Alex Plate
c37387db64
Full support for selectmode option
2019-05-15 15:22:55 +02:00
Alex Plate
83b626b77e
Remove ExtendSelection actions
2019-05-15 13:01:18 +02:00
Alex Plate
45932d9189
Save last column during shift-motions
2019-05-15 10:25:38 +02:00
Alex Plate
fe01820f3f
Add support for key in selectmode option
2019-05-15 10:18:44 +02:00
Alex Plate
2ad4436cef
Add support for startsel in keymodel option
2019-05-15 09:59:31 +02:00
Alex Plate
5b8fb49d4c
Additional null check
2019-05-15 07:09:06 +03:00
Alex Plate
dca0240c13
Fix opening dialog boxes
2019-05-14 20:38:15 +03:00
Alex Plate
ce692df94f
Fix cc command for empty document
2019-05-14 19:34:26 +03:00
Alex Plate
dbcf2acce4
Support cmd for selectmode option
2019-05-14 19:14:53 +03:00
Alex Plate
3bc628417f
WIP: Renaming file 'VisualToggleLineModeAction' with Kotlin extension
2019-05-14 18:52:53 +03:00
Alex Plate
bdc9b78ec8
Merge branch 'master' into VIM-510
2019-05-14 16:51:55 +03:00
Alex Plate
6865d25035
Put actions to package-info
2019-05-14 14:53:10 +03:00
Alex Plate
25289ed4c5
Fix dot command for visual change
2019-05-14 13:20:44 +03:00
Alex Plate
2c32cbfbfd
Fix linewise change to end of document
2019-05-14 13:16:30 +03:00
Matt Ellis
74dce4b70a
Fix incsearch with trailing characters
2019-05-14 14:51:07 +08:00
Matt Ellis
187963cc38
VIM-1413 Handle smartcase in incremental search
2019-05-14 14:50:30 +08:00
Matt Ellis
afd618c61a
VIM-1535 Use correct text attributes for search
...
Uses the same attributes and layers as the IDE's own Find preview
2019-05-14 14:34:43 +08:00
Alex Plate
4196ec5093
Fix big O for visual block mode
2019-05-13 21:18:35 +03:00
Alex Plate
49d28f1eeb
WIP: Renaming file 'VisualSwapEndsBlockAction' with Kotlin extension
2019-05-13 20:27:21 +03:00
Alex Plate
90640c9378
WIP: Renaming file 'VisualSwapEndsAction' with Kotlin extension
2019-05-13 20:23:34 +03:00
Alex Plate
bf0e9fb107
Inline vimForAllOrPrimaryCaret function
2019-05-13 16:19:05 +03:00
Alex Plate
eba0bf8f41
Move VisualSelection to another package
2019-05-13 16:15:43 +03:00
Alex Plate
66dc40f6e2
[VIM-1655] Deleted in insert mode text is not yanked
2019-05-13 15:23:59 +03:00
Alex Plate
caa0caf297
Scroll caret to next selection in multicaret plugin
2019-05-13 14:51:57 +03:00
Alex Plate
e6a36178ff
Extract getKey method from ReadWrite properties
2019-05-13 14:45:38 +03:00
Michael Ziwisky
3180ae1a41
map "<C-W><C-{H,J,K,L}>" to Window<Direction>Action
...
from vim help:
tag command action in Normal mode
---------------------------------------------------------
|CTRL-W_CTRL-H| CTRL-W CTRL-H same as "CTRL-W h"
|CTRL-W_CTRL-J| CTRL-W CTRL-J same as "CTRL-W j"
|CTRL-W_CTRL-K| CTRL-W CTRL-K same as "CTRL-W k"
|CTRL-W_CTRL-L| CTRL-W CTRL-L same as "CTRL-W l"
2019-05-09 16:06:21 -07:00
Alex Plate
b3bf33f488
Merge pull request #193 from citizenmatt/feature/cmdline-editing
...
Improvements to ex entry
2019-05-08 19:43:55 +03:00
Alex Plate
f80111299f
Use '\n' separator for CmdHandler
2019-05-08 19:32:09 +03:00
Alex Plate
f5dd1722f5
Fix separator related failed tests
2019-05-08 19:20:14 +03:00
Alex Plate
4237ce9b3c
Support multicaret for entering visual mode with count
2019-05-08 18:44:02 +03:00
Alex Plate
b3f3a307ba
Support entering visual mode with count without previous visual operation
2019-05-08 17:39:33 +03:00
Alex Plate
381e84e649
Add docs to userDataCaretToEditor delegator
2019-05-08 17:01:33 +03:00
Alex Plate
4ccddf839f
Remove unnecessary caret user data
2019-05-08 16:46:04 +03:00
Alex Plate
f40ee92826
Support enter visual mode with count
2019-05-08 16:42:16 +03:00
Alex Plate
13b28e6f1c
Save call for editor in IdeaSpecifics
2019-05-08 12:47:07 +03:00
Matt Ellis
7fe0609e9e
Fix tests
2019-05-08 07:05:58 +01:00
Alex Plate
b24aec26c0
WIP: Renaming file 'VisualChange' with Kotlin extension
2019-05-07 20:27:34 +03:00
Alex Plate
c465d303e5
Remove extra caret data
2019-05-07 18:08:49 +03:00
Alex Plate
13e80db668
Add comments to CaretData
2019-05-07 17:51:50 +03:00
Matt Ellis
98d22523be
Merge branch 'master' into feature/cmdline-editing
2019-05-07 12:32:25 +01:00
Matt Ellis
6326360595
Update UI of ex output panel
2019-05-07 12:29:50 +01:00
Matt Ellis
7cfbddfd35
Remove unused editor actions
2019-05-07 12:25:02 +01:00
Alex Plate
92eb6dab2f
Add information about @VimBehaviourDiffers annotation to CONTRIBUTE.md
2019-05-07 14:08:02 +03:00
Alex Plate
7cebdc7270
Add folding regions for IdeaSpecifics
2019-05-07 12:52:30 +03:00
Matt Ellis
f9094223ba
Add correct caret shape for lost focus
2019-05-07 09:46:58 +01:00
Matt Ellis
849e0964ba
Remove gap between ex label and text field
...
Also replaces incorrect border around entry panel, fixing off by one UI border drawing
Fixes VIM-1240, fixes VIM-1485
2019-05-07 00:16:09 +01:00
Alex Plate
096ed14978
Add null-check for LaF listener
...
(cherry picked from commit afe745dc44
)
2019-05-06 18:08:40 +03:00
Alex Plate
d04196ec7c
Use native selection for visual operations
2019-05-06 17:05:45 +03:00
Alex Plate
bf7f6054c6
Get editor on action execution start
2019-05-06 15:08:39 +03:00
Alex Plate
afe745dc44
Add null-check for LaF listener
2019-05-06 14:52:10 +03:00
Alex Plate
5032bc4da7
Add some comments to functions
2019-05-06 14:49:58 +03:00
Alex Plate
10c19bbb94
Move caret one char left (after selection) not in recursive way
2019-05-06 13:38:06 +03:00
Alex Plate
7519eb1f43
Move listeners to separate package
2019-05-06 12:20:15 +03:00
Alex Plate
95b800638b
Enter insert mode when enabling template without selection
2019-05-06 12:18:22 +03:00
Matt Ellis
ff9a3a55e2
Ensure current action processes next keystroke
...
This allows cancelling inserting digraph or register with movement keys. Unprocessed keys are ignored, unless it's <C-C>, in which case the ex entry is cancelled.
2019-04-30 20:58:06 +01:00
Alex Plate
56b4e50aab
Event is not null for before/after actionPerformed
2019-04-30 19:05:05 +03:00
Matt Ellis
32d513a74f
Reset ex entry when lost focus due to mouse click
2019-04-30 16:50:05 +01:00
Alex Plate
8ce4768aa6
Enable insert mode after surround with if action
2019-04-30 18:49:21 +03:00
Alex Plate
31b41cacba
Fix motion caret to the next line after changing full text
2019-04-30 16:33:31 +03:00
Alex Plate
ddaf190c3c
Add file to define Idea-specific behaviour
...
Move caret to right position for rider - extendSelection action
2019-04-30 15:47:28 +03:00
Alex Plate
e873009aeb
Disable listeners if IdeaVim was not enabled on editor creation
2019-04-30 14:44:39 +03:00
Matt Ellis
7ec3abb069
Correctly set focus when handling cmode mapping
...
Fixes VIM-1419, fixes VIM-1493
2019-04-30 11:42:30 +01:00
Alex Plate
cfd69d1603
Stay in select mode in PyCharm after deleting indent
2019-04-30 11:35:45 +03:00
Alex Plate
f816bc23e9
Create more complicated VimSelection structure. Support dollar motion
2019-04-29 16:46:30 +03:00
Matt Ellis
8601730dd8
Add prompt when inserting digraphs and registers
...
Also resets state correctly when cancelling inserts
2019-04-29 14:12:19 +01:00
Alex Plate
336342c72e
[IDEA-211429] Directly enable insert mode for dialogs
2019-04-29 15:16:18 +03:00
Alex Plate
45b757697a
Merge pull request #192 from danielemegna/VIM-1644
...
[Vim 1644] - Fix action repeat broken with visual mode
2019-04-29 15:08:20 +03:00
Alex Plate
a9a0d6233e
Merge pull request #191 from citizenmatt/feature/beep
...
Only beep once every half second
2019-04-29 14:42:15 +03:00
Alex Plate
af79066c26
Merge pull request #179 from Vvalter/master
...
Fix VIM-1090 and VIM-1100 tag motion with duplicate tags.
2019-04-29 13:59:15 +03:00
Matt Ellis
906d2a4168
Insert register at caret location, instead of appending
2019-04-29 11:44:34 +01:00
Alex Plate
3b360c807e
Merge pull request #188 from ECourant/feature/command
...
(VIM-1105) Adding support for command aliasing.
2019-04-29 13:21:53 +03:00
Alex Plate
d0bec7db4d
Update copyright and make code more kotlin-specific
2019-04-29 13:07:57 +03:00
Matt Ellis
e7603a78d0
Add tests for ex entry shortcuts
2019-04-29 09:29:08 +01:00
Matt Ellis
3a728df3b1
Ensure all shortcuts are seen by ex entry field
...
Fixes VIM-1550
2019-04-28 17:06:23 +01:00
Daniele Megna
417fa314b4
Fix VIM-1644: keep Visual and VisualBlock start-end values updated
...
during MotionGroup#toggleVisual method
2019-04-28 11:20:20 +02:00
Simon Rainer
73cfd71bd4
Fixes successive tag block selection.
2019-04-27 12:46:33 +02:00
Simon Rainer
415abd13c9
Merge remote-tracking branch 'upstream/master'
2019-04-26 17:18:08 +02:00
Matt Ellis
e94eac77eb
Show correct caret shape on command line
...
Also refreshes font when editor font changes
2019-04-26 14:44:40 +01:00
Matt Ellis
25b11349a4
Update list of cmdline editing commands
2019-04-26 14:43:56 +01:00
Elliot Courant
4ea8e15710
(VIM-1105) Adding support for command aliasing.
...
Commands `command`, `comclear` and `delcommand` have been added. `command` also
supports -nargs, allowing arguments to be passed to the aliased command.
Symbols supported for -nargs are: <args> <q-args> <count> <lt>.
2019-04-26 06:17:30 -05:00
Matt Ellis
890562e810
Only beep once every half second
2019-04-26 11:49:41 +01:00
Alex Plate
9b4d38ed3c
Rearrange VisualMotionGroup code
2019-04-25 17:19:36 +03:00
Alex Plate
33c33431f9
Update indent
2019-04-25 16:09:22 +03:00
Alex Plate
53d3e0db88
Remove useless function
2019-04-25 15:22:32 +03:00
Alex Plate
94e4556bee
Remove unnecessary user data (wasVisualBlock)
2019-04-25 14:56:15 +03:00
Alex Plate
1ad9dd4a28
Save caret position after cursor dragging
2019-04-25 14:47:14 +03:00
Alex Plate
e15f0e07dd
Add some comments to VisualGroup
2019-04-25 13:29:42 +03:00
Alex Plate
eda734e728
Add missing @NotNull annotation
2019-04-25 12:09:24 +03:00
Alex Plate
5132327d62
Merge pull request #159 from ikenox/search-action-by-shortcut-key
...
Search actionlist by keyboard shortcuts which is assigned to action
2019-04-25 12:09:09 +03:00
Alex Plate
55e0200fb6
Move caret to right place after gutter mouse selection
2019-04-25 11:45:55 +03:00
Alex Plate
fefd6699f3
Select full line while visual line mode
2019-04-25 11:04:05 +03:00
Alex Plate
963840612c
Select full line while visual line mode
2019-04-25 10:54:46 +03:00
Alex Plate
fd8e567c60
Format ChangeGroup
2019-04-24 20:26:55 +03:00
Alex Plate
69d02b8abb
Fix small typos in userData() functions
2019-04-24 17:09:08 +03:00
Alex Plate
ccf721fd6c
Store vim selection start and end in VimSelection model
2019-04-24 15:01:12 +03:00
Alex Plate
55bd13c3f2
Reorganize Visual- and MotionHandlers
2019-04-23 17:26:57 +03:00
Alex Plate
f8de555032
[VIM-1184] Store all vim settings only locally (except keymapping)
2019-04-23 15:49:33 +03:00
Alex Plate
13b75dea27
Merge pull request #189 from Nimamoh/VIM-1633
...
VIM-1633 - fix block selection
2019-04-23 12:48:09 +03:00
Romain Gautier
9487cd2b0b
Revert block tag part
2019-04-23 00:19:04 +02:00
Alex Plate
20dbe1bde6
Enter select mode for oneRowEditor in case on unexpected selection change
2019-04-22 15:24:44 +03:00
Alex Plate
c7f42cfca8
Enter insert mode after backspace in select mode
2019-04-22 15:24:19 +03:00
Alex Plate
3f9585b1fb
Restore mode after :action
2019-04-22 14:57:09 +03:00
Alex Plate
e021663975
Print submode of select mode in bar
2019-04-22 14:38:03 +03:00
romain.gautier@nimamoh.net
8c1cca0d57
VIM-1633 - correct handling of self closing tags
2019-04-18 18:30:24 +02:00
Simon Rainer
6d74480998
Fixes tag motion handling slashes incorrectly.
2019-04-18 16:12:04 +02:00
Simon Rainer
31bad3a1e1
Merge https://github.com/JetBrains/ideavim
2019-04-18 15:24:09 +02:00
romain.gautier@nimamoh.net
f0ccf6c3a5
VIM-1633 - empty tag block selection case
2019-04-18 14:55:54 +02:00
romain.gautier@nimamoh.net
367b13cdad
VIM-1633 - fix tag block selection
2019-04-18 13:17:35 +02:00
Alex Plate
47ac879ed9
Move caret one char left after double click
2019-04-18 13:57:01 +03:00
Alex Plate
28a50c00bb
Move caret one character left while after mouse selection
2019-04-17 20:33:23 +03:00
Alex Plate
6ceb74cb33
Fix: some motions could become linewise
2019-04-17 16:15:30 +03:00
Naoto Ikeno
9f682cded0
filter an actionlist by assigned shortcut key
2019-04-17 16:17:09 +09:00
Alex Plate
74d5144892
Set visual mode for non-vim selections
2019-04-15 17:46:50 +03:00
romain.gautier@nimamoh.net
ea2f2ba213
VIM-1633 - remove useless min/max, add comments
2019-04-15 15:22:45 +02:00
Alex Plate
970a5e19d0
Use try-with-resources for VimListenerSuppressor
2019-04-15 15:13:09 +03:00
Alex Plate
3786660ecd
Motion right with unicode characters
2019-04-15 14:00:17 +03:00
romain.gautier@nimamoh.net
c0d72d25f8
VIM-1633 - fix block selection
2019-04-13 03:35:08 +02:00
Alex Plate
b69d7f9729
Fix problems after rebase
2019-04-12 19:08:18 +03:00
Alex Plate
03a934a8e9
Add motions to left/right/up/down arrows in select mode
2019-04-12 19:03:18 +03:00
Alex Plate
215df5cc03
Enter insert mode after select mode while editing template
2019-04-12 19:03:18 +03:00
Alex Plate
cfcdbffa7f
Handle tab character with block visual selection
2019-04-12 19:03:18 +03:00
Alex Plate
7b32b75052
Suppress selection listener while lookup is active
2019-04-12 19:03:18 +03:00
Alex Plate
f6549aca76
Remove unused method
2019-04-12 19:03:18 +03:00
Alex Plate
4ce3cff2bf
Shorter version of selection restore (:action
)
2019-04-12 19:03:18 +03:00
Alex Plate
c4c8b8c9e1
Fix :action
command with selection
2019-04-12 19:03:18 +03:00
Alex Plate
23ce30a7fc
Provide vimSetSelection instead of vimStartSelectionAtPoint method
2019-04-12 19:03:17 +03:00
Alex Plate
2fd23af04a
Fix commentary extension
2019-04-12 19:03:17 +03:00
Alex Plate
33534d50cd
Support del and backspace in select mode
2019-04-12 19:03:17 +03:00
Alex Plate
79aed6b7b0
Add SAVE_VISUAL flag for commands
2019-04-12 19:03:17 +03:00
Alex Plate
740ef8a2d7
Update down motion
2019-04-12 19:03:17 +03:00
Alex Plate
68efd8f3d0
Properly handling of unexpected block selection
2019-04-12 19:03:17 +03:00
Alex Plate
7ed7ac817d
Fix KeyHandler reset after using templates
2019-04-12 19:03:16 +03:00
Alex Plate
f1fd5f2aa6
Do not move secondary carets in selection block mode to selection end - 1
2019-04-12 19:03:16 +03:00
Alex Plate
ef13d04a98
Add tests for key handler
2019-04-12 19:03:16 +03:00
Alex Plate
fb3f3c7405
Add Escape action
2019-04-12 19:03:16 +03:00
Alex Plate
a133a94dbe
Create tests for select mode toggling
2019-04-12 19:03:15 +03:00
Alex Plate
4e64838613
Handler enter action in selection mode
2019-04-12 19:03:15 +03:00
Alex Plate
2f894a5f2f
Create tests for entering select mode
2019-04-12 19:03:15 +03:00
Alex Plate
3903f6c709
Fix wrong cursor shape by copying
2019-04-12 19:03:15 +03:00
Alex Plate
78ab61ec0c
Add docs for VisualGroup
2019-04-12 19:03:14 +03:00
Alex Plate
be8a5f535c
Get rid of static methods to get common approach for group functions
2019-04-12 19:03:14 +03:00
Alex Plate
53a5762f98
Fixing caret in dialogs
2019-04-12 19:03:14 +03:00
Alex Plate
85c92935d3
Add motion up and down
2019-04-12 19:03:14 +03:00
Alex Plate
ed51a60dfe
Fix wrong caret shape on mouse click
2019-04-12 19:03:14 +03:00
Alex Plate
6ad7771fed
Fix undo/redo
2019-04-12 19:03:14 +03:00
Alex Plate
63f87cdb18
Handle enter in select mode
2019-04-12 19:03:14 +03:00
Alex Plate
73f670212e
Enter select mode with multiple carets
2019-04-12 19:03:13 +03:00
Alex Plate
7418c6db73
Add switcher for select mode and line and block wise
2019-04-12 19:03:13 +03:00
Alex Plate
6892db0056
Enter selection mode on unexpected changes
2019-04-12 19:03:13 +03:00
Alex Plate
2f6bd2c287
Introduce select mode
2019-04-12 19:03:13 +03:00
Alex Plate
4bff954c3b
Fix :join command
2019-04-12 19:03:13 +03:00
Alex Plate
e70f535ad3
Fix selection with undo
2019-04-12 19:03:13 +03:00
Alex Plate
da66981a1f
Fix putting caret on empty line
2019-04-12 19:03:13 +03:00
Alex Plate
ab9ba94dbf
Add docs for new classes and functions
2019-04-12 19:03:12 +03:00
Alex Plate
0d15b9117f
Log lockers, clear stack before entering visual mode
2019-04-12 19:03:12 +03:00
Alex Plate
4de8e8e291
Adjust caret to visual end in case of unexpected changes
2019-04-12 19:03:12 +03:00
Alex Plate
ced99152a1
Fix visual block selection
2019-04-12 19:03:12 +03:00
Alex Plate
c30cd23b89
Make VimListenerSuppressor sealed
2019-04-12 19:03:12 +03:00
Alex Plate
1e58173241
Fix ChangeVisualAction
2019-04-12 19:03:12 +03:00
Alex Plate
062d7d3f71
Fix setVisualMode for caret without selection
2019-04-12 19:03:12 +03:00
Alex Plate
284983a4a7
Move listeners to separate class
2019-04-12 19:03:11 +03:00
Alex Plate
b590762259
Support block selection autodetect
2019-04-12 19:03:11 +03:00
Alex Plate
1763eb2f17
Proper visual mode exit
2019-04-12 19:03:11 +03:00
Alex Plate
5be2ca8efc
Fix motion down
2019-04-12 19:03:11 +03:00
Alex Plate
826b3d6803
Handle unexpected caret events
2019-04-12 19:03:11 +03:00
Alex Plate
6852463b53
Fix visual block deletion
2019-04-12 19:03:11 +03:00
Alex Plate
9546f6069c
Fix line deletion in visual mode
2019-04-12 19:03:11 +03:00
Alex Plate
d65955647c
Move selection functions to VisualGroup
2019-04-12 19:03:10 +03:00
Alex Plate
5200ff8e84
Move CaretData to kotlin
2019-04-12 19:03:10 +03:00
Alex Plate
f1a667ae2e
Move caret last column attribute to kotlin
2019-04-12 19:03:10 +03:00
Alex Plate
82682ece5e
Remove unused moveCaret method
2019-04-12 19:03:10 +03:00
Alex Plate
61f9184728
Highlight only primary caret with block selection
2019-04-12 19:03:10 +03:00
Alex Plate
a220be8136
Fix all tests
2019-04-12 19:03:10 +03:00
Alex Plate
11b2096dba
Fix last selection type
2019-04-12 19:03:10 +03:00
Alex Plate
8370248390
Define main caret for visual block selection
2019-04-12 19:03:09 +03:00
Alex Plate
f528269bc6
Fixed tests with put and yank actions
2019-04-12 19:03:09 +03:00
Alex Plate
d551531603
Test fixing
2019-04-12 19:03:09 +03:00
Alex Plate
3b50bd8509
Fix tests about caret merging
2019-04-12 19:03:09 +03:00
Alex Plate
8bc73a0101
Fix word object tests
2019-04-12 19:03:09 +03:00
Alex Plate
419c15d0c3
Fixing tests
2019-04-12 19:03:09 +03:00
Alex Plate
be90776588
Remove native caret order
2019-04-12 19:03:09 +03:00
Alex Plate
7c8cc16768
Fix tests for vim surround
2019-04-12 19:03:08 +03:00
Alex Plate
1596b0addc
New structure of MotionEditorActionHandler
2019-04-12 19:03:08 +03:00
Alex Plate
886bbe1111
Use new struct of operation handler
2019-04-12 19:03:08 +03:00
Alex Plate
de266f12a4
Set selection start non nullable. Set null value with vimSelectionStartBackingNullable
2019-04-12 19:03:08 +03:00
Alex Plate
f9a5bc00e7
[WIP] Support native caret selection
2019-04-12 19:03:08 +03:00
Alex Plate
356c122767
Remove unused methods
2019-04-12 19:03:08 +03:00
Alex Plate
e9b94033c5
Format VisualOperatorActionHandler
2019-04-12 19:03:07 +03:00
Alex Plate
8e1385e4e1
Remove unused data key
2019-04-12 19:03:07 +03:00
Alex Plate
e881ed0d9a
Update visual handlers to new handler
2019-04-12 19:03:07 +03:00
Alex Plate
26d03d49b1
Create tests for visual put action
2019-04-12 19:03:07 +03:00
Alex Plate
082a3b21e1
Use range markers instead of TextRanges for VisualOperatorActionHandler
2019-04-12 19:03:07 +03:00
Alex Plate
15e6e8435a
Make extension properties to get visual range
2019-04-12 19:03:07 +03:00
Alex Plate
2d67067159
Split CopyGroup into class objects
2019-04-12 19:03:07 +03:00
Alex Plate
3fb3aaad2a
Introduce new VisualOperatorActionHandler
...
Update visual put to new handler
2019-04-12 19:03:06 +03:00
Alex Plate
616479c4fc
Use native caret iterator for VisualOperatorActionHandler
2019-04-12 19:03:06 +03:00
Alex Plate
9b4c732dca
Remove unused caret data
2019-04-12 19:03:06 +03:00
Alex Plate
249be00463
Reformat setVisualMode and toggleVisual functions
2019-04-12 19:03:06 +03:00
Alex Plate
febcccc670
Extract visual motions to separate file
2019-04-12 19:03:06 +03:00
Alex Plate
2d4eed726f
Fix motion right with tabs
2019-04-12 19:02:48 +03:00
Alex Plate
24eb376bed
Merge pull request #166 from apottere/patch-1
...
Get indent from PsiFile so formatting on shift is consistent (VIM-1231)
2019-04-12 18:27:56 +03:00
Alex Plate
75fbc0f939
[VIM-1425] Fix % command
2019-04-12 15:16:26 +03:00
Alex Plate
c8c1993db3
Fix right motion for non-ascii character
2019-04-12 14:39:37 +03:00
Alex Plate
628cb33e44
Revert "[VIM-1425] Fix % command"
...
This reverts commit d0a39ef3
2019-04-11 16:40:25 +03:00
Alex Plate
8160df000b
Revert "Fix right motion for non-ascii character"
...
This reverts commit f6e7019b
2019-04-11 16:26:37 +03:00
Alex Plate
d0a39ef32f
[VIM-1425] Fix % command
...
Command % worked wrong when
- There was '\\' character on the way
- Inside strings
2019-04-11 16:09:57 +03:00
Alex Plate
f6e7019b51
Fix right motion for non-ascii character
2019-04-10 18:44:36 +03:00
Alex Plate
c202394c3c
[VIM-1628] Do not handle undefined characters
2019-04-10 12:48:30 +03:00
Alex Plate
900f415c6b
[VIM-1546] Storing TAB key as input
2019-04-09 21:51:23 +03:00
Alex Plate
38a4fd5fbc
[VIM-607] Fixing memory leaks when closing the project
2019-04-09 20:38:57 +03:00
Alex Plate
9f629132e4
Use Set instead of List for CommandHandler flags
2019-04-09 13:10:22 +03:00
Alex Plate
32ba7895a3
Provide more clear API for creating new Command Handlers
2019-04-08 17:19:48 +03:00
Daniele Megna
0f5ca758b8
Implement TabOnlyHandler
2019-04-07 11:42:50 +02:00
Alex Plate
4befd155a1
Merge pull request #182 from citizenmatt/VIM-1615
...
VIM-1615 Fix handling of so=999
2019-04-04 15:32:53 +03:00
Matt Ellis
bb7c2390b1
Keep bottom line aligned with bottom of screen when scrolling up
2019-04-04 00:15:23 +01:00
Alex Plate
4b49bb6d18
Merge pull request #180 from gecko655/VIM-1067
...
Fix issue VIM-1067: Repeat commands deletes End Of Line character when repeating "append to end of line" ('A') command.
2019-04-01 19:56:15 +03:00
Alex Plate
465ed569a1
Merge pull request #178 from sumoooru2/master
...
Fix findBlockRange
2019-04-01 19:48:59 +03:00
Alex Plate
547a159fb3
Add message to explain which action is null
2019-03-29 11:50:37 +03:00
Alex Plate
a1ff484c85
Merge pull request #109 from dhleong/dhleong/CommentaryExtension2
...
Add comment motion extension
2019-03-28 13:34:03 +03:00
Matt Ellis
6ebedb9219
VIM-1615 Fix handling of so=999
2019-03-27 09:31:12 +00:00
jonatantierno
c717bed4fb
Command gn
2019-03-16 14:47:09 +01:00
gecko655
41ea121377
Fix issue VIM-1067: Repeat commands deletes End Of Line character when repeating "append to end of line" ('A') command.
...
The variable `ChangeGroup.oldOffset` should be initialized before every insertion action.
This fixes https://youtrack.jetbrains.com/issue/VIM-1067
2019-03-11 00:43:01 +09:00
Alex Plate
b3de48fdd2
Convert CommandNode to kotlin
2019-02-26 12:11:06 +03:00
Alex Plate
f58eda97c8
WIP: Renaming file 'CommandNode' with Kotlin extension
2019-02-26 12:10:03 +03:00
Alex Plate
7958aa3881
Convert CommandHandler to kotlin
2019-02-25 19:55:58 +03:00
Alex Plate
e67ac4c3ad
Use enumsets instead of bitflags for CommandHandler
2019-02-25 19:03:45 +03:00
Alex Plate
a52984f515
Remove unused constructors of CommandHandler
2019-02-25 14:05:37 +03:00
Alex Plate
746dbc2533
Convert MapHandler to kotlin
2019-02-25 13:58:18 +03:00
Alex Plate
b2c462fbaa
Convert SortHandler to kotlin
2019-02-25 13:07:39 +03:00
Alex Plate
42171e5680
Convert YankLinesHandler to kotlin
2019-02-25 13:01:00 +03:00
Alex Plate
10ddc61fb7
Convert SelectFileHandler to kotlin
2019-02-25 12:51:24 +03:00
Alex Plate
ae1d3d9c09
Convert RepeatHandler to kotlin
2019-02-25 12:49:13 +03:00
Simon Rainer
990caaa75d
VIM-1090 VIM-1100 fix tag motion with duplicate tags.
2019-02-24 11:32:35 +01:00
Daniel Leong
00dc6fe775
Preserve caret position (only) for linewise comments
2019-02-22 20:31:25 -05:00
Daniel Leong
fbac63085f
Add WriteAction.run() wrappings as appropriate
2019-02-22 10:59:20 -05:00
Daniel Leong
35ce221cab
Refactor Runnable -> lambda
2019-02-22 10:11:31 -05:00
Daniel Leong
4599d76ce4
Remove catch()
2019-02-22 10:11:31 -05:00
dhleong
6a6632e363
Fix visual-mode gc
action
2019-02-22 10:11:31 -05:00
dhleong
5c18dd0603
Post handling of "remaining" key to ensure correct event ordering
...
Fixes the strange behavior when using the <Plug> mapping broke
in the real environment, but the unit tests passed
2019-02-22 10:11:31 -05:00
dhleong
245c48d78f
Only pass extra keys for prevMappingInfo if necessary
...
That is, if the mapping info we're using *is* the prevMappingInfo.
If it's not, that means the prevMappingInfo was part of a prefix that
the currentMappingInfo completed
2019-02-22 10:11:31 -05:00
dhleong
ff02161062
Improve tests for more depth, cover gc(motion)/gcc issue
...
The failing gc(motion) tests seem more like implementation bugs
than anything else, but the the issues `gcc` with are unexpected
2019-02-22 10:11:31 -05:00
dhleong
0475610f59
Another attempt at comment motion extension
2019-02-22 10:11:31 -05:00
Alex Plate
a1236d855b
Convert RegistersHandler to kotlin
2019-02-22 16:26:37 +03:00
Alex Plate
0f835fd3ba
Convert PutLinesHandler to kotlin
2019-02-22 15:59:00 +03:00
Alex Plate
434c1ef275
Convert PreviousFileHandler to kotlin
2019-02-21 18:59:24 +03:00
Alex Plate
6772b08745
Convert OnlyHandler to kotlin
2019-02-21 18:56:03 +03:00
Alex Plate
7c8d560f9e
Use native mechanism for multicursor iteration
2019-02-21 18:19:23 +03:00
Alex Plate
29d3e4fd5b
Convert MoveTextHandler to kotlin
2019-02-21 17:34:30 +03:00
Alex Plate
b8748916a7
Convert MarksHandler to kotlin
2019-02-21 15:57:21 +03:00
Alex Plate
e028215718
Convert LetHandler to kotlin
2019-02-21 14:45:50 +03:00
Alex Plate
908a0929f0
Merge pull request #174 from bradziolko/vim-1012
...
[VIM-1012] Support tab close preferences when using :q or :wq
2019-02-21 14:45:22 +03:00
sumoooru2
d35f017db5
Fix findBlockRange
2019-02-21 16:52:15 +09:00
Alex Plate
3b8da702a7
Convert JumpsHandler to kotlin
2019-02-20 18:21:50 +03:00
Alex Plate
24c24f40ab
Update copyright
2019-02-20 17:01:23 +03:00
Alex Plate
865a888363
Convert JoinLinesHandler to kotlin
2019-02-20 16:40:13 +03:00
Alex Plate
cdff9e28a1
Support some increment and decrement commands
2019-02-20 16:10:44 +03:00
Alex Plate
ca2924510a
Convert HistoryHandler to kotlin
2019-02-19 20:34:08 +03:00
Alex Plate
42cbbbfc3a
Convert GotoLineHandler to kotlin
2019-02-19 20:03:31 +03:00
Alex Plate
d8d1daca67
Convert GotoCharacterHandler to kotlin
2019-02-19 20:01:47 +03:00
Alex Plate
1aa021b157
Convert FindSymbolHandler to kotlin
2019-02-19 19:59:29 +03:00
Alex Plate
5e99c45fa1
Convert FindFileHandler to kotlin
2019-02-19 19:58:18 +03:00
Alex Plate
687a601772
Add Tony Arra to contributor list
2019-02-19 19:56:18 +03:00
Alex Plate
4bc2880505
Convert FindClassHandler to kotlin
2019-02-19 19:48:18 +03:00
Alex Plate
0f474d7f3e
Convert EditFileHandler to kotlin
2019-02-19 19:48:18 +03:00
Alex Plate
fe5342d63c
Convert DumpHandler to kotlin
2019-02-19 19:48:18 +03:00
Alex Plate
2f9de59b79
Convert DeleteHandler to kotlin
2019-02-19 19:48:18 +03:00
Alex Plate
18d18118a0
Convert CopyHandler to kotlin
2019-02-19 19:48:18 +03:00
Alex Plate
b074b5ac70
Use coerce function for rawCount
2019-02-19 19:48:17 +03:00
Alex Plate
a38231fb1b
Merge pull request #172 from TonyArra/VIM-1569
...
VIM-1569: Strip tag attributes from closing tag for Vim-Surround
2019-02-19 19:45:54 +03:00
Alex Plate
740abc1e70
Use enum for storing command flags
2019-02-19 16:43:23 +03:00
Alex Plate
2761dfb06f
Convert CmdFilterHandler to kotlin
2019-02-19 12:07:46 +03:00
Alex Plate
93ce46bb7c
Convert AsciiHandler to kotlin
2019-02-19 11:57:25 +03:00
Alex Plate
7e23fca598
New style of command definition
2019-02-18 21:32:23 +03:00
Alex Plate
0c2631622e
Merge pull request #88 from dos65/keypad_arrows
...
VIM-944 - Navigation with keypad arrows
2019-02-18 19:50:22 +03:00
Alex Plate
2285034a62
Convert ActionListHandler to kotlin
2019-02-15 21:02:25 +03:00
Alex Plate
49e28839f7
Convert ActionHandler to kotlin
2019-02-15 19:40:43 +03:00
Alex Plate
b2533565ad
Convert WriteQuiteHandler to kotlin
2019-02-15 19:27:07 +03:00
Alex Plate
a96a1730a1
Convert WritePreviousHandler to kotlin
2019-02-15 19:25:35 +03:00
Alex Plate
d027d7e099
Convert WriteNextHandler to kotlin
2019-02-15 19:23:56 +03:00
Alex Plate
cf5a5564ca
Convert WriteHandler to kotlin
2019-02-15 19:22:34 +03:00
Alex Plate
e183067257
Convert WriteAllHandler to kotlin
2019-02-15 19:21:10 +03:00
Alex Plate
7ab15f7f89
Convert UndoHandler to kotlin
2019-02-15 19:19:59 +03:00
Alex Plate
1a91f0cbcb
Convert SubstituteHandler to kotlin
2019-02-15 19:17:37 +03:00
Alex Plate
30241e0837
Convert SplitHandler to kotlin
2019-02-15 18:58:14 +03:00
Alex Plate
aea098b668
Convert SourceHandler to kotlin
2019-02-15 18:54:36 +03:00
Alex Plate
95a441b5b1
Merge pull request #175 from citizenmatt/VIM-1303
...
VIM-1303 Update UI when look and feel changes
2019-02-15 18:19:11 +03:00
Alex Plate
21b9b1d7f1
Convert ShiftRightHandler to kotlin, write tests for handler
2019-02-15 17:54:32 +03:00
Alex Plate
bd36a6d528
Convert ShiftLeftHandler to kotlin, write tests for handler
2019-02-15 17:48:26 +03:00
Alex Plate
aca77e1279
Convert ShellHandler to kotlin
2019-02-15 17:13:59 +03:00
Alex Plate
f7b604cb9b
Convert SetHandler to kotlin
2019-02-15 17:11:02 +03:00
Alex Plate
9c5cfd6bca
Convert SelectLastFileHandler to kotlin
2019-02-15 17:08:55 +03:00
Alex Plate
f657ecac6f
Convert SelectFirstFileHandler to kotlin
2019-02-15 17:06:54 +03:00
Alex Plate
69aaca33a5
Convert RedoHandler to kotlin
2019-02-15 17:04:35 +03:00
Alex Plate
08168a7877
Convert QuitHandler to kotlin
2019-02-15 17:02:57 +03:00
Alex Plate
9054f48f88
Convert PromptReplaceHandler to kotlin
2019-02-15 16:59:34 +03:00
Alex Plate
fbe6b5a3a3
Convert PromptFindHandler to kotlin
2019-02-15 16:55:45 +03:00
Alex Plate
8af5634431
Convert NoHLSearchHandler to kotlin
2019-02-14 18:08:44 +03:00
Alex Plate
1b61598149
Convert NextFileHandler to kotlin
2019-02-14 17:41:55 +03:00
Alex Plate
2cfc180df7
Convert MarkHandler to kotlin. Write tests for :mark command
2019-02-14 16:29:06 +03:00
Alex Plate
4d20e8fb28
Convert NextTab and PreviousTab handlers to kotlin
2019-02-14 15:50:35 +03:00
Alex Plate
276b19bf09
Merge pull request #132 from andreigasparovici/master
...
Added :tabn(ext) and :tabp(revious) functionality
VIM-801
2019-02-14 14:56:43 +03:00
Alex Plate
b0ebbdd7ff
Convert HelpHandler to kotlin
2019-02-14 14:35:32 +03:00
Alex Plate
5014de6d9d
Convert FileHandler to kotlin
2019-02-14 14:23:28 +03:00
Alex Plate
e0e51835b5
Create function for handler's flags definition
2019-02-14 13:23:02 +03:00
Alex Plate
7bccc2fbdb
Merge pull request #127 from vedran/master
...
Support end-of-line multi line percent match in visual mode
2019-02-14 13:14:56 +03:00
Alex Plate
c2da601722
Remove unused handler
2019-02-14 12:38:24 +03:00
Alex Plate
e8fea2e969
Convert DigraphHandler and EchoHandler to kotlin
2019-02-13 16:17:18 +03:00
Alex Plate
1fb93ea73d
Create kotlin-style command definition
2019-02-13 13:49:43 +03:00
Alex Plate
470f15fd3c
Convert ExitHandler and CommandName to kotlin
2019-02-12 20:47:59 +03:00
Alex Plate
99c6b4552a
Merge pull request #126 from durandom/offset_in_slash
...
Make offset work in normal search
2019-02-12 19:50:48 +03:00
Alex Plate
d69bf5d76f
Update changelog. Add John Grib to contributor list.
2019-02-12 18:55:01 +03:00
Alex Plate
ac484e36fa
Merge pull request #115 from johngrib/feature/add-command-shell
...
Added :shell command
2019-02-12 18:39:23 +03:00
Alex Plate
dc88cbd902
Change implementation of ExitHandler
...
Use file manager for file closing
Add tests for :qa commands
2019-02-12 17:33:18 +03:00
Alex Plate
582393a462
Fix :only command
2019-02-12 16:42:54 +03:00
Matt Ellis
0c1a08b231
VIM-1303 Update UI when look and feel changes
2019-02-07 08:54:41 +00:00
bradziolko
b88f13ee32
[VIM-1012] Support tab close preferences when using :q or :wq
2019-01-29 02:09:53 -06:00
Andrey Vlasovskikh
ff61a42670
Updated usages of obsolete APIs
2019-01-28 21:40:14 +03:00
Andrey Vlasovskikh
f160d855c0
Added missing nullity annotations
2019-01-28 21:38:37 +03:00
Andrey Vlasovskikh
51685a2094
Renamed attributes according to naming convention
2019-01-28 20:49:23 +03:00
Andrey Vlasovskikh
39aa60850d
Fixed inspection warnings
2019-01-28 20:41:56 +03:00
Andrey Vlasovskikh
872921e6b7
Reformat code
2019-01-28 20:39:45 +03:00
Andrey Vlasovskikh
89788df95c
Merge branch 'pull/173'
2019-01-28 20:38:03 +03:00
Andrey Vlasovskikh
00154f2b9f
Merge branch 'pull/170'
2019-01-27 16:48:05 +03:00
Matt Ellis
531a9c28ae
VIM-1558 Support block inlays
2019-01-25 12:31:42 +00:00
Tony Arra
63be2c28e9
Strip tag attributes from closing tag for Vim-Surround
2019-01-21 09:17:10 -05:00
Matt Ellis
56c4e3e31f
VIM-1187 Fix performance with large files and relative line numbers
2019-01-08 13:47:05 +00:00
Andrey Vlasovskikh
333a5be30b
Merge branch 'pull/162'
2018-12-31 18:05:38 +03:00
Andrey Vlasovskikh
6c9e697892
VIM-620 Fixed handling nested <C-O> & <Esc> in Insert and Replace modes
2018-12-31 18:01:15 +03:00
Andrew Potter
5e80e402ee
Get indent from PsiFile so formatting on shift is consistent
2018-11-02 12:54:55 -04:00
Alex Plate
5529bf284a
VIM-798 Arrow keys for window navigation commands
...
Add new mappings to allow window navigation with arrow keys:
- ^W-<left> as ^W-h
- ^W-<down> as ^W-j
- ^W-<up> as ^W-k
- ^W-<right> as ^W-l
2018-10-01 20:19:25 +03:00
Pierce Corcoran
9e2400de69
VIM-1473 Fix incorrect selection type for unnamed registers
...
Selection type for unnamed and unnamedplus will only be guessed when system clipboard is different from the internal register, and even then will never assume the text is a visual block selection.
2018-09-23 19:11:10 -07:00
Andrey Vlasovskikh
6506935d03
Merge branch 'vim-1274'
2018-09-21 19:31:40 +03:00
John Lin
b6be26231f
VIM-1274 Fix StringHelper.containsUpperCase behavior
...
StringHelper.containsUpperCase should return true when one of
the character of the input string satisfies the following two
conditions:
1. The character is upper case.
2. The character is not prefixed with a backslash.
Before this fix, the second condition was incorrectly written.
2018-09-17 11:53:23 +08:00
Andrey Vlasovskikh
173f570230
EA-108647 Check if the editor is disposed in invokeLater()
2018-09-14 18:19:37 +03:00
Andrey Vlasovskikh
57dcaba367
EA-89803 Fixed running IntelliJ write actions directly within Swing timer handler
...
We have to switch to a transaction with an appropriate modality state.
2018-09-14 18:08:45 +03:00
Andrey Vlasovskikh
d9f7955356
VIM-1366 Don't wrap secondary event loop for input() into write action
...
Extension handlers are now run without outer read / write actions and
they are required to synchronize access to the data structures of
IntelliJ by themselves.
2018-09-14 17:28:25 +03:00
Andrey Vlasovskikh
9cf264998f
VIM-1317 Don't run Undo/Redo inside write actions
...
They show UI dialogs, which is not allowed under a write action, and
they use their own write actions when needed.
2018-09-14 17:23:10 +03:00
Andrey Vlasovskikh
1feac95069
VIM-339 Handle <Esc> by Vim only in primary or physical file editors
...
<Esc> is handled by the Vim emulation in primary editors of the main
window and in non-primary editors with physical files open in them,
but only in modes other than Normal. This is needed for the diff dialog
where you can have both physical file editors and non-physical file
editors, but they are non-primary, so users still expect <Esc> to close
the diff window when the editor is in the Normal mode.
2018-09-10 14:45:22 +03:00
Andrey Vlasovskikh
ed3f87e6a8
VIM-176 Treat console editors like any other editors
...
If an editor is a writable non-file editor (like a console), then we
activate the 'i' mode *and* allow running write commands. Thus,
Insert mode commands like arrow navigation will work in these editors.
2018-09-08 19:20:53 +03:00
Andrey Vlasovskikh
cc76c7f0f3
Merge pull request #156 from karavaevitalii/multiple-carets
...
Fixed bug with selecting occurrences when ignorecase is set
2018-08-27 21:55:06 +03:00
Vitalii Karavaev
57741cd5ce
Fixed bug with selecting occurrences when ignorecase is set
2018-08-27 21:23:25 +03:00
Andrey Vlasovskikh
23fa55ea11
Updated the list of all supported commands
...
Removed the multiple carets support marker, since all commands are
basically covered now. We'll handle any bugs left in the same way we
do it for other bugs.
2018-08-27 20:50:07 +03:00
Vitalii Karavaev
0a052e7bb3
Cleanup
2018-08-10 18:18:43 +03:00
Vitalii Karavaev
60a96e9542
Cleanup
2018-08-10 17:32:30 +03:00
Vitalii Karavaev
f3f9abef0c
<A-x> shows no more matches message when necessary
2018-08-10 17:06:10 +03:00
Vitalii Karavaev
58fc34d9f7
Implement <A-x>
2018-08-10 17:01:36 +03:00
Vitalii Karavaev
6fdd769d0f
Implement <A-p>
2018-08-10 16:43:46 +03:00
Vitalii Karavaev
b54384bb33
Implement <Plug>All<Whole>Occurrences
2018-08-10 16:31:48 +03:00
Vitalii Karavaev
c57f98591a
Revert MultipleCursorsExtension and implement <A-n>
2018-08-10 14:08:25 +03:00
Vitalii Karavaev
7dcacd3b01
Minor fixes
2018-08-09 17:45:56 +03:00
Vitalii Karavaev
2225033b7c
Reset state and additional checks
2018-08-09 17:32:32 +03:00
Vitalii Karavaev
7c5194fbaa
Better work in case of multiple carets
2018-08-09 14:55:22 +03:00
Vitalii Karavaev
361284fe06
Fixed <A-n> in visual mode
2018-08-09 14:25:29 +03:00
Vitalii Karavaev
aa3e55cacc
Fixed bug with multiple carets <A-n> action
2018-08-09 13:54:31 +03:00
Vitalii Karavaev
73987eaf23
Safer work in case of multiple carets
2018-08-09 12:47:40 +03:00
Vitalii Karavaev
06058a45c0
Fixed review issues and README.md updated
2018-08-09 12:35:08 +03:00
Vitalii Karavaev
d46cab6fc8
Fixed review issues
2018-08-09 11:18:39 +03:00
Vitalii Karavaev
77bd800d95
private modifier
2018-08-08 16:11:55 +03:00
Vitalii Karavaev
831373c292
Cleanup
2018-08-08 15:59:44 +03:00
Vitalii Karavaev
346ada2eff
Blank lines
2018-08-08 15:45:56 +03:00
Vitalii Karavaev
485ff37b22
Better work with nulls
2018-08-08 15:38:33 +03:00
Vitalii Karavaev
47ef6f4844
Show message when no more matches
2018-08-08 15:19:03 +03:00
Vitalii Karavaev
cd288ec125
Support for selection all occurrences
2018-08-08 15:16:13 +03:00
Vitalii Karavaev
bde2eb786d
g<A-n> support
2018-08-08 14:38:33 +03:00
Vitalii Karavaev
b6896e28c8
Better support for vim-multiple-cursors extension
2018-08-08 13:57:16 +03:00
Vitalii Karavaev
15dc233a86
Overlap carets when jump to mark
2018-08-08 10:20:15 +03:00
Vitalii Karavaev
b070549eca
Remove gn action
2018-08-07 17:42:18 +03:00
Vitalii Karavaev
71a3df028b
Fixed review issues
2018-08-07 17:37:11 +03:00
Vitalii Karavaev
73ef8c821b
Minor review issues
2018-08-07 16:47:18 +03:00
Vitalii Karavaev
bbd314b6df
Test :s///
2018-08-07 15:05:46 +03:00
Vitalii Karavaev
5764fe7555
Multiple carets support for :@
2018-08-07 14:54:42 +03:00
Vitalii Karavaev
44cc17cb84
Multiple carets support for :s///
2018-08-07 14:53:10 +03:00
Vitalii Karavaev
dba8879576
Formatted lines
2018-08-07 10:29:56 +03:00
Vitalii Karavaev
1deb48bf60
Fixed broken tests
2018-08-07 10:28:37 +03:00
Vitalii Karavaev
bd35f71c6a
:sor multicaret support
2018-08-07 10:17:47 +03:00
Vitalii Karavaev
d29ae6a64d
:> fix bug and multiple carets support
2018-08-06 16:01:39 +03:00
Vitalii Karavaev
5b69b9beae
:< fix bug and multiple carets support
2018-08-06 15:55:47 +03:00
Vitalii Karavaev
0c78741642
Warnings
2018-08-06 15:54:58 +03:00
Vitalii Karavaev
a9440f41a7
Support skip and remove for vim-multiple-cursors emulation
2018-08-06 15:18:05 +03:00
Vitalii Karavaev
8fc4306d76
:d support
2018-08-06 13:42:21 +03:00
Vitalii Karavaev
371d7385ed
Vim Multiple Cursors extension prototype
2018-08-06 12:14:50 +03:00
Vitalii Karavaev
2cacdbaf00
Minor
2018-08-06 10:24:09 +03:00
Vitalii Karavaev
3041fe7c3b
Rename VisualSelectNextOccurrence to VimSelectNextOccurrence
2018-08-06 09:45:49 +03:00
Vitalii Karavaev
67a9e1f8c5
Remove support for ex commands with visual selection and multiple carets support for :y
2018-08-03 17:30:44 +03:00
Vitalii Karavaev
fc0a950af1
Cleanup
2018-08-03 14:35:23 +03:00
Vitalii Karavaev
e1872387d4
Shortcut for caret adding prototype
2018-08-03 14:08:06 +03:00
Vitalii Karavaev
ac10b96280
Better work with nullable carets
2018-08-03 11:15:17 +03:00
Vitalii Karavaev
d5313ebbda
Remove warnings
2018-08-02 18:09:36 +03:00
Vitalii Karavaev
c3d1e5c58c
Remove warnings
2018-08-02 17:26:08 +03:00
Vitalii Karavaev
478c0cd443
Replace block of code with function call
2018-08-02 17:20:29 +03:00
Vitalii Karavaev
2be2d861c9
Update action for [p and update package-info
2018-08-02 12:04:56 +03:00
Vitalii Karavaev
9731980fe6
Fixed incompatibility wit goto mark action and preparing to remove inconsistency between yank and delete
2018-08-02 11:57:06 +03:00
Vitalii Karavaev
392f8e5e60
Fix goto mark actions
2018-08-02 11:54:16 +03:00
Vitalii Karavaev
a7e1275b5f
Remove redundant null check
2018-08-01 14:19:55 +03:00
Vitalii Karavaev
29a6d47cca
Correct annotation
2018-08-01 14:18:04 +03:00
Vitalii Karavaev
65483dd34a
Correct Javadoc
2018-08-01 14:12:08 +03:00
Vitalii Karavaev
3b290fe356
Add tests and fix bug for CopyGroup
2018-08-01 13:59:05 +03:00
Vitalii Karavaev
2648913b61
Corrected review issues
2018-08-01 10:55:54 +03:00
Vitalii Karavaev
d386e49bd5
Simplify logic and remove unused logger
2018-08-01 10:42:31 +03:00
Vitalii Karavaev
c1b4671435
Multiple carets support for :m
2018-07-31 16:37:47 +03:00
Vitalii Karavaev
cbeb0d229b
Remove todo
2018-07-31 10:49:35 +03:00
Vitalii Karavaev
0c5ca37412
Multiple carets support for :pu command
2018-07-31 10:41:45 +03:00
Vitalii Karavaev
602071a440
Remove warning
2018-07-30 17:50:17 +03:00
Vitalii Karavaev
7061b58940
Remove warnings
2018-07-30 17:44:25 +03:00
Vitalii Karavaev
76c2c54e5a
Remove unnecessary comments
2018-07-30 15:50:26 +03:00
Vitalii Karavaev
ffcf7d0630
Multiple carets support for :co
2018-07-30 15:42:20 +03:00
Vitalii Karavaev
40d0f6c1e2
Multiple carets support for join lines via :j
2018-07-30 15:05:41 +03:00
Vitalii Karavaev
bddd4db2b2
Uncertainty
2018-07-30 15:04:19 +03:00
Vitalii Karavaev
7ee18e81c7
Remove unused function
2018-07-30 10:56:50 +03:00
Vitalii Karavaev
700240d441
Remove warnings
2018-07-26 15:24:34 +03:00
Vitalii Karavaev
539d38259c
Remove TODO
2018-07-26 15:17:29 +03:00
Vitalii Karavaev
2efb0dfb17
Multicaret support for go to line
2018-07-26 14:52:40 +03:00
Vitalii Karavaev
947d32d905
Multiple carets support for :go command
2018-07-26 13:55:51 +03:00
Vitalii Karavaev
56569966a6
Preparing for multicaret support for ex commands
2018-07-26 13:55:24 +03:00
Vitalii Karavaev
6092535041
Remove some warnings
2018-07-26 11:46:14 +03:00
Vitalii Karavaev
44a53ce28e
Fix bug with overlapping carets
2018-07-26 11:33:32 +03:00
Vitalii Karavaev
a228f32f34
Remove possible NPE
2018-07-26 11:01:04 +03:00
Vitalii Karavaev
2082981bd6
Permute parameters
2018-07-26 10:28:41 +03:00
Vitalii Karavaev
3c59ee79f6
Refactoring and TODO
2018-07-25 16:47:00 +03:00
Vitalii Karavaev
b3ebd7c29d
Fix caret order for different put cases
2018-07-25 14:53:28 +03:00
Vitalii Karavaev
76a5c39fdc
Remove warnings and fixed null handling
2018-07-25 11:24:22 +03:00
Vitalii Karavaev
f4ec448d75
Add constants and remove TODO
2018-07-25 11:06:54 +03:00
Vitalii Karavaev
e38390f8a1
Codestyle
2018-07-25 10:59:12 +03:00
Vitalii Karavaev
2990389ea5
Codestyle
2018-07-25 10:50:03 +03:00
Vitalii Karavaev
249dfb166d
Change if/else block to switch
2018-07-25 10:03:20 +03:00
Vitalii Karavaev
4c06d21396
Proper marks in case of put [count]
2018-07-25 09:57:56 +03:00
Vitalii Karavaev
a046f2975f
Remove TODO: use tabs as needed
2018-07-24 11:51:52 +03:00
Vitalii Karavaev
0bf217ef36
Pair.NonNull instead of Pair
2018-07-24 10:12:19 +03:00
Vitalii Karavaev
f2712d8cfb
Pair.create instead of constructor call
2018-07-23 18:14:59 +03:00
Vitalii Karavaev
bb32e7adb4
Multiple carets support for put visual text
2018-07-23 16:33:04 +03:00
Vitalii Karavaev
cadaec585b
Minor fixes
2018-07-23 13:25:55 +03:00
Vitalii Karavaev
11c2f5014f
Fixed bug yank blockwise
2018-07-23 12:50:58 +03:00
Vitalii Karavaev
2326489658
Multiple carets support for yank visual
2018-07-23 12:39:31 +03:00
Vitalii Karavaev
01ec08e20b
Multiple carets support for going to character/line in command mode
2018-07-20 14:16:18 +03:00
Vitalii Karavaev
69ebcc17e9
Put text bug fixed
2018-07-20 14:15:27 +03:00
Vitalii Karavaev
b86bdd7847
Explicitly passing carets to some methods and cleanup
2018-07-20 11:53:50 +03:00
Vitalii Karavaev
fbd7409851
Moved putText to single method and better work with multicaret insertion
2018-07-20 11:25:53 +03:00
Vitalii Karavaev
0773c886ee
Fixed bug with put blockwise text. Properly this time
2018-07-19 18:00:14 +03:00
Vitalii Karavaev
d05c7268d9
Fixed bug with put blockwise text
2018-07-19 17:44:11 +03:00
Vitalii Karavaev
80d0748edd
minor
2018-07-19 17:15:42 +03:00
Vitalii Karavaev
fcbf228d35
Proper indent after yank commands
2018-07-19 16:53:22 +03:00
Vitalii Karavaev
34feb27bef
Yank commands and tests
2018-07-19 16:11:28 +03:00
Vitalii Karavaev
60917433d2
Update package-info
2018-07-19 11:22:36 +03:00
Vitalii Karavaev
dd59e0704a
Update package-info
2018-07-19 11:18:57 +03:00
Vitalii Karavaev
d4bf472291
Refactoring
2018-07-19 11:07:56 +03:00
Vitalii Karavaev
039b650953
Remove redundant caret passing
2018-07-19 11:06:31 +03:00
Vitalii Karavaev
49590c831f
PutTextAfterCursorAction implemented
2018-07-18 15:39:06 +03:00
Vitalii Karavaev
9aed0ce621
Revert CopyGroup and implement putTextBeforeCursor action
2018-07-18 12:27:37 +03:00
Vitalii Karavaev
9b653a7c63
Fix visual block insert/append
2018-07-18 10:38:16 +03:00
Vitalii Karavaev
bb0094038a
Remove unnecessary caret passing in some cases and started to simplify ChangeGroup methods
2018-07-17 15:59:01 +03:00
Vitalii Karavaev
ae55f5d605
Multicaret support for yank visual range
2018-07-16 14:41:48 +03:00
Vitalii Karavaev
81ca21517a
Update package-info
2018-07-16 14:41:27 +03:00
Vitalii Karavaev
24a4167296
Multicaret support for yank motion
2018-07-16 13:59:19 +03:00
Vitalii Karavaev
3ffd967b00
Update package-info
2018-07-16 13:41:50 +03:00
Vitalii Karavaev
a2a1f4806a
Multicaret support for yank lines
2018-07-16 13:39:16 +03:00
Vitalii Karavaev
6b56d7d1cd
Remove redundant code
2018-07-16 12:06:21 +03:00
Vitalii Karavaev
b5a802bf30
Update package-info
2018-07-16 11:58:39 +03:00
Vitalii Karavaev
b4586779b3
Remove unused function
2018-07-16 11:34:43 +03:00
Vitalii Karavaev
d92d5a1b33
Remove unused functions
2018-07-16 11:32:59 +03:00
Vitalii Karavaev
52ec080343
Remove unused function
2018-07-16 11:31:38 +03:00
Vitalii Karavaev
5bff61c2ee
Discard redundant changes
2018-07-16 11:23:48 +03:00
Vitalii Karavaev
c12b713543
Remove unused methods and fix bug
2018-07-16 11:19:00 +03:00
Vitalii Karavaev
7bafa0f8c8
Fix broken going to [count] line end.
2018-07-16 11:16:43 +03:00
Vitalii Karavaev
a47cdb9f35
Remove unnecessary throws clause
2018-07-16 11:15:24 +03:00
Vitalii Karavaev
bd9ac3b031
Pull check if caret is not null up in base class
2018-07-16 11:14:29 +03:00
Vitalii Karavaev
22ad45cd58
Fixed expression with both pure and side-effects and inline unnecessary function call
2018-07-16 11:12:53 +03:00
Vitalii Karavaev
58e0b7704b
Remove unused method
2018-07-16 10:30:19 +03:00
Vitalii Karavaev
b78854b8de
Remove unnecessary function calls and properly handle multicaret jump to mark
2018-07-16 10:29:12 +03:00
Vitalii Karavaev
ae61ed456f
Multiple carets support for put text instead of visual block
2018-07-12 17:32:50 +03:00
Vitalii Karavaev
bdc1103641
Proper indents
2018-07-12 15:45:47 +03:00
Vitalii Karavaev
689d19759d
Remove indent in pasting text where necessary
2018-07-12 15:44:52 +03:00
Vitalii Karavaev
064d3765c0
Multiple carets support for auto indent and refactoring
2018-07-12 14:29:12 +03:00
Vitalii Karavaev
861028ef5c
Proper code style
2018-07-12 12:20:03 +03:00
Vitalii Karavaev
75f88c539c
Multiple carets support for putting text without indent
2018-07-12 10:20:31 +03:00
Vitalii Karavaev
1109650fde
Multiple carets support for put text
2018-07-12 10:06:11 +03:00
Vitalii Karavaev
704f8d7e9d
Proper indent in visual mode changes
2018-07-10 15:37:06 +03:00
Vitalii Karavaev
4a2c3d9098
Inserting new line for particular caret bug fixed
2018-07-10 14:22:32 +03:00
Vitalii Karavaev
d21b04acb5
Better multiple carets handling in some cases and cleanup
2018-07-10 13:38:17 +03:00
Vitalii Karavaev
5403336c78
Minor code cleanup
2018-07-09 16:09:54 +03:00
Vitalii Karavaev
def6d2bd5b
Change behaviour when inserting previously inserted text
2018-07-09 14:53:54 +03:00
Vitalii Karavaev
04db2764c1
Better insertion after line end
2018-07-09 14:47:24 +03:00
Vitalii Karavaev
0e9b2250bd
Multiple carets support for inserting after line end
2018-07-09 14:38:42 +03:00
Vitalii Karavaev
654d345d78
Fix bug in insertion previously inserted text
2018-07-09 11:05:59 +03:00
Vitalii Karavaev
99e379392b
Fix typo
2018-07-09 09:54:41 +03:00
Vitalii Karavaev
1debd99701
Multiple carets support for jumping to older/newer cursor position in jump list
2018-07-06 17:03:48 +03:00
Vitalii Karavaev
a099070c79
Multiple carets support for moving caret to the middle column
2018-07-06 15:22:52 +03:00
Vitalii Karavaev
0a09b8bd5a
Multiple carets support for motion to first non-blank character of the screen line
2018-07-06 15:09:56 +03:00
Vitalii Karavaev
b3750dd24d
Multiple carets support for motion to first/last screen column
2018-07-06 14:59:13 +03:00
Vitalii Karavaev
db1b0c2516
Multiple carets support for searching substrings
2018-07-06 14:32:19 +03:00
Vitalii Karavaev
fc6208b95d
Goto first line bug fixed
2018-07-06 14:17:43 +03:00
Vitalii Karavaev
e68d3eac7d
Multiple carets support for repeating latest search
2018-07-06 12:41:48 +03:00
Vitalii Karavaev
d093b446c2
Multiple carets support for going to [count] line from bottom of window
2018-07-06 12:19:21 +03:00
Vitalii Karavaev
be839051d5
Multiple carets support for going to [count] line from bottom of window
2018-07-06 12:07:16 +03:00
Vitalii Karavaev
8937068b5f
Multiple carets support for going to [count] line from top of window
2018-07-06 11:58:21 +03:00
Vitalii Karavaev
3f82020100
Multiple carets support for going to line
2018-07-06 11:39:57 +03:00
Vitalii Karavaev
63ee6bbc56
Multiple carets support for searching entry in reversed direction
2018-07-05 17:40:23 +03:00
Vitalii Karavaev
7046680765
Multiple carets support for searching entry in forward direction
2018-07-05 17:35:54 +03:00
Vitalii Karavaev
c17334f17f
Multiple carets support for jumping on mark line
2018-07-05 17:13:01 +03:00
Vitalii Karavaev
ecd40231a5
Multiple carets support for jumping to mark added
2018-07-05 16:52:32 +03:00
Vitalii Karavaev
9b751da31c
Multiple carets support for matching items
2018-07-04 17:48:34 +03:00
Vitalii Karavaev
f3d168f19f
Multiple carets support for searching whole word
2018-07-04 16:08:37 +03:00
Vitalii Karavaev
4f4d9fda0b
Multiple carets support for moving cursor after last char in the file
2018-07-04 15:10:32 +03:00
Vitalii Karavaev
f4bb745519
Multiple carets support for moving cursor to the first char in the file
2018-07-04 14:41:17 +03:00
Vitalii Karavaev
a03258999a
Multiple carets support for deleting the word before cursor in insert mode
2018-07-04 12:31:29 +03:00
Vitalii Karavaev
39b166b87f
Multiple caret support for insert previously inserted text and stop inserting added
2018-07-04 10:19:17 +03:00
Vitalii Karavaev
4952ddc494
Multiple carets support for inserting previously inserted text
2018-07-03 15:49:03 +03:00
Vitalii Karavaev
8ffc9b6581
Simple case for insert previous inserted text implemented
2018-07-02 17:46:17 +03:00
Andrey Vlasovskikh
f0be6581b2
Merge branch 'master' into multiple-carets
...
# Conflicts:
# src/com/maddyhome/idea/vim/action/motion/object/MotionInnerBlockTagAction.java
# src/com/maddyhome/idea/vim/action/motion/object/MotionOuterBlockTagAction.java
# src/com/maddyhome/idea/vim/group/MotionGroup.java
# src/com/maddyhome/idea/vim/helper/SearchHelper.java
2018-06-29 12:39:39 +03:00
Andrey Vlasovskikh
ef470bd890
Merge branch 'FIX-VIM-1287'
2018-06-28 16:09:47 +03:00
Andrey Vlasovskikh
dca4b0a399
VIM-1287 Removed redundant code
2018-06-28 16:08:55 +03:00
Andrey Vlasovskikh
7f897440b7
Merge remote-tracking branch 'jpalus/master'
2018-06-04 16:05:10 +03:00
Andrey Vlasovskikh
5b21074b9d
Merge remote-tracking branch 'jpalus/VIM-1431'
2018-06-04 16:01:42 +03:00
Jan Palus
50b2093548
generalize check on offset boundaries
2018-06-02 15:09:28 +02:00
Andrey Vlasovskikh
bc5ca28b13
Fixed API incompatibility
2018-05-30 22:26:50 +03:00
Andrey Vlasovskikh
3eed987488
Fixed code inspection warnings in FileGroup
2018-05-30 21:51:20 +03:00
Andrey Vlasovskikh
6f633700ae
Removed deprecated API usages
2018-05-30 21:27:57 +03:00
Andrey Vlasovskikh
a7670829d5
Fixed NPE
2018-05-30 21:27:01 +03:00
Andrey Vlasovskikh
6fb8817391
Code style
2018-05-30 21:24:02 +03:00
Jan Palus
e90b7276cb
VIM-1431 handle empty documents when checking if line is empty
...
Signed-off-by: Jan Palus <jpalus@fastmail.com>
2018-05-29 23:08:40 +02:00
Andrey Vlasovskikh
a1ba5fec2b
Updated the index of supported and not supported commands
2018-05-29 22:45:04 +03:00
Andrey Vlasovskikh
6606211233
Incomplete commands index with the current status of multi-caret support
2018-05-29 20:08:32 +03:00
Andrey Vlasovskikh
b1daacc9fb
Added TODO items for unused actions
2018-05-29 20:04:23 +03:00
Jan Palus
03fe7d9ea2
VIM-1427 add count support to tag motion
2018-05-29 00:45:44 +02:00
Vasily Alferov
2d3da163a8
Attempt to fix Visual Block down movements
2018-05-26 21:52:57 +03:00
Vasily Alferov
49c59764ac
Merge in change.insert actions
2018-05-26 20:17:12 +03:00
Vasily Alferov
06cc59b7a3
Got rid of deprecated overrides in EditorActionHandlerBase
2018-05-26 19:47:47 +03:00
Vasily Alferov
7754080323
Various fixes
2018-05-25 11:45:11 +03:00
Vasily Alferov
ebf081e273
Multicaret shift
2018-05-22 22:51:49 +03:00
Vasily Alferov
258467467b
Multicaret insert
2018-05-22 22:02:26 +03:00
Vasily Alferov
4f468cace7
Multicaret change.change
2018-05-22 00:16:58 +03:00
Vasily Alferov
9ddedbe752
Multicaret delete visual operator actions
2018-05-21 19:08:40 +03:00
Vasily Alferov
63b237114a
Multicaret version for VisualOperatorActionHandler
2018-05-21 17:05:38 +03:00
Vasily Alferov
29c789dcf3
Implementations of all of the delete actions whose handlers doesn't override VisualOperatorActionHandler.
2018-05-20 13:55:33 +03:00
Vasily Alferov
59e2ae552e
ChangeEditorActionHandler multicaret version and multicaret delete tests
2018-05-12 21:24:28 +03:00
Vasily Alferov
422557d4ce
Cosmetical changes
2018-05-12 19:01:01 +03:00
Vasily Alferov
0919e9d560
Multicaret merging selections & text objects
2018-05-12 17:08:19 +03:00
Vasily Alferov
13c475d73c
Fix multiple carets movement in case i<ESC>i<ESC>
2018-05-05 12:01:00 +03:00
Vasily Alferov
3b46e44e4f
action.motion.text.* multicaret tests and implementation
2018-04-27 20:24:26 +03:00
Vasily Alferov
a75db02d05
Fix failed tests on Visual Block Mode.
2018-04-24 22:17:10 +03:00
Vasily Alferov
4698f1be5c
Reformat code with IntellIJ IDEA tool.
2018-04-16 16:11:53 +03:00
Vasily Alferov
1db103e352
Basic multicaret up-down motions.
...
+ Create a class for caret-specific data and move LAST_COLUMN getter/setter there.
2018-04-16 16:05:52 +03:00
Vasily Alferov
5037a1182f
Fix unused imports
2018-03-29 17:21:30 +05:30
Vasily Alferov
4d46000ec6
Write most of multicaret leftright actions.
...
MotionColumnAction, MotionFirstColumnAction, MotionFirstNonSpaceAction, MotionLastColumnAction, MostionLastMatchCharAction, MotionLastMatchCharReverseAction, MotionLastNonSpaceAction, MotionLeftAction, MotionLeftMatchCharAction, MotionLeftTillMatchCharAction, MotionRightAction, MotionRightMatchCharAction, MotionRightTillMatchCharAction now have their own native multi-caret implementations.
2018-03-29 10:18:35 +05:30
Vasily Alferov
56ad6b4c0d
Multi-caret basic leftright motions.
...
Add basic multi-caret interfaces (i.e. deprecated and new functions to EditorActionHandlerBase) and overloaded them in MotionLeftAction and MotionRightAction.
2018-03-21 17:13:57 +03:00
Florian Hassmann
ab750b6e75
Fixes #VIM-1404.
2018-01-29 12:22:15 +01:00
Andrey Vlasovskikh
44a4a858fe
IDEA-184351 Check if project is disposed before setting editor line numbers
...
Setting line numbers requires re-initializing the editor that means
accessing project code style settings. If the project has been disposed
then this operation is illegal.
2017-12-29 11:34:56 +03:00
Andrey Vlasovskikh
dbdc15f21f
Merge branch 'cypok/vim-1380'
2017-12-29 10:29:34 +03:00
Andrey Vlasovskikh
1a8c72d721
Merge branch 'cypok/vim-1379'
2017-12-29 10:19:08 +03:00
Andrey Vlasovskikh
b7273bc4f2
VIM-1379 Added check for empty ranges
2017-12-29 10:09:09 +03:00
qzed
b98427472f
VIM-1110 Fix caret jumping after escape from block-insert mode
2017-12-28 15:53:02 +03:00
Andrey Vlasovskikh
bf42822626
VIM-862 Keep selected text after running possibly async IDE action
...
E.g. `:action ReformatCode` is run asynchronously in another thread, so
we used to exit the visual mode (and thus dropped the selection) before
it was run.
2017-12-27 19:00:42 +03:00
Andrey Vlasovskikh
2c99da538e
VIM-1329 Use default modality state to run actions after focus settles down
2017-12-18 00:54:52 +03:00
Andrey Vlasovskikh
1393e60ca8
VIM-862 Properly apply and reset visual mode for running visual :action commands
...
Also fixed minor formatting and Java 8 issues.
2017-12-18 00:53:56 +03:00
Andrey Vlasovskikh
2e67c704f7
VIM-862 Fixed off-by-1 in restoring visual character selection after 'gv'
2017-12-18 00:52:29 +03:00
Andrey Vlasovskikh
c0410131bf
Merge remote-tracking branch 'ikenox/feature/action-in-visual-mode'
2017-12-15 01:37:40 +03:00
Andrey Vlasovskikh
473a305e5f
Use SecondaryLoop of JDK 8
...
The current version of IdeaVim is compatible with IntelliJ 2017.1+
which has switched to Java 8+, so we no longer need compatibility
layers for earlier versions.
2017-12-15 01:25:58 +03:00
Andrey Vlasovskikh
bd84babecd
Converted UiHelper into Kotlin
2017-12-14 03:26:01 +03:00
Andrey Vlasovskikh
1b83231b1c
VIM-1329 Use IntelliJ API to request focus reliably
2017-12-14 00:29:11 +03:00
Andrey Vlasovskikh
f39ad34057
VIM-1368 Use IntelliJ API to run stuff after the current component gets focus
2017-12-14 00:28:02 +03:00
Vladimir Parfinenko
52d26f9fb6
VIM-1380 Fixed 'cNw' at the last character of a word
...
Bug was introduced while fixing VIM-200
2017-11-20 11:37:42 +07:00
Naoto Ikeno
b7d124ce8d
Make :action
commands work in visual mode
2017-11-19 20:06:02 +09:00
Vladimir Parfinenko
6a5c70ee6a
VIM-1379 Fix usage TextRange.size() as lines count
...
TextRange.size() should be used only for iterating over starts/ends
2017-11-19 13:49:12 +07:00
Andrey Vlasovskikh
a76b41b737
VIM-1367 Fixed resetting the default value
...
The previous fix tried to parse the current value instead of the default
one.
2017-11-03 05:00:29 +03:00
Andrey Vlasovskikh
2fc6553203
VIM-1367 Correctly reset parsed and stored 'iskeyword' option value
2017-11-03 04:26:46 +03:00
Andrey Vlasovskikh
98b003e601
VIM-1367 Deterministic order of options for reproducible tests
2017-11-03 04:23:29 +03:00
Andrey Vlasovskikh
6245b15d8f
Cleanup
2017-11-03 03:48:15 +03:00
Andrey Vlasovskikh
ab1d7ba6cb
VIM-1367 Removed unnecessary repetition in positive lookbehind
...
It resulted in an inspection warning that positive lookbehind groups
cannot contain 1 or more repetition patterns.
2017-11-03 03:34:11 +03:00
nickgieschen
ef05491991
VIM-1367 Implement iskeyword
...
(cherry picked from commit d91d38c)
2017-11-03 03:22:39 +03:00
tieTYT
57b5b319a7
VIM-523 Fixed global mark remembering only the line number
...
Bear with me as this is the first thing I've ever done with
Intellij-IDEA plugin development.
I tested this and I believe I fixed the problem. The cause of the
problem was that the code was checking if the mark was in a different
file but if it was, it was using the editor of the current file to go
to the line of the mark. I changed the code so that it opens the file
of the mark first, then jumps to its line number.
I need a VirtualFile so that I can get the Editor to open. The Mark
stores the path of the file it's in, but the path is not enough
information to get a VirtualFile. I also need the "protocol" of the
file. So, I had to change the structure of the Mark and add a
"protocol" field to it.
I had to update the save/load logic to use this new field, too. This
way, when you restart Intellij-IDEA, the marks can still be used. For
old marks, I defaulted the "protocol" to the value of "file".
One thing I couldn't figure out how to do is add a test case to check
that this is working correctly. This is not due to a lack of effort.
In fact, I tried to write the test case first. But I have been unable
to find any examples anywhere of testing multiple Editors, and that's
what's involved to fix this issue. Because of this, this issue may be
best used as a reference to fix the problem instead of worthy of being
used in production. Either way, I'd love to know how to write such a
test.
2017-11-01 02:35:23 +03:00
Andrei Gasparovici
82dfcdd5df
Added :tabn(ew) and :tabp(revious) functionality
2017-08-18 11:38:52 +03:00
Konstantin Petrov
e97c49a032
Fix search for braces inside quotes the way vim does
2017-05-31 10:27:48 +02:00
Vedran Budimcic
44b9946bb0
Support end-of-line multi line percent match in visual mode
2017-03-24 07:12:28 -07:00
Marcel Hild
6efd4023fd
make offset work in normal search
2017-03-23 11:33:08 +01:00
Andrey Vlasovskikh
a882e37d04
Merge remote-tracking branch 'origin/vim-1007'
...
# Conflicts:
# gradle.properties
# resources/META-INF/plugin.xml
# src/com/maddyhome/idea/vim/VimTypedActionHandler.java
2017-01-16 00:57:31 +03:00
Andrey Vlasovskikh
120b69c439
Fixed source API compatibility with branch 171
2017-01-15 23:22:40 +03:00
Andrey Vlasovskikh
a5e303d1ca
Merge pull request #121 from gaganis/VIM-1216
...
Fixed . reseting the last find movement
2016-11-29 00:35:40 +03:00
Giorgos Gaganis
c4d8cef44d
Fixed . reseting the last find movement where repeating change that also uses movement.
...
On the original vim when we repeat a change with . that also contain an find movement the last find that was typed before the repeat is the one used by the motion repeat ;. Before the commit the plugin would have reset the last movement to use the movement contained in the command that was repeated.
To solve this I took a simple approach where I save the last find motion before starting the repeat and then restoring it to its original value after the repeat is over. In order to access the find motion fields from RepeatChangeAction I created getters in MotionGroup for the movement type and character.
modified: src/com/maddyhome/idea/vim/action/change/RepeatChangeAction.java
modified: src/com/maddyhome/idea/vim/group/MotionGroup.java
modified: test/org/jetbrains/plugins/ideavim/action/ChangeActionTest.java
2016-11-28 19:05:11 +02:00
Andrey Vlasovskikh
72fbe758b4
VIM-1205 Don't move key handling into separate event for raw handlers
2016-11-22 21:58:32 +03:00
Pavel Fatin
6b9ab7163a
Support for zero-latency rendering, #VIM-1007 fixed
2016-10-26 12:53:13 +02:00
Andrey Vlasovskikh
563092cffb
Fixed caret model exception when changing selection in documents open in several editors
2016-10-21 18:11:15 +03:00
Andrey Vlasovskikh
f33f73d2f5
VIM-1190 Fixed exception "Write access is allowed from write-safe contexts only"
...
We now use IntelliJ's version of invokeLater() in order to satisfy the
new protocol for running read-write actions in modal dialogs.
2016-09-30 20:44:16 +03:00
Andrey Vlasovskikh
b595dfd443
VIM-1098 Don't start visual selection when mouse click was actually drag over single character
2016-09-01 20:50:55 +03:00
Andrey Vlasovskikh
364b3567fc
VIM-1126 Fixed warning about modifying shortcuts of global actions for 2016.2
2016-07-07 17:39:29 +03:00
John Grib
b5ea2127d9
added :shell command
2016-06-17 15:03:38 +09:00
Andrey Vlasovskikh
9522a51dc7
Enabling key repeat on Mac OS X doesn't require restart
2016-04-29 21:52:35 +03:00
Andrey Vlasovskikh
0bf561e326
Merge remote-tracking branch 'pbu88/adds_more_folding_commands'
2016-04-29 21:34:19 +03:00
Andrey Vlasovskikh
3fde0fc209
Non-public methods made private
2016-04-29 21:19:17 +03:00
Andrey Vlasovskikh
24bc09796f
Fixed NPE
2016-04-29 21:18:28 +03:00
Andrey Vlasovskikh
758bff79d6
Removed unused code
2016-04-29 21:16:05 +03:00
Andrey Vlasovskikh
3b0660799b
VIM-843 Don't highlight search results after restart
...
Added limited support for 'viminfo' option. Only 'h' in 'viminfo' is
taken into account.
2016-04-29 21:15:01 +03:00
Andrey Vlasovskikh
6880afa73c
VIM-139 Focus on current search and use modal confirmation for ':s///gc'
2016-04-29 01:33:28 +03:00
Andrey Vlasovskikh
8ee49edef0
VIM-287 Fixed insert new line before and after folds
2016-04-28 20:13:08 +03:00
Andrey Vlasovskikh
dd0a7207d5
Removed old block selection API usages to become compatible with IntelliJ branch 146
2016-04-22 03:22:02 +03:00
Andrey Vlasovskikh
c471ddd12f
Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-259'
2016-04-18 02:47:38 +03:00
Andrey Vlasovskikh
b0ac8f89c5
Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-964'
2016-04-18 02:41:35 +03:00
Andrey Vlasovskikh
a47338d8b7
Merge remote-tracking branch 'ayzenquwe/ayzen/VIM-564'
2016-04-18 02:36:58 +03:00
Andrey Vlasovskikh
76d00ab47f
Merge remote-tracking branch 'ayzenquwe/ayzen/gomethod'
2016-04-18 02:31:11 +03:00
Andrey Vlasovskikh
52148f69c1
Merge remote-tracking branch 'ayzenquwe/ayzen/registers'
2016-04-18 02:24:00 +03:00
Andrey Vlasovskikh
f280f8138d
Support <Plug> in mapping commands
2016-04-18 01:46:46 +03:00
Andrey Vlasovskikh
530846bc7a
Added 'timeout' option for toggling timeout for mapping commands
2016-04-18 01:46:46 +03:00
Andrey Vlasovskikh
745a356c87
Cleanup
2016-02-21 07:08:21 +03:00
Andrey Vlasovskikh
b16a4a1343
Handle <Esc> in modal input better
2016-02-21 07:00:44 +03:00
Andrey Vlasovskikh
36e41555ea
Cleaned up ModalEntry
2016-02-21 06:16:11 +03:00
Andrey Vlasovskikh
3f824cf205
Enable SecondaryLoop-based implementation for Java 7+
2016-02-21 06:07:34 +03:00
dhleong
c61b3c2f29
More closely emulate SecondaryLoop with reflection and a Proxy
2016-02-17 20:46:33 -05:00
dhleong
fd97cfbd15
Add compat layer for JDK6
...
JDK7 mode works like a dream, but JDK6 still seems to break
after the first invocation.
2016-02-15 09:19:18 -05:00
dhleong
4b4c293008
Refactor modal input for Vim Extensions
...
Doesn't use dialogs, so should fix VIM-1086
2016-02-14 13:23:51 -05:00
Andrey Vlasovskikh
69a573a279
Handle <Esc> in inputKeyStroke() uniformly as "typed Esc"
2016-02-09 00:40:37 +03:00
Andrey Vlasovskikh
c33d4d989e
Clearer offsets comparison + multi-line deletion test
2016-02-09 00:20:58 +03:00
dhleong
3cd1134973
Fix calculation of how to paste surrounded value
...
Fixes VIM-1085; includes test
2016-02-06 10:23:05 -05:00
Andrey Vlasovskikh
4f42d4dc4f
Merge branch 'vlasovskikh/surround'
...
# Conflicts:
# CHANGES.md
# resources/META-INF/plugin.xml
# src/com/maddyhome/idea/vim/option/Options.java
2016-02-04 23:08:37 +03:00
Andrey Vlasovskikh
7e1e50ffde
Cleanup
2016-02-04 22:52:59 +03:00
Andrey Vlasovskikh
ab3cbb113e
Restore caret position properly
2016-02-04 22:18:37 +03:00
dhleong
1c7e6af1fc
Fix <esc> not sent after VSurround; support change with tags
2016-02-02 20:57:54 -05:00
dhleong
84f7e25c5e
Cleanup overly verbose code; remove unused import
2016-02-02 20:32:09 -05:00
dhleong
458fe97b75
Add visual surround (S
) command
2016-01-30 09:31:25 -05:00
dhleong
31364607f5
Add ds
command; jump to start when executed to match vim-surround
2016-01-30 09:14:34 -05:00
dhleong
56ec2c7ebc
Add cs
action
...
Note that, unfortunately, we can't do `cst`, as IdeaVim doesn't
support the tag textobject. Once that's supported, however, we
just need to disable the safety check to enable that.
2016-01-30 09:02:06 -05:00
Andrey Vlasovskikh
2cf7d89581
VIM-271 Added 'incsearch' option for showing search results while typing
2016-01-30 02:05:24 +03:00
Andrey Vlasovskikh
91546700d4
Added simple ys{motion}t tag surround and input()
function
2016-01-26 22:25:36 +03:00
Andrey Vlasovskikh
a972aec9b0
Implementation notes
2016-01-26 21:33:31 +03:00
Andrey Vlasovskikh
82a1e920e0
Initial refactoring of dhleong's 'ys' on top of extension infrastructure
2016-01-26 21:14:15 +03:00
Andrey Vlasovskikh
1a96533a3c
Added unit test-friendly version of VimExtensionFacade.getKeyStroke()
2016-01-26 18:14:14 +03:00
Andrey Vlasovskikh
2d86054fe8
Fixed regression after setChangeMarks() refactoring
2016-01-26 17:49:05 +03:00
Andrey Vlasovskikh
50e3af7b82
Added modal getKeyStroke() similar to Vim's getchar()
2016-01-26 04:17:19 +03:00
Andrey Vlasovskikh
27af4b926b
Added the 'g@' command for IdeaVim extensions
2016-01-26 01:02:20 +03:00
Andrey Vlasovskikh
1d035acb6d
Vim extension facade for executing emulated Vim statements built-in functions
2016-01-24 20:14:54 +03:00
Andrey Vlasovskikh
3704c321fa
Added the ability to map keys to IdeaVim extension handlers
2016-01-24 19:57:37 +03:00
Andrey Vlasovskikh
9c6f35f3bd
Added mechanism for providing extensions for IdeaVim like ported Vim plugins
2016-01-24 19:04:12 +03:00
Andrey Vlasovskikh
e5ac7ee607
Send stats reports in internal mode
2016-01-22 21:41:35 +03:00
Andrey Vlasovskikh
480b32b5af
Fixed AIOOBE in tag selection for files starting with '/' and containing '>'
2016-01-21 18:28:14 +03:00
Andrey Vlasovskikh
8c9cf09bd8
Report usage statistics
2016-01-21 17:51:21 +03:00
Andrey Vlasovskikh
76333c5a24
Updated copyright years
2016-01-21 02:20:57 +03:00
Andrey Vlasovskikh
cb9d205336
VIM-796 Execute :action handler strictly after request focus handler
2016-01-21 01:44:27 +03:00
Andrey Vlasovskikh
e1a292ba33
Merge remote-tracking branch 'smartbomb/ActionHandler-focus-fix'
2016-01-21 01:28:20 +03:00
smartbomb
3ba41ac458
VIM-892 Fix various focus related issues when executing :action commands a keymap
...
also fixes VIM-1001, VIM-1016 and hopefully VIM-962 but unable to fully reproduce
2015-12-30 22:06:52 +01:00
Andrey Vlasovskikh
992c1923f6
Use Guava for more idiomatic list operations
2015-12-03 15:33:04 +03:00
lubba
a22afdd0f6
VIM-364 Added support for tag block selection
2015-12-03 15:19:54 +03:00
Andrey Vlasovskikh
0da8625f30
VIM-1040 Fixed typing keys in completion menus and typing with the plugin disabled
2015-11-02 15:53:50 +03:00
Andrey Vlasovskikh
39f088cdcd
VIM-970 Use raw typed handlers in order not to require write action in read-only files
...
This change requires the API of IntelliJ platform branch 143+.
2015-10-30 15:37:17 +03:00
Paulo Bu
52a0af1636
Adds zC and zO folding commands
2015-08-28 15:59:13 +02:00
ayzen
5fc66b5896
={motion} implementation, == with count and fix for VIM-259
2015-07-11 21:44:36 +03:00
ayzen
80dec29832
Fix for VIM-965 with a test
2015-07-01 23:31:25 +03:00
ayzen
30a16e9496
Corrected typo that prevented correct calculation for marks vertical shifting; added a test
2015-06-14 10:54:15 +03:00
ayzen
0d6526ea31
Mark should not be deleted due to change commands that start from the beginning of the mark line
2015-06-14 10:41:52 +03:00
ayzen
4428340fd9
Fix for VIM-964 (marks get removed if one-char line is replaced by r) with a test
2015-06-14 10:38:36 +03:00
ayzen
900ce21445
Fix for VIM-564 (g_ didn't work correctly) with tests
2015-06-12 22:43:19 +03:00
Andrey Vlasovskikh
c5760ceaab
VIM-957 Fixed compatibility with IDEs other than IntelliJ
2015-06-10 15:41:33 +03:00
ayzen
efad5545de
Correct behavior of numbered registers
2015-06-05 21:09:31 +03:00
dos65
fe1184b0d3
keypadd arrows for nvo modes
2015-05-09 17:30:40 +03:00
Andrey Vlasovskikh
ae5b1385ea
Merge branch 'matching-comments'
2015-04-24 16:08:54 +03:00
Andrey Vlasovskikh
efb58b45df
Cleanup
2015-04-24 16:02:20 +03:00
Andrey Vlasovskikh
574f32a6dd
Merge pull request #84 from JetBrains/mapleader
...
Mapleader support based on the prototype of a Vim script expressions evaluator
2015-04-24 13:33:38 +03:00
Andrey Vlasovskikh
0e67c8ff69
Removed unnecessary 'static' declaration
2015-04-24 13:32:26 +03:00
Andrey Vlasovskikh
b886073c11
VIM-650 Added support for 'mapleader'
2015-04-24 13:32:04 +03:00
Andrey Vlasovskikh
f5100694d6
VIM-930 Get editor focus after closing Ex entry box on Oracle Java 6
2015-04-22 20:26:41 +03:00
Andrey Vlasovskikh
3ff9bfcc13
Initial support for 'let' and 'echo' commands
...
These commands evaluate Vim script expressions. Right now they are
limited to a highly limited subset of Vim script expressions that is
however enough for settings the 'mapleader' variable for VIM-650.
2015-04-05 22:54:40 +03:00
Andrey Vlasovskikh
373e1527c1
Extracted Vim script parts into 'vimscript' package
2015-03-28 14:16:38 +03:00
Andrey Vlasovskikh
96bbcf623f
Removed unnecessary 'static' in enums
2015-03-27 21:20:17 +03:00
Andrey Vlasovskikh
89e853158c
Typos
2015-03-27 21:19:56 +03:00
Andrey Vlasovskikh
5c31fcc03e
Extracted CommandState.inVisualBlockMode()
2015-03-27 21:18:08 +03:00
Andrey Vlasovskikh
3fee4a803b
Merge remote-tracking branch 'dezgeg/fixes/visual-block-mode-overhaul'
2015-03-27 20:56:58 +03:00
Andrey Vlasovskikh
999ccf87fc
Merge remote-tracking branch 'dezgeg/fixes/vim-700-remap-zero'
2015-03-24 23:48:11 +03:00
Tuomas Tynkkynen
0c9bdf5168
Visual block mode overhaul
...
The current visual block mode implementation has several bugs:
- The GUI never displays the rightmost characters as selected (blue)
- Due to some off-by-one, commands can't act on each line's last character
- It's possible for newlines to get deleted/changed into something else
- If the '$' mode is entered, the GUI doesn't always indicate this
- It's impossible to move to an empty line (VIM-781)
This commit fixes all of those problems. The only remaining problem are
the visible secondary carets, which makes seeing the real cursor a bit
difficult. This could be fixed later if support for per-caret visibility
would be added to IntelliJ core.
2015-02-21 17:17:36 +02:00
Tuomas Tynkkynen
82a9587b4f
Support comments in brace matching
...
In Vim, '%' can be used to jump between the '/*' and '*/' of block
comments. Support this functionality in a language-independent manner.
2015-02-21 15:14:38 +02:00
Tuomas Tynkkynen
850f4d7ec5
Make IdeaVIM build on latest intellij-community master
...
The zero-parameter overload of createStructureViewModel() has been
marked deprecated and is now removed.
2015-02-21 15:12:16 +02:00
Tuomas Tynkkynen
8d1dcc4568
VIM-700 Remapping '0' should still allow zero to be entered in count
...
Previously, remapping '0' in command mode would prevent a number zero
from being entered in a command count.
2015-02-21 15:09:13 +02:00
Andrey Vlasovskikh
e1e1cc2666
Code style
...
Use javadoc comments, added nullity annotations, extracted common
expressions.
2015-01-21 19:49:41 +03:00
Tuomas Tynkkynen
79fd32088b
VIM-868 Allow count on 'gt' and 'gT'
...
'{count}gt' can now be used to switch to a specific tab.
'{count}gT' can now be used to switch to a n:th previous tab.
2015-01-21 18:11:48 +02:00
Tuomas Tynkkynen
5090c81632
VIM-856 Fix regex lookbehind bugs
...
The regex code has the following bugs, mostly related to lookbehind:
- Comparison of CharPointers with == is wrong, .equals should be
used instead.
- In the original C code, the behind_pos variable is declared as
'static regsave_T behind_pos;', i.e. not a pointer, and the same
for other variables of type regsave_T. So assignments to these
types of variables need to make deep copies.
2015-01-20 17:52:08 +02:00
Andrey Vlasovskikh
72537c6ffb
Merge remote-tracking branch 'jdpopkin/relative_range'
...
Conflicts:
test/org/jetbrains/plugins/ideavim/ex/SubstituteCommandTest.java
2015-01-20 17:17:27 +03:00
Andrey Vlasovskikh
30f9888f51
Merge remote-tracking branch 'selesse/sort-fix'
2015-01-20 16:06:36 +03:00
Andrey Vlasovskikh
fd3eee6870
Merge remote-tracking branch 'dezgeg/fixes/vim-864-visual-substitute-incorrect-visual-marks'
2015-01-20 15:50:17 +03:00
Andrey Vlasovskikh
2d6d1003b7
Merge remote-tracking branch 'dezgeg/fixes/vim-575-split-cursor'
2015-01-20 15:44:46 +03:00
Andrey Vlasovskikh
787b78ef36
Typo
2015-01-20 15:31:46 +03:00
Andrey Vlasovskikh
88a0b0fa23
Removed unused ExEntryPanel.processKey()
2015-01-20 15:31:33 +03:00
Andrey Vlasovskikh
1519f04930
Fixed potential NPEs
2015-01-20 15:30:17 +03:00
Andrey Vlasovskikh
e0a1291de0
Merge remote-tracking branch 'dezgeg/fixes/vim-210-ex-focus'
2015-01-20 15:27:55 +03:00
Andrey Vlasovskikh
8a2d881002
Cleanup
...
Removed commented code, renamed '\0' to '\u0000' for consistency,
fixed nullable warnings, declared some variables final.
2015-01-20 14:50:55 +03:00
Tuomas Tynkkynen
4802b6f460
VIM-864 Fix visual marks getting changed during visual substitute
...
Previously, running a substitute command in visual mode would
incorrectly set the visual mode end mark (>) to the location of the last
search match.
2014-12-24 18:19:53 +02:00
Jackson Popkin
8c0e116a1c
Fix incorrect behavior in substitution with offset ranges
...
Substitution commands with offset ranges like .,+2s/a/b/g previously
did not work the way they do in Vim (replace a with b on the current
line and the next two lines). This change fixes that bug.
2014-12-23 21:14:42 -05:00
Alex Selesse
8862878011
Fix broken sorting when sorting with leading whitespace
2014-12-14 12:17:51 -05:00
Tuomas Tynkkynen
bdf3361243
VIM-575 Don't change cursor position of other splits in visual mode
...
If a file is opened in multiple splits, entering visual mode in one
split would change the cursor position in other splits as well.
2014-12-14 15:20:36 +02:00
Tuomas Tynkkynen
18cd7547ad
VIM-210 Fix focus issues with the Ex panel
...
Previously, if the editor window had been splitted, under certain
conditions some actions related to the Ex panel would cause the editor
focus to change to a different split.
The required conditions for this bug to occur:
- no docked windows (like the Project sidebar) are open
- 'View -> Navigation bar' is disabled
At least these actions triggered the bug:
- search with /
- successfully executing an Ex command
- dismissing the Ex window with Esc
- Ex commands that opened the output panel (e.g. :!)
All the deleted lines of the form
FileEditorManager.getInstance(project).openFile(vf, true);
seem to be very old, non-functional workarounds for the focus issue.
2014-12-09 13:36:03 +02:00
Tuomas Tynkkynen
7746a26062
VIM-855 Fix regexp character class bugs
...
Previously strchr and istrchr didn't consider NUL chars as end-of-string
terminators. This caused problems in regexps using character classes:
a regexp like "[^a]bc" would be effectively treated as "[^abc]bc" - i.e.
some literal characters from the rest of the pattern would accidentally be
included in the character class.
2014-12-09 01:01:53 +02:00
Andrey Vlasovskikh
a47fc9d3be
Don't share editor data contexts
...
The previous code threw "cannot share data context between Swing events"
throwables from DataManagerImpl$MyDataContext.getData since we used to
share DataContext objects passed to
VimShortcutKeyAction.actionPerformed() and
VimTypedActionHandler.execute() inside AnActionEvent objects with
runnables we invoked via SwingUtilities.invokeLater().
2014-12-07 18:40:51 +03:00
Andrey Vlasovskikh
d6ebaa26b0
Merge branch 'invoke-shortcuts-handler-later'
2014-12-07 16:42:31 +03:00
Andrey Vlasovskikh
27bd7ec836
Merge remote-tracking branch 'dezgeg/fixes/misc-issues'
2014-12-07 16:28:15 +03:00
Andrey Vlasovskikh
6bf0f36567
Merge remote-tracking branch 'dezgeg/fixes/vim-702-fix-substitute-infinite-loop'
2014-12-03 15:59:43 +03:00
Andrey Vlasovskikh
69f1a70968
VIM-848 Show line numbers if they are enabled in the settings and there is no 'set number'
2014-12-03 15:42:59 +03:00
Tuomas Tynkkynen
47edfcac5e
VIM-702 Fix infinite loop on s/$/\r/g
...
If the replacement contains newlines, the line number of the current
search position needs to be adjusted. Without this, e.g. s/$/\r/g would
get into an infinite loop.
2014-12-03 14:00:31 +02:00
Andrey Vlasovskikh
48b371c985
Don't show line numbers in non-file editors
2014-12-01 15:54:48 +03:00
Andrey Vlasovskikh
47165e7b9d
EA-63002 Don't update line numbers in the caret movement event listener
...
This update may require moving the caret.
2014-12-01 15:54:31 +03:00
Andrey Vlasovskikh
f2a0408801
VIM-586 Try to invoke Vim shortcuts handler later to restore input events sequence
2014-11-27 15:09:06 +03:00
Andrey Vlasovskikh
642659bc9b
VIM-410 Use the standard editor line numbers for supporting 'nu'
...
Annotations-based line numbers reset all other annotations on caret
move, so the results of VCS annotate are reset all the time. It is
necessary for 'rnu', but for 'nu' we can use standard editor line
numbers and preserve the ability to show VCS annotations during caret
movement operations.
2014-11-26 19:49:09 +03:00
Andrey Vlasovskikh
f0e8d065b7
Merge remote-tracking branch 'dezgeg/fixes/vim-723-paste-wrong-line'
2014-11-26 18:18:54 +03:00
Andrey Vlasovskikh
520d852c04
Merge remote-tracking branch 'dezgeg/fixes/vim-771-repeated-semicolon'
2014-11-26 18:12:14 +03:00
Andrey Vlasovskikh
8d4d7a421a
Merge remote-tracking branch 'dezgeg/fixes/crashes'
2014-11-26 17:58:27 +03:00
Andrey Vlasovskikh
802b83b0fe
VIM-818 Enable key repeat on Mac OS X every time it gets reset by the OS
2014-11-26 17:21:18 +03:00
Tuomas Tynkkynen
7ccb6c8411
Optimize character case changing operations
...
Previously, performing e.g. visual '~' on a large file would completely
lock up the IDE. The culprit seemed to be the calls to replaceText() one
character at a time, which is not a cheap operation since each
replaceText() will for example trigger a DocumentChanged event.
2014-11-22 13:15:15 +02:00
Tuomas Tynkkynen
1518831f37
Add some missing key names.
2014-11-22 13:15:15 +02:00
Tuomas Tynkkynen
3bdfaa02e1
'J' shouldn't add whitespace if there is trailing whitespace
2014-11-22 13:15:11 +02:00
Tuomas Tynkkynen
e8de9f915c
Make '>' not add trailing whitespace to empty lines.
2014-11-22 13:14:23 +02:00
Tuomas Tynkkynen
31f598d1e1
VIM-723 Fix pasting to an empty line
...
When pasting on an empty line, the pasted text would go to the start of
next line instead.
2014-11-17 03:47:50 +02:00
Tuomas Tynkkynen
46e6fd0847
VIM-771 Fix semicolon repeat for 'till char' motion
...
Based on empirical testing with Vim, ';' should work like this:
assuming "<caret>1:a 2:b 3:c" with ':' as the last f/t character:
- "t:" does nothing
- ";" cursor goes to '2'
- "2;" cursor goes to '2', same as the previous
- "3;" cursor goes to '3'
2014-11-16 18:58:56 +02:00
Tuomas Tynkkynen
1441a60f4b
Fix AIOOBE when '(' motion goes past start of file
...
If first character of the file is a newline, then findSentenceEnd()
could return -2 when the 'previous sentence' motion is performed,
leading to an eventual crash. Found by fuzzing.
2014-11-16 17:08:47 +02:00
Tuomas Tynkkynen
ebdf107946
Fix AIOOBE crash when using 'b' on first line
...
If 'b' were used on the first word of the file, and the word was
preceded by whitespace, ArrayIndexOutOfBoundsException would occur.
Found by fuzzing.
2014-11-16 17:08:47 +02:00
Tuomas Tynkkynen
38d672c9f9
Fix KeyHandler crash when using '<' or '>'
...
The '<' and '>' commands weren't marked with FLAG_OP_PEND even though
they should, which sometimes caused EmptyStackException in KeyHandler
(when typing <I<><I<> for example). Found by fuzzing.
2014-11-16 17:08:46 +02:00
Tuomas Tynkkynen
75d34abd45
Fix IOOBE when 'i)' motion doesn't find other delimiter
...
Found by fuzzing.
2014-11-16 17:08:43 +02:00
Andrey Vlasovskikh
3cfa0e1844
Merge remote-tracking branch 'dezgeg/fixes/vim-515-cW-command'
2014-11-15 00:09:00 +03:00
Andrey Vlasovskikh
49d0c51d97
Merge branch 'vim-536-cc-second-to-last-line'
2014-11-15 00:00:43 +03:00
Andrey Vlasovskikh
fe4bc3b4a9
Moved line line position calculation before deletion
2014-11-15 00:00:13 +03:00
Tuomas Tynkkynen
58d964063c
VIM-515 Fix cW command detecting end-of-word incorrectly
...
A cW command on text like 'x$$$$' or '$xxxx' would incorrectly delete
just the first character, and not the rest.
2014-11-14 22:51:46 +02:00
Andrey Vlasovskikh
17d3e37e1d
Merge branch 'vim-567-run-external-command-in-window'
2014-11-14 23:43:42 +03:00
Andrey Vlasovskikh
54f6a16bd6
Nullity checks
2014-11-14 23:41:17 +03:00
Andrey Vlasovskikh
f4ffc5d198
Get rid of Reader and Writer classes in executeCommand()
2014-11-14 23:35:27 +03:00
Andrey Vlasovskikh
3d8010bf88
Removed debug output
2014-11-14 23:18:53 +03:00
Andrey Vlasovskikh
ec2cc3a7f9
Code style
2014-11-14 23:17:50 +03:00
Andrey Vlasovskikh
52b7b9bcd8
Merge branch 'vim-705-multi-line-indent-broken'
2014-11-14 23:05:03 +03:00
Andrey Vlasovskikh
8ad0fcf42d
Default value for @NotNull field mode
2014-11-14 23:04:33 +03:00
Andrey Vlasovskikh
aa6cc45988
Made moveCaret(Editor, int, boolean) private
2014-11-14 23:02:32 +03:00
Tuomas Tynkkynen
da22b8297b
VIM-536 Fix 'cc' on second-to-last line in file
...
Previously, 'cc' on the second-to-last line of a file would instead open
a new line after the last line of the file.
2014-11-14 16:56:05 +02:00
Tuomas Tynkkynen
798d82e941
VIM-567 Extend :! to allow running non-filter commands
...
This commit allows the Ex command '!' to be ran without a range, with
the results displayed in a window.
For example, run ':! ls' in normal mode for a quick directory listing.
2014-11-11 20:32:24 +02:00
Tuomas Tynkkynen
ac8ac302ca
VIM-705 Fix repeated multiline indent
...
When a visual mode command is repeated, code calls into
MotionGroup#toggleVisual() to setup a 'fake' visual mode selection. But
when MotionGroup.moveCaret() is called, it notices that the indent
command has the FLAG_EXIT_VISUAL flag, and leaves visual mode right
away.
2014-11-10 23:32:09 +02:00
Tuomas Tynkkynen
22c3a73102
VIM-613 Fix repeat after 'd$'
...
Previously, repeating a 'd$' command would incorrectly delete the
newline from the line.
2014-11-10 16:36:40 +02:00