doc: Remove ideas for marks and registers from plans.

This commit is contained in:
2026-03-14 13:56:22 -04:00
parent 2e29dfc103
commit 18c66ca7a9
2 changed files with 44 additions and 26 deletions

View File

@@ -170,19 +170,26 @@ through hooks and structured I/O. A handler hook can
receive hover events and emit commands to modify menu
state.
## Phase 4: Multi-Select & Registers
## Phase 4: Multi-Select
Power selection features.
Selection with undo/redo. No marks or registers: filtering
already handles navigation, and selections surviving filter
changes covers the register use case.
**Deliverables:**
- Space to toggle select, V for visual line mode
- Multi-select output (multiple JSON lines)
- Named registers (`"a` through `"z`)
- Marks (`m{a-z}`, `'{a-z}`)
- `--multi` flag to enable multi-select mode
- `--multi` flag to gate all multi-select behaviour
- `Space`/`Tab` toggle-select, `Shift+Tab` toggle-up
- `V` visual line mode (force-select ranges)
- `u`/`Ctrl+R` undo/redo selection changes, `U` clear all
- Selections survive filter changes (tracked by original index)
- `--selection-order` flag for insertion-order output
- Multi-item output: one JSON line per selected item
- Action-fd commands: toggle-select, select-all, deselect-all,
undo-selection, redo-selection
- Test DSL: `multi` fixture, `selected_items` assertion
**Done when:** You can select multiple items, store them
in registers, and get them all in the output.
**Done when:** `seq 1 20 | pikl --multi`, toggle a few items
with Space, confirm, and all selected items appear on stdout.
## Phase 5: Table Mode & CSV
@@ -204,8 +211,7 @@ Persistence and external control.
**Deliverables:**
- `--session name` for state persistence
- Session state: filter, scroll position, selections,
marks, registers
- Session state: filter, scroll position, selections
- Session history log file
- Unix socket IPC while running
- IPC commands: push/remove/update items, set filter,