On Fri, 30 Apr 2021 10:40:33 -0600 Brian Inglis wrote: > On 2021-04-30 08:53, Takashi Yano via Cygwin wrote: > > On Fri, 30 Apr 2021 08:25:12 -0600 > > Kevin Locke wrote: > >> Hi All, > >> > >> I'm investigating an issue in Git for Windows[^1], which also affects > >> Cygwin. The issue is that, when using CMD (i.e. Command Prompt) on > >> Windows 10 1703 or above with "Legacy Console Mode"[^2] disabled, if > >> TERM=cygwin is set in the environment, the console is not cleared when > >> vi exits. To demonstrate, with Cygwin 3.2.0, in CMD with "Legacy > >> Console Mode" disabled: > >> > >> cd C:\cygwin64 > >> set TERM=cygwin > >> bin\vi etc\bash.bashrc > >> :q > >> > >> After exiting vi, the console window has not been cleared and content > >> from etc\bash.bashrc remains visible, making further use of the console > >> difficult until cleared. > >> > >> The difference appears to result from enabling > >> SetConsoleMode(ENABLE_VIRTUAL_TERMINAL_PROCESSING) and > >> SetConsoleMode(ENABLE_VIRTUAL_TERMINAL_INPUT)[^3] to behave like > >> xterm-256color when supported[^4] (they are not supported in "Legacy > >> Console Mode"). > >> > >> I'm not too familiar with TTY/PTY handling, much less Cygwin on top of > >> CMD. It's not clear to me if the alternate screen buffer behaves > >> differently in CMD than xterm, whether Cygwin has any responsibility, or > >> if the issue is in how CMD handles ANSI escape sequences. Johannes > >> Schindelin suggested it may make sense not to enable virtual terminal > >> processing when TERM=cygwin is set.[^5] Thoughts? > >> > >> Any advice or assistance for how to address this issue would be > >> appreciated. > >> > >> Thanks, > >> Kevin > >> > >> [^1]: https://github.com/git-for-windows/git/issues/3177 > >> [^2]: https://docs.microsoft.com/windows/console/legacymode > >> [^3]: > >> https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/fhandler_console.cc;h=ebe89fc9f8fd9fcb8102ee9884b8b91f04e88fb1;hb=5eb232ede72e394e280d1a23131267c7002d2c52#l464 > >> [^4]: > >> https://cygwin.com/git/?p=newlib-cygwin.git;a=blob;f=winsup/cygwin/fhandler_console.cc;h=ebe89fc9f8fd9fcb8102ee9884b8b91f04e88fb1;hb=5eb232ede72e394e280d1a23131267c7002d2c52#l1327 > >> [^5]: > >> https://github.com/git-for-windows/git/issues/3177#issuecomment-828494565 > > > > Why on earth do you want to set TERM=cygwin? > > If you don't set TERM=cygwin, TERM is automatically set to > > xterm-256color, in which the issue does not occur. > > Was this a change made to Cygwin and from which version?
IIRC, from cygwin 3.1.0. -- Takashi Yano <takashi.y...@nifty.ne.jp> -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple