52 lines
1.7 KiB
Bash
52 lines
1.7 KiB
Bash
set -g default-terminal "tmux-256color"
|
|
set -ag terminal-overrides ",$TERM:RGB"
|
|
set -sg escape-time 0
|
|
|
|
#binds
|
|
bind-key 'x' kill-pane
|
|
bind-key 'h' previous-window
|
|
bind-key 'j' switch-client -p
|
|
bind-key 'k' switch-client -n
|
|
bind-key 'l' next-window
|
|
bind-key 'n' new-window
|
|
bind-key 'c' kill-window
|
|
# Smart pane switching with awareness of Vim splits.
|
|
# See: https://github.com/christoomey/vim-tmux-navigator
|
|
|
|
# decide whether we're in a Vim process
|
|
is_vim="ps -o state= -o comm= -t '#{pane_tty}' \
|
|
| grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
|
|
|
|
unbind y
|
|
bind-key 'y' if-shell "$is_vim" 'send-keys F5' 'select-pane -L'
|
|
unbind u
|
|
bind-key 'u' if-shell "$is_vim" 'send-keys F6' 'select-pane -D'
|
|
unbind i
|
|
bind-key 'i' if-shell "$is_vim" 'send-keys F7' 'select-pane -U'
|
|
unbind o
|
|
bind-key 'o' if-shell "$is_vim" 'send-keys F8' 'select-pane -R'
|
|
|
|
tmux_version='$(tmux -V | sed -En "s/^tmux ([0-9]+(.[0-9]+)?).*/\1/p")'
|
|
|
|
bind-key -T copy-mode-vi 'y' select-pane -L
|
|
bind-key -T copy-mode-vi 'u' select-pane -D
|
|
bind-key -T copy-mode-vi 'i' select-pane -U
|
|
bind-key -T copy-mode-vi 'o' select-pane -R
|
|
|
|
# List of plugins
|
|
set -g @plugin 'tmux-plugins/tpm'
|
|
set -g @plugin 'tmux-plugins/tmux-sensible'
|
|
set -g @plugin 'catppuccin/tmux'
|
|
set -g @catppuccin_flavour 'frappe'
|
|
set -g @catppuccin_window_tabs_enabled on
|
|
|
|
#THIS IS GOD MOD FOR TMUX
|
|
set -g @plugin 'tmux-plugins/tmux-resurrect'
|
|
set -g @resurrect-strategy-nvim 'session'
|
|
set -g @resurrect-capture-pane-contents 'on'
|
|
set -g @plugin 'tmux-plugins/tmux-continuum'
|
|
set -g @continuum-restore 'on'
|
|
set -g @continuum-save-interval '10'
|
|
set -g @continuum-boot 'on'
|
|
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
|
run '~/.tmux/plugins/tpm/tpm'
|