3.1.x: Mangled input/output when calling non-cygwin programs

Takashi Yano takashi.yano@nifty.ne.jp
Sun Feb 2 09:59:00 GMT 2020

On Sat, 1 Feb 2020 19:00:04 +0100
m0viefreak wrote:
> Since Cygwin 3.1's pseudo console support was introduced I've run into
> lots of issues with non-cygwin programs.

Thanks for the report.

> 1) Mangled output: See screenshot [1].
>    As you can see, at what it seems random places, the output is broken.
>    The above can easily be reproduced using Apache Maven in any project,
>    e.g. using a sample project created using [2].
> 2) Terminal width: For some reason, non-native programs do not use the
>    full width of the terminal (Mintty and TERM=xterm-256color). Can also
>    be seen in [1] (blue highlight) and reproduced e.g. using Maven with
>    a relatively small window.

I looked into this problem, but Maven is something weird.
I don't think it uses termcap or terminfo, but it behaves
differently depending on TERM.

If you run
env TERM=cygwin mvn <something>
in mintty, problem 1) and 2) does not occur.

> 3) Typed characters while non-cygwin program is running are lost.
>    Usually, when typing characters while a native program executes,
>    which does *not* read from standard input, after the program exits,
>    all these typed characters are put into the prompt.
>    When executing a non-native program, such as, again, "mvn clean",
>    which does not read from stdin, typed characters are completely lost.
>    This is very frustrating, since I am often quicker at tying the
>    next command, while the previous command is still doing something.

I know the cause of this problem. Let me consider.

> 4) Importance of TERM: When connecting to my Cygwin installation using
>    SSH using Putty, TERM=putty-256color is set. When executing non-
>    native program from that session using that TERM, output is broken
>    even worse than in 1), and also keybindings are broken. I need to
>    force TERM=xterm-256color for those invocations.
>    Shouldn't this be handled transparently and enforced automatically by
>    the pcon code?

Which keybinding is broken? In my environment, arrow keys and function
keys work as expected in cmd.exe and windows-native vim. 

My configuration of putty is:
   + Keybord
        + The Function keys and keypad: Xterm R6

The PTY codes do not reffer to TERM environment, so cygwin1.dll itself
should not behave differently depending on TERM.

Takashi Yano <takashi.yano@nifty.ne.jp>

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list