News for hackers. Stuff that matters.
Re:Are We Sixel Yet by kps on Sunday May 14, 2023 @09:17AM (#35937717)
For those like me with the opposite inclinations, try dtach. It is only a session handler. It does not pretend to be a terminal, or do splits or tabs or anything but I/O. That's left to your actual terminal.
Re:Are We Sixel Yet by mananaysiempre on Sunday May 14, 2023 @03:06PM (#35940472)
How does that work?

I mean, you could avoid knowing anything about the terminal state machine if you dumped the entirety of the session’s bytestream from the very beginning on each attach event, but unless you are willing to do that it seems to me that you’re going to have to track enough state to basically amount to maintaining a screen buffer (and then you do have to care about sixels).

For example, suppose the user fills the screen (maybe even with an image), then spends a lot of bytes overwriting the last line over and over (think progress bar). Either you’re tracking the first byte to have affected the current screen (and need to store the entirety of the “a lot” and dump it onto a newly attached client) or you’re trying to discard all the stale updates while keeping the last one and the initial screen contents (and that’s just a screen buffer with extra steps). (Incidentally, I suspect Muratori’s Refterm fails this test to the point of requiring a redesign, though I haven’t checked.)

Re:Are We Sixel Yet by kragen on Sunday May 14, 2023 @03:56PM (#35940881)
dtach sends control-l or sigwinch or one of a few other things when you reattach, at your option, so if you're running a fullscreen program that cares about the terminal state machine, it will redraw itself
Re:Are We Sixel Yet by mananaysiempre on Monday May 15, 2023 @02:06AM (#35944383)
/me looks at the source

I see, yeah, that’s neat. I can still imagine situations where it’ll fail, but they’re reasonably limited. (If you detach and attach in the middle of a large sixel image being transmitted, you’ll have the tail of it dumped on you in text form; if you detach from a session with the terminal set to red text, it’ll be back to default when you return; and so on.)

Re:Are We Sixel Yet by kps on Monday May 15, 2023 @10:15AM (#35948499)
For me the most common breakage was due to ssh dropping overnight (by corp security policy) while a remote editor has the (local) terminal in an altered state (i.e. modifyOtherKeys). Easy to recover, and for me well worth it for the direct I/O passthrough.
Re:Are We Sixel Yet by behnamoh on Sunday May 14, 2023 @03:54PM (#35940865)
> do splits or tabs or anything but I/O. That's left to your actual terminal.

I use tmux exactly to split panels in any way I want. My terminal (iTerm2) doesn't give me the full power to manipulate windows/panels using shortcuts.

But unfortunately I'm gonna have to stop using tmux because it's not compatible with sixel. I spent a lot of time ricing it tho...

Re:Are We Sixel Yet by alwillis on Sunday May 14, 2023 @04:41PM (#35941203)
I switched from iTerm2 to WezTerm, which has Sixel support plus a built-in multiplexer.
Re:Are We Sixel Yet by kps on Sunday May 14, 2023 @04:17PM (#35941048)
If you're in control of the sixel producer, tmux has a ‘passthrough’ sequence, ESC Ptmux …

(I used to use tmux, but ultimately found it more trouble than it was worth.)

Re:Are We Sixel Yet by drbaba on Monday May 15, 2023 @03:09AM (#35944709)
> My terminal (iTerm2) doesn't give me the full power to manipulate windows/panels using shortcuts.

Which tmux pane management features do you miss in iTerm2?