「タイル型ウィンドウマネージャの比較」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
100行目: 100行目:
   
 
=== キーバインド ===
 
=== キーバインド ===
  +
タイル型ウィンドウマネージャは基本的に全てをキーボードで操作するか、キーボードとマウスを組み合わせて使うように作られています。スピード (マウスに手を伸ばすのは面倒くさい) と使いやすさのためです。効率的かつ素早く作業を行うためにキーバインドはわかりやすくなくてはなりません。デフォルトのキーバインドが一番良いということもありますが、ユーザーが使いやすいようにキーを入れ替えるのが普通です。
 
  +
タイル型ウィンドウマネージャは基本的に全てをキーボードで操作するか、キーボードとマウスを組み合わせて使うように作られています。スピード (マウスに手を伸ばすのは時間がかかる) と使いやすさのためです。効率的かつ素早く作業を行うためにキーバインドは賢明なものにすることが重要です。いくつかのデフォルトセットは他のものよりも優れていますが、一般にキーはユーザが望むように設定することができます。
   
 
== 参照 ==
 
== 参照 ==

2023年6月2日 (金) 11:33時点における版

この記事では人気のある (フロート型ウィンドウマネージャと対立する) タイル型ウィンドウマネージャを公平に比較しています。

比較表

以下の表ではほとんどの人気のタイル型ウィンドウマネージャとその特出すべき特徴を並べて、素早く比較できるようにしています。

ウィンドウマネージャ 開発言語 設定方法 管理方式 システムトレイのサポート 実行中のリロード 情報バー コンポジット デフォルトレイアウト ピクセルの使用量 外部コントロール ライブラリ マルチモニタ (n 台) の挙動 ICCCM/EWMH 対応 開発
Awesome C Lua 動的 内蔵 はい 内蔵、画像とテキスト 外部 max、nh-stack (と invert)、nv-stack (と invert)、free 可変のボーダー、任意で h-tab タイトル dbus (有効の場合) XCB n 個のタグ (ワークスペース)。デフォルトでは 9 個が有効。 はい 継続中
bspwm C 何でも ハイブリッド なし はい 内部状態を FIFO に書き出し可能 外部 v-split、h-split 可変のボーダー bspc による XCB モニタがデスクトップを保持 はい 継続中
dwm C C (再コンパイル) 動的 任意のパッチ 任意 内蔵、ルートウィンドウの名前から読み込み 外部 v-stack、max dwmfifo による Xlib n 個のリージョン、1つのリージョンにつき9つのワークスペース いいえ 継続中
FrankenWM C C (再コンパイル) 動的 なし いいえ いいえ、標準出力に出力された情報は外部のモニターやパネルで簡単にパースしたり表示できます (dzen2、conky など) 外部 v-stack (と invert)、h-stack (と invert)、dual-v/h-stack、grid、fibonacci (vh-stack)、rows、columns、max、free 可変のボーダー XCB いいえ 継続中
herbstluftwm C 何でも 手動 なし はい 外部 vertical、horizontal、grid、max、tabbed 1ピクセルのボーダー herbstclient によるコマンド Xlib n 個のリージョン、1つのリージョンにつき9つのワークスペース はい 継続中
i3 C テキスト 手動 i3bar はい (レイアウトは保存されます) i3bar にパイプで渡されたテキスト (i3status/conky なども使用可能) 外部 tree、v-split、h-split、stacked、tabbed、max、無限にネスト可能 なし、1ピクセルまたは2ピクセル、任意のタイトルバー、境界ボーダーは隠せます ipc によるコマンド (または ipc を使用する i3-msg) XCB n 個のリージョン はい 継続中
LeftWM Rust RON (ユーザー設定) / 何でも (テーマ) 動的 なし はい はい、テーマシステムによる多くのオプション 外部 v-stack、columns、rows テーマごとに可変 _NET_ACTIVE_WINDOW と名前付きパイプへ送信コマンドをサポート Xlib ワークスペースとモニターは関連付けられていません。モニター毎に多くのワークスペース。あるいは、ワークスペース毎に多くのモニタ。 はい 継続中
Notion C、Lua Lua、Ion3 設定と互換性あり 手動 trayion、talonetray はい 設定可能 ? h-tab、max 設定可能なボーダーとタイトルバー/タブ EWMH、リッチな内部 API にアクセスできる任意の Lua スクリプト Xlib 各モニタに n 個のワークスペース。実行中のトポロジ変更可。 継続中
qtile Python Python 動的 はい はい はい 外部 tree、v-split、h-split、stacked、tabbed、max ボーダーなし、カスタマイズ可能 フック、サーバーモード XCB 継続中
Ratpoison C テキスト 手動 なし はい はい 外部 max いいえ 継続中
Snapwm C 再読み込み可能なテキスト 動的 なし はい 内蔵、ルートウィンドウの名前から読み込み 外部 nVertical、Fullscreen、nHorizontal、Grid、Center Stacking 可変のボーダー、タイトルなし Xlib デスクトップの数はモニタ間で均等に配分 継続中
Spectrwm C テキスト 動的 なし はい 内蔵、ルートウィンドウの名前から読み込み いいえ nv-stack、nh-stack、max 1ピクセルのボーダー、タイトルなし XCB n 個のリージョン、任意のリージョンに 10 個のワークスペースを表示可 いいえ 継続中
Stumpwm Common Lisp Common Lisp 手動 StumpTray はい はい 外部 max SLIME サーバ ("Swank") Xlib いいえ 継続中
xmonad Haskell Haskell 動的 なし はい いいえ はい、xmonad-contrib と外部のマネージャによる nv-stack、nh-stack、max 可変のボーダー、タイトルなし XMonad-Hooks-ServerMode による Xlib n 個のリージョン、任意のリージョンに 9 個のワークスペース表示可。 はい / ? 継続中
ウィンドウマネージャ 開発言語 設定方法 管理方式 システムトレイのサポート 実行中のリロード 情報バー コンポジット デフォルトレイアウト ピクセルの使用量 外部コントロール ライブラリ マルチモニタ (n 台) の挙動 ICCCM/EWMH 対応 開発
ヒント: 外部コントロールは xdotool などのキーストロークをシミュレートするプログラムでも行えます。

