〖Linux〗tmux 配置文件

tmux中默認的shell是zsh,zsh在平常中使用能夠協助咱們高效地使用shell命令。shell

配置文件默認位置 ~/.tmux.conf,此外,把經常使用快捷鍵也附錄在這裏,方便記憶windows

# 設置Shell
set-option -g default-shell /bin/zsh

# 設置複製模式,空格開始選,Enter結束複製
setw -g mode-keys vi 

#開啓status-bar uft-8支持
set -g status-utf8 on

# 設定窗口起始
set -g base-index 1

# history
set-option -g history-limit 4096

#urxvt tab like window switching (-n: no prior escape seq)
#ruxvt標籤式窗口切換
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

# 切換panes
bind-key C-l last-pane

# 設置鼠標能夠操做|滾動設置
#   --> 使用shift鍵+鼠標鍵選擇文件,Ctrl+Shift+C複製,Ctrl+Shift+V粘貼
# set -g mode-mouse on
# set -g mode-mouse off  # --> let cygwin mouse can be used.
# disable mouse control by default - change 'off' to 'on' to enable by default.
setw -g mode-mouse off
set-option -g mouse-resize-pane off
set-option -g mouse-select-pane off
set-option -g mouse-select-window off
# toggle mouse mode to allow mouse copy/paste
# set mouse on with prefix m
bind m \
    set -g mode-mouse on \;\
    set -g mouse-resize-pane on \;\
    set -g mouse-select-pane on \;\
    set -g mouse-select-window on \;\
    display 'Mouse: ON'
# set mouse off with prefix M
bind M \
    set -g mode-mouse off \;\
    set -g mouse-resize-pane off \;\
    set -g mouse-select-pane off \;\
    set -g mouse-select-window off \;\
    display 'Mouse: OFF'

# 設置窗口可自動調整index
set -g renumber-windows on

# 複製和粘貼模式的快捷鍵
bind y copy-mode
bind c-y copy-mode
bind p paste-buffer
bind c-p paste-buffer

# Toggle log to file
bind H pipe-pane -o 'cat >>$HOME/#W-tmux.log' '\;' display-message 'Toggled logging to $HOME/#W-tmux.log'

bind h pipe-pane \; display-message 'Ended logging to $HOME/#W-tmux.log'

# 設置窗口名字不能修改
set-option -g allow-rename off

# 設置啓動窗口時默認名字
# bind-key c new-window -n 'zsh'

# 設置r鍵爲加載配置文件,並提示信息
bind r source-file ~/.tmux.conf \; display "配置文件已從新加載!" 

# other
setw -g xterm-keys on

