test(terminal): pin a Japanese conversion-segment key against the Enter predicate

Shift+Left/Right resizing the conversion segment is a standard Japanese IME
operation, and on Windows it arrives mid-composition as Process/229 with Shift
held — the same shape as a shifted jamo, and the same rewrite into Enter.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HL8CxXZYghUKJEQpYhKeGg
This commit is contained in:
kunsanglee
2026-08-02 14:25:57 +09:00
co-authored by Claude Opus 5
parent 506524085f
commit cc69fa7bfc
@@ -355,7 +355,9 @@ describe('isTerminalImeProcessEnter', () => {
{ altKey: true }, { altKey: true },
// Windows hands every IME-consumed keydown the same Process/229 shape, so a shifted // Windows hands every IME-consumed keydown the same Process/229 shape, so a shifted
// jamo (ㅃ on KeyQ) differs from the committing Enter only by `code`. // jamo (ㅃ on KeyQ) differs from the committing Enter only by `code`.
{ code: 'KeyQ' } { code: 'KeyQ' },
// Same shape from a Japanese IME: Shift+Left/Right resizes the conversion segment.
{ code: 'ArrowLeft' }
])('rejects a non-IME or ambiguous Process key', (override) => { ])('rejects a non-IME or ambiguous Process key', (override) => {
expect(isTerminalImeProcessEnter(event(override))).toBe(false) expect(isTerminalImeProcessEnter(event(override))).toBe(false)
}) })