Windows
CentOS
tmux

tmuxが快適、かつ .tmux.conf の設定

More than 3 years have passed since last update.

いまさらtmuxを使ってみた

なんて読むの?

tmux(ティーマックス/ティームックス)って読むらしい。tmux(Terminal MUltipleXer)の頭文字から構成られている仮想端末ソフト。

tmux なんなの?

デザイナーのための tmux 超入門

基本的なコマンド

tmux基本のコマンドを参照。コマンドは沢山あるけど順に覚えれば平気。個人的には、ウインドウ作成、ウインドウ一覧、だけ覚えればなんとかなる。

インストール

CentOS の yum で tumx をインストールするとバージョン1.6と少し古いですが、ソースからコンパイルする手間(libevent 2.0系も入れないとだめ)を考えるとこのバージョンでよいかな?(最新のtmuxをインストールしたい場合は、ここを参照)

$ sudo yum install tmux

.tmux.conf

達人らの .tmux.conf を参考にするとキーバインドを変更(perfix, 他のコマンド)しているがドノーマールの環境で使えなくなるのであえてキーバインドは変更しない。

# 設定ファイルをリロードする
bind r source-file ~/.tmux.conf \; display "Reloaded!"

# utf8を有効にする
set-window-option -g utf8 on

# peneの開始番号
set-option -g base-index 1

# ウィンドウ履歴の最大行数
set-option -g history-limit 5000

# コピーモードのキーバインドをvi風にする
set-window-option -g mode-keys vi
bind-key -t vi-copy v begin-selection

# ウィンドウのインデックスを1から始める
set -g base-index 1

# ペインの移動をvi風にする
bind h select-pane -L
bind j select-pane -D
bind k select-pane -U
bind l select-pane -R

# ペインのリサイズをvi風にする
bind -r C-h resize-pane -L 10
bind -r C-l resize-pane -R 10
bind -r C-j resize-pane -D 10
bind -r C-k resize-pane -U 10

#
# キーバインド(コピーモード)
#
bind Space copy-mode
bind p paste-buffer

# vでマーク開始
bind -t vi-copy v begin-selection

# Vで行の先頭からマーク開始
bind -t vi-copy V select-line

# C-vで矩形選択の切り替え
bind -t vi-copy C-v rectangle-toggle

# yでヤンク
bind -t vi-copy y copy-selection

# Yで1行ヤンク
bind -t vi-copy Y copy-line

#
# マウス設定
#

# 画面ドラッグ時にコピーモードにする
set-option -g mode-mouse on

# マウスでペインを選択できるようにする
set-option -g mouse-select-pane on

# マウスでウィンドウを切り替えられるようにする
set-option -g mouse-select-window on

# マウスでリサイズできるようにする
set-option -g mouse-resize-pane on

#
# 外観
#
set-option -g default-terminal screen-256color

# ステータスバーの色を設定する
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
# アクティブなウィンドウを目立たせる
setw -g window-status-current-fg white
setw -g window-status-current-bg red
setw -g window-status-current-attr bright

# ペインボーダーの色を設定する
set -g pane-border-fg green
set -g pane-border-bg black
# アクティブなペインを目立たせる
set -g pane-active-border-fg white
set -g pane-active-border-bg yellow

# コマンドラインの色を設定する
set -g message-fg white
set -g message-bg black
set -g message-attr bright

#
# その他
#

# 下記の設定をしておいたほうがEscの効きがいいらしい
set -s escape-time 0

ターミナルソフトの設定

お気に入りで使っている rlogin では、ローカルのクリップボードへの反映(OSC52)を使うことができるのでを有効にする。
[表示]-[オプション設定]-[クリップボード]にある“OSC 52 によりクリップボードの書き込みを許可する”のチェックを入れます。
tmux01.png

rlogin の不具合?

どうしても不明な点が2つ
・ウインドウを上下ペインへ分割した場合に、ペイン分割のラインが2重になる。
・コピーモードで88行?しかコピーできない。

参考サイト

達人に学ぶ.tmux.confの基本設定
tmuxのインストールと設定
tmuxで快適なターミナル生活を送ろう
リモートの tmux でコピーした内容のローカルのクリップボードへの反映
http://d.hatena.ne.jp/yk5656/20140306/1394585110