#------------------------------------------------------------------------------#
#  *** 基本終終端操做 ***
#  tmux new -s "session_name"       // 建立一個seesion
#  tmux new -s "session_name" -d    // 建立一個seesion, 並在後臺運行
#  tmux ls                          // 列出tmux會話列表
#  tmux attach -t session           // 進入指定的會話(可終端共享)
#  tmux kill-session -t "session"   // 刪除指定會話
#
#  ** 容易混淆 **
#  bind-key ;   // switch to last pane
#  bind-key l   // switch to last window
#  bind-key L   // switch to last session
#  bind-key C-l // switch to last pane(like: bind-key ;)
#
#  *** 控制檯-操做說明 ***
#  Ctrl+b  // 激活控制檯
#  ** 系統操做   
#      ?   // 列出全部快捷鍵;按q返回   
#      d   // 脫離當前會話;
#      D   // 選擇要脫離的會話;在同時開啓了多個會話時使用   
#      Ctrl+z  // 掛起當前會話   
#      r   // 強制重繪未脫離的會話   
#      s   // 選擇並切換會話;在同時開啓了多個會話時使用   
#      :   // 進入命令行模式;
#               :new-session         // 建立新會話
#      [   // 進入複製模式;此時的操做與vi/emacs相同,按q/Esc退出   
#      ]   // 進入粘貼模式;
#      ~   // 列出提示信息緩存;其中包含了以前tmux返回的各類提示信息   
#
#  ** 會話操做
#      (   preview session
#      )   next session
#      L   last session
#      s   list session
#      $   rename seesion
#
#  ** 窗口操做
#      c   // 建立新窗口   
#      &   // 關閉當前窗口   
#      [0-9] // 切換至指定窗口   
#      p   // 切換至上一窗口   
#      n   // 切換至下一窗口   
#      l   // 在先後兩個窗口間互相切換   
#      w   // 經過窗口列表切換窗口   
#      ,   // 重命名當前窗口;這樣便於識別   
#      .   // 修改當前窗口編號;至關於窗口從新排序   
#      f   // 在全部窗口中查找指定文本   
#      i   // 顯示tmux當前信息
#
#  ** 面板操做   
#      」   // 將當前面板平分爲上下兩塊|橫向切割 --> 分割成面板
#      %   // 將當前面板平分爲左右兩塊|豎向切割 --> 分割成面板
#      x   // 關閉當前面板   
#      ;   // 切換到最後的pane
#      !   // 將當前面板置於新窗口;即新建一個窗口,其中僅包含當前面板   
#      Ctrl+方向鍵  // 以1個單元格爲單位移動邊緣以調整當前面板大小   
#      Alt+方向鍵   // 以5個單元格爲單位移動邊緣以調整當前面板大小   
#      Space        // 在預置的面板佈局中循環切換;依次包括:
#                       even-horizontal、
#                       even-vertical、
#                       main-horizontal、
#                       main-vertical、
#                       tiled   
#      q   // 顯示面板編號   
#      o   // 在當前窗口中選擇下一面板   
#      {   // 向前置換當前面板   
#      }   // 向後置換當前面板   
#      方向鍵   // 移動光標以選擇面板   
#      Alt+o    // 逆時針旋轉當前窗口的面板   
#      Ctrl+o   // 順時針旋轉當前窗口的面板   


#  *** 參考配置 ***
#
#  ** 配置1 **
#  #設置pan前景色  
#  set -g pane-border-fg green  
#  #設置pane背景色  
#  set -g pane-border-bg black 
#  #設置終端顏色爲256色
#  set -g default-terminal "screen-256color"
#  #開啓status-bar uft-8支持
#  set -g status-utf8 on
#  #設置pan前景色
#  set -g pane-border-fg green
#  #設置pane背景色
#  set -g pane-border-bg black
#  #設置活躍pane前景色
#  set -g pane-active-border-fg white
#  #設置活躍pane背景色
#  set -g pane-active-border-bg yellow
#  #設置消息前景色
#  set -g message-fg white
#  #設置消息背景色
#  set -g message-bg black
#  #設置消息高亮顯示
#  set -g message-attr bright
#  #設置status-bar顏色
#  set -g status-fg white
#  set -g status-bg black
#  #設置窗口列表顏色
#  setw -g window-status-fg cyan
#  setw -g window-status-bg default
#  setw -g window-status-attr dim
#  #設置當前窗口在status bar中的顏色
#  setw -g window-status-current-fg white
#  setw -g window-status-current-bg red
#  setw -g window-status-current-attr bright
#  #設置status bar格式
#  set -g status-left-length 40
#  set -g status-left "#[fg=green]Session: #S #[fg=yellow]#I #[fg=cyan]#P"
#  set -g status-right "#[fg=cyan]%d %b %R"
#  set -g status-interval 60
#  set -g status-justify centre
#  #開啓window事件提示
#  setw -g monitor-activity on
#  set -g visual-activity on
#
#  ** 配置2 **
#  # 同一個窗口中的面板操做
#  # up
#  bind-key k select-pane -U 
#  #down
#  bind-key j select-pane -D
#  #left
#  bind-key h select-pane -L
#  #right
#  bind-key l select-pane -R
#  #select last window
#  bind-key C-l select-window -l
#------------------------------------------------------------------------------#
相關文章
相關標籤/搜索