Ignore my previous email; I forgot to enable plain text mode. I ran all commands on cmd from within Windows Terminal. Note that running cmd.exe directly, and running cmd from the Windows Terminal is not the same. cmd.exe does not support ANSI codes.
Also, what do you mean you can't reproduce the issue? Was it because of insufficient information, or because the commands worked perfectly on your system? By the way, I've attached my cygcheck.out; I forgot to attach it at first. I've redacted my username and computer name. I noticed you didn't include python information in your environment. You can install the missing lolpython dependency from PiPy by running `pip install lolpython` Sent with Proton Mail secure email. ------- Original Message ------- On Tuesday, June 14th, 2022 at 9:53 PM, 5990 <[email protected]> wrote: > I ran all commands on cmd from within Windows Terminal. Note that running > cmd.exe directly, and running cmd from the Windows Terminal is not the same. > cmd.exe does not support ANSI codes. > > Also, what do you mean you can't reproduce the issue? Was it because of > insufficient information, or because the commands worked perfectly on your > system? > By the way, I've attached my cygcheck.out; I forgot to attach it at first. > I've redacted my username and computer name. > > I noticed you didn't include python information in your environment. You can > install the missing lolpython dependency from PiPy by running `pip install > lolpython` > -------- Original Message -------- > On Jun. 14, 2022, 7:47 a.m., Takashi Yano < [email protected]> wrote: > > > > > On Tue, 14 Jun 2022 08:01:45 +0000 5990 via Cygwin wrote: > ## Bug: > > > Piping the standard output of cat into the standard input of golang or > > python, makes the Windows Terminal render ANSI codes as arrows. > > For > > example: > `\033[36m` turns into `←[36m` (or in base64'd UNICODE: > > `4oaQWzM2bQ==`) > > ## Environment: > - cat v8.26 > - Windows Terminal > > v1.12.10982.0 > - golang version go1.17.2 windows/amd64 > - python v3.7.7 > > > > colors.go > ``` > package main > > import "fmt" > > const colorReset = > > "\033[0m" > const colorCyan = "\033[36m" > > func main(){ > > > fmt.Print(string(colorCyan) + "golang-test" + string(colorReset) + "\n") > > > } > ``` > > > color.py > ``` > from lolpython import lol_py > > > > lol_py("python-test") > ``` > > > domains.txt is an empty file (from my > > testing, the contents of domains.txt do not affect this bug) > > ## What > > works: > The following commands will successfuly output in cyan color > `go > > run color.go` > `go build color.go && color.exe` > `go build color.go && > > cat domains.txt | color.exe` > `go build color.go && echo a | color.exe` > > > `go build color.go && type domains.txt | color.exe` > `py -3.7 color.py` > > > > ## What triggers the bug: > `cat domains.txt | go run color.go` > OUTPUT: > > `←[36mgolang-test←[0m` > > `cat domains.txt | py -3.7 color.py` > OUTPUT: > > `←[38;2;128;237;18mp←[0m←[38;2;139;231;12my←[0m←[38;2;150;225;8mt←[0m←[38;2;161;217;5mh←[0m←[38;2;172;209;2mo←[0m←[38;2;182;200;1mn←[0m←[38;2;192;190;1m-←[0m←[38;2;201;180;1mt←[0m←[38;2;210;170;3me←[0m←[38;2;218;159;5ms←[0m←[38;2;226;148;9mt←[0m` > > > > Strangely enough, golang compiled executables work perfectly, but > > piping `cat domains.txt | go run color.go` does not work. > The workaround > > I had to go with is to use Windows's built-in `type` command instead of > > `cat`. This was a tricky bug to track-down so I hope this report helps > > hahah I cannot reproduce your problem. My environment is: cygwin 3.3.5 cat > > 8.32 Windows Terminal 1.13.11431.0 go version go1.18.3 windows/amd64 What > > shell did you use? cygwin bash? cmd.exe? powershell? -- Takashi Yano -- 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

