-
Notifications
You must be signed in to change notification settings - Fork 2.8k
iTerm now supports OSC 9;4 (terminal window progress bar) #16506
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
|
r? @weihanglo rustbot has assigned @weihanglo. Use |
| let iterm = std::env::var("TERM_PROGRAM").ok() == Some("iTerm.app".into()); | ||
|
|
||
| (windows_terminal || conemu || wezterm || ghostty) && stream.is_terminal() | ||
| (windows_terminal || conemu || wezterm || ghostty || iterm) && stream.is_terminal() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do old versions gracefully ignore these escape codes?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good question! I'll follow up with @gnachman about this.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Likely you can just do a quick check by forcing this on in older versions. The main reason this comes up is
- For some escape code sequences, there are bugs in older versions
- I think it was this escape sequence that partially overlapped with another one and terminals would do weird things if they didn't guard against that
|
Regarding CI, it was fixed in crate-ci/typos#1447, so we just need to update. I'll post a PR. |
This will unblock rust-lang#16506
### What does this PR try to resolve? This will unblock #16506 ### How to test and review this PR?
|
A rebase should resolve the CI failure. |
|
This PR was rebased onto a different master commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
FWIW, it would be nice if we could avoid merge commits in pull requests. Feel free to rebase as needed. Keeping the history linear makes PRs easier to read and review, and ideally we’d only see a merge commit when the PR itself is merged, not merges from master along the way. |
Oops, my apologies 🙏 |
What does this PR try to resolve?
Per the iTerm version 3.6.6 release - "Add support for OSC 9;4 progress bars"
I added iTerm to
nextesthere and they suggested I add it to Cargo as well.How to test and review this PR?
I've test this locally, but it isn't really a unit test or integration test candidate.
Here's the output from my local iTerm console: