コンセプト
libtmux は tmux のサーバー、セッション、ウィンドウ、ペインを操作するライブラリです。まずオブジェクト階層を確認し、必要に応じて通信方式、クエリ、ワークスペースの説明を参照してください。
各ページでは、共通する概念と実装ごとの違いを説明します。
- サーバー、セッション、ウィンドウ、ペイン: tmux 自身が定義するオブジェクト階層と、その外側にある唯一の存在 (アタッチ中のクライアント)。
- コントロールモードとワンショット: プログラム内の呼び出しが実際に tmux サーバーへ届くまでの経路。コマンドごとの サブプロセス、持続的なコントロールモードのクライアント、あるいは複数の コマンドを一回の呼び出しにまとめる方式。
- フィルタリングとクエリ: 「サーバー上のすべてのセッション」から「目的のペイン一つ」へ絞り込む方法と、 一致が零件または複数件だったときに何が起きるか。
- ワークスペース: 複数ペインのレイアウトを手作業ではなくコードから組み立てる方法と、 多くの実装がオブジェクト API と併せて提供する tmuxp 型の宣言的ビルダー。
各言語の API リファレンスを開くには、ヘッダーの実装へのリンクを使ってください。