|
|
@ -1,143 +1,28 @@ |
|
|
|
################################### |
|
|
|
# better prefix key |
|
|
|
# # |
|
|
|
|
|
|
|
# Custom Binds # |
|
|
|
|
|
|
|
# # |
|
|
|
|
|
|
|
################################### |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Make sure screen is properly set for tmux |
|
|
|
|
|
|
|
# For XFCE using neovim and a material theme this is the only thing that fixed the colors. |
|
|
|
|
|
|
|
# For any other terminal, comment the line below and uncomment the next one. |
|
|
|
|
|
|
|
set-option -ga terminal-overrides ",xterm-256color:Tc" |
|
|
|
|
|
|
|
#set-option -g default-terminal "screen-256color" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Rebind tmux prefix to <c-space> to match vim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# remap prefix to Ctrl+A |
|
|
|
|
|
|
|
set -g prefix C-a |
|
|
|
set -g prefix C-a |
|
|
|
unbind C-b |
|
|
|
bind C-a send-prefix |
|
|
|
bind-key C-a send-prefix |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
set -s escape-time 0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Force Tmux to use bash at all times |
|
|
|
|
|
|
|
set-option -g default-shell /bin/bash |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Once the prefix is active these binds will matter |
|
|
|
|
|
|
|
# <prefix><Space> and <prefix><C-Space> take you to copy mode. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bind Space copy-mode |
|
|
|
|
|
|
|
bind C-Space copy-mode |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Rebinds to be like nerdtree |
|
|
|
|
|
|
|
unbind % |
|
|
|
|
|
|
|
bind s split-window -h |
|
|
|
|
|
|
|
bind i split-window -v |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Smart pane switching with awareness of vim splits |
|
|
|
|
|
|
|
# This is the tmux side of the vim-tmux-navigator plugin |
|
|
|
|
|
|
|
# is_vim='echo "#{pane_current_command}" | grep -iqE "(^|\/)g?(view|n?vim?)(diff)?$"'" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
bind k selectp -U # switch to panel Up |
|
|
|
|
|
|
|
bind j selectp -D # switch to panel Down |
|
|
|
|
|
|
|
bind h selectp -L # switch to panel Left |
|
|
|
|
|
|
|
bind l selectp -R # switch to panel Right |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Vim keybind so that paste is done more naturally instead of with ] |
|
|
|
|
|
|
|
bind p paste-buffer |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Resize tmux splits |
|
|
|
|
|
|
|
bind-key -r < resize-pane -L 3 |
|
|
|
|
|
|
|
bind-key -r > resize-pane -R 3 |
|
|
|
|
|
|
|
bind-key -r + resize-pane -U 1 |
|
|
|
|
|
|
|
bind-key -r = resize-pane -D 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
################################### |
|
|
|
|
|
|
|
# # |
|
|
|
|
|
|
|
# Custom Settings # |
|
|
|
|
|
|
|
# # |
|
|
|
|
|
|
|
################################### |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Enable vi-like keybindings |
|
|
|
|
|
|
|
set-window-option -g mode-keys vi |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Pass-through C-<arrow> |
|
|
|
|
|
|
|
set-window-option -g xterm-keys on |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
################################### |
|
|
|
|
|
|
|
# # |
|
|
|
|
|
|
|
# Third Party # |
|
|
|
|
|
|
|
# # |
|
|
|
|
|
|
|
################################### |
|
|
|
|
|
|
|
# |
|
|
|
|
|
|
|
# |
|
|
|
|
|
|
|
# Powerline Cyan - Tmux Theme |
|
|
|
|
|
|
|
# Created by Jim Myhrberg <contact@jimeh.me>. |
|
|
|
|
|
|
|
# |
|
|
|
|
|
|
|
# Inspired by vim-powerline: https://github.com/Lokaltog/powerline |
|
|
|
|
|
|
|
# |
|
|
|
|
|
|
|
# Requires terminal to be using a powerline compatible font, find one here: |
|
|
|
|
|
|
|
# https://github.com/Lokaltog/powerline-fonts |
|
|
|
|
|
|
|
# |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Status update interval |
|
|
|
|
|
|
|
set -g status-interval 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Basic status bar colors |
|
|
|
|
|
|
|
set -g status-style fg=colour240,bg=colour233 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Left side of status bar |
|
|
|
|
|
|
|
set -g status-left-style bg=colour233,fg=colour243 |
|
|
|
|
|
|
|
set -g status-left-length 40 |
|
|
|
|
|
|
|
set -g status-left "#[fg=colour233,bg=colour39,bold] #S #[fg=colour39,bg=colour240,nobold]#[fg=colour233,bg=colour240] #(whoami) #[fg=colour240,bg=colour235]#[fg=colour240,bg=colour235] #I:#P #[fg=colour235,bg=colour233,nobold]" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Right side of status bar |
|
|
|
|
|
|
|
set -g status-right-style bg=colour233,fg=colour243 |
|
|
|
|
|
|
|
set -g status-right-length 150 |
|
|
|
|
|
|
|
set -g status-right "#[fg=colour235,bg=colour233]#[fg=colour240,bg=colour235] %H:%M:%S #[fg=colour240,bg=colour235]#[fg=colour233,bg=colour240] %d-%b-%y #[fg=colour245,bg=colour240]#[fg=colour233,bg=colour245,bold] #H " |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Window status |
|
|
|
|
|
|
|
set -g window-status-format " #I:#W#F " |
|
|
|
|
|
|
|
set -g window-status-current-format "#[fg=colour233,bg=black]#[fg=colour81,nobold] #I:#W#F #[fg=colour233,bg=black,nobold]" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Current window status |
|
|
|
|
|
|
|
set -g window-status-current-style bg=colour100,fg=colour235 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Window with activity status |
|
|
|
|
|
|
|
set -g window-status-activity-style bg=colour233,fg=colour245 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Window separator |
|
|
|
|
|
|
|
set -g window-status-separator "" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Window status alignment |
|
|
|
|
|
|
|
set -g status-justify centre |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Pane border |
|
|
|
|
|
|
|
set -g pane-border-style bg=default,fg=colour238 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Active pane border |
|
|
|
|
|
|
|
set -g pane-active-border-style bg=default,fg=colour39 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Pane number indicator |
|
|
|
|
|
|
|
set -g display-panes-colour colour233 |
|
|
|
|
|
|
|
set -g display-panes-active-colour colour245 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Clock mode |
|
|
|
# better splitting |
|
|
|
set -g clock-mode-colour colour39 |
|
|
|
bind | split-window -h -c "#{pane_current_path}" |
|
|
|
set -g clock-mode-style 24 |
|
|
|
bind - split-window -v -c "#{pane_current_path}" |
|
|
|
|
|
|
|
|
|
|
|
# Message |
|
|
|
# better resizing |
|
|
|
set -g message-style bg=colour39,fg=black |
|
|
|
bind-key -r + resize-pane -U 10 |
|
|
|
|
|
|
|
bind-key -r = resize-pane -D 10 |
|
|
|
|
|
|
|
bind-key -r < resize-pane -L 10 |
|
|
|
|
|
|
|
bind-key -r > resize-pane -R 10 |
|
|
|
|
|
|
|
|
|
|
|
# Command message |
|
|
|
# 256 colors support |
|
|
|
set -g message-command-style bg=colour39,fg=black |
|
|
|
set -g default-terminal "screen-256color" |
|
|
|
|
|
|
|
|
|
|
|
# Mode |
|
|
|
# sane scrolling |
|
|
|
set -g mode-style bg=colour39,fg=black |
|
|
|
set -g mouse on |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# list of plugins |
|
|
|
|
|
|
|
set -g @plugin 'tmux-plugins/tpm' |
|
|
|
|
|
|
|
set -g @plugin 'tmux-plugins/tmux-sensible' |
|
|
|
|
|
|
|
set -g @plugin 'christoomey/vim-tmux-navigator' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# TMUX plugin manager (keep at the bottom of tmux.conf) |
|
|
|
|
|
|
|
# requires git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm |
|
|
|
|
|
|
|
run -b '~/.tmux/plugins/tpm/tpm' |
|
|
|