はじめに
tmuxはすごく便利です。ですが操作やコマンドをよく忘れそうになるのでまとめておこうと思います。
セッション、ウィンドウ、ペインの説明は今回はないです。わからない人は調べてください。
とりあえずセッション>ウィンドウ>ペインの順で作るんだなという認識があれば問題ないと思います。
個人的にはセッションを複数作ることはあまりないです。
キー入力については初期設定の状態でのものを記載していますが、大体の人は設定ファイルで自分のやりやすいように設定していると思います。設定ファイルについてはいつか記事にすると思います。
セッションの作成
まずはセッションの作成です。名前を付けるかどうかでコマンドが変わっていきますが、チームで作業をしない限り特に名前をつけることはないかと思います。(少なくとも僕はつけることは少ないです。)
サーバーを間違っていないか確認するためにサーバー名をつけたりするのは良いかと思います。
# 何も考えずに新しいtmuxのセッションを開始
tmux
# my_sessionという名前をつけてtmuxのセッションを開始
tmux new-session -s my_session
セッションのデタッチ
セッションのデタッチ(削除せずにセッションから抜ける)方法については、コマンドを使用する方法と、キー入力を用いる方法があります。Ctrl + bの部分はプレフィックスキーという特殊なキーで、基本的にこれを入力してから別のキーを入力することで、一部の動作以外を実行することができます。この記事では基本的に初期値であるCtrl + bで記載しますが、通常他のアプリケーションのショートカットキーとの衝突を避けるため、Ctrl + tや Ctrl + s等が使用されることが多いかと思います。
僕はCtrl + sを使用しています。(Caps LockをCtrlキーに変更しているので近くて押しやすいのとneovimのキーバインドと被っていないため)
# コマンドでデタッチする
tmux detach-client
# キー入力でデタッチする
Ctrl + b を入力後 d
セッションの一覧の表示
セッションをデタッチしたあとに再度、再度同じセッションをアタッチする前に名前を確認する必要があります。
作成時に名前をつけていればその名前、つけていなければ0から順番につけられていきます。
# セッションの一覧表示
tmux list-session
セッションのアタッチ
セッションをデタッチしたものに再度繋ぎに行きたい場合はそのセッションをアタッチします。
# 前回終了したセッションをアタッチする
tmux attach-session
# セッションの名前を指定してアタッチする
tmux attach-session -t my_session
セッションの名前を変更する
個人的にはあまりないのですが、とりあえず何も考えずにtmuxを立ち上げて、セッション名が0のように数値になっているときに、名前をあとから変更したくなるときがあります。
# 名前を変えたいセッションをアタッチ
tmux attach-session -t my_session
# コマンドラインモードに入る
Ctrl + b を入力後 :
# 名前を変更する(my_sessionをnew_sessionに変更する)
rename-session -t my_session new_session
ウィンドウの作成
次にウィンドウを作成していきます。個人的にはウィンドウはやること別に分けることが多いです。(例えば、pythonでなにか作るウィンドウとneovimの設定を弄るウィンドウを分けたりします。)
# コマンドでウィンドウを作成
tmux new-window
# コマンドでウィンドウを作成する際にneovimという名前を付ける
tmux new-window -n neovim
# キー入力でウィンドウを作成
Ctrl + b を入力後 c
ウィンドウの移動方法
複数のウィンドウを切り替えながら作業をすると思いますが、切り替え方法は次のとおりです。
# コマンドでウィンドウの一覧を表示
tmux list-windows
# キー入力でウィンドウやペインの一覧を表示(その画面から選択して移動が可能)
Ctrl + b を入力後 w
# コマンドでウィンドウの名前を指定して切り替え
tmux select-window -t neovim
# キー入力で次のウィンドウに移動
Ctrl + b を入力後 n
# キー入力で前のウィンドウに移動
Ctrl + b を入力後 p
ウィンドウの削除
不要になったウィンドウの削除方法は次のとおりです。
# コマンドで現在のウィンドウを削除
tmux kill-window
# キー入力で現在のウィンドウを削除
Ctrl + b を入力後 &
ペインの作成
tmuxには画面を分割するペインという機能があります。個人的にはだいたい左と右に2つに分けて、左側のペインでスクリプト等を作成しながら、右側の画面で実行して動作を確認したりします。家の環境だと画面が大きいので右側の画面を更に下に分割して上のペインでは参考にするテキストファイル等を開いたりし、下のペインでスクリプトを実行したりします。
# コマンドで左右に分割
tmux split-window -h
# キー入力で左右に分割
Ctrl + b "
# コマンドで上下に分割
tmux split-window
# キー入力で上下に分割
Ctrl + b を入力してから %
ペインの移動
ペインを移動する方法は次のとおりです。
# コマンドでペインの番号を確認
tmux list-panes
# キー入力でペインの番号を確認
Ctrl + b を入力後 q
# コマンドで特定のペインの番号に移動
tmux select-pane -t 1
# キー入力で次のペインに移動
Ctrl + b を入力後 o
# キー入力で前のペインに移動
Ctrl + b を入力後 O
ペインの削除
不要になったペインの削除方法は次のとおりです。
# コマンドで現在のペインを削除
tmux kill-pane
# キー入力で現在のペインを削除
Ctrl + b を入力後 x
コメント