kingToolbox / kingToolbox/WindTerm

Feature Request: Support OSC 133 Shell Integration

Open
#3,542 1 comment 6 reactions 0 assignees View on GitHub
Dominant language
C
Stars
32.3k
Forks
2.5k
PR merge metrics
No merged PRs in 30d

Description

### Problem
When using fish shell (and other modern shells like zsh with certain plugins), WindTerm displays escape sequences like `]133;A;click_events=1\~` at the end of prompts. These are OSC 133 sequences that modern shells use for shell integration features.

### What are OSC 133 sequences?
OSC 133 (Operating System Command 133) sequences are control codes that shells send to terminals to mark:
- Prompt start/end
- Command start/end
- Command output boundaries
- Command execution status

### Current Behavior
```
user@host ~ ]133;A;click_events=1\~
```

### Expected Behavior
WindTerm should either:
1. **Support OSC 133** (preferred) - Parse and use these sequences to enable features like:
- Click to select/copy command output (excluding prompt)
- Jump between commands with keyboard shortcuts
- Visual indicators for command success/failure
- Smart scrolling to previous commands

2. **Silently ignore** - Strip these sequences to avoid visual clutter

### Terminals with OSC 133 Support
- iTerm2
- WezTerm
- Visual Studio Code terminal
- Windows Terminal
- Alacritty (with recent versions)

### References
- [OSC 133 Specification](https://gitlab.freedesktop.org/Per_Bothner/specifications/-/blob/master/proposals/semantic-prompts.md)

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the stray OSC 133 output using fish or zsh, then trace WindTerm's terminal escape-sequence handling to find where these sequences are displayed. Done means OSC 133 sequences are either parsed for shell-integration behavior or silently removed so they no longer appear in prompts.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, fish, zsh
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.