Skip to content

Bug: Chinese IME punctuation duplicates in v1.101 when Vim extension is active #251608

Closed
@muyiGin

Description

@muyiGin

Does this issue occur when all extensions are disabled?: No

This issue appears to be a regression in VS Code itself, not an issue with the Vim extension alone.

Troubleshooting summary:
I have performed extensive testing. I've reinstalled VS Code completely multiple times and tested the Vim extension in isolation.

The key finding is: The bug only appears in recent VS Code builds (e.g., May 2025, v1.101). When I downgrade VS Code to the March 2025 version, the problem completely disappears, even while using the same latest version of the Vim extension.

This strongly suggests a breaking change was introduced within VS Code's core between the March and May versions that affects how it handles IME events when the Vim extension is active.

  • VS Code Version: 1.101.0 (May 2025)
  • OS Version: Windows 11 (on AMD R9 CPU)

Steps to Reproduce:

  1. Use VS Code version 1.101.0.
  2. Ensure the VSCodeVim extension is enabled.
  3. Open any file in the editor.
  4. Press i to enter Vim's Insert Mode.
  5. Switch the system's input method to any Chinese IME.
  6. Type a full-width punctuation mark, such as a comma or a period .

Actual Behavior:
The punctuation mark is immediately duplicated (e.g., becomes ,,).

Expected Behavior:
Only a single punctuation mark should be inserted (e.g., should remain ).

Metadata

Metadata

Assignees

Labels

VIMVIM issueauthor-verification-requestedIssues potentially verifiable by issue authorbugIssue identified by VS Code Team member as probable bugconfirmedIssue has been confirmed by VS Code Team membereditor-edit-contextinsiders-releasedPatch has been released in VS Code InsidersupstreamIssue identified as 'upstream' component related (exists outside of VS Code)upstream-issue-linkedThis is an upstream issue that has been reported upstreamverifiedVerification succeeded

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions