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
The client-side rsel drag selection (blue overlay, pwsh-style) has a few behavioural gaps compared to Windows 11's native PowerShell selection in Windows Terminal:
Pane boundary bleed: the overlay spans the full terminal width on intermediate rows, so dragging inside a pane visually bleeds into neighbouring panes on multi-line selections.
Forced copy-on-release: rsel always copies to the clipboard and clears the selection on mouse-up. Windows 11 PowerShell keeps the selection visible until an explicit copy action (right-click, Ctrl+C, Ctrl+Shift+C), letting users refine the selection or dismiss it with a click.
No multi-click word/line selection: double-click / triple-click do nothing special. Native terminals expand to a word / line.
No modifier-extend: Windows 11 uses Shift+click to extend an existing selection — unfortunately Windows Terminal reserves Shift+click for its own native selection override, so this needs a different modifier (Ctrl+click is a natural fallback).
No block selection: Alt+drag does not produce a rectangular selection.
No Ctrl+Shift+C / Ctrl+Shift+V / smart Ctrl+C bindings tied to the rsel state.
Item 1 is a latent rendering bug (intermediate rows iterate 0..=area.width-1 regardless of pane rect). Items 2-6 are behaviour the existing rsel path was never designed for but are expected by users coming from Windows 11 PowerShell.
Proposal
Add a new pwsh-mouse-selection session option (boolean, default off) that opts into Windows 11 PowerShell-parity behaviour:
Selection persists after mouse-up; copy only on right-click / Ctrl+Shift+C / smart Ctrl+C
Double-click word / triple-click line selection (within the originating pane)
Ctrl+click extends the current selection to the click point
Alt+drag produces a rectangular (block) selection
Ctrl+Shift+C, Ctrl+Shift+V, and smart Ctrl+C (copy-if-selected, SIGINT otherwise) key bindings
White overlay (closer to Windows Terminal's native selection colour)
Default stays off so existing users see zero behavioural change.
Environment
psmux version: 3.3.2
Terminal: Windows Terminal
OS: Windows 11
Notes
Shift+click cannot be reclaimed because Windows Terminal hardcodes it as a native selection override regardless of mouse tracking state. Ctrl+click is used instead.
Auto-scroll during drag at pane edges is out of scope — rsel operates on visible content only, and scrolling the scrollback buffer belongs to copy mode.
Summary
The client-side
rseldrag selection (blue overlay, pwsh-style) has a few behavioural gaps compared to Windows 11's native PowerShell selection in Windows Terminal:rselalways copies to the clipboard and clears the selection on mouse-up. Windows 11 PowerShell keeps the selection visible until an explicit copy action (right-click,Ctrl+C,Ctrl+Shift+C), letting users refine the selection or dismiss it with a click.Ctrl+Shift+C/Ctrl+Shift+V/ smartCtrl+Cbindings tied to therselstate.Item 1 is a latent rendering bug (intermediate rows iterate
0..=area.width-1regardless of pane rect). Items 2-6 are behaviour the existingrselpath was never designed for but are expected by users coming from Windows 11 PowerShell.Proposal
Add a new
pwsh-mouse-selectionsession option (boolean, defaultoff) that opts into Windows 11 PowerShell-parity behaviour:Ctrl+Shift+C/ smartCtrl+CCtrl+clickextends the current selection to the click pointAlt+dragproduces a rectangular (block) selectionCtrl+Shift+C,Ctrl+Shift+V, and smartCtrl+C(copy-if-selected, SIGINT otherwise) key bindingsDefault stays
offso existing users see zero behavioural change.Environment
Notes
rseloperates on visible content only, and scrolling the scrollback buffer belongs to copy mode.