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

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
(→‎比較表: 修正)
 
(4人の利用者による、間の11版が非表示)
1行目: 1行目:
 
[[Category:タイル型ウィンドウマネージャ]]
 
[[Category:タイル型ウィンドウマネージャ]]
  +
[[Category:ソフトウェア比較]]
 
[[en:Comparison of tiling window managers]]
 
[[en:Comparison of tiling window managers]]
  +
[[es:Comparison of tiling window managers]]
  +
[[it:Comparison of tiling window managers]]
 
[[ru:Comparison of tiling window managers]]
 
[[ru:Comparison of tiling window managers]]
この記事では (''フロート型''ウィンドウマネージャと対立する) 人気のある''タイル型''[[ウィンドウマネージャ]]を公平に比較しています。
+
この記事では人気のある (''フロート型''ウィンドウマネージャと対立する) ''タイル型''[[ウィンドウマネージャ]]を公平に比較しています。
   
 
== 比較表 ==
 
== 比較表 ==
以下の表では人気のタイル型ウィンドウマネージャとその特徴を並べて、素早く比較できるようにしています。
 
   
  +
以下の表ではほとんどの人気のタイル型ウィンドウマネージャとその特出すべき特徴を並べて、素早く比較できるようにしています。
{| class="wikitable sortable"
 
  +
|+ タイル型ウィンドウマネージャの比較
 
  +
{| class="wikitable sortable" style="text-align: center;"
 
! scope="col" | ウィンドウマネージャ
 
! scope="col" | ウィンドウマネージャ
 
! scope="col" | 開発言語
 
! scope="col" | 開発言語
21行目: 24行目:
 
! scope="col" class="unsortable" | 外部コントロール
 
! scope="col" class="unsortable" | 外部コントロール
 
! scope="col" | ライブラリ
 
! scope="col" | ライブラリ
! scope="col" class="unsortable" | マルチモニタ
+
! scope="col" class="unsortable" | マルチモニタ (n 台) の挙動
 
! scope="col" | ICCCM/EWMH 対応
 
! scope="col" | ICCCM/EWMH 対応
 
! scope="col" | 開発
 
! scope="col" | 開発
|-
 
! [[alopex]]
 
| C || C (リコンパイル) || ハイブリッド || なし || いいえ || 内蔵、第一引数でスクリプト/プログラムを呼び出し || 外部 || max, h-stack, v-stack, h-tab || 可変のボーダー、ステータスバーにタイトル || || Xlib || six tags, two views available by default || || 開発終了
 
 
|-
 
|-
 
! [[Awesome]]
 
! [[Awesome]]
| C || Lua || ダイナミック || 内蔵 || はい || 内蔵、画像とテキスト || 外部 || max, nh-stack (と invert), nv-stack (と invert), free || 可変のボーダー、任意で h-tab タイトル || dbus (有効の場合) || XCB || n-tags (workspaces). Per default 9 are enabled. [https://awesome.naquadah.org/images/6mon.medium.png Example] || はい || 継続中
+
| C || Lua || 動的 || 内蔵 || はい || 内蔵、画像とテキスト || 外部 || maxnh-stack (と invert)nv-stack (と invert)free || 可変のボーダー、任意で h-tab タイトル || dbus (有効の場合) || XCB || n 個のタグ (ワークスペース)。デフォルトでは 9 個が有効。[https://awesomewm.org/images/6mon.medium.png ] || はい || 継続中
 
|-
 
|-
 
! [[bspwm]]
 
! [[bspwm]]
| C || 何でも || ハイブリッド || なし || はい || 内部状態を FIFO に書き出し可能 || 外部 || v-split, h-split || 可変のボーダー || {{ic|bspc}} による || XCB || Monitors hold Desktops || はい || 継続中
+
| C || 何でも || ハイブリッド || なし || はい || 内部状態を FIFO に書き出し可能 || 外部 || v-splith-split || 可変のボーダー || {{ic|bspc}} による || XCB || モニタがデスクトップを保持 || はい || 継続中
|-
 
! [[catwm]]
 
| C || C (リコンパイル) || ダイナミック || なし || いいえ || なし || いいえ || v-stack, max || 1ピクセルのボーダー || || Xlib || || || 開発終了
 
|-
 
! dswm
 
| Lisp || Lisp || マニュアル || なし || はい || はい || いいえ || || || || || || || 開発終了
 
 
|-
 
|-
 
! [[dwm]]
 
! [[dwm]]
| C || C (コンパイル) || ダイナミック || 任意のパッチ || [[Dwm#ログアウトやプログラムを終了しないで dwm 再起動|任意]] || 内蔵、ルートウィンドウの名前から読み込み || 外部 || v-stack, max || || || Xlib || n regions, 9 workspaces fixed to each region || || 継続中
+
| C || C (コンパイル) || 動的 || 任意のパッチ || [[Dwm#dwm 再起動|任意]] || 内蔵、ルートウィンドウの名前から読み込み || 外部 || v-stackmax || || [https://dwm.suckless.org/patches/dwmfifo dwmfifo] による || Xlib || n 個のリージョン、1つのリージョンにつき9つのワークスペース || いいえ || 継続中
|-
 
! [[echinus]]
 
| C || テキスト || ダイナミック || なし || はい || {{AUR|ourico}} || 外部 || v-stack, b-stack, max || 可変のボーダー & 任意のタイトル || || Xlib || || はい || 不明
 
|-
 
! euclid-wm
 
| C || テキスト || ハイブリッド || なし || はい || 外部 ([[dzen]]) || || rows, columns || 1ピクセルのボーダー || || Xlib || || || 休止中
 
 
|-
 
|-
 
! [[FrankenWM]]
 
! [[FrankenWM]]
| C || C (コンパイル) || ダイナミック || なし || いいえ || いいえ、標準出力に出力された情報は外部のモニターやパネルで簡単にパースしたり表示できます ({{ic|dzen2}}, {{ic|conky}} など) || 外部 || v-stack (と invert), h-stack (と invert), dual-v/h-stack, grid, fibonacci (vh-stack), rows, columns, max, free || 可変のボーダー || || XCB || || || 継続中
+
| C || C (コンパイル) || 動的 || なし || いいえ || いいえ、標準出力に出力された情報は外部のモニターやパネルで簡単にパースしたり表示できます (dzen2conky など) || 外部 || v-stack (と invert)h-stack (と invert)dual-v/h-stackgridfibonacci (vh-stack)rowscolumnsmaxfree || 可変のボーダー || || XCB || || いいえ || 継続中
 
|-
 
|-
 
! [[herbstluftwm]]
 
! [[herbstluftwm]]
| C || テキスト || マニュアル || なし || はい || || || rows, columns || 1ピクセルのボーダー || herbstclient によるコマンド || Xlib と Glib || n regions, 9 workspaces visible in any region || || 継続中
+
| C++ || 何でも || 手動 || なし || はい || || 外部 || vertical、horizontal、grid、max、tabbed || 1ピクセルのボーダー || {{ic|herbstclient}} によるコマンド || Xlib || n 個のリージョン、1つのリージョンにつき9つのワークスペース || はい || 継続中
 
|-
 
|-
 
! [[i3]]
 
! [[i3]]
| C || テキスト || ダイナミック || i3bar || はい (レイアウトは保存されます) || i3bar にパイプで渡されたテキスト ({{Ic|i3status}}/{{Ic|conky}} なども使用可能) || 外部 || tree, v-split, h-split, stacked, tabbed, max, 無限にネスト可能 || なし、1ピクセルまたは2ピクセル、任意のタイトルバー、境界ボーダーは隠せます || ipc によるコマンド (または ipc を使用する i3-msg) || XCB || n regions || はい || 継続中
+
| C || テキスト || 手動 || i3bar || はい (レイアウトは保存されます) || i3bar にパイプで渡されたテキスト ({{Ic|i3status}}/{{Ic|conky}} なども使用可能) || 外部 || treev-splith-splitstackedtabbedmax無限にネスト可能 || なし、1ピクセルまたは2ピクセル、任意のタイトルバー、境界ボーダーは隠せます || ipc によるコマンド (または ipc を使用する i3-msg) || XCB || n 個のリージョン || はい || 継続中
 
|-
 
|-
! [[Ion3]]
+
! [[LeftWM]]
  +
| Rust || RON (ユーザー設定) / 何でも (テーマ) || 動的 || なし || はい || はい、テーマシステムによる多くのオプション || 外部 || v-stack、columns、rows || テーマごとに可変 || {{ic|_NET_ACTIVE_WINDOW}} と名前付きパイプへ送信コマンドをサポート || Xlib || ワークスペースとモニターは関連付けられていません。モニター毎に多くのワークスペース。あるいは、ワークスペース毎に多くのモニタ。 || はい || 継続中
| C || Lua || マニュアル || trayion || はい || 設定可能 || ? || h-tab, max || || || || || || 開発終了
 
|-
 
! [[monsterwm]]
 
| C || C (リコンパイル) || ダイナミック || なし || 任意、ただしウィンドウは消失 || いいえ、標準出力に出力された情報は外部のモニターやパネルで簡単にパースしたり表示できます ({{ic|dzen2}}, {{ic|conky}} など) || 外部 || h-stack, v-stack, grid, max || || {{ic|_NET_ACTIVE_WINDOW}} をサポートしているので、{{ic|xdotool}} などのツールによる外部コントロールが可能 || [[Monsterwm|Xlib primary と XCB fork]] || n workspaces per monitor || || 不明
 
|-
 
! [[Musca]]
 
| C || テキスト、独自のコマンドセット、C (リコンパイル) || マニュアル || なし || いいえ、ただし即座に適用される musca コマンドの実行は可能 || なし || いいえ || h-split, v-split, max || || コマンド、フック || Xlib || || || 開発終了
 
 
|-
 
|-
 
! [[Notion]]
 
! [[Notion]]
| C, Lua || Lua, Ion3 設定と互換性あり || マニュアル || trayion, stalonetray || はい || 設定可能 || ? || h-tab, max || 設定可能なボーダーとタイトルバー/タブ || EWMH, リッチな内部 API にアクセスできる任意の Lua スクリプト || Xlib || n workspaces on each monitor. Supports on-the-fly changes in topology || || 継続中
+
| CLua || LuaIon3 設定と互換性あり || 手動 || trayion、talonetray || はい || 設定可能 || ? || h-tabmax || 設定可能なボーダーとタイトルバー/タブ || EWMHリッチな内部 API にアクセスできる任意の Lua スクリプト || Xlib || 各モニタに n 個のワークスペース。実行中のトポロジ変更可。 || || 継続中
 
|-
 
|-
 
! [[qtile]]
 
! [[qtile]]
| Python || Python || ダイナミック || はい || はい || はい || 外部 || tree, v-split, h-split, stacked, tabbed, max || ボーダーなし、カスタマイズ可能 || フック、サーバーモード || XCB || || || 継続中
+
| Python || Python || 動的 || はい || はい || はい || 外部 || treev-splith-splitstackedtabbedmax || ボーダーなし、カスタマイズ可能 || フック、サーバーモード || XCB || || || 継続中
 
|-
 
|-
 
! [[Ratpoison]]
 
! [[Ratpoison]]
| C || テキスト || マニュアル || なし || はい || はい || 外部 || max || || || || || いいえ || 継続中
+
| C || テキスト || 手動 || なし || はい || はい || 外部 || max || || || || || いいえ || 継続中
 
|-
 
|-
 
! [[Snapwm]]
 
! [[Snapwm]]
| C || テキスト || ダイナミック || なし || はい || 内蔵、ルートウィンドウの名前から読み込み || 外部 || nVertical, Fullscreen, nHorizontal, Grid, Center Stacking || 可変のボーダー、タイトルなし || || Xlib || Number of desktops distributed evenly between monitors || || 継続中
+
| C || 再読み込み可能なテキスト || 動的 || なし || はい || 内蔵、ルートウィンドウの名前から読み込み || 外部 || nVerticalFullscreennHorizontalGridCenter Stacking || 可変のボーダー、タイトルなし || || Xlib || デスクトップの数はモニタ間で均等に配分 || || 継続中
 
|-
 
|-
 
! [[Spectrwm]]
 
! [[Spectrwm]]
| C || テキスト || ダイナミック || なし || はい || 内蔵、ルートウィンドウの名前から読み込み || いいえ || nv-stack, nh-stack, max || 1ピクセルのボーダー、タイトルなし || || XCB || n regions, 10 workspaces visible in any region || い || 継続中
+
| C || テキスト || 動的 || なし || はい || 内蔵、ルートウィンドウの名前から読み込み || いいえ || nv-stacknh-stackmax || 1ピクセルのボーダー、タイトルなし || || XCB || n 個のリージョン、任意のリージョンに 10 個のワークスペースを表示可 || いいえ || 継続中
 
|-
 
|-
 
! [[Stumpwm]]
 
! [[Stumpwm]]
| Lisp || Lisp || マニュアル || なし || はい || はい || いいえ || || || || || || いいえ || 継続中
+
| Common Lisp || Common Lisp || 手動 || StumpTray || はい || はい || 外部 || max || || SLIME サーバ ("Swank") || Xlib || || いいえ || 継続中
|-
 
! [[subtle]]
 
| C || Ruby || マニュアル || 内蔵 || はい || 内蔵 (Ruby), 外部のプログラムも使用可能 || 外部 || 可変 grid || 可変のボーダー、タイトルなし || Hooks (Ruby), subtler (CLI), subtlext (Ruby 拡張) || Xlib || One workspace (view) per monitor (screen), placement on views via tags and per runtime || はい || 継続中
 
|-
 
! [[sway]]
 
| C || テキスト (i3 互換) || ダイナミック || swaybar || はい (レイアウトは保存されます) || swaybar にパイプでテキストを指定 ({{Ic|i3status}}/{{Ic|conky}} などが使えます) || はい || tree, v-split, h-split, stacked, tabbed, max, 無限にネスト可能 || なし, 1・2ピクセル, 任意のタイトルバー, 縁を非表示にできます || ipc によるコマンド (または ipc を使用する swaymsg) || wlc (wayland) || n regions || いいえ || 継続中
 
|-
 
! [[Wingo]]
 
| Go || テキスト || ダイナミック || なし || はい || いいえ || 外部 || floating, nv-stack, nh-stack, max || floating ではタイトルバー、tiling では細いボーダー || [https://github.com/BurntSushi/wingo/blob/master/HOWTO-COMMANDS wingo-cmd] またはプログラミング言語の UNIX ソケットによる || [https://github.com/BurntSushi/xgb X Go Binding] || n regions, workspaces visible in any region || はい || 継続中
 
|-
 
! [[en2:WMFS|WMFS]]
 
| C || テキスト || ダイナミック || 内蔵 || はい || 内蔵, コマンドで設定, カラーテキスト, 画像 || 外部 || nh-stack (と invert), nv-stack (と invert), mirror-v, mirror-h, grid, free, max || 可変のボーダー・タイトルまたはタイトルなし || コマンド || Xlib || 画面ごとに36タグ (ワークスペース) まで || はい || 継続中
 
|-
 
! [[wmii]]
 
| C || 何でも || マニュアル || witray || はい || 内蔵 || 外部 || columns, max, v-tab || タイトル || [http://9p.cat-v.org 9P ファイルシステム] || || one big region || はい || 継続中
 
 
|-
 
|-
 
! [[xmonad]]
 
! [[xmonad]]
| Haskell || Haskell || ダイナミック || なし || はい || いいえ || はい、xmonad-contrib と外部のマネージャによる || nv-stack, nh-stack, max || 可変のボーダー、タイトルなし || [http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Hooks-ServerMode.html XMonad-Hooks-ServerMode] による || Xlib || n regions, 9 workspaces visible in any region || はい / ? || 継続中
+
| Haskell || Haskell || 動的 || なし || はい || いいえ || はい、xmonad-contrib と外部のマネージャによる || nv-stacknh-stackmax || 可変のボーダー、タイトルなし || [https://hackage.haskell.org/package/xmonad-contrib/docs/XMonad-Hooks-ServerMode.html XMonad-Hooks-ServerMode] による || Xlib || n 個のリージョン、任意のリージョンに 9 個のワークスペース表示可。 || はい / ? || 継続中
 
|-
 
|-
 
|-class="sortbottom"
 
|-class="sortbottom"
! ウィンドウマネージャ !! 開発言語 !! 設定方法 !! 管理方式 !! システムトレイのサポート !! 実行中のリロード !! 情報バー !! コンポジット !! デフォルトレイアウト !! ピクセルの使用量 || 外部コントロール !! ライブラリ !! マルチモニタ !! ICCCM/EWMH 対応 !! 開発
+
! ウィンドウマネージャ !! 開発言語 !! 設定方法 !! 管理方式 !! システムトレイのサポート !! 実行中のリロード !! 情報バー !! コンポジット !! デフォルトレイアウト !! ピクセルの使用量 !! 外部コントロール !! ライブラリ !! マルチモニタ (n 台) の挙動 !! ICCCM/EWMH 対応 !! 開発
 
|}
 
|}
   
110行目: 77行目:
   
 
=== 管理方式 ===
 
=== 管理方式 ===
  +
ダイナミック管理方式はウィンドウレイアウトを自動で管理して、スピードとシンプルに焦点を置いています。マニュアル管理方式はレイアウトやサイズを手動で調整して細かいコントロールができますが、ウィンドウの移動やサイズ変更に時間がかかります。
 
  +
動的管理方式はウィンドウレイアウトを自動で管理して、スピードとシンプルさに焦点を置いています。手動管理方式はレイアウトやサイズを手動で調整して細かいコントロールができますが、ウィンドウの移動やサイズ変更に時間がかかります。
   
 
=== レイアウト ===
 
=== レイアウト ===
  +
タイル型 WM には共通のレイアウトタイプというのが存在します。ただし用語が変わることもままあります。
 
  +
用語は若干異なりますが、いくつかのタイル型ウィンドウマネージャで多くの共通のレイアウトタイプが出てきます。
* max: フルスクリーンで表示される単一のウィンドウ (ステータスバーやタイトル、ボーダーはあったりなかったり)。別名: monocle (dwm, monsterwm)。
 
  +
* h-stack: 上半分がマスターエリアで、他のウィンドウは下半分に水平に並べられます。マスターエリアのサイズは変更できます。上下を逆にすることも可能 (wmfs)。別名: bottom stack (dwm), bstack (monsterwm)。
 
* v-stack: 左半分がマターエ、他のウィンドウは右半分に縦に並べられます。マスターエリアのサ変更できます。左右を逆にすることも可能 (wmfs)。別名: tile (dwm, monsterwm)。
+
* max: フルーン表示される単一のウィンドウ (テースバやタトル、ボーダーあったりなかったり)。別名: monocle (dwmmonsterwm)。
  +
* h-stack: 上半分がマスターエリアで、他のウィンドウは下半分に水平に並べられます。マスターエリアのサイズは変更できます。上下を逆にすることも可能 (wmfs)。別名: bottom stack (dwm)、bstack (monsterwm)。
  +
* v-stack: 左半分がマスターエリアで、他のウィンドウは右半分に縦に並べられます。マスターエリアのサイズは変更できます。左右を逆にすることも可能 (wmfs)。別名: tile (dwm、monsterwm)。
 
* nh-stack: マスターエリアに複数のウィンドウを配置できる h-stack。別名: nbstack (dwm)
 
* nh-stack: マスターエリアに複数のウィンドウを配置できる h-stack。別名: nbstack (dwm)
 
* nv-stack: マスターエリアに複数のウィンドウを配置できる v-stack。別名: ntile (dwm)
 
* nv-stack: マスターエリアに複数のウィンドウを配置できる v-stack。別名: ntile (dwm)
 
* mirror-h: マスターエリアの上下にスタックできる nh-stack
 
* mirror-h: マスターエリアの上下にスタックできる nh-stack
 
* mirror-v: マスターエリアの左右にスタックできる nv-stack
 
* mirror-v: マスターエリアの左右にスタックできる nv-stack
* h-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを (ブラウザのタブのように) 水平に表示
+
* h-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを (ブラウザのタブのように) 水平に表示
 
* v-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを垂直に表示。別名: stack (wmii)。
 
* v-tab: 単一のウィンドウをフルスクリーンで表示して全てのウィンドウのタイトルを垂直に表示。別名: stack (wmii)。
 
* h-split: キーバインドでカレントウィンドウを水平に分割して別のウィンドウのためのスペースを作成
 
* h-split: キーバインドでカレントウィンドウを水平に分割して別のウィンドウのためのスペースを作成
 
* v-split: キーバインドでカレントウィンドウを垂直に分割して別のウィンドウのためのスペースを作成
 
* v-split: キーバインドでカレントウィンドウを垂直に分割して別のウィンドウのためのスペースを作成
* columns: ウィンドウを縦の列に属しているように扱う手動のレイアウトスタイル
+
* columns: ウィンドウを縦の列に属しているように扱う手動のレイアウト方式
* rows: ウィンドウを横の行に属しているように扱う手動のレイアウトスタイル
+
* rows: ウィンドウを横の行に属しているように扱う手動のレイアウト方式
* grid: 規則正しい NxM グリッドでウィンドウの位置とサイズを調整。自動 (wmfs, monsterwm など) または手動 (Subtle など)。
+
* grid: 規則正しい NxM グリッドでウィンドウの位置とサイズを調整。自動 (wmfsmonsterwm など) または手動 (Subtle など) にすることが可能
   
 
=== キーバインド ===
 
=== キーバインド ===
  +
タイル型ウィンドウマネージャは基本的に全てをキーボードで操作するか、キーボードとマウスを組み合わせて使うように作られています。スピード (マウスに手を伸ばすのは面倒くさい) と使いやすさのためです。効率的かつ素早く作業を行うためにキーバインドはわかりやすくなくてはなりません。デフォルトのキーバインドが一番良いということもありますが、ユーザーが使いやすいようにキーを入れ替えるのが普通です。
 
  +
タイル型ウィンドウマネージャは基本的に全てをキーボードで操作するか、キーボードとマウスを組み合わせて使うように作られています。スピード (マウスに手を伸ばすのは時間がかかる) と使いやすさのためです。効率的かつ素早く作業を行うためにキーバインドは賢明なものにすることが重要です。いくつかのデフォルトセットは他のものよりも優れていますが、一般にキーはユーザが望むように設定することができます。
   
 
== 参照 ==
 
== 参照 ==
  +
* [http://sawfish.wikia.com/wiki/Comparison_of_extensible_window_managers Comparison of extensible window managers] compares WMs "extensible" by scripting, like Xmonad and Sawfish.
 
  +
* [[Wayland#タイル型|タイル型 Wayland コンポジターのリスト]]
  +
* [https://sawfish.wikia.com/wiki/Comparison_of_extensible_window_managers Comparison of extensible window managers]: スクリプトによって"拡張可能"なウィンドウマネージャ (xmonad や Sawfish など) を比較しています。
  +
  +
{{TranslationStatus|Comparison of tiling window managers|2023-06-02|778245}}

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

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

比較表

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

ウィンドウマネージャ 開発言語 設定方法 管理方式 システムトレイのサポート 実行中のリロード 情報バー コンポジット デフォルトレイアウト ピクセルの使用量 外部コントロール ライブラリ マルチモニタ (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 など) にすることが可能。

キーバインド

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

参照

翻訳ステータス: このページは en:Comparison of tiling window managers の翻訳バージョンです。最後の翻訳日は 2023-06-02 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。