1
0
mirror of https://github.com/chylex/IntelliJ-IdeaVim.git synced 2026-03-28 14:52:37 +01:00
Commit Graph

9696 Commits

Author SHA1 Message Date
1grzyb1
a229979644 Make generated JSON formatting consistent with IntelliJ 2026-01-27 11:04:41 +01:00
1grzyb1
9257ba1741 VIM-566 Update tests to include foldlevel in option outputs 2026-01-27 11:25:01 +02:00
1grzyb1
e8add6d38d VIM-566 document different default foldlevel between ideavim and vim 2026-01-27 11:25:01 +02:00
1grzyb1
0c21dcb132 VIM-566 add set foldelevel command support 2026-01-27 11:25:01 +02:00
claude[bot]
e101510c8e Update changelog: Add zr and zm folding commands
Added changelog entries for VIM-566 feature that adds support for zr
(increase fold level) and zm (decrease fold level) commands.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-26 14:47:32 +02:00
1grzyb1
7290a85166 Make Claude Code Review workflow manual and context-aware 2026-01-26 08:49:45 +01:00
claude[bot]
054c703383 Update changelog: Add zA toggle folding
Added entry for VIM-566 feature that adds support for zA command
to toggle folds recursively.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-23 17:09:24 +02:00
1grzyb1
729cb7b2ad VIM-566 Add documentation to fold-related methods 2026-01-23 16:54:51 +02:00
1grzyb1
327de9772d VIM-566 Improve fold depth calculation readability 2026-01-23 16:54:51 +02:00
1grzyb1
98ebaabf10 VIM-566 improve performance by batch apply fold level 2026-01-23 16:54:51 +02:00
1grzyb1
23119b169b VIM-566 Add zm folding support 2026-01-23 16:54:51 +02:00
1grzyb1
c0d3624f3c VIM-566 Add zr folding support 2026-01-23 16:54:51 +02:00
Alex Plate
2f83606662 Change UI tests schedule to every 30 minutes
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:35:24 +02:00
Alex Plate
9394788e34 Add UI test debugging principles to autofix prompt
Add general guidance for fixing flaky UI tests:
- Flaky = race condition, not timeout issue
- Wait for unique state identifiers, not shared elements
- Understand framework built-in waits (findText already waits)
- Trace causality backwards to find correct wait condition
- State transitions have intermediate states

These principles should improve autofix success rate for UI test failures.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:34:50 +02:00
Alex Plate
5445878d21 Fix testTrackActionId UI test flakiness
Wait for "Action id copied" confirmation notification after clicking
"Copy Action Id". This ensures the clipboard was actually updated before
proceeding to paste, fixing the race condition where the test would
paste stale clipboard data.

