Help us understand the problem. What is going on with this article?

tmuxの操作を選択的UIでインタラクティブにする

More than 1 year has passed since last update.

今回作ったのは、tmuximumというシェルのコマンドです。

ZIFU3.gif

使い方

tmuximumは、tmuxのコマンドによる一連の面倒な操作を簡略化するために作られました。

例えばtmuxのセッションにアタッチするのに、普通は

$ tmux list-sessions
2: 1 windows (created Thu Jul 14 22:55:13 2016) [123x48]
4: 1 windows (created Thu Jul 14 23:19:11 2016) [80x24]
5: 1 windows (created Thu Jul 14 23:19:32 2016) [80x24]
$ tmux a -t 4

と、セッションのリストを表示させてそこから目当てのセッションを選びアタッチするような作業をしなければいけませんが、tmuximumなら

$  tmuximum

ZIFU3.gif

と、コマンド一発で選択的インターフェイス(この場合はfzf)を使い目的のセッションにアタッチできます。

具体的に機能を説明していきます。
このコマンドは、tmuxの内外で挙動が変わります。

tmux外

tmuxの外にいるときにtmuximumでできることは

  • 既存のセッションにアタッチ
  • 新しいセッションを作る
  • 既存のセッションを終了する

です。
このうち上二つは先ほどのgifでわかると思いますが、セッションの終了はこんな感じです↓

ZIFU4.gif

上のgifでは既存のセッションを二つ終了しています。
全部上下十字キーとEnterのみでできるので非常にストレスなく操作できます。

tmux内

tmuxの中にいるときにtmuximumでできることは

  • ウィンドウの移動
  • セッションの終了
  • ウィンドウの終了

です。

tmuximum_4.gif

使用例

まず、tmuximumってコマンドが長くて打ちにくいので(tmuxの2倍も打たなきゃいけない) ~/.zshrcとかに

.zshrc
alias t="tmuximum"

ってしとくといいと思います。頻繁に使うので一文字で。

一番オススメなのは、シェルの起動時に自動でtmuximumを実行させることです。
今までもシェルの起動時に「セッションがなかったらtmux new-session、あったらtmux attach」みたいな設定を書いてた人は多いと思うんですけど、tmuximumを使うことによってより快適になります。

.zshrc
if [ -z $TMUX ]; then
  tmuximum
fi

インストール

2018/4/5追記
antigenでは

antigen bundle arks22/tmuximum

ソースからインストールする場合は

$ curl -L raw.github.com/arks22/tmuximum/master/install.bash | bash 

とかでなんとかしてパスを通すなどしてください。

---以上追記---

zplugを使っている方は、

~/.zshrc
zplug "arks22/tmuximum", as:command

としてくれれば動きます、zplug最高

そういえば、fzfがないと動きません。すいません、いつかpecoとかにも対応します

fzf,fzf-tmux,peco,percol,gofに対応しました。(2018/4/5追記)

zshでしか動作確認していないので、bashとかfishだとどうなるかわかりません。不具合があったらここのコメントでもいいので報告してください。すぐ直すと思います。

arks22
REAL THUG LIFE💀 (20歳)
https://arks22.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした