Maximus5 / ConEmu

Customizable Windows terminal with tabs, splits, quake-style, hotkeys and more
https://conemu.github.io/
BSD 3-Clause "New" or "Revised" License
8.55k stars 572 forks source link

ConEmu Screen corrupted by using some utilities in Cygwin Bash shell #2185

Open wrecklass opened 3 years ago

wrecklass commented 3 years ago

ConEmu build: 201011 preview x64 OS version: Windows Version 10.0.19041 Build 19041 x64 Used shell version: Cygwin bash 4.4.12 x86_64

Problem description

The ConEmu terminal screen becomes corrupted after using FZF or after logging into another system via ssh.

Steps to reproduce

  1. Open new ConEmu terminal with Cygwin bash as shell
  2. Perform a command with FZF (or ssh to a different system)
  3. Edit a file in Vim and observe cursor/screen becomes corrupted as the cursor is moved

Note: This behavior does not occur when using FZF and Mintty.

Actual results

The screen becomes corrupted as the cursor is moved in a full-screen app like VIM.

Expected results

No screen corruption

Additional files

[Settings]Default ConEmu settings as installed. screenshots, ScreenShots: Use FZF to search bash history (as an example): FZF

Notice the screen corruption as the cursor is moved with an app like Vim: vim-corruption

What the screen would look like if FZF had not been used: VIM-correct

Note this would be the same if using FZF to do searches within VIM instead of from the command line before invoking Vim. Also, this same behavior can be seen if performing SSH to another system and simply exiting the remote shell.

I am reporting this here, as the issue is not present with other terminal software such as Cygwin Mintty or Windows Command Shell.

Maximus5 commented 3 years ago

Could you record log files with connector with such corruptioon and attach them here? https://conemu.github.io/en/AnsiLogFiles.html#connector

freerror commented 3 years ago

I can replicate this issue: open conemu with powershell/cmd session. Ssh remote to another computer. Open nvim, start scrolling...weird artifacts occur etc. After a "clear" the session itself comes right, but the moment you open vim and start scrolling the issue returns. Seems to be an incompatibility related to the TERM variable or term setting within nvim. However, I couldn't find a term variable that made the issue go away. No issue in native Powershell or CMD on windows.

kzalewski commented 3 years ago

I am running ConEmu 201124, and I'm having horrible problems with the screen becoming corrupted, typically after a clear command is issued in Cygwin. ConEmu is set to open into Cygwin, using the startup command: C:\cygwin\Cygwin.bat. The Bash shell displays fine. My window size is set to 80 columns by 55 rows, and my console font is "Terminal" at width 8 and cell 8.

If I avoid using the clear command, things seem to work fine. After I issue a clear command, everything starts going haywire. Simple ls commands produce what looks like garbage. Even just pressing Enter until the prompt hits the bottom of the window then produces a bunch of garbage. It seems to be buffered output from earlier ls commands and such. The reset command does not seem to fix this problem. Once the clear command is run, the terminal is apparently corrupted.

None of this happens when using the default Cygwin shell window and issuing clear commands.

Also, using CTL-L to clear the terminal screen does not seem to cause this problem. It is only the clear command, to the best of my knowledge.

kzalewski commented 3 years ago

This issue has persisted into the new 210112 release of ConEmu. I can confirm that it was NOT present in ConEmu-191012. I just tested using 191012, typing a "clear" command in a Cygwin shell, followed by long file listings, and the terminal never gets corrupted. However, with ConEmu 201011, 201124, and now 210112, the terminal gets corrupted after running the Cygwin "clear" command.

Maximus5 commented 3 years ago

So, you don't use connector, do you?

samuel-zuk commented 3 years ago

I'm also having a similar problem. Info about my setup: ConEmu version: 191012 preview (with cmder) OS: Windows 10 Home x64 20H2, build 19042.804 Shell: WSL2 (Arch Linux, kernel 5.4.72-microsoft-standard-WSL2, zsh 5.8 with oh-my-zsh) Task command: set "PATH=%ConEmuBaseDIrShort%\wsl;%PATH%" & wsl ~ Task parameters: none

I'm having issues, so far specifically with vi, vim, and neovim. vi appears fine, until I enter insert mode, in which text is not displayed correctly at all, making it impossible to edit. It appears the keystrokes sent to vi are interpreted correctly but the text editor does not display the text back on the screen accurately. For vim and nvim, insert mode and such work, but whenever text colors/background color changes, the colors are corrupted in a similar way.

cmder

Maximus5 commented 3 years ago

191012 is a bit outdated, isn't it?

kzalewski commented 3 years ago

I installed ConEmu-210314 today, and the Cygwin screen corruption problem seems to have disappeared. I have run the Cygwin clear command multiple times, followed by an ls command, and I have not witnessed any garbage characters polluting the screen.

Since I have not upgraded Cygwin, it seems that something has changed in ConEmu between 210112 and 210314 that has fixed this problem!

If some other users report good results, I'd say that this issue can be closed.

wrecklass commented 3 years ago

I installed ConEmu-210314 today, and the Cygwin screen corruption problem seems to have disappeared. I have run the Cygwin clear command multiple times, followed by an ls command, and I have not witnessed any garbage characters polluting the screen.

Since I have not upgraded Cygwin, it seems that something has changed in ConEmu between 210112 and 210314 that has fixed this problem.

Can you do this as a further check: 1) Open New con-emu 2) start an ssh session 3) Log back out of the ssh session 4) Now test for the issue.

I'm still seeing the issue, just as shown by samuel-zuk's post.

jimmyc802 commented 2 years ago

I am experiencing this in conemu 210912 as well. Noticed issues with htop, mysql, and ncdu.