Skip to content

fix: preserve confirmed readings and handle shifted Korean vowels - #15

Merged
helloiamnotth3devnicetomeetyou merged 1 commit into
mainfrom
fix/confirmation-shift-overlap
Oct 22, 2026
Merged

helloiamnotth3devnicetomeetyou merged 1 commit into
mainfrom
fix/confirmation-shift-overlap

Conversation

@helloiamnotth3devnicetomeetyou

Copy link
Copy Markdown
Contributor

Summary

Fixes #11 and #12. Confirmation now preserves clean, completed readings, including the reported 연습햇 and Japanese preview cases. Completed Korean endings on known English stems appear before confirmation, while existing finishing rules for lone jamo, unfinished romaji, digits, and Japanese candidates remain intact.

Shift overlap in akfgkfRK now uses normal language scoring and yields 말할까. Raw key case, English capitalization, uppercase abbreviations, and explicit language cycling are preserved. Ordinary typing retains its existing fast path.

Prepares 0.10.9 and matching English/Korean changelogs; no release is published.

Validation

  • Reproductions failed before their fixes and pass afterward; real-model, session, and C FFI regressions cover surrounding text and UTF-16 caret preservation.
  • cargo test --workspace --all-features, formatting, default/all-feature Clippy, and changelog validation passed locally.
  • Existing enko/enkoja accuracy metrics and actual session sentence accuracy are unchanged. Three alternating release measurements per variant/profile showed overlapping core timing ranges.
  • The sole golden row change (present in two snapshots) retains visible wo on Tab instead of replacing it with 재.
  • Native IME GUI behavior and physical Shift timing were not tested locally.

Keep clean completed previews across confirmation instead of silently
accepting a different final language. Retain the existing finishing rules
for lone jamo, unfinished romaji and digit boundaries. Show accepted Korean
endings on known English stems before confirmation so mixed input remains
visible and existing sentence accuracy is preserved.

Allow a shifted vowel after a doubled consonant in a lowercase key stream
to use ordinary language scores. Preserve raw key case, capitalized English,
uppercase abbreviations, explicit cycling and learned choices.

Add real-model, session and C FFI regressions, including surrounding text,
UTF-16 caret positions, Japanese candidates and synthetic shape learning.
The sole golden behavior change keeps the visible wo on Tab rather than
replacing it with Korean. Prepare patch version 0.10.9 without publishing.

Fixes #11
Fixes #12

Signed-off-by: notth3dev <160973721+noth3dev@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: confirming Korean composition changes visible 연습햇 to 연습got

2 participants