Open zachlloyd opened 3 years ago
iTerm2 is able to display images (and animated gifs) within the terminal, see: https://iterm2.com/documentation-images.html.
It would be cool if this was supported within warp as well.
@elviskahoro
Additional resources:
I know you are aware of notcurses. Aim to survive the notcurses-demo, it is a very good test of performance, Unicode support, 24-bit RGB, memory pressure, and images (both kitty and sixel).
If you choose to support sixel (perhaps from merging ayosec's graphics PR branch from alacritty), then you should also be aware of chafa . Among its encoders is an extremely fast high-quality sixel encoder. notcurses and chafa are the fastest encoders I know of, and have different performance characteristics on the high end. If you can keep up with both of them, then you will be in great shape.
If you choose either sixel or iTerm2, then you should also test against jexer . When I wrote Jexer's image backend, only 3 terminals survived its lots-and-lots-of-small-images approach. Now most terminals are working OK (though some still crash). If you retrofit ayosec's graphics PR from alacritty, it should work fine with Jexer-type output, but will not work fine for notcurses output due to how it treats partially-damaged images.
On a different topic, just so I don't spam you with junk:
Looking forward to your success. :)
@klamonte thanks for sharing!
You're welcome. I'm rooting for you!
From elna via Discord:
given that the UI framework can render arbitrary object, and like jupyter you have both a) a client server architecture and b) the notion of "cells", do you think you'll ever implement rendering of non-text based mime-types, e.g. svgs, pngs, ... for interactive plots like plotly?
https://discord.com/channels/851854972600451112/870145535993077780/885727936433500160
yes definitely although these two in my eyes are well solved by programs like https://github.com/antonmedv/fx and obviously nushell or https://www.visidata.org/, so I don't need warp to provide this - vs. e.g. a remote control API and support for a graphics rendering protocol which I need the terminal emulator to provide.
https://discord.com/channels/851854972600451112/870145535993077780/885728473463808020
https://github.com/joouha/euporie this is also a good inspiration which already works with kitty
https://discord.com/channels/851854972600451112/870145535993077780/885728712799166474
as is this https://github.com/dccsillag/magma-nvim
https://discord.com/channels/851854972600451112/870145535993077780/919330371647180832
https://github.com/tauri-apps/wry - how cool would it be if we could display html etc in warp? terminal based notebooks a la jupyter with rendering things like plotly plots would be possible
Any updates on this? Really cool feature 😅
@japanese-goblinn No updates. I'll share info in this github issue when there is. My guess is that this wouldn't be soon though.
@japanese-goblinn No updates. I'll share info in this github issue when there is. My guess is that this wouldn't be soon though.
@elviskahoro okey, thanks!
From @wellcomez via #1754
Protocol iTerm2 extends the xterm protocol with a set of proprietary escape sequences. In general, the pattern is:
ESC ] 1337 ; key = value ^G Whitespace is shown here for ease of reading: in practice, no spaces should be used.
For file transfer and inline images, the code is:
ESC ] 1337 ; File = [arguments] : base-64 encoded file contents ^G The arguments are formatted as key=value with a semicolon between each key-value pair. They are described below:
any updates on this? love this project but can't switch until this works :)
No updates. This wouldn't be for awhile it's very high engineering lift!
Is this one why emoji's are not rendering or should I open a new issue for it. Bascially Emojis are coming as wierd character please see bleow screenshot, where emoji should render as Aussie flag.
@warpdotdev-dx any updates??
@p-i-c-o As far as I'm aware, there is some work being done on gif support, but nothing for kitty image support yet.
It's honestly hard to take Warp serious if it does not offer the basics like rendering inline images, animated gifs, and images. I'd expect rendering to support pixel-based and character-based rendering both, with scaling, opacity control, caching for animations, etc. Even more, I'd expect pixel level R/W access to the terminal window (with plenty of security controls which makes this non-trivial). Also, plan now on how to support voxel rendering in the terminal because 3D matters.
There are some great comments above about the specifics around ensuring the terminal can perform very well with many hundreds of embedded / inline images. Yes, let's make it very fast please.
Think what we did with the C64 in the 80s... Let's see some radical stuff here!
Ratatui, the Rust TUI framework, added experimental Sixel support as described here. I'm salivating at how great this would look in Warp! :D
+1 I wish this feature
any updates on this for warp?
hmm its 3 years old feature request :( I mean modern terminal should support graphics rendering
fr I got so many cli tools that use images, not having them visible on warp is really a pain
need it, too
I'm really surprised that warp does not already support this
I'm really surprised that warp does not already support this
It should be a feature for a terminal that brands itself as "your terminal reimagined."
Any update on this? Really need it
Would definitely love to be able to use a tool like this in Warp:
any updates on this for warp?
I love Warp but having image support is necessary for it to become my daily driver.
Can we please get some kind of developer response here? This request has been sitting here for 3 years.
yeah, would love to use warp but no image support, no chance. When i do Frontend Development i'm constantly in Yazi for blaszingly fast codebase searching with previews, will switch to warp the day image preview is available, without it its just not worth the tradeoff.
One more vote for this feature
+1
+1
+1
+1, crucial for web browsing from CLI
+1
+1
+1
+1
We get it, thanks.
+1 I dont want to use kitty, pls
Would be amazing to be able to use pls with Material Design icons which I believe use SVG. No idea if this could work using Kitty. +1
One more request for this feature!!! Really need it.
+1
+1
+1
+1 crazy this has been open for so long.
https://sw.kovidgoyal.net/kitty/graphics-protocol/