93 lines
2.9 KiB
Bash
93 lines
2.9 KiB
Bash
# prefix
|
|
unbind C-b
|
|
set -g prefix C-Space
|
|
|
|
# send prefix to nested session after ctrl a
|
|
bind-key -n C-a send-prefix
|
|
|
|
# default shell
|
|
set-option -g default-shell /bin/zsh
|
|
|
|
#for copying to sys clipboard
|
|
bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
|
|
bind -T copy-mode-vi MouseDragEnd1Pane send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
|
|
bind -T copy-mode-vi C-j send-keys -X copy-pipe-and-cancel "xclip -i -f -selection primary | xclip -i -selection clipboard"
|
|
|
|
bind | split-window -h
|
|
bind - split-window -v
|
|
unbind '"'
|
|
unbind %
|
|
|
|
bind -n M-Left select-pane -L
|
|
bind -n M-Right select-pane -R
|
|
bind -n M-Up select-pane -U
|
|
bind -n M-Down select-pane -D
|
|
|
|
set -g mouse on
|
|
|
|
set-window-option -g mode-keys vi
|
|
|
|
set -g default-terminal "xterm-256color"
|
|
set -ga terminal-overrides ",xterm-256color:Tc"
|
|
|
|
# List of plugins
|
|
set -g @plugin 'tmux-plugins/tpm'
|
|
set -g @plugin 'tmux-plugins/tmux-sensible'
|
|
|
|
set -g @plugin 'tmux-plugins/tmux-yank'
|
|
set -g @plugin 'tmux-plugins/tmux-copycat'
|
|
set -g @plugin 'tmux-plugins/tmux-open'
|
|
|
|
set -g default-terminal "screen-256color"
|
|
bind-key -n Home send Escape "OH"
|
|
bind-key -n End send Escape "OF"
|
|
|
|
# Vim style pane selection
|
|
bind h select-pane -L
|
|
bind j select-pane -D
|
|
bind k select-pane -U
|
|
bind l select-pane -R
|
|
|
|
# Start windows and panes at 1, not 0
|
|
set -g base-index 1
|
|
set -g pane-base-index 1
|
|
set-window-option -g pane-base-index 1
|
|
set-option -g renumber-windows on
|
|
|
|
# Use Alt-arrow keys without prefix key to switch panes
|
|
bind -n M-Left select-pane -L
|
|
bind -n M-Right select-pane -R
|
|
bind -n M-Up select-pane -U
|
|
bind -n M-Down select-pane -D
|
|
|
|
# Shift arrow to switch windows
|
|
bind -n S-Left previous-window
|
|
bind -n S-Right next-window
|
|
|
|
# Shift Alt vim keys to switch windows
|
|
bind -n M-H previous-window
|
|
bind -n M-L next-window
|
|
|
|
# Dracula theme
|
|
# available plugins: battery, cpu-usage, git, gpu-usage, ram-usage, tmux-ram-usage, network, network-bandwidth, network-ping, ssh-session, attached-clients, network-vpn, weather, time, mpc, spotify-tui, playerctl, kubernetes-context, synchronize-panes
|
|
set -g @plugin 'dracula/tmux'
|
|
set -g @dracula-show-powerline true
|
|
set -g @dracula-plugins "git network network-vpn platerctl time battery"
|
|
# it can accept `hostname` (full hostname), `session`, `shortname` (short name), `smiley`, `window`, or any character.
|
|
set -g @dracula-show-left-icon session
|
|
set -g @dracula-show-empty-plugins false
|
|
set -g @dracula-battery-label "🔋"
|
|
set -g @dracula-show-timezone false
|
|
set -g @dracula-military-time true
|
|
set -g @dracula-day-month true
|
|
set -g @dracula-show-fahrenheit false
|
|
set -g @dracula-playerctl-format "► {{ artist }} - {{ title }}"
|
|
# for left
|
|
set -g @dracula-show-left-sep \uE0C0
|
|
|
|
# for right symbol (can set any symbol you like as separator)
|
|
set -g @dracula-show-right-sep \uE0B2
|
|
|
|
# Initialize TMUX plugin manager (keep this line at the very bottom of tmux.conf)
|
|
run -b '~/.tmux/plugins/tpm/tpm'
|