tmux の概要
tmux は、無料でオープンソースのターミナルマルチプレクサです。1 つのターミナルの中で複数のプログラムを、ウインドウや横に並んだペインに分けて動かし、キーボードで切り替えられます。いちばん便利なのはセッションです。セッションからデタッチしても中身はすべて動き続け、ターミナルを閉じたり SSH 接続が切れたりしても大丈夫です。あとでアタッチし直せば、中断したところから続けられます。tmux は Nicholas Marriott とコントリビュータが開発し、ISC ライセンスで公開されています。
Mac では Homebrew(brew install tmux)か MacPorts で tmux をインストールし、ターミナルで tmux と入力して起動します。コマンドはプレフィックスキー(初期設定は Control-B)から始まり、ほとんどの設定は ~/.tmux.conf で変更できます。tmux 3.8 では、ほかのペインの上に浮かぶフローティングペインが加わりました。
主な機能
tmux は、1 つのターミナルウインドウを作業スペース全体に変えます。
- セッション:プログラムをバックグラウンドで動かし続け、あとで(SSH 経由でも)アタッチし直せます。
- ウインドウとペイン:画面を縦横に、必要なだけペインに分割できます。
- フローティングペイン:ほかのペインの上に浮かぶペイン。tmux 3.8 の新機能です。
- キーボード操作:プレフィックスキーでペインの移動、サイズ変更、切り替えができます。
- コピーモード:キーボードでスクロールバック、検索、テキストのコピーができます。
- ステータスライン:ウインドウ、時刻などを表示する、カスタマイズ可能なバー。
- 設定:キー割り当て、色、動作を ~/.tmux.conf で変更できます。
- スクリプト対応:スクリプトやほかのツールからコマンドで tmux を操作できます。
バージョン 3.8 の新機能
tmux 3.8 では、フローティングペインとテーマが加わりました。
- フローティングペインを大幅に改善(移動、サイズ変更、マウスでのドラッグなど)
- 閉じるまでほかのペインを操作できなくするモーダルペインを追加
- フローティングペインも含む JSON 形式のレイアウト文字列
- コマンドが失敗したあと、キーを押すまでペインを開いたままにする新しい remain-on-exit の設定
- テーマへの対応と、初期設定の配色の改善
tmux のよくある質問
tmux は無料ですか?
はい。tmux は無料のオープンソースソフトで、ISC ライセンスで公開されています。
Mac に tmux をインストールするには?
Homebrew ならターミナルで brew install tmux を実行するか、MacPorts でインストールします。その後 tmux と入力して起動します。
ターミナルマルチプレクサとは何ですか?
1 つのウインドウの中で複数のターミナルセッションを、ウインドウやペインに分けて動かし、接続を切ってもバックグラウンドで動かし続けるプログラムです。
tmux のプレフィックスキーとは何ですか?
tmux のほとんどのコマンドは、プレフィックスキー(初期設定は Control-B)から始まります。たとえば Control-B のあとに % で左右に分割、Control-B のあとに " で上下に分割します。
tmux のセッションからデタッチして、アタッチし直すには?
Control-B のあとに D を押すとデタッチし、中身はすべて動き続けます。tmux attach でアタッチし直し、tmux ls でセッションの一覧を表示します。
SSH で tmux を使う理由は?
接続が切れても、サーバ上の tmux セッションで動いているプログラムは止まりません。再接続してアタッチし直せば、中断したところから続けられます。
tmux の設定ファイルはどこにありますか?
tmux は ~/.tmux.conf を読み込みます。そこでプレフィックスキー、キー割り当て、色、ステータスラインなどを変更できます。
tmux で過去の出力にスクロールするには?
Control-B のあとに [ を押してコピーモードに入ります。キーボードでスクロール、検索、コピーができ、q で終了します。
tmux 3.8 の新機能は?
tmux 3.8 ではフローティングペインが大幅に改善され、モーダルペイン、JSON 形式のレイアウト、テーマ、より良い初期設定の配色が追加されました。
tmux.FULLMAC.app の tmux のダウンロードはどこから提供されていますか?
ダウンロードボタンは、ソースコード、リリース、インストール情報がある tmux の公式 GitHub ページ https://github.com/tmux/tmux につながっています。tmux.FULLMAC.app が tmux を改変したり再パッケージしたりすることはありません。
似ているアプリ
VigilVigil は、コーディングエージェントをチームとして動かすための、無料でオープンソースの Mac ネイティブターミナルです。複数のエージェントのウィンドウ間で自分でメッセージをコピーする代わりに、ルートのマネージャーエージェントにタスクを渡すと、マネージャーが自分のワーカーエージェントやサブマネージャーを起動します。詳細はツリーを下へ流れ、結果は要約としてマネージャーへ戻るので、マネージャーのコンテキストは軽く保たれます。ライブのノードツリーでチーム全体を一度に見渡せ、各ノードはエージェント自身のターミナル画面をそのまま保つため、どのノードでも開いて直接操作を引き継げます。開発ツール
SwitchShuttleSwitchShuttle は、よく使うターミナルコマンドをワンクリックやキーボードショートカットで実行できる Mac のメニューバーアプリです。コマンドを階層化したサブメニューに整理し、それぞれにグローバルホットキーと絵文字アイコンを割り当てれば、ターミナルを開いて入力しなくても、どこからでも実行できます。iTerm、Terminal、Warp、Alacritty、Hyper などのターミナルに対応し、各コマンドは現在のウィンドウ、新しいタブ、新しいウィンドウのいずれかで実行できます。開発ツール
tty7tty7 は Rust で書かれた GPU レンダリングのターミナルで、Zed の gpui と Alacritty のターミナルコアをもとに作られています。シェルとペインを持つのはウィンドウではなくバックグラウンドのサーバーなので、アプリを終了してもシェルは tmux なしで動き続けます。再起動後は、レイアウト、画面、対応エージェントの会話が元に戻ります。開発ツール
TabbyTabby(旧称 Terminus)は、SSH、Telnet、シリアル通信のクライアントとしても使える、細かく設定できるターミナルエミュレータです。タブと分割ペインを備えたローカルのターミナル、サーバーの接続マネージャ、ルーターやマイコンなどの機器向けのシリアルターミナルを、1 つのアプリでまかなえます。SSH のパスワードや鍵は暗号化されたボルトに保管でき、SSH 経由でファイルを転送でき、テーマやプラグインで見た目や機能を変えられます。Tabby は Eugene Pankov が開発しており、Mac、Windows、Linux で動作します。開発ツール
kittykitty は、GPU でテキストを描画する高速で高機能なターミナルエミュレータです。スクロールや大量の出力もなめらかに表示されます。タブと分割ウインドウを備え、複数のレイアウトが組み込まれているほか、トゥルーカラー、合字、絵文字に対応し、ターミナルの中に直接画像を表示する独自のグラフィックスプロトコルも持っています。スクリプトやコマンドラインから操作でき、kitten と呼ばれる小さなプログラムで機能を拡張できます。設定を引き継いだ SSH、ファイルの左右比較、Unicode 文字の入力などに使えます。kitty は calibre の開発者でもある Kovid Goyal が作っています。開発ツール- ripgrepripgrep は、フォルダ内のファイルからテキストや正規表現を非常に速く検索する、無料でオープンソースのコマンドラインツールです。コマンドは rg で、rg に続けて探したい言葉を入力すると、現在のフォルダとその中のすべてを検索します。初期設定では .gitignore に書かれたファイル、隠しファイル、バイナリファイルを飛ばすので、コードのプロジェクトでは必要な結果だけが表示されます。ripgrep は Andrew Gallant が開発し、MIT ライセンスと Unlicense のデュアルライセンスで公開されています。開発ツール
FULLMAC.app はこのアプリをホストしていません。ダウンロードボタンは開発元のページにリンクしています。