Commit Graph
10562 Commits
Author SHA1 Message Date
1grzyb1 ae6198400b VIM-2293 C-Up C-Down for line navigation 2026-10-08 11:25:42 +02:00
1grzyb1 b3413f5924 VIM-2293 accepts count in handlers 2026-10-08 11:25:42 +02:00
1grzyb1 5ea29e1a6e VIM-2293 add VM_leader option 2026-10-08 11:25:42 +02:00
1grzyb1 92af7a9b58 VIM-2293 Cleanup visual multi code 2026-10-08 11:25:42 +02:00
1grzyb1 7b9cf20a19 VIM-2293 Add VM session
visual multi keeps track if it has active session and depending on that different mappins are performed
2026-10-08 11:25:42 +02:00
1grzyb1 9ed7a53709 VIM-2293 Add ignore case option 2026-10-08 11:25:42 +02:00
1grzyb1 fd310620e7 VIM-2293 Add VM_maps variable for mapping 2026-10-08 11:25:42 +02:00
1grzyb1 30c876dd59 VIM-2293 Add vim visual multiple extension
Extracted base class to nto duplicated code in both multi cursor extensions. new one has different mappings for some actions
2026-10-08 11:25:42 +02:00
claude[bot]andClaude Opus 5.5 d7b5df3ebc Update changelog: remappable NERDTree navigation keys
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 05:22:03 +00:00
1grzyb1 37aeff64aa VIM-2372 Add missing mappings for navigation keys
Allow users to map missing nerdtree keys like j or k
2026-10-07 09:13:53 +02:00
claude[bot]andClaude Opus 5.5 723e45deb9 Update changelog: ideascrollcursor, sethandler for Enter/Esc/arrows, dead keys
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-07 05:21:26 +00:00
1grzyb1 543d577bfa VIM-1503 don't type dead keys
Composed text from dead keys and input methods was inserted into the document and replaced the Visual selection before IdeaVim saw the key, so we now drop it in Normal, Visual and Operator-pending modes and only let the committed character through, like Vim in a terminal.
2026-10-06 12:20:18 +02:00
1grzyb1 e0193e6f3b VIM-1948 Scroll caret while mouse scrolling
Move caret while mouse scrolling respecting scrolloff
guarded by ideascrollcursor to preserve old idea behaviour
2026-10-06 12:11:06 +02:00
1grzyb1 f6ee0c0f11 VIM-720 allow pass escape to IDE 2026-10-06 11:46:19 +02:00
1grzyb1 2282456ddd VIM-720 allow pass enter and arrows to IDE 2026-10-06 11:46:19 +02:00
claude[bot]andClaude Opus 5.5 d092c00547 Update changelog: :help file, action ID completion, VIM-4336
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 05:21:48 +00:00
1grzyb1 6f48fd9903 Complete action command ideavimrc file 2026-10-05 12:04:26 +02:00
1grzyb1 fe7bc72193 Complete action command in command line 2026-10-05 12:04:26 +02:00
1grzyb1 ccb0fb1677 Add descriptions to all commands
Each @ExCommand and @CommandOrMotion now describes what it does in IdeaVim, the text is rendered into the help file.
2026-10-05 10:57:50 +02:00
1grzyb1 c1d9ee7378 Generate the help file that :help opens from command annotations
Commands describe themselves in @ExCommand/@CommandOrMotion, generateHelp renders the Vim-style help file and a workflow keeps it up to date on master.
2026-10-05 10:57:50 +02:00
1grzyb1 360d3d4b69 VIM-4336 postpone caret normalization for async actions
In Rider actions like comment are async and afterActionPerformed happens right after action axecution without waiting for action to actually finish.
Which resulted in first normalizing carret by IdeaVim and then moving it by comment action in wrong place
2026-10-05 09:50:57 +02:00
claude[bot]andClaude Opus 5.5 e597ca1069 Update changelog: 2.47.1/2.47.2 releases, V on collapsed folds
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 05:20:08 +00:00
IdeaVim Bot f65c5e28f5 Preparation to 2.47.2 release 2026-10-02 10:05:53 +00:00
Grzybek e27ffe0549 VIM-1894 include collapsed region during visual selection (#2098) 2026-10-02 08:35:07 +00:00
1grzyb1 8ad1ab8bdf VIM-4335 document ideaoutsideeditor option 2026-10-02 10:22:27 +02:00
1grzyb1 69d845f92f VIM-4335 remove dispatcher listeners on option change
otherwise it wasn't detected right away
2026-10-02 10:22:27 +02:00
Grzybek f94d5b05dc VIM-4335 guard outside editor dispatcher when ideaoutsideeditor (#2100) 2026-10-02 09:27:45 +02:00
claude[bot]andClaude Opus 5.5 77d6a1d78f Update changelog: keylog extension, Replace mode paste
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 05:21:41 +00:00
1grzyb1 2ec828b529 VIM-1314 Replace mode paste with cmd+v
To be vim compatible we need to wrap idea paste during replace mode.
Vim is pasting and replacing text and we were inserting it before cursor.
So to this we wrap paste action handler and in replace mode we handle it by ourselves
2026-10-01 11:54:35 +02:00
Grzybek b00370888a VIM-1306 Add keylog extension (#2096)
Extension that logs all typed keys
2026-10-01 10:56:08 +02:00
claude[bot]andClaude Opus 5.5 a1efa6f18a Update changelog: ideaeditor main/chat values, CLion = fix
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-01 05:25:53 +00:00
dependabot[bot] c06802d135 Bump gradle-wrapper from 9.7.1 to 9.8.0
Bumps [gradle-wrapper](https://github.com/gradle/gradle) from 9.7.1 to 9.8.0.
- [Release notes](https://github.com/gradle/gradle/releases)
- [Commits](https://github.com/gradle/gradle/compare/v9.7.1...v9.8.0)

---
updated-dependencies:
- dependency-name: gradle-wrapper
  dependency-version: 9.8.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-30 15:37:08 +00:00
Grzybek 7bd8f1315c VIM-3963 Allow enabling vim for plugin editors and ai chat windows (#2091)
* VIM-3963 enable vim for main editors

* VIM-3963 enable vim for jetbrains AI chat
2026-09-30 12:28:19 +02:00
Grzybek 5bc0344547 VIM-4333 Fix auto-indent handling in clion (#2090)
use directly formatter for clion to indent lines otherwise it was formatting whole file
2026-09-30 08:38:08 +00:00
claude[bot]andClaude Opus 5.5 76a26d51f2 Update changelog: VIM-1153 . replays typed keystrokes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 05:22:58 +00:00
Grzybek d99f46937f VIM-1153 replay all keystrokes during . (#2088)
* VIM-1153 replay all keystrokes during .

we were storing actions and commands to replay during . repeat. Due to that we had to do a lot of strange logic to move cursor after ide chagnes. Becouse of that renaming tag element didn't work.

To make it work and more vim like we store real keystrokes and replay them

* VIM-1153 replay autocomplete

in new mechanism C-Y was working on active lookup and during replay there was no lookup. to fix that we go through action path which adds those keys by itself but we need to drop C-Y from RedoBuffer stack as it's replaved by actruall charachters

* VIM-1153 Fix other lookup actions

* VIM-1153 keep lookup commands as separate ones

Extracted all lookup commands as separate handlers as it was confusing to have seprate paths depending on isActiveLookup in handlers
2026-09-29 10:31:40 +00:00
claude[bot]andClaude Opus 5.5 6e47c141de Update changelog: VIM-4331 ticket link and PR 2084
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-26 05:19:03 +00:00
IdeaVim Bot 5b2a1725ec Preparation to 2.47.1 release 2026-09-25 09:24:56 +00:00
Grzybek 60d17b0c83 VIM-4331 keep the indent of a new line when leaving Insert mode (#2084)
`didAutoIndent` was set for `o`, `O` and Enter as well as for `cc` and `S`,
so leaving Insert mode without typing anything deleted the indent of a line
that had just been opened.

Vim does delete it, and it does so for an indent computed by 'indentexpr' or
'cindent' too (`fixthisline()` in indent.c). This is a deliberate difference:
in the IDE the indent comes from language support, and a line you have just
opened is expected to stay where it is. `cc` and `S` still follow Vim, since
there the line held text a moment ago and its leftover indent is noise.
2026-09-25 10:40:17 +02:00
claude[bot]andClaude Opus 5.5 2b55e12b15 Update changelog: | separator for :s and other Ex commands
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-25 05:20:56 +00:00
Grzybek f5fd057ba1 VIM-748 changing multiple commands with | (#2082)
* VIM-748 changing multiple commands with |

Added generic mechanism for chainging multiple commands with |
Main issue was with comamnds like `s` which might have | inside replaced regex
That's why we've adde whole machinery that split it in CommandVisitor.
We couldn't do it it antlr grammar itself as it would require having backwards state of grammer what antlr doesn't allow

* VIM-748 bump ksp version to 2.3.7
2026-09-24 12:36:34 +02:00
IdeaVim Bot aa14a3036e Preparation to 2.47.0 release 2026-09-24 08:46:08 +00:00
fe53a09522 Prepare What's New for the upcoming release (#2081)
* Prepare What's New for the upcoming release

Add missing changelog entries (Visual r caret, <End> sethandler, removed
surveys) and rebuild whatsnew-tbr.html from the To Be Released section.

Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 09:36:46 +02:00
claude[bot]andClaude Opus 5.5 57aa1424ab Update changelog: autoindent, ideaeditor, ideavimrc path, matchit match_words
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 05:22:12 +00:00
dependabot[bot] 7ec829344e Bump io.ktor:ktor-client-core from 3.5.2 to 3.6.0
Bumps [io.ktor:ktor-client-core](https://github.com/ktorio/ktor) from 3.5.2 to 3.6.0.
- [Release notes](https://github.com/ktorio/ktor/releases)
- [Changelog](https://github.com/ktorio/ktor/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ktorio/ktor/compare/3.5.2...3.6.0)

---
updated-dependencies:
- dependency-name: io.ktor:ktor-client-core
  dependency-version: 3.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-23 15:40:36 +00:00
1grzyb1 c24adece73 VIM-3796 support match_words in matchit
it allows to define custom matching words in matchit.
Also refactor plugin to use vim regex instead of java to make it more vim like behaviour
2026-09-23 12:34:12 +02:00
1grzyb1 719335d4cb Debug failing claude actions 2026-09-23 09:13:14 +02:00
Alex PlateandClaude Opus 5 33d0e5b3ef Remove user surveys
Drop the uninstall survey browser popup and the "Take Survey" entry in the
status bar widget menu.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-22 15:18:15 +03:00
1grzyb1 d682906047 VIM-3198 add fast scroll in nerdtree
add mapping for <c-d> and <c-u> in nerdtree for fast scroll
2026-09-22 10:31:04 +02:00
grzybekandClaude Opus 5 a087a508b5 VIM-3093 Scope search highlights to the viewport
Vim computes 'hlsearch' per screen cell during redraw and keeps no highlight objects at all, while IdeaVim materialises a RangeHighlighter per match, so highlighting the whole buffer put tens of thousands of them in the markup model for the 35 lines the user can see.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-21 11:58:29 +02:00