dotfiles/.tmux.conf

81 lines
2.6 KiB
Bash

set -g prefix ^o
set -g base-index 1
set -g display-panes-time 3000
set -s escape-time 10
set -g status on
set -g status-interval 30
setw -g alternate-screen on
setw -g aggressive-resize on
setw -g automatic-rename off
setw -g mode-keys vi
set-option -g mouse on
# clipboard
set -g set-clipboard on
bind-key ] paste-buffer -p
set -g update-environment "XAUTHORITY DISPLAY WINDOWID SSH_ASKPASS SSH_AGENT_PID SSH_CONNECTION"
set -g default-command zsh
set -g history-limit 50000
set -g default-terminal "xterm-kitty"
set -ga terminal-overrides ",*:Tc" # true colous support
set -as terminal-overrides ',*:sitm=\E[3m' # Italics support for older ncurses
set -as terminal-overrides ',*:smxx=\E[9m' # Strikeout
set -as terminal-overrides ',*:Smulx=\E[4::%p1%dm' # undercurl support
set -as terminal-overrides ',*:Setulc=\E[58::2::%p1%{65536}%/%d::%p1%{256}%/%{255}%&%d::%p1%{255}%&%d%;m' # under
# Key bindings
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
# bind -n M-Tab last-pane
bind -n M-1 select-window -t 1
bind -n M-2 select-window -t 2
bind -n M-3 select-window -t 3
bind -n M-4 select-window -t 4
bind -n M-5 select-window -t 5
bind -n M-6 select-window -t 6
bind -n M-7 select-window -t 7
bind -n M-8 select-window -t 8
bind -n M-9 select-window -t 9
bind -n M-0 select-window -t 10
bind -n M-m send-keys -t 9 q C-u "clear; tmux clear-history -t 9" C-m C-p C-p C-p C-m
bind -n M-` last-window
bind C-o last-window
bind r source-file ~/.tmux.conf
bind -n C-Right next-window
bind -n C-Left previous-window
bind C-s set-option -g status
bind K confirm kill-server
bind C-k clear-history
bind -n C-l send-keys C-l \; clear-history
bind-key -T copy-mode-vi WheelUpPane select-pane \; send-keys -X -N 1 scroll-up
bind-key -T copy-mode-vi WheelDownPane select-pane \; send-keys -X -N 1 scroll-down
setw -g window-status-format ""
setw -g window-status-current-format ""
setw -g window-status-separator ""
set -g status-style "bg=#3e3e3e,fg=#c0c0c0"
set -g status-left-length 0
set -g status-right-length 0
set -g status-left '#{?#{==:#W,1},  #T,#[bg=#263238,fg=#707070] #W#[fg=#212121]▕#[bg=#3e3e3e,fg=#a0a0a0] #{=|145|…:pane_current_path}}'
set -g status-right '#{?#{==:#W,1},,#[fg=#f7f7f7]#{@starship}#[fg=#212121]▕#[fg=#f7f7f7]#(~/go/bin/gitmux -cfg ~/.config/gitmux/gitmux.yaml "#{pane_current_path}")}#[bg=#263238,fg=#707070] #(date +%%H:%%M) '
set -g set-titles on
set -g set-titles-string "#H - #T"
new -s 0 -n 1
new-window -n 2
new-window -n 3
new-window -n 4
new-window -n 5
new-window -n 6
new-window -n 7
new-window -n 8
new-window -n 9
new-window -n 0
# vim:set ft=tmux: