目次
はじめに
vim好きなので、
基本的にターミナルで、
生活しているのですが、
ターミナルやvimの設定などを調べている時に、
それらを使いこなしている人はみんな
tmuxというソフトウェアを
おすすめしていることに気が付きました。
今回はこのtmuxのインストール方法や利点、
コマンド一覧などをまとめておきたいと思います。
インストール方法
各OSにおけるインストール方法です。
Macへのインストール
Homebrewでインストールできます。
$ brew install tmux
また、このままだとmacのターミナルで
vimでヤンクが出来ないという問題があるので、
それを直すソフトをbrewでインストールします。
$ brew install reattach-to-user-namespace
あとはtmux.confで設定が必要ですが、
そちらは後述の説明を参照下さい。
tmuxの使うべき理由
下記がtmuxの便利な点です。
1 一本のssh接続で複数のターミナルが使える
リモートサーバにログインして、
様々なツールを使いながら作業したい時に、
それぞれsshで繋がるのは面倒ですが、
tmuxを使うと、一つのssh接続で複数のシェルを立ち上げて、
作業することができます。
2 ssh中にネットワークが切断されても、強制終了しなくていい
ssh中にネットワークが切断されることがあり、
そんな時は普通はターミナルがクラッシュしてしまうだけですが.
tmuxを使っている場合、
ネットワーク復旧後に再度接続(アタッチ)すると、
ログイン後の状態は保持されていますし、
ログも残ってるので便利ですね。
3. tmuxの状態が保存される。
セッション(一連の画面分割とかsshの接続先)とかが、
アプリ終了後も保存されるため、
次の日などに再度作業を開始したい時に、
スムーズに作業に戻れます。
4. 別のコンピューターからでも、同じセッションが使える
別のPCからtmuxを使ってたサーバにsshすれば、
そのセッションがそのまま使えます。
5. 他の人にセッションに同時に入ってもらって、作業を見せたりできる
教育目的でも使えるようです。
tmuxのコマンド一覧
セッションを作る
$ tmux new -s ProjectA
ちなみに後ろに-dを付けると、
セッションを作ったあと、すぐdetachします。
既存のセッションに繋がる
$ tmux a -t ProjectA
既存のセッションのリストを表示する
$ tmux ls
セッションの削除
$ tmux kill-session -t ProjectB
セッションの全削除
$ tmux kill-server
セッションのdetach
Ctrl + b then d
セッションの名前の変更
Ctrl + b then $
時計モード
Ctrl + b then t
ESCで元に戻ります。
Windowの作成
Ctrl+b c
Windowの切り替え
Ctrl+b (番号)
次のWindowへ
Ctrl+b n
前のWindowへ
Ctrl+b p
Windowのrename
Ctrl+b ,
Windowの一覧表示
Crtl+b w
Windowの検索
Ctrl+b f
Windowの終了(削除)
Ctrl+b &
Pane作成(水平分割)
Ctrl+b "
Pane作成(垂直分割)
Ctrl+b %
Paneの切り替え
Ctrl+b o
Ctrl+b 矢印キー
Paneの番号表示・切り替え
Ctrl+b q
Paneの入れ替え
Ctrl+b {
Ctrl+b }
Paneの解除
Ctrl+b x
PaneのWindow化
Ctrl+b !
tmux設定ファイル .tmux.conf
自分のtmuxの設定ファイルは下記の通りです。
いくつかのMacでの問題への対処や、
prefixの変更、paneのサイズ変更などを設定しています。
# tmux configuration # # author Atsushi Sakai # fix vim yank problem on Mac set-option -g default-command "reattach-to-user-namespace -l bash" # fix scroll problem on Mac set -g mouse on set -g terminal-overrides 'xterm*:smcup@:rmcup@' # change prefix to ctrl - t set -g prefix C-t unbind C-b bind C-t send-prefix # bind r to load .tmux.conf bind r source-file ~/.tmux.conf \; display "Configuration Reloaded!" # h,j,k,l window resize bind -r h resize-pane -L 1 bind -r j resize-pane -D 1 bind -r k resize-pane -U 1 bind -r l resize-pane -R 1
参考資料
http://dotinstall.com/lessons/basic_tmux
MyEnigma Supporters
もしこの記事が参考になり、
ブログをサポートしたいと思われた方は、
こちらからよろしくお願いします。