流行りモノの好きな俺はscreenをやめてtmuxへ移行することにしました。
とは言うものの、もうだいぶ前からある仮想端末ソフトみたいですが、、^^;
色んなブログを参考にしましたが、結局インストールして使ってみて、screenとtmuxとで大きな差がある感じはしません。
何よりも重宝されるdetach&attachが両方備わってる訳ですし。
tmuxだけで言うと
・コピペのバッファを複数利用できる
・画面分割がしやすい(paneという。縦横関わらず)
・動作が軽い(メモリ消費も少ないらしい)
・旬なやつ
というメリットがあります。
ではインストール、設定めもめもです。
※僕の端末はMac OSX(lion)ですので、Mac用のインストールメモも含まれてます。
まずMacな人はXcodeをインストールします。
http://developer.apple.com/xcode/
を参考に、インストール方法については省略します。
次にMacPortsをインストールします。これはMacなエンジニアにとっては結構便利なツールです。
http://www.macports.org/index.php
から自分の環境に合ったパッケージファイルをDLし、そのdmgファイルを実行して下さい。
僕はMacPorts-2-1.0.3-10.7-Lion.dmgを落としました。
あとはインストーラに従うだけです。
インストールが完了したら、ターミナルで環境設定を編集します。
僕はzshを使っているので
$ vim ~/.zshrc -------------------------- export PATH=/opt/local/bin:/opt/local/sbin:$PATH export MATHPATH=/opt/local/man:$MANPATHとします。bashの人も同じですね。
設定を読み込みます。
$ source ~/.zshrc次に設定ができたか確認します。
$ port version Version: 2.0.3OKです。
まずは使う前に更新を確認します。
$ sudo port selfupdate勝手に更新してくれます。
では早速tmuxをインストールしましょう!
$ sudo port install tmuxこれで勝手にインストールしてくれます。yumみたいなもんですね。
インストールが終わったら
$ tmuxと打つだけで仮想端末が立ち上がり、まるでscreenのように!!
screenと同じく
$ exitで終了します。
$ tmux list-sessionでセッション一覧が見れます。平たくdetach、attachされた端末のことです。セッション番号:ウィンドウ数や起動日時が表示されます。
セッション番号を参考にし
$ tmux attach -t セッション番号でアタッチできます。
tmuxはデフォルトでCtrl-bがプレフィックスになっているので、何かコマンドを打つ場合はまずCtrl-bを打つことが基本です。※もちろん設定で変えられますが、僕は基本に忠実にやってます!
tmuxを起動してからは、screenと同様にウインドウ分割(pane)やコピーモードへ移行、windowの生成など色々できます。
Ctrl-b ? ショートカット一覧 Ctrl-b d デタッチ Ctrl-b w ウィンドウ一覧 Ctrl-b c ウィンドウ生成 Ctrl-b n 次のウィンドウへ Ctrl-b p 前のウィンドウへ Ctrl-b : コマンドモードへ Ctrl-b [ コピーモード開始 Ctrl-b Ctrl-Space コピーモードでのコピー開始 Ctrl-b ESC-w コピーモードでのコピー終了 Ctrl-b ] コピーデータの貼付け Ctrl-b q ペインのインジケータ(番号?)を表示 Ctrl-b t 時計表示(いらんw) Ctrl-b % ウインドウを左右ペインへ分割 Ctrl-b " ウインドウを上下ペインへ分割 Ctrl-b o アクティブなペインの移動(次のペインへ移動) Ctrl-b x ペインの破棄 Ctrl-b Space ペインレイアウトの変更(左右、上下) Ctrl-b : resize-pane -U 数字 上部ペインのサイズ変更 Ctrl-b : resize-pane -D 数字 下部ペインのサイズ変更 Ctrl-b : resize-pane -L 数字 左ペインのサイズ変更 Ctrl-b : resize-pane -R 数字 右ペインのサイズ変更メインで使うコマンドはこのくらいでしょうか。
あとは~/.tmux.confを編集して使いやすくします。
$ vim ~/.tmux.conf -------------------------------- # コピーモードのキーバインドをviのように # Spaceでコピー開始、Enterでコピー終了になります set-window-option -g mode-keys vi # 縦分割、横分割をviのキーバインドのように bind s split-window -v bind v split-window -h # 分割画面への移動をviのキーバインドのように bind h select-pane -L bind j select-pane -D bind k select-pane -U bind l select-pane -R僕はこんな感じにしました。
tmuxを使ってみる-なんでもつくるとか参考になります。
さぁ、これで快適なtmuxライフを送れますね!
以上でぇぇえぇす。