[PR #5127] [MERGED] Add a "debug tap" that lets you see the VT behind a connection #26117

Open
opened 2026-01-31 09:14:02 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/5127
Author: @DHowett-MSFT
Created: 3/26/2020
Status: Merged
Merged: 3/26/2020
Merged by: @DHowett-MSFT

Base: masterHead: dev/duhowett/debug-tap


📝 Commits (6)

  • 8499e54 HAX: Debug Tap Connection
  • 0f90ea4 debug tap: update for COnnection State
  • 8a1a947 Merge remote-tracking branch 'origin/master' into dev/duhowett/debug-tap
  • e4e6480 Cleanup, let input flow through both sides, document
  • 634fe64 appease the spelling lord
  • c2933c9 Put it behind a setting

📊 Changes

6 files changed (+239 additions, -2 deletions)

View changed files

src/cascadia/TerminalApp/DebugTapConnection.cpp (+147 -0)
src/cascadia/TerminalApp/DebugTapConnection.h (+42 -0)
📝 src/cascadia/TerminalApp/GlobalAppSettings.cpp (+19 -1)
📝 src/cascadia/TerminalApp/GlobalAppSettings.h (+4 -0)
📝 src/cascadia/TerminalApp/TerminalPage.cpp (+25 -1)
📝 src/cascadia/TerminalApp/lib/TerminalAppLib.vcxproj (+2 -0)

📄 Description

Summary of the Pull Request

This pull request adds a debugging feature that can be activated by holding down Left Alt and Right Alt when a new tab is being created.

That debugging feature takes the form of a split pane that shows the raw VT sequences being written to and received from the connection.

It looks like this:

image

PR Checklist

Detailed Description of the Pull Request / Additional comments

When those buttons are held down, every connection that's created as part of a new tab is wrapped and split into two connections: one to capture input (and stand in for the main connection) and one to capture output (and be displayed off to the side)

Validation

This has been baking in various forms of validation since September.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/5127 **Author:** [@DHowett-MSFT](https://github.com/DHowett-MSFT) **Created:** 3/26/2020 **Status:** ✅ Merged **Merged:** 3/26/2020 **Merged by:** [@DHowett-MSFT](https://github.com/DHowett-MSFT) **Base:** `master` ← **Head:** `dev/duhowett/debug-tap` --- ### 📝 Commits (6) - [`8499e54`](https://github.com/microsoft/terminal/commit/8499e54e76655a5c7dd94b3711e708854300b100) HAX: Debug Tap Connection - [`0f90ea4`](https://github.com/microsoft/terminal/commit/0f90ea4be3bf8909c1ef83d83d58a8f488ebbdc8) debug tap: update for COnnection State - [`8a1a947`](https://github.com/microsoft/terminal/commit/8a1a947855b1534a3e78db744e50aeebcb1892ef) Merge remote-tracking branch 'origin/master' into dev/duhowett/debug-tap - [`e4e6480`](https://github.com/microsoft/terminal/commit/e4e6480610ccf87ddd4ffabf48a23d39f21fca98) Cleanup, let input flow through both sides, document - [`634fe64`](https://github.com/microsoft/terminal/commit/634fe6423419fdf14c55e5214769fcb6440ea4ef) appease the spelling lord - [`c2933c9`](https://github.com/microsoft/terminal/commit/c2933c9016832f38d9a338ced84cf3945d54aaa7) Put it behind a setting ### 📊 Changes **6 files changed** (+239 additions, -2 deletions) <details> <summary>View changed files</summary> ➕ `src/cascadia/TerminalApp/DebugTapConnection.cpp` (+147 -0) ➕ `src/cascadia/TerminalApp/DebugTapConnection.h` (+42 -0) 📝 `src/cascadia/TerminalApp/GlobalAppSettings.cpp` (+19 -1) 📝 `src/cascadia/TerminalApp/GlobalAppSettings.h` (+4 -0) 📝 `src/cascadia/TerminalApp/TerminalPage.cpp` (+25 -1) 📝 `src/cascadia/TerminalApp/lib/TerminalAppLib.vcxproj` (+2 -0) </details> ### 📄 Description ## Summary of the Pull Request This pull request adds a debugging feature that can be activated by holding down <kbd>Left Alt</kbd> _and_ <kbd>Right Alt</kbd> when a new tab is being created. That debugging feature takes the form of a split pane that shows the raw VT sequences being written to and received from the connection. It looks like this: ![image](https://user-images.githubusercontent.com/14316954/77599489-1009a600-6ec2-11ea-995a-8e5531df2dcb.png) ## PR Checklist * [x] Closes #3206 ## Detailed Description of the Pull Request / Additional comments When those buttons are held down, every connection that's created as part of a new tab is wrapped and split into _two_ connections: one to capture input (and stand in for the main connection) and one to capture output (and be displayed off to the side) ## Validation This has been baking in various forms of validation since September. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:14:02 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#26117