iTerm is not set up to work with these shortcuts by default but here’s how you set them up: You might be familiar with shortcuts to skip a word (⌥) or go to start/end of the line (⌘). If you’re using BASH instead of ZSH you can add export CLICOLOR=1 line to your ~/.bash_profile file for nice coloring of listings.Source Code Pro can be downloaded using Homebrew brew tap homebrew/cask-fonts & brew install -cask font-source-code-pro Change the font to 14pt Source Code Pro Lite.Change the cursor text and cursor color to yellow make it more visible.Go to profiles -> Default -> Terminal -> Check silence bell to disable the terminal session from making any sound.Set hot-key to open and close the terminal to command + option + i. Here are some suggested settings you can change or set, they are all optional. ITerm2 should automatically pick it up and notify you but you can also set the theme by navigating to Preferences > Profiles > Colors > Color Presets: Snazzy. In theory, I think there should be a way to configure iTerm2 or tmux so that when you connect to the remote system you are automatically attached to any existing tmux session, but I was not able to get that to work by modifying the command line in the iTerm2 profile.(curl -Ls > /tmp/ermcolors & open /tmp/ermcolors ) If instead of creating a new tmux session, what you wanted originally was to attach to an existing session, then you can do that with tmux -CC attach. If you want a more orderly detach from tmux, then just do ESC within the tmux command mode window. If you close the iTerm2 window showing the tmux command mode, then it seems to just kills the tmux client instance that was connected to that session, so both your iTerm2 windows disappear, but the tmux session is still alive and you can re-attach to it. If you close the iTerm2 window representing the tmux session, it kills the underlying session and all it's tmux windows. If you do CMD-T, this will create a new iTerm2 tab, representing a new tmux window.Īt this point you can do "Shell / tmux / Dashboard" in order to observe iTerm2's understanding of the existing tmux sessions and windows. Within that new iTerm2 window, the initial iTerm2 tab represents the single tmux window of that session. After this your iTerm2 window shows the tmux command mode, tmux creates a new session, and iTerm2 immediately creates a new iTerm2 window for that tmux session. In the iTerm2 remote login window, at the command line do: tmux -CC. Open an iTerm2 window to the remote machine via your new profile, by doing: Profiles / Pi. To configure this, go: Preferences / Profiles / + / Command.Command = "ssh pi" Once this is properly configured, you should be able to login just by doing ssh pi (supposing pi is the host name of your remote system).Ĭreate a new iTerm2 profile which, instead of doing a login to your local shell, only calls ssh pi to login to the remote machine. ssh/authorized_keys on your remote machine to configure password-less login to the remote system. Here is what worked for me, with the stable release versions as of, which are iTerm 2.1.4 on OS X 10.11.2 and tmux 1.9 on Raspbian Linux:įirst use. Now you have a native iTerm2 tmux window, which you can close at any time, and reconnect to when needed.įinally, to make life easier we can put this all into a helper function that you can add to your bashrc or zshrc: # tmux+ssh helper function with iterm integration -A makes new-session behave like attach-session if session name already exists.We can expand the command a little to create a named tmux session, create the session if it does not exist, or reconnect if the session already exists: ssh -t 'tmux -CC new -A -s tmssh' The downside of this approach is that you will get a new tmux session each time, so you will not be able to reconnect to view long-running processes (unless you remember to run tmux -CC attach).
0 Comments
Leave a Reply. |