What do you mean? Commands like tmux swap-window and tmux move window allow you do move the order of the windows / workspaces.
http://superuser.com/questions/343572/how-do-i-reorder-tmux-...
It kind of works in the end, but it's arguably a bit more awkward to use than in screen.
I agree that it does not work 'out of the box', but once setup, it works quite nice :)
Vertical splits were patched in and added a long time ago, screen is usually installed by default, so I know it is there on systems where I'm not allowed to install packages. I can share screen sessions with co-workers, split windows etc.
IIRC, that patch floated around for a while.
The other thing that tmux brings to the table is better scripting support than screen + things like tmuxinator (for me at least).
I know that scrolling is one of the first non-obvious changes that seem irritating at first. But after you get used to scrolling with the keyboard, I find myself missing this possibility on 'standard' terminal windows.
Suddenly using the mouse to scroll feels really awkward and inefficient.
as for selecting copying pasting. i use these options
set -g mouse-resize-pane on
set -g mouse-select-pane on
i can now select and resize panes with the mouse, and i can select while holding the option key on the keyboard.also if you set
setw -g mode-mouse on
you can scroll back with the mouse in the scroll back buffer without having to press c-b[ and it will still properly scroll everywhere else... vim/weechat/etc.on a mac, iterm2 does this natively(in linux it works anyway). but if you want to use that in terminal or totalterminal(quake term) you'll need to install mouseterm. I recommend using mouseterm-plus as i recall mouse term is no longer maintained.
edit: looks like the link is dead you'll have to build it yourself https://github.com/saitoha/mouseterm-plus
Sometimes your hand is on the mouse and it makes for sense to use it.
edit: corrected hotkeys
I don't mind people who don't want to use the mouse, that's fine, but personally I sometimes don't run tmux when I know it will upset my scrolling and cut+pasting.
1) You have to have a separate terminal window for the 'control' process.
2) Now creating new tabs / windows automatically creates them in said tmux session (unless you manually use the "Profiles" drop-down menu). It would be nice to use Tmux as a way to create a window full of tabs in a scripted way (a la Tmuxinator), but not be forced to use a single Tmux session for everything.
I use iTerm. I use ssh to regularly access about 20 other boxes. I create tabs for every task. So I might have 3 tabs for a single box. 1 to start/stop processes, 1 to edit files, 1 to tail logs to verify my crap's working.
I installed tmux and I couldn't figure out what I'd use it for. This might be completely wrong, but I thought it'd allow me to control multiple boxes from a single session.
For example, I have 5 production servers that set up the same way. I want to do the same thing on all 5 at the same time. So my input/output is multiplexed to 5 boxes in a 1:5 relationship. Only I couldn't get that to work. I got lost switching sessions/contexts.
Again, sorry for being thick. I feel like I'm missing something great here.
With tmux, no HUP happens on the server side so the process keeps running. Once your internet connection comes back online you ssh back into the machine and ``tmux attach`` to the previous session. And voilà, it is like nothing happened. All of your output from before is still there too.
It is always persistent so you have your tabs all set up on each server. You just attach to the sessions of TMux on the servers and don't have to ever create your complex scheme on your local machine. You can have them start on boot on the server and just attach to them via ssh.
My case I use WeeChat (IRC) on my home server always running and I just ssh to my server and attach to that session.
This should synchronize the input to all panes i.e. type in any one and it will be sent to all 5. to turn it off, just run the same command again. I don't know if tmux has equivalent synchronize-windows.