tmuxはそのままでも便利ですが、少しカスタマイズしてあげることで格段に使い勝手が良くなります。
私がtmuxでおすすめしたいカスタマイズは、セッション名の自動化です。
セッション名を自動で付けてあげることによって、セッション一覧での視認性が良くなり、セッションを用いた複数ワークスペースの作業効率が格段にアップします。
このエントリでは、tmuxセッション名を自動でカレントディレクトリ名にして attach or new する自作スクリプトを紹介します。
今回作成したのはtmux-attach-or-new-session.sh
という、名前の通りtmuxセッションがあればattach
、なければnew
するだけのシンプルなスクリプトです。
下記はデモですが、わかりづらいので何をしているか説明します。
- HOMEディレクトリでセッション開始 (
t
) - すでに同名のセッションがあったため自動でattach
-
Ctrl+d
でdetach -
dotfiles
ディレクトリに移動してセッション開始 (t
) - すでに同名のセッションがあったため自動でattach
セッション名は.
を_
に置き換えたカレントディレクトリ名になっています。*1
使い方は簡単で、tmux-attach-or-new-session.sh
を~/.zsh/
以下に配置して~/.zshrc
に下記を追加するだけです。エイリアスはお好みで変更してください。
- dotfiles/tmux-attach-or-new-session.sh at master · otoyo/dotfiles · GitHub
- dotfiles/.zshrc at cd8944bae19bdf0cf81077fb0f7e193a6a14f28f · otoyo/dotfiles · GitHub
追記したらsource ~/.zshrc
もお忘れなく。
[ -f ~/.zsh/tmux-attach-or-new-session.sh ] && \
source ~/.zsh/tmux-attach-or-new-session.sh && \
alias t='tmux-attach-or-new-session'
また、.tmux.conf
でセッションとウィンドウを一覧できるchoose-tree
をいずれかのキーにバインドしておくと捗ります(デモで使っているのもこれです)。
例えば<prefix>+s
にバインドするには下記を.tmux.conf
に追加します。
bind s choose-tree
あとはお好きなディレクトリに移動してエイリアスしたコマンド(サンプルではt
)を打つだけで、自動でディレクトリ名のセッションを開始します。
以上です。このエントリでは、tmuxセッション名を自動でカレントディレクトリ名にして attach or new する自作スクリプトを紹介しました。
それでは快適なtmux生活を!
- 1:tmuxセッション名には .(ドット) が使えないため
コメントを送る
コメントはブログオーナーのみ閲覧できます