ConEmu: Display corruption in irssi, others running inside tmux in WSL bash
Versions
ConEmu build: 180206 x64 and x32 both, fresh download, settings reset to default OS version: Windows 10 Pro x64 ver 1709 build 16299.125 Used shell version: WSL bash with wslbridge/connector as launched by the default ConEmu {Bash::bash} task
Problem description
First of all I hope ConEmu is the right place to report this, but to my amateur observation it seemed like the most likely place to start at least. Apologies if that isn’t the case.
When running irssi inside tmux in WSL bash, the output becomes garbled during use. It’s a bit difficult to describe exactly, but it’s particularly notable when using pageup and pagedown to scroll up and down. Irssi scrolls by half a page at a time, and it looks like the other half either doesn’t update or gets blanked depending on which way it’s being scrolled. This is completely consistent and reproducible on my end. New lines also seem to get printed in the wrong place or some lines don’t update correctly. The scrolling problem was the clearest and most consistent one to repro so it’s included here as an animated gif:
There’s visual weirdness in programs other than irssi too, but irssi seems to be most consistent to reproduce for me. In less
, after scrolling the status line of tmux
at the bottom becomes blank or disappears or is printed in the wrong place, and less
’ statusline prints either either correctly on the second to last line, or incorrectly on the blank line where tmux
’ status line was, or it doesn’t show at all. Line lengths in manpages (paged by less) get messed up when scrolling at least on a console noticeably wider than the standard 80 characters.
The image below (not animated) is after scrolling down for a bit in less. Also notice how part of the tmux status line (grey background), which should be at the bottom, is at the end of some completely different line.
Also, the issues with
less
seem to become more pronounced on a console noticeably wider than 80 characters.
Issuing a tmux redraw with Ctrl+b r
seems to always fix the screen for that moment, but then it starts getting corrupted again.
I believe this is not a WSL/Windows console issue, or at least not completely, because the tmux+irssi/less combination seems to work fine when WSL bash is started either from normal Windows command prompt or PowerShell. The issues only happen when using WSL bash in ConEmu+tmux.
Based on tmux FAQ there is a similar-looking problem with irssi in normal Linux usage when using incorrect $TERM
inside/and outside tmux, but my $TERM
is xterm-256color
outside and screen-256color
inside tmux, which I understand to be the correct configuration.
Steps to reproduce
- Create a new console in ConEmu with the default {Bash::bash} task
sudo apt-get install tmux irssi
tmux
irssi
/set
prints out all irssi settings, just to give something to scroll around in. If you’re quick, you can see there’s something odd going on with printing and scrolling already.- press pageup a few times and then pagedown, note how both corrupt the display in a different way
To try seeing corruption in less
, although this doesn’t seem to happen as consistently:
sudo apt-get install tmux
less /usr/share/doc/bash/README
- scroll to the bottom either with arrows or pagedown, you should see the last lines getting corrupted at least
- Try a manpage like
man bash
(less is the default pager) and scrolling around with arrow keys and pageup and pagedown. You can also try resizing the console to be larger than the default, with a wider console the line width seem to become inconsistent once the corruption starts when scrolling.
Actual results
Display corruption and explained and shown above
Expected results
No display corruption.
Logs
Here’s a log of me doing the tmux irssi and less activities as explained in the repro steps, where the corruption is showing on my display. ConEmu-2018-02-09-p4956.log
About this issue
- Original URL
- State: open
- Created 6 years ago
- Reactions: 7
- Comments: 25 (7 by maintainers)
Commits related to this issue
- gh-1444: ANSI. Fix irssi rendering under tmux. — committed to Maximus5/ConEmu by Maximus5 6 years ago
Issue has been already fixed, just wait for a while, new build is on the way