tmux conf

This commit is contained in:
Marley Rae 2024-02-03 12:36:54 -08:00
parent 8a70cddb3b
commit 7459466c8e

View file

@ -1,10 +1,61 @@
################################################################################
# Plugins #
################################################################################
set -g @plugin 'tmux-plugins/tpm'
set -g @plugin 'tmux-plugins/tmux-sensible'
set -g @plugin 'tmux-plugins/tmux-resurrect'
set -g @plugin 'catppuccin/tmux'
set -g @plugin 'Morantron/tmux-fingers'
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
################################################################################
# General #
################################################################################
# Make window index start at 1.
set -g base-index 1
# Make pane index start at 1.
setw -g pane-base-index 1
set -g default-terminal "screen-256color"
################################################################################
# Key Mappings #
################################################################################
# Remap prefix.
unbind C-b
set-option -g prefix C-a
bind C-a send-prefix
# Vi copy mode.
setw -g mode-keys vi
unbind [
bind Escape copy-mode
unbind p
bind p paste-buffer
bind -T copy-mode-vi 'v' send -X begin-selection
bind -T copy-mode-vi 'y' send -X copy-selection-and-cancel
# Better split commands.
bind | split-window -h -c "#{pane_current_path}" # cmd-| in iTerm2
bind - split-window -v -c "#{pane_current_path}" # cmd-- in iTerm2
unbind '"'
unbind %
# Vi-like resizing.
bind j resize-pane -D # cmd-j in iTerm2
bind k resize-pane -U # cmd-k in iTerm2
bind h resize-pane -L # cmd-h in iTerm2
bind l resize-pane -R # cmd-l in iTerm2
# Easy reload config.
bind r source-file ~/.tmux.conf
################################################################################
# Catppuccin #
################################################################################
# catppuccin
set -g @catppuccin_flavour 'mocha'
@ -31,35 +82,9 @@ set -g @catppuccin_status_connect_separator "no"
set -g @catppuccin_directory_text "#{pane_current_path}"
set -g @catppuccin_date_time_text "%b %d • %I:%M %p"
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
# Remap prefix.
unbind C-b
set-option -g prefix C-a
bind-key C-a send-prefix
# Vi copy mode.
set-window-option -g mode-keys vi
bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel
# Better split commands.
bind | split-window -h -c "#{pane_current_path}" # cmd-| in iTerm2
bind - split-window -v -c "#{pane_current_path}" # cmd-- in iTerm2
unbind '"'
unbind %
# Vi-like resizing.
bind-key j resize-pane -D # cmd-j in iTerm2
bind-key k resize-pane -U # cmd-k in iTerm2
bind-key h resize-pane -L # cmd-h in iTerm2
bind-key l resize-pane -R # cmd-l in iTerm2
# Easy reload config.
bind r source-file ~/.tmux.conf
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
################################################################################
# tpm #
################################################################################
# Install tpm if not already installed.
if "test ! -d ~/.tmux/plugins/tpm" \