The old wait for "Stop Tracking" was unreliable because that button
exists in both the old and new notifications during the transition.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 12:26:04 +02:00
Alex Plate
b7607934a1 Change IntelliJ UI tests schedule from every 5 minutes to daily
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-22 11:50:28 +02:00
IdeaVim Bot
f6e6f04004 Add 1grzyb1 to contributors list 2026-01-22 09:05:22 +00:00
dependabot[bot]
c1944f1369 Bump org.mockito.kotlin:mockito-kotlin from 6.1.0 to 6.2.2
Bumps [org.mockito.kotlin:mockito-kotlin](https://github.com/mockito/mockito-kotlin) from 6.1.0 to 6.2.2.
- [Release notes](https://github.com/mockito/mockito-kotlin/releases)
- [Commits](https://github.com/mockito/mockito-kotlin/compare/v6.1.0...v6.2.2)

---
updated-dependencies:
- dependency-name: org.mockito.kotlin:mockito-kotlin
  dependency-version: 6.2.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-21 15:35:02 +00:00
Grzybek
0264e1cd75 VIM-566 Add zA toggle folding support 2026-01-21 16:48:36 +02:00
Alex Plate
da4d0bdee3 Add extensions-api-migration skill for Claude Code
Documents how to use the new IdeaVim extension API and how to
migrate existing extensions from VimExtensionFacade to the new
@VimPlugin annotation-based API.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:44:44 +02:00
Alex Plate
86bf54d84c Migrate argtextobj extension to new textObjects API
Replace VimExtensionFacade.putExtensionHandlerMapping with the new
api.textObjects { register(...) } pattern. This simplifies the
extension by removing the ArgumentHandler class and its inner
ArgumentTextObjectHandler.

Key changes:
- Add LineInfoProvider interface to decouple ArgBoundsFinder from Document
- Create findArgumentRange extension function on VimApi
- Use api.textObjects { } for registering ia/aa text objects
- Remove unused imports and old handler code

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 18:28:45 +02:00
Alex Plate
9decb6152d Add sync.lock to gitignore 2026-01-16 16:29:17 +02:00
Alex Plate
f49d36fa02 Add comprehensive tests for argtextobj extension
Add tests covering: change outer argument, single argument handling,
whitespace handling, cursor positioning, nested function calls,
quoted strings, multiline arguments, and various bracket types.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:54:00 +02:00
Alex Plate
eed102d035 Convert VimArgTextObjExtension to kotlin 2026-01-16 15:48:33 +02:00
Alex Plate
38f428dec3 Rename .java to .kt 2026-01-16 15:48:32 +02:00
Alex Plate
ed0f74d85c Run UI tests every 5 minutes to test stability
Testing the UI tests stability with more frequent runs.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:08:59 +02:00
Alex Plate
3627d62175 Disable build cache for PyCharm and Rider UI tests
Same fix as ui-ij-tests - ensures tests actually run instead of
using cached results.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 15:03:36 +02:00
Alex Plate
add0c5b327 Run UI tests every 30 minutes instead of daily
Increase frequency to verify test stability.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 14:55:17 +02:00
Alex Plate
0312531361 Disable build cache for UI tests to ensure they always run
UI tests were being skipped due to Gradle build cache restoring
previous results. This defeats the purpose of stability testing.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 14:55:00 +02:00
Alex Plate
41c462c975 Remove Claude from contributors and exclude from authors workflow
Claude AI should not be listed as a contributor. This removes the
entry and adds an exclusion to prevent it from being re-added.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 13:56:41 +02:00
Alex Plate
6a2429c849 Add issues-deduplication skill for YouTrack issue management
Documents the approach for handling duplicate issues including:
- Choosing primary issues based on age and activity
- Protecting customer-tagged issues from duplication
- Avoiding duplication into closed issues
- Consolidating duplicates to a single primary
- Leaving courteous comments for reporters

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-16 13:53:58 +02:00
IdeaVim Bot
a359b68de3 Add claude to contributors list 2026-01-13 09:03:28 +00:00
Alex Plate
9cd28d4721 Add change granularity guidelines to tests-maintenance skill
Document that each CI run should make only one logical change
to ensure granular, reviewable PRs. Multiple annotations can
only be grouped if they share the same reason and fix pattern.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 09:31:42 +02:00
Alex Plate
79d36c1edc Ignore last-touched file in beads workspace 2026-01-13 07:33:05 +02:00
Alex Plate
e407d9ebad Add beads workflow tracking 2026-01-13 07:18:38 +02:00
Alex Plate
275475755d Add --console=plain note for gradle tasks in CLAUDE.md
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 07:09:37 +02:00
Alex Plate
9ef7ce1d36 Add Neovim installation to Claude Code workflows
Install Neovim in workflows that run tests:
- testsMaintenance.yml: deals with @TestWithoutNeovim annotations
- codebaseMaintenance.yml: can run gradle tests
- youtrackAutoAnalysis.yml: uses TDD for bug fixes and features

Also add guidance in testsMaintenance to verify actual Neovim behavior
when working with skip reasons, and allow nvim/echo bash commands.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-13 07:05:27 +02:00
Claude
381dc2684b Remove unused SkipNeovimReason.CMD
This enum value had no documentation, a vague name, and was not used
anywhere in the codebase.
2026-01-13 06:43:22 +02:00
Alex Plate
26154061f7 Add clear output when Neovim testing is enabled
Print "NEOVIM TESTING ENABLED" message when running tests with -Dnvim
flag so AI can verify Neovim testing is actually active.

Also fix skill documentation to use correct -Dnvim flag.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 14:04:43 +02:00
Alex Plate
fa2b54bc2d Deprecate SkipNeovimReason.UNCLEAR
Similar to DIFFERENT, UNCLEAR is too vague and should be replaced
with a more specific reason after investigation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 14:00:59 +02:00
Alex Plate
85ccfcd4b0 Add instructions for handling deprecated DIFFERENT annotation
Document the process for tests-maintenance skill:
1. Try removing annotation and running with Neovim first
2. If test passes, remove the outdated annotation
3. If test fails, replace with a more specific reason

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 13:58:56 +02:00
Alex Plate
3c967d1f03 Fix Neovim test annotations in SearchGroupTest
- Change `test negative lookbehind regression` to use IDEAVIM_API_USED
  (test uses internal search() helper that calls VimPlugin API directly)
- Remove outdated TestWithoutNeovim annotations from 5 tests that now
  pass with Neovim: smartcase/ignorecase search tests

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 13:55:04 +02:00
Alex Plate
47215cfda1 Deprecate SkipNeovimReason.DIFFERENT in favor of more specific reasons
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 13:55:04 +02:00
Alex Plate
20f86bc0b4 Add explanations for disabled tests in MultipleCaretsTest
Document why each disabled test is disabled:
- testCopyVisualText: CopyTextCommand processes carets sequentially,
  causing document shifts that corrupt subsequent caret operations
- testPutVisualLines: Multi-caret :put with visual selection only
  processes one caret (also fixed invokeAndWait wrapper)
- testMoveText* tests: MoveTextCommand explicitly throws exception
  for multiple carets

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-12 13:55:04 +02:00
claude[bot]
7fa5ebb80c Update changelog: Add VimScript functions, fix high CPU
Added changelog entries for:
- New VimScript functions (20+ List/Dictionary/String functions)
- High CPU usage fix while showing command line
- String/Number comparison fix in VimScript

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-12 13:47:56 +02:00
Matt Ellis
9bffb4f42f Fix min arity for remove() function 2026-01-09 19:12:27 +02:00
Matt Ellis
3cdea85df4 Move common functions to collectionFunctions
Add a new package for functions that apply to both List and Dictionary, as well as some String functions (where a String is treated like a collection of characters). Trying to group some functions that shouldn't just sit at top level
2026-01-09 19:12:27 +02:00
Matt Ellis
cc1122b3b6 Rename file 2026-01-09 19:12:27 +02:00
Matt Ellis
5adff67ec8 Add List uniq() function 2026-01-09 19:12:27 +02:00
Matt Ellis
8340be8459 Add List sort() function 2026-01-09 19:12:27 +02:00