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
pacemkr commented Apr 17, 2012

Thank you.

@simme
Owner
simme commented Apr 17, 2012

@pacemkr Glad you found it helpful!

@christiangenco

Thanks for the mouseterm tip!

@fesplugas

Works like a charm! Thanks.

@agfor
agfor commented Jul 6, 2012

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

@simme
Owner
simme commented Jul 9, 2012

@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
kennym commented Sep 8, 2012

Thanks. This worked great!

@tkleczek
tkleczek commented Oct 2, 2012

Great tip! Thanks!

@oraclebill

Thanks!

@Stuk
Stuk commented Feb 16, 2013

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

@veloper
veloper commented Feb 19, 2013

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
danslee commented Jun 8, 2013

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
timmysze commented Oct 8, 2013

Thanks!

@gad0lin
gad0lin commented Nov 7, 2013

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
rhacker commented Apr 25, 2014

brilliant :)

@Congee
Congee commented May 22, 2014

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
m9dfukc commented Sep 30, 2014

Perfect ... thanks so much!!!

@linse
linse commented Oct 2, 2014

Thank you, this is so useful!

@ccmcbeck

The gist that keeps on giving...

@AD3zFQMq

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
tmcoma commented Nov 26, 2015

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
flov commented Dec 1, 2015

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
corv89 commented Dec 3, 2015

@flov amazingly that incantation worked. thanks!

@hprobotic

Nice, thanks

@wilgoszpl

set -g mouse on

Works fine, but there is no way to copy text using mouse then. Do you guys have any solution on that?

@milansk
milansk commented Nov 9, 2016

@wilgoszpl Hold down Option key while selecting the text.

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