public inbox for cygwin-developers@cygwin.com
 help / color / mirror / Atom feed
From: Thomas Wolff <towo@towo.net>
To: cygwin-developers@cygwin.com
Subject: Re: New implementation of pseudo console support (experimental)
Date: Fri, 17 Jul 2020 16:59:56 +0200	[thread overview]
Message-ID: <f0d67461-cee8-03d3-1229-97ea556b4424@towo.net> (raw)
In-Reply-To: <5a952942-239a-997c-9e5c-5ce8cfd0bfb0@towo.net>

[-- Attachment #1: Type: text/plain, Size: 3348 bytes --]

Am 17.07.2020 um 14:47 schrieb Thomas Wolff:
> Am 17.07.2020 um 13:19 schrieb Corinna Vinschen:
>> Hi Takashi,
>>
>> On Jul  1 20:47, Takashi Yano via Cygwin-developers wrote:
>>> On Fri, 29 May 2020 00:40:24 +0900
>>> Takashi Yano via Cygwin-developers <cygwin-developers@cygwin.com> 
>>> wrote:
>>>> On Tue, 26 May 2020 10:09:55 +0900
>>>> Takashi Yano via Cygwin-developers <cygwin-developers@cygwin.com> 
>>>> wrote:
>>>>> On Mon, 25 May 2020 19:53:32 +0900
>>>>> Takashi Yano via Cygwin-developers <cygwin-developers@cygwin.com> 
>>>>> wrote:
>>>>>> On Tue, 19 May 2020 22:40:18 +0900
>>>>>> Takashi Yano via Cygwin-developers <cygwin-developers@cygwin.com> 
>>>>>> wrote:
>>>>>>> On Sat, 16 May 2020 16:47:35 +0900
>>>>>>> Takashi Yano via Cygwin-developers 
>>>>>>> <cygwin-developers@cygwin.com> wrote:
>>>>>>>> On Sat, 16 May 2020 09:29:56 +0900
>>>>>>>> Takashi Yano via Cygwin-developers 
>>>>>>>> <cygwin-developers@cygwin.com> wrote:
>>>>>>>>> Fix a small bug caused when stdio is redirected to another pty.
>>>>>>>> Fix another bug caused when stdio is redirected to another pty.
>>>>>>> Revise the patch to fit the current git head.
>>>>>> Revise the patch again to fit the current git head.
>>>>> Make app, which reads stdin, work under gdb.
>>>> * Prevent ResizePseudoConsole() calls unless the pty is resized.
>>>> * Revise the patch to fit the current git head.
>>> Revise the patch to fit the current git head.
>> are you satisfied with the code?  If you want to merge it,
>> I'd bump Cygwin to 3.2.
> (blush) I apologize, I had promised to run my test cases.
> Beginning with it, the first succeeded, the second failed:
> run notepad (from mintty), click back into terminal, enter ^Z
> It says "Stopped" but the process is gone.
>
> Continuing may test suite soon...
OK, so here are finally my updated test results:


resize terminal while running Windows cmd
run cmd, resize, run dir/P:
✓works


terminal reports in response to request escape sequences
("\033[6n", "\033[0c", "\033[>c", '\033[18t', '\033]10;?\033\')
✓works


output to alternate screen
echo -e "\e[?1047h"; cmd
✓works
cmd
from other terminal: echo -e "\e[?1047h" > /dev/pty...
↯no output; weird behaviour on ^C, mintty terminating (also in 3.1.6)


signal handling/mediation; catch SIGTSTP
run notepad, click back into terminal, enter ^Z
↯fails, notepad is terminated
-> this is a regression, ^Z,^C,^\ used to be ignored


character set conversion from Windows cmd line program
run xcopy (Windows system language e.g. German), watch error message
✓works in Unicode terminal
✓works in non-Unicode terminal (e.g. LC_ALL=C.CP850 mintty)


handling non-ASCII characters in non-Unicode terminal + native interworking
LC_ALL=en_US mintty, check locale charmap -> ISO-8859-1
echo ö | od -t x1 -> 0xF6
✓works
cmd /c echo ö | od -t x1 -> 0x94
↯fails (also in cygwin 3.1.6)


using wincon.c, compiled with x86_64-w64-mingw32-gcc
run program, check colour of second output, give non-ASCII input, check echo
✓works in Unicode mintty
✓works in non-Unicode mintty


using attached wincon.c, compiled with gcc
run program, check colour of second output, give non-ASCII input, check echo
↯no output (regression, works in 3.1.6)


using attached program sgr.java
run program, check coloured output of middle characters
✓works (did not in 3.1.6)


[-- Attachment #2: wincon.c --]
[-- Type: text/plain, Size: 492 bytes --]

#include <wchar.h>
#include <windows.h>

void main()
{
  wchar_t * s = u"bäh 3€ 啕\n";
  HANDLE conout = GetStdHandle(STD_OUTPUT_HANDLE);
  DWORD len;

  WriteConsoleW(conout, s, wcslen(s), &len, 0);

  SetConsoleTextAttribute(conout, FOREGROUND_GREEN);
  WriteConsoleW(conout, s, wcslen(s), &len, 0);

  wchar_t buf[99];
  HANDLE conin = GetStdHandle(STD_INPUT_HANDLE);
  ReadConsoleW(conin, buf, 9, &len, 0);
  buf[len] = 0;
  DWORD len1;
  WriteConsoleW(conout, buf, len, &len1, 0);
}

[-- Attachment #3: sgr.java --]
[-- Type: text/plain, Size: 137 bytes --]

import java.io.*;

public class sgr {
    static public void main(String[] args) {
        System.out.println("ab^[[41mCD^[[mef");
    }
}

  reply	other threads:[~2020-07-17 14:59 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-13 12:16 Takashi Yano
2020-05-13 12:35 ` Thomas Wolff
2020-05-14  9:28 ` Takashi Yano
2020-05-14  9:34   ` Takashi Yano
2020-05-16  0:29     ` Takashi Yano
2020-05-16  7:47       ` Takashi Yano
2020-05-19 13:40         ` Takashi Yano
2020-05-25 10:53           ` Takashi Yano
2020-05-25 15:22             ` Corinna Vinschen
2020-05-25 19:16               ` Thomas Wolff
2020-05-26  1:00               ` Takashi Yano
2020-05-26  7:14                 ` Thomas Wolff
2020-05-26  9:21                   ` Takashi Yano
2020-05-26  9:32                     ` Thomas Wolff
2020-05-26  8:33                 ` Corinna Vinschen
2020-05-26  1:09             ` Takashi Yano
2020-05-28 15:40               ` Takashi Yano
2020-05-29 15:30                 ` Corinna Vinschen
2020-05-30  7:36                   ` Takashi Yano
2020-05-30 13:14                     ` Takashi Yano
2020-05-30 17:43                       ` Corinna Vinschen
2020-05-31  5:52                         ` Takashi Yano
2020-07-01 11:47                 ` Takashi Yano
2020-07-17 11:19                   ` Corinna Vinschen
2020-07-17 12:47                     ` Thomas Wolff
2020-07-17 14:59                       ` Thomas Wolff [this message]
2020-07-18  5:05                         ` Takashi Yano
2020-07-18 20:57                           ` Thomas Wolff
2020-07-23 17:17                             ` Takashi Yano
2020-07-27 17:10                               ` Thomas Wolff
2020-07-17 12:52                     ` Ken Brown
2020-07-18  5:07                       ` Takashi Yano
2020-07-18  5:30                     ` Takashi Yano
2020-07-20  8:06                       ` Corinna Vinschen
2020-07-21 18:17                         ` Takashi Yano
2020-07-22  8:45                           ` Takashi Yano
2020-07-22 11:49                             ` Corinna Vinschen
2020-07-22 12:13                               ` Ken Brown
2020-07-23  0:33                             ` Takashi Yano
2020-07-24  5:38                               ` Takashi Yano
2020-07-24 11:22                                 ` Takashi Yano
2020-08-02 12:01                                   ` Corinna Vinschen
2020-08-03  2:05                                     ` Takashi Yano
2020-08-03 10:50                                       ` Corinna Vinschen
2020-08-03  2:11                                   ` Takashi Yano
2020-08-03 12:23                                     ` Takashi Yano
2020-08-11 11:12                                       ` Takashi Yano
2020-08-13  9:58                                         ` Takashi Yano
2020-08-17 11:57                                           ` Takashi Yano
2020-08-19 11:39                                             ` Takashi Yano
2020-08-19 13:41                                               ` Corinna Vinschen
2020-08-19 15:43                                                 ` Thomas Wolff
2020-08-19 20:47                                                 ` Mark Geisert
2020-08-20  8:02                                                 ` Takashi Yano
2020-08-31 12:49                                                   ` Johannes Schindelin
2020-08-31 14:14                                                     ` Takashi Yano
     [not found]                                                     ` <20200831231253.332c66fdddb33ceed5f61db6@nifty.ne.jp>
2020-08-31 14:22                                                       ` Johannes Schindelin
2020-08-31 14:53                                                         ` Takashi Yano
2020-08-31 15:56                                                           ` Johannes Schindelin
2020-08-31 16:12                                                             ` Thomas Wolff
2020-08-31 17:39                                                               ` Thomas Wolff
2020-08-31 19:17                                                                 ` Johannes Schindelin
2020-08-31 19:37                                                                   ` Corinna Vinschen
2020-09-01  4:46                                                                     ` Johannes Schindelin
2020-09-01  9:23                                                                       ` Takashi Yano
2020-09-01  6:32                                                                         ` Johannes Schindelin
2020-09-01 22:33                                                                           ` Takashi Yano
2020-09-02  6:13                                                                             ` Johannes Schindelin
2020-09-01  9:42                                                                         ` Takashi Yano
2020-08-31 21:07                                                                   ` Thomas Wolff
2020-08-31 23:23                                                                     ` Takashi Yano
2020-09-01  5:00                                                                     ` Johannes Schindelin
2020-09-01  8:56                                                                       ` Thomas Wolff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=f0d67461-cee8-03d3-1229-97ea556b4424@towo.net \
    --to=towo@towo.net \
    --cc=cygwin-developers@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).