macOS タイル型ウィンドウマネージャー

Yabai や Aerospace などの macOS タイル型 ウィンドウマネージャーでは、Ghostty のタブが個別のウィンドウとして描画されることがあります。

Yabai や Aerospace などの macOS タイル型ウィンドウマネージャーは、 Ghostty のタブを個別のウィンドウとして描画することがあります。これは既知の 問題で、Yabai と Aerospace 両方の issue トラッカーで十分に文書化されています。

Ghostty は macOS ネイティブのタブを使っています。macOS ネイティブタブは、macOS ウィンドウマネージャー API では 個別のウィンドウとして表されます。これは、Yabai、Aerospace、その他のタイル型ウィンドウマネージャーが macOS でウィンドウを管理するために使う API です。

そのため、これは macOS API の制限であり、この問題を Ghostty が直すためにできることはありません。

Note

長期的には、macOS ネイティブタブに依存しない カスタムタブの実装を望んでいます。これにより macOS タイル型ウィンドウマネージャーとの統合をよりよくできるようになります。

回避策

Ghostty コミュニティは、使っているタイル型ウィンドウマネージャーに応じた 回避策の候補を見つけています。

Aerospace

[[on-window-detected]]
if.app-id="com.mitchellh.ghostty"
run= [
  "layout tiling",
]

Ghostty のタブがまだ個別のウィンドウとして描画される場合は、"layout tiling" を "layout floating" に 置き換えてみてください。ただし、これを行うと Ghostty のウィンドウは初期起動時に フローティングになります。手動で非フローティングにできます(既定では、alt+shift+; に続けて f)。

Yabai

yabai -m signal --add app='^Ghostty$' event=window_created action='yabai -m space --layout bsp'
yabai -m signal --add app='^Ghostty$' event=window_destroyed action='yabai -m space --layout bsp'