-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
Tmux redraws incorrectly when scrolling #14514
Comments
I don't think so, no. This shouldn't be a problem with our scrollback, because when you're in a tmux session, it manages the scrollback history itself. So if you're scrolling up (which I believe you initiate in tmux with So if it's a dupe of anything, I'd guess #6987 and/or #8000, but I can't see anything in those screenshots that would trigger that kind of problem. Typically I'd expect to see some weird Unicode characters, but maybe there is something like a zero-width joiner, or the corruption occurred earlier with content that is no longer visible. If we're lucky, this might get fixed with the #8000 improvements. If not, we're probably going to need an easily reproducible test case to figure out where exactly it's failing. |
While I do see similar artifacts when replicating #6987, I'm still able to scroll (in tmux) normally after it happens |
Would you mind sharing a repro with the debug tap enabled +
This may help us in pinning down exactly where in the stack the issue is. Thanks! |
I will see what I can do. It will take me a while to do this as I do not have a consistent way to repro this :( |
Ok, I spoke too soon. Got it on my first try! Steps:
14514_debug_output.txt If it comes up, my
|
This looks to me like it could be a variation of #14690. When you pan up in the scrollback buffer, this is what tmux does:
The problem is that step 5 doesn't just move down a line, but also moves the cursor back to the first column. So instead of erasing the old line indicator, it's erasing the start of the line. And I suspect the reason the Assuming that is the correct interpretation, this should be fixed by PR #14735. |
I don't know enough about the alt buffer, but I did exactly what you mentioned in your issue, and I did indeed get your result. So I tried a mix with my tmux scenario: Test 1
Test 2
So no error on these two attempt. If I'm just doing it wrong or this is a "not always" thing, then these results are meaningless |
The problem is that
Just running In the So if you want to confirm that this is the same problem as #14690, I'd suggest you eliminate
If |
Problem still happening on 1.16.10262.0 |
@andyneff Thanks for checking, but the fix hasn't been released yet, unless you're building from source. But if you subscribe to issue #14690, you should get a notification from the msftbot as soon as it is released, and that'll also tell you exactly which version has the fix (I'm assuming it'll be in a Preview build first). |
I'm gonna leave this open so that once 1.18 is out we can absolutely confirm that this is fixed, but yea I'm inclined to believe this is the same thing. |
@andyneff can you double check that this is fixed now that 1.18 is out/? You should be able to get it from https://github.com/microsoft/terminal/releases/tag/v1.18.1462.0 |
I'm having trouble reproducing it on 1.17.11461.0 today, and it is not producing any errors on 1.18.1462.0 today too. |
Right on. Thanks for following up. Glad this got sorted out! |
There seems to be a regression on Version: 3.3a-3, can others confirm? I'm using iTerm2 on Mac, connected to a Docker container / Amazon Linux:
and
|
@valk I think you're in the wrong place. This is the issue tracker for Windows Terminal. If you're having a problem with iTerm2, you can file a report via one of the links here: https://iterm2.com/bugs/ |
Windows Terminal version
1.15.2875.0
Windows build number
10.0.22621.900
Other Software
tmux 3.3a
Steps to reproduce
I've been having this problem since I started using Terminal many month ago. It happens at random, and I've never really been able to reproduce it on demand.
For a while today, I was able to reproduce it this way (but then it stopped reproducing, so I doubt these step will work for anyone)
tmux
docker run -it --rm alpine
find /usr
Expected Behavior
Scrolling to always work correctly, like so:
Actual Behavior
You see the numbers in the upper right messed up, and the actual buffer on screen looks all wrong.
Many more details about the redrawing are incorrect, but this is the simplest to explain
The solution is to close Windows Terminal, and restart it again. Luckily, I'm in tmux so that's pretty straight forward. But anything less than restarting the tab does not work. Often creating a new tab usaully works and I don't have to close the entire Windows Terminal window
reset
does not workMay be related to #8000 or #6987, but it seemed different enough it might not be.
The text was updated successfully, but these errors were encountered: