Commit Graph
5146 Commits
Author SHA1 Message Date
Matt EllisandAlex Pláte b742865e8a Treat 'ideajoin' as a global-local option 2023-05-17 10:54:13 +02:00
Matt EllisandAlex Pláte fd314a3288 Treat 'matchpairs' as a local option 2023-05-17 10:54:13 +02:00
filipp 527b321ee0 Fix(VIM-2945): %-movement mismatches braces 2023-05-14 00:09:00 +03:00
filipp d89fbeea62 Fix(VIM-2930): vim-multiple-cursors + ReplaceWithRegister issue 2023-05-07 23:51:05 +03:00
filipp e4f7700044 Refactoring
Update method signatures and return types:
- Getting rid of "magic constants" (e.g. -1) and replacing them with nullable
- Replacing direction Int with Enum
- JetBrains annotations
2023-05-05 09:41:27 +03:00
filipp a1d0c3ebf4 Remove println 2023-05-05 09:41:27 +03:00
filipp 2088c1ce00 Move more methods to engine 2023-05-05 09:41:27 +03:00
Martin YzeiriandAlex Pláte bcf10a0b8e Matchit: Ignore JS comparison operators
In files that mix HTML and JavaScript, arrow functions or forms like (x > y)
conflict with the brackets on HTML tags. We can ignore those JS elements
using PSI checks like we do for some Ruby keywords.
2023-04-26 11:14:06 +03:00
Martin YzeiriandAlex Pláte 546137c0f5 Matchit: Correct HTML regex
A final closing > is required on the search pair, otherwise tags with a
shared prefix in their names will conflict.
2023-04-26 11:14:06 +03:00
Martin YzeiriandAlex Pláte 92bc691e1f Matchit: Improve comment handling
Since the cursor can come before the start of the matching pair, we need
to check the PSI element at the first match offset, not the caret offset,
when deciding if we need to skip comments.

This fix makes the special isHtmlAttribute check unnecessary. If the caret
is in an HTML attribute, the first match offset will point to the start
of the tag.
2023-04-26 11:14:06 +03:00
Martin YzeiriandAlex Pláte d834d0fdd9 Move a unit test 2023-04-26 11:14:06 +03:00
Matt EllisandAlex Pláte 77ad9deeba Use interface for IJ specific options 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte ffa6c45b62 Reset test injector after each test 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 330d92116c Refine inheritance of IJ specific option classes 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 899adfc1b0 More refactoring to use new API 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 23535a6ad5 Remove OptionValueAccessor 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte e8b7f00370 Remove accessor from new API 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 3f2c5070ee Migrate local option access to new API 2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte a2352525c5 Migrate global option access to new API
Also fixes some incorrect usages of local options as global, e.g. 'ideajoin' and 'scroll'. There are some options that should be local that are only ever accessed at global scope. These need fixing in the future, e.g. 'iskeyword', 'matchpairs' and 'virtualedit'
2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 50384a526b Introduce option accessor delegated properties
Also migrates tests to use new properties
2023-04-26 10:26:06 +03:00
Matt EllisandAlex Pláte 9ade3365ff Extract StringListOption
While it is conceptually very similar to StringOption, the implementation of list vs not-list operations are very different, and having a separate type will allow us to do more interesting things with overloading when we introduce delegate properties
2023-04-26 10:26:06 +03:00
filipp 6473ad02a0 Add test for next paragraph motion 2023-04-19 15:25:44 +03:00
filipp 8107f669cd Fix ReplaceWithRegister with single caret 2023-04-19 15:22:49 +03:00
filipp 2f55d92d83 Move more methods to engine 2023-04-19 15:07:06 +03:00
Alex Plate f4be162aea Fix issue with missing key-repeat dialog on new mac machine 2023-04-14 23:14:01 +03:00
Alex Plate c64810509f Fix(VIM-2909): Fix incorrect file detection while closing diff window 2023-04-13 15:58:56 +03:00
Alex Plate a8f0145333 Fix(VIM-2912): Fix focus after :q 2023-04-12 11:01:03 +03:00
StzxandAlex Pláte 26ed6670d5 Fix dispose operation 2023-04-04 08:02:03 +03:00
Alex Plate 260bb47434 Different approach for getting editor during bookmarks initialization in order to get rid of slow operations exception 2023-04-01 09:01:19 +03:00
Alex Plate 9d7872e64e Update initialization instructions 2023-03-31 17:39:06 +03:00
filipp 31bdc23b3c Add support for variables in exists function 2023-03-31 17:37:57 +03:00
Matt EllisandAlex Pláte f803c0aa72 Add deterministic initialisation of options 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 531b0e3537 Provide an API to override option default value
This is specifically to support ideaput in 'clipboard'
2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 18d52c2459 Make addListener more strongly typed 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte ee55cfd2dd Improve handling of variance with setOptionValue
With the `out` modifier, the compiler won't report a problem trying to assign `VimInt` to an `Option<VimString>`
2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 3ab5fc1120 Improve handling of variance 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte f7f60f5079 Fix warnings 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte b7dcff79ae Improve modifyOptionValue 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 8f8c05e451 Remove string based option helper functions 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte af3ebe60f4 Use strongly typed options instead of constants 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte be64d24c00 Introduce strongly typed properties for options 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 8f04575efd Extract IJ specific options to own file 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 4e1b8f3ec4 Extract IJ specific options to own class 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte 88f0d2e532 Replace constants with strongly typed properties 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte e1bd790294 Add tests to ensure ideaput is added or required 2023-03-31 17:37:48 +03:00
Matt EllisandAlex Pláte d042ee3058 Move octopushandler option out of vim-engine 2023-03-31 17:37:48 +03:00
Alex Plate 24df3be8f1 Print more logging in case the vim shortcut is disabled 2023-03-31 17:13:25 +03:00
Alex Plate 0f07e4bdc3 Fix(VIM-2896): Correct ordering of handlers 2023-03-31 12:45:54 +03:00
filipp f4068301ff Add information about text range in original script for executable 2023-03-31 11:00:39 +03:00
Alex Plate 832c1c0be3 Revert "Update formatting"
This reverts commit bf0fba9c58.
2023-03-27 11:32:59 +03:00