dotfiles/tmux.conf

135 lines
3.4 KiB
Plaintext

## Options
# Set Prefix to Ctrl+a (screen like)
unbind C-b
set -g prefix C-a
bind C-a send-prefix
## Default is 'screen'
set -sg default-terminal 'screen-16color'
set -sg escape-time 1
set -sg set-clipboard on
set -g history-limit 100000
setw -g alternate-screen on
set -g renumber-windows on
set -g base-index 1
setw -g pane-base-index 1
set -g status on
set -g status-position bottom
set -g status-justify left
set -g status-interval 1
set -g status-left-length 20
set -g status-right-length 30
set -g status-right ' ⡇ #h ⣿'
#set -g status-right '#(eval ~/bin/tmux-airline `tmux display -p "#{client_width}"`)'
set -g status-left '⣿ '
set -g set-titles on
set -g set-titles-string '#T'
setw -g allow-rename off
setw -g automatic-rename on
setw -g automatic-rename-format '#T'
setw -g window-status-format '⡇[#I]#{=120:window_name} ⡇'
setw -g window-status-current-format ' *#{=120:window_name}* '
set-window-option -g window-status-current-attr bold
#setw -g window-status-format '/ #I:#P #{=120:window_name} |#F \'
#setw -g window-status-current-format '/ #I:#P #{=120:window_name} |#F \'
setw -g window-status-separator ''
set -g bell-action current
set -g bell-on-alert off
setw -g monitor-activity on
set -g visual-activity off
set -g visual-bell off
set -g mouse on
#set -g status-keys vi
#setw -g mode-keys vi
#setw -g xterm-keys on
## Mouse Keybindings
# Faster Scrolling
bind -t vi-copy WheelUpPane page-up
bind -t vi-copy WheelDownPane page-down
bind -t emacs-copy WheelUpPane page-up
bind -t emacs-copy WheelDownPane page-down
## Keyboard keybindings
bind -n 'S-Down' resize-pane -D 1
bind -n 'S-Up' resize-pane -U 1
bind -n 'S-Left' resize-pane -L 1
bind -n 'S-Right' resize-pane -R 1
# copypaste
bind-key -n -t emacs-copy C-x copy-pipe "xclip -i -sel p -f | xclip -i -sel c "
bind-key -n C-y run "xclip -o | tmux load-buffer - ; tmux paste-buffer"
# Splitscreen mit Alt+Arrow wechseln
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 'c' new-window
bind 'n' next
bind 'p' prev
bind 'b' swap-window -t -1
#urxvt tab like window switching (-n: no prior escape seq)
bind -n S-down new-window
bind -n S-left prev
bind -n S-right next
bind -n C-left swap-window -t -1
bind -n C-right swap-window -t +1
## Splitting panes
bind 'v' split-window -v
bind 'h' split-window -h
## Mouse toggling
bind m \
set -g mouse on \;\
display 'Mouse: ON'
bind k \
set -g mouse off \;\
display 'Mouse: OFF'
#### COLOUR (Solarized dark)
# default statusbar colors
set-option -g status-bg black #base02
set-option -g status-fg yellow
set-option -g status-attr default
# default window title colors
set-window-option -g window-status-fg white
set-window-option -g window-status-bg default
#set-window-option -g window-status-attr dim
# active window title colors
set-window-option -g window-status-current-fg white
set-window-option -g window-status-current-bg '#00AA0E'
#set-window-option -g window-status-current-attr bright
# pane border
set-option -g pane-border-fg green #base02
set-option -g pane-active-border-fg brightgreen #base01
# message text
set-option -g message-bg black #base02
set-option -g message-fg brightred #orange
# pane number display
set-option -g display-panes-active-colour green #blue
set-option -g display-panes-colour brightred #orange
# clock
set-window-option -g clock-mode-colour green #green
# bell
set-window-option -g window-status-bell-style fg=black,bg=red #base02, red