こちらは以下の続きとなります。tmuxの用語・インストール方法については以下の記事を参照ください。
この記事ではtmuxの設定ファイルでprefixの設定を行ったのち、よく使うコマンドについて紹介していきたいと思います。
この記事では、例えばコマンドの「prefix + w
」の「+
」記号は同時押しではなく、続けて入力を指します。一方、「Ctrl-b
」などの「-
」記号は同時入力を意味しますので、ご注意ください。
0. prefixキーについて
tmuxは基本的に「prefixキー
を押した後に(+) なにかのキー
」という形で操作を行います。
デフォルトでのprefixキーは「Ctrl-b
」に設定されていますが、Ctrl-bはターミナル上では左カーソル移動のショートカットとして使うため、変更されている方が多いです。あと打ちづらいですし。
私は「Ctrl-g
」に設定していますが、ほかにも「Ctrl-t
」「Ctrl-c
」などお好きなキーで大丈夫です。
この設定にあたりtmuxのコマンドとは少しそれますが、ターミナルでのカーソル移動としてすでに以下のショートカットがありますので、これを被らないように設定をするといいと思います。
コマンド | 意味 |
---|---|
Crtl - a |
コマンドライン先頭に移動 |
Crtl - e |
コマンドライン末尾に移動 |
Crtl - f |
→(右移動) |
Crtl - b |
←(左移動) |
Crtl - p |
↑(上移動:コマンド履歴の表示) |
Crtl - n |
↓(下移動:コマンド履歴の表示) |
これらはemacsのキーバインドと一緒ですね。
上移動・下移動はtmuxのウィンドウ切り替え画面でもよく使います。
1. 設定ファイル .tmux.conf
prefixの変更をはじめとしたtmuxの設定は、ホームディレクトリ直下の~/.tmux.conf
に記述します。インストールしただけでは作成されませんので、別途用意しておきましょう。
本記事では設定ファイルはできるだけいじらない方針でいきます。そのため設定ファイルの中身はこれだけです。
# prefixキーをC-bからC-gに変更
unbind C-b
set -g prefix C-g
bind C-g send-prefix
# コピーモードでのキー操作をviモードへ設定
set-window-option -g mode-keys vi
設定内容は2つだけです。prefixキーの変更とコピーモードのキー操作についてのみです。(コピーモードについては後述します。)
はじめはこれだけで十分だと思います。設定するプラグインによっては挙動が少し変わったり、干渉しあったりすることもあるため、私自身は最終的にこの設定だけに落ち着きました。
ほかにどのような設定があるかは以下の他の方の記事を参照してみてください。徐々にオレオレ設定にしていきましょう。
2. 知っておくべきコマンド
タイトル通り、これだけ知っておけば大丈夫という最低限のコマンドを並べます。
セッション関連
-
tmux
:- 新しいtmuxセッションを作成、開始します。
-
tmux ls
:- 現在作成されているセッションの一覧を表示します。複数のセッションを管理している場合に便利。
-
tmux a -t セッション番号
:- 特定のセッションに再接続します。tmux ls コマンドで取得したセッション番号を指定して使用します。
-
prefix + d
:- 現在のセッションをデタッチ(切り離し)します。セッションを終了せずにバックグラウンドに回すことができます。
-
exit
orCrtl - d
:- セッションを終了します。
-
tmux kill-server
:- セッションをすべて終了させます。
.tmuc.conf
の設定を反映する際、tmuxを一括で終了させるときなどにも使えます。
- セッションをすべて終了させます。
上記のコマンドはtmux外(画面下に緑帯がない状態)で入力するものを含みます。
下のような結果が出たら、いったんprefix + d
でデタッチするかexit
でtmuxセッションを終了してから入力してください。
$ tmux
sessions should be nested with care, unset $TMUX to force
ウィンドウ・ペイン関連
ペインを破棄するコマンドは別途あるのですが、exit
で問題ないため紹介しません。
-
prefix + %
: -
prefix + "
: -
prefix + o
:- 次のペインに移動します。複数のペインを使用している場合は絶対に使います。
-
prefix + c
:- ウィンドウを新規に作成します。
-
prefix + w
:
コピーモード
コピーモードとは、ターミナル内でテキストを選択してコピーする機能です。右上に黄色の表示がされていることが目印です。
設定ファイルで設定したことにより、コピーモード中はviのキー操作にて画面内を自由にカーソルを移動させることができます。
マウスカーソルを使ってのコピペでも大丈夫な場合も多いですが、画面分割をしているとうまく選択できないことも多いため、覚えておくと有用です。
↑左のペインがコピーモードになっている
また、tmuxは通常モードだとマウスホイールが使えないのに対し、コピーモードではカーソルをホイールで操作できるため、過去のコマンド結果を遡って閲覧したい場合にも使っています。
(もちろんマウスホイールが使えるようになるプラグインもありますが、ほかの機能と競合す可能性があります。ご注意ください。)
-
prefix + [
:- コピーモードに移行します。
-
コピーモード中に
space
: -
コピーモードで範囲を選択中に
enter
:- 選択した範囲をコピーします。ペーストするには上記の
prefix + ]
です。
- 選択した範囲をコピーします。ペーストするには上記の
-
コピーモード中に
q
:- コピーモードを終了します。
-
prefix + ]
:- コピーモードでコピーした内容をペーストします。
+α
追加でつかえるとより便利なコマンドです。余裕が出てきたらぜひ覚えたいコマンドです。
-
prefix - 矢印キー
:- ウィンドウ内のペインのサイズを調整します。prefixを押しながら、というところに注意してください。
(Teratermではこのコマンドがうまく動作しない場合があります。)
- ウィンドウ内のペインのサイズを調整します。prefixを押しながら、というところに注意してください。
-
prefix + 矢印キー
:- 矢印キーの方向のペインに移動します。
prefix + o
では一方通行にしか移動できないため、こちらも使えるようになるとペインの移動が楽になります。
- 矢印キーの方向のペインに移動します。
-
prefix + z
:- 現在のペインを拡大します。特定のペインを一時的に全画面表示する際に使用します。もう一度コマンドを入力すると元に戻ります。拡大中は画面左端に「*Z」と表示されるので参考にしてみてください。
-
prefix + ,
:- ウィンドウの名前(画面左下に書かれている文字)を変更します。ウィンドウが増えてきたときは名前を付けて管理しましょう。
3. さいごに
以上がtmuxを使う上で最低限知っておくべきコマンドです。
prefixキーを変更したように、上記のコマンドを任意のキーに設定し直すことも可能です。ウィンドウの分割とか覚えにくいですから。
ですが、まずはどんなことがtmuxでできるか、また自分はどの操作をよく使うかをまずは理解してから、徐々にオレオレ設定にしていきましょう。
この記事がtmuxを始める上で少しでも参考になれば幸いです。
ここまでお読みいただきありがとうございました。