From a7fd31d2335b49e62a68b5d131100f8dd8018afa Mon Sep 17 00:00:00 2001 From: John Lind Date: Sun, 1 May 2022 10:53:14 +0200 Subject: [PATCH] Replace <+> with <> --- XMonad/Actions/ShowText.hs | 2 +- XMonad/Actions/SpawnOn.hs | 2 +- XMonad/Config/Azerty.hs | 6 ++--- XMonad/Config/Bepo.hs | 2 +- XMonad/Config/Desktop.hs | 12 +++++----- XMonad/Config/Dmwit.hs | 14 +++++------ XMonad/Config/Example.hs | 6 ++--- XMonad/Config/Gnome.hs | 2 +- XMonad/Config/Kde.hs | 4 ++-- XMonad/Config/LXQt.hs | 2 +- XMonad/Config/Mate.hs | 2 +- XMonad/Config/Prime.hs | 4 ++-- XMonad/Config/Saegesser.hs | 2 +- XMonad/Config/Sjanssen.hs | 4 ++-- XMonad/Config/Xfce.hs | 2 +- XMonad/Doc/Extending.hs | 8 +++---- XMonad/Hooks/DebugKeyEvents.hs | 2 +- XMonad/Hooks/DynamicHooks.hs | 4 ++-- XMonad/Hooks/DynamicProperty.hs | 4 ++-- XMonad/Hooks/EwmhDesktops.hs | 10 ++++---- XMonad/Hooks/FloatNext.hs | 2 +- XMonad/Hooks/Focus.hs | 32 +++++++++++++------------- XMonad/Hooks/InsertPosition.hs | 2 +- XMonad/Hooks/ManageDebug.hs | 8 +++---- XMonad/Hooks/ManageDocks.hs | 8 +++---- XMonad/Hooks/Place.hs | 4 ++-- XMonad/Hooks/PositionStoreHooks.hs | 2 +- XMonad/Hooks/RefocusLast.hs | 6 ++--- XMonad/Hooks/ToggleHook.hs | 4 ++-- XMonad/Hooks/WorkspaceByPos.hs | 2 +- XMonad/Layout/Fullscreen.hs | 6 ++--- XMonad/Layout/LayoutHints.hs | 2 +- XMonad/Layout/Monitor.hs | 2 +- XMonad/Util/ExclusiveScratchpads.hs | 2 +- XMonad/Util/Hacks.hs | 2 +- XMonad/Util/Loggers/NamedScratchpad.hs | 4 ++-- 36 files changed, 91 insertions(+), 91 deletions(-) diff --git a/XMonad/Actions/ShowText.hs b/XMonad/Actions/ShowText.hs index f9d3b84c..88e67163 100644 --- a/XMonad/Actions/ShowText.hs +++ b/XMonad/Actions/ShowText.hs @@ -47,7 +47,7 @@ import qualified XMonad.Util.ExtensibleState as ES -- -- Then add the event hook handler: -- --- > xmonad { handleEventHook = myHandleEventHooks <+> handleTimerEvent } +-- > xmonad { handleEventHook = myHandleEventHooks <> handleTimerEvent } -- -- You can then use flashText in your keybindings: -- diff --git a/XMonad/Actions/SpawnOn.hs b/XMonad/Actions/SpawnOn.hs index ec92ca7a..083fa5f2 100644 --- a/XMonad/Actions/SpawnOn.hs +++ b/XMonad/Actions/SpawnOn.hs @@ -51,7 +51,7 @@ import qualified XMonad.Util.ExtensibleState as XS -- > main = do -- > xmonad def { -- > ... --- > manageHook = manageSpawn <+> manageHook def +-- > manageHook = manageSpawn <> manageHook def -- > ... -- > } -- diff --git a/XMonad/Config/Azerty.hs b/XMonad/Config/Azerty.hs index 20867d40..14caaa42 100644 --- a/XMonad/Config/Azerty.hs +++ b/XMonad/Config/Azerty.hs @@ -37,11 +37,11 @@ import qualified Data.Map as M -- If you prefer, an azertyKeys function is provided which you can use as so: -- -- > import qualified Data.Map as M --- > main = xmonad someConfig { keys = \c -> azertyKeys c <+> keys someConfig c } +-- > main = xmonad someConfig { keys = \c -> azertyKeys c <> keys someConfig c } -azertyConfig = def { keys = azertyKeys <+> keys def } +azertyConfig = def { keys = azertyKeys <> keys def } -belgianConfig = def { keys = belgianKeys <+> keys def } +belgianConfig = def { keys = belgianKeys <> keys def } azertyKeys = azertyKeysTop [0x26,0xe9,0x22,0x27,0x28,0x2d,0xe8,0x5f,0xe7,0xe0] diff --git a/XMonad/Config/Bepo.hs b/XMonad/Config/Bepo.hs index ffb28b48..43416a19 100644 --- a/XMonad/Config/Bepo.hs +++ b/XMonad/Config/Bepo.hs @@ -38,7 +38,7 @@ import qualified Data.Map as M -- > import qualified Data.Map as M -- > main = xmonad someConfig { keys = \c -> bepoKeys c `M.union` keys someConfig c } -bepoConfig = def { keys = bepoKeys <+> keys def } +bepoConfig = def { keys = bepoKeys <> keys def } bepoKeys conf@XConfig { modMask = modm } = M.fromList $ ((modm, xK_semicolon), sendMessage (IncMasterN (-1))) diff --git a/XMonad/Config/Desktop.hs b/XMonad/Config/Desktop.hs index e6db6b86..48e027b1 100644 --- a/XMonad/Config/Desktop.hs +++ b/XMonad/Config/Desktop.hs @@ -106,7 +106,7 @@ import qualified Data.Map as M -- > main = -- > xmonad $ desktopConfig { -- > -- add manage hooks while still ignoring panels and using default manageHooks --- > manageHook = myManageHook <+> manageHook desktopConfig +-- > manageHook = myManageHook <> manageHook desktopConfig -- > -- > -- add a fullscreen tabbed layout that does not avoid covering -- > -- up desktop panels before the desktop layouts @@ -129,7 +129,7 @@ import qualified Data.Map as M -- To add to the logHook while still sending workspace and window information -- to DE apps use something like: -- --- > , logHook = myLogHook <+> logHook desktopConfig +-- > , logHook = myLogHook <> logHook desktopConfig -- -- Or for more elaborate logHooks you can use @do@: -- @@ -143,7 +143,7 @@ import qualified Data.Map as M -- To customize xmonad's event handling while still having it respond -- to EWMH events from pagers, task bars: -- --- > , handleEventHook = myEventHooks <+> handleEventHook desktopConfig +-- > , handleEventHook = myEventHooks <> handleEventHook desktopConfig -- -- or 'mconcat' if you write a list event of event hooks -- @@ -157,7 +157,7 @@ import qualified Data.Map as M -- $startupHook -- To run the desktop startupHook, plus add further actions to be run each --- time xmonad starts or restarts, use '<+>' to combine actions as in the +-- time xmonad starts or restarts, use '<>' to combine actions as in the -- logHook example, or something like: -- -- > , startupHook = do @@ -169,9 +169,9 @@ import qualified Data.Map as M desktopConfig :: XConfig (ModifiedLayout AvoidStruts (Choose Tall (Choose (Mirror Tall) Full))) desktopConfig = docks $ ewmh def - { startupHook = setDefaultCursor xC_left_ptr <+> startupHook def + { startupHook = setDefaultCursor xC_left_ptr <> startupHook def , layoutHook = desktopLayoutModifiers $ layoutHook def - , keys = desktopKeys <+> keys def } + , keys = desktopKeys <> keys def } desktopKeys :: XConfig l -> M.Map (KeyMask, KeySym) (X ()) desktopKeys XConfig{modMask = modm} = M.fromList diff --git a/XMonad/Config/Dmwit.hs b/XMonad/Config/Dmwit.hs index e019f1a2..72fa3212 100644 --- a/XMonad/Config/Dmwit.hs +++ b/XMonad/Config/Dmwit.hs @@ -217,13 +217,13 @@ dmwitConfig nScreens = docks $ def { keys = keyBindings, layoutHook = magnifierOff $ avoidStruts (GridRatio 0.9) ||| noBorders Full, manageHook = (title =? "CGoban: Main Window" --> doF sinkFocus) - <+> (className =? "Wine" <&&> (appName =? "hl2.exe" <||> appName =? "portal2.exe") --> ask >>= viewFullOn {-centerWineOn-} 1 "5") - <+> (className =? "VirtualBox" --> ask >>= viewFullOn 1 "5") - <+> (isFullscreen --> doFullFloat) -- TF2 matches the "isFullscreen" criteria, so its manage hook should appear after (e.g., to the left of a <+> compared to) this one - <+> (appName =? "huludesktop" --> doRectFloat fullscreen43on169) - <+> fullscreenMPlayer - <+> floatAll ["Gimp", "Wine"] - <+> manageSpawn, + <> (className =? "Wine" <&&> (appName =? "hl2.exe" <||> appName =? "portal2.exe") --> ask >>= viewFullOn {-centerWineOn-} 1 "5") + <> (className =? "VirtualBox" --> ask >>= viewFullOn 1 "5") + <> (isFullscreen --> doFullFloat) -- TF2 matches the "isFullscreen" criteria, so its manage hook should appear after (e.g., to the left of a <> compared to) this one + <> (appName =? "huludesktop" --> doRectFloat fullscreen43on169) + <> fullscreenMPlayer + <> floatAll ["Gimp", "Wine"] + <> manageSpawn, logHook = allPPs nScreens, startupHook = refresh >> mapM_ (spawnOnce . xmobarCommand) [0 .. nScreens-1] diff --git a/XMonad/Config/Example.hs b/XMonad/Config/Example.hs index 89a0d9f9..542b5f34 100644 --- a/XMonad/Config/Example.hs +++ b/XMonad/Config/Example.hs @@ -28,10 +28,10 @@ main = do -- simple overrides: xmonad $ desktopConfig { modMask = mod4Mask -- Use the "Win" key for the mod key - , manageHook = myManageHook <+> manageHook desktopConfig + , manageHook = myManageHook <> manageHook desktopConfig , layoutHook = desktopLayoutModifiers myLayouts , logHook = (dynamicLogString def >>= xmonadPropLog) - <+> logHook desktopConfig + <> logHook desktopConfig } `additionalKeysP` -- Add some extra key bindings: @@ -72,7 +72,7 @@ myManageHook = composeOne -- Handle floating windows: [ transience -- move transient windows to their parent , isDialog -?> doCenterFloat - ] <+> composeAll + ] <> composeAll [ className =? "Pidgin" --> doFloat , className =? "XCalc" --> doFloat , className =? "mpv" --> doFloat diff --git a/XMonad/Config/Gnome.hs b/XMonad/Config/Gnome.hs index 20434f5f..b689ed32 100644 --- a/XMonad/Config/Gnome.hs +++ b/XMonad/Config/Gnome.hs @@ -43,7 +43,7 @@ import System.Environment (getEnvironment) gnomeConfig = desktopConfig { terminal = "gnome-terminal" - , keys = gnomeKeys <+> keys desktopConfig + , keys = gnomeKeys <> keys desktopConfig , startupHook = gnomeRegister >> startupHook desktopConfig } gnomeKeys XConfig{modMask = modm} = M.fromList diff --git a/XMonad/Config/Kde.hs b/XMonad/Config/Kde.hs index 15e37efc..0a1b8d94 100644 --- a/XMonad/Config/Kde.hs +++ b/XMonad/Config/Kde.hs @@ -42,11 +42,11 @@ import qualified Data.Map as M kdeConfig = desktopConfig { terminal = "konsole" - , keys = kdeKeys <+> keys desktopConfig } + , keys = kdeKeys <> keys desktopConfig } kde4Config = desktopConfig { terminal = "konsole" - , keys = kde4Keys <+> keys desktopConfig } + , keys = kde4Keys <> keys desktopConfig } kdeKeys XConfig{modMask = modm} = M.fromList [ ((modm, xK_p), spawn "dcop kdesktop default popupExecuteCommand") diff --git a/XMonad/Config/LXQt.hs b/XMonad/Config/LXQt.hs index 4117140f..dcd05bfb 100644 --- a/XMonad/Config/LXQt.hs +++ b/XMonad/Config/LXQt.hs @@ -38,7 +38,7 @@ import qualified Data.Map as M lxqtConfig = desktopConfig { terminal = "qterminal" - , keys = lxqtKeys <+> keys desktopConfig } + , keys = lxqtKeys <> keys desktopConfig } lxqtKeys XConfig{modMask = modm} = M.fromList [ ((modm, xK_p), spawn "lxqt-runner") diff --git a/XMonad/Config/Mate.hs b/XMonad/Config/Mate.hs index 48acf602..f0e7de03 100644 --- a/XMonad/Config/Mate.hs +++ b/XMonad/Config/Mate.hs @@ -50,7 +50,7 @@ import System.Environment (getEnvironment) mateConfig = desktopConfig { terminal = "mate-terminal" - , keys = mateKeys <+> keys desktopConfig + , keys = mateKeys <> keys desktopConfig , startupHook = mateRegister >> startupHook desktopConfig } mateKeys XConfig{modMask = modm} = M.fromList diff --git a/XMonad/Config/Prime.hs b/XMonad/Config/Prime.hs index 1a5fd6da..8ca17e8c 100644 --- a/XMonad/Config/Prime.hs +++ b/XMonad/Config/Prime.hs @@ -280,7 +280,7 @@ instance SummableClass (Summable x y) y where -- -- Note that operator precedence mandates the parentheses here. manageHook :: Summable ManageHook ManageHook (XConfig l) -manageHook = Summable X.manageHook (\x c -> c { X.manageHook = x }) (<+>) +manageHook = Summable X.manageHook (\x c -> c { X.manageHook = x }) (<>) -- | Custom X event handler. Return @All True@ if the default handler should -- also be run afterwards. Default does nothing. To add an event handler: @@ -289,7 +289,7 @@ manageHook = Summable X.manageHook (\x c -> c { X.manageHook = x }) (<+>) -- > ... -- > handleEventHook =+ serverModeEventHook handleEventHook :: Summable (Event -> X All) (Event -> X All) (XConfig l) -handleEventHook = Summable X.handleEventHook (\x c -> c { X.handleEventHook = x }) (<+>) +handleEventHook = Summable X.handleEventHook (\x c -> c { X.handleEventHook = x }) (<>) -- | List of workspaces' names. Default: @map show [1 .. 9 :: Int]@. Adding -- appends to the end: diff --git a/XMonad/Config/Saegesser.hs b/XMonad/Config/Saegesser.hs index 7b8fb17c..c17d7fe2 100755 --- a/XMonad/Config/Saegesser.hs +++ b/XMonad/Config/Saegesser.hs @@ -39,7 +39,7 @@ main = do { terminal = "xterm" , workspaces = myWorkspaces , layoutHook = myLayoutHook - , manageHook = myManageHook <+> manageSpawn + , manageHook = myManageHook <> manageSpawn , startupHook = myStartupHook , logHook = myLogHook myStatusBarPipe , focusFollowsMouse = False diff --git a/XMonad/Config/Sjanssen.hs b/XMonad/Config/Sjanssen.hs index e71b55fe..47da9e05 100644 --- a/XMonad/Config/Sjanssen.hs +++ b/XMonad/Config/Sjanssen.hs @@ -41,8 +41,8 @@ sjanssenConfig = | (x, w) <- [ ("Firefox", "web") , ("Ktorrent", "7") , ("Amarokapp", "7")]] - <+> manageHook def <+> manageSpawn - <+> (isFullscreen --> doFullFloat) + <> manageHook def <> manageSpawn + <> (isFullscreen --> doFullFloat) , startupHook = mapM_ spawnOnce spawns } where diff --git a/XMonad/Config/Xfce.hs b/XMonad/Config/Xfce.hs index 473dcb2a..489e314f 100644 --- a/XMonad/Config/Xfce.hs +++ b/XMonad/Config/Xfce.hs @@ -38,7 +38,7 @@ import qualified Data.Map as M xfceConfig = desktopConfig { terminal = "xfce4-terminal" - , keys = xfceKeys <+> keys desktopConfig } + , keys = xfceKeys <> keys desktopConfig } xfceKeys XConfig{modMask = modm} = M.fromList [ ((modm, xK_p), spawn "xfrun4") diff --git a/XMonad/Doc/Extending.hs b/XMonad/Doc/Extending.hs index 3a7250e5..c4aea863 100644 --- a/XMonad/Doc/Extending.hs +++ b/XMonad/Doc/Extending.hs @@ -608,7 +608,7 @@ This is another example of 'XMonad.Config.manageHook', taken from > , resource =? "win" --> doF (W.shift "doc") -- xpdf > , resource =? "firefox-bin" --> doF (W.shift "web") > ] -> newManageHook = myManageHook <+> manageHook def +> newManageHook = myManageHook <> manageHook def Again we use 'XMonad.ManageHook.composeAll' to compose a list of @@ -617,7 +617,7 @@ RealPlayer on the float layer, the second one will put the xpdf windows in the workspace named \"doc\", with 'XMonad.ManageHook.doF' and 'XMonad.StackSet.shift' functions, and the third one will put all firefox windows on the workspace called "web". Then we use the -'XMonad.ManageHook.<+>' combinator to compose @myManageHook@ with the +'<>' combinator to compose @myManageHook@ with the default 'XMonad.Config.manageHook' to form @newManageHook@. Each 'XMonad.Config.ManageHook' has the form: @@ -667,10 +667,10 @@ Then we create our own 'XMonad.Config.manageHook': > myManageHook = resource =? "realplay.bin" --> doFloat -We can now use the 'XMonad.ManageHook.<+>' combinator to add our +We can now use the '<>' combinator to add our 'XMonad.Config.manageHook' to the default one: -> newManageHook = myManageHook <+> manageHook def +> newManageHook = myManageHook <> manageHook def (Of course, if we wanted to completely replace the default 'XMonad.Config.manageHook', this step would not be necessary.) Now, diff --git a/XMonad/Hooks/DebugKeyEvents.hs b/XMonad/Hooks/DebugKeyEvents.hs index 6f5a7d48..461777d3 100644 --- a/XMonad/Hooks/DebugKeyEvents.hs +++ b/XMonad/Hooks/DebugKeyEvents.hs @@ -41,7 +41,7 @@ import System.IO (hPutStrLn -- -- If you already have a handleEventHook then you should append it: -- --- > , handleEventHook = ... <+> debugKeyEvents +-- > , handleEventHook = ... <> debugKeyEvents -- -- Logged key events look like: -- diff --git a/XMonad/Hooks/DynamicHooks.hs b/XMonad/Hooks/DynamicHooks.hs index 01daab49..e499e812 100644 --- a/XMonad/Hooks/DynamicHooks.hs +++ b/XMonad/Hooks/DynamicHooks.hs @@ -38,7 +38,7 @@ import qualified XMonad.Util.ExtensibleState as XS -- -- To use this module, add 'dynamicMasterHook' to your 'manageHook': -- --- > xmonad { manageHook = myManageHook <+> dynamicMasterHook } +-- > xmonad { manageHook = myManageHook <> dynamicMasterHook } -- -- You can then use the supplied functions in your keybindings: -- @@ -70,7 +70,7 @@ dynamicMasterHook = ask >>= \w -> liftX $ do -- | Appends the given 'ManageHook' to the permanent dynamic 'ManageHook'. addDynamicHook :: ManageHook -> X () -addDynamicHook m = updateDynamicHook (<+> m) +addDynamicHook m = updateDynamicHook (<> m) -- | Modifies the permanent 'ManageHook' with an arbitrary function. updateDynamicHook :: (ManageHook -> ManageHook) -> X () diff --git a/XMonad/Hooks/DynamicProperty.hs b/XMonad/Hooks/DynamicProperty.hs index 5b04e6ec..9cf81ee5 100644 --- a/XMonad/Hooks/DynamicProperty.hs +++ b/XMonad/Hooks/DynamicProperty.hs @@ -65,7 +65,7 @@ import XMonad.Prelude -- -- > main = xmonad $ def -- > { ... --- > , handleEventHook = dynamicPropertyChange "WM_NAME" myDynamicManageHook <+> handleEventHook baseConfig +-- > , handleEventHook = dynamicPropertyChange "WM_NAME" myDynamicManageHook <> handleEventHook baseConfig -- > , ... -- > } -- @@ -88,7 +88,7 @@ import XMonad.Prelude -- -- > main = xmonad $ def -- > { ... --- > , handleEventHook = dynamicPropertyChange "WM_NAME" myDynHook <+> handleEventHook baseConfig +-- > , handleEventHook = dynamicPropertyChange "WM_NAME" myDynHook <> handleEventHook baseConfig -- > , ... -- > } -- > diff --git a/XMonad/Hooks/EwmhDesktops.hs b/XMonad/Hooks/EwmhDesktops.hs index f6dd58ec..9993db5a 100644 --- a/XMonad/Hooks/EwmhDesktops.hs +++ b/XMonad/Hooks/EwmhDesktops.hs @@ -85,9 +85,9 @@ import qualified XMonad.Util.ExtensibleState as XS -- | Add EWMH support for workspaces (virtual desktops) to the given -- 'XConfig'. See above for an example. ewmh :: XConfig a -> XConfig a -ewmh c = c { startupHook = ewmhDesktopsStartup <+> startupHook c - , handleEventHook = ewmhDesktopsEventHook <+> handleEventHook c - , logHook = ewmhDesktopsLogHook <+> logHook c } +ewmh c = c { startupHook = ewmhDesktopsStartup <> startupHook c + , handleEventHook = ewmhDesktopsEventHook <> handleEventHook c + , logHook = ewmhDesktopsLogHook <> logHook c } -- $customization @@ -376,8 +376,8 @@ ewmhDesktopsEventHook' _ _ = mempty -- | Add EWMH fullscreen functionality to the given config. ewmhFullscreen :: XConfig a -> XConfig a -ewmhFullscreen c = c { startupHook = startupHook c <+> fullscreenStartup - , handleEventHook = handleEventHook c <+> fullscreenEventHook } +ewmhFullscreen c = c { startupHook = startupHook c <> fullscreenStartup + , handleEventHook = handleEventHook c <> fullscreenEventHook } -- | Advertises EWMH fullscreen support to the X server. {-# DEPRECATED fullscreenStartup "Use ewmhFullscreen instead." #-} diff --git a/XMonad/Hooks/FloatNext.hs b/XMonad/Hooks/FloatNext.hs index 9ffcbdab..e8a72d26 100644 --- a/XMonad/Hooks/FloatNext.hs +++ b/XMonad/Hooks/FloatNext.hs @@ -53,7 +53,7 @@ hookName = "__float" -- -- and adding 'floatNextHook' to your 'ManageHook': -- --- > myManageHook = floatNextHook <+> manageHook def +-- > myManageHook = floatNextHook <> manageHook def -- -- The 'floatNext' and 'toggleFloatNext' functions can be used in key -- bindings to float the next spawned window: diff --git a/XMonad/Hooks/Focus.hs b/XMonad/Hooks/Focus.hs index 04067c1a..e7df4f25 100644 --- a/XMonad/Hooks/Focus.hs +++ b/XMonad/Hooks/Focus.hs @@ -160,7 +160,7 @@ import XMonad.Hooks.ManageHelpers (currentWs) -- > --> keepFocus -- > -- Default behavior for activated windows: switch -- > -- workspace and focus. --- > , return True --> switchWorkspace <+> switchFocus +-- > , return True --> switchWorkspace <> switchFocus -- > ] -- > -- > newFocusHook :: FocusHook @@ -202,7 +202,7 @@ import XMonad.Hooks.ManageHelpers (currentWs) -- > acFh = manageFocus activateFocusHook -- > xcf = setEwmhActivateHook acFh -- > . ewmh $ def --- > { manageHook = newFh <+> manageHook def +-- > { manageHook = newFh <> manageHook def -- > , modMask = mod4Mask -- > } -- > `additionalKeys` [((mod4Mask, xK_v), toggleLock)] @@ -227,7 +227,7 @@ import XMonad.Hooks.ManageHelpers (currentWs) -- > ] -- > xcf = setEwmhActivateHook (fh True) -- > . ewmh $ def --- > { manageHook = fh False <+> manageHook def +-- > { manageHook = fh False <> manageHook def -- > , modMask = mod4Mask -- > } -- > `additionalKeys` [((mod4Mask, xK_v), toggleLock)] @@ -250,11 +250,11 @@ import XMonad.Hooks.ManageHelpers (currentWs) -- This can be worked around by splitting 'FocusHook' into several different -- values and evaluating each one separately, like: -- --- > (FH2 -- manageFocus --> MH2) <+> (FH1 -- manageFocus --> MH1) <+> .. +-- > (FH2 -- manageFocus --> MH2) <> (FH1 -- manageFocus --> MH1) <> .. -- -- E.g. -- --- > manageFocus FH2 <+> manageFocus FH1 <+> .. +-- > manageFocus FH2 <> manageFocus FH1 <> .. -- -- now @FH2@ will see window shift made by @FH1@. -- @@ -275,9 +275,9 @@ import XMonad.Hooks.ManageHelpers (currentWs) -- > [ pure activated -?> (newOnCur --> keepFocus) -- > , pure True -?> newFocusHook -- > ] --- > xcf = setEwmhActivateHook (fh True <+> activateOnCurrentWs) +-- > xcf = setEwmhActivateHook (fh True <> activateOnCurrentWs) -- > . ewmh $ def --- > { manageHook = fh False <+> manageHook def +-- > { manageHook = fh False <> manageHook def -- > , modMask = mod4Mask -- > } -- > `additionalKeys` [((mod4Mask, xK_v), toggleLock)] @@ -444,15 +444,15 @@ unlessFocusLock m = do -- 'switchWorkspace' overwrite each other (the letftmost will determine what -- happened): -- --- prop> keepFocus <+> switchFocus = keepFocus --- prop> switchFocus <+> keepFocus = switchFocus --- prop> keepWorkspace <+> switchWorkspace = keepWorkspace --- prop> switchWorkspace <+> keepWorkspace = switchWorkspace +-- prop> keepFocus <> switchFocus = keepFocus +-- prop> switchFocus <> keepFocus = switchFocus +-- prop> keepWorkspace <> switchWorkspace = keepWorkspace +-- prop> switchWorkspace <> keepWorkspace = switchWorkspace -- -- and operations from different pairs are commutative: -- --- prop> keepFocus <+> switchWorkspace = switchWorkspace <+> keepFocus --- prop> switchFocus <+> switchWorkspace = switchWorkspace <+> switchFocus +-- prop> keepFocus <> switchWorkspace = switchWorkspace <> keepFocus +-- prop> switchFocus <> switchWorkspace = switchWorkspace <> switchFocus -- -- etc. @@ -540,7 +540,7 @@ when' b mx -- | Default EWMH window activation behavior: switch to workspace with -- activated window and switch focus to it. Not to be used in a 'manageHook'. activateSwitchWs :: ManageHook -activateSwitchWs = manageFocus (switchWorkspace <+> switchFocus) +activateSwitchWs = manageFocus (switchWorkspace <> switchFocus) -- | Move activated window to current workspace. Not to be used in a 'manageHook'. activateOnCurrent' :: ManageHook @@ -551,9 +551,9 @@ activateOnCurrent' = currentWs >>= unlessFocusLock . doShift -- activated window is /already/ on current workspace, focus won't be -- switched. Not to be used in a 'manageHook'. activateOnCurrentWs :: ManageHook -activateOnCurrentWs = manageFocus (newOnCur --> switchFocus) <+> activateOnCurrent' +activateOnCurrentWs = manageFocus (newOnCur --> switchFocus) <> activateOnCurrent' -- | Move activated window to current workspace, but keep focus unchanged. -- Not to be used in a 'manageHook'. activateOnCurrentKeepFocus :: ManageHook -activateOnCurrentKeepFocus = manageFocus (newOnCur --> keepFocus) <+> activateOnCurrent' +activateOnCurrentKeepFocus = manageFocus (newOnCur --> keepFocus) <> activateOnCurrent' diff --git a/XMonad/Hooks/InsertPosition.hs b/XMonad/Hooks/InsertPosition.hs index 691cc66e..2a283ddf 100644 --- a/XMonad/Hooks/InsertPosition.hs +++ b/XMonad/Hooks/InsertPosition.hs @@ -29,7 +29,7 @@ import qualified XMonad.StackSet as W -- You can use this module with the following in your @~\/.xmonad\/xmonad.hs@: -- -- > import XMonad.Hooks.InsertPosition --- > xmonad def { manageHook = insertPosition Master Newer <+> myManageHook } +-- > xmonad def { manageHook = insertPosition Master Newer <> myManageHook } -- -- You should you put the manageHooks that use 'doShift' to take effect -- /before/ 'insertPosition', so that the window order will be consistent. diff --git a/XMonad/Hooks/ManageDebug.hs b/XMonad/Hooks/ManageDebug.hs index 6f685d6e..cefe7e36 100644 --- a/XMonad/Hooks/ManageDebug.hs +++ b/XMonad/Hooks/ManageDebug.hs @@ -42,16 +42,16 @@ instance ExtensionClass ManageStackDebug where -- | A combinator to add full 'ManageHook' debugging in a single operation. debugManageHook :: XConfig l -> XConfig l -debugManageHook cf = cf {logHook = manageDebugLogHook <+> logHook cf - ,manageHook = manageDebug <+> manageHook cf +debugManageHook cf = cf {logHook = manageDebugLogHook <> logHook cf + ,manageHook = manageDebug <> manageHook cf } -- | A combinator to add triggerable 'ManageHook' debugging in a single operation. -- Specify a key sequence as a string in 'XMonad.Util.EZConfig' syntax; press -- this key before opening the window to get just that logged. debugManageHookOn :: String -> XConfig l -> XConfig l -debugManageHookOn key cf = cf {logHook = manageDebugLogHook <+> logHook cf - ,manageHook = maybeManageDebug <+> manageHook cf +debugManageHookOn key cf = cf {logHook = manageDebugLogHook <> logHook cf + ,manageHook = maybeManageDebug <> manageHook cf } `additionalKeysP` [(key,debugNextManagedWindow)] diff --git a/XMonad/Hooks/ManageDocks.hs b/XMonad/Hooks/ManageDocks.hs index 63611117..3e654006 100644 --- a/XMonad/Hooks/ManageDocks.hs +++ b/XMonad/Hooks/ManageDocks.hs @@ -88,9 +88,9 @@ import qualified XMonad.StackSet as W -- | Add docks functionality to the given config. See above for an example. docks :: XConfig a -> XConfig a -docks c = c { startupHook = docksStartupHook <+> startupHook c - , handleEventHook = docksEventHook <+> handleEventHook c - , manageHook = manageDocks <+> manageHook c } +docks c = c { startupHook = docksStartupHook <> startupHook c + , handleEventHook = docksEventHook <> handleEventHook c + , manageHook = manageDocks <> manageHook c } type WindowStruts = M.Map Window [Strut] @@ -137,7 +137,7 @@ updateStrut w cache = do -- | Detects if the given window is of type DOCK and if so, reveals -- it, but does not manage it. manageDocks :: ManageHook -manageDocks = checkDock --> (doIgnore <+> doRequestDockEvents) +manageDocks = checkDock --> (doIgnore <> doRequestDockEvents) where doRequestDockEvents = ask >>= liftX . requestDockEvents >> mempty diff --git a/XMonad/Hooks/Place.hs b/XMonad/Hooks/Place.hs index 369b6124..19bfbaa5 100644 --- a/XMonad/Hooks/Place.hs +++ b/XMonad/Hooks/Place.hs @@ -57,10 +57,10 @@ import Control.Monad.Trans (lift) -- and adding 'placeHook' to your 'manageHook', for example: -- -- > main = xmonad $ def { manageHook = placeHook simpleSmart --- > <+> manageHook def } +-- > <> manageHook def } -- -- Note that 'placeHook' should be applied after most other hooks, especially hooks --- such as 'doFloat' and 'doShift'. Since hooks combined with '<+>' are applied from +-- such as 'doFloat' and 'doShift'. Since hooks combined with '<>' are applied from -- right to left, this means that 'placeHook' should be the /first/ hook in your chain. -- -- You can also define a key to manually trigger repositioning with 'placeFocused' by diff --git a/XMonad/Hooks/PositionStoreHooks.hs b/XMonad/Hooks/PositionStoreHooks.hs index fe302f73..1697636e 100644 --- a/XMonad/Hooks/PositionStoreHooks.hs +++ b/XMonad/Hooks/PositionStoreHooks.hs @@ -56,7 +56,7 @@ import qualified Data.Set as S -- otherwise use 'Just def' or similar to inform the module about the -- decoration theme used. -- --- > myManageHook = positionStoreManageHook Nothing <+> manageHook def +-- > myManageHook = positionStoreManageHook Nothing <> manageHook def -- > myHandleEventHook = positionStoreEventHook -- > -- > main = xmonad def { manageHook = myManageHook diff --git a/XMonad/Hooks/RefocusLast.hs b/XMonad/Hooks/RefocusLast.hs index f32e9888..c533b8da 100644 --- a/XMonad/Hooks/RefocusLast.hs +++ b/XMonad/Hooks/RefocusLast.hs @@ -79,10 +79,10 @@ import qualified Data.Map.Strict as M -- > -- > main :: IO () -- > main = xmonad def --- > { handleEventHook = refocusLastWhen myPred <+> handleEventHook def --- > , logHook = refocusLastLogHook <+> logHook def +-- > { handleEventHook = refocusLastWhen myPred <> handleEventHook def +-- > , logHook = refocusLastLogHook <> logHook def -- > -- , layoutHook = refocusLastLayoutHook $ layoutHook def --- > , keys = refocusLastKeys <+> keys def +-- > , keys = refocusLastKeys <> keys def -- > } where -- > myPred = refocusingIsActive <||> isFloat -- > refocusLastKeys cnf diff --git a/XMonad/Hooks/ToggleHook.hs b/XMonad/Hooks/ToggleHook.hs index 0eac9027..7eae7da9 100644 --- a/XMonad/Hooks/ToggleHook.hs +++ b/XMonad/Hooks/ToggleHook.hs @@ -84,12 +84,12 @@ modify' n f = XS.modify (HookState . setter . hooks) -- and adding 'toggleHook name hook' to your 'ManageHook' where @name@ is the -- name of the hook and @hook@ is the hook to execute based on the state. -- --- > myManageHook = toggleHook "float" doFloat <+> manageHook def +-- > myManageHook = toggleHook "float" doFloat <> manageHook def -- -- Additionally, toggleHook' is provided to toggle between two hooks (rather -- than on/off). -- --- > myManageHook = toggleHook' "oldfocus" (const id) W.focusWindow <+> manageHook def +-- > myManageHook = toggleHook' "oldfocus" (const id) W.focusWindow <> manageHook def -- -- The 'hookNext' and 'toggleHookNext' functions can be used in key -- bindings to set whether the hook is applied or not. diff --git a/XMonad/Hooks/WorkspaceByPos.hs b/XMonad/Hooks/WorkspaceByPos.hs index b5afd248..19ef7794 100644 --- a/XMonad/Hooks/WorkspaceByPos.hs +++ b/XMonad/Hooks/WorkspaceByPos.hs @@ -33,7 +33,7 @@ import Control.Monad.Except (lift, runExceptT, throwError) -- -- > import XMonad.Hooks.WorkspaceByPos -- > --- > myManageHook = workspaceByPos <+> manageHook def +-- > myManageHook = workspaceByPos <> manageHook def -- > -- > main = xmonad def { manageHook = myManageHook } diff --git a/XMonad/Layout/Fullscreen.hs b/XMonad/Layout/Fullscreen.hs index c8124109..64ce26b8 100644 --- a/XMonad/Layout/Fullscreen.hs +++ b/XMonad/Layout/Fullscreen.hs @@ -78,9 +78,9 @@ fullscreenSupport :: LayoutClass l Window => XConfig l -> XConfig (ModifiedLayout FullscreenFull l) fullscreenSupport c = c { layoutHook = fullscreenFull $ layoutHook c, - handleEventHook = handleEventHook c <+> fullscreenEventHook, - manageHook = manageHook c <+> fullscreenManageHook, - startupHook = startupHook c <+> fullscreenStartup + handleEventHook = handleEventHook c <> fullscreenEventHook, + manageHook = manageHook c <> fullscreenManageHook, + startupHook = startupHook c <> fullscreenStartup } -- | fullscreenSupport with smartBorders support so the border doesn't diff --git a/XMonad/Layout/LayoutHints.hs b/XMonad/Layout/LayoutHints.hs index a2f0778c..3f28bf9c 100644 --- a/XMonad/Layout/LayoutHints.hs +++ b/XMonad/Layout/LayoutHints.hs @@ -73,7 +73,7 @@ import qualified Data.Set as Set -- To make XMonad reflect changes in window hints immediately, add -- 'hintsEventHook' to your 'handleEventHook'. -- --- > myHandleEventHook = hintsEventHook <+> ... +-- > myHandleEventHook = hintsEventHook <> ... -- > -- > main = xmonad def { handleEventHook = myHandleEventHook -- > , ... } diff --git a/XMonad/Layout/Monitor.hs b/XMonad/Layout/Monitor.hs index 85d15300..59c50b94 100644 --- a/XMonad/Layout/Monitor.hs +++ b/XMonad/Layout/Monitor.hs @@ -73,7 +73,7 @@ import XMonad.Hooks.FadeInactive (setOpacity) -- -- Add ManageHook to de-manage monitor windows and apply opacity settings. -- --- > manageHook = myManageHook <+> manageMonitor clock +-- > manageHook = myManageHook <> manageMonitor clock -- -- Apply layout modifier. -- diff --git a/XMonad/Util/ExclusiveScratchpads.hs b/XMonad/Util/ExclusiveScratchpads.hs index 5debc7cd..7e91aa7b 100644 --- a/XMonad/Util/ExclusiveScratchpads.hs +++ b/XMonad/Util/ExclusiveScratchpads.hs @@ -73,7 +73,7 @@ import qualified XMonad.StackSet as W -- -- Add the hooks to your managehook (see "XMonad.Doc.Extending#Editing_the_manage_hook"), eg.: -- --- > manageHook = myManageHook <+> xScratchpadsManageHook scratchpads +-- > manageHook = myManageHook <> xScratchpadsManageHook scratchpads -- -- And finally add some keybindings (see "XMonad.Doc.Extending#Editing_key_bindings"): -- diff --git a/XMonad/Util/Hacks.hs b/XMonad/Util/Hacks.hs index dc64caed..749d81bb 100644 --- a/XMonad/Util/Hacks.hs +++ b/XMonad/Util/Hacks.hs @@ -73,7 +73,7 @@ import System.Posix.Env (putEnv) -- Usage: -- add to handleEventHook as follows: -- --- > handleEventHook = handleEventHook def <+> Hacks.windowedFullscreenFixEventHook +-- > handleEventHook = handleEventHook def <> Hacks.windowedFullscreenFixEventHook -- -- | Fixes fullscreen behaviour of chromium based apps by quickly applying and undoing a resize. diff --git a/XMonad/Util/Loggers/NamedScratchpad.hs b/XMonad/Util/Loggers/NamedScratchpad.hs index 3abef4c8..f0aec07f 100644 --- a/XMonad/Util/Loggers/NamedScratchpad.hs +++ b/XMonad/Util/Loggers/NamedScratchpad.hs @@ -59,7 +59,7 @@ instance ExtensionClass NSPTrack where -- | 'startupHook' to initialize scratchpad activation tracking -- --- > , startupHook = ... <+> nspTrackStartup scratchpads +-- > , startupHook = ... <> nspTrackStartup scratchpads -- -- If you kickstart the 'logHook', do it /after/ 'nspTrackStartup'! nspTrackStartup :: [NamedScratchpad] -> X () @@ -83,7 +83,7 @@ scratchpadWindow ns = foldM sp' Nothing (zip [0..] ns) -- | 'handleEventHook' to track scratchpad activation/deactivation -- --- > , handleEventHook = ... <+> nspTrackHook scratchpads +-- > , handleEventHook = ... <> nspTrackHook scratchpads nspTrackHook :: [NamedScratchpad] -> Event -> X All nspTrackHook _ DestroyWindowEvent{ev_window = w} = do XS.modify $ \(NSPTrack ws) -> NSPTrack $ map (\sw -> if sw == Just w then Nothing else sw) ws