You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat: add Enter key support and random newlines in practice content
Add Enter key input handling with visual `↵` icon display and
implement random newlines in practice generators for more engaging
and realistic typing practice.
Features:
- Enter key support with `\n` character validation
- Visual `↵` icon for newlines in expected text and typed input
- Random separator logic: 25% newline, 75% space in practice drills
- Preserved newline handling in text wrapping and cursor positioning
Changes:
- Input handler: Add KeyCode::Enter case (app.rs)
- Text rendering: Preserve newlines in wrap_text(), display `↵` icon (render.rs)
- Content generators: Add random newline separators (bigram, trigram, finger, key pair)
- Tests: Add Enter key validation tests, update deterministic tests for randomization
Documentation:
- Add special character visualization section to TUI design doc
- Update bigram generator design with random separator example
- Note Enter/newline support in CLAUDE.md constraints
Quality:
- All 148 tests passing
- Clippy warnings fixed (len_zero, manual_range_contains)
- Code formatted with cargo fmt
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
0 commit comments