顯示具有 tmux 標籤的文章。 顯示所有文章
顯示具有 tmux 標籤的文章。 顯示所有文章

2016年9月2日 星期五

~/.tmux.conf

# 讓<Esc>不要延遲
set -s escape-time 0

# 讓powerline在tmux下可以顯示顏色
set -g default-terminal "screen-256color"
#set -g default-terminal "xterm-256color"

# 開啟window rename功能
set-option -g allow-rename

set -g status-justify left
set -g status-interval 15 # 15 sec refresh
set -g display-time 3000
set -g status-bg colour236
set -g status-fg white
set-window-option -g window-status-current-fg black
set-window-option -g window-status-current-bg yellow
set-window-option -g window-status-current-attr default # bright
set -g status-left-length 15
set -g status-right-length 55
#set -g status-left "#[fg=white,bg=blue] > #I #W < #[default] |" # 0:bash
#set -g status-left "#[fg=white,bg=blue] > #S < #[default] |" # session-name

# 改變日期格式
#set -g status-right "#[fg=red,bright][ #[fg=cyan]#H #[fg=red]]#[default] #[fg=yellow,bright]- %Y-%m-%d #[fg=green]%H:%M #[default]#[fg=magenta,bright](load: #(cat /proc/loadavg | cut -d \" \" -f 1,2,3))#[default]"
set -g status-right "#[fg=colour255][#[default]#[fg=colour34]#H#[default]#[fg=colour255]]#[default]#[default] #[fg=colour39](#(cat /proc/loadavg | cut -d \" \" -f 1,2,3))#[default]#[fg=white] | #[default]#[fg=yellow]%Y-%m-%d #[default]#[fg=yellow, bright]%H:%M #[default]"

# 開啟window number rename功能 not work
#set-option -g renumber-windows on

# 關閉rename window功能
#set-option -g allow-rename off

# Make mouse useful in copy mode
#setw -g mode-mouse on

# Mouse support for scrolling
#set -g mouse on
#set -g mode-mouse on
#set -g mouse-resize-pane on
#set -g mouse-select-pane on
#set -g mouse-select-window on

#set-option -g mouse on

#set-option -g -q mouse on

2015年11月23日 星期一

tmux基本用法

最近認識到一個好用的terminal multiplexer,名叫tmux。
據說比GNU Screen還要強大,
我沒有用過GNU Screen,所以在選擇上面當然選一個評價好也比較新的,
也就是tmux!
首先就是把tmux安裝好:
Debian/Ubuntu:



sudo apt-get install tmux
Fedora(version 22):



sudo dnf install tmux
安裝完成後,只要在terminal下輸入tmux,就會進入tmux的環境:
tmux.png

(底下多了條綠線) tmux的透過指令操作,常用指令如下:
(大寫C表示Ctrl)
C+b c: 開新視窗
C+b n or <space>: 切換到下一個視窗
C+b P: 切換到上一個視窗
(以下為視窗分割功能)
C+b ": 水平分割視窗
C+b %: 垂直分割視窗
C+b: <page up> or <page down>: 切換分割視窗
C+b C<方向鍵上> or C<方向鍵下>: 分割視窗大小調整
C+b C+<方向鍵左> or C+<方向鍵右>: 分割視窗大小調整
C+b <space>: 重新佈置分割的視窗
C+b !: 取消所有分割視窗
C+b [: 進入copy mode,可以用滑鼠捲動
C+b ,: 更改視窗名稱
C+b .: 更改視窗編號與排序
C+b l: 移至前一個選擇的視窗
C+b {: 將目前的視窗前移
C+b }: 將目前的視窗後移
C+b ?: 顯示所有指令
C+d: 將目前的 Tmux Session 丟到背景去
exit: 跳出當前分割視窗
想知道其他指令,可以在terminal下輸入:



man tmux


其中我覺得session的儲存功能相當方便,
可以把當下的工作環境完整儲存起來,包括ssh的連線;
只要在tmux環境下輸入<Ctrl> + d,就可儲存並且離開tmux。
tmux可以儲存多個session,每儲存一個session都會給一個session id,
可以在terminal下輸入:



tmux ls
列出主機上所有的tmux session與相關資訊,
要恢復session,只要在terminal下輸入:



tmux a -t 0
a是attach的簡寫,0表示session的id。
如果要自訂化設定,設定檔放在:



~/.tmux.conf
預設沒有這個檔案,需要自己創立。
目前在tmux下使用Vim的時候,按下<ESC>會有延遲的現象,
上網找到了一個解決方法,
只要在~/.tmux.conf中設定:



set -s escape-time 0
就不會有延遲現象。
另外,碰到的問題還有在tmux下Vim的外掛powerline無法顯示顏色的問題,
在~/.tmux.conf下設定:



set -g default-terminal "screen-256color"
顏色就正常了。

而在tmux 2.1之前的版本,可以通過設定~/.tmux.conf,
不用使用C+b [就可以直接透過滑鼠捲動,可是目前(2015/10)最新的2.1版本已經拿掉這個功能。
參考資料:
Tmux 教學 + Screen 到 Tmux 的無痛轉換
tmux教學