Copyright | (c) Devin Mullins <me@twifkak.com> |
---|---|
License | BSD3-style (see LICENSE) |
Maintainer | Devin Mullins <me@twifkak.com> |
Stability | unstable |
Portability | unportable |
Safe Haskell | None |
Language | Haskell2010 |
Lets you swap workspace tags, so you can keep related ones next to each other, without having to move individual windows.
Synopsis
- swapWithCurrent :: Eq i => i -> StackSet i l a s sd -> StackSet i l a s sd
- swapTo :: Direction1D -> X ()
- swapWorkspaces :: Eq i => i -> i -> StackSet i l a s sd -> StackSet i l a s sd
- data Direction1D
Usage
Add this import to your ~/.xmonad/xmonad.hs
:
import XMonad.Actions.SwapWorkspaces
Then throw something like this in your keys definition:
++ [((modm .|. controlMask, k), windows $ swapWithCurrent i) | (i, k) <- zip workspaces [xK_1 ..]]
After installing this update, if you're on workspace 1, hitting mod-ctrl-5 will swap workspaces 1 and 5.
For detailed instructions on editing your key bindings, see XMonad.Doc.Extending.
swapWithCurrent :: Eq i => i -> StackSet i l a s sd -> StackSet i l a s sd Source #
Swaps the currently focused workspace with the given workspace tag, via
swapWorkspaces
.
swapTo :: Direction1D -> X () Source #
Say swapTo Next
or swapTo Prev
to move your current workspace.
This is an X ()
so can be hooked up to your keybindings directly.
swapWorkspaces :: Eq i => i -> i -> StackSet i l a s sd -> StackSet i l a s sd Source #
Takes two workspace tags and an existing XMonad.StackSet and returns a new one with the two corresponding workspaces' tags swapped.
data Direction1D Source #
One-dimensional directions:
Instances
Eq Direction1D Source # | |
Defined in XMonad.Util.Types (==) :: Direction1D -> Direction1D -> Bool # (/=) :: Direction1D -> Direction1D -> Bool # | |
Read Direction1D Source # | |
Defined in XMonad.Util.Types readsPrec :: Int -> ReadS Direction1D # readList :: ReadS [Direction1D] # readPrec :: ReadPrec Direction1D # readListPrec :: ReadPrec [Direction1D] # | |
Show Direction1D Source # | |
Defined in XMonad.Util.Types showsPrec :: Int -> Direction1D -> ShowS # show :: Direction1D -> String # showList :: [Direction1D] -> ShowS # |