Live data from Hacker News

Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

github.com

21–30 of 89 posts

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#21
post #14

Earlier quoted context omitted.

I'll probably regret writing this but if you read the entire rant, the author had been trying get sixel support into VTE based terminals (GNOME terminal and family) but he was blocked, which isn't really surprising considering the "my way or the highway" approach of GNOME devs towards anything that they make. The recent theming fiasco is a good example for this. He also tried getting sixel support in tmux but was rej…

Yeah, I think OP wrote must of what they did in genuine frustation. Saladuh's response probably comes mostly from having read this paragraph from OP's rant: "This is why I released sixel-tmux. That's also why I use Windows besides the wonderful mintty being the number 1 choice for terminal afficionados, it gives more options in general: I like that because I don't like depending on people who seem stuck in a desire t…

Yep, that's all it was.

I have a few things that I can't stand and I have no problem ditching something that doesn't offer me what I want. For example, I ditched Kitty because it doesn't let me disable italic variants of monospace fonts. In a hypothetical scenario, if tmux/screen didn't exist and Kitty was the one terminal which had these features, I would be frustrated as well if the dev didn't budge from his position of not letting users disable italic fonts. Fortunately, tmux exists and Alacritty lets me disable italics.

It's pretty naive and immature to get married to the tools you're using. Unfortunately, you see this a lot in the FOSS world.

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#22

For macos users using iTerm2, installing the integration provides ‘imgcat’ and ‘imgls’. Not sure about tmux support though.

I have plans to add support for iTerm format, but I'm not a Mac user, while of the work should not be on the derasterize part (image -> unicode text: easy), but on the passthrough part (when to abandon the image).

If you are a Mac user, could you please consider writing a patch? The ability to dogfood it means whatever you write will still be better than whatever I may come up with.

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#23

On a tangent, it would be awesome to have tmux for Windows Terminal without WSL (i.e. a native windows app). I've remapped Windows Terminal shortcuts to be like tmux bindings which gets me closer but it's still not the same.

tmux in mintty ?

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#24
post #13
post #8

This is lovely. The author recommended XTerm as one of the best, so I would like to suggest trying Kitty for size for graphics.

The issue with Kitty is that its graphics protocol is not widespread yet, so some of the CLI/terminal programs OP uses that can do graphics output may only support sixel. But yea, personally looking forward to Foot terminal implementing one of the fancier graphics protocols, even if it feels more like a toy at the moment (until they are used more). But seriously running the notcurses[0] graphics test with a terminal…

> it feels more like a toy at the moment

It's not! Gnuplot in the terminal open many new use cases, such as examining data on remote hosts with scripts without even bothering to scp the data first.

Also, Notebooks in the terminal is wonderful!

Check https://github.com/koppa/matplotlib-sixel

As for kitty format, adding support in sixel-tmux is planned, but you are welcome to write a patch if you want it sooner!

Imagine sixel-tmux as some middleware, because it is totally possible to intercept sixel sequences and rewrite them on the fly into something more palatable to kitty or iTerm.

This way, even if gnuplot doesn't support kitty, you could still view the results. If it's done well enough, you may not even perceive the difference!

That's the direction I want to follow, so that users can take any software and play with it on their terminal regardless of the underlying format.

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#25

Earlier quoted context omitted.

Yeah, I think OP wrote must of what they did in genuine frustation. Saladuh's response probably comes mostly from having read this paragraph from OP's rant: "This is why I released sixel-tmux. That's also why I use Windows besides the wonderful mintty being the number 1 choice for terminal afficionados, it gives more options in general: I like that because I don't like depending on people who seem stuck in a desire t…

The strangest thing to me though is that the OP finished this work last year and sat on it until very recently. They explain it as "I wrote this for a client and didn't feel like sharing it." That attitude seems a bit in contrast to the purported motivation to, "Make it so people don't suffer like I did in school." So I guess in a way OP is (sort of) seeing the light on free software here too. Don't like it? Fork it!

Hard forks rarely get traction and are almost always lost in obscurity, unless the original project itself is abandoned. tmux isn't abandoned so I doubt this fork will end up being used by more than a handful of people.

EDIT: Yup, as suspected, the author doesn't intend to keep his fork updated with upstream and I don't blame him for that. This essentially makes this fork a proof of concept, nothing more. Unless it gets merged in tmux itself, people might as well forget that this fork exists.

https://github.com/csdvrx/sixel-tmux/pull/1

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#26
post #23

On a tangent, it would be awesome to have tmux for Windows Terminal without WSL (i.e. a native windows app). I've remapped Windows Terminal shortcuts to be like tmux bindings which gets me closer but it's still not the same.

tmux in mintty ?

Yeah that's an option but I can't stand Cygwin UX. tmux and mosh for native Windows would both be awesome.

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#27
This is a really cool project. It's unfortunate to see the author being this obviously frustrated by having Sixel-related contributions be rejected time and time again. However it seems like the main Tmux maintainer has shown up on the issue tracker about being open to including the changes upstream, maybe that will improve their faith in the open-source community.

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#28
post #23

Earlier quoted context omitted.

tmux in mintty ?

Yeah that's an option but I can't stand Cygwin UX. tmux and mosh for native Windows would both be awesome.

Try sixel-tmux compiled with msys2 in Windows-Terminal: https://github.com/csdvrx/sixel-tmux/blob/main/tmux.exe

Or compile it yourself using MinGW64 : after installing from msys2.org, pacman -S base-devel etc

It works fine here. I have a Windows Terminal settings to start sixel-tmux instead of bash, using script to provide a pty: just have the command line be:

C:/msys64/usr/bin/env.exe MSYS=winsymlinks:nativestrict MSYSTEM=MSYS /usr/bin/script -c /usr/bin/tmux /dev/null

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#29
post #3

The rant is a much better read and insight into the reason for this: https://github.com/csdvrx/sixel-tmux/blob/main/RANTS.md

This is such a good read. I hope this person goes far and gets wider support for this. I really like their project and their motivation.

> Sorry guys, but I don't want you to hold Linux terminal users hostage for your petty concerns over what is the "right" way to do something like sixels. [...] It's something that has been done successfully for over 30 years.

...

> Still, you could successfully block sixel support by having control over the terminal emulators or the libraries. Ok, but now, try to prevent your users from running sixel-tmux!

...

> Also, you guys like to say that the only voices that matters are from those who can code? Hmm, ok for that too. Let's see how you like the code I release to show the pointlessness of your petty fights, and free your users from your questionable decisions.

Also, I wasn't familiar with the term "sixel". They've been around since DEC introduced them in the 80's: https://en.wikipedia.org/wiki/Sixel

Re: Show HN: Sixel-tmux displays graphics even if your terminal has no Sixel support

#30

Sixel is a terrible encoding. Most of the newer terminals have escape sequences for sending base64 encoded png/gif/jpg--for higher quality output & lower bandwidth.

> Sixel is a terrible encoding

This is not based on technical facts, but bias against an old format.

> png/gif/jpg--for higher quality output & lower bandwidth

For bandwidth, my ssh stream is compressed.

For quality, I can't see difference in a 24 bit bitmap when comparing with a png or jpg, unless I compress them too much, in which case the compression artifacts start playing AGAINST the formats you recommend.

Post reply on HN