Live data from Hacker News

Show HN: Shpool, a Lightweight Tmux Alternative

github.com

21–30 of 201 posts

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#21

Recently learned about Zellij and it replaced my tmux usage.

tmux works out of the box for me.

I tried Zellij and couldn’t get the Alt key to work on mac. And then when ssh’ing into a server I couldn’t see some of the icons because it required a special patched font.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#22

There's also the longstanding option dtach, which similarly seems to be a lightweight re-attachable way to run a program. https://github.com/crigler/dtach For a while I was running neovim on dtach, which let me host all the terminals I might want. It has long felt weird that we have so recursively many layers of management and navigation: the OS juggling multiple terminals, tmux juggling multiple shells, and neovim j…

> It has long felt weird that we have so recursively many layers of management and navigation: the OS juggling multiple terminals, tmux juggling multiple shells, and neovim juggling multiple windows

Tbh that's why I'm not a fan of tmux or terminals with fancy internal window management. I suppose it makes sense if your OS level window management is crap (macos...) but otherwise it feels like poor solution

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#23
post #3

Unbundling tmux is a great concept! Other tools that can overlap in use case are EternalTerminal and mosh which provide sessions that survive disconnects.

Oh thanks for mentioning EternalTerminal. I should add it to the comparison section in the README. It looks like it is similar to mosh in that it does stuff at the network level whereas all these other tools are purely remote-machine side programs, but it seems like it is a bit simpler than mosh. From a scan of their docs it sounds like they have the local terminal do all the rendering the way `shpool` does and don't try to muck about with any sort of predictive rendering the way mosh does. Does that sound right to anyone knows it well?

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#24

A lightweight tmux alternative? Tmux is already an incredibly lightweight C program in terms of binary size and resource usage.

tmux takes over scrollback, so it's not possible to scroll the buffer in the same way as without tmux. This tool seems to solve the problem more elegantly.

https://github.com/whalesalad/dotfiles/blob/master/tmux.conf...

Scrolling works pretty well for me.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#25

A lightweight tmux alternative? Tmux is already an incredibly lightweight C program in terms of binary size and resource usage.

Lightweight in terms of speed. Tmux makes even the slowest terminal feel like a Ferrari.

People say the use the likes of alacritty for the speed, and then they run tmux and make it slower than even gnome-terminal.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#26
How could this be a tmux alternative if it only provides session persistence? I use tmux mostly for layout (tiles, multiple windows, etc.) and not for session persistence necessarily. I don't know if this is why other people also use tmux, but I am not sure if "alternative" is the right word here.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#27
post #25

A lightweight tmux alternative? Tmux is already an incredibly lightweight C program in terms of binary size and resource usage.

Lightweight in terms of speed. Tmux makes even the slowest terminal feel like a Ferrari. People say the use the likes of alacritty for the speed, and then they run tmux and make it slower than even gnome-terminal.

How about calling it "fast" then?

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#28

A lightweight tmux alternative? Tmux is already an incredibly lightweight C program in terms of binary size and resource usage.

lightweight in terms of features of course. it simply allows you to have multiple shell/term sessions on a server and be able to switch between them from any terminal. Kind of a 'flat ctrl-Z' cum 'nohup' if you will. No windows, splits, etc, no client software at all in fact.

Oh thanks for checking, then I'll leave this. Splits are my primary feature in tmux.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#29

Earlier quoted context omitted.

tmux takes over scrollback, so it's not possible to scroll the buffer in the same way as without tmux. This tool seems to solve the problem more elegantly.

https://github.com/whalesalad/dotfiles/blob/master/tmux.conf... Scrolling works pretty well for me.

tmux does support scrolling and copy-paste, but they often work subtly differently than the way they do in a native terminal. For example, when I try putting `set -g mouse on` in `~/.tmux.conf`, scrolling mostly works fine but if I scroll up and then start typing or press up, I won't jump right to the bottom of the session the way I'm used to in native Alacritty (which I will often do as a way to return after scrolling back through a bunch of print output). This isn't a huge deal, and you can definitely get used to it, but it can be frustrating if you like how your normal terminal emulator works and don't want it to change.

Re: Show HN: Shpool, a Lightweight Tmux Alternative

#30

Earlier quoted context omitted.

tmux takes over scrollback, so it's not possible to scroll the buffer in the same way as without tmux. This tool seems to solve the problem more elegantly.

https://github.com/whalesalad/dotfiles/blob/master/tmux.conf... Scrolling works pretty well for me.

That gets you scrolling, yes, but not in the same way as without tmux.

Without tmux, your terminal emulator uses its scroll-back buffer to render as you scroll, not requiring any intermediate copies of the lines of text scrolling into view.

With tmux, your terminal emulator no longer handles that, and instead tmux must pass a copy of each line freshly scrolled into view to the terminal emulator, which involves an intermediate copy of that text and re-triggers the terminal emulator’s parsing (as far as your terminal emulator is concerned, it has never seen this line of text yet). All of that (and some other subtle overhead I’m not mentioning here) are completely avoided outside of tmux (or more specifically: whenever the terminal emulator is free to manage its own scroll-back).

Post reply on HN