forked from x/ContextOS
91 lines
2.4 KiB
Bash
91 lines
2.4 KiB
Bash
# 配置管理
|
|
set -g prefix C-s
|
|
|
|
set -g base-index 1
|
|
set -g display-panes-time 5000
|
|
set -g display-time 5000
|
|
setw -g pane-base-index 1
|
|
|
|
set -g mode-keys vi
|
|
set -g history-limit 50000
|
|
|
|
bind Space command-prompt
|
|
|
|
# 窗口管理
|
|
bind w choose-window
|
|
bind q confirm-before kill-window
|
|
|
|
bind c new-window
|
|
|
|
bind o last-window
|
|
bind n next-window
|
|
bind p previous-window
|
|
|
|
bind m command-prompt -p "move window from:,to:" "swap-window -s %% -t %%"
|
|
|
|
bind 1 select-window -t :1
|
|
bind 2 select-window -t :2
|
|
bind 3 select-window -t :3
|
|
bind 4 select-window -t :4
|
|
bind 5 select-window -t :5
|
|
bind 6 select-window -t :6
|
|
|
|
# 面板管理
|
|
bind i display-panes
|
|
bind x confirm-before -p "kill-pane #P? (y/n)" kill-pane
|
|
|
|
bind u split-window
|
|
bind v split-window -h
|
|
|
|
bind C-o last-pane
|
|
bind h select-pane -L
|
|
bind l select-pane -R
|
|
bind j select-pane -D
|
|
bind k select-pane -U
|
|
|
|
bind C-h command-prompt -p "size:" "resize-pane -L %%"
|
|
bind C-l command-prompt -p "size:" "resize-pane -R %%"
|
|
bind C-j command-prompt -p "size:" "resize-pane -D %%"
|
|
bind C-k command-prompt -p "size:" "resize-pane -U %%"
|
|
bind C-m command-prompt -p "move pane from:,to:" "swap-pane -s %% -t %%"
|
|
|
|
# 缓存管理
|
|
bind C-s copy-mode
|
|
bind C-d clear-history
|
|
|
|
bind a choose-buffer
|
|
bind z paste-buffer
|
|
|
|
|
|
# tmux 1.x
|
|
if-shell "[ `tmux -V |cut -d' ' -f2|cut -d'.' -f1` -lt '2' ]" "\
|
|
bind -t vi-copy e scroll-down; \
|
|
bind -t vi-copy y scroll-up; \
|
|
bind -t vi-copy d halfpage-down; \
|
|
bind -t vi-copy u halfpage-up; \
|
|
bind -t vi-copy f page-down; \
|
|
bind -t vi-copy b page-up; \
|
|
bind -t vi-copy v begin-selection; \
|
|
bind -t vi-copy c copy-selection; \
|
|
bind -t vi-edit C-n history-down; \
|
|
bind -t vi-edit C-p history-up; \
|
|
bind -t vi-copy Space page-down; \
|
|
set -g mouse-select-window on; \
|
|
set -g mouse-select-pane on; \
|
|
set -g mouse-resize-pane on; \
|
|
"
|
|
|
|
# tmux 2.x
|
|
if-shell "[ `tmux -V |cut -d' ' -f2|cut -d'.' -f1` -gt '1' ]" "\
|
|
bind -T copy-mode-vi y send-keys -X scroll-down; \
|
|
bind -T copy-mode-vi e send-keys -X scroll-up; \
|
|
bind -T copy-mode-vi d send-keys -X halfpage-down; \
|
|
bind -T copy-mode-vi u send-keys -X halfpage-up; \
|
|
bind -T copy-mode-vi f send-keys -X page-down; \
|
|
bind -T copy-mode-vi b send-keys -X page-up; \
|
|
bind -T copy-mode-vi v send-keys -X begin-selection; \
|
|
bind -T copy-mode-vi c send-keys -X copy-selection; \
|
|
set -g mouse on; \
|
|
"
|
|
|