Files
dots/.config/fish/dotfiles/tmux.conf
2026-06-19 20:14:33 +00:00

67 lines
3.3 KiB
Bash

# =============================================================================
# ~/.tmux.conf — tmux configuration
# Managed by dotfiles ( ~/.config/fish/config.fish )
# Manual changes will be overwritten when `dotfiles update` is run.
# To customise, edit this template at:
# ~/.config/fish/dotfiles/tmux.conf
# then run `dotfiles update tmux`.
# =============================================================================
# ── Base settings ────────────────────────────────────────────────────────────
set -g default-terminal "tmux-256color"
set -ga terminal-overrides ",*256col*:Tc"
set -g escape-time 0
set -g history-limit 50000
set -g mouse on
set -g focus-events on
# ── Prefix key (unbind C-b, rebind to C-a for easier reach) ─────────────────
unbind C-b
set -g prefix C-a
bind C-a send-prefix
# ── Easy reload ──────────────────────────────────────────────────────────────
bind r source-file ~/.tmux.conf \; display " tmux.conf reloaded"
# ── Splitting ────────────────────────────────────────────────────────────────
bind | split-window -h
bind - split-window -v
# ── Arrow-key pane navigation (no prefix needed) ─────────────────────────────
bind -n Left select-pane -L
bind -n Right select-pane -R
bind -n Down select-pane -D
bind -n Up select-pane -U
# ── Resize panes with Alt+arrow keys ─────────────────────────────────────────
bind -n M-Left resize-pane -L 2
bind -n M-Right resize-pane -R 2
bind -n M-Down resize-pane -D 2
bind -n M-Up resize-pane -U 2
# ── Window management ────────────────────────────────────────────────────────
bind c new-window -c "#{pane_current_path}"
bind , command-prompt -I "#W" { rename-window -- "%%" }
bind w choose-tree -w
# ── Status bar ───────────────────────────────────────────────────────────────
set -g status-interval 5
set -g status-position top
set -g status-style "bg=#1e1e2e,fg=#cdd6f4"
set -g status-left " #[fg=#89b4fa]#S #[fg=#585b70]│"
set -g status-left-length 40
set -g status-right "#[fg=#585b70]│ #[fg=#a6e3a1]%Y-%m-%d #[fg=#fab387]%H:%M "
set -g status-right-length 60
setw -g window-status-current-style "fg=#89b4fa,bold"
setw -g window-status-style "fg=#6c7086"
setw -g window-status-format " #I:#W "
setw -g window-status-current-format " #I:#W "
setw -g window-status-separator " "
# ── Notifications ────────────────────────────────────────────────────────────
set -g bell-action any
setw -g monitor-activity on
set -g visual-activity off