Skip to content

Instantly share code, notes, and snippets.

@paraita
Last active February 12, 2019 21:01
Show Gist options
  • Save paraita/6b4a25aa64f99f8237ceb72bdd0d11b0 to your computer and use it in GitHub Desktop.
Save paraita/6b4a25aa64f99f8237ceb72bdd0d11b0 to your computer and use it in GitHub Desktop.
My tmux conf file
run-shell "powerline-daemon -q"
source "/usr/local/lib/python3.7/site-packages/powerline/bindings/tmux/powerline.conf"
# Automatically set window title
#set-window-option -g automatic-rename on
set-option -g set-titles on
setw -g mode-keys vi
bind-key -T edit-mode-vi Up send-keys -X history-up
bind-key -T edit-mode-vi Down send-keys -X history-down
bind-key -T copy-mode-vi v send -X begin-selection
bind-key -T copy-mode-vi [ send-keys -X begin-selection
bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy"
bind-key -T copy-mode-vi ] send-keys -X copy-selection
# tmux is supposed to figure out 256-color support from terminfo and set this,
# but it seems to fail anyway. Kind of sucks for when I run Terminal.app...
# TODO: we can use shell here to be smart-ish
set -g default-terminal "screen-256color"
# send the prefix to client inside window (ala nested sessions)
bind-key a send-prefix
# disable wait after escape, so vim is usable
set -sg escape-time 0
# in copy mode, use vi bindings and make the mouse work
setw -g mode-keys vi
setw -g mouse on
# scrollback buffer n lines
set -g history-limit 12000
# bells and monitoring
# set -g bell-action any
set -g visual-bell off
set -g visual-activity off
set -g visual-silence on
# This was removed -- what happened to it?
# set -g visual-content on
#set -g status-right "#H #[fg=cyan][#(uptime|cut -d ' ' -f 12-)]#[default]"
#set -g status-right '#{cpu_bg_color} CPU: #{cpu_icon} #{cpu_percentage} | %a %h-%d %H:%M '
set -g status-right '#{battery_icon} #{battery_percentage} #{battery_remain} | %a %h-%d %H:%M '
# set -g message-attr bold
# set -g message-fg black
# set -g message-bg yellow
# try to set wm window titles with xterm codes
set -g set-titles on
# wm window title string (uses statusbar variables)
# set -g set-titles-string "#I:#W"
# Zero-based indexing for windows and panes isn't terribly sensible.
set -g base-index 1
setw -g pane-base-index 1
# the panes display and status messages don't show very long by default
set -g display-panes-time 2000
set -g display-time 2000
# If we want Vim to be told about focus: http://git.io/2UqSgQ
set -g focus-events on
bind -n S-M-Left previous-window
bind -n S-M-Right next-window
# List of plugins
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'tmux-plugins/tmux-yank'
set -g @plugin 'tmux-plugins/tmux-cpu'
set -g @plugin 'tmux-plugins/tmux-battery'
# Other examples:
# set -g @plugin 'github_username/plugin_name'
# set -g @plugin 'git@github.com/user/plugin'
# set -g @plugin 'git@bitbucket.com/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