.tmux.conf (3474B)
1 unbind C-b 2 set -g prefix C-space 3 4 set -g default-terminal 'tmux-256color' # replace this with your custom term-info name 5 set -ga terminal-overrides ',*:Tc' # this is for 256 color 6 set -ga terminal-overrides '*:Ss=\E[%p1%d q:Se=\E[ q' # this is for the cursor shape 7 set -as terminal-overrides ',xterm*:sitm=\E[3m' # this is for italics https://thekennethlove.com/2017/10/my-quest-for-italic-comments-in-vim/ 8 9 bind -T copy-mode-vi Enter send-keys -X copy-pipe-and-cancel "pbcopy" 10 11 set-option -sg escape-time 10 12 13 set -g focus-events on 14 15 set-option -g renumber-windows on 16 17 # reload config file (change file location to your the tmux.conf you want to use) 18 bind r source-file ~/.tmux.conf 19 20 # split panes using v and s 21 # while change command to choose tree to a 22 # also set default command for new session to use same pwd 23 unbind '"' 24 unbind % 25 unbind s 26 unbind c 27 bind v split-window -hc '#{pane_current_path}' 28 bind s split-window -vc '#{pane_current_path}' 29 bind c new-window -c '#{pane_current_path}' 30 bind a choose-tree -Zs 31 32 # swap window with ctrl+shift+left/right 33 bind-key M-Left { swap-window -t -1; previous-window } 34 bind-key M-Right { swap-window -t +1; next-window } 35 bind-key _ { swap-window -t -1; previous-window } 36 bind-key + { swap-window -t +1; next-window } 37 38 set -g mouse on 39 40 # switch panes using Alt-arrow without prefix 41 # bind -n ˙ select-pane -L 42 # bind -n ¬ select-pane -R 43 # bind -n ˚ select-pane -U 44 # bind -n ∆ select-pane -D 45 unbind l 46 bind h select-pane -L 47 bind l select-pane -R 48 bind k select-pane -U 49 bind j select-pane -D 50 51 # [J]oin or [S]eparate current pane 52 # bind -n M-J command-prompt -p "send pane to:" "join-pane -t '%%'" 53 # bind -n M-S break-pane 54 bind J command-prompt -p "send pane to:" "join-pane -t '%%'" 55 bind S break-pane 56 57 # reposition current active pane to be of 58 # [H]orizontal or [V]ertical position relative to other pane 59 bind V move-pane -t '.-' 60 bind H move-pane -h -t '.-' 61 62 # bind -n Ó resize-pane -L 63 # bind -n Ò resize-pane -R 64 # bind -n resize-pane -U 65 # bind -n Ô resize-pane -D 66 bind C-h resize-pane -L 67 bind C-l resize-pane -R 68 bind C-k resize-pane -U 69 bind C-j resize-pane -D 70 71 # modes 72 setw -g clock-mode-colour colour5 73 setw -g mode-style 'fg=colour1 bg=colour18 bold' 74 75 # panes 76 set -g pane-border-style 'fg=colour22 bg=colour0' 77 set -g pane-active-border-style 'bg=colour0 fg=colour46' 78 79 # statusbar 80 set -g base-index 1 81 setw -g pane-base-index 1 82 set-option -g status-interval 1 83 84 set -g status-position bottom 85 set -g status-justify left 86 # set -g status-style 'bg=colour236 fg=colour255 dim' 87 set -g status-style 'bg=#32302f fg=#282828 dim' 88 set -g status-left '' 89 # set -g status-right '#[fg=colour247,bg=colour239] %d/%m/%y #[fg=colour233,bg=colour245] %H:%M:%S ' 90 # set -g status-right '#[fg=colour250 bg=colour238] #{pane_current_path} ' 91 set -g status-right '#[bg=#5a524c] #[bg=colour236] #(sh ~/.config/pane-border-format.sh --pane-current-path=#{pane_current_path} --pane-active=#{pane_active}) #[fg=#282828 bg=#a89984 bold] :D ' 92 set -g status-right-length 150 93 set -g status-left-length 20 94 95 setw -g window-status-current-style 'fg=colour40 bg=#5a5254 bold' 96 setw -g window-status-current-format ' #I#[fg=#d1bc99]:#[fg=#d1bc99]#W#[fg=#d6c19c]#F ' 97 98 setw -g window-status-style 'fg=colour28 bg=#32302f' 99 setw -g window-status-format ' #I#[fg=#d4be98]:#[fg=#d4be98]#W#[fg=#cab591]#F ' 100 101 set-option -g bell-action other 102 setw -g window-status-bell-style 'fg=colour255 bg=colour1 bold' 103 104 # messages 105 set -g message-style 'fg=colour226 bg=colour235 bold'