4 ms·
Just out of curiosity and without creating yet another HN Poll; Who prefers Tmux over Screen and why?
by mattwdelong 15y ago
Just out of curiosity and without creating yet another HN Poll; Who prefers Tmux over Screen and why?
- bcardarella 15y agoMy preference for tmux is solely based around Brian's book. It was the first time that I actually "got" terminal multiplexing.
- jasonlotito 15y agoGoing to once again pimp this book and it's delectable goodness. It's a wonderful book, well written, clear, concise, and in just a few pages, gives you a lot to work with. Highly recommended. http://pragprog.com/book/bhtmux/tmux http://pragprog.com/book/bhtmux/tmux
- darklajid 15y agoLooked at the book. We had an article recently about (technical) books being blown up to fill pages - this obviously wasn't. I don't doubt that this might be a great work, but I have to admit that I felt the '88 pages?' thought coming up. The price isn't too bad. I just found out, while checking out the pragprog site, that I fell for the 'Seems thin' thing. Maybe a conditioning I need to correct - I don't know.
- xnxn 15y agoI do, having used screen for a couple of years before switching. It has vertical splits, a saner config, and was easier to get colors working the way I wanted them to. I can also appreciate that it has a more modern codebase with less legacy baggage, even if the benefits of that aren't readily apparent to end-users.
- muuh-gnu 15y ago> It has vertical splits So has screen and has been for years. tmux just had it first. > a saner config I never had any trouble configuring screen to do anything I needed. Can you give a practical example of what somewhat important for the average user you can do in tmux with less effort than in screen?
- technomancy 15y agoI used screen for five years and could never internalize the copy/paste key bindings for scrollback, and screen doesn't let you configure them. I was more comfortable in tmux after an hour than after years of screen due to it being able to just work with Emacs bindings. Apart from this, most of the advantages are only noticeable in a multi-user setup. The socket-based session sharing is great, (it just uses unix permissions) and the fact that it automatically resizes to the smallest display is a huge usability improvement. When we paired with screen we would always have to jump through hoops to make sure the guy with the smaller display joined last or he'd be unable to see everything.
- derwiki 15y agoI've still not run into a `screen' installed anywhere that has vertical split support compiled in. Yes, you can get a version of screen that does -- but EVERY version of tmux has vertical splits.
- onedognight 15y agoI've been trying out the iTerm2 author George Nachman's mod[1] to tmux that allows integration with terminal emulators (currently only iTerm2). Practically this means that when I reconnect to a server I get a window full of tabs for that tmux server. Now I don't need to know any of the tmux commands. I can switch/open/close tabs using the standard OS tab control keys. I can use two finger scroll to view the history. I can search the history using the usual OS key. I've been dreaming of doing this for gnome-terminal/tmux for years. Someone beat me to it and it's as nice as I had hoped. Of course you can still attach in the usual way if needed. [1] https://code.google.com/p/iterm2/wiki/TmuxIntegration https://code.google.com/p/iterm2/wiki/TmuxIntegration
- MatthewPhillips 15y agoThey aren't really competing products. Tmux is a Screen rewrite. Screen isn't going to be receiving major revisions going forward, it's (supposedly, I don't play with that code) in an unmaintainable state. That's the only reason tmux was ever created.
- pyre 15y agoNo necessarily. There's also the licensing issue. tmux is BSD and screen is GPL. There's a lot of Linux-BSD kerfuffles over the licensing differences.
- SkyMarshal 15y agoLess lag in tmux than screen, in my experience.
- pyre 15y ago1. tmux does not require suid root for multi-user. Even if you solve all of the permissions issues for screen, there is an explicit check for uid == 0 when you attempt to enable multi-user. 2. tmux has vertical splits. Yes, screen has these, but they require you to patch/build your own screen. I've yet to come across a patched screen that has vertical split support. 3. tmux can integrate scrolling with iTerm2 (IIRC, there may also be some urxvt integration, but you'd have to verify that). 4. In tmux, splits are first-class citizens. You can do "C-b <space>" to switch between 'layouts' much in the way that you would in a tiling window manager like xmonad. 5. tmux remembers your splits/layouts when you detach/reattach. Screen doesn't last I checked. 6. tmux has a 'show-messages' command that has a log of all messages that it showed at the bottom, so that you can view them if something popped up that you missed. 7. I like the config format better. I was able to convert my highly modded screen config to tmux in an hour or so, and the config file is much smaller/simpler. 8. When scrolling in copy mode it tells you where you are in the scrollback buffer (e.g. "0/32"). 9. tmux has this (from the manpage): has-session [-t target-session] (alias: has) Report an error and exit with 1 if the specified session does not exist. If it does exist, exit with 0. 10. Also this: respawn-window [-k] [-t target-window] [shell-command] (alias: respawnw) Reactivate a window in which the command has exited (see the remain-on-exit window option). If shell-command is not given, the command used when the window was created is executed. The window must be already inactive, unless -k is given, in which case any existing command is killed.