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: Pseudo console support in PTY
Date: Sat, 30 Mar 2019 23:07:00 -0000	[thread overview]
Message-ID: <0f15049e-5b71-d9dd-434a-dcc4c1801b92@towo.net> (raw)
In-Reply-To: <20190330220804.a3be5fa8c4d5569464309d66@nifty.ne.jp>

Am 30.03.2019 um 14:08 schrieb Takashi Yano:
> Hello cygwin developers,
>
> I have worked on implementing pseudo console support into cygwin
> PTY by request from Corinna. Pseudo console is a new feature
> after Windows 10 1809, which provides console APIs on virtual
> terminal.
> https://blogs.msdn.microsoft.com/commandline/2018/08/02/windows-command-line-introducing-the-windows-pseudo-console-conpty/
> https://docs.microsoft.com/en-us/windows/console/creating-a-pseudoconsole-session
>
> After much effort, it began to work partially. So, I would
> like to announce to this mailing list. Attached are the
> patchs against cygwin git HEAD.
>
> ...
>
> Patch 0003: Support pseudo console in PTY. With this patch,
>    native console applications can work in PTY such as mintty,
>    ssh, gnu screen or tmux.
This will be great to have in cygwin.
> Anyone who are interested in this work, please test. Any
> discussions and suggestions are also welcome.
I had previously (before ConPTY was announced) suggested a patch to 
inject winpty as a wrapper, for more or less the same purpose, to 
integrate non-cygwin applications seamlessly in pty-based terminals 
(https://cygwin.com/ml/cygwin-developers/2018-04/msg00002.html).
While the patch did not proceed because winpty was reported to fail in 
certain settings, I could demonstrate it was sufficient to inject the 
pty interaction gateway only when actually running a console application 
(non-cygwin program), and handle that all in spawn.cc. So I am wondering 
whether your patch is maybe doing "too much", and why e.g. 
fhandler_console should be modified, as there is no need for such 
adaptive handling when running a console application in a console, even 
through cygwin.
> Known problems:
> * Sometimes the screen layout would be broken.
If you describe the issues, I'll be glad to try some analysis.
> * mintty fails to start if it is started in console cygwin session.

If you limit the usage to running non-cygwin console apps, there is no need for any slowdown in a terminal when running cygwin apps.

Corinna wrote:
> This is all pretty exciting.
Yes, and I'd suggest Takashi for a gold star already, once this works.

Thomas

  parent reply	other threads:[~2019-03-30 23:07 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-30 13:08 Takashi Yano
2019-03-30 19:47 ` Corinna Vinschen
2019-03-30 19:59   ` Corinna Vinschen
2019-03-30 23:07 ` Thomas Wolff [this message]
2019-03-31 14:38   ` Corinna Vinschen
2019-03-31 15:00   ` Takashi Yano
2019-04-02 11:02 ` Corinna Vinschen
2019-04-02 17:16   ` Thomas Wolff
2019-04-02 17:51     ` Corinna Vinschen
2019-04-03  7:18       ` Thomas Wolff
2019-04-03  7:28         ` Corinna Vinschen
2019-04-03  7:55           ` Thomas Wolff
2019-04-03  8:02             ` Corinna Vinschen
2019-04-03 11:33               ` Thomas Wolff
2019-04-03 12:17                 ` Corinna Vinschen
2019-04-04  4:17                   ` Takashi Yano
2019-04-04  8:06                     ` Corinna Vinschen
2019-04-04  4:15             ` Takashi Yano
2019-04-03 16:36   ` [PATCH v2 0/1] Pseudo console support in PTY (v2) Takashi Yano
2019-04-03 16:37     ` [PATCH v2 1/1] Cygwin: pty: add pseudo console support Takashi Yano
2019-04-03 16:50     ` [PATCH v2 0/1] Pseudo console support in PTY (v2) Corinna Vinschen
2019-04-04  5:27       ` Takashi Yano
2019-04-04  8:17         ` Thomas Wolff
2019-04-04  9:34           ` Takashi Yano
2019-04-03 17:11     ` Corinna Vinschen
2019-04-04  8:59       ` Takashi Yano
2019-04-04 10:46         ` Corinna Vinschen
2019-04-06 11:13           ` [PATCH v3 0/1] Pseudo console support in PTY (v3) Takashi Yano
2019-04-06 11:14             ` [PATCH v3 1/1] Cygwin: pty: add pseudo console support Takashi Yano
2019-04-06 17:43             ` [PATCH v3 0/1] Pseudo console support in PTY (v3) Corinna Vinschen
2019-04-12 10:22               ` [PATCH v4 0/1] Pseudo console support in PTY (v4) Takashi Yano
2019-04-12 10:23                 ` [PATCH v4 1/1] Cygwin: pty: add pseudo console support Takashi Yano
2019-04-12 12:29                 ` [PATCH v4 0/1] Pseudo console support in PTY (v4) Corinna Vinschen
2019-04-15  8:18                   ` Corinna Vinschen
2019-04-15 23:17                     ` Takashi Yano
2019-04-14 15:23                 ` [PATCH v5 0/1] Pseudo console support in PTY (v5) Takashi Yano
2019-04-14 15:23                   ` [PATCH v5 1/1] Cygwin: pty: add pseudo console support Takashi Yano
2019-04-15  8:38                     ` Corinna Vinschen
2019-04-16  0:41                       ` Takashi Yano
2019-04-16  9:16                         ` Corinna Vinschen
2019-06-24 10:53                           ` Corinna Vinschen
2019-07-25 14:31                             ` Corinna Vinschen
2019-08-08 19:24                               ` Corinna Vinschen
2019-08-12 12:07                             ` Takashi Yano
2019-08-12 12:50                               ` Corinna Vinschen
2019-08-12 14:36                                 ` Takashi Yano
2019-04-14 16:06                   ` [PATCH v5 0/1] Pseudo console support in PTY (v5) Takashi Yano
2019-04-16  1:49                     ` Takashi Yano
2019-04-16  1:51                       ` Takashi Yano
2019-04-06 21:33             ` [PATCH v3 0/1] Pseudo console support in PTY (v3) Thomas Wolff
2019-04-07  5:05               ` Takashi Yano
2019-04-07 12:02                 ` Takashi Yano
2019-04-07 21:21                 ` 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=0f15049e-5b71-d9dd-434a-dcc4c1801b92@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).