feat(command): add smart edit-or-drill for aggregated cells

Introduce EditOrDrill command that intelligently handles
editing based on cell type. When cursor is on an aggregated
pivot cell (categories on Axis::None, no records mode), it
drills into the cell. Otherwise, it enters edit mode with
the current displayed value.

The 'i' and 'a' keys now trigger edit-or-drill instead of
enter-edit-mode. Aggregated cells are styled in italic to
signal that drilling is required for editing.

Co-Authored-By: fiddlerwoaroof/git-smart-commit (unsloth/Qwen3.5-35B-A3B-GGUF:Q5_K_M)
This commit is contained in:
Edward Langley
2026-04-05 12:35:40 -07:00
parent 94bc3ca282
commit ab92775357
3 changed files with 48 additions and 4 deletions

View File

@ -331,9 +331,9 @@ impl KeymapSet {
);
normal.bind(KeyCode::Tab, none, "cycle-panel-focus");
// Editing entry
normal.bind(KeyCode::Char('i'), none, "enter-edit-mode");
normal.bind(KeyCode::Char('a'), none, "enter-edit-mode");
// Editing entry — i/a drill into aggregated cells, else edit
normal.bind(KeyCode::Char('i'), none, "edit-or-drill");
normal.bind(KeyCode::Char('a'), none, "edit-or-drill");
normal.bind(KeyCode::Enter, none, "enter-advance");
normal.bind(KeyCode::Char('e'), ctrl, "enter-export-prompt");