Copyright (c) 2013 Dmitri Iouchtchenko BSD3-style (see LICENSE) Dmitri Iouchtchenko unstable unportable Safe-Inferred Haskell2010

Contents

Description

Keeps track of workspace viewing order.

Synopsis

# Usage

To record the order in which you view workspaces, you can use this module with the following in your ~/.xmonad/xmonad.hs:

import XMonad.Hooks.WorkspaceHistory (workspaceHistoryHook)

Then add the hook to your logHook:

 main = xmonad \$ def
{ ...
, logHook = ... >> workspaceHistoryHook >> ...
, ...
}

If you want to completely exclude certain workspaces from entering the history, you can use workspaceHistoryHookExclude instead. For example, to ignore the named scratchpad workspace:

import XMonad.Util.NamedScratchpad (scratchpadWorkspaceTag)
...
, logHook = ... >> workspaceHistoryHookExclude [scratchpadWorkspaceTag] >> ...

To make use of the collected data, a query function is provided.

A logHook that keeps track of the order in which workspaces have been viewed.

Like workspaceHistoryHook, but with the ability to exclude certain workspaces.

# Querying

A list of workspace tags in the order they have been viewed, with the most recent first. No duplicates are present, but not all workspaces are guaranteed to appear, and there may be workspaces that no longer exist.

# Handling edits

workspaceHistoryModify :: ([(ScreenId, WorkspaceId)] -> [(ScreenId, WorkspaceId)]) -> X () Source #

Modify a the workspace history with a given pure function.