Skip to content

Instantly share code, notes, and snippets.

@Wheest
Created July 24, 2019 10:42
Show Gist options
  • Save Wheest/0179156a0a3b34b2ac61694f6f6a4a4e to your computer and use it in GitHub Desktop.
Save Wheest/0179156a0a3b34b2ac61694f6f6a4a4e to your computer and use it in GitHub Desktop.
setw -g mode-keys emacs # Use emacs keybindings in copy mode
setw -g status-keys emacs
set -g mouse on
# COPY & PASTE
# Copy tmux buffer to X clipboard
# bind -Tcopy-mode M-w send-keys -X copy-pipe "xclip -i -sel p -f | xclip -i -sel c " . bind-key -n C-y run-shell "xclip -o | tmux load-buffer - ; tmux paste-buffer"
# run -b runs a shell command in background
bind C-w run -b "tmux show-buffer | xclip -selection clipboard -i"
# bind C-w run -b "tmux show-buffer | xclip -i"
# Paste from X clipboard into tmux; also replace newline characters with
# space characters when pasting
# bind C-y run -b "exec </dev/null; xclip -o | awk 1 ORS=' ' | tmux load-buffer - ; tmux paste-buffer"
# Same as `C-y' binding except that the newline chars are not replaced with space
# bind Y run -b "exec </dev/null; xclip -o | tmux load-buffer - ; tmux paste-buffer"
# Paste from X clipboard into tmux; also replace newline characters with
# space characters when pasting
#bind C-y run -b "exec </dev/null; xclip -o | awk 1 ORS=' ' | tmux load-buffer - ; tmux paste-buffer"
# Same as `C-y' binding except that the newline chars are not replaced with space
#bind Y run -b "exec </dev/null; xclip -o | tmux load-buffer - ; tmux paste-buffer"
# To copy:
#bind-key -n -t emacs-copy M-w copy-pipe "xclip -i -sel p -f | xclip -i -sel c "
# To paste:
#bind-key -n C-y run "xclip -o | tmux load-buffer - ; tmux paste-buffer"
# set -g window-style 'fg=colour247,bg=colour236'
# set -g window-style 'fg=colour238,bg=colour253'
# remap prefix from 'C-b' to 'C-S'
unbind C-b
set-option -g prefix `
bind-key ` send-prefix
# go to last window
bind-key L last-window
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf\; \
display-message "source-file done"
# mouse mode
set-option -g mouse on
# set-option -g mouse-select-pane on
# dont rename windows automatically
set-option -g allow-rename off
set -g default-terminal "tmux"
# switch panes using Alt-arrow without prefix
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
# use default bash PS1 colours
#source-file ~/.bashrc
#set-option -g default-command bash
set -g default-terminal "screen-256color"
#set -g default-terminal "tmux"
# New windows in same dir
bind '"' split-window -c "#{pane_current_path}"
bind % split-window -h -c "#{pane_current_path}"
bind c new-window -c "#{pane_current_path}"
# New windows use same virtualenv (put in .bashrc)
# if [ -n "$VIRTUAL_ENV" ]; then
# . "$VIRTUAL_ENV/bin/activate"
# else
# workon default
# fi
######################
### DESIGN CHANGES ###
######################
# panes
set -g pane-border-fg black
set -g pane-active-border-fg brightred
## Status bar design
# status line
set -g status-justify left
set -g status-bg default
#set -g status-fg colour12
set -g status-fg colour0
set -g status-interval 2
# }
# The statusbar {
set -g status-position bottom
# set -g status-bg colour236
# set -g status-fg colour247
# set -g status-bg colour234
# set -g status-fg colour137
set -g status-attr dim
set -g status-left ''
#set -g status-right '#[fg=colour233,bg=colour245,bold] #S #[fg=colour233,bg=colour241,bold] %d/%m #[fg=colour233,bg=colour245,bold] %H:%M:%S '
set -g status-right '#[fg=colour233,bg=colour03,bold] #(cd #{pane_current_path}; git rev-parse --abbrev-ref HEAD) #[fg=colour233,bg=colour11,bold] #S #[fg=colour233,bg=colour142,bold] #H #[fg=colour233,bg=colour03,bold] %d/%m #[fg=colour233,bg=colour11,bold] %H:%M:%S '
set -g status-right-length 50
set -g status-left-length 20
# setw -g window-status-current-fg colour81n
# setw -g window-status-current-bg colour238
setw -g window-status-current-attr bold
#setw -g window-status-current-format ' #I#[fg=colour250]:#[fg=colour255]#W#[fg=colour50]#F '
# setw -g window-status-fg colour138
# setw -g window-status-bg colour236
setw -g window-status-fg colour247
#setw -g window-status-bg colour236
setw -g window-status-bg colour11
#setw -g window-status-attr none
setw -g window-status-format ' #I#[fg=colour237]:#[fg=colour250]#W#[fg=colour244]#F '
setw -g window-status-bell-attr bold
setw -g window-status-bell-fg colour255
setw -g window-status-bell-bg colour1
# }
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment