|
|
|
|
###################################
|
|
|
|
|
# #
|
|
|
|
|
# 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
|
|
|
|
|
unbind C-b
|
|
|
|
|
bind-key C-a send-prefix
|
|
|
|
|
|
|
|
|
|
set -s escape-time 0
|
|
|
|
|
|
|
|
|
|
# Force Tmux to use zsh at all times
|
|
|
|
|
set-option -g default-shell /bin/zsh
|
|
|
|
|
|
|
|
|
|
# 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
|
|
|
|
|
set -g clock-mode-colour colour39
|
|
|
|
|
set -g clock-mode-style 24
|
|
|
|
|
|
|
|
|
|
# Message
|
|
|
|
|
set -g message-style bg=colour39,fg=black
|
|
|
|
|
|
|
|
|
|
# Command message
|
|
|
|
|
set -g message-command-style bg=colour39,fg=black
|
|
|
|
|
|
|
|
|
|
# Mode
|
|
|
|
|
set -g mode-style bg=colour39,fg=black
|
|
|
|
|
|
|
|
|
|
|