Started: 2026-03-15 Completed: 2026-03-15
-
tone.rs— Vietnamese syllable parser (initial consonant, vowels, final consonant) -
tone.rs— Tone detection/manipulation using vi crate utilities -
tone.rs— Tone position algorithm ported from xkey/Unikey rules -
tone.rs—relocate_tone()post-processor moves tone to correct vowel -
engine.rs— Wiredrelocate_tone()intorecompose() - Tests — 80 total (51 original + 6 tone relocation + 23 tone module unit tests)
-
make build— full pipeline (Rust + Xcode) succeeds
Fixed tone placement bugs where typing tone before final consonant put the mark on the wrong vowel (e.g., "Vịêt" → "Việt", "xúât" → "xuất"). Post-processing approach: vi crate handles diacritics, new tone.rs relocates misplaced tones using xkey-derived rules.
- Phase 0: Scaffold (2026-03-15)
- Phase 1: Telex Engine (2026-03-15)
- Phase 2: Minimal IME (2026-03-15)
- Phase 2.5: Tone Placement Fix (2026-03-15)
- Tier 1 FST dictionary
- Phase 4: RWKV Integration (Tier 2 inference, ghost text)
- Phase 5: Polish (code-switching, settings, personalization)