我正在尝试配置我的xmonad.hs
,以便当我开始我的会话时,我在不同的工作区(如终端 1 中的终端;2 中的 Firefox;3 中的 Pidgin)上启动一系列不同的程序。
我已经查看了XMonad.Actions.SpawnOn
,但作为spawnOn
返回X ()
而不是普通的m ()
我不能使用它main = do ...
。
是否有一个接受X
-monad 并返回的函数,IO ()
或者是否有另一种解决方法?
常见的方法是使用startupHookX ()
,它会在每次启动时采取行动并执行它。例如
main = xmonad $ defaultConfig
{ startupHook = do
spawnOn "workspace1" "program1"
…
spawnOn "workspaceN" "programN"
}