# ========================================================== # tmux.conf — Configuración Moderna # ========================================================== # -- Opciones generales ------------------------------------ set -g default-terminal "tmux-256color" set -as terminal-features ",xterm-256color:RGB" set -g base-index 1 setw -g pane-base-index 1 set -g renumber-windows on set -g set-clipboard on set -g escape-time 10 set -g history-limit 10000 # -- Mouse & Vi Keys --------------------------------------- set -g mouse on set -g mode-keys vi # -- Prefix: Ctrl+a ---------------------------------------- unbind C-b set -g prefix C-a bind C-a send-prefix bind a last-window # -- Split panes (Preservando el directorio actual) -------- unbind '"' unbind % bind | split-window -h -c "#{pane_current_path}" bind - split-window -v -c "#{pane_current_path}" # -- Navegación Alt+hjkl ----------------------------------- 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 # -- Resize con Alt+Shift+hjkl ----------------------------- bind -n M-H resize-pane -L 5 bind -n M-J resize-pane -D 5 bind -n M-K resize-pane -U 5 bind -n M-L resize-pane -R 5 # -- Modo copy (vi-style) ---------------------------------- bind -T copy-mode-vi v send-keys -X begin-selection bind -T copy-mode-vi y send-keys -X copy-selection-and-cancel bind -T copy-mode-vi C-v send-keys -X rectangle-toggle # -- Display-popup: lista sesiones con fzf ----------------- bind S display-popup -E -w 90% -h 90% "tmux list-sessions | fzf --header='Sessions' | cut -d: -f1 | xargs tmux switch-client -t" # -- Display-menu ------------------------------------------ bind m display-menu -T "#[align=centre fg=#cba6f7] tmux " -x C -y S \ "  New Window" w "new-window" \ "  New Session" s "new-session" \ " ⛶ Kill Pane" x "kill-pane" \ " 󰓇 Kill Window" X "kill-window" \ " 󰈀 Reload" r "source-file ~/.config/tmux/tmux.conf" \ " 󰁚 Detach" d "detach-client" # -- Recarga de config ------------------------------------- bind r source-file ~/.config/tmux/tmux.conf \; display-message "Configuración recargada" # -- Estilo Catppuccin Mocha (manual) ---------------------- set -g status-left-length 100 set -g status-right-length 100 set -g status-style "bg=#1e1e2e" set -g message-style "bg=#45475a,fg=#cdd6f4" # Window status setw -g window-status-style "fg=#6c7086,bg=#1e1e2e" setw -g window-status-current-style "fg=#cba6f7,bg=#313244,bold" setw -g window-status-format " #I:#W " setw -g window-status-current-format " #I:#W " setw -g window-status-separator "" set -g status-left "#[fg=#181825,bg=#cba6f7,bold]  #S #[fg=#cba6f7,bg=#1e1e2e,nobold]" set -g status-right "#[fg=#a6e3a1] 󰣇 #(uname -r | cut -d. -f1,2) #[fg=#89b4fa] 󰂯 #(date +%H:%M) #[fg=#fab387]" # -- TPM (Tmux Plugin Manager) ----------------------------- # set -g @plugin 'tmux-plugins/tpm' # set -g @plugin 'tmux-plugins/tmux-sensible' # set -g @plugin 'tmux-plugins/tmux-yank' # run '~/.config/tmux/plugins/tpm/tpm'