Create a gist now

Instantly share code, notes, and snippets.

Install and configure tmux on Mac OS X
# First install tmux
brew install tmux
# For mouse support (for switching panes and windows)
# Only needed if you are using Terminal.app (iTerm has mouse support)
Install http://www.culater.net/software/SIMBL/SIMBL.php
Then install https://bitheap.org/mouseterm/
# More on mouse support http://floriancrouzat.net/2010/07/run-tmux-with-mouse-support-in-mac-os-x-terminal-app/
# Enable mouse support in ~/.tmux.conf
set-option -g mouse-select-pane on
set-option -g mouse-select-window on
set-window-option -g mode-mouse on
# Install Teamocil to pre define workspaces
https://github.com/remiprev/teamocil
# See http://files.floriancrouzat.net/dotfiles/.tmux.conf for configuration examples
@pacemkr

Thank you.

@simme
Owner

@pacemkr Glad you found it helpful!

@christiangenco

Thanks for the mouseterm tip!

@fesplugas

Works like a charm! Thanks.

@agfor

Thanks, this was very helpful. What exactly does Teamocil do / why is it necessary?

@simme
Owner

@agfor It is not necessary. But I find it helps alot! It let's you define project setups, with panes and windows, in a YAML-file. And then just run a command to setup any number of windows and panes running a command. I do all my dev in the terminal, so for each project I have a YAML file that launches vim in one pane, starts SASS-compilation in another, etc etc. So I do not have to manually setup panes everytime I'm developing on a specific project.

@kennym

Thanks. This worked great!

@tkleczek

Great tip! Thanks!

@oraclebill

Thanks!

@Stuk

Thanks for the tip. I used EasySIMBL with MouseTerm on Mountain Lion and tmux on a remote Ubuntu and it works really well.

@veloper

This is so awesome, thanks for this write up. I also used EasySIMBL as @Stuk suggested -- it's working like a champ.

I'd also like to give a shout out to the Tmuxinator gem -- makes tmux setup crazy simple :)

@mattacular

Mucho gracias

@mayoralito

Nice work, thank you!

@Globegitter

Hmm, I just switched to Mac and relatively new to this whole terminal/tmux environment, but I followed all the steps and it is not working for me. Could there maybe be a problem with me using zsh? Would be really glad for any other help. If I get this to work, tmux would be perfect.

Edit: Got it working, was just an issue with reloading.
tmux source-file ~/.tmux.conf fixed it. Cheers.

Edit2:
Ok, really strange, somehow itg is not working anymore. I played a bit more with the settings and now I have even changed everything to just the necessary lines and I can't scroll anymore. Hmm, now that I think about it, I had bash instead of zsh (installed via brew) for a short time, because of misconfiguration. I can't remember though if it just worked in bash. Anyway, could that maybe be a reason? Any hints would be really appreciated.

@danslee

Thanks! You might want to add in support for pbpaste and pbcopy via the very useful reattach-to-user-namespace utility, aka tmux-MacOSX-pasteboard.

brew install reattach-to-user-namespace

followed by adding

set-option -g default-command "reattach-to-user-namespace -l <yourshellhere>"

to your .tmux.conf file.

@ahmadajmi

Thank You

@timmysze

Thanks!

@gad0lin

Just had to install ragel.

brew install ragel

@msammarco

How about copy? Anyone get that working with default middle click behavior on ubuntu?

@miguelmota

It works!

@rhacker

brilliant :)

@Congee

thx

@mLewisLogic

Works with TotalTerminal. 👍
Use EasySIMBL for Mavericks.

@PositiveControl

Thanks a lot!

@pfriedland

Thanks!

@piyushkandpal

Great man .. worked like magic ...thanks so much :) :)

@m9dfukc

Perfect ... thanks so much!!!

@linse

Thank you, this is so useful!

@ccmcbeck

The gist that keeps on giving...

@ybham6

Thanks for the great mouse support 😃

@kirkelifson

Thanks!

@vtombesi

Thank you

@vamshisuram

Infinite thanks..

@gaoxiang007

Thanks :)

@mwaldner-redfall

Awesome! Thank you!

@alexserver

I got this error when I start tmux after adding those lines to .tmux.conf

.tmux.conf:1: unknown option: mode-mouse
.tmux.conf:2: unknown option: mouse-select-pane
.tmux.conf:3: unknown option: mouse-select-window
@tmcoma

If you're getting the errors like alexserver mentioned above.

.tmux.conf:1: unknown option: mode-mouse
.tmux.conf:2: unknown option: mouse-select-pane
.tmux.conf:3: unknown option: mouse-select-window

Check your version tmux -V. If it's >=2.1, syntax was simplified to:

# Mouse mode for tmux > 2.1 (Oct 2015)
set -g mouse on

http://stackoverflow.com/questions/30185210/ubuntu-change-tmux-1-8-to-tmux-next-1-9 for details.

@flov

This doesn't work in the newest tmux 2.1, check out tmux/tmux#145
after set -g mouse on do this:
bind -n WheelUpPane if-shell -F -t = "#{mouse_any_flag}" "send-keys -M" "if -Ft= '#{pane_in_mode}' 'send-keys -M' 'copy-mode -e; send-keys -M'"
tmux/tmux#145

@corv89

@flov amazingly that incantation worked. thanks!

@hprobotic

Nice, thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment