Repository navigation
Feature Request: sixel graphics mode #142
Description
Activity
İs there any development ? I would really like to use this thing.
Reacted by Florian, Michael De Roover, v1rtl, Jonas S Karlsson, Efreak, Foxie Flakey, AlMat26, Mr. Lance E Sloan, Míla, Mathew Gordon and 6 moreReacted by lapisxalphaReacted by lapisxalphaGnuplot does
I think w3m can or one textmode brower can display sixel imageshttps://devhub.io/repos/saitoha-libsixel says it better than I can. I would really appreciate this feature.
Reacted by Florian, Michael De Roover, v1rtl, hackerb9, vyachson, Rolv Erlend Bredesen, Efreak, ETHAN ABOYTES, AlMat26, WeeksCo and 4 moreReacted by lapisxalphaReacted by lapisxalphaIs it supported now?
Want.
I'm the author of
lsixwhich is like ls but shows images in the terminal using SIXEL. I have received a request for Termux support. I believe that my program should work fine with Termux once it supports SIXEL graphics.Reacted by SirGregoryK, vyachson, AlMat26, WeeksCo, Mr. Lance E Sloan, CanYouJustWorkPlease, Arnav Kumar, Eduardo D Sanchez, Alex, lapisxalpha and 1 moreI would love for this to be implemented.
Perhaps some code can be ported over from yaft-android?? (MIT licensed)
Reacted by Efreak, WeeksCo, Mr. Lance E Sloan and lapisxalphaI'm quite interested in using this with neofetch, lsix. This could also be used for previewing formatted documents directly in the terminal.
@Efreak RIGHT? A version of fbgs (https://github.com/kraxel/fbida/blob/master/fbgs) modified to use img2sixel instead of fbi would be great for viewing ps and pdf files such as those produced by groff or TeX and wa (https://developer.run/37) could make use of img2sixel to show results from Wolfram Alpha right in the command line!
Sixel support would be very nice.
Reacted by lapisxalphaWould like the idea of being able to use w3m browser with images since it uses sixel if you run it with -sixel
Reacted by WeeksCo, Mr. Lance E Sloan and lapisxalphaKonsole now supports Sixel. Increasing support in many places.
https://invent.kde.org/utilities/konsole/-/merge_requests/594
Reacted by nonetrix, Alex and lapisxalpha63 remaining items
@Kreijstal Sure, vibecode is a thing for projects that you don't need to keep consistent in a long term. Great for MVPs and throw-away stuff. On other hand it is overhyped and making long term maintenance difficult.
true but I can just have it on custom fork and viberebase it when you push, you won't even notice it.
Reacted by John Lakeman and Toluwaleke Ogundipe@Kreijstal Sure, vibecode is a thing for projects that you don't need to keep consistent in a long term. Great for MVPs and throw-away stuff. On other hand it is overhyped and making long term maintenance difficult.
true but I can just have it on custom fork and viberebase it when you push, you won't even notice it.
Yes but there's inherent problems with that. For instance, without consistency, and consistent communication, it can get very hard and overbearing/overwhelming(I think those may just be the same word smh) to maintain and not release glitchy, buggy, broken updates for a large-scale project such as this. I'm sure if termux was just this fun little app coded by some dudes in a basement it'd be different, but its not, its maintainers have to coordinate with eachother, and termux is one the bigger apps when it comes to running linux environments on android devices, so if they released a vibecoded update that might possibly break something, even if that something is small, it could really break something for somebody, and i don't think they want that. But this is just an educated guess, as someone whos both vibecoded and made legit (although failed) attempts to properly maintain something, I can see why they would want to make sure they can safely add the feature without breaking anything else. They also need to fix bugs and keep the app stable while google aggressively tries to make android more like iOS, so they might not have the time to do so.
-Dutch Van Der Linde
termux is one the bigger apps when it comes to running linux environments on android devices, so if they released a vibecoded update that might possibly break something
there are actually now many forks of Termux App that are vibe coded, but not very many people have noticed them or been using them yet.
I'm not completely sure why more people haven't started using them, maybe because they would, like all other unofficial Termux apps, not be recommended for using here in official Termux GitHub and would not be supported in issues, but what I'm assuming is that if one of them ends up being very good, then people will start randomly mentioning it,
but I haven't noticed that happening yet for any of them, so maybe there isn't any particular one that's very good yet.
Reacted by GOD I LOVE MANGOStermux is one the bigger apps when it comes to running linux environments on android devices, so if they released a vibecoded update that might possibly break something
there are actually now many forks of Termux App that are vibe coded, but not very many people have noticed them or been using them yet.
I'm not completely sure why more people haven't started using them, maybe because they would, like all other unofficial Termux apps, not be recommended for using here in official Termux GitHub and would not be supported in issues, but what I'm assuming is that if one of them ends up being very good, then people will start randomly mentioning it,
but I haven't noticed that happening yet for any of them, so maybe there isn't any particular one that's very good yet.
can you name at least 3
can you name at least 3
We don't track forks but they exist
- https://github.com/thejaustin/termux-ai-app
- https://github.com/WangChengYeh/termux_AI
- https://github.com/k-l-lambda/anthroid
- https://github.com/tennox/termux-nix-monet
There are much more than these, including closed source ones
Perhaps this will light a fire somewhere useful? :-)
How about something like THIS as a reason to integrate sixel support:
Compiling Xorg to render with Sixels inside a terminal
https://github.com/csdvrx/xsixelThat is a fork of the original project. Unfortunately they only have x86-64 binaries released. Anyone (please) interested in porting that to an aarch64 static binary??? Looks promising. (and fun)
Reacted by lapisxalphaReacted by lapisxalphaReacted by lapisxalphaYou know that there is termux-x11, right? So you do not need to play with other X servers unless it does not fulfill your needs completely.
Reacted by Robert KirkmanYou know that there is termux-x11, right? So you do not need to play with other X servers unless it does not fulfill your needs completely.
Yes but, Termux:X11 has to be inside of a popup window, overlay window, PiP window or split view window, but Xsixel could be inside of a sixel-enabled Termux app itself and be showing directly in the terminal without a separate app, however, I feel that input handling surely can't be very convenient in Xsixel. How can it track cursor inputs in any usable way? Additionally, sixel images are very slow at high resolutions so how can it have a good framerate?
Hi gays,
Listen I am NOT the dev of the project. I'm a user that has posted here previously. But I think that new brow6el sixel browser (google it) is a VERY compelling reason to ensure Termux can do sixel finally.
#LostInLasVegas
Reacted by lapisxalphaok guys. you know instead of posting here if you just open claude/codex whatever you know you will have the feature in an hour right? just in case you are living a well don't know what's going on in the world. software is so trivially accessible now more than ever. if you are not even willing to spend an hour just being beta tester for AI (ya literally), you really sure you need the feature?
@cryonox The only blocker here is a human factor
- Termux app repo is solo-maintained.
- There is ongoing
mythicalrewrite of Termux app, without progress tracking and estimate. A primary reason why it is so hard for pull requests to get merged into termux-app. - There is a Sixel pull request ready to be merged: Add graphics in terminal support: - Sixel and iTerm2 protocols #2973. But I suppose (2) gets in the way.
AI in termux-app is out of question - may raise concerns about code quality, licensing, etc from specific Termux org members.
I'm just stating a fact about current condition of the public repo. That's not something I can change, particularly because I'm not a maintainer of termux-app (read-only permissions) and unknown status of all pending works.
You know that there is termux-x11, right? So you do not need to play with other X servers unless it does not fulfill your needs completely.
Yes but, Termux:X11 has to be inside of a popup window, overlay window, PiP window or split view window, but Xsixel could be inside of a sixel-enabled Termux app itself and be showing directly in the terminal without a separate app, however, I feel that input handling surely can't be very convenient in Xsixel. How can it track cursor inputs in any usable way? Additionally, sixel images are very slow at high resolutions so how can it have a good framerate?
The author straight up says it's not going to be playing youtube videos... but it might allow web browsing or using a text editor with fonts. The reason we do or try anything that pushes new boundaries is "because we can". Once a new frontier is opened others will find new uses for it. I am biased towards creative uses of the terminal that doesn't need yet another android app. For the same reason that authors created TwIN (Terminal mode WINdowing Environment... see Cosmos72), or VTM when tmux already exists and "works", Maybe Xsixel could be the next evolution but far more flexible built on existing standards. I have absolutely no idea how the performance would scale with cpu/gpu and bandwidth but eventually it might catch up.
It might work over ssh, and Xsixel might even potentially work in termux-float, which I find indespensible despite having only one window and no tabs..its the only game in town (so I use vtm IN termux-float). As for Termux-X11, I really think it would be awesome if the secret update or any other app had floating x-objects or windows that floated above the rest of android's base layer, a-la "Floating Apps". Yes, I could just go use a linux box, but where's the fun in that? The challenges are always at the fringe.
Thanks, everyone for replying. Peace.
AND, if it hasn't been said enough, thank you very much to the solo maintainer and the authors of Termux, and everyone involved in the project for providing something so useful and inspiring to so many, including me. Termux itself seems conceived to push established boundaries and do something noone else had before. No posix? No problem! (well, maybe a few :-)
@sylirre , you don't understand what I meant at all. I understand the human factor perfectly. I also understand why there's a need to get human review when you are using AI-assisted coding. Some people maybe produce shit code, some may produce awesome code. But you don't know which one you are getting, and thus there's a need to review. But that's from the perspective of repo maintaintence and continual contribution ya? I am not downplaying the importance of maintainer at all. After all it's a voluntary thankless job and nobody has infinite time.
I am saying, as the code generation tools are so easilly accessible now, everyone can have their own implementation of this feature "without contributing back to the source". Yes it maybe terrible and full of edge case bugs but it will work well enough. If you are patient enough to go through all the bugs, you might end up something close to perfect. But since you are not reading the code at all, code quality is probably gonna be shit. Hey but it will work! Hopefully nothing a future model can't fix! You can even point the AI at existing PR if you feel like you can't prompt and it will build it for you!
So would you rather have something that works now? Or wait for some indeterminate future? I am talking to the people that may not have thought of this.
you can even point the AI at existing PR if you feel like you can't prompt and it will build it for you!
Yes build this PR and use it
https://en.wikipedia.org/wiki/Sixel is a raster protocol format part of VT200 and VT300 serial terminals
it recently started gaining traction on command line tools to output images directly to the terminal because it works trought ssh, works reasonably well, etc
for an implementation detail to copy the encoder/decoder, one can look at https://github.com/saitoha/libsixel , the url documents also a series of terminals and programs that support the standard
I realize it's a low priority feature, but it'd allow rather nice semi graphical workflow under termux's terminal, currently it's already possible to view sixel graphics from launching a ssh daemon and connecting externally with a sixel capable terminal emulator