delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
DKIM-Filter: | OpenDKIM Filter v2.11.0 sourceware.org E1587385741D |
DKIM-Signature: | v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; |
s=default; t=1619792721; | |
bh=vCZyE27ijTi0xZl+K/N9OVhvnWPwjMQcWGnDzGvz0sk=; | |
h=Date:To:Subject:List-Id:List-Unsubscribe:List-Archive:List-Post: | |
List-Help:List-Subscribe:From:Reply-To:Cc:From; | |
b=P9nuyLn0e7Qookx3pDP6G9FkP3vvtTLxMBjM1MbA1n9TTbjtwpiklciRwIn81XnYs | |
DX/9J/H/DlwyBrymYXYslhgzw1O9jB89AcNKwuKaazwJ6uivnZImW6VIAMP7yaSvAA | |
ZOetGa/kYx9BmKe4WAEhlbADVdrLMaiVGu/R9cQ0= | |
X-Original-To: | cygwin AT cygwin DOT com |
Delivered-To: | cygwin AT cygwin DOT com |
DMARC-Filter: | OpenDMARC Filter v1.3.2 sourceware.org BE2D03857413 |
Date: | Fri, 30 Apr 2021 08:25:12 -0600 |
To: | cygwin AT cygwin DOT com |
Subject: | Screen clearing in CMD without "Legacy Console Mode" |
Message-ID: | <YIwTSMfJu9uMwrKn@kevinlocke.name> |
MIME-Version: | 1.0 |
X-Spam-Status: | No, score=-2.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, |
DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, SPF_HELO_NONE, | |
SPF_PASS autolearn=ham autolearn_force=no version=3.4.2 | |
X-Spam-Checker-Version: | SpamAssassin 3.4.2 (2018-09-13) on |
server2.sourceware.org | |
X-BeenThere: | cygwin AT cygwin DOT com |
X-Mailman-Version: | 2.1.29 |
List-Id: | General Cygwin discussions and problem reports <cygwin.cygwin.com> |
List-Archive: | <https://cygwin.com/pipermail/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-request AT cygwin DOT com?subject=help> |
List-Subscribe: | <https://cygwin.com/mailman/listinfo/cygwin>, |
<mailto:cygwin-request AT cygwin DOT com?subject=subscribe> | |
From: | Kevin Locke via Cygwin <cygwin AT cygwin DOT com> |
Reply-To: | Kevin Locke <kevin AT kevinlocke DOT name> |
Cc: | Johannes Schindelin <johannes DOT schindelin AT gmx DOT de> |
Sender: | "Cygwin" <cygwin-bounces AT cygwin DOT com> |
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 -- 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
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |