CopyWindowを使って,すべてのワークスペースで同じウィンドウを表示する[xmonad]
地味に便利になった設定。 あんまり褒められた話ではないが,動画を垂れ流しながら作業をしたいとき, 複数のワークスペースで作業しながら,すべてのワークスペースで同じウィンドウを表示させたいときに使う。
参考にしたサイト
ここに書いてあるとおりに,~/.xmonad/xmonad.hs
の初めのほうで
import XMonad.Actions.CopyWindow
としてモジュールをインポートしてから,
キーバインドを設定する部分で
-- CopyWindow , ((modm , xK_v ), windows copyToAll) , ((modm .|. shiftMask , xK_v ), killAllOtherCopies)
を追加する。
これでWindowsキー+v
キーでフォーカスされたウィンドウはすべてのワークスペースにコピーされる。
但し,単に各ワークスペースのラベルが貼られるというだけのことなので,CPUの使用率がワークスペースの数に比例して大きくなるわけではないのでご安心を。
フロート表示したmplayerやmpvに対して先ほどのショートカットを実行すると,すべてのワークスペースから同じ画面が見られるわけなので,とっても幸せになれる。
真面目な使い方としては,xclock表示させるとかかな?
一つ不満点があるとすれば,コピーすることによってすべてのワークスペースに同じ名前のウィンドウが展開されるわけなので,XMonad.Prompt.Windowのように,ウィンドウの名前で検索してフォーカスを移す系はすこし使いづらくなる点。