I've heard plenty of those stories, I'm asking about this specific instance. Your first article is talking about something unrelated to this, and the second is something that happened three years ago.
Please show proof of that in the specific instance you're talking about before dismissing someone as "part of a mob" or a "bot". Studies I've seen show that it's not always bots. Some people actually just do get mad when you say cruel things about them.
Are you saying that someone who has a computer, internet and a twitter account can't have their life threatened? What? If someone says their life is threatened, I suggest listening to what they have to say, and not dismissing it outright as hyperbole. If you feel twitter is overwhelming and causes a lot of eye rolling, then maybe take a break?
There are some comedians who, upon hearing that someone is offended by one of their jokes, would have the courage to ask why, and listen deeply to the answer. They would then take the time to revise that joke, and make it better so that it can be enjoyed by the maximum number of people.
There are some other comedians who would decide to make the joke as cruel as possible and start insulting people who get offended. The joke then becomes about how much they can attack those people and make them part of the outgroup. Those people are probably permanently lost as fans unless the comedian decides to change their methods.
For some reason this conversation frequently happens in terms of "public discourse" and "rights" but it all seems to be centered around a very small group of people, and nobody really wants to talk about the series of individual actions that led to this point.
The phrase "twitter mob" is dehumanizing, I really suggest you stop using that phrase like that. Consider the individual and why some statements may have caused them to become upset. Consider that some people may be speaking out on social media because their lives are threatened, and dismissing them as part of a "twitter mob" doesn't help at all. Consider that if someone has a platform of millions of followers and is using that to spread hostile and harmful views that lead people towards malicious actions, then some of those opinions might not be so innocent after all.
Edit: If you find yourself disagreeing with this comment because you were upset or offended by the actions of some twitter users, then let's talk about that. Don't just bottle it up and downvote, that will only continue the dehumanizing behavior.
Either one, it wasn't explained how the protocol can be used to do any color depth higher than 8 bit.
Also the PNG format is extremely common and supports 32-bit color, so if you don't support that then you cannot accurately display PNG images, or any other RGBA format. Without this you're about 25 years out of date.
Please avoid these snarky responses, this is not helping explain anything and will not serve to change anyone's mind.
>I HAVE TOLD YOU AT LEAST 4 TIMES: YOU NEED TO USE A STATE OF THE ART TERMINAL TO FIRST CORRECT YOUR MISCONCEPTIONS.
Please avoid the caps lock, this is also not helpful. I have told you multiple times: I don't have access to one of those terminals, so if you want me to use that, you will either have to try to help those other projects, or you will have to explain how this can be fixed to bring those projects up-to-date. You cannot seriously expect everyone to switch to your terminal of choice just to use a special version of tmux. If you're presenting a new version of tmux that you want to get adoption then you will need to support many terminals, not just your favorite.
And actually upon looking into this it appears that libsixel is what is doing the quantization, so this statement seems to have nothing to do with either of our setups at all. Have you modified your libsixel not to do this? Or is there some other command I need to type? Please explain these things instead of just telling me I have misconceptions with no description of what they actually are.
>considering you have been proved wrong
Well I'm happy to be proven wrong but you never did this despite me asking repeatedly. It was only explained by someone else in a sibling comment. This is why I suggest against making rants, in every single case I've ever seen a developer posting rants, it prevents the actual technical issues from getting explained. And your hostile responses towards me have actually further discouraged me from using sixel or from using your tmux fork, and even from trying out mintty eventually. This is not the way to be persuasive.
>You are pointing me to a 6 years old bug report about tmux eating sequences important to display sixels
No, this is wrong. The issue is about iTerm escape sequences, not sixels. Imgcat doesn't use sixel. Please make sure to get this correct, it's very important to your project. Also this bug report is not just about eating the escape sequences, but that the escape sequences cannot possibly be processed by tmux because they lack enough information to display correctly.
>Click on the url and you'll see a few demos, including the snake.six displayed in a wonderful example of 24 bit "truecolor" support.
This doesn't help, I mean a video that actually explains what is going on technically. You could make a youtube video that walks through the code and explains to other terminal developers how to do it.
>If other projects did not even support BMP, but only knew about drawing ASCII art with a 8 colors palette, yes, refusing to implement BMP in 24 bit mode as a first step, while spending 6 years debating the best way to achieve the perfect format that will have absolutely no drawback (chasing a wild goose) would indeed be a problem...
We already have better protocols than sixel though.
I figured something like that was the case, thank you for the explanation. Still that seems like a bad hack that terminals are not going to implement because it goes off-spec. It seems as if iTerm or kitty protocols (or anything else designed for a real screen and not a printer) would be a much better choice for a terminal trying to choose.
From reading the protocol "spec" I do not see how it could be used to transmit 32 bit color (or higher). The spec describes 8 bit indices into a palette. I have seen no sixel tools that are able to output 32 bit color, or any sixel terminals that can display 32 bit color. But I could be misreading it. I haven't dug through all the code so if someone could show how this could be done, then we could start to change those sixel implementations to do the right thing.
I'm asking for people to stop posting these rants. There's nothing wrong with scratching an itch, but the rants are just inflammatory and cause drama. I have never personally found them to be an adequate documentation of governance issues, and it almost always seems to devolve into a "he said she said" type of situation. Every time I've dug into an issue (this one included) the rant is way off-base with what is actually happening, and when I push back on it the developer just starts getting hostile at me and further fanning the flames. So it's not really useful to try and dismiss this by saying "oh it's just one piece of documentation you don't have to read it," my point is that people are still using these bad attitudes to inform themselves when that's a destructive thing to do. I mean, come on, someone just posted this in an HN comment. If you want to vent to your friends about how you think someone is a jerk then just do that, but it hurts me when that gets dumped in front of me as someone who's just try to comment on these issues and get my terminal fixed.
Open source in general has a problem with this, if it's left unchecked it leads to toxic behavior very quickly. That's my experience anyway. Traditional diplomacy doesn't help because some people seem to see open source as a "I can do whatever I want" type of thing, which it is. It's fine to do whatever you want in your free time but once you combine that with an attitude of "I will never change my mind or stop ranting" then is when it gets destructive and harmful towards someone who is trying to build a community and convince other projects to collaborate and adopt a shared standard. So if that's the goal then the ranting and bad attitudes need to stop. (Full disclosure: I'm saying this as someone who used to rant quite a lot, and damaged many relationships over it. It felt good for me but it made everyone around me become distrustful of each other)
If you want to downvote me again then that's fine, but if you have something to say then please reply. A downvote or an upvote can't mend a broken relationship like a strong conversation can.
Am I reading this incorrectly? It seems I was wrong, it supports 8-bit color, not 6-bit color. But that's still terrible, and every Sixel implementation I've ever used has spit out dithered images. The only terminal that is able to display full color images for me is iTerm, using the iTerm escape sequences, which are different escape sequences from sixel. So again, please help out with fixing this for me if you know how. Because so far you have not adequately explained what is going on here, or corrected any misconceptions, or helped to fix anything that is wrong with these terminals. And even the various libsixel examples seems to show dithering: https://github.com/saitoha/libsixel
If I'm confused then you could be in a great position to help me out, so please explain what apparently myself and the libsixel authors are both doing wrong. Then maybe at some point in the future I could help you out and return the favor.
And there are also other problems with the iterm escape sequences that I suspect will prevent you from correctly implementing them in tmux (see here: https://gitlab.com/gnachman/iterm2/-/issues/3898). So all paths point towards needing to make some new protocol for this. You may be in the best position to do that too.
>Intel macs can run Windows natively. You've also got your pick of emulators, from parallels to vmware, if you roll that way.
I'm not going to dual boot Windows or use a VM just to use a terminal emulator for a couple minutes, sorry. If you could just explain what that terminal does that's special so that it could be implemented in other terminals, or show a video, that would help.
>What you've written makes about as much sense as saying a drawing program should stop trying to support BMP format since it will have to be replaced down the line by JPG or PNG. gimp, paint and others support many formats. Nobody is complaining. People just click on open. They don't care about the underlying formats.
If GIMP was attempting to pressure other projects to output BMP files then yes, that would be a problem. I suspect other projects wouldn't go for that just because they asked.
>Not with 16 million colors. That's what 24 bit color mean (2^16) also called "truecolor" mode
>Try to use sixel to play videos in mintty, with 24 bit support so palettes aren't a problem.
You are confusing sixel with the iTerm image protocol which is different. Sixel is a really old and outdated, inefficient protocol that only supports uncompressed 6-bit paletted images. It would be best if we could just stop talking about sixel altogether, because this is not even what you're referring to anymore. I'm actually concerned that you're conflating these two, it would also best if you could be clear about this in terms of your project so it's not confusing as to what your project supports. Maybe the name should change from sixel-tmux at some point?
SSH compression is not going to be better than the image's native compression, you really don't want to rely on that to compress your images when we already have dozens of other better ways to transmit video.
>Not on mintty. I can change the font size up and down, it even resizes the sixels in proportion so the images remain aligned to the text in a pixel-perfect way.
I'd love to look into how that's accomplished but I can't use mintty because I use a Mac, sorry. I'm also not really interested in trying to mess with mingw just to get this set up.
This isn't FUD either, you're saying the terminals are bad, well, there is no terminal I can use that works correctly, I suggested to help out fixing the terminals if you know how and you basically said no. So what am I supposed to do? Part of making a good protocol is making one that is easy for the apps and terminal emulators to implement correctly, if that doesn't exist, then like I said you have to go back to square one. Adding this support to tmux is useful in some cases, but it still isn't going to help with getting the terminals to implement this right.
>In the future, sixel-tmux will intercept sixels live and rewrite them into other format, like iTerm or kitty.
This is a good idea, please do this instead of trying to get other terminals to adopt Sixel when they are just going to have to replace it down the line anyway.
That explanation isn't convincing to me, it's getting more into emotional territory (they are hostile because they didn't accept our patch) and away from technical territory (here are reasons why our patch wasn't accepted).
I think VTE is fine if you don't mind development happening at a glacial pace...
You're saying you're "reading between the lines", that reads to me like an emotional statement, not a technical one. Please let's focus on the technical issues at hand and what has actually been said, not on what we think someone might be saying.
>tell me precisely what doesn't work, in your own words.
I already explained it, I've used sixel in Xterm and Foot and I don't like it, the restriction to paletted images makes everything look bad. Also, changing the font size breaks the images. Also, the protocol is still terrible on bandwidth, if you use it to try to transmit 1080p video over ssh (as someone is bound to do) then you will encounter the same bandwidth issues. Again please read this issue if you want to know more about my stance, I agree with everything it's saying: https://gitlab.freedesktop.org/terminal-wg/specifications/-/...
So sixel-tmux is not going to help me, sorry. It may even make things worse for me if apps are trying to use it when I don't want it. If you want some more suggestions on what to do to help, I can give those. But you're also welcome to not listen to me if you disagree. Maybe you have to accept that I am just not in your target audience, but that's no reason to accuse other maintainers of trying to hold me hostage.
Edit: I said earlier that I think it would be a good goal to support the various image protocols, I would be happy to use this if eventually an image protocol was added there that wasn't seriously flawed. But the apps and terminal emulators will still have to be changed to support that, so supporting sixel doesn't really help towards that goal at all, and in some ways it impedes it because those projects might be expected to maintain that as a backwards compatibility option. That's what I meant earlier, I think you may be approaching this problem from the wrong angle.
If these issues keep coming up, and you keep saying "sixel isn't broken" then we have nothing technical to discuss and it's going off into emotional rant territory. You have to respond to the actual technical concerns. In addition to all those things, the restriction to only paletted images makes it so I personally won't use it, it cannot be used to do any kind of accurate graphics. If you wanted to work on a new protocol that wasn't broken, I think that would be great too.
Also I think you are making more erroneous and emotional arguments when you say these things:
>And I question the motives of people associated with a project whose official stance is that it's acceptable to plan technical hurdles to prevent people from using themes
This is misinformation, GNOME is not preventing people from using themes. I can go into more detail if you like.
>I have no interest in wasting hours writing then submitting code to people who have put into writing the reasons why they are playing the clock against sixel support (as if I couldn't have read between the lines...), and who have said previously they would use their positions to veto the inclusion.
You don't need to submit any code, you could produce a fork as you already have done. Then once that's done, you could send it to someone else who could get it cleaned up for submission, if you were interested. Please don't fixate on fighting someone or arguing with one person's statements when the actual state of the project contradicts that.
>Don't be so focused on one format. There needs to be a foot in the door, after which other formats can be added. It's just a bootstrapping problem.
This doesn't make sense, the issue here seems to be the sixel protocol itself, and getting a foot in the door won't help when the format itself is broken. You would need to go back to square one in any case to design a new protocol. I think it's good to have a project that can convert between the different formats, but starting with a baseline of a broken format that doesn't work is just going to ensure that everything stays broken.
Also, using sixel to display animations seems like an extremely bad idea. You'll always get horrible performance that way. That to me seems just like it's growing towards a really bad and outdated reinvention of an X11 or RDP-style protocol. I'd say it's a mistake to pursue that.
>Maybe that will encourage the VTE team to do what the users want?
I posted a link to it, but VTE already has started adding support for Sixel.
>This is such a good read. I really like their project and their motivation.
I can't agree. Like most rants, I found it to be very needlessly emotional, lacking in the technical department, and motivating towards the wrong goal (trying to fight and argue with maintainers, accusing them of negative things like "holding users hostage", etc) rather than doing the right thing for users (delivering new and useful features in a way that isn't broken). I wish open source programmers would make less rants and emotionally-driven forks, it's not helpful to someone like me who just wants to get something new like images in their terminal. The issues in the GNOME/WT bug trackers are what actually contain technical information. And just from looking at that, it appears there is an open development branch for VTE that contains sixel support: https://gitlab.gnome.org/GNOME/vte/-/issues/253
So if you use GNOME, I would say just use that and work on that, the quality is going to be better than the degraded functionality you get from de-rasterizing. In my opinion, it would be better from a technical standpoint if the author just wanted to work on that, or wanted to work on getting it implemented proper in WT. The degraded-image approach used by this tmux fork is unusable for the cited use case of getting nice graphs in the terminal, and I can't see how it's going to make it any easier for those other terminals to solve the real technical issues with sixel.
Edit: I also want to respond to this comment in the rant:
>What will happen as Wayland replaces X?
Nothing? XTerm still works. But there is also a Wayland-native terminal called "Foot" that supports sixel, if that's your thing: https://codeberg.org/dnkl/foot
2nd edit: To those downvoting, please reply to me instead of doing that. If you disagree with me it would be better to know why so I could potentially change my view, a downvote communicates nothing of value towards changing my mind.
I do think this website is still small enough to have decent moderation, but there are plenty of borderline toxic and/or trolling comments I've seen here that go unmoderated. I've also seen tons of blatant and dangerous misinformation posted in the comments section, you only have to look at the vaccine threads from last week to see that. Nothing is perfect anywhere and medical misinformation is really bad for everyone. Maybe we can blame Facebook for bleeding out into the rest of the internet and turning things toxic, but we still have to deal with the effects of it.
I'd be careful with that, I don't see why game development would be any different. You still have to focus on customer satisfaction. Single indie game developers succeeding without doing that seems to be an exception, not the rule. For every Stardew Valley, it feels like I've read a dozen postmortems from people who went off developing something for years only to find out that nobody wanted it and there was no audience for it.
I'm guessing the article refers to a form of "cowboy coding" or similar things promoted along with the myth of the 10x programmer, where there are attempts to apply that practice (of siloing developers and having them only write code to satisfy their needs) into the organizational environment. And I'd agree with the article there, in my experience that's awful and leads to everyone being upset. The hermit programmer is no different from a rogue programmer. It's a great way to ensure that key pieces of information are missed or glossed over.