You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
109 lines
3.0 KiB
109 lines
3.0 KiB
## |
|
## tmux.conf -- global tmux(1) configuration |
|
## |
|
|
|
# switch prefix key to CTRL+a like screen(1) |
|
unbind-key C-b |
|
set-option -g prefix C-a |
|
bind-key a send-prefix |
|
bind-key C-a last-window |
|
|
|
# remove unnecessary key bindings |
|
unbind-key Space |
|
unbind-key "'" |
|
unbind-key '"' |
|
unbind-key '#' |
|
unbind-key '$' |
|
unbind-key '&' |
|
unbind-key ',' |
|
unbind-key '.' |
|
unbind-key '\;' |
|
unbind-key '}' |
|
unbind-key '{' |
|
unbind-key '[' |
|
unbind-key ']' |
|
unbind-key PPage |
|
unbind-key M-1 |
|
unbind-key M-2 |
|
unbind-key M-3 |
|
unbind-key M-4 |
|
unbind-key M-5 |
|
unbind-key M-n |
|
unbind-key M-o |
|
unbind-key M-p |
|
unbind-key C-Up |
|
unbind-key C-Down |
|
unbind-key C-Left |
|
unbind-key C-Right |
|
unbind-key M-Up |
|
unbind-key M-Down |
|
unbind-key M-Left |
|
unbind-key M-Right |
|
|
|
# global Alt+LEFT/RIGHT cycles through windows |
|
# global Alt+UP/DOWN cycles through panes |
|
bind-key -n M-Right select-window -n |
|
bind-key -n M-Left select-window -p |
|
bind-key -n M-Up select-pane -t:.- |
|
bind-key -n M-Down select-pane -t:.+ |
|
|
|
# configure special pane handling |
|
unbind-key % |
|
bind-key | split-window -h -c "#{pane_current_path}" |
|
bind-key - split-window -v -c "#{pane_current_path}" |
|
bind-key Left select-pane -L |
|
bind-key Right select-pane -R |
|
bind-key Up select-pane -U |
|
bind-key Down select-pane -D |
|
bind-key -r l resize-pane -L 10 |
|
bind-key -r r resize-pane -R 10 |
|
bind-key -r u resize-pane -U 10 |
|
bind-key -r d resize-pane -D 10 |
|
bind-key x kill-pane |
|
bind-key Space last-pane |
|
bind-key '#' next-layout |
|
bind-key o rotate-window |
|
set-option -g mouse on |
|
set-option -g -w pane-active-border-style fg=red |
|
set-option -g -w pane-border-style fg=default |
|
|
|
# configure special window handling |
|
bind-key c new-window -c "#{pane_current_path}" |
|
bind-key Tab choose-tree |
|
bind-key k confirm-before "kill-window" |
|
bind-key -r '<' swap-window -t -1 |
|
bind-key -r '>' swap-window -t +1 |
|
|
|
# configure pane synchronization |
|
bind-key s set-window-option -g synchronize-panes |
|
|
|
# configure better copy buffer |
|
set-option -g -w mode-keys vi |
|
bind-key v copy-mode |
|
bind-key V paste-buffer |
|
bind-key b choose-buffer |
|
|
|
# general options |
|
set-option -g history-limit 10000 |
|
set-option -g display-panes-time 2000 |
|
set-option -g display-time 4000 |
|
set-option -g base-index 1 |
|
set-option -g bell-action any |
|
set-option -g visual-activity on |
|
set-option -g focus-events on |
|
set-option -g -s escape-time 50 |
|
set-window-option -g monitor-activity on |
|
|
|
# status bar providing window and pane information |
|
set-option -g status-keys emacs |
|
set-option -g status-fg default |
|
set-option -g status-bg default |
|
set-option -g status-attr reverse |
|
set-option -g status-justify right |
|
set-option -g status-left " #(echo $LOGNAME)#{?session_attached, <#{session_name}>,} #[fg=red] #I [#{window_panes}] " |
|
set-option -g status-left-length 20 |
|
set-option -g status-right "" |
|
set-option -g status-right-length 60 |
|
set-option -g window-status-format " #I #W " |
|
set-option -g window-status-current-format "#[fg=red] #I #W " |
|
|
|
|