tmuxの使い方メモ

tmuxを使えると便利だということで調べてみた

先月のターミナルマルチプレクサ Advent Calendar 2011に参加させて頂き「screenでマルチディスプレイモードを利用する」という記事を書かせて頂きました。
私はscreenを少し触っていただけなのでscreenのネタを書いたのですが、みなさんは結構tmuxを利用されている方が多い様です。
私の現在のアルバイト先のCAXさんでも聞くと結構tmuxを利用している人が多かったです。(中にはscreenを利用されている方も多いですけどね)
screenも極めればかなり便利なのですが、tmuxは標準でいろいろな機能が付いていたりして便利です。
私は中でも縦分割をするという機能は便利だと思います。
最近のディスプレイは16:9と横長さんなので横分割しても縦に表示しても見たい部分がパッと見では消えてしまったりして不便だな〜って思っていました。
しかし縦分割なら横が狭いですが、24インチディスプレイなどで作業する場合はかなり広く利用できるので重宝すると思います。

今回はtmuxを利用するのにコマンドなど覚えていないのでメモ置き場として記事を書こうと思います。
(自分のブログって自分が使うことが多いので便利ですよねw)
参考にした記事はそれぞれ注釈を付けていこうと思います。

画面分割(ペイン分割)*1

  • 横分割

tmuxを実行した後に<">で横分割になります

  • 縦分割

tmuxを実行した後に<%>で縦分割になります。

  • 縦分割+横分割縦分割

tmuxを実行したのち<%>で縦に割り、右側のウィンドウで<">で横に分割して、右下のウィンドウで<%>で縦に分割したらこうなります

ペインを割ったはいいがやっぱり配置が嫌だという時はで配置を変更できます。お気に入りの配置になるまで実行して変えます。*2

3つに分割した場合は次の5つのパターンが選べます。


分割した画面の移動

画面を分割しても作業はひとつのペインで行うので他のペインに移動したい時はコマンドを実行して移動します。

  • ペインの移動*3

ペインの移動は<↑→↓←>で移動できます。十字キーを使えば直感的に移動も可能です。

  • マウスでペインの移動を可能にする*4

私のようなぺーぺーなエンジニアは他に覚えることがたくさんあってこうゆう細かいキーとか忘れやすいのでマウスで移動できると便利だったりします。
tmux初心者は時にマウスで移動できると助かるかもです。

tmuxでペインを複数分割した後に

$ tmux set-option mouse-select-pane on

を実行することでマウスでペイン間の移動ができるようになります。マウスだと目に見えて位置を選べるので選択ミスが起きづらくなります。
CUIユーザからすればマウスなんてダメだよって言われてしまいそうですが・・・

また

$ tmux set-option mode-mouse on
を実行することでマウスホイールで上下に画面をスクロールすることができます。

必ずマウスを利用してペイン選択やスクロールを行いたい場合はtmux.confに設定を書いておきましょう。
私は下記3行を追加しています

set -g mode-mouse on
set -g mouse-resize-pane on
set -g mouse-select-pane on

2行目の mouse-resize-paneというのはペインで分けた画面のサイズをマウスで変更することができるようになります。
ペインの分割は半分ずつなので好みでサイズ変更をマウスで行えます。
※ペインサイズ変更は結構負荷が高いので気をつけてください・・・


ペインで分割したものに同じコマンドを送る方法*5

tmuxを起動してペイン分割をした後に

$ tmux set-window-option synchronize-panes on

を実行します。これだけで分割したペインが連動されます。

運用中のサーバでpuppetが使えないとかそうゆう状況でもこれで複数台一気に設定ができるので便利ですね。
間違ってもapacheの再起動とかしちゃダメですよ・・・複数台のapacheが一気に落ちたら・・・ね?w


ちなみにputtyの背景になっているのは「アイドルレボリューション」の咲き乱れる悪の華2の報酬の[インテリタレント]ひかりちゃんです。
最終進化バージョンです。かわいいですよねw