- Notifications
You must be signed in to change notification settings - Fork2.1k
Description
Suggestion
Implement OSC 9;9 support in Cmder's PowerShell prompt so Windows Terminal can duplicate and split tabs/panes in the same working directory, matching the recent fix for cmd.exe/Clink and following Microsoft's published guidance.
Use case
Cmder's cmd.exe integration now emits OSC 9;9 via Clink for Windows Terminal, enabling 'Duplicate Tab' and 'Split Pane' to preserve the working directory. PowerShell users can manually add OSC 9;9 emission to their prompt (per MicrosoftDocs/terminal), but Cmder's PowerShell experience should work seamlessly out of the box.
Example implementation:
This can be integrated into the existingprofile.ps1 script that Cmder uses.
functionprompt {$loc=$executionContext.SessionState.Path.CurrentLocation$out=""if ($env:WT_SESSION-and$loc.Provider.Name-eq"FileSystem") {$out+="$([char]27)]9;9;`"$($loc.ProviderPath)`"$([char]27)\" }$out+="PS$loc$('>'* ($nestedPromptLevel+1))"return$out}
If posh-git is present, wrap $GitPromptScriptBlock and add OSC 9;9 as in Microsoft Docs.
Ensure the change is non-invasive and only active in Windows Terminal and ConEmu (detect what terminal we're running on, using environment variables).
Extra info/examples/attachments
- Reference:cmderdev/cmder#3024
- Upstream Clink patch:clink@bc612d9b244e3632077c072cdf1fabd289b97133
- Microsoft’s documentation for PowerShell:TerminalDocs/tutorials/new-tab-same-directory.md
Checklist:
- Add OSC 9;9 emission for PowerShell in Cmder’s default profile.
- Gate emission behind $env:WT_SESSION or the equivalent for ConEmu.
- Preserve user customizations and compatibility with posh-git/Starship (if any).
- Document the change in the PR.
Checklist
- I have read the documentation and made sure this feature doesn't already exist.
- I have searched for similar issues and found none that describe my feature request.