From b5d09f06709cd5c93cb3d31629655fb87d68ee67 Mon Sep 17 00:00:00 2001 From: Josh Rahm Date: Mon, 22 Nov 2021 10:58:03 -0700 Subject: Add keybindings to - Copy window to another Workspace. - Launch a floating terminal. --- src/Internal/Keys.hs | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'src/Internal/Keys.hs') diff --git a/src/Internal/Keys.hs b/src/Internal/Keys.hs index 3b61dac..c3c8db5 100644 --- a/src/Internal/Keys.hs +++ b/src/Internal/Keys.hs @@ -1,5 +1,5 @@ {-# LANGUAGE RankNTypes #-} -module Internal.Keys where +module Internal.Keys (applyKeys) where import Internal.SwapMaster (swapMaster) import XMonad.Hooks.ManageDocks @@ -30,6 +30,10 @@ import XMonad.Prompt.Input import XMonad.Prompt.Shell import XMonad.Util.CustomKeys import XMonad.Util.Scratchpad +import XMonad.Actions.RotSlaves +import XMonad.Actions.CopyWindow as CopyWindow +import XMonad.Actions.SpawnOn as SpawnOn + import qualified Data.Map as Map import qualified XMonad.StackSet as W @@ -82,6 +86,8 @@ newKeys = , ((modm, xK_c), runPassMenu) , ((modm, xK_h), windows W.focusDown) , ((modm, xK_l), windows W.focusUp) + , ((modm .|. controlMask, xK_h), rotAllDown) + , ((modm .|. controlMask, xK_l), rotAllUp) , ((modm .|. shiftMask, xK_h), windows W.swapUp) , ((modm .|. shiftMask, xK_l), windows W.swapDown) , ((modm , xK_f), sendMessage FlipLayout) @@ -99,6 +105,7 @@ newKeys = , ((mod4Mask, xK_BackSpace), (void $ spawn "xterm")) , ((modm, xK_BackSpace), (void $ spawn "pkill -SIGUSR1 xmobar")) , ((modm, xK_t), (void $ spawn (terminal config))) + , ((modm .|. mod1Mask, xK_t), (void $ spawn (terminal config ++ " -t Floating\\ Term"))) , ((modm, xK_m), (submap $ mapAlpha modm markCurrentWindow)) , ((modm, xK_w), windowJump) , ((modm, xK_space), sendMessage NextLayout) @@ -121,6 +128,9 @@ newKeys = , ((modm .|. shiftMask, xK_g), (submap $ mapNumbersAndAlpha 0 shiftToWorkspace)) + , ((modm .|. shiftMask, xK_g), (submap $ + mapNumbersAndAlpha shiftMask (\i -> windows $ CopyWindow.copy [i]))) + , ((modm .|. shiftMask .|. mod1Mask, xK_g), (submap $ mapNumbersAndAlpha 0 swapWorkspace)) @@ -165,9 +175,7 @@ newKeys = ] mapNumbersAndAlpha :: KeyMask -> (Char -> X ()) -> Map (KeyMask, KeySym) (X ()) -mapNumbersAndAlpha km fn = - mapNumbers km fn - <> mapAlpha km fn +mapNumbersAndAlpha km fn = mapNumbers km fn <> mapAlpha km fn mapNumbers :: KeyMask -> (Char -> X ()) -> Map (KeyMask, KeySym) (X ()) mapNumbers km fn = -- cgit