dotfiles/.tmux.conf

108 lines
4.7 KiB
Text
Raw Normal View History

2024-06-11 10:12:11 -07:00
# A lot of this depends on a nerd-font being installed:
# https://github.com/ryanoasis/nerd-fonts
set -g default-terminal "screen-256color"
set -g status-interval 5
set-option -g history-limit 10000
# force truecolor
set-option -ga terminal-overrides ",xterm-256color:Tc"
bind-key e setw synchronize-panes on
bind-key E setw synchronize-panes off
bind-key C-b last-window
bind-key b send-prefix
bind-key c new-window -c "#{pane_current_path}"
bind-key C-c new-window -c "#{pane_current_path}"
bind-key C new-window
# lots of this was snagged from https://github.com/midnightcodr/my_tmux_conf/blob/master/.tmux.conf
bind | split-window -h -c "#{pane_current_path}"
bind _ split-window -v -c "#{pane_current_path}"
bind C-j split-window -f -v -l 10 -c "#{pane_current_path}"
bind C-l split-window -f -h -l 30 -c "#{pane_current_path}"
#bind -r ^ resize-pane -U 5
#bind -r < resize-pane -L 1
#bind -r > resize-pane -R 1
#bind -r + resize-pane -U 1
#bind -r - resize-pane -D 1
bind-key -r -T prefix + resize-pane -U 1
bind-key -r -T prefix - resize-pane -D 1
bind-key -r -T prefix < resize-pane -L 1
bind-key -r -T prefix > resize-pane -R 1
bind-key -r -T prefix ^ resize-pane -U 1
bind-key Up select-pane -U
bind-key Down select-pane -D
bind-key Left select-pane -L
bind-key Right select-pane -R
bind-key M-Up resize-pane -U 10
bind-key M-Down resize-pane -D 10
bind-key M-Left resize-pane -L 10
bind-key M-Right resize-pane -R 10
#bind-key -r -T prefix C-Up resize-pane -U
#bind-key -r -T prefix C-Down resize-pane -D
#bind-key -r -T prefix C-Left resize-pane -L
#bind-key -r -T prefix C-Right resize-pane -R
# Set status bar
set-option -g status-bg "#112233"
set -g status-fg "#009900"
2024-06-11 10:29:05 -07:00
set -g status-left '#[bg=colour31,fg=colour255] #h #[fg=colour31,bg=#112233] '
2024-06-11 10:12:11 -07:00
2024-06-11 10:29:05 -07:00
# disabling pomodoro for now
#set -g status-right '#[fg=#2a2a2a] #[fg=colour205,bg=#2a2a2a] #(printf "%%-3s" `test -e ~/bin/pomodoro && pomodoro status -c`) #[fg=#223388] #[fg=colour140,bg=#223388] #(test -e ~/bin/tmux-diskmon && tmux-diskmon)#[fg=#334499] #[fg=colour140,bg=#334499] #(uptime | sed -e "s/.*: //" -e "s/,//g" -e "s/ 0\./ ./g" -e "s/^0//" -e "s/\\.00/0/g") #[fg=#4455aa]#[fg=colour15,bg=#4455aa] %m/%d %H:%M '
set -g status-right '#[fg=#2a2a2a] #[fg=colour205,bg=#2a2a2a] #[fg=#223388] #[fg=colour140,bg=#223388] #(test -e ~/bin/tmux-diskmon && tmux-diskmon)#[fg=#334499] #[fg=colour140,bg=#334499] #(uptime | sed -e "s/.*: //" -e "s/,//g" -e "s/ 0\./ ./g" -e "s/^0//" -e "s/\\.00/0/g") #[fg=#4455aa]#[fg=colour15,bg=#4455aa] %m/%d %H:%M '
2024-06-11 10:12:11 -07:00
set -g status-right-length 60
set -g status-left-length 40
2024-06-11 10:29:05 -07:00
if-shell "uname | grep -q Darwin" "set -g status-left '#[bg=#77ddaa,fg=colour0]  #h #[fg=#77ddaa,bg=#112233] '"
if-shell "uname | grep -q Linux" "set -g status-left '#[bg=colour31,fg=colour255]  #h #[fg=colour31,bg=#112233] '"
if-shell "lsb_release -si | grep -q Ubuntu" "set -g status-left '#[bg=#5e2750,fg=colour255]  #h #[fg=#5e2750,bg=#112233] '"
if-shell "lsb_release -si | grep -q Raspbian" "set -g status-left '#[bg=#ff0066,fg=colour255]  #h #[fg=#ff0066,bg=#112233] '"
if-shell "hostname | grep -q lechuck" "set -g status-left '#[bg=#996633,fg=colour255]󰚌#h #[fg=#996633,bg=#112233] '"
if-shell "hostname | grep -q meathook" "set -g status-left '#[bg=#1111ff,fg=colour255]👻 #h #[fg=#1111ff,bg=#112233] '"
2024-06-11 10:12:11 -07:00
## 24 bit stuff
#set -g default-terminal "xterm-256color"
#set -ga terminal-overrides ",xterm-256color:Tc"
# Highlight active window
2024-06-11 10:29:05 -07:00
set-window-option -g window-status-current-format "#[bg=#000011,fg=#112233] #[bg=#000011,fg=#bbffbb]#I:#W #[bg=#112233,fg=#000011]"
2024-06-12 08:57:02 -07:00
set-window-option -g window-status-format " #I:#W "
set-window-option -g window-status-separator "" # UGH this doesn't work -- tmux falls back to " "
2024-06-11 10:12:11 -07:00
# Inactive windows get low-contrast; active window sharper
2024-06-12 08:57:02 -07:00
#set -g window-style 'fg=colour246,bg=#152030'
set -g window-style 'fg=colour246,bg=#252731'
#set -g window-active-style 'fg=colour255,bg=black'
set -g window-active-style 'fg=colour255,bg=#1e2030'
2024-06-11 10:12:11 -07:00
# Automatically set window title
set-option -g set-titles on
setw -g automatic-rename off
set-option -g set-titles-string "#h: #W"
set-option -g allow-rename off
setw -g monitor-activity off
set -g visual-activity on
# vi key bindings
setw -g mode-keys vi
# moving panes around - http://unix.stackexchange.com/questions/14300/moving-tmux-window-to-pane
bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'"
bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'"