nix-config/.tmux.conf
Donovan Glover 3a524479a3
Use tmux for all termite windows
Since tmux is such a useful program, and since we don't need to worry
about images in termite, it makes sense to start all termite windows
with tmux. This lets us use any and all termite sessions in urxvt as
needed.
2018-10-17 01:56:25 -04:00

101 lines
2.7 KiB
Plaintext

# New Start: A modern Arch workflow built with an emphasis on functionality.
# Copyright (C) 2018 Donovan Glover
# Use the best shell
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 <C-b><h/j/k/l>
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 <C-b><v/s>
bind-key v split-window -h
bind-key s split-window -v
# Switch between windows with shift + arrow keys
bind -n S-Left previous-window
bind -n S-Right next-window
# Show and hide the status bar with shift + up
bind -n S-Up set status
# 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 ''
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 default
# 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 default
# 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 default
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'