87 lines
2.3 KiB
Bash
87 lines
2.3 KiB
Bash
# Set default shell
|
|
set-option -g default-shell $SHELL
|
|
|
|
# Set true color
|
|
set-option -sa terminal-overrides ",xterm*:Tc"
|
|
|
|
# Set mouse mode on
|
|
set -g mouse on
|
|
|
|
# Set prefix
|
|
unbind C-b
|
|
set -g prefix C-Space
|
|
bind C-Space send-prefix
|
|
|
|
# Shift Alt vim keys to switch windows
|
|
bind -n M-H previous-window
|
|
bind -n M-L next-window
|
|
|
|
# Start window numbering at 1
|
|
set -g base-index 1
|
|
setw -g pane-base-index 1
|
|
set-window-option -g pane-base-index 1
|
|
set-option -g renumber-windows on
|
|
|
|
set -g @plugin 'tmux-plugins/tpm'
|
|
set -g @plugin 'tmux-plugins/tmux-sensible'
|
|
set -g @plugin 'christoomey/vim-tmux-navigator'
|
|
set -g @plugin 'tmux-plugins/tmux-yank'
|
|
|
|
# # Status bar
|
|
# set -g @plugin 'Axenide/TmuxAxgruv'
|
|
#
|
|
# set -g @gruvbox "ax"
|
|
#
|
|
# set -g @gruvbox_window_right_separator "█"
|
|
# set -g @gruvbox_window_left_separator "█"
|
|
# # set -g @gruvbox_window_number_position "right"
|
|
# set -g @gruvbox_window_middle_separator "█ "
|
|
#
|
|
# # set -g @gruvbox_window_default_fill "none"
|
|
#
|
|
# # set -g @gruvbox_window_current_fill "all"
|
|
#
|
|
# set -g @gruvbox_status_modules "application user session"
|
|
#
|
|
# set -g @gruvbox_status_left_separator ""
|
|
# set -g @gruvbox_status_right_separator "█"
|
|
#
|
|
# set -g @gruvbox_date_time_text "%Y-%m-%d %H:%M:%S"
|
|
|
|
# Theme: borders
|
|
set -g pane-border-lines single
|
|
set -g pane-border-style fg=brightblack
|
|
set -g pane-active-border-style fg=red
|
|
|
|
# Theme: status
|
|
set -g status-style bg=default,fg=brightblack
|
|
set -g status-left "#[fg=brightblack,bright]#(basename \"#{pane_current_path}\")"
|
|
set -g status-right "#[fg=brightblack,bright]#S"
|
|
|
|
# Theme: status (windows)
|
|
set -g window-status-format "●"
|
|
set -g window-status-current-format "●"
|
|
set -g window-status-current-style "#{?window_zoomed_flag,fg=yellow,fg=red,nobold}"
|
|
set -g window-status-bell-style "fg=red,nobold"
|
|
set -g status-justify absolute-centre
|
|
|
|
# Set vi-mode
|
|
set-window-option -g mode-keys vi
|
|
|
|
# Yazi
|
|
set -g allow-passthrough on
|
|
|
|
set -ga update-environment TERM
|
|
set -ga update-environment TERM_PROGRAM
|
|
|
|
# Keybindings
|
|
bind-key -T copy-mode-vi v send-keys -X begin-selection
|
|
bind-key -T copy-mode-vi C-v send-keys -X rectangle-toggle
|
|
bind-key -T copy-mode-vi y send-keys -X copy-selection-and-cancel
|
|
|
|
# Open panes in current directory
|
|
bind - split-window -c '#{pane_current_path}'
|
|
bind / split-window -h -c '#{pane_current_path}'
|
|
|
|
run '~/.tmux/plugins/tpm/tpm'
|