| Copyright | (c) Michal Janeczek <janeczek@gmail.com> |
|---|---|
| License | BSD3-style (see LICENSE) |
| Maintainer | Michal Janeczek <janeczek@gmail.com> |
| Stability | unstable |
| Portability | unportable |
| Safe Haskell | None |
| Language | Haskell2010 |
XMonad.Actions.CycleRecentWS
Contents
Description
Provides bindings to cycle through most recently used workspaces with repeated presses of a single key (as long as modifier key is held down). This is similar to how many window managers handle window switching.
Synopsis
- cycleRecentWS :: [KeySym] -> KeySym -> KeySym -> X ()
- cycleRecentNonEmptyWS :: [KeySym] -> KeySym -> KeySym -> X ()
- cycleWindowSets :: (WindowSet -> [WorkspaceId]) -> [KeySym] -> KeySym -> KeySym -> X ()
- toggleRecentWS :: X ()
- toggleRecentNonEmptyWS :: X ()
- toggleWindowSets :: (WindowSet -> [WorkspaceId]) -> X ()
- recentWS :: (WindowSpace -> Bool) -> WindowSet -> [WorkspaceId]
Usage
You can use this module with the following in your xmonad.hs file:
import XMonad.Actions.CycleRecentWS , ((modm, xK_Tab), cycleRecentWS [xK_Alt_L] xK_Tab xK_grave)
For detailed instructions on editing your key bindings, see the tutorial.
Arguments
| :: [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final switch is made. |
| -> KeySym | Key used to switch to next (less recent) workspace. |
| -> KeySym | Key used to switch to previous (more recent) workspace. If it's the same as the nextWorkspace key, it is effectively ignored. |
| -> X () |
Cycle through most recent workspaces with repeated presses of a key, while a modifier key is held down. The recency of workspaces previewed while browsing to the target workspace is not affected. That way a stack of most recently used workspaces is maintained, similarly to how many window managers handle window switching. For best effects use the same modkey+key combination as the one used to invoke this action.
cycleRecentNonEmptyWS Source #
Arguments
| :: [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final switch is made. |
| -> KeySym | Key used to switch to next (less recent) workspace. |
| -> KeySym | Key used to switch to previous (more recent) workspace. If it's the same as the nextWorkspace key, it is effectively ignored. |
| -> X () |
Like cycleRecentWS, but restricted to non-empty workspaces.
Arguments
| :: (WindowSet -> [WorkspaceId]) | A function used to create a list of workspaces to choose from |
| -> [KeySym] | A list of modifier keys used when invoking this action. As soon as one of them is released, the final workspace is chosen and the action exits. |
| -> KeySym | Key used to preview next workspace from the list of generated options |
| -> KeySym | Key used to preview previous workspace from the list of generated options. If it's the same as nextOption key, it is effectively ignored. |
| -> X () |
Cycle through a finite list of workspaces with repeated presses of a key, while a modifier key is held down. For best effects use the same modkey+key combination as the one used to invoke this action.
toggleRecentWS :: X () Source #
Switch to the most recent workspace. The stack of most recently used workspaces is updated, so repeated use toggles between a pair of workspaces.
toggleRecentNonEmptyWS :: X () Source #
Like toggleRecentWS, but restricted to non-empty workspaces.
toggleWindowSets :: (WindowSet -> [WorkspaceId]) -> X () Source #
Given some function that generates a list of workspaces from a
given WindowSet, switch to the first generated workspace.
Arguments
| :: (WindowSpace -> Bool) | A workspace predicate. |
| -> WindowSet | The current WindowSet |
| -> [WorkspaceId] |
Given a predicate p and the current WindowSet w, create a
list of workspaces to choose from. They are ordered by recency and
have to satisfy p.