From e24133b03f9f0d44d59b582bb2f14a53e6ea8cfa Mon Sep 17 00:00:00 2001 From: Donovan Glover Date: Sun, 8 Apr 2018 16:22:13 -0400 Subject: [PATCH] Add new tmux config This commit adds my new tmux config since I now know how to use the majority of features properly now. --- tmux/.tmux.conf | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 tmux/.tmux.conf diff --git a/tmux/.tmux.conf b/tmux/.tmux.conf new file mode 100644 index 0000000..233c198 --- /dev/null +++ b/tmux/.tmux.conf @@ -0,0 +1,98 @@ +# New Start: A modern Arch workflow built with an emphasis on functionality. +# Copyright (C) 2018 Donovan Glover + +# Use the best shell +# NOTE: zsh autocomplete does not use the correct color +# NOTE: zsh takes longer to load compared to fish +set -g default-shell "/bin/fish" + +# Offset the starting index of panes by one +set -g base-index 1 + +# Always use vi +set -g status-keys vi +set-window-option -g mode-keys vi + +# Increase the history limit +set -g history-limit 10000 + +# Enable mouse scroll in tmux +set-window-option -g mouse on + +# Show a notification for panes with new information +set-window-option -g monitor-activity on + +# Switch between panes with alt+h/j/k/l +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 + +# Swap between panes with alt+shift+h/j/k/l +bind -n M-H swap-pane -U +bind -n M-J swap-pane -D +bind -n M-K swap-pane -U +bind -n M-L swap-pane -D + +# Change the size of panes with +bind-key h resize-pane -L 5 +bind-key j resize-pane -D 5 +bind-key k resize-pane -U 5 +bind-key l resize-pane -R 5 + +# Create new panes with +bind-key v split-window -h +bind-key s split-window -v + +# Switch between windows with alt+n/N +bind -n M-N previous-window +bind -n M-n next-window + +# Alternatively use shift + arrow keys to switch windows +bind -n S-Left previous-window +bind -n S-Right next-window + +# Remove the delay when using the escape key +set -sg escape-time 0 + +# Easily reload this config file +bind r source-file ~/.tmux.conf + +# Update the status line every 60 seconds +set -g status-interval 60 + +# Increase the maximum length of the left part of the status line +set -g status-left-length 30 + +# Set the text for the left and right of the status line +#set -g status-left '#[fg=blue](#S) #(whoami)#[default]' +#set -g status-right '#[fg=blue]%H:%M#[default]' +set -g status-left '' +set -g status-right '' + +# Center the window list +set -g status-justify centre + +# Use a "transparent" background for the status line +set -g status-bg black + +# Use the regular text color for the status line +set -g status-fg white + +# Use a "transparent" background for the current window +set -g window-status-current-bg black + +# Highlight the current window yellow and make it bold +set -g window-status-current-fg yellow +set -g window-status-current-attr bold + +# Re-number windows once one has been closed +set -g renumber-windows on + +# Set the activity color to blue with a "transparent" background +set-window-option -g window-status-activity-bg black +set-window-option -g window-status-activity-fg blue +set-window-option -g window-status-activity-attr none + +# Add support for neovim cursor changing (insert mode, etc.) +set -g -a terminal-overrides ',*:Ss=\E[%p1%d q:Se=\E[2 q'