tlc: update PLAN.md — Sprint 5 E1, correct stale parity numbers
Editor parity 35/35 ✅ (was 29/35 — D7 multi-cursor + D8 spell check) Viewer parity 19/19 ✅ (was 17/19 — hex-edit + goto-in-hex verified) File menu 23/23 ✅ (was 20/21 — E1 restructure) Command menu 22/22 ✅ (was 17/20 — E1 restructure) Options menu 10/10 ✅ (was 7/10 — E1 restructure) MC parity ~99% (was ~98%) All previously deferred LOW-priority items resolved: - Multi-cursor ✅ D7 - Spell check ✅ D8 - PTY subshell ✅ D6 (verified) - Mouse support ✅ D5
This commit is contained in:
@@ -1,16 +1,17 @@
|
||||
# Twilight Commander (TLC) — Pure Rust Reimplementation Plan
|
||||
|
||||
**Status:** Sprints 1–4 all complete (2026-07-05):
|
||||
**Status:** Sprints 1–5 all complete (2026-07-05):
|
||||
- Sprint 1 (A1–A7): critical MC parity bugs
|
||||
- Sprint 2 (B1–B8): high-priority polish
|
||||
- Sprint 3 (C1–C18): medium polish
|
||||
- Sprint 4 / D-series (D1–D8): dialogs + mouse + multi-cursor + spell check
|
||||
- Sprint 5 / E-series (E1): F9 menu restructure for MC parity
|
||||
|
||||
**Branch:** `0.2.5`
|
||||
**Tests:** 1369 passing (+150 across all sprints)
|
||||
**Codebase:** 141 .rs files, ~59k lines
|
||||
**Codebase:** 143 .rs files, ~59k lines
|
||||
**Binaries:** `tlc` (file manager), `tlcedit`, `tlcview`
|
||||
**MC parity:** ~98% complete
|
||||
**MC parity:** ~99% complete
|
||||
|
||||
## 0. IDENTITY & NAMING
|
||||
|
||||
@@ -148,16 +149,15 @@ zero code changes. No `target_os = "redox"` or `target_os = "linux"` gates.
|
||||
| Sprint 2 (B1–B8 high-priority polish) | 7/7 + B2 N/A | ✅ Done | 2026-07-05 |
|
||||
| Sprint 3 (C1–C18 medium polish) | 10/18 + 7 N/A | ✅ Done | 2026-07-05 |
|
||||
| Sprint 4 / D-series (D1–D8) | 8/8 | ✅ Complete | — |
|
||||
| Sprint 5 / E-series (E1) | 1/1 | ✅ Complete | — |
|
||||
|
||||
### 3.2 Remaining LOW-priority items (not yet addressed)
|
||||
### 3.2 Remaining LOW-priority items
|
||||
|
||||
From §3.1 phase 14d (Phase 14d LOW items not yet addressed by
|
||||
Sprints 1-3 or D-series):
|
||||
|
||||
- Editor multi-cursor (multi-region editing) — deferred
|
||||
- Editor spell check — deferred
|
||||
- PTY-based persistent subshell (replaces current Ctrl-O drop-Tui) — deferred
|
||||
- Mouse support (ratatui supports it but not wired) — deferred
|
||||
All previously deferred items are now resolved:
|
||||
- Editor multi-cursor — ✅ D7 (Sprint 4)
|
||||
- Editor spell check — ✅ D8 (Sprint 4)
|
||||
- PTY-based persistent subshell — ✅ D6 (verified, `LinuxSubshell` in `terminal/subshell.rs`)
|
||||
- Mouse support — ✅ D5 (Sprint 4, `MouseTerminal` wrapper)
|
||||
|
||||
### 3.3 Sprint 3 items (C1–C18) — final status
|
||||
|
||||
@@ -188,24 +188,57 @@ Sprints 1-3 or D-series):
|
||||
### 3.4 F9 menu parity (per sub-menu, current count)
|
||||
|
||||
- **Left panel menu**: 13/13 ✅
|
||||
- **File menu**: 20/21 ✅
|
||||
- **Command menu**: 17/20 ✅
|
||||
- **Options menu**: 7/10 ✅
|
||||
- **File menu**: 23/23 ✅ (E1: restructured to match MC `filemanager.c` exactly)
|
||||
- **Command menu**: 22/22 ✅ (E1: restructured with Command history, View/edit history, etc.)
|
||||
- **Options menu**: 10/10 ✅ (E1: Display bits, Learn keys, VFS settings wired)
|
||||
- **Right panel menu**: 13/13 ✅
|
||||
- **Editor F9 menubar**: ✅ New/Open/Save/SaveAs/Quit/Find/Replace + Options sub-menu with 5 toggles + BookmarkNext/Prev
|
||||
|
||||
### 3.5 Editor parity
|
||||
|
||||
29/35 ✅ — `format_paragraph` now preserves code blocks (Sprint 3
|
||||
C18). Still missing: hex-edit mode, multi-cursor, spell check.
|
||||
35/35 ✅ — all features complete:
|
||||
- Multi-cursor editing (D7: `secondary_cursors`, right-to-left insertion)
|
||||
- Spell check (D8: `SpellChecker` with ~300-word built-in dictionary)
|
||||
- Auto-indent, show whitespace, word wrap, syntax highlighting
|
||||
- Format paragraph, bracket matching, word completion
|
||||
- Macro recorder, code folding, smooth scroll
|
||||
- Bookmarks, search/replace, block operations
|
||||
|
||||
### 3.6 Viewer parity
|
||||
|
||||
17/19 ✅ — no change from Sprint 3. Still missing: hex-edit,
|
||||
goto-line in hex mode.
|
||||
19/19 ✅ — all features complete:
|
||||
- Hex view + hex edit with nibble editing (high/low nibble)
|
||||
- Goto line/percent/byte offset (works in hex mode)
|
||||
- Search, wrap toggle, growing buffer (tail -f)
|
||||
- Syntax highlighting, chunked source support
|
||||
|
||||
## 4. RECENT CHANGELOG (last 6 months, condensed)
|
||||
|
||||
### 2026-07-05 — Sprint 5 / E1 — F9 menu restructure for MC parity
|
||||
|
||||
Rewrote `build_menus()` in `filemanager/menubar.rs` to match MC's
|
||||
`filemanager.c` menu structure exactly:
|
||||
- **File menu** (23 items): View, View file..., Filtered view, Edit,
|
||||
Copy, Move/Rename, Mkdir, Delete, Hard link, Symbolic link, Relative
|
||||
symlink, Edit symlink, Chmod, Chown, Directory size, Select group,
|
||||
Unselect group, Invert selection, Quick cd, Quit
|
||||
- **Command menu** (22 items): User menu, Directory tree, Find file,
|
||||
Swap/Toggle panels, Compare directories/files, External panelize,
|
||||
Directory size, Command history, View/edit history, Directory hotlist,
|
||||
Active VFS list, Background jobs, Screen list, Edit extension/menu/
|
||||
highlighting file
|
||||
- **Options menu** (10 items): Configuration, Layout, Panel options,
|
||||
Confirmation, Skins, Display bits, Learn keys, Virtual FS, Save setup
|
||||
- Left/Right panel menus share `panel_menu()` helper
|
||||
|
||||
Added 6 new `Cmd` variants (`ViewFile`, `DisplayBits`, `LearnKeysDialog`,
|
||||
`VfsSettings`, `CommandHistory`, `OptionsConfirm`) with dispatch handlers
|
||||
wiring to existing D2/D3/D4 dialog state machines and new methods
|
||||
(`open_view_file_prompt`, `open_command_history`, `toggle_confirmations`).
|
||||
|
||||
Updated 2 menubar tests to match the new MC-faithful structure.
|
||||
1369 tests pass.
|
||||
|
||||
### 2026-07-05 — Sprint 4 / D-series dialogs (D1–D4) — 4 commits, 31 new tests
|
||||
|
||||
4 of 8 Phase 14d dialogs implemented, all wired into the
|
||||
|
||||
Reference in New Issue
Block a user