管理方式

動的管理方式はウィンドウレイアウトを自動で管理して、スピードとシンプルさに焦点を置いています。手動管理方式はレイアウトやサイズを手動で調整して細かいコントロールができますが、ウィンドウの移動やサイズ変更に時間がかかります。

レイアウト

用語は若干異なりますが、いくつかのタイル型ウィンドウマネージャで多くの共通のレイアウトタイプが出てきます。

  • max: フルスクリーンで表示される単一のウィンドウ (ステータスバーやタイトル、ボーダーはあったりなかったり)。別名: monocle (dwm、monsterwm)。
  • h-stack: 上半分がマスターエリアで、他のウィンドウは下半分に水平に並べられます。マスターエリアのサイズは変更できます。上下を逆にすることも可能 (wmfs)。別名: bottom stack (dwm)、bstack (monsterwm)。
  • v-stack: 左半分がマスターエリアで、他のウィンドウは右半分に縦に並べられます。マスターエリアのサイズは変更できます。左右を逆にすることも可能 (wmfs)。別名: tile (dwm、monsterwm)。
  • nh-stack: マスターエリアに複数のウィンドウを配置できる h-stack。別名: nbstack (dwm)
  • nv-stack: マスターエリアに複数のウィンドウを配置できる v-stack。別名: ntile (dwm)
  • mirror-h: マスターエリアの上下にスタックできる nh-stack
  • mirror-v: マスターエリアの左右にスタックできる nv-stack
  • h-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを (ブラウザのタブのように) 水平に表示。
  • v-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを垂直に表示。別名: stack (wmii)。
  • h-split: キーバインドでカレントウィンドウを水平に分割して別のウィンドウのためのスペースを作成
  • v-split: キーバインドでカレントウィンドウを垂直に分割して別のウィンドウのためのスペースを作成
  • columns: ウィンドウを縦の列に属しているように扱う手動のレイアウト方式
  • rows: ウィンドウを横の行に属しているように扱う手動のレイアウト方式
  • grid: 規則正しい NxM グリッドでウィンドウの位置とサイズを調整。自動 (wmfs、monsterwm など) または手動 (Subtle など) にすることが可能。

キーバインド

タイル型ウィンドウマネージャは基本的に全てをキーボードで操作するか、キーボードとマウスを組み合わせて使うように作られています。スピード (マウスに手を伸ばすのは時間がかかる) と使いやすさのためです。効率的かつ素早く作業を行うためにキーバインドは賢明なものにすることが重要です。いくつかのデフォルトセットは他のものよりも優れていますが、一般にキーはユーザが望むように設定することができます。

参照