-
-
Save sshadmand/70a9d339f49aeaf343de7ef8f74a54a2 to your computer and use it in GitHub Desktop.
The best and greatest tmux.conf ever
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Create a tmux conf file | |
#> touch ~/.tmux.conf | |
Install TMP | |
#> git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm | |
[Copy and paste tmux.conf below into local file.] | |
Load tmux configurations | |
#> tmux source-file ~/.tmux.conf | |
Note, some actions, like opening folders | |
or starting apps from with tmux, do not work properly. | |
To fix this, on OSX: | |
#> brew install reattach-to-user-namespace | |
#> vi ~/.bash_aliases | |
and add these lines | |
alias sublime='reattach-to-user-namespace sublime' | |
alias open='reattach-to-user-namespace open' | |
Then load the changes | |
#> source ~/.bash_aliases |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
##### | |
# Instructions | |
#### | |
# BE SURE TO INSTALL TMUX Plugin Manager | |
# https://github.com/tmux-plugins/tpm | |
# git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm | |
# then Load tmux configurations | |
#> tmux source-file ~/.tmux.conf | |
# Once installed load plugins in your session with | |
#> ctrl-b + I | |
# Once installed: | |
# prefix + y = copy line to clipboard | |
# prefix + ctrl-s = Persist session | |
# prefix + ctrl-r = Resurect session | |
# For all other commands, see cheat sheet: | |
# http://www.dayid.org/comp/tm.html | |
#### | |
# Settings including active mouse, scrolling and more ... | |
#### | |
# 0 is too far from ` ;) | |
set -g base-index 1 | |
#retreuve persisted tmux after restart | |
#https://github.com/tmux-plugins/tmux-resurrect | |
set -g @plugin 'tmux-plugins/tmux-resurrect' | |
# automaticually saves tmux session every 15mins | |
# https://github.com/tmux-plugins/tmux-continuum | |
set -g @continuum-restore 'on' | |
#allow copy and paste from tmux | |
#https://github.com/tmux-plugins/tmux-yank | |
set -g @plugin 'tmux-plugins/tmux-yank' | |
# Automatically set window title | |
set-window-option -g automatic-rename on | |
set-option -g set-titles on | |
#set -g default-terminal screen-256color | |
set -g status-keys vi | |
set -g history-limit 10000 | |
setw -g mode-keys vi | |
set -g mouse on | |
setw -g monitor-activity on | |
bind-key v split-window -h | |
bind-key s split-window -v | |
bind-key J resize-pane -D 5 | |
bind-key K resize-pane -U 5 | |
bind-key H resize-pane -L 5 | |
bind-key L resize-pane -R 5 | |
bind-key M-j resize-pane -D | |
bind-key M-k resize-pane -U | |
bind-key M-h resize-pane -L | |
bind-key M-l resize-pane -R | |
# Vim style pane selection | |
bind h select-pane -L | |
bind j select-pane -D | |
bind k select-pane -U | |
bind l select-pane -R | |
# Use Alt-vim keys without prefix key to switch panes | |
bind -n M-h select-pane -L | |
bind -n M-j select-pane -D | |
bind -n M-k select-pane -U | |
bind -n M-l select-pane -R | |
# Use Alt-arrow keys without prefix key to switch panes | |
bind -n M-Left select-pane -L | |
bind -n M-Right select-pane -R | |
bind -n M-Up select-pane -U | |
bind -n M-Down select-pane -D | |
# Shift arrow to switch windows | |
bind -n S-Left previous-window | |
bind -n S-Right next-window | |
# No delay for escape key press | |
set -sg escape-time 0 | |
# Reload tmux config | |
bind r source-file ~/.tmux.conf | |
# THEME | |
set -g status-bg black | |
set -g status-fg white | |
set -g window-status-current-bg white | |
set -g window-status-current-fg black | |
set -g window-status-current-attr bold | |
set -g status-interval 60 | |
set -g status-left-length 30 | |
set -g status-left '#[fg=green](#S) #(whoami)' | |
set -g status-right '#[fg=yellow]#(cut -d " " -f 1-3 /proc/loadavg)#[default] #[fg=white]%H:%M#[default]' | |
# List of plugins | |
set -g @plugin 'tmux-plugins/tpm' | |
set -g @plugin 'tmux-plugins/tmux-sensible' | |
# Other examples: | |
# set -g @plugin 'github_username/plugin_name' | |
# set -g @plugin '[email protected]/user/plugin' | |
# set -g @plugin '[email protected]/user/plugin' | |
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf) | |
run '~/.tmux/plugins/tpm/tpm' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment