xmonad-contrib- Community-maintained extensions for xmonad
Copyright(c) Spencer Janssen 2009
LicenseBSD3-style (see LICENSE)
Portabilitynot portable
Safe HaskellSafe-Inferred



A module for spawning a command once, and only once. Useful to start status bars and make session settings inside startupHook. See also XMonad.Util.SessionStart for a different and more flexible way to run commands only on first startup.



spawnOnce :: String -> X () Source #

The first time spawnOnce is executed on a particular command, that command is executed. Subsequent invocations for a command do nothing.

SpawnOn helpers

These functions combine spawnOnce with their relatives in XMonad.Actions.SpawnOn. You must add manageSpawn to your manageHook for them to work, as with SpawnOn.

manageSpawn :: ManageHook Source #

Provides a manage hook to react on process spawned with spawnOn, spawnHere etc.

spawnOnOnce :: WorkspaceId -> String -> X () Source #

Like spawnOnce but launches the application on the given workspace.

spawnNOnOnce :: Int -> WorkspaceId -> String -> X () Source #

Lanch the given application n times on the specified workspace. Subsequent attempts to spawn this application will be ignored.

spawnAndDoOnce :: ManageHook -> String -> X () Source #

Spawn the application once and apply the manage hook. Subsequent attempts to spawn this application will be ignored.