2

xmonad の起動時に、いくつかのアプリケーションを別のワークスペース (重要) で起動したいと考えています。だから、私は次のように書いたstartupHook

startupApps :: [String]
startupApps = ["konsole", "emacs", "firefox", "gvim", "konsole"]

startupSpawn :: X ()
startupSpawn =  zipWithM_ id (map (spawnOn . show) [1..])  startupApps

ただし、最初のワークスペースですべてのアプリを生成します。これは、より一般的な問題の一部のようです。アプリケーションを起動すると、実際に起動したときではなく、ロードされたときにワークスペースが取得されます。したがって、WS1 で firefox を起動してから WS2 に切り替えると、firefox は WS2 で生成されます。

それでも、私は自分の意図について何ができますか?

4

1 に答える 1

3

を使用して、manageHook特定のアプリケーションを特定のデスクトップに移動するようにxmonadに指示できます。

myManageHook = composeAll . concat $ [
    [ className =? "Firefox" --> doF (shiftToWs 2) ]
  , [ className =? "gvim" --> doF (shiftToWs 3) ]
  -- and so on
  ]

ただし、classNamesは異なる場合があります。

于 2012-11-07T23:10:10.617 に答える