diff options
Diffstat (limited to 'tmuxrdr/ROADMAP.md')
| -rw-r--r-- | tmuxrdr/ROADMAP.md | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/tmuxrdr/ROADMAP.md b/tmuxrdr/ROADMAP.md index e9147758..aff7a4ac 100644 --- a/tmuxrdr/ROADMAP.md +++ b/tmuxrdr/ROADMAP.md @@ -150,7 +150,22 @@ files where it can live apart, so the lines that touch upstream's stay few. `pane send-text` already uses (`encode_api_text`, `src/app/api_helpers.rs`), delete for `-`. Medium. -### 11. `D` choose-client +### 11. A mouse drag enters copy mode +- tmux: a drag enters copy mode (`MouseDrag1Pane` -> `copy-mode -M`); this + machine's tmux.conf unbinds `copy-mode-vi MouseDragEnd1Pane`, so the + selection stays there for `y` (its copy-pipe binding), `Enter`, or more + vi movement; double- and triple-click do the same with a word or a line. +- Gap: herdr's mouse selection is separate from copy mode (`mouse.rs`): kept + (copy_on_select = false) it copies only on Ctrl+C, and `y` goes to the + pane. tmuxrdr's config copies on release meanwhile. +- Patch: on drag release (and double/triple click), enter copy mode for that + pane with the selection carried over -- copy mode's selection is an anchor + and a cursor (`ClientCopySelection::Character`), in the same absolute pane + coordinates as the mouse selection (`sync_copy_selection`). Logic in a + tmuxrdr file, hooked from `mouse.rs` and `word_selection.rs`. Small to + medium. + +### 12. `D` choose-client - tmux: lists attached clients; pick one to detach. - Gap: no client list in the CLI or UI. - Patch: a client registry query on the server and a picker. Medium; low |
