If you spend any significant amount of time on a terminal in a *nix operating system, you’ve probably heard of tmux. For the uninitiated, tmux is a terminal multiplexer: From their site:

[tmux] lets you switch easily between several programs in one terminal, detach them (they keep running in the background) and reattach them to a different terminal. And do a lot more.

In addition, tmux lets you split your terminal vertically and horizontally to house multiple terminals side-by-side. You can also go crazy and customize a load of key bindings if you are so inclined.

One sticking point with tmux is it’s ability to interact with the system’s clipboard. Generally this involves using a command-line tool such as xclip, but configuration has been somewhat hairy. With tmux 1.8, you can do something like this:

  bind-key -n -t emacs-copy M-w copy-pipe "xclip -i -sel p -f | xclip -i -sel c "
  bind-key -n C-y run "xclip -o | tmux load-buffer - ; tmux paste-buffer"

This gives you something analogous to emacs key bindings for copy and paste. Credit to Jacob for his answer on stack exchange.

Try it out - you can get the latest version of tmux from the tmux website.