# 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 # Easily choose panes to move between windows bind-key @ choose-window 'join-pane -h -s "%%"' # 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 # Easily move the current window to the left/right bind-key -n C-Left swap-window -t -1 bind-key -n C-Right swap-window -t +1 # 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'