hpjansson / chafa

📺🗿 Terminal graphics for the 21st century.
https://hpjansson.org/chafa/
GNU Lesser General Public License v3.0
2.93k stars 64 forks source link

Erratic behavior of `chafa -f iterm image.jpg` on Windows #194

Closed ykhan21 closed 1 month ago

ykhan21 commented 7 months ago

Setup:

On Windows:

  1. Install scoop, run scoop bucket add main, run scoop bucket add extras, and finally run scoop install git wezterm chafa.
  2. Use this image.
  3. Set Wezterm's default shell to the bash shell that was installed with scoop install git. To do this, create a ~/.wezterm.lua file with these contents:
    local wezterm = require 'wezterm'
    local config = {}
    config.default_prog = { 'c:/users/USERNAME/scoop/apps/git/current/bin/bash.exe -i -l' }
    return config

    See https://wezfurlong.org/wezterm/config/files.html for more details.

Problem:

On Wezterm, chafa -f iterm image.jpg sometimes outputs extra space at the end like so: image

Notice that the shell prompt starts at the bottom right of the image above.

On mintty (the terminal called Git Bash that is installed when you install Git for Windows is mintty), most of the time, chafa -f iterm image.jpg does not display an image and instead results in a large amount of whitespace, almost as if it were displaying an empty image. Very rarely it displays a distorted half of the image. The showimg script found here works correctly to show images in mintty (Git Bash) in the iterm format.

AnonymouX47 commented 7 months ago

Duplicate of #186

hpjansson commented 7 months ago

Thanks for filing the issue, @ykhan21. I think @AnonymouX47 is right - the short version is that Chafa is a native Windows app, and the Wezterm binary is a Cygwin app. These are different platforms that don't play well together. We need to add Cygwin builds (or alternatively, other apps should be made native).

hpjansson commented 1 month ago

Closing as duplicate. I don't have the bandwidth to do Cygwin builds too at the moment, but if you get it working there, I'd love to hear about it.

ykhan21 commented 4 weeks ago

@hpjansson, are there any drawbacks to having the only Windows build of chafa be cygwin, like Wezterm? Can't you then use it in both native and cygwin terminals?

hpjansson commented 4 weeks ago

The biggest drawbacks are:

So it's a good question. My opinion on this was forged in battle about 25 years ago, and maybe things have changed, or it doesn't matter that much anymore. Help with research and testing is very welcome!