xmonad-contrib-0.17.1: Community-maintained extensions for xmonad
Copyright(c) 2020 Ivan Brennan <ivanbrennan@gmail.com>
LicenseBSD3-style (see LICENSE)
MaintainerIvan Brennan <ivanbrennan@gmail.com>
Stabilitystable
Portabilityunportable
Safe HaskellSafe-Inferred
LanguageHaskell2010

XMonad.Actions.Sift

Contents

Description

Functions for sifting windows up and down. Sifts behave identically to swaps (i.e. swapUp and swapDown from XMonad.StackSet), except in the wrapping case: rather than rotating the entire stack by one position like a swap would, a sift causes the windows at either end of the stack to trade positions.

Synopsis
  • siftUp :: StackSet i l a s sd -> StackSet i l a s sd
  • siftDown :: StackSet i l a s sd -> StackSet i l a s sd

Usage

You can use this module with the following in your ~/.xmonad/xmonad.hs:

import XMonad.Actions.Sift

and add keybindings such as the following:

  , ((modMask .|. shiftMask, xK_j ), windows siftDown)
  , ((modMask .|. shiftMask, xK_k ), windows siftUp  )

siftUp :: StackSet i l a s sd -> StackSet i l a s sd Source #

siftUp, siftDown. Exchange the focused window with its neighbour in the stack ordering, wrapping if we reach the end. Unlike swapUp and swapDown, wrapping is handled by trading positions with the window at the other end of the stack.

siftDown :: StackSet i l a s sd -> StackSet i l a s sd Source #

siftUp, siftDown. Exchange the focused window with its neighbour in the stack ordering, wrapping if we reach the end. Unlike swapUp and swapDown, wrapping is handled by trading positions with the window at the other end of the stack.