tmuxが$ xを実行しないのはなぜですか?

tmuxが$ xを実行しないのはなぜですか?

複数のセッションを作成してprefix + sセッション間を変更するために使用すると、画面の下部にインデックスと名前を含む各ウィンドウのプレビューが表示されます。表示されるウィンドウ枠の色をどのように変更しますか?

図:

セッションセレクタのスクリーンショット

答え1

tmux 用語では、これらのプレビューは同様の方法で端末領域を共有しますが、実際には「ウィンドウ」ではありません。したがって、(現在のtmux2.7では)独自の構成設定はなく、active-window-styleこれが間違いであると思われる場合は発生する可能性があります。機能要件:

tmuxが$ xを実行しないのはなぜですか?

機能要求については、次のアドレスに電子メールを送信してください。[Eメール保護]

パッチと再コンパイル

あるいは、ソースからのビルドに慣れている場合は、tmux担当機能を簡単に変更できます。

プレビュー間の垂直線はで描画されscreen_write_vline、すべての垂直線の周りのボックスはで描画されますscreen_write_box。どちらの機能も以下で利用できます。screen-write.c、次の行が含まれます。

    memcpy(&gc, &grid_default_cell, sizeof gc);

gcタイプは、それぞれフロントエンドとバックエンドを表すstruct grid_cellメンバーfgとを含むものです。bg

grid_default_cellは次constのように定義されます。grid.c。どちらfgも8ですbg。つまり、 と同じ値を使用するかdefault(設定されていない場合)、端末自体のデフォルト値を使用します。window-active-style

この設定を上書きするには、gc後ですぐに変更できます。

    memcpy(&gc, &grid_default_cell, sizeof gc);
    gc.fg = 1;

これにより、関連する線を描く前に前景が赤に設定されます。

色を整数に変換

構成ファイルでは、tmux次の形式の色が認識されます。

色は、黒、赤、緑、黄色、青、マゼンタ、ターコイズ、白、aixtermの明るいバリエーション(サポートされている場合:明るい赤、明るい緑など)、256色セットのcolor0〜color255(デフォルト)の1つです。または、「#ffffff」などの16進RGB文字列です。

intソースで設定するときは、読み取り機能から.fromとして読み取る必要があります。colour_fromstring存在するcolour.c、数値表現を見つけることができます。

  • 基本色:0-7
  • デフォルト:8
  • 基本色の「明るい」バージョン:90-97
  • インデックスソース256色のパレット: COLOUR_FLAG_256 |索引
  • トゥルーカラー(24ビットRGB):COLOUR_FLAG_RGB | 0xRRGGBB

関連情報