[0]https://github.com/mmulet/term.everything
[1]https://github.com/mmulet/term.everything/issues/5
[2]https://lobste.rs/s/qh6lil/chafa_terminal_graphics_for_21st_...
[3]https://github.com/wong-justin/vic/issues/1#issue-2586904982
I use it as a fallback option for terminals without proper terminal graphics support in my TUI Jupyter client, euporie.
There are Python bindings available: https://github.com/GuardKenzie/chafa.py
https://rubygems.org/gems/barf
The name does imply the image quality, fyi.
My solution is also multithreaded, in Ruby. :D
(You can set a custom w3mimgdisplay command, but it has to speak the same protocol as w3mimgdisplay. If you're feeling adventurous, you can try modifying https://github.com/uobikiemukot/sdump/tree/master/yaimg-sixe....)
And I'm half-working on Rust bindings...
Not sixel or kitty graphics?
Chafa looks cool, i'd feel cool using it when i use a terminal but if really wanted to see an image id just open it in a image viewer.
The premier UX of the 21st century just got a little better: With chafa, you can now view very, very reasonable approximations of pictures and animations in the comfort of your favorite terminal emulator. The power of ANSI X3.64 compels you!
You can get fair results by using only U+2580 (upper half block). Other terminal graphics packages do this, and so can Chafa with chafa --symbols vhalf. However, Chafa uses more symbols by default, greatly improving quality.
There are more examples in the gallery!
Some of the features are discussed in a series of blog posts:
Chafa will print a help text if run without arguments, or with chafa --help. It also comes with a man page displayable with man chafa.
The gallery contains examples of how command-line options can be used to tweak the output.
There is C API documentation for application developers.
Erica Ferrua Edwardsdóttir is developing Python bindings that allow Chafa to be used in Python programs. These are documented on their own site.
Héctor Molinero Fernández maintains JavaScript bindings that allow Chafa to be used in Node.js, web browsers, and more. These are documented on their own site.
Please bring your questions to our secret business friendly Matrix chat. Stay a while and listen, or talk about terminals, software or your choice of breakfast cereal. All are welcome, but an appreciation for terminals, programming and/or computer graphics is likely to enhance your experience.
Although the chat's history is hidden from non-members, this is a public forum, so if your ambition is to overthrow the government/megacorps by way of an underground network of refurbished Minitels, you may want to keep it under your hat. Furthermore, and hopefully obviously, we treat our fellow humans with respect. Have fun!