xmonadを使っていて,タイル配置するとレイアウトが壊れたり操作ボタンが隠れたりして使えないことがある.
そういったプログラムは,フローティングするのが良い.
しかしSuper+クリックで配置後にフローティングしてもウィンドウサイズをリサイズしてくれないため操作ボタンが出てこないことが多々ある.
そういう場合は,最初から特定のプログラムをフローティングで起動するように設定するのが良い.
クラス名を調べる
以下のコマンドで,xpropを使ってコンソールにウィンドウの情報を取得できるようにする.
クラス名だけフィルタしても良い.
このコマンドを実行するとマウスポインタの形状が変わるので,対象のウィンドウをクリックすると情報を取得できる.
$ xprop | grep WM_CLASS
xmonadの設定
xmonadをdefaultConfigで起動している場合,<+>演算子で連結(?)すると良い.
main = do
-- 略
xmonad $ ewmh defaultConfig
{ -- 略
, manageHook = myManageHook
, -- 略
}
myManageHook = manageHook defaultConfig <+> myManageHookFloat
myManageHookFloat = composeAll
[ className =? "PATTERN1" --> doFloat
, className =? "PATTERN2" --> doFloat
]
