Claude Code IdeaVim Extension Migration from VimExtensionFacade to VimApi
Migrate an IdeaVim extension to VimApi and the annotated plugin interface in small steps. Establish the old behavior with tests, then migrate individual handlers and mapping registration.
中文Install in Claude Code
Use Claude Code in the pinned IdeaVim checkout. The API module, target extension, and tests should be available. Use the project's Gradle setup for verification.
- Open the pinned repository checkout and confirm `.claude/skills/extensions-api-migration/SKILL.md` is present.
- Start Claude Code at the repository root and call `/extensions-api-migration` with the change and its verification goal.
Example task
Practice with a fictional extension whose mapping selects the current paragraph. Its handler uses VimExtensionFacade. Migrate only that handler and preserve the key mapping and resulting selection.What to check
Review function extraction, replacement of VimApi calls, and mapping registration separately. The same mapping and selection assertions should apply at every step.
Original SKILL.md on GitHub · Updated
Frequently asked question
How should a migration cover several extension handlers?
Start with one handler that has tests. Migrate and verify it before moving to the next so a behavior change can be traced to its